@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
/* ============================================================
   GestioNet · V2 — Estilo El Cóndor (violeta / Manrope)
   ============================================================ */

:root,
html[data-theme="light"]{
  --bg:#f7f7fb; --bg2:#ffffff; --bg3:#f1ecfe; --bg4:#f7f7fb;
  --border:#ececf4; --border-soft:#ececf4;

  --accent:#6C3EF5; --accent2:#5A2EE0; --accent3:#f1ecfe; --accent-soft:#f3effe;
  --accent-grad:linear-gradient(135deg,#7c5cff 0%,#5a34e8 100%);

  --green:#0b9f6e; --green-bg:#d7f5ea; --green-soft:#effcf6;
  --red:#e5484d;   --red-bg:#fde5e6;   --red-soft:#fef3f3;
  --yellow:#e8930c; --yellow-bg:#fdefcf; --yellow-soft:#fffaef;
  --purple:#8b5cff; --purple-bg:#ede7ff;

  --text:#1a1333; --text2:#4a4266; --text3:#7a7392; --text4:#aaa3c1;

  --shadow-xs:0 2px 10px rgba(26,26,43,.04);
  --shadow-sm:0 4px 16px rgba(26,26,43,.05);
  --shadow:0 12px 30px -12px rgba(107,60,224,.28);
  --shadow-lg:0 30px 80px rgba(40,20,120,.20);

  --radius:12px; --radius-lg:18px; --radius-xl:24px; --blue:#6C3EF5;
}

body,button,input,select,textarea,.btn,.menu-btn,.dd-item{
  font-family:'Manrope',system-ui,-apple-system,sans-serif !important;
}
body{font-size:14px;letter-spacing:-.01em;color:var(--text)}
.page-header h2{font-size:22px;font-weight:800;letter-spacing:-.5px}
.kpi-value,.bru-bal-value,.bru-chip b,.bru-tx-amt{font-variant-numeric:tabular-nums}

*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-thumb{background:#ddd8ee;border-radius:999px;border:2px solid transparent;background-clip:padding-box}
*::-webkit-scrollbar-thumb:hover{background:#c7bff0;background-clip:padding-box}
*::-webkit-scrollbar-track{background:transparent}

/* ============ TOP BAR ============ */
#topbar{box-sizing:border-box;height:60px;background:#fff;border-bottom:1px solid var(--border);padding:0 24px;box-shadow:0 1px 0 rgba(26,26,43,.03);backdrop-filter:none}
#logo{padding-right:20px;border-right:1px solid var(--border)}
#logo-icon{width:38px;height:38px;background:var(--accent);border-radius:13px;font-size:16px;font-weight:800;box-shadow:none;color:#fff}
#logo-text{font-size:17px;font-weight:800;letter-spacing:-.5px;color:var(--text)}
#logo-text span{-webkit-text-fill-color:var(--accent);color:var(--accent);background:none}
.menu-btn{height:auto;padding:9px 15px;margin:0 2px;border-radius:999px;font-size:13.5px;font-weight:700;color:var(--text3);transition:all .15s}
.menu-btn::after{display:none !important}
.menu-btn:hover{background:var(--accent-soft);color:var(--accent)}
.menu-btn.active{background:var(--accent-soft);color:var(--accent)}
.menu-btn .arrow{font-size:9px}
#topbar-right{gap:9px;padding-left:15px}
.top-local-badge,.cot-badge{border-radius:999px;padding:7px 15px;font-weight:700}
.top-local-badge{background:var(--accent-soft);border:1px solid var(--accent3);color:var(--accent)}
.top-local-badge select{color:var(--accent)}
.top-btn{width:38px;height:38px;border-radius:12px;font-size:15px;background:var(--bg);border:1px solid var(--border)}
.top-btn:hover{background:var(--accent-soft);border-color:var(--accent3);color:var(--accent);transform:translateY(-1px)}

/* ============ WORKSPACE ============ */
#workspace{padding:30px 40px;max-width:1500px;margin:0 auto;width:100%}
.page-header{margin-bottom:24px;padding-bottom:18px;gap:15px;border-bottom:1px solid var(--border)}
.page-header-icon{width:44px;height:44px;border-radius:14px;font-size:19px;background:var(--accent-soft);border:1px solid var(--accent3)}
.page-header h2{color:var(--text)}

/* ============ HOME ============ */
.bru-greet{margin-bottom:20px}
.bru-hi{font-size:25px;font-weight:800;letter-spacing:-.5px;color:var(--text)}
.bru-date{font-size:13px;color:var(--text3);text-transform:capitalize;margin-top:2px}

.bnk-top{display:grid;grid-template-columns:1fr;gap:22px;margin-bottom:30px}
.bnk-info{background:var(--bg2);border:1px solid var(--border);border-radius:22px;padding:34px 40px;box-shadow:var(--shadow-sm)}
.bnk-info .bru-bal-label{color:var(--text3);font-size:12.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase}
.bnk-info .bru-bal-value{color:var(--accent);font-size:56px;font-weight:800;letter-spacing:-1.6px;margin:8px 0 4px;line-height:1;font-variant-numeric:tabular-nums}
.bnk-info .bru-bal-sub{color:var(--text3);font-size:14px}
.bnk-info .bru-bal-chips{display:flex;gap:16px;margin-top:26px;flex-wrap:wrap}
.bnk-info .bru-chip{background:var(--bg);border:1px solid var(--border);border-radius:16px;padding:16px 22px;min-width:158px}
.bnk-info .bru-chip span{display:block;font-size:12px;color:var(--text3);margin-bottom:6px;font-weight:600}
.bnk-info .bru-chip b{font-size:21px;font-weight:800;color:var(--text);letter-spacing:-.4px;font-variant-numeric:tabular-nums}
.bnk-info #bru-bal-deuda{color:var(--red)}

.bru-section-t{font-size:13px;font-weight:800;color:var(--text2);margin:6px 0 14px;letter-spacing:-.1px}

.bru-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(154px,1fr));gap:12px;margin-bottom:28px}
.bru-act{display:flex;align-items:center;gap:13px;text-align:left;background:var(--bg2);border:1px solid var(--border);border-radius:16px;padding:15px 16px;cursor:pointer;transition:all .15s;box-shadow:var(--shadow-xs);font-family:inherit}
.bru-act:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:var(--accent3)}
.bru-act-ic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);flex:0 0 auto}
.bru-act-ic svg{width:21px;height:21px;stroke:var(--accent);fill:none}
.bru-act-t{font-size:13.5px;font-weight:700;color:var(--text);line-height:1.25}

