/* ============================================================
   APPC · Gestión Ops V5 · adaptador del sistema Wolfbite UI (sept 2026)
   Sustituye al <style> inline de index.html. Conserva todos los ids y
   las clases de estado que app.js usa (ro, show, open, active, editing,
   hidden, has-act, has-act-cl, cl, op, error, lp-error, page, sitem,
   dia-*, sc-val g|r|b|n|a|p|c, rcell-val big g|r|b|a|c, btn-acc|del|
   blu|cyan|ghost, badge-*) y los pinta con los tokens del sistema.
   PC = uso principal (barra lateral). Celular = modo consulta: barra
   inferior, datos primero, formularios de registro ocultos.
   ============================================================ */

/* ── Alias heredados (los style="" de app.js y del HTML usan estos nombres) ── */
:root{
  --bg:var(--wb-fondo);--bg2:var(--wb-superficie);--bg3:var(--wb-papel);--bg4:var(--wb-papel);--bg5:var(--wb-linea);
  --border:var(--wb-linea);--border2:var(--wb-linea);--border3:var(--wb-linea-fuerte);
  --text:var(--wb-tinta);--text2:var(--wb-tinta-2);--muted:var(--wb-cota);--muted2:var(--wb-cota);
  --green:var(--wb-ok);--gdim:var(--wb-ok-tinte);
  --red:var(--wb-oxido);--rdim:var(--wb-oxido-tinte);
  --amber:var(--wb-ambar);--adim:var(--wb-ambar-tinte);
  --blue:var(--wb-cifra-azul);--bdim:var(--wb-cifra-azul-tinte);
  --purple:#5B3FA6;--pdim:rgba(91,63,166,.12);   /* utilidad USDT (tono de negocio) */
  --cyan:#0E7490;--cdim:rgba(14,116,144,.12);    /* inventario de compras (tono de negocio) */
  --accent:var(--wb-plano);--r:0;--rs:0;
  --font:var(--wb-f-ui);--mono:var(--wb-f-mono);--shadow:none;--shadow-lg:none;
}
input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
input[type=number]{-moz-appearance:textfield}
.ico{display:inline-block;vertical-align:-3px;flex-shrink:0}
.mb-0{margin-bottom:0!important}.mb-10{margin-bottom:10px}.mb-12{margin-bottom:12px}.mb-14{margin-bottom:14px}.mb-16{margin-bottom:16px}
.mt-0{margin-top:0!important}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-14{margin-top:14px}
.tono-ok{color:var(--wb-ok)!important}.tono-oxido{color:var(--wb-oxido)!important}.tono-ambar{color:var(--wb-ambar)!important}
.tono-plano{color:var(--wb-plano)!important}.tono-violeta{color:var(--purple)!important}.tono-teal{color:var(--cyan)!important}

