/* Card blanca */
.ws-rot-wrap{max-width:1100px;margin:20px auto;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.ws-card{background:#fff;border:1px solid #eaeaea;border-radius:14px;box-shadow:0 6px 18px rgba(0,0,0,.06);padding:14px 16px;margin-bottom:16px}
.ws-card__row{display:flex;gap:12px;align-items:center;margin:10px 0}
.ws-actions{justify-content:flex-start}
.ws-status{margin-left:10px;opacity:.8}

/* Inputs/botones */
.ws-input{padding:8px 10px;border:1px solid #ddd;border-radius:8px;min-width:260px}
.ws-btn{background:#111;color:#fff;border:0;border-radius:8px;padding:8px 12px;cursor:pointer}
.ws-btn.ws-secondary{background:#f0f0f0;color:#111}

/* Secciones */
.ws-help{margin-left:8px;opacity:.6;font-size:.9em}
.ws-sec{border:1px solid #eee;border-radius:12px;margin:10px 0;overflow:hidden;background:#fff}
.ws-sec-head{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#fafafa;border-bottom:1px solid #eee}
.ws-block{white-space:pre-wrap;padding:10px;margin:0}
.ws-counter{font-variant-numeric:tabular-nums}
.ws-counter.ok{color:#067e0a}.ws-counter.warn{color:#b58900}.ws-counter.bad{color:#b00020}

/* Modal */
.ws-modal{position:fixed;inset:0;display:none;z-index:9999}
.ws-modal[aria-hidden="false"]{display:block}
.ws-modal__overlay{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.ws-modal__dialog{position:relative;margin:6vh auto 0 auto;max-width:780px;background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.25);overflow:hidden;display:flex;flex-direction:column;max-height:90vh}
.ws-modal__header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #e6e6e6}
.ws-modal__close{background:transparent;border:0;font-size:24px;line-height:1;cursor:pointer;padding:4px 8px}
.ws-modal__search{padding:12px 16px;border-bottom:1px solid #f0f0f0}
.ws-modal__list{overflow:auto;padding:4px 8px;min-height:220px;max-height:55vh;outline:none}
.ws-item{padding:10px 8px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;justify-content:space-between}
.ws-item:hover{background:#f7f7f7}
.ws-item.ws-active{background:#eef5ff;outline:1px solid #cfe1ff}
.ws-item__name{font-weight:600}
.ws-item__id{opacity:.6;font-family:monospace}
.ws-empty{padding:16px;opacity:.7}
.ws-modal__footer{padding:12px 16px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;gap:8px}

.ws-product-picker{display:flex;gap:8px;align-items:center}