.cards-grid{gap:14px;margin-bottom:28px}
.kpi-card{background:var(--bg2);border:1px solid var(--border);border-radius:20px;padding:18px 20px;box-shadow:var(--shadow-xs)}
.kpi-card::before{height:0}
.kpi-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px);border-color:var(--accent3)}
.kpi-label{font-size:11px;letter-spacing:.4px;color:var(--text3);font-weight:700}
.kpi-value{font-size:23px;margin-top:2px;color:var(--text);font-weight:800}
.kpi-sub{color:var(--text4)}
.kpi-icon:empty{display:none}
.kpi-icon{position:absolute;right:16px;top:18px;transform:none;font-size:18px;opacity:1;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent)}
.kpi-card.green .kpi-icon{background:var(--green-bg);color:var(--green)}
.kpi-card.red .kpi-icon{background:var(--red-bg);color:var(--red)}
.kpi-card.yellow .kpi-icon{background:var(--yellow-bg);color:var(--yellow)}

.bru-tx-list{padding:6px}
.bru-tx{display:flex;align-items:center;gap:13px;padding:12px;border-radius:14px;transition:background .15s}
.bru-tx:hover{background:var(--accent-soft)}
.bru-tx+.bru-tx{border-top:1px solid var(--border-soft)}
.bru-tx-ic{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;background:var(--accent-soft)}
.bru-tx-ic svg{width:19px;height:19px;stroke:var(--accent);fill:none}
.bru-tx-ic.in{background:var(--green-bg)}
.bru-tx-ic.in svg{stroke:var(--green)}
.bru-tx-main{flex:1;min-width:0}
.bru-tx-t{font-size:13.5px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bru-tx-s{font-size:11.5px;color:var(--text3);margin-top:2px}
.bru-tx-amt{font-size:14px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}
.bru-tx-amt.in{color:var(--green)}
.bru-tx-empty{padding:26px;text-align:center;color:var(--text3);font-size:13px}

/* ============ BOTONES ============ */
.btn{padding:10px 18px;border-radius:14px;font-size:14px;font-weight:700}
.btn-sm{padding:7px 13px;border-radius:11px;font-size:13px}
.btn-primary{background:var(--accent);color:#fff;box-shadow:0 2px 14px -4px rgba(90,46,224,.45)}
.btn-primary:hover{background:var(--accent2);box-shadow:0 6px 18px -4px rgba(90,46,224,.5);transform:translateY(-1px)}
.btn-success{background:var(--green)}
.btn-danger{background:var(--red)}
.btn-outline{border:1px solid var(--border);background:var(--bg2);color:var(--text2)}
.btn-outline:hover{background:var(--accent-soft);border-color:var(--accent3);color:var(--accent)}
.btn-icon{border-radius:12px;width:36px;height:36px}

/* ============ INPUTS ============ */
input,select,textarea{border-radius:14px !important;padding:11px 14px !important;border:1.5px solid var(--border) !important;background:var(--bg2) !important;font-size:14px !important}
input:focus,select:focus,textarea:focus{outline:none !important;border-color:var(--accent) !important;background:#fff !important;box-shadow:0 0 0 4px rgba(108,62,245,.12) !important}
input::placeholder{color:var(--text4)}

/* ============ TABLAS ============ */
.table-wrap{border-radius:20px;box-shadow:var(--shadow-xs);border:1px solid var(--border)}
thead th{background:var(--bg);color:var(--text3);padding:13px 18px;font-size:11px;letter-spacing:.5px;font-weight:800;border-bottom:1px solid var(--border)}
tbody td{padding:14px 18px;font-size:13.5px}
tbody tr{border-color:var(--border-soft)}
tbody tr:hover{background:var(--accent-soft)}
tbody td code{background:var(--accent-soft);color:var(--accent2);border-radius:8px;padding:3px 8px}

/* ============ BADGES ============ */
.badge{border-radius:999px;font-weight:700;padding:4px 11px}
.badge-blue{background:var(--accent-soft);color:var(--accent2)}
.badge-green{background:var(--green-bg);color:var(--green)}
.badge-red{background:var(--red-bg);color:var(--red)}
.badge-yellow{background:var(--yellow-bg);color:var(--yellow)}
.badge-gray{background:#eef0f5;color:#7a7f93}
.badge-cyan{background:var(--accent-soft);color:var(--accent)}
.badge-purple{background:var(--accent-soft);color:var(--accent)}

/* ============ MODALES ============ */
.modal{border-radius:24px;box-shadow:var(--shadow-lg);border:1px solid var(--border)}
.modal-header{background:#fff;border-bottom:1px solid var(--border);padding:18px 24px}
.modal-header-icon{border-radius:13px;width:38px;height:38px;background:var(--accent-soft);border:1px solid var(--accent3)}
.modal-header h3{font-size:16px;font-weight:800;letter-spacing:-.2px}
.modal-body{padding:24px}
.modal-footer{padding:16px 24px;background:#fff}
.modal-bg{background:rgba(26,26,43,.42);backdrop-filter:blur(8px)}

/* ============ PANELES ============ */
.panel{border-radius:20px !important;border:1px solid var(--border) !important;box-shadow:var(--shadow-xs);background:var(--bg2)}
.panel-header h3{font-size:14px;font-weight:800;letter-spacing:-.1px}

/* ============ DROPDOWNS ============ */
.dropdown{border-radius:18px;padding:8px;box-shadow:var(--shadow-lg);border:1px solid var(--border);min-width:236px}
.dd-item{border-radius:12px;padding:11px 13px;font-size:13.5px;font-weight:600;gap:12px}
.dd-item:hover{background:var(--accent-soft);color:var(--accent);transform:translateX(3px)}
.dd-item .dd-ico{width:32px;height:32px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;font-size:15px;opacity:1}
.dd-item:hover .dd-ico{background:var(--accent3)}
.dd-section{font-size:10px;letter-spacing:.8px;color:var(--text4);padding:8px 13px 5px;font-weight:800}

/* ============ STATUS BAR ============ */
#statusbar{background:#1a1a2b !important;border-top:1px solid #2a2a3d;color:#9d9fb5}
.sb-item{border-right:1px solid #2a2a3d}
.sb-item b{color:#cfc9ee}
.sb-ver{color:#6a6d85}

/* ============ Sellar celestes genéricos ============ */
.items-add-row{background:var(--bg3) !important}
.caja-card::after{background:var(--accent) !important}
.dash-wave{background:var(--accent-grad) !important;box-shadow:none !important;border-radius:var(--radius-lg)}
.act-btn.view:hover{background:var(--accent-soft) !important;color:var(--accent2) !important;border-color:var(--accent3) !important}

/* ============ LOGIN ============ */
#login-screen{background:linear-gradient(135deg,#5A2EE0 0%,#6C3EF5 55%,#8F6BFF 100%) !important}
#login-btn{background:var(--accent) !important;border-radius:14px !important;font-weight:800 !important}

/* ============ Ribbon ============ */
#v2-ribbon{position:fixed;left:16px;bottom:16px;z-index:9000;background:var(--accent);color:#fff;font:800 11px/1 'Manrope',sans-serif;letter-spacing:.5px;padding:8px 14px;border-radius:999px;box-shadow:0 8px 20px rgba(108,62,245,.45);display:flex;align-items:center;gap:7px;pointer-events:none}
#v2-ribbon::before{content:'';width:7px;height:7px;border-radius:50%;background:#c9fce4}

@media(min-width:821px){
  #topbar{height:62px;padding:0 26px}
  #menubar{gap:2px}
  #workspace{max-width:1500px;margin:0 auto;padding:30px 40px}
}
@media(max-width:820px){
  #workspace{padding:18px 16px}
  .bru-hi{font-size:22px}
  .bnk-info{padding:24px 22px}
  .bnk-info .bru-bal-value{font-size:40px}
  .bnk-info .bru-chip{min-width:130px;flex:1}
  .bru-actions{grid-template-columns:1fr 1fr}
}

/* Fase 2: badge faltante + iconos de header vacios */
.badge-orange{background:var(--yellow-bg);color:var(--yellow)}
.page-header-icon:empty{display:none}

/* Home operativa: tira saldos admin + 2 columnas */
.dash-2col{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}
.dash-saldos-strip{display:flex !important;gap:0;background:var(--bg2);border:1px solid var(--border);border-radius:16px;padding:4px;margin-bottom:26px;box-shadow:var(--shadow-xs)}
.dash-saldos-strip .ss-item{flex:1;padding:13px 20px;border-right:1px solid var(--border-soft)}
.dash-saldos-strip .ss-item:last-child{border-right:none}
.dash-saldos-strip .ss-item span{display:block;font-size:10.5px;color:var(--text3);font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}
.dash-saldos-strip .ss-item b{font-size:20px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.3px}
.dash-saldos-strip .ss-rojo b{color:var(--red)}
@media(max-width:820px){.dash-2col{grid-template-columns:1fr}.dash-saldos-strip{flex-wrap:wrap}.dash-saldos-strip .ss-item{flex:1 1 44%;border-right:none;border-bottom:1px solid var(--border-soft)}}

/* Estado del dia: estirar tarjetas a lo ancho */
#dash-oper{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}

/* CTA principal en violeta (no verde) + menu superior pulido */
.btn-success{background:var(--accent) !important;box-shadow:0 2px 14px -4px rgba(90,46,224,.45)}
.btn-success:hover{background:var(--accent2) !important;transform:translateY(-1px)}
#menubar{gap:3px}
.menu-btn{padding:9px 14px;font-size:13.5px;font-weight:700}
.menu-btn svg{width:18px;height:18px;opacity:.85;flex:0 0 auto}
.menu-btn .arrow{opacity:.45;font-size:8px;margin-left:1px}
.menu-btn:hover svg,.menu-btn.active svg{opacity:1}
#logo-icon{box-shadow:0 4px 12px rgba(108,62,245,.3)}

/* MDI: minimizar oculta la ventana (solo queda el chip en la taskbar) + mas aire */
.gn-window.minimized{display:none !important}
.gn-window-body{padding:22px 30px 28px !important}
.gn-window{border-radius:16px}
.gn-window-header{padding:11px 16px;background:var(--bg2);border-bottom:1px solid var(--border)}

/* Footer de ventanas MDI: anclado abajo, opaco, sin solaparse con el contenido */
.gn-window .modal{height:100% !important;display:flex !important;flex-direction:column}
.gn-window .modal-footer{margin-top:auto;position:sticky;bottom:0;background:var(--bg2) !important;border-top:1px solid var(--border) !important;z-index:6;box-shadow:0 -6px 18px rgba(20,20,43,.07);padding:14px 24px !important}
.gn-window .modal-footer .btn-success{background:var(--accent) !important}

/* Home: feed lateral de movimientos (estilo Condor) */
.dash-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:26px;align-items:start}
.dash-side{position:sticky;top:16px}
.dash-side .panel{margin-bottom:16px}
.dash-side .bru-tx{padding:11px 12px}
.dash-side .bru-tx-t{font-size:12.5px}
.dash-side .bru-tx-amt{font-size:13px}
@media(max-width:1100px){.dash-layout{grid-template-columns:1fr}.dash-side{position:static}}

/* Feed estilo Condor: avatares circulares */
.bru-tx{align-items:flex-start}
.bru-tx-av{width:38px;height:38px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:12.5px;letter-spacing:.3px}
.bru-tx-main{min-width:0}
.bru-tx-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.bru-tx-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bru-tx-badge{font-size:10px;font-weight:700;color:var(--text3);background:var(--bg3);border-radius:999px;padding:2px 9px;white-space:nowrap;text-transform:capitalize;flex:0 0 auto}
.bru-tx-amt2{font-size:14.5px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;margin:3px 0 1px}
.bru-tx-amt2.in{color:var(--green)}

/* Feed pegado al borde derecho: dashboard a todo el ancho */
#workspace:has(> #page-dashboard.active){max-width:none !important;padding-right:0 !important}
.dash-layout{grid-template-columns:minmax(0,1fr) 340px}
.dash-side{padding-right:24px}

/* Fix definitivo: footer MDI en flujo (no sticky) para que no pise el TOTAL */
.gn-window .modal-footer{position:relative !important;box-shadow:none !important;margin-top:auto}
.gn-window .rec-total-card{margin-bottom:14px}

/* Feed lateral limpio, pegado al borde (sin cajas ni headers con fondo) */
#workspace:has(> #page-dashboard.active){padding-right:20px !important}
.dash-side{padding:0 !important;position:sticky;top:14px}
.dash-side .panel{background:none !important;border:none !important;box-shadow:none !important;border-radius:0 !important;margin-bottom:24px;overflow:visible}
.dash-side .panel-header{background:none !important;border:none !important;border-left:none !important;padding:0 4px 10px 4px !important}
.dash-side .panel-header h3{font-size:11.5px !important;letter-spacing:.9px;text-transform:uppercase;color:var(--text3) !important;font-weight:800}
.dash-side .bru-tx-list{padding:0}
.dash-side .bru-tx{border-radius:12px;padding:11px 12px}
.dash-side .bru-tx:hover{background:var(--bg2)}
.dash-side .bru-tx+.bru-tx{border-top:1px solid var(--border-soft)}

/* Feed: panel BLANCO fijo, full-height, arriba y al borde derecho */
#page-dashboard{padding-right:340px}
.dash-layout{display:block}
.dash-side{position:fixed !important;top:58px;right:0;bottom:0;width:340px;background:#fff !important;border-left:1px solid var(--border);overflow-y:auto;padding:20px 22px !important;z-index:30}
.dash-side .bru-section-t:first-child{margin-top:0}
@media(max-width:1100px){#page-dashboard{padding-right:0}.dash-side{position:static !important;width:auto;border-left:none;background:none !important;padding:0 !important;height:auto}}

/* pedidos nuevos en feed */
.bru-tx-ic.ped{background:#fff4e6 !important;color:#e8930c !important}
.bru-tx-badge.ped{background:#fff4e6;color:#c47a0a}


/* ============ TEMA OSCURO ============ */
html[data-theme="dark"]{
  --bg:#0f0f17; --bg2:#1a1a26; --bg3:#241f38; --bg4:#15151f;
  --border:#2a2a3a; --border-soft:#242433;
  --accent:#8b6cff; --accent2:#7c5cff; --accent3:#241f38; --accent-soft:#211d33;
  --accent-grad:linear-gradient(135deg,#8b6cff 0%,#6a3ff0 100%);
  --green:#2dd4a7; --green-bg:#12352c; --green-soft:#0f2620;
  --red:#ff6b70; --red-bg:#3a1f21; --red-soft:#291a1c;
  --yellow:#f5b13d; --yellow-bg:#3a2e15; --yellow-soft:#2a2312;
  --purple:#a78bff; --purple-bg:#2a2145;
  --text:#f1eefb; --text2:#c6c0dd; --text3:#928bab; --text4:#6b6588;
  --shadow-xs:0 2px 10px rgba(0,0,0,.35);
  --shadow-sm:0 4px 16px rgba(0,0,0,.4);
  --shadow:0 12px 30px -12px rgba(0,0,0,.55);
  --shadow-lg:0 30px 80px rgba(0,0,0,.6);
}
html[data-theme="dark"] #topbar{background:var(--bg2)}
html[data-theme="dark"] .modal-header,
html[data-theme="dark"] .modal-footer{background:var(--bg2)}
html[data-theme="dark"] .dash-side{background:var(--bg2) !important}
html[data-theme="dark"] input:focus,
html[data-theme="dark"] select:focus,
html[data-theme="dark"] textarea:focus{background:var(--bg2) !important;box-shadow:0 0 0 4px rgba(139,108,255,.18) !important}
html[data-theme="dark"] .bru-tx-ic{background:var(--accent3)}
html[data-theme="dark"] *::-webkit-scrollbar-thumb{background:#3a3a4d}
html[data-theme="dark"] *::-webkit-scrollbar-thumb:hover{background:#4a4a60}

/* ============ COTIZACION BADGE ============ */
.cot-badge{white-space:nowrap;gap:8px}
.cot-seg{display:inline-flex;align-items:baseline;gap:4px;white-space:nowrap}
.cot-sep{width:1px;height:12px;background:var(--border);display:inline-block;align-self:center}

/* fix doble pastilla selector de local */
.top-local-badge select,.cot-badge select{background:none !important;border:none !important;padding:0 !important;border-radius:0 !important;box-shadow:none !important;height:auto !important;font-weight:700;color:var(--accent) !important}
.top-local-badge select:focus,.cot-badge select:focus{box-shadow:none !important;background:none !important}

/* ===== FIX overlap footer/TOTAL en ventanas MDI ===== */
.gn-window-body .modal{height:100%;display:flex;flex-direction:column}
.gn-window-body .modal-body{flex:1 1 auto;overflow:auto;min-height:0}
.gn-window-body .modal-footer{flex:0 0 auto;position:relative;z-index:5;background:var(--bg2)}

/* ===== TASKBAR ventanas minimizadas ===== */
.gn-taskbar{background:rgba(255,255,255,.82);backdrop-filter:blur(12px);height:auto;padding:8px 12px;gap:8px;border-top:1px solid var(--border)}
html[data-theme="dark"] .gn-taskbar{background:rgba(18,18,28,.82)}
.gn-task-btn{background:var(--bg2);border:1px solid var(--border);border-radius:999px;padding:7px 15px;font-size:12px;font-weight:600;box-shadow:var(--shadow-xs);color:var(--text2);max-width:220px}
.gn-task-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}
.gn-task-btn.active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}

/* ===== NOTIFICACIONES ===== */
#notif-panel{border-radius:16px !important;overflow:hidden}
.notif-item{display:flex;gap:11px;padding:13px 16px;border-bottom:1px solid var(--border-soft);cursor:pointer;transition:background .12s;position:relative}
.notif-item:hover{background:var(--bg)}
.notif-item.unread{background:var(--accent-soft)}
.notif-item.unread:hover{background:var(--accent3)}
.notif-item.unread::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent)}
.notif-ic{width:34px;height:34px;flex:0 0 auto;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--bg3);color:var(--accent)}
.notif-ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.notif-main{flex:1;min-width:0}
.notif-t{font-size:13px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:6px}
.notif-msg{font-size:12px;color:var(--text2);margin-top:2px;line-height:1.38}
.notif-time{font-size:10.5px;color:var(--text4);margin-top:4px}
.notif-dot{width:8px;height:8px;background:var(--accent);border-radius:50%;flex:0 0 auto;margin-left:auto}

/* ===== FEED movimientos compacto ===== */
.dash-side{padding:16px 18px !important}
.dash-side .bru-section-t{font-size:12px;margin:2px 0 7px}
.dash-side .panel{margin-bottom:15px !important}
.dash-side .panel-header h3{font-size:10.5px !important;padding:0 2px 7px 2px !important}
.dash-side .bru-tx{padding:7px 8px !important;gap:10px}
.dash-side .bru-tx-ic{width:30px !important;height:30px !important;border-radius:9px}
.dash-side .bru-tx-ic svg{width:15px !important;height:15px !important}
.dash-side .bru-tx-t{font-size:12px !important}
.dash-side .bru-tx-amt2{font-size:12.5px !important;margin:1px 0 0 !important}
.dash-side .bru-tx-s{font-size:10.5px !important;margin-top:1px !important}
.dash-side .bru-tx-badge{font-size:9px !important;padding:1px 7px !important}

/* ===== FEED movimientos: tamaño intermedio ===== */
.dash-side .bru-section-t{font-size:12.5px !important;margin:2px 0 9px !important}
.dash-side .panel-header h3{font-size:11px !important;padding:0 2px 8px 2px !important}
.dash-side .bru-tx{padding:9px 9px !important;gap:11px}
.dash-side .bru-tx-ic{width:35px !important;height:35px !important;border-radius:10px}
.dash-side .bru-tx-ic svg{width:16px !important;height:16px !important}
.dash-side .bru-tx-t{font-size:12.8px !important}
.dash-side .bru-tx-amt2{font-size:13.5px !important;margin:2px 0 0 !important}
.dash-side .bru-tx-s{font-size:11px !important;margin-top:2px !important}
.dash-side .bru-tx-badge{font-size:9.5px !important;padding:2px 8px !important}

/* ===== Recibo en ventana MDI: llenar todo el ancho (como factura) ===== */
.gn-window-body #modal-recibo .modal,
.gn-window-body .modal{max-width:none !important;width:100% !important;height:100% !important}

/* ===== Fix dropdown de artículos recortado en Nuevo Pedido ===== */
#page-pedido-simple .table-wrap{overflow:visible !important}
#page-pedido-simple .autocomplete-list{z-index:1200}

/* ===== Modal selector de color (pedido) ===== */
#modal-ps-color{z-index:100000}
.psc-lbl{font-size:11px;font-weight:800;color:var(--text3);text-transform:uppercase;letter-spacing:.6px;margin-bottom:8px}
.psc-grid{display:flex;flex-wrap:wrap;gap:8px}
.psc-chip{padding:7px 13px;border:1px solid var(--border);background:var(--bg2);border-radius:999px;font-size:12.5px;font-weight:600;cursor:pointer;color:var(--text2);text-transform:uppercase;transition:all .12s;font-family:inherit}
.psc-chip:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
.ps-color-cell:hover{background:var(--accent-soft)}

/* ===== Fix dropdown cliente Factura recortado por nf-section ===== */
.nf-section:has(.autocomplete-wrap){overflow:visible}
.nf-section .autocomplete-wrap .autocomplete-list{z-index:1200}

/* ===== Modal selector de artículo (pedido) ===== */
#modal-ps-art{z-index:100000}
.psa-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--border);border-radius:10px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--text2);background:var(--bg2);transition:all .12s}
.psa-item:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
.ps-art-cell:hover{background:var(--accent-soft)}

/* ===== Fix scroll-through: al abrir modal, no mover el fondo ===== */
.modal-bg.open{overscroll-behavior:contain}
body:has(.modal-bg.open){overflow:hidden !important}
.gn-window-body:has(.modal-bg.open),.gn-window:has(.modal-bg.open) .gn-window-body{overflow:hidden !important}

/* ===== Grilla kgs por rollo estilo Excel ===== */
.kgsr-table{width:100%;border-collapse:collapse;font-size:13px}
.kgsr-table th{background:#eef1f6;border:1px solid #cfd6e2;padding:6px 8px;font-size:11px;color:#5a6478;text-transform:uppercase;letter-spacing:.5px;text-align:left}
.kgsr-table td{border:1px solid #dbe0ea;padding:0}
.kgsr-num{background:#f6f8fb;text-align:center !important;color:#9aa3b5;width:52px;font-variant-numeric:tabular-nums;font-size:12px}
.kgsr-inp:focus{background:#eef4ff !important;box-shadow:inset 0 0 0 2px var(--accent)}
html[data-theme="dark"] .kgsr-table th{background:var(--bg3);border-color:var(--border);color:var(--text3)}
html[data-theme="dark"] .kgsr-table td{border-color:var(--border)}
html[data-theme="dark"] .kgsr-num{background:var(--bg4);color:var(--text4)}