/* ── Armazón: barra lateral + cabecera ── */
.app{display:flex;min-height:100dvh}
.sidebar{width:230px;position:fixed;top:0;left:0;bottom:0;z-index:100;display:flex;flex-direction:column;background:var(--wb-superficie);border-right:2px solid var(--wb-plano);transition:transform .2s var(--wb-ease)}
.slogo{padding:16px 16px 14px;border-bottom:var(--wb-borde) solid var(--wb-linea-fuerte)}
.slogo-mark{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.16em;color:var(--wb-plano);text-transform:uppercase}
.slogo-name{position:relative;display:inline-block;margin-top:4px;padding:3px 10px;font-family:var(--wb-f-titulo);font-size:1.05rem;font-weight:700;letter-spacing:.04em;color:var(--wb-tinta);line-height:1.15}
.slogo-name::before,.slogo-name::after{content:'';position:absolute;width:8px;height:8px;border:0 solid var(--wb-tinta)}
.slogo-name::before{top:0;left:0;border-top-width:1.5px;border-left-width:1.5px}
.slogo-name::after{bottom:0;right:0;border-bottom-width:1.5px;border-right-width:1.5px}
.slogo-by{font-family:var(--wb-f-mono);font-size:.62rem;letter-spacing:.06em;color:var(--wb-cota);margin-top:4px;text-transform:uppercase}
.snav{padding:12px 10px;flex:1;overflow-y:auto}
.snav-lbl{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.12em;color:var(--wb-cota);text-transform:uppercase;padding:0 12px;margin:16px 0 6px}
.snav-lbl:first-child{margin-top:0}
.sitem{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:2px;color:var(--wb-cota);font-weight:500;font-size:.92rem;cursor:pointer;border-left:3px solid transparent;transition:background-color var(--wb-dur) var(--wb-ease),color var(--wb-dur) var(--wb-ease)}
.sitem:hover{background:var(--wb-papel);color:var(--wb-tinta)}
.sitem.active{background:var(--wb-plano-tinte);color:var(--wb-plano);border-left-color:var(--wb-plano);font-weight:600}
.sitem svg{width:18px;height:18px;flex-shrink:0;stroke-width:1.75}
.sbottom{padding:12px;border-top:var(--wb-borde) solid var(--wb-linea-fuerte)}
.sinv{background:var(--wb-superficie);border:var(--wb-borde-fino) solid var(--wb-linea);padding:8px 10px;margin-bottom:6px}
.sinv-lbl{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--wb-cota);margin-bottom:3px}
.sinv-val{font-family:var(--wb-f-mono);font-size:.95rem;font-weight:500;color:var(--wb-tinta);font-variant-numeric:tabular-nums}
.sinv-sub{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-cota);margin-top:2px}
.sinv--compras{border-left:3px solid var(--cyan)}.sinv--compras .sinv-val{color:var(--cyan)}
.sinv--util{border-left:3px solid var(--wb-ok)}.sinv--util .sinv-val{color:var(--wb-ok)}
.sinv--bolsa{border-left:3px solid var(--wb-ambar);cursor:pointer}.sinv--bolsa .sinv-val{color:var(--wb-ambar)}
.sinv--bolsa:hover{background:var(--wb-papel)}
.sticker{background:var(--wb-superficie);border:var(--wb-borde-fino) solid var(--wb-linea);padding:8px 10px}
.sticker-lbl{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--wb-cota)}
.sticker-row{display:flex;gap:6px;margin-top:6px}
.sticker-row .btn{flex:1;min-height:32px;padding:0 8px;font-size:.78rem}
.main{margin-left:230px;flex:1;display:flex;flex-direction:column;min-height:100dvh;min-width:0}
.hdr{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:var(--wb-topbar-h);padding:8px 24px;background:var(--wb-superficie);border-bottom:2px solid var(--wb-plano)}
.hdr-l{display:flex;align-items:center;gap:12px;min-width:0}
.hdr-left h1{font-family:var(--wb-f-titulo);font-size:1.15rem;font-weight:700;line-height:1.15;white-space:nowrap}
.hdr-left p{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-cota);margin-top:2px;white-space:nowrap}
.hdr-right{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.clock{font-family:var(--wb-f-mono);font-size:var(--wb-t-sm);font-weight:500;color:var(--wb-tinta);border:var(--wb-borde-fino) solid var(--wb-linea);padding:6px 10px;background:var(--wb-papel)}
#account-switcher{min-height:36px;font-family:var(--wb-f-titulo);font-size:.85rem;font-weight:600;letter-spacing:.04em;color:var(--wb-plano);background-color:var(--wb-superficie);border:var(--wb-borde) solid var(--wb-plano);padding:4px 30px 4px 12px;cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231B4B8C' stroke-width='2.5'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 10px center}
#account-switcher:focus{box-shadow:0 0 0 3px var(--wb-plano-foco)}
#user-badge{display:inline-flex;align-items:center;gap:5px;font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.03em;color:var(--wb-cota);border:var(--wb-borde-fino) solid var(--wb-linea);padding:6px 10px;white-space:nowrap}
#ro-badge{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.04em;color:var(--wb-ambar);border:var(--wb-borde-fino) solid rgba(138,90,0,.35);background:var(--wb-ambar-tinte);padding:6px 10px;font-weight:500;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}
.hamburger{display:none;align-items:center;justify-content:center;width:40px;height:40px;cursor:pointer;color:var(--wb-tinta);border:var(--wb-borde-fino) solid var(--wb-linea);background:var(--wb-superficie);flex-shrink:0}
.hamburger svg{width:20px;height:20px}
.mob-overlay{position:fixed;inset:0;background:var(--wb-velo);z-index:99;display:none}
.mob-overlay.show{display:block}
.content{padding:20px 24px;flex:1;min-width:0}
.page{display:none;animation:fadeUp var(--wb-dur) var(--wb-ease)}
.page.active{display:block}
@keyframes fadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ── Tarjetas de resumen y celdas de resultado ── */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.stats--5{grid-template-columns:repeat(5,1fr)}.stats--3{grid-template-columns:repeat(3,1fr)}.stats--2{grid-template-columns:repeat(2,1fr)}
.stats>*{min-width:0}
.sc{background:var(--wb-superficie);border:var(--wb-borde) solid var(--wb-linea-fuerte);padding:12px 14px}
.sc-lbl{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--wb-cota);margin-bottom:6px}
.sc-val{font-family:var(--wb-f-mono);font-size:clamp(1rem,1.6vw,1.3rem);font-weight:700;letter-spacing:-.01em;line-height:1.2;color:var(--wb-tinta);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.sc-val.g{color:var(--wb-ok)}.sc-val.r{color:var(--wb-oxido)}.sc-val.b{color:var(--wb-cifra-azul)}.sc-val.n{color:var(--wb-tinta)}.sc-val.a{color:var(--wb-ambar)}.sc-val.p{color:var(--purple)}.sc-val.c{color:var(--cyan)}
.sc-sub{font-size:var(--wb-t-sm);color:var(--wb-cota);margin-top:4px;line-height:1.35}
.sc--teal{border-left:3px solid var(--cyan)}.sc--ok{border-left:3px solid var(--wb-ok)}.sc--oxido{border-left:3px solid var(--wb-oxido)}.sc--plano{border-left:3px solid var(--wb-plano)}
.rc2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.rc3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:10px}
.rc4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px}
.rc5,.res-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:10px}
.rc2>*,.rc3>*,.rc4>*,.rc5>*,.res-grid>*{min-width:0}
.rcell{background:var(--wb-superficie);border:var(--wb-borde) solid var(--wb-linea-fuerte);padding:11px 13px}
.rcell-lbl{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--wb-cota);margin-bottom:4px}
.rcell-val{font-family:var(--wb-f-mono);font-size:.95rem;font-weight:700;color:var(--wb-tinta);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.rcell-val.g{color:var(--wb-ok)}.rcell-val.r{color:var(--wb-oxido)}.rcell-val.b{color:var(--wb-cifra-azul)}.rcell-val.a{color:var(--wb-ambar)}.rcell-val.c{color:var(--cyan)}
.rcell-val.big{font-size:clamp(1.05rem,1.5vw,1.3rem)}
.rcell-val--nota{font-family:var(--wb-f-ui);font-size:var(--wb-t-sm);font-weight:400;color:var(--wb-cota)}
.rcell-sub{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-cota);margin-top:4px}
.hl-g{border-color:var(--wb-ok)}.hl-g .rcell-lbl{color:var(--wb-ok)}
.hl-a{border-color:var(--wb-ambar)}.hl-a .rcell-lbl{color:var(--wb-ambar)}
.hl-r{border-color:var(--wb-oxido)}.hl-r .rcell-lbl{color:var(--wb-oxido)}
.hl-b{border-color:var(--wb-plano)}.hl-b .rcell-lbl{color:var(--wb-plano)}
.hl-c{border-color:var(--cyan)}.hl-c .rcell-lbl{color:var(--cyan)}
.prog-wrap{background:var(--wb-papel);border:var(--wb-borde-fino) solid var(--wb-linea);height:10px;overflow:hidden}
.prog-bar{height:100%;transition:width .3s var(--wb-ease)}

/* ── Paneles, formularios, botones ── */
.card{background:var(--wb-superficie);border:var(--wb-borde) solid var(--wb-linea-fuerte);padding:16px;margin-bottom:14px}
.card--alta{min-height:280px}
.card-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-family:var(--wb-f-titulo);font-size:.98rem;font-weight:600;flex-wrap:wrap}
.card-hd--tight{margin-bottom:10px}
.card-hd-l{display:flex;align-items:center;gap:8px}
.card-hd-acts{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.dot{width:8px;height:8px;flex-shrink:0;background:var(--wb-plano)}
.dot--ambar{background:var(--wb-ambar)}.dot--ok{background:var(--wb-ok)}.dot--violeta{background:var(--purple)}.dot--teal{background:var(--cyan)}.dot--oxido{background:var(--wb-oxido)}.dot--cota{background:var(--wb-cota)}
.inv-card{background:var(--wb-superficie);border:var(--wb-borde) solid var(--wb-linea-fuerte);border-left:3px solid var(--cyan);padding:14px 16px;margin-bottom:14px}
.inv-card .card-hd{margin-bottom:10px}
.inv-edit-row{display:none;margin-top:12px;padding-top:12px;border-top:var(--wb-borde-fino) solid var(--wb-linea)}
.inv-card.editing .inv-edit-row{display:block}
.sub-lbl{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--wb-cota);margin-bottom:8px}
.sub-lbl--ok{color:var(--wb-ok)}
.fg2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fg3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.fg4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.fg5,.form-grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.fg--end{align-items:end}
.fg2>*,.fg3>*,.fg4>*,.fg5>*,.form-grid-5>*{min-width:0}
.fld{display:flex;flex-direction:column;gap:5px}
.fld label{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--wb-cota);font-weight:500}
.fld label.lbl-ok{color:var(--wb-ok)}
.lbl-opc{color:var(--wb-cota-2);font-weight:400;text-transform:none;letter-spacing:0}
.fld input,.fld select,.fld-input,.dia-flt-input,.flt-input{background:var(--wb-campo);border:var(--wb-borde) solid var(--wb-linea);color:var(--wb-tinta);font-family:var(--wb-f-mono);font-size:.93rem;padding:8px 11px;min-height:40px;outline:none;width:100%;appearance:none;-webkit-appearance:none;transition:border-color var(--wb-dur) var(--wb-ease)}
.fld select,select.flt-input,select.dia-flt-input{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2315181C' stroke-width='2.5'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px;cursor:pointer}
.fld input:hover,.fld select:hover{border-color:var(--wb-cota)}
.fld input:focus,.fld select:focus,.fld-input:focus,.dia-flt-input:focus,.flt-input:focus{border-color:var(--wb-plano);box-shadow:0 0 0 3px var(--wb-plano-foco)}
.fld input::placeholder{color:var(--wb-cota-2)}
.fld input[readonly]{background:var(--wb-papel);color:var(--wb-cota);cursor:default}
.fld input.in-ok[readonly]{color:var(--wb-ok);font-weight:600}
.hint{font-size:var(--wb-t-xs);color:var(--wb-cota);font-family:var(--wb-f-mono);line-height:1.4}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 16px;font-family:var(--wb-f-titulo);font-size:.92rem;font-weight:600;letter-spacing:.01em;cursor:pointer;border:var(--wb-borde) solid var(--wb-linea-fuerte);background:var(--wb-superficie);color:var(--wb-tinta);white-space:nowrap;transition:background-color var(--wb-dur) var(--wb-ease),color var(--wb-dur) var(--wb-ease)}
.btn:hover{background:var(--wb-papel)}
.btn:disabled{opacity:.6;cursor:not-allowed}
.btn-acc{background:var(--wb-plano);border-color:var(--wb-plano);color:#FFFFFF}
.btn-acc:hover{background:var(--wb-plano-osc);border-color:var(--wb-plano-osc)}
.btn-full{width:100%;margin-top:12px}
.btn-sm{min-height:36px;padding:0 12px;font-size:.86rem}
.btn-xs{min-height:30px;padding:0 9px;font-size:.78rem;gap:5px}
.btn-del{border-color:var(--wb-oxido);color:var(--wb-oxido);background:var(--wb-superficie)}
.btn-del:hover{background:var(--wb-oxido-tinte)}
.btn-blu{border-color:var(--wb-plano);color:var(--wb-plano);background:var(--wb-superficie)}
.btn-blu:hover{background:var(--wb-plano-tinte)}
.btn-cyan{border-color:var(--cyan);color:var(--cyan);background:var(--wb-superficie)}
.btn-cyan:hover{background:var(--cdim)}
.btn-ghost{background:transparent;border-color:transparent;color:var(--wb-cota);padding:0 10px}
.btn-ghost:hover{background:var(--wb-papel);color:var(--wb-tinta)}
.btn-oxido{background:var(--wb-oxido);border-color:var(--wb-oxido);color:#FFFFFF}
.btn-oxido:hover{background:var(--wb-oxido-osc);border-color:var(--wb-oxido-osc)}
.btn-ambar{background:var(--wb-ambar);border-color:var(--wb-ambar);color:#FFFFFF}
.btn-ambar:hover{background:#6E4800;border-color:#6E4800}
.btn svg{width:16px;height:16px}
.btn-xs svg{width:14px;height:14px}
.chips-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:0 0 12px}
.inset{background:var(--wb-papel);border:var(--wb-borde-fino) solid var(--wb-linea);padding:14px;margin-bottom:12px}
.rv-usar{display:flex;align-items:flex-start;gap:10px;margin:0 0 14px;cursor:pointer;background:var(--cdim);border:var(--wb-borde-fino) solid rgba(14,116,144,.35);padding:10px 12px}
.rv-usar input{width:20px;height:20px;accent-color:var(--wb-plano);flex-shrink:0;margin-top:1px}
.rv-usar span{font-size:var(--wb-t-sm);color:var(--wb-tinta-2);line-height:1.5}
.rv-usar strong{color:var(--cyan)}
.rp-fifo{margin-top:8px;font-size:var(--wb-t-sm);color:var(--wb-cota);line-height:1.5}
.cob-card{background:var(--wb-superficie);border:var(--wb-borde) solid var(--wb-linea-fuerte);padding:14px 16px;margin-bottom:16px}
.cob-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.cob-t{font-family:var(--wb-f-titulo);font-size:.98rem;font-weight:600}
#cob-pct-txt{font-family:var(--wb-f-mono);font-size:1.05rem;font-weight:500}
.cob-ft{display:flex;justify-content:space-between;gap:10px;margin-top:8px;font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-cota);flex-wrap:wrap}
#prom-txt{color:var(--wb-tinta)}

/* ── Tablas ── */
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;border:var(--wb-borde) solid var(--wb-linea-fuerte);background:var(--wb-superficie)}
table{width:100%;border-collapse:collapse;font-size:.9rem}
thead tr{border-bottom:var(--wb-borde) solid var(--wb-linea-fuerte)}
th{padding:9px 12px;text-align:right;font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.05em;color:var(--wb-cota);text-transform:uppercase;font-weight:500;background:var(--wb-superficie);white-space:nowrap}
th.l{text-align:left}
th.th-ok{color:var(--wb-ok)}th.th-violeta{color:var(--purple)}
td{padding:9px 12px;border-bottom:var(--wb-borde-fino) solid var(--wb-linea);font-family:var(--wb-f-mono);font-size:.9rem;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;vertical-align:middle}
td.l{text-align:left;font-family:var(--wb-f-ui);font-weight:400}
tbody tr:last-child td{border-bottom:none}
tbody tr:hover td{background:rgba(21,24,28,.03)}
tfoot td{font-weight:700;background:var(--wb-papel);border-top:var(--wb-borde) solid var(--wb-linea-fuerte)}
.mw8{min-width:800px}.mw6{min-width:600px}.mw9{min-width:900px}
.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);font-weight:500;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;line-height:1.5;border:var(--wb-borde-fino) solid var(--wb-linea);color:var(--wb-cota);background:var(--wb-papel);vertical-align:middle}
.badge .ico{width:12px;height:12px}
.badge-china,.badge-open,.badge-bolsa{background:var(--wb-ambar-tinte);color:var(--wb-ambar);border-color:rgba(138,90,0,.35)}
.badge-usa,.badge-cop{background:var(--wb-plano-tinte);color:var(--wb-plano);border-color:rgba(27,75,140,.35)}
.badge-closed,.badge-util{background:var(--wb-ok-tinte);color:var(--wb-ok);border-color:rgba(21,128,61,.35)}
.badge-usdt,.badge-otro{background:var(--pdim);color:var(--purple);border-color:rgba(91,63,166,.35)}
.badge-compras{background:var(--cdim);color:var(--cyan);border-color:rgba(14,116,144,.35)}

/* ── Día de trabajo: selector de días ── */
#dia-layout{display:flex;gap:16px;align-items:flex-start}
#dia-tabs-wrap{width:210px;flex-shrink:0}
#dia-main{flex:1;min-width:0}
.dia-filters{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
.dia-flt-input{min-height:36px;padding:6px 10px;font-size:.88rem}
.dia-count-row{text-align:right;padding:0 2px;margin-bottom:6px}
#dia-count{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-fondo-texto-2)}
.dia-accordion{border:var(--wb-borde) solid var(--wb-linea-fuerte);background:var(--wb-superficie);max-height:calc(100vh - 230px);overflow-y:auto;scrollbar-width:thin}
.dia-mon-hdr{display:flex;align-items:center;justify-content:space-between;padding:9px 10px;background:var(--wb-papel);cursor:pointer;user-select:none;border-bottom:var(--wb-borde-fino) solid var(--wb-linea);border-left:3px solid transparent;position:sticky;top:0;z-index:2;transition:background-color var(--wb-dur) var(--wb-ease)}
.dia-mon-hdr:hover{background:var(--wb-linea)}
.dia-mon-hdr.has-act{border-left-color:var(--wb-ambar);background:var(--wb-ambar-tinte)}
.dia-mon-hdr.has-act-cl{border-left-color:var(--wb-ok);background:var(--wb-ok-tinte)}
.dia-mon-left{display:flex;align-items:center;gap:8px}
.dia-mon-label{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--wb-tinta)}
.dia-mon-badge{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);background:var(--wb-superficie);color:var(--wb-cota);border:var(--wb-borde-fino) solid var(--wb-linea);padding:1px 6px}
.dia-mon-hdr.has-act .dia-mon-badge{color:var(--wb-ambar);border-color:rgba(138,90,0,.35)}
.dia-mon-hdr.has-act-cl .dia-mon-badge{color:var(--wb-ok);border-color:rgba(21,128,61,.35)}
.dia-mon-arrow{font-size:13px;color:var(--wb-cota);transition:transform .2s var(--wb-ease);display:inline-block;line-height:1}
.dia-mon-days{overflow:hidden;max-height:2000px;transition:max-height .3s var(--wb-ease),opacity .2s ease}
.dia-mon-days.hidden{max-height:0;opacity:0}
.dia-day-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px 8px 14px;font-family:var(--wb-f-mono);font-size:var(--wb-t-sm);cursor:pointer;color:var(--wb-cota);border-bottom:var(--wb-borde-fino) solid var(--wb-linea);border-left:3px solid transparent;transition:background-color var(--wb-dur) var(--wb-ease),color var(--wb-dur) var(--wb-ease)}
.dia-day-row:last-child{border-bottom:none}
.dia-day-row:hover{background:var(--wb-papel);color:var(--wb-tinta)}
.dia-day-row.active{background:var(--wb-ambar-tinte);color:var(--wb-ambar);border-left-color:var(--wb-ambar);font-weight:600}
.dia-day-row.active.cl{background:var(--wb-ok-tinte);color:var(--wb-ok);border-left-color:var(--wb-ok)}
.dia-day-right{display:flex;align-items:center;gap:6px}
.dia-day-tag{font-family:var(--wb-f-mono);font-size:.62rem;letter-spacing:.04em;text-transform:uppercase;padding:1px 5px;opacity:0;border:1px solid currentColor;transition:opacity var(--wb-dur)}
.dia-day-row:hover .dia-day-tag,.dia-day-row.active .dia-day-tag{opacity:1}
.dia-day-row.cl .dia-day-tag{color:var(--wb-ok)}
.dia-day-row.op .dia-day-tag{color:var(--wb-ambar)}
.dia-status{width:8px;height:8px;flex-shrink:0;background:var(--wb-linea)}
.dia-day-row.cl .dia-status{background:var(--wb-ok)}
.dia-day-row.op .dia-status{background:var(--wb-ambar)}

/* ── Encabezados de sección (van sobre la mesa), vacíos, gráficos ── */
.sec-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.sec-hd-title{font-family:var(--wb-f-titulo);font-size:1.25rem;font-weight:700;color:var(--wb-fondo-texto);line-height:1.15}
.sec-hd-sub{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-fondo-texto-2);margin-top:3px}
.sec-hd-acts{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.flt-input{width:auto;min-height:36px;padding:6px 10px;font-size:.88rem}
#h-search{width:200px}
.empty-state{text-align:center;padding:40px 16px;color:var(--wb-cota)}
#dia-empty{color:var(--wb-fondo-texto-2)}
.empty-icon{font-size:40px;opacity:.35;margin-bottom:12px}
.empty-title{font-family:var(--wb-f-titulo);font-size:1rem;font-weight:600;margin-bottom:4px}
#dia-empty .empty-title{color:var(--wb-fondo-texto)}
.empty-sub{font-family:var(--wb-f-mono);font-size:var(--wb-t-sm)}
.chart-wrap{position:relative;height:220px;margin-top:8px}
.chart-200{height:200px}.chart-240{height:240px}.chart-260{height:260px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.grid-2>*{min-width:0}

/* ── Modal y toasts ── */
.modal-overlay{position:fixed;inset:0;background:var(--wb-velo);z-index:200;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--wb-dur) var(--wb-ease);padding:16px}
.modal-overlay.show{opacity:1;pointer-events:all}
.modal{background:var(--wb-superficie);border:var(--wb-borde) solid var(--wb-linea-fuerte);padding:22px;min-width:320px;max-width:440px;width:100%;transform:translateY(8px);transition:transform var(--wb-dur) var(--wb-ease)}
.modal-overlay.show .modal{transform:none}
.modal-title{font-family:var(--wb-f-titulo);font-size:1.1rem;font-weight:700;margin-bottom:6px}
.modal-text{font-size:var(--wb-t-sm);color:var(--wb-tinta-2);line-height:1.55;margin-bottom:16px}
.modal-btns{display:flex;gap:8px;justify-content:flex-end}
.toast-wrap{position:fixed;top:20px;right:20px;z-index:300;display:flex;flex-direction:column;gap:8px}
.toast{display:flex;align-items:center;gap:10px;min-width:260px;max-width:min(420px,90vw);padding:12px 14px;font-size:.93rem;line-height:1.4;color:var(--wb-superficie);background:var(--wb-tinta);border:1px solid rgba(255,255,255,.35);border-left:3px solid var(--wb-plano);animation:toastIn var(--wb-dur) var(--wb-ease),toastOut .3s ease 2.7s forwards}
.toast.error{border-left-color:#E4674A}
.toast-icon{display:inline-flex;flex-shrink:0}
@keyframes toastIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes toastOut{from{opacity:1}to{opacity:0;transform:translateY(8px)}}

/* ── Modo solo lectura (socio que consulta): regla heredada intacta ── */
body.ro .btn-acc,body.ro .btn-del,body.ro .btn-blu,body.ro .btn-cyan,
body.ro [data-action="addBolsaLote"],body.ro [data-action="addRetiroPage"],
body.ro [data-action="toggleCosteo"],body.ro [data-action="delBolsaLote"]{display:none!important}
body.ro [data-action="logout"],body.ro [data-action="setRetFiltro"]{display:inline-flex!important}

/* ── Login (misma tarjeta que CAJA y Cartera, sobre la mesa) ── */
#login-screen{position:fixed;inset:0;z-index:999;align-items:center;justify-content:center;overflow:auto;background:transparent}
.lp-center{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;width:100%;padding:24px 16px}
.lp-tag{display:flex;align-items:center;gap:10px;font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);letter-spacing:.22em;color:var(--wb-fondo-acento);text-transform:uppercase;margin-bottom:6px}
.lp-tag::before,.lp-tag::after{content:'';height:1px;width:28px;background:rgba(163,230,255,.5)}
.lp-name{font-family:var(--wb-f-titulo);font-size:2rem;font-weight:700;letter-spacing:.02em;color:var(--wb-fondo-texto);line-height:1.1;margin-bottom:2px;text-align:center}
.lp-by{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-fondo-texto-2);letter-spacing:.18em;text-transform:uppercase;margin-bottom:24px}
.lp-card{position:relative;width:100%;max-width:400px;background:var(--wb-superficie);border:var(--wb-borde) solid rgba(255,255,255,.85);padding:28px 22px 24px}
.lp-card::before,.lp-card::after{content:'';position:absolute;width:12px;height:12px;border:0 solid var(--wb-fondo-acento)}
.lp-card::before{top:-1px;left:-1px;border-top-width:2px;border-left-width:2px}
.lp-card::after{bottom:-1px;right:-1px;border-bottom-width:2px;border-right-width:2px}
.lp-logo-mark{width:44px;height:44px;display:flex;align-items:center;justify-content:center;margin:0 0 18px;font-family:var(--wb-f-titulo);font-size:1.3rem;font-weight:700;color:var(--wb-tinta);border:var(--wb-borde) solid var(--wb-linea-fuerte)}
.lp-form-title{font-family:var(--wb-f-titulo);font-size:1.15rem;font-weight:600;color:var(--wb-tinta);margin-bottom:2px}
.lp-form-sub{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-cota);letter-spacing:.05em;text-transform:uppercase;margin-bottom:22px}
.lp-field{margin-bottom:14px}
.lp-label{display:block;font-family:var(--wb-f-ui);font-size:var(--wb-t-sm);font-weight:600;color:var(--wb-tinta);margin-bottom:5px}
.lp-input-wrap{position:relative;display:flex;align-items:center}
.lp-input-icon{position:absolute;left:12px;width:16px;height:16px;stroke:var(--wb-cota);stroke-width:1.75;fill:none;pointer-events:none}
.lp-input{width:100%;min-height:44px;background:var(--wb-campo);border:var(--wb-borde) solid var(--wb-linea);color:var(--wb-tinta);font-family:var(--wb-f-mono);font-size:var(--wb-t-base);padding:9px 48px 9px 38px;outline:none}
.lp-input:focus{border-color:var(--wb-plano);box-shadow:0 0 0 3px var(--wb-plano-foco)}
.lp-input-wrap:focus-within .lp-input-icon{stroke:var(--wb-plano)}
.lp-eye{position:absolute;right:2px;top:2px;bottom:2px;width:44px;display:flex;align-items:center;justify-content:center;color:var(--wb-cota);background:none;border:0;cursor:pointer}
.lp-eye:hover{color:var(--wb-tinta)}
.lp-eye svg{width:18px;height:18px}
#auth-error.lp-error{font-size:var(--wb-t-sm);font-weight:500;color:var(--wb-oxido);background:var(--wb-superficie);border:var(--wb-borde-fino) solid var(--wb-oxido);border-left:3px solid var(--wb-oxido);padding:10px 12px;margin-bottom:12px}
.lp-btn{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:9px;margin-top:4px;background:var(--wb-plano);border:var(--wb-borde) solid var(--wb-plano);color:#FFFFFF;font-family:var(--wb-f-titulo);font-size:1.05rem;font-weight:600;letter-spacing:.02em;cursor:pointer}
.lp-btn:hover:not(:disabled){background:var(--wb-plano-osc);border-color:var(--wb-plano-osc)}
.lp-btn:disabled{opacity:.7;cursor:not-allowed}
.lp-toggle{text-align:center;margin-top:16px;font-family:var(--wb-f-mono);font-size:var(--wb-t-sm);color:var(--wb-cota)}
.lp-toggle a{color:var(--wb-plano);font-weight:600;margin-left:5px}
.lp-footer{margin-top:18px;font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-cota);letter-spacing:.03em}

/* ── Barra inferior (solo celular) ── */
.ap-bottomnav{display:none}

/* ── Tableta ── */
@media(max-width:1100px){
  .stats,.stats--5{grid-template-columns:repeat(2,1fr)}
  .stats--3{grid-template-columns:repeat(3,1fr)}
  .rc5,.res-grid{grid-template-columns:repeat(3,1fr)}
  .form-grid-5,.fg5{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .sidebar{transform:translateX(-100%)}
  .sidebar.open{transform:none}
  .main{margin-left:0}
  .fg4,.fg5,.form-grid-5{grid-template-columns:1fr 1fr}
  .content{padding:16px 14px}
  .hamburger{display:inline-flex!important}
  .grid-2{grid-template-columns:1fr}
  .hdr{padding:8px 14px}
}

/* ── Celular: modo consulta ── */
@media(max-width:700px){
  body{overflow-x:clip}
  .content{padding:14px 12px calc(96px + var(--wb-safe-b))}
  .hdr{gap:8px;min-height:52px}
  .hdr-left p{display:none}
  .hdr-left h1{font-size:1rem}
  .clock{display:none}
  .hdr-right .btn-sm{min-height:36px;padding:0 10px}
  [data-action="goDiaNuevo"]{display:none!important}
  /* barra inferior con las 5 secciones */
  .ap-bottomnav{display:flex}
  .ap-bottomnav .wb-bottomnav__item{font-family:var(--wb-f-ui);background:none;border:0}
  /* datos primero: posición, cobertura e inventario arriba; registros ocultos */
  #dia-panel{display:flex!important;flex-direction:column}
  #dia-panel[style*="display: none"],#dia-panel[style*="display:none"]{display:none!important}
  /* lo que se consulta en el celular: cuánto USDT falta (posición + cobertura) y el inventario */
  #dia-panel>.rc5{order:1}
  #dia-panel>.cob-card{order:2}
  #dia-panel>.inv-card{order:3}
  #dia-panel>.card--resultado{order:4}
  #dia-panel>.card--pedidos{order:5}
  #dia-panel>.card--compras{order:6}
  #dia-panel>.card--reventa{order:7}
  #form-pedido,#btn-add-ped,#dia-panel .inset,#comp-prev,#rev-prev,.rv-usar,[data-action="addRev"],
  .card--nuevo-retiro,.bolsa-form,#bolsa-prev,[data-action="nuevoDia"],#btn-inv-edit,#btn-costeo,.inv-edit-row,
  td .btn,.sticker,#btn-cerrar,#btn-editar,[data-action="confirmEliminar"]{display:none!important}
  /* posición del día: "Faltantes" / "A favor" primero y a lo ancho; meta y disponibles lado a lado; COP recibido al final */
  #pos-falt-cell,#pos-exc-cell{order:-1;grid-column:1/-1}
  #pos-falt-cell .rcell-val.big,#pos-exc-cell .rcell-val.big{font-size:1.6rem}
  #dia-panel>.rc5>.rcell:first-child{order:1;grid-column:1/-1}
  #dia-layout{flex-direction:column}
  #dia-tabs-wrap{width:100%}
  .dia-accordion{max-height:200px}
  /* el título de sección ya está en la cabecera; filtros de días compactos (búsqueda arriba, mes y estado lado a lado) */
  #page-dia .sec-hd,#page-retiros .sec-hd,#page-analytics .sec-hd{display:none}
  #page-historial .sec-hd>div:first-child{display:none}
  .dia-filters{display:grid;grid-template-columns:3fr 2fr;gap:6px}
  #dia-search,.dia-count-row{grid-column:1/-1}
  .dia-count-row{margin-bottom:0}
  .dia-flt-input,.flt-input,.fld input,.fld select,.fld-input{font-size:16px}
  #h-search{width:100%}
  .sec-hd-acts{width:100%}
  .sec-hd-acts .flt-input{flex:1;min-width:0}
  .stats,.stats--5,.stats--3,.stats--2{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
  .sc{padding:10px 12px}
  .rc3,.rc4,.rc5,.res-grid{grid-template-columns:1fr 1fr;gap:8px}
  .rcell{padding:10px 12px}
  .card{padding:12px;margin-bottom:12px}
  .inv-card{padding:12px}
  .modal{min-width:0}
  .toast-wrap{left:12px;right:12px;top:auto;bottom:calc(var(--wb-nav-h) + var(--wb-safe-b) + 12px)}
  .toast{min-width:0;width:100%}
  /* tablas → tarjetas (cada celda lleva su rótulo desde data-label) */
  .t-cards{min-width:0!important}
  .t-cards thead{display:none}
  .t-cards,.t-cards tbody,.t-cards tfoot{display:block}
  .t-cards tr{display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;padding:10px 12px;border-bottom:var(--wb-borde-fino) solid var(--wb-linea)}
  .t-cards tbody tr:last-child{border-bottom:0}
  .t-cards td{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:2px 0;border:0;white-space:normal;min-width:0;font-size:.9rem}
  .t-cards td::before{content:attr(data-label);font-family:var(--wb-f-mono);font-size:.62rem;letter-spacing:.05em;text-transform:uppercase;color:var(--wb-cota)}
  .t-cards td:not([data-label])::before{content:none}
  .t-cards td[colspan]{grid-column:1/-1;align-items:center;text-align:center}
  .t-cards td.l:first-child{grid-column:1/-1;font-family:var(--wb-f-ui);font-size:1rem;font-weight:600;flex-direction:row;flex-wrap:wrap;gap:6px;align-items:center}
  .t-cards td.l:first-child::before{content:none}
  .t-cards td:empty{display:none}
  .t-cards tfoot tr{background:var(--wb-papel);border-top:var(--wb-borde) solid var(--wb-linea-fuerte)}
  .t-cards tfoot td{border-top:0;font-weight:600}
}
@media(max-width:580px){
  #user-badge{display:none}
  .stats,.stats--5,.stats--3{grid-template-columns:1fr 1fr}
  .fg3,.fg4,.fg5,.form-grid-5{grid-template-columns:1fr}
  .hdr{padding:6px 12px}
}
@media(max-width:420px){
  .hdr-left h1{font-size:.95rem}
  #account-switcher{font-size:.8rem;padding:4px 26px 4px 8px}
}

/* ── Recalcular reventas (24-sep-2026): barra en el Dashboard y ventana de revisión día por día ── */
.rc-bar{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;background:var(--wb-superficie);border:var(--wb-borde) solid var(--wb-linea-fuerte);border-left:4px solid var(--wb-plano);padding:10px 14px;margin-bottom:16px}
.rc-bar__t{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 360px}
.rc-bar__t b{font-family:var(--wb-f-titulo);font-size:.95rem}
.rc-bar__t span{font-size:var(--wb-t-sm);color:var(--wb-cota);line-height:1.4}
body.ro .rc-bar{display:none!important}
.modal.modal--ancho{max-width:980px;max-height:calc(100vh - 32px);display:flex;flex-direction:column}
.modal--ancho .modal-text{font-size:var(--wb-t-sm);line-height:1.45}
.rc-body{flex:1 1 auto;min-height:0;overflow:auto;margin-top:10px;padding-right:2px}
.rc-resumen{display:flex;flex-direction:column;gap:4px;background:var(--wb-papel);border:var(--wb-borde-fino) solid var(--wb-linea);padding:10px 12px;font-size:.9rem;margin-bottom:10px}
.rc-resumen b{font-family:var(--wb-f-mono);font-weight:700}
.rc-dif{font-family:var(--wb-f-mono);font-weight:700}
.rc-dif.g,.rc-resumen .g{color:var(--wb-ok)}.rc-dif.r,.rc-resumen .r,b.r{color:var(--wb-oxido)}
.rc-aviso{color:var(--wb-ambar);font-size:var(--wb-t-sm);font-weight:600}
.rc-vacio{padding:16px;text-align:center;color:var(--wb-cota)}
.rc-lista{display:flex;flex-direction:column;gap:8px}
.rc-dia{border:var(--wb-borde-fino) solid var(--wb-linea-fuerte);padding:10px 12px;background:var(--wb-superficie)}
.rc-dia--off{opacity:.62}
.rc-dia__hd{display:flex;align-items:center;gap:8px;flex-wrap:wrap;cursor:pointer}
.rc-dia__hd input{width:18px;height:18px;flex-shrink:0}
.rc-metodo{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-plano)}
.rc-prom{font-family:var(--wb-f-mono);font-size:var(--wb-t-sm);margin-left:auto}
.rc-dia__nums{font-family:var(--wb-f-mono);font-size:var(--wb-t-sm);margin:6px 0 2px 26px;font-variant-numeric:tabular-nums}
.rc-dia details{margin:6px 0 0 26px}
.rc-dia summary{cursor:pointer;font-size:var(--wb-t-sm);color:var(--wb-plano)}
.rc-tbl{overflow-x:auto;margin-top:6px}
.rc-tbl table{font-size:.82rem}
.rc-tbl th,.rc-tbl td{padding:5px 8px;white-space:nowrap;text-align:right}
.rc-tbl th.l,.rc-tbl td.l{text-align:left}
.rc-tbl tr.rc-off td{color:var(--wb-cota)}
.badge-manual{background:var(--wb-ambar-tinte);color:var(--wb-ambar);border-color:rgba(138,90,0,.35)}
/* botón del día: hoja blanca sobre la mesa oscura, como los botones de la barra de sesión */
.rc-dia-btn{background:var(--wb-superficie);color:var(--wb-plano);border-color:var(--wb-linea-fuerte)}
.rc-dia-btn:hover{background:var(--wb-superficie);color:var(--wb-plano);border-color:var(--wb-fondo-acento)}
body.ro #btn-recalc-dia{display:none!important}
@media(max-width:700px){.rc-bar,#btn-recalc-dia{display:none!important}}
.rc-todos{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px}
.rc-todos span{font-family:var(--wb-f-mono);font-size:var(--wb-t-xs);color:var(--wb-cota);margin-left:auto}
