
/* ===== SOURCE: app-12.8.439.css ===== */
:root{--primary:#1378d1;--nav:#0b1f38;--nav2:#102b4b;--blue:#1378d1;--cyan:#19b7b1;--bg:#f5f7fa;--surface:#fff;--text:#152334;--muted:#748094;--line:#e4e9ef;--good:#18a66a;--bad:#d64c4c;--shadow:0 8px 28px rgba(18,42,68,.07)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font:14px Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button,a{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{height:100vh;position:sticky;top:0;background:linear-gradient(180deg,var(--nav),#09192d);padding:22px 14px 14px;color:#d7e4ef;display:flex;flex-direction:column;z-index:30}.logo{height:48px;display:flex;align-items:center;gap:10px;padding:0 10px;font-size:22px;font-weight:800;letter-spacing:-.7px;color:#fff}.logo-mark,.login-logo span,.mobile-logo span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(145deg,var(--blue),var(--cyan));color:white;font-weight:900}.account{display:flex;align-items:center;gap:10px;margin:14px 6px 16px;padding:13px 9px;border:1px solid #ffffff12;background:#ffffff08;border-radius:12px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#ffffff16;color:white;font-weight:800}.account strong,.account small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:145px}.account small{font-size:11px;color:#9fb4c8;margin-top:3px}.account small i,.sync i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--good);margin-right:6px}.sidebar nav{display:grid;gap:2px;overflow:auto;padding-right:2px;scrollbar-width:none}.sidebar nav a,.logout{height:39px;border:0;background:transparent;color:#afc3d5;text-decoration:none;border-radius:9px;display:flex;align-items:center;gap:11px;padding:0 11px;text-align:left}.sidebar nav a b,.logout b{width:21px;text-align:center;font-size:16px;font-weight:500}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff10;color:#fff}.sidebar nav a.active{box-shadow:inset 3px 0 0 var(--cyan)}.logout{margin-top:auto;width:100%}.workspace{min-width:0}.topbar{height:76px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;padding:0 30px;display:flex;align-items:center;justify-content:space-between;gap:24px}.topbar h1{font-size:19px;margin:0;letter-spacing:-.3px}.topbar p{font-size:11px;color:var(--muted);margin:3px 0 0}.top-actions{display:flex;align-items:center;gap:16px}.global-search{width:320px;height:40px;border:1px solid var(--line);border-radius:10px;background:#f9fafc;display:flex;align-items:center;padding:0 12px;color:#93a0ae}.global-search input{border:0;outline:0;background:transparent;width:100%;padding:0 8px}.sync{font-size:11px;color:var(--muted);white-space:nowrap}.sync.ok{color:#32845f}.sync.bad,.sync.bad i{color:var(--bad);background:transparent}.sync.bad i{background:var(--bad)}.content{max-width:1580px;margin:auto;padding:28px 30px 50px}.mobile-menu{display:none}.hero{min-height:148px;border-radius:18px;background:linear-gradient(120deg,#102d50,#164c77);color:white;padding:27px 30px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow);margin-bottom:18px}.hero h2{font-size:28px;letter-spacing:-.8px;margin:5px 0}.hero p{margin:0;color:#c9d9e7}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.3px;color:#73849a}.hero .eyebrow{color:#7edbd5}.primary,.soft,.icon-btn{border:0;border-radius:10px;padding:11px 16px;font-weight:750}.primary{background:linear-gradient(135deg,var(--blue),#0f8fca);color:#fff;box-shadow:0 7px 18px rgba(19,120,209,.2)}.primary:disabled{opacity:.55;cursor:not-allowed}.hero .primary{background:white;color:#123d66;box-shadow:none}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;align-items:center;gap:14px;box-shadow:0 2px 9px rgba(16,40,66,.035)}.metric-icon{width:42px;height:42px;border-radius:12px;background:#eef6fc;color:var(--blue);display:grid;place-items:center;font-size:18px;font-weight:800}.metric-card span,.metric-card strong,.metric-card small{display:block}.metric-card span{font-size:11px;color:var(--muted)}.metric-card strong{font-size:21px;margin:3px 0;letter-spacing:-.4px}.metric-card small{font-size:10px;color:#98a2ae}.dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,.75fr);gap:18px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:15px;box-shadow:0 2px 12px rgba(18,42,68,.035);padding:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:17px}.panel-head h3{font-size:16px;margin:3px 0 0}.panel-head a{color:var(--blue);font-size:12px;text-decoration:none}.panel-head input{width:280px}.quick a{display:grid;grid-template-columns:1fr auto;text-decoration:none;color:var(--text);padding:14px 3px;border-bottom:1px solid var(--line)}.quick a b,.quick a span{display:block}.quick a span{grid-column:1;font-size:11px;color:var(--muted);margin-top:3px}.quick a i{grid-column:2;grid-row:1/3;align-self:center;color:var(--blue);font-style:normal}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#8b97a5}td{font-size:12px}.status{display:inline-flex;padding:4px 8px;border-radius:999px;background:#edf8f2;color:#26825a;font-size:10px}.pos{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:18px}.catalog{min-height:650px}.checkout{position:sticky;top:96px;height:max-content}.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:11px}.product-card{min-height:160px;background:white;border:1px solid var(--line);border-radius:12px;padding:12px;text-align:left;display:flex;flex-direction:column;gap:5px;transition:.15s}.product-card:hover{border-color:#9ac6e9;transform:translateY(-1px);box-shadow:0 7px 18px rgba(18,42,68,.07)}.product-art{height:64px;border-radius:9px;background:linear-gradient(145deg,#eef5fb,#f8fafc);display:grid;place-items:center;font-size:24px;font-weight:800;color:#6b98bb;margin-bottom:5px}.product-card small{color:var(--muted);flex:1}.product-card strong{color:#113e68}.checkout label,.login-card label{display:grid;gap:6px;margin:13px 0;font-size:11px;font-weight:700;color:#617084}.checkout input,.checkout select,.panel-head input,.login-card input{width:100%;height:42px;border:1px solid var(--line);border-radius:9px;padding:0 11px;outline:0;background:white}.checkout input:focus,.panel-head input:focus,.login-card input:focus{border-color:#8bbde3;box-shadow:0 0 0 3px #eaf5fd}.icon-btn{padding:5px 10px;background:#f2f4f7;color:#75808d}.cart-items{max-height:340px;overflow:auto}.cart-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.cart-item b,.cart-item small{display:block}.cart-item small{font-size:10px;color:var(--muted);margin-top:3px}.stepper{display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;overflow:hidden}.stepper button{width:27px;height:28px;border:0;background:#f7f9fb}.stepper span{width:28px;text-align:center;font-size:11px}.total{display:flex;justify-content:space-between;align-items:center;padding:18px 0 8px}.total strong{font-size:23px}.charge{width:100%;margin-top:5px}.hints{position:relative}.hints:not(:empty){border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-top:-10px}.hints button{width:100%;border:0;background:white;text-align:left;padding:9px 11px}.hints button:hover{background:#f5f8fb}.hints small{display:block;color:var(--muted)}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.feature{background:white;border:1px solid var(--line);border-radius:15px;padding:24px;text-decoration:none;color:var(--text);min-height:190px}.feature>span{width:42px;height:42px;display:grid;place-items:center;background:#eef6fc;color:var(--blue);border-radius:11px;font-size:18px}.feature h3{margin:20px 0 7px}.feature p{color:var(--muted);font-size:12px;line-height:1.6}.feature b{color:var(--blue);font-size:11px}.loading{min-height:150px;display:flex;align-items:center;justify-content:center;gap:5px}.loading span{width:7px;height:7px;border-radius:50%;background:#9fb6c9;animation:pulse 1s infinite}.loading span:nth-child(2){animation-delay:.15s}.loading span:nth-child(3){animation-delay:.3s}@keyframes pulse{50%{transform:translateY(-5px);opacity:.4}}.empty,.error{text-align:center;padding:42px 18px;color:var(--muted)}.empty strong,.error strong{display:block;color:#4d5c6b}.empty p,.error p{font-size:11px}.error{background:#fff7f7;border-radius:10px}.soft{background:#eef3f7;color:#3d566d}.technical{font-size:10px;color:#98a2ae;text-align:center}.toast{position:fixed;right:25px;bottom:25px;background:#153d62;color:#fff;padding:13px 17px;border-radius:10px;box-shadow:var(--shadow);transform:translateY(30px);opacity:0;pointer-events:none;transition:.2s;z-index:100}.toast.show{transform:none;opacity:1}.toast.bad{background:#9d3f3f}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(420px,.9fr) minmax(500px,1.1fr);background:white}.login-brand{padding:54px 60px;background:linear-gradient(145deg,#0a2039,#123d65 65%,#116d83);color:white;display:flex;flex-direction:column;justify-content:space-between}.login-logo,.mobile-logo{display:flex;align-items:center;gap:10px;font-size:24px;font-weight:850}.login-brand h1{font-size:52px;line-height:1.03;letter-spacing:-2px;margin:12px 0 18px}.login-brand p{color:#c6d8e6;max-width:480px;line-height:1.7}.login-brand small{color:#91a9bc}.login-side{display:grid;place-items:center;padding:40px}.login-card{width:min(420px,100%)}.login-card h2{font-size:30px;letter-spacing:-.8px;margin:7px 0}.login-card>p{color:var(--muted);margin-bottom:28px}.remember{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;font-weight:500!important}.remember input{width:16px!important;height:16px!important}.login-btn{width:100%;height:45px;margin-top:8px}.secure{text-align:center;display:block;color:#91a0ad;margin-top:18px}.secure::first-letter{color:var(--good)}.login-error{margin-top:14px;padding:11px;border-radius:9px;background:#fff0f0;color:#a33f3f;font-size:12px}.mobile-logo{display:none;color:var(--nav);margin-bottom:34px}
@media(max-width:1180px){.app-shell{grid-template-columns:76px 1fr}.sidebar{padding:18px 10px}.logo span:last-child,.account>div:last-child,.sidebar nav a span,.logout span{display:none}.logo{padding:0;justify-content:center}.account{padding:10px 5px;justify-content:center}.sidebar nav a,.logout{justify-content:center;padding:0}.sidebar nav a.active{box-shadow:none;background:#ffffff16}.global-search{width:250px}.metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.pos,.dashboard-grid{grid-template-columns:1fr}.checkout{position:static}.feature-grid{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-brand{display:none}.mobile-logo{display:flex}.login-side{min-height:100vh}.topbar{padding:0 18px}.content{padding:20px}.global-search{display:none}}
@media(max-width:640px){.app-shell{display:block}.sidebar{position:fixed;left:-260px;top:0;width:248px;height:100vh;transition:.2s}.sidebar.open{left:0;box-shadow:20px 0 50px #0003}.sidebar.open .logo span:last-child,.sidebar.open .account>div:last-child,.sidebar.open nav a span,.sidebar.open .logout span{display:block}.sidebar.open nav a,.sidebar.open .logout{justify-content:flex-start;padding:0 11px}.mobile-menu{display:block;border:0;background:#eef3f7;border-radius:8px;width:36px;height:36px}.topbar{height:66px;justify-content:flex-start}.top-actions{margin-left:auto}.sync{font-size:0}.sync i{margin:0}.content{padding:15px 12px 30px}.hero{padding:22px;min-height:135px}.hero h2{font-size:23px}.hero .primary{display:none}.metrics{grid-template-columns:1fr 1fr;gap:9px}.metric-card{padding:13px;gap:9px}.metric-icon{width:35px;height:35px}.metric-card strong{font-size:16px}.panel{padding:15px}.panel-head{align-items:flex-start;flex-direction:column}.panel-head input{width:100%}.products{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:1fr}.login-side{padding:25px}.login-card h2{font-size:26px}}
/* Ventyum Control Center */
.admin-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr;background:#f5f7fa}.admin-sidebar{background:#0b2239;color:#d8e5ef;padding:24px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.admin-brand{display:flex;align-items:center;gap:11px;padding:4px 10px 28px}.admin-brand>span{width:36px;height:36px;border-radius:10px;background:#16a0d6;display:grid;place-items:center;color:white;font-weight:900;font-size:19px}.admin-brand b,.admin-brand small{display:block}.admin-brand b{font-size:19px;color:white}.admin-brand small{font-size:8px;letter-spacing:1.5px;color:#7593aa}.admin-sidebar nav{display:grid;gap:5px}.admin-sidebar nav a{height:44px;border-radius:9px;color:#a9bfd0;text-decoration:none;display:flex;align-items:center;gap:12px;padding:0 12px;font-size:12px;font-weight:700}.admin-sidebar nav a i{font-style:normal;width:20px;text-align:center}.admin-sidebar nav a.active,.admin-sidebar nav a:hover{background:#123754;color:white}.admin-side-foot{margin-top:auto;border-top:1px solid #ffffff14;padding:18px 10px 4px}.admin-side-foot small,.admin-side-foot b,.admin-side-foot a{display:block}.admin-side-foot small{font-size:8px;letter-spacing:1px;color:#6e8ca3}.admin-side-foot b{font-size:12px;color:white;margin:5px 0 12px}.admin-side-foot a{font-size:10px;color:#78c8ee;text-decoration:none}.admin-work{min-width:0}.admin-top{height:96px;background:white;border-bottom:1px solid #e3e8ee;padding:18px 30px;display:flex;align-items:center;justify-content:space-between}.admin-top h1{font-size:23px;margin:2px 0}.admin-top p{font-size:11px;color:#7c8997;margin:0}.admin-kicker{font-size:8px;letter-spacing:1.4px;font-weight:900;color:#1688bf}.admin-preview{font-size:10px;padding:8px 11px;border:1px solid #f0dca8;background:#fff9e9;color:#896a1d;border-radius:8px}.admin-content{padding:25px 30px;max-width:1550px;margin:auto}.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px}.admin-metrics article{background:white;border:1px solid #e2e8ee;border-radius:13px;padding:18px}.admin-metrics span,.admin-metrics small{display:block;color:#7d8996;font-size:10px}.admin-metrics b{display:block;font-size:27px;margin:5px 0;color:#17334c}.admin-panel{background:white;border:1px solid #e2e8ee;border-radius:14px;overflow:hidden}.admin-panel-head{padding:18px 20px;border-bottom:1px solid #e7ebef;display:flex;align-items:center;justify-content:space-between}.admin-panel-head h2{font-size:15px;margin:0}.admin-panel-head p{font-size:10px;color:#8995a1;margin:4px 0 0}.admin-panel-head input{width:310px;height:38px;border:1px solid #dce3e9;border-radius:8px;padding:0 11px;outline:none}.admin-table-wrap{overflow:auto}.admin-table{min-width:1050px}.admin-table td{vertical-align:middle}.admin-table td b,.admin-table td small{display:block}.admin-table td small{font-size:9px;color:#8d99a5;margin-top:3px}.license-badge{display:inline-flex!important;padding:5px 8px;border-radius:999px;font-size:9px!important;font-weight:800}.license-badge.pendiente{background:#fff5db;color:#9b7015}.license-badge.demo{background:#e8f4ff;color:#1976ad}.license-badge.activa{background:#e9f8ef;color:#277d50}.license-badge.suspendida,.license-badge.rechazada{background:#fbecec;color:#a34444}.admin-actions{display:flex;gap:5px;justify-content:flex-end}.admin-actions button{border:1px solid #dce4ea;background:white;border-radius:7px;padding:7px 9px;font-size:9px;font-weight:750;white-space:nowrap}.admin-actions .admin-primary{background:#137fc0;color:white;border-color:#137fc0}.admin-empty{text-align:center!important;padding:45px!important;color:#8a96a2}.admin-note{margin-top:15px;border:1px solid #dbe8f1;background:#f3f9fd;border-radius:11px;padding:13px 15px;color:#5d7487;font-size:10px}.admin-note b{color:#284b66}.admin-note b::after{content:' ';}
@media(max-width:900px){.admin-shell{grid-template-columns:76px 1fr}.admin-sidebar{padding:20px 10px}.admin-brand>div,.admin-sidebar nav a:not(.active){font-size:0}.admin-sidebar nav a{justify-content:center;padding:0}.admin-sidebar nav a i{font-size:15px}.admin-side-foot small,.admin-side-foot b{display:none}.admin-side-foot a{font-size:0}.admin-side-foot a::before{content:'←';font-size:18px}.admin-metrics{grid-template-columns:1fr 1fr}.admin-top,.admin-content{padding-left:18px;padding-right:18px}.admin-panel-head input{width:240px}}
.owner-center{height:39px;color:#7edbd5;text-decoration:none;border-radius:9px;display:flex;align-items:center;gap:11px;padding:0 11px;margin-top:auto}.owner-center+ .logout{margin-top:4px}.owner-center:hover{background:#ffffff10;color:white}.admin-live{font-size:10px;padding:8px 11px;border:1px solid #cde8da;background:#f1fbf5;color:#287653;border-radius:8px}.admin-loading,.admin-error{background:white;border:1px solid #e2e8ee;border-radius:14px;padding:35px;color:#617084}.admin-error{border-color:#f0d4d4;background:#fffafa}.admin-error b{color:#963f3f}.admin-error small{color:#8a96a2}.admin-error p{margin:8px 0}.admin-sidebar .owner-center{margin-top:0}
.google-btn{width:100%;height:45px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#27384a;font-weight:750;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 2px 7px rgba(18,42,68,.04)}.google-btn:hover{background:#f8fafc;border-color:#cbd5df}.google-btn:disabled{opacity:.55;cursor:not-allowed}.google-g{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:16px;color:#4285f4;background:#fff}.login-divider{display:flex;align-items:center;gap:12px;margin:18px 0 6px;color:#9aa5b1;font-size:10px}.login-divider:before,.login-divider:after{content:'';height:1px;background:var(--line);flex:1}.login-divider span{white-space:nowrap}
/* v7 branding — usa el arte oficial Ventyum, no un monograma recreado */
.logo{height:54px;padding:0 8px;overflow:hidden}.logo img{display:block;width:155px;height:auto;object-fit:contain;object-position:left center}
.login-logo{display:block;width:250px;height:150px;overflow:hidden;margin:0 0 6px}.login-logo img{width:100%;height:100%;object-fit:contain;object-position:left center;mix-blend-mode:screen}
.mobile-logo{height:48px;overflow:hidden}.mobile-logo img{width:180px;height:auto;object-fit:contain;mix-blend-mode:multiply}
.google-btn{height:48px;border:1px solid #cfd8e3;background:#fff;color:#1f2937;font-size:13px;font-weight:800}.google-g{width:22px;height:22px;background:transparent}.google-g svg{display:block}
@media(max-width:1180px){.logo img{width:52px;max-width:none;transform:translateX(-1px)}}
@media(max-width:850px){.mobile-logo{display:flex}.mobile-logo img{width:175px}}

/* v8 branding/order — logo exacto aportado por el usuario */
.login-logo{display:block;width:330px;height:175px;overflow:visible;margin:0 0 8px}
.login-logo img{width:100%;height:100%;object-fit:contain;object-position:left center;mix-blend-mode:normal;filter:none}
.mobile-logo img{width:220px;max-height:110px;object-fit:contain;object-position:left center}
.sidebar .logo{height:54px;display:flex;align-items:center;overflow:hidden}
.sidebar .logo img{width:170px;height:88px;object-fit:contain;object-position:left center}
.google-btn{margin-top:0}
.login-divider{margin:14px 0}
/* v12 Control Center global */
.admin-brand{min-height:70px;align-items:center}.admin-brand img{width:145px;max-height:76px;object-fit:contain;object-position:left center}.admin-brand>div{margin-left:-4px}.admin-brand>div b{font-size:13px}.admin-brand>div small{margin-top:3px}.admin-side-foot button{width:100%;border:1px solid #ffffff1a;background:#ffffff08;color:#d7e4ef;border-radius:9px;padding:10px;text-align:left;font-size:11px;font-weight:700}.admin-side-foot button:hover{background:#ffffff12}.payment-badge{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:800}.payment-badge.on{background:#e9f8ef;color:#277d50}.payment-badge.off{background:#f1f3f5;color:#6f7b86}.license-badge.gracia{background:#e8f4ff;color:#1976ad}.admin-actions .danger{color:#a34444;border-color:#ebcccc;background:#fffafa}.admin-actions button:hover{background:#f4f7f9}.admin-table{min-width:1220px}.admin-live{font-weight:700}
@media(max-width:900px){.admin-brand img{width:48px}.admin-brand>div{display:none}.admin-side-foot button{font-size:0;text-align:center}.admin-side-foot button::before{content:'↪';font-size:18px}}

/* v12.3 — branding nítido y sin fondo visible */
.login-logo{width:min(520px,88%);height:auto;overflow:visible;margin:0 0 24px}
.login-logo img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:left center;mix-blend-mode:normal;filter:none;image-rendering:auto}
.mobile-logo{height:auto;overflow:visible;margin-bottom:28px}.mobile-logo img{display:block;width:min(300px,82vw);height:auto;max-height:none;object-fit:contain;filter:none;image-rendering:auto}
.admin-brand{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:start;padding:2px 8px 24px}.admin-brand img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:left center;image-rendering:auto}.admin-brand>div{margin-left:0}.admin-brand>div b{font-size:14px}.admin-brand>div small{font-size:8px}
.sidebar .logo img{display:block;width:100%;height:auto;max-height:52px;object-fit:contain;object-position:left center;image-rendering:auto}
@media(max-width:900px){.admin-brand img{width:54px;height:54px;object-fit:cover;object-position:center}.admin-brand{display:flex;justify-content:center}.admin-brand>div{display:none}}
/* v12.5 — panel operativo real */
.metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.mini-chart,.stats-chart{height:220px;display:flex;align-items:flex-end;gap:12px;padding:24px 12px 8px;border-top:1px solid var(--line)}.mini-chart>div,.stats-chart>div{flex:1;min-width:42px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}.mini-chart>div>span{width:min(38px,70%);min-height:4px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#15b8d8,#117bc1)}.mini-chart b,.stats-chart b{font-size:10px;text-transform:capitalize;color:var(--text)}.mini-chart small,.stats-chart small{font-size:8px;color:var(--muted);text-align:center}.stats-chart{height:300px;align-items:stretch}.stats-chart>div{justify-content:flex-end}.bar-track{height:190px;width:100%;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid var(--line)}.bar-track span{display:block;width:min(48px,65%);min-height:3px;border-radius:9px 9px 3px 3px;background:linear-gradient(180deg,#20c8b2,#1685cc)}.totals-box{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.totals-box>div{display:flex;justify-content:space-between;gap:16px;padding:5px 0;font-size:11px}.sale-note{display:block;margin-top:10px;color:var(--muted);font-size:9px;line-height:1.45}.toast.warn{background:#8a6b17;color:white}.status{display:inline-flex;padding:4px 7px;border-radius:999px;background:#edf6fa;color:#26718c;font-size:9px;font-weight:800}
@media(max-width:720px){.mini-chart,.stats-chart{overflow-x:auto}.mini-chart>div,.stats-chart>div{min-width:70px}}

/* v12.6.2 — navegación administrativa completa */
.sidebar nav{min-height:0;overflow-y:auto;padding-bottom:10px;scrollbar-width:thin;scrollbar-color:#31506d transparent}.sidebar nav::-webkit-scrollbar{width:5px}.sidebar nav::-webkit-scrollbar-thumb{background:#31506d;border-radius:9px}.sidebar nav a{flex:0 0 39px}.logout{flex:0 0 39px}.technical{display:none}

/* v12.6.3 POS */ .metric-link{color:var(--text);text-decoration:none}.metric-link:hover{border-color:#9ac6e9;transform:translateY(-1px)}.pos-content{height:calc(100vh - 76px);overflow:hidden;display:flex;flex-direction:column}.pos-content .pos{height:100%;min-height:0;flex:1}.pos-content .catalog,.pos-content .checkout{min-height:0;overflow:hidden}.pos-content .catalog{display:flex;flex-direction:column}.pos-content .products{min-height:0;flex:1;overflow:auto}.pos-content .checkout{position:static;display:flex;flex-direction:column}.pos-content #cart{min-height:0;flex:1;overflow:auto}.pos-content .cart-items{max-height:none}.date-filters{display:flex;gap:6px}.date-filters .soft.active{background:#1378d1;color:#fff}@media(max-width:850px){.pos-content{height:auto;overflow:visible;display:block}.pos-content .pos{height:auto}.pos-content .catalog,.pos-content .checkout,.pos-content .products,.pos-content #cart{overflow:visible}.pos-content .catalog{display:block}}/* v12.6.12 Estadísticas PRO */
.stats-filters{margin-bottom:18px}.stats-filter-grid{display:grid;grid-template-columns:160px 160px 190px 190px 1fr;gap:12px;align-items:end}.stats-filter-grid label{display:grid;gap:6px;font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.stats-filter-grid input,.stats-filter-grid select{height:40px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 10px}.stats-actions{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap}.stats-kpis{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px;margin-bottom:18px}.stats-wide{margin-bottom:18px}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.stats-chart-pro{overflow-x:auto}.stats-chart-pro>div{min-width:72px}.stats-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stats-summary>div{padding:16px;border:1px solid var(--line);border-radius:11px;background:#f9fbfc}.stats-summary span,.stats-summary b{display:block}.stats-summary span{font-size:10px;color:var(--muted);margin-bottom:6px}.stats-summary b{font-size:20px}@media(max-width:1200px){.stats-filter-grid{grid-template-columns:repeat(2,1fr)}.stats-actions{grid-column:1/-1;justify-content:flex-start}.stats-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.stats-filter-grid,.stats-grid{grid-template-columns:1fr}.stats-kpis{grid-template-columns:1fr 1fr}}

/* v12.6.13 — Estadísticas PRO con visualización circular */
.compact-kpis .metric-card{min-width:0;padding:15px 14px;gap:10px;overflow:hidden}
.compact-kpis .metric-icon{width:36px;height:36px;flex:0 0 36px;font-size:15px}
.compact-kpis .metric-card>div:last-child{min-width:0;overflow:hidden}
.compact-kpis .metric-card strong{font-size:clamp(14px,1.22vw,18px);line-height:1.12;letter-spacing:-.35px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.compact-kpis .metric-card span{font-size:9.5px}.compact-kpis .metric-card small{font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stats-donut-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.donut-panel{min-height:340px}.donut-layout{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(260px,1.2fr);gap:24px;align-items:center;min-height:260px}
.donut-ring{width:min(220px,100%);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;margin:auto;box-shadow:inset 0 0 0 1px #ffffffaa,0 12px 32px rgba(18,42,68,.08)}
.donut-hole{width:58%;aspect-ratio:1;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 0 0 1px var(--line),0 5px 18px rgba(18,42,68,.06);padding:12px;overflow:hidden}
.donut-hole small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.donut-hole strong{font-size:clamp(13px,1.25vw,18px);max-width:100%;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.donut-legend{display:grid;gap:8px;min-width:0}.donut-legend-row{display:grid;grid-template-columns:10px minmax(70px,1fr) auto 44px;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid #eef1f4;min-width:0}
.donut-legend-row i{width:9px;height:9px;border-radius:50%}.donut-legend-row span{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.donut-legend-row b{font-size:10px;text-align:right;white-space:nowrap}.donut-legend-row em{font-size:9px;color:var(--muted);font-style:normal;text-align:right}
@media(max-width:1200px){.stats-donut-grid{grid-template-columns:1fr}.donut-layout{grid-template-columns:220px 1fr}.compact-kpis .metric-card strong{font-size:16px}}
@media(max-width:700px){.donut-layout{grid-template-columns:1fr}.donut-ring{width:190px}.donut-legend-row{grid-template-columns:10px minmax(80px,1fr) auto 40px}.stats-kpis.compact-kpis{grid-template-columns:1fr 1fr}}
\n/* v12.6.14 Estadísticas layout fix */
#stats,#statsBody,.stats-donut-grid,.donut-panel,.donut-layout,.donut-legend{min-width:0;max-width:100%}
.stats-filters{overflow:hidden}
.stats-range-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.stats-range-row .eyebrow{margin:0}
.stats-range-row .stats-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start}
.stats-filter-grid{grid-template-columns:minmax(145px,1fr) minmax(145px,1fr) minmax(180px,1.2fr) minmax(180px,1.2fr) auto;align-items:end}
.stats-apply{height:40px;min-width:104px;white-space:nowrap}
.compact-kpis{min-width:0}
.compact-kpis .metric-card{width:100%;max-width:100%;overflow:hidden}
.compact-kpis .metric-card strong{font-size:clamp(13px,1.05vw,17px);letter-spacing:-.45px}
.compact-kpis .metric-card small,.compact-kpis .metric-card span{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.donut-panel{overflow:hidden}
.donut-layout{grid-template-columns:minmax(170px,210px) minmax(0,1fr);gap:18px}
.donut-ring{width:min(205px,100%)}
.donut-legend-row{grid-template-columns:10px minmax(0,1fr) minmax(86px,auto) 40px;gap:7px;overflow:hidden}
.donut-legend-row span,.donut-legend-row b,.donut-legend-row em{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.donut-legend-row b{white-space:nowrap;font-size:9.5px}
.donut-legend-row em{white-space:nowrap}
@media(max-width:1200px){
  .stats-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats-apply{grid-column:1/-1;width:max-content}
  .stats-range-row{align-items:flex-start;flex-direction:column}
  .donut-layout{grid-template-columns:200px minmax(0,1fr)}
}
@media(max-width:700px){
  .stats-range-row .stats-actions{width:100%}
  .stats-range-row .stats-actions button{flex:1 1 calc(50% - 8px)}
  .donut-layout{grid-template-columns:1fr}
}

/* v12.6.15: selector gráfico/texto para Estadísticas */
.stats-view-toggle{display:flex;gap:6px;margin-top:8px}.stats-view-toggle .soft.active{background:#1677d2;color:#fff;border-color:#1677d2}.stats-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0}.text-stats-panel{min-width:0;overflow:hidden}.text-stats-panel .table-wrap{overflow:auto}@media(max-width:1000px){.stats-text-grid{grid-template-columns:1fr}}

/* v12.6.18 Estadísticas legibles + comprobantes fiscales */
.stats-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.stats-toolbar-left,.stats-toolbar-right{display:flex;align-items:flex-end;gap:20px}.stats-toolbar-left{flex:1}.stats-toolbar-right{justify-content:flex-end}.stats-toolbar .stats-actions{justify-content:flex-start;margin-top:8px}.stats-toolbar-right .stats-view-toggle{margin-top:8px}
.compact-kpis .metric-card{overflow:visible;min-width:0}.compact-kpis .metric-card>div:last-child{overflow:visible;min-width:0}.compact-kpis .metric-card strong{font-size:clamp(12px,.92vw,16px)!important;line-height:1.15;white-space:nowrap;overflow:visible;text-overflow:clip;max-width:none;font-variant-numeric:tabular-nums}.compact-kpis .metric-card small,.compact-kpis .metric-card span{white-space:normal;overflow:visible;text-overflow:clip}.stats-kpis.compact-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
.fiscal-docs-head{align-items:flex-end}.fiscal-docs-head small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.fiscal-tools{display:flex;gap:8px}.fiscal-tools input,.fiscal-tools select{height:40px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 10px}.fiscal-tools input{width:320px}.fiscal-tools select{width:170px}.fiscal-summary{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-bottom:16px}.fiscal-summary>div{border:1px solid var(--line);background:#f9fbfc;border-radius:11px;padding:13px 15px}.fiscal-summary span,.fiscal-summary b{display:block}.fiscal-summary span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.fiscal-summary b{font-size:20px;margin-top:4px}.fiscal-key{display:inline-block;max-width:230px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}.fiscal-state{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:800;text-transform:uppercase}.fiscal-state.ok{background:#e9f8ef;color:#277d50}.fiscal-state.wait{background:#fff5db;color:#906813}.fiscal-state.bad{background:#fbecec;color:#a34444}.fiscal-files{display:flex;gap:6px}.file-pill{display:inline-flex;align-items:center;padding:6px 8px;border-radius:8px;font-size:9px;font-weight:800;text-decoration:none;border:1px solid var(--line);white-space:nowrap}.file-pill.pdf{background:#fff3f3;color:#a94747;border-color:#f0d4d4}.file-pill.xml{background:#edf7ff;color:#1d6f9f;border-color:#d3e8f5}.file-pill.missing{background:#f5f6f7;color:#9aa3ad}
@media(max-width:1200px){.stats-toolbar{align-items:flex-start;flex-direction:column}.stats-toolbar-left,.stats-toolbar-right{width:100%;justify-content:space-between}.stats-kpis.compact-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.fiscal-docs-head{align-items:flex-start;flex-direction:column}.fiscal-tools{width:100%}.fiscal-tools input{flex:1;width:auto}}
@media(max-width:720px){.stats-toolbar-left,.stats-toolbar-right{align-items:flex-start;flex-direction:column}.stats-kpis.compact-kpis{grid-template-columns:1fr 1fr}.fiscal-tools{flex-direction:column}.fiscal-tools input,.fiscal-tools select{width:100%}.fiscal-summary{grid-template-columns:1fr 1fr}}

/* v12.6.21 comprobantes: lista compacta + detalle desplegable */
.fiscal-filterbar{display:grid;grid-template-columns:minmax(260px,1.6fr) 160px 160px 190px auto;gap:10px;align-items:end;margin:14px 0 16px}.fiscal-filterbar label{display:flex;flex-direction:column;gap:6px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.45px;color:var(--muted)}.fiscal-filterbar input,.fiscal-filterbar select{height:40px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 10px;font:inherit;color:var(--text)}.fiscal-search-wrap input{width:100%}.fiscal-quick{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.fiscal-quick .soft{height:40px;padding:0 12px}.fiscal-doc-list{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.fiscal-doc-head,.fiscal-doc-row{display:grid;grid-template-columns:190px minmax(220px,1.25fr) minmax(170px,.9fr) 120px 24px;gap:16px;align-items:center}.fiscal-doc-head{padding:11px 16px;background:#f7f9fb;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.45px}.fiscal-doc{border-top:1px solid var(--line)}.fiscal-doc:first-of-type{border-top:0}.fiscal-doc-row{width:100%;border:0;background:#fff;padding:14px 16px;text-align:left;cursor:pointer;color:var(--text);font:inherit}.fiscal-doc-row:hover{background:#fafcfd}.fiscal-doc-row[aria-expanded="true"]{background:#f7fbff}.fiscal-doc-date{font-size:11px;color:var(--muted)}.fiscal-doc-client{font-weight:750;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fiscal-doc-type{font-size:11px;color:#4d5965}.fiscal-doc-state{justify-self:end}.fiscal-chevron{font-size:18px;color:var(--muted);transition:transform .18s ease}.fiscal-doc-row[aria-expanded="true"] .fiscal-chevron{transform:rotate(180deg)}.fiscal-doc-detail{padding:0 16px 16px;background:#f7fbff}.fiscal-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px;border:1px solid #dceaf5;border-radius:10px;background:#fff}.fiscal-detail-grid>div{min-width:0}.fiscal-detail-grid .wide{grid-column:1/-1}.fiscal-detail-grid span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.45px;margin-bottom:4px}.fiscal-detail-grid b,.fiscal-detail-grid code{font-size:11px;overflow-wrap:anywhere;word-break:break-word}.fiscal-detail-grid code{display:block;background:#f5f7f9;border-radius:7px;padding:9px}.fiscal-detail-files{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.fiscal-detail-files .file-pill{font-size:10px;padding:8px 11px}.fiscal-state{white-space:nowrap}
@media(max-width:1180px){.fiscal-filterbar{grid-template-columns:1fr 1fr 1fr}.fiscal-search-wrap{grid-column:1/-1}.fiscal-quick{grid-column:1/-1}.fiscal-doc-head,.fiscal-doc-row{grid-template-columns:150px minmax(180px,1fr) 150px 110px 20px}}
@media(max-width:760px){.fiscal-filterbar{grid-template-columns:1fr 1fr}.fiscal-search-wrap,.fiscal-quick{grid-column:1/-1}.fiscal-doc-head{display:none}.fiscal-doc-row{grid-template-columns:1fr auto 20px;gap:8px}.fiscal-doc-date{grid-column:1}.fiscal-doc-client{grid-column:1;font-size:12px}.fiscal-doc-type{grid-column:1}.fiscal-doc-state{grid-column:2;grid-row:1/4}.fiscal-chevron{grid-column:3;grid-row:1/4}.fiscal-detail-grid{grid-template-columns:1fr}.fiscal-detail-grid .wide{grid-column:1}.fiscal-summary{grid-template-columns:1fr 1fr}}
/* v12.6.24 — filtros fiscales consistentes y legibles */
.fiscal-quick-top{justify-content:flex-start;margin:12px 0 14px;gap:9px}
.fiscal-quick-top .soft{min-width:96px;height:42px;font-size:12px;font-weight:750}
.fiscal-filterbar{grid-template-columns:minmax(280px,1.5fr) minmax(170px,.72fr) minmax(170px,.72fr) minmax(210px,.85fr)}
.fiscal-filterbar label{font-size:11px;font-weight:800;letter-spacing:.3px;gap:8px}
.fiscal-filterbar input,.fiscal-filterbar select{height:44px;font-size:13px;padding:0 12px}
@media(max-width:1180px){.fiscal-filterbar{grid-template-columns:1fr 1fr}.fiscal-search-wrap{grid-column:1/-1}}
@media(max-width:760px){.fiscal-filterbar{grid-template-columns:1fr}.fiscal-search-wrap{grid-column:1}.fiscal-quick-top{flex-wrap:wrap}}

/* v12.6.25 — Reportes PRO + scroll completo en Vender */
.reports-quick{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.reports-quick .soft.active{background:var(--blue);color:#fff}.reports-filter-grid{display:grid;grid-template-columns:150px 150px minmax(170px,.8fr) minmax(170px,.8fr) minmax(230px,1.2fr) auto;gap:11px;align-items:end}.reports-filter-grid label{display:grid;gap:7px;font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.45px}.reports-filter-grid input,.reports-filter-grid select{height:42px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 11px;color:var(--text)}.reports-filter-grid .primary{height:42px}.reports-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.reports-detail{margin-top:0}.reports-detail .panel-head small{color:var(--muted)}
/* La columna de cobro debe poder desplazarse de forma independiente hasta descuento, método y Cobrar. */
.pos-content .checkout{overflow-y:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable;max-height:calc(100vh - 132px);padding-bottom:28px}.pos-content .checkout::-webkit-scrollbar{width:8px}.pos-content .checkout::-webkit-scrollbar-thumb{background:#c5d1dc;border-radius:10px}.pos-content #cart{flex:0 0 auto;overflow:visible}.pos-content .cart-items{max-height:300px;overflow:auto}.pos-content .charge{flex:0 0 auto}
@media(max-width:1100px){.reports-filter-grid{grid-template-columns:1fr 1fr 1fr}.reports-search{grid-column:1/3}.reports-grid{grid-template-columns:1fr}.reports-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.reports-filter-grid{grid-template-columns:1fr}.reports-search{grid-column:1}.pos-content .checkout{max-height:none;overflow:visible!important}.pos-content .cart-items{max-height:none}}

/* v12.6.26 — Reporte mensual por rutas, comparación visita a visita */
.route-report-controls{overflow:hidden}.route-report-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.route-report-head h3{margin:3px 0 5px}.route-report-head p{margin:0;color:var(--muted);font-size:12px}.route-report-quick{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.route-report-quick .soft.active{background:var(--blue);color:#fff}.route-report-filters{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(220px,1fr) minmax(220px,1fr) minmax(130px,.45fr);gap:12px;align-items:end;max-width:100%}.route-report-filters label{display:grid;gap:7px;min-width:0;font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.35px}.route-report-filters input,.route-report-filters select{width:100%;min-width:0;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 12px;color:var(--text);font:inherit}.route-report-filters .primary{width:100%;min-width:0;height:44px;padding:0 14px}.route-report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}.route-report-summary>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;min-width:0}.route-report-summary small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.35px;margin-bottom:5px}.route-report-summary strong{font-size:22px;overflow-wrap:anywhere}.route-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.route-comparison-card{margin:0;min-width:0}.route-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}.route-card-top h3{margin:3px 0 0;font-size:20px}.route-card-top>strong{font-size:21px;white-space:nowrap}.route-card-main{display:grid;grid-template-columns:1.35fr .8fr;gap:16px;padding:16px 0}.route-card-main small{display:block;color:var(--muted);font-size:10px;font-weight:700;margin-bottom:4px}.route-card-main b{display:block;font-size:24px;margin-bottom:8px}.route-card-prev{padding-left:15px;border-left:1px solid var(--line)}.route-card-prev b{font-size:18px}.route-trend{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.route-trend.up{background:#e9f8ef;color:#157a40}.route-trend.down{background:#fff0f0;color:#b42318}.route-trend.neutral{background:#f2f4f7;color:#667085}.route-trend.new{background:#eef6ff;color:#1769aa}.route-card-foot{display:flex;gap:8px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--line)}.route-card-foot span{background:#f6f8fa;border-radius:999px;padding:5px 9px;font-size:10px;color:var(--muted);font-weight:700}
@media(max-width:1100px){.route-report-filters{grid-template-columns:1fr 1fr}.route-report-filters .primary{grid-column:2}.route-comparison-grid{grid-template-columns:1fr}.route-report-summary{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:760px){.route-report-head{display:block}.route-report-quick{justify-content:flex-start;margin-top:12px}.route-report-filters{grid-template-columns:1fr}.route-report-filters .primary{grid-column:1}.route-report-summary{grid-template-columns:1fr}.route-card-top{display:block}.route-card-top>strong{display:block;margin-top:8px}.route-card-main{grid-template-columns:1fr}.route-card-prev{padding-left:0;padding-top:12px;border-left:0;border-top:1px solid var(--line)}}
/* v12.6.27 — Reporte de clientes comparativo semana a semana */
.client-report-filters{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(190px,1fr) minmax(180px,1fr) minmax(220px,1.2fr) auto;gap:12px;align-items:end;margin:18px 0 20px}.client-report-filters label{font-size:12px;font-weight:800;letter-spacing:.06em;color:#667085}.client-report-filters input,.client-report-filters select{width:100%;margin-top:7px}.client-report-filters .primary{height:46px;white-space:nowrap}.client-compare-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.client-compare-card{border:1px solid #e6ebf2;border-radius:18px;padding:18px;background:#fff}.client-compare-card.up{border-left:5px solid #1f9d63}.client-compare-card.down{border-left:5px solid #d84a4a}.client-compare-main{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.client-compare-main h3{margin:4px 0 5px}.client-change{font-weight:800;border-radius:999px;padding:7px 10px;white-space:nowrap;font-size:12px}.client-change.up{background:#eaf8f1;color:#14734a}.client-change.down{background:#fff0f0;color:#b52e2e}.client-change.same{background:#f2f4f7;color:#667085}.client-compare-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.client-compare-values div{background:#f8fafc;border-radius:12px;padding:11px}.client-compare-values span{display:block;font-size:11px;color:#667085;margin-bottom:5px}.client-compare-values strong{font-size:16px;overflow-wrap:anywhere}@media(max-width:1050px){.client-report-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.client-report-filters .primary{grid-column:1/-1}.client-compare-list{grid-template-columns:1fr}}@media(max-width:650px){.client-report-filters{grid-template-columns:1fr}.client-compare-values{grid-template-columns:1fr}.client-compare-main{flex-direction:column}.client-change{white-space:normal}}


/* v12.7.0 — consultas bajo demanda */
.tx-periods{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 16px}.tx-periods .soft{min-width:96px}.tx-periods .soft.active{background:var(--primary);color:#fff;border-color:var(--primary)}.tx-filters{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr)) auto;gap:12px;align-items:end;margin:0 0 16px}.tx-filters label{min-width:0}.tx-filters input,.tx-filters select{width:100%}.tx-pager{display:flex;align-items:center;justify-content:center;gap:14px;padding:18px 4px 4px;color:var(--muted)}.tx-pager button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:1100px){.tx-filters{grid-template-columns:repeat(3,minmax(160px,1fr))}.tx-filters .primary{width:100%}}@media(max-width:720px){.tx-filters{grid-template-columns:1fr 1fr}.tx-pager{flex-wrap:wrap}}

/* v12.7.6 — gráficos de estadísticas ampliables */
.donut-expandable{cursor:pointer;transition:box-shadow .16s ease,transform .16s ease}.donut-expandable:hover{box-shadow:0 16px 38px rgba(18,42,68,.12);transform:translateY(-1px)}.donut-expandable:focus{outline:3px solid rgba(19,120,209,.18);outline-offset:2px}.donut-expand-hint{font-size:11px;font-weight:800;color:var(--blue);white-space:nowrap}.donut-expanded-template{display:none!important}.modal-open{overflow:hidden}.donut-modal-overlay{position:fixed;inset:0;z-index:9999;background:rgba(9,24,42,.58);backdrop-filter:blur(3px);display:grid;place-items:center;padding:28px}.donut-modal{width:min(1180px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 90px rgba(3,18,34,.28);padding:26px}.donut-modal-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:18px;border-bottom:1px solid var(--line)}.donut-modal-head h2{margin:4px 0 5px;font-size:28px}.donut-modal-head p{margin:0;color:var(--muted);font-size:13px}.donut-modal-close{border:0;background:#f1f5f8;color:#24384a;width:42px;height:42px;border-radius:12px;font-size:28px;line-height:1;cursor:pointer}.donut-modal-body>.donut-expanded-template{display:grid!important}.donut-modal-body .donut-expanded-template{grid-template-columns:minmax(340px,.9fr) minmax(420px,1.1fr);gap:34px;align-items:center;padding-top:24px}.donut-modal-chart{display:grid;place-items:center}.donut-ring-large{width:min(430px,80vw)!important}.donut-modal-legend{display:grid;gap:7px;max-height:62vh;overflow:auto;padding-right:6px}.donut-modal-row{display:grid;grid-template-columns:12px minmax(150px,1fr) minmax(150px,auto) 64px;gap:12px;align-items:center;width:100%;border:1px solid transparent;background:#f8fafc;border-radius:11px;padding:10px 12px;text-align:left;color:var(--text);font:inherit;cursor:pointer}.donut-modal-row:hover,.donut-modal-row.active{background:#eef6ff;border-color:#cfe5f8}.donut-modal-row i{width:10px;height:10px;border-radius:50%}.donut-modal-row span{font-weight:700;overflow-wrap:anywhere}.donut-modal-row b{text-align:right;font-size:12px}.donut-modal-row em{text-align:right;font-style:normal;font-weight:800;color:var(--muted)}
@media(max-width:850px){.donut-modal-overlay{padding:10px}.donut-modal{padding:18px;border-radius:16px}.donut-modal-body .donut-expanded-template{grid-template-columns:1fr}.donut-ring-large{width:min(320px,78vw)!important}.donut-modal-row{grid-template-columns:10px minmax(100px,1fr) auto 52px}.donut-modal-head h2{font-size:22px}}
/* v12.8.1: reporte de vendedor gerencial y fácil de leer */
.route-report-summary-clean>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;min-height:112px}.route-report-summary-clean strong{font-size:clamp(20px,2vw,28px);line-height:1.15;max-width:100%}.route-summary-note{font-size:11px;color:var(--muted);font-weight:700}.route-report-summary-clean .route-trend{margin-top:4px}.route-report-guide{margin:-4px 0 16px;padding:10px 13px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;color:var(--muted);font-size:12px}.route-report-guide b{color:var(--text)}
.route-comparison-grid-clean{gap:14px}.route-card-clean{padding:0!important;overflow:hidden}.route-card-summary{width:100%;display:grid;grid-template-columns:minmax(150px,1fr) minmax(180px,1.15fr) minmax(145px,.8fr) 24px;align-items:center;gap:18px;border:0;background:#fff;text-align:left;padding:18px 20px;cursor:pointer;color:var(--text)}.route-card-summary:hover{background:#fbfdff}.route-card-heading h3{margin:3px 0 0;font-size:18px}.route-card-primary small,.route-card-secondary small{display:block;color:var(--muted);font-size:10px;font-weight:700;margin-bottom:4px}.route-card-primary strong{display:block;font-size:clamp(20px,2.1vw,27px);line-height:1.1;margin-bottom:7px;white-space:nowrap}.route-card-secondary{padding-left:16px;border-left:1px solid var(--line)}.route-card-secondary b{display:block;font-size:16px;margin-bottom:5px}.route-card-secondary .route-month-total{font-size:10px;margin:0}.route-card-chevron{font-size:18px;color:var(--muted);text-align:right}.route-card-detail{border-top:1px solid var(--line);background:#fafbfd;padding:14px 20px 16px}.route-card-detail-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px;font-size:12px}.route-card-detail-head span{color:var(--muted)}.route-visit-row{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-top:1px solid #e9edf2;font-size:12px}.route-visit-row:first-of-type{border-top:0}.route-visit-row span{color:var(--muted)}
@media(max-width:900px){.route-card-summary{grid-template-columns:1fr 1fr 24px}.route-card-secondary{grid-column:1/3;border-left:0;border-top:1px solid var(--line);padding:10px 0 0;display:flex;align-items:center;gap:10px}.route-card-secondary small,.route-card-secondary b{margin:0}.route-card-chevron{grid-column:3;grid-row:1/3}.route-report-summary-clean{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){.route-report-summary-clean{grid-template-columns:1fr}.route-card-summary{grid-template-columns:1fr 24px;gap:12px}.route-card-primary{grid-column:1}.route-card-secondary{grid-column:1}.route-card-chevron{grid-column:2;grid-row:1/4}.route-card-detail-head{align-items:flex-start;flex-direction:column;gap:3px}}
/* v12.8.2 - Cuentas por cobrar */
.credit-head{margin-bottom:16px}.credit-head .panel-head small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.credit-quick{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.credit-quick .soft.active{background:var(--blue);color:#fff}.credit-filters{display:grid;grid-template-columns:150px 150px minmax(190px,.8fr) minmax(250px,1.3fr) auto;gap:11px;align-items:end}.credit-filters label{display:grid;gap:6px;font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.45px}.credit-filters input,.credit-filters select{height:42px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 11px;color:var(--text)}.credit-filters .primary{height:42px}.credit-table td:first-child{color:var(--muted)}.credit-table td:nth-child(2) small{display:block;color:var(--muted);font-size:9px;margin-top:3px;max-width:220px;overflow:hidden;text-overflow:ellipsis}.credit-state{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:800;text-transform:uppercase}.credit-state.good{background:#e9f8ef;color:#277d50}.credit-state.wait{background:#fff5db;color:#906813}.credit-state.bad{background:#fbecec;color:#a34444}.credit-pager{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:16px;color:var(--muted);font-size:11px}.credit-pager button:disabled{opacity:.45;cursor:not-allowed}.credit-modal-overlay{position:fixed;inset:0;z-index:10000;background:rgba(9,24,42,.58);backdrop-filter:blur(3px);display:grid;place-items:center;padding:24px}.credit-modal{width:min(820px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 30px 90px rgba(3,18,34,.28);padding:24px}.credit-modal-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:15px}.credit-modal-head h2{margin:4px 0;font-size:23px}.credit-modal-head p{margin:0;color:var(--muted);font-size:10px}.credit-modal-close{border:0;background:#f1f5f8;width:40px;height:40px;border-radius:11px;font-size:25px}.credit-account-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.credit-account-summary>div{padding:14px;border:1px solid var(--line);border-radius:11px;background:#f9fbfc}.credit-account-summary span,.credit-account-summary b{display:block}.credit-account-summary span{font-size:9px;color:var(--muted);text-transform:uppercase}.credit-account-summary b{font-size:20px;margin-top:5px}.credit-pay-form{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:16px;border:1px solid #dceaf5;border-radius:12px;background:#f7fbff}.credit-pay-form label{display:grid;gap:6px;font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase}.credit-pay-form input,.credit-pay-form select{height:42px;border:1px solid var(--line);border-radius:9px;background:white;padding:0 10px}.credit-pay-form .wide{grid-column:1/-1}.credit-paid-banner{padding:13px;border-radius:10px;background:#e9f8ef;color:#277d50;font-weight:800;text-align:center}.credit-history{margin-top:20px}.credit-history h3{font-size:15px}.credit-metrics .metric-card strong{font-size:19px}@media(max-width:1000px){.credit-filters{grid-template-columns:1fr 1fr}.credit-filters .primary{grid-column:1/-1}.credit-account-summary{grid-template-columns:1fr}.credit-pay-form{grid-template-columns:1fr}.credit-pay-form .wide{grid-column:auto}}@media(max-width:650px){.credit-filters{grid-template-columns:1fr}}


/* v12.8.4 — reportes administrativos en tabla */
.route-report-actions{display:grid;gap:9px;justify-items:end}.report-view-toggle{display:flex;gap:8px;flex-wrap:wrap}.report-view-toggle .soft.active{background:var(--primary);color:#fff;border-color:var(--primary)}.client-report-head{align-items:flex-start}.report-table-panel{padding:0!important;overflow:hidden}.report-table-note{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border-bottom:1px solid var(--line);background:#fbfcfd;font-size:11px}.report-table-note span{color:var(--muted)}.report-table-wrap{width:100%;overflow:auto}.report-table{width:100%;border-collapse:collapse;min-width:920px}.report-table th{position:sticky;top:0;background:#f6f8fa;border-bottom:1px solid var(--line);z-index:1}.report-table th button{width:100%;border:0;background:transparent;padding:12px 14px;text-align:left;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.45px;cursor:pointer;white-space:nowrap}.report-table th button:hover{color:var(--primary)}.report-table td{padding:13px 14px;border-bottom:1px solid #edf0f3;font-size:12px;vertical-align:middle;white-space:nowrap}.report-table td small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.report-main-row{cursor:pointer}.report-main-row:hover td{background:#f8fbfe}.report-detail-row td{background:#fbfcfd!important;padding:0 16px!important}.report-inline-detail{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:12px 4px;font-size:11px}.report-inline-detail>span{padding:6px 9px;background:#fff;border:1px solid var(--line);border-radius:8px}.report-status{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:900;white-space:nowrap}.report-status.up{background:#e9f8ef;color:#277d50}.report-status.down{background:#fbecec;color:#a34444}.report-status.same,.report-status.neutral{background:#eef2f5;color:#596b7b}.report-status.new{background:#eaf4ff;color:#216aa5}.report-table td.negative{color:#b04646}.report-table td.positive{color:#277d50}@media(max-width:900px){.route-report-actions{justify-items:start}.route-report-head{align-items:flex-start}.report-table-note{align-items:flex-start;flex-direction:column;gap:4px}}

/* v12.8.5: vistas siempre visibles + crédito con detalle completo */
.report-view-toggle{display:inline-flex!important;gap:4px!important;padding:4px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:#f4f7fa!important;min-height:44px;align-items:center}
.report-view-toggle .soft{display:inline-flex!important;visibility:visible!important;opacity:1!important;color:#344054!important;background:transparent!important;border:1px solid transparent!important;min-width:118px!important;justify-content:center!important;white-space:nowrap!important}
.report-view-toggle .soft.active{display:inline-flex!important;visibility:visible!important;opacity:1!important;background:#1677d2!important;color:#fff!important;border-color:#1677d2!important;box-shadow:0 2px 7px rgba(22,119,210,.18)!important}
.credit-table-note{padding:10px 14px;margin-bottom:8px;border-radius:10px;background:#f6f9fc;color:var(--muted);font-size:11px}
.credit-table-full{min-width:1180px}.credit-row{cursor:pointer}.credit-row:hover{background:#f5faff}.credit-row:focus{outline:2px solid #8cc7ef;outline-offset:-2px}.credit-table-full td:nth-child(3) small{display:block;color:var(--muted);font-size:8px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px}.credit-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.credit-detail-grid>div{border:1px solid var(--line);border-radius:11px;background:#fbfcfd;padding:12px;min-width:0}.credit-detail-grid .wide{grid-column:1/-1}.credit-detail-grid span,.credit-detail-grid b,.credit-detail-grid code{display:block}.credit-detail-grid span{font-size:9px;color:var(--muted);text-transform:uppercase;font-weight:800;margin-bottom:5px}.credit-detail-grid b{font-size:14px}.credit-detail-grid code{font-size:10px;white-space:normal;overflow-wrap:anywhere;color:#344054}
@media(max-width:760px){.report-view-toggle{width:100%}.report-view-toggle .soft{flex:1;min-width:0!important}.credit-detail-grid{grid-template-columns:1fr}.credit-detail-grid .wide{grid-column:auto}}

/* v12.8.6: estado seleccionado siempre visible en Transacciones */
.tx-periods .soft{border:1px solid #d9e3eb!important;background:#eef3f7!important;color:#3d566d!important}
.tx-periods .soft.active{background:#1677d2!important;color:#fff!important;border-color:#1677d2!important;box-shadow:0 2px 7px rgba(22,119,210,.18)!important}

/* v12.8.10 — Reportes de vendedor: controles de período/vista en barra horizontal de escritorio */
.route-report-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
}
.route-report-actions{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  justify-self:stretch!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  width:100%!important;
  padding-top:12px!important;
  border-top:1px solid var(--line)!important;
}
.route-report-quick,
.route-report-actions .report-view-toggle{
  justify-content:flex-start!important;
  margin:0!important;
}
.route-report-actions .soft{
  min-height:42px!important;
  padding-left:18px!important;
  padding-right:18px!important;
}
@media(min-width:901px){
  .route-report-actions .route-report-quick,
  .route-report-actions .report-view-toggle{
    flex:0 0 auto!important;
  }
}
@media(max-width:760px){
  .route-report-actions{
    align-items:stretch!important;
    gap:8px!important;
  }
  .route-report-actions .route-report-quick,
  .route-report-actions .report-view-toggle{
    width:100%!important;
  }
  .route-report-actions .route-report-quick .soft,
  .route-report-actions .report-view-toggle .soft{
    flex:1 1 0!important;
    min-width:0!important;
  }
}

/* v12.8.11 — Comprobantes: cliente/monto visibles y columna dedicada */
.fiscal-doc-row-with-amount,.fiscal-doc-head-with-amount{grid-template-columns:minmax(145px,1.05fr) minmax(210px,1.65fr) minmax(150px,1.05fr) minmax(120px,.8fr) minmax(110px,.72fr) 28px!important}
.fiscal-doc-amount{font-weight:750;text-align:right;white-space:nowrap;color:var(--text,#1f2937)}
.fiscal-doc-head-with-amount>span:nth-child(4){text-align:right}
@media(max-width:900px){.fiscal-doc-row-with-amount,.fiscal-doc-head-with-amount{grid-template-columns:1fr 1.4fr .9fr .8fr 28px!important}.fiscal-doc-type{display:none}.fiscal-doc-head-with-amount>span:nth-child(3){display:none}}
/* v12.8.12 Declaraciones: controles y cifras adaptadas a escritorio */
#decl .decl-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
#decl .decl-export{display:flex;gap:10px;flex-wrap:wrap}
#decl .decl-period-grid{grid-template-columns:minmax(180px,260px) minmax(180px,260px) auto;justify-content:start;align-items:end}
#decl .decl-metrics{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
#decl .decl-metrics .metric-card{min-width:0;padding:16px 18px}
#decl .decl-metrics .metric-card>div:last-child{min-width:0}
#decl .decl-metrics .metric-card strong{font-size:clamp(17px,1.65vw,23px);line-height:1.12;letter-spacing:-.25px;white-space:normal;overflow-wrap:anywhere}
#decl .decl-metrics .metric-card span{font-size:11px}
#decl .decl-metrics .metric-card small{font-size:10px;line-height:1.35}
@media(max-width:820px){#decl .decl-toolbar{align-items:stretch}#decl .decl-export{width:100%}#decl .decl-export button{flex:1}#decl .decl-period-grid{grid-template-columns:1fr 1fr}#decl .decl-period-grid .stats-apply{grid-column:1/-1;width:100%}#decl .decl-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:520px){#decl .decl-period-grid,#decl .decl-metrics{grid-template-columns:1fr}}

/* v12.8.18 — Login móvil compacto (solo presentación; sin cambios de autenticación) */
@media (max-width:640px){
  .login-page{min-height:100dvh;background:#fff}
  .login-side{min-height:100dvh;display:block;padding:18px 22px 14px}
  .login-card{width:100%;max-width:430px;margin:0 auto}
  .mobile-logo{
    display:flex;align-items:center;justify-content:center;
    width:100%;height:104px;margin:0 0 18px;padding:12px 18px;
    overflow:hidden;border-radius:18px;
    background:linear-gradient(145deg,#0a2039,#123d65 68%,#116d83);
  }
  .mobile-logo img{
    display:block;width:min(255px,76vw);height:auto;max-height:80px;
    object-fit:contain;object-position:center;filter:none;mix-blend-mode:normal;
  }
  .login-card>.eyebrow{display:block;margin-bottom:4px;font-size:10px}
  .login-card h2{font-size:28px;line-height:1.08;margin:3px 0 7px;letter-spacing:-.7px}
  .login-card>p{font-size:14px;line-height:1.35;margin:0 0 18px}
  .login-card label{gap:5px;margin:10px 0;font-size:11px}
  .login-card input{height:50px;border-radius:12px;padding:0 14px;font-size:15px}
  .remember{margin:11px 0 12px!important;gap:9px!important;font-size:13px!important}
  .remember input{width:18px!important;height:18px!important;margin:0!important}
  .login-btn{height:52px;margin-top:2px;border-radius:13px;font-size:16px}
  .login-divider{margin:13px 0!important}
  .google-btn{height:52px!important;border-radius:13px!important;font-size:15px!important}
  .secure{margin-top:12px;font-size:11px}
  .login-error{margin-top:10px}
}
@media (max-width:380px){
  .login-side{padding:12px 16px 10px}
  .mobile-logo{height:88px;margin-bottom:13px;border-radius:15px}
  .mobile-logo img{width:min(225px,74vw);max-height:66px}
  .login-card h2{font-size:25px}
  .login-card>p{margin-bottom:13px}
  .login-card label{margin:8px 0}
  .login-card input,.login-btn,.google-btn{height:48px!important}
  .login-divider{margin:10px 0!important}
  .secure{margin-top:9px}
}

/* v12.8.19 — Login móvil Ventyum integrado en fondo de marca */
@media (max-width:640px){
  html,body,#root{background:#0a2039}
  .login-page{
    min-height:100dvh;
    background:linear-gradient(160deg,#0a2039 0%,#10365a 58%,#116d83 100%);
    padding:14px 14px 22px;
  }
  .login-side{
    min-height:calc(100dvh - 28px);
    padding:0;
    background:transparent;
  }
  .login-card{
    width:100%;
    max-width:430px;
    margin:0 auto;
    padding:16px 16px 18px;
    background:#fff;
    border:1px solid rgba(255,255,255,.72);
    border-radius:22px;
    box-shadow:0 20px 50px rgba(2,18,35,.24);
  }
  .mobile-logo{
    height:96px;
    margin:0 0 12px;
    padding:8px 14px 4px;
    border-radius:15px;
    background:transparent;
  }
  .mobile-logo img{
    width:min(250px,74vw);
    max-height:76px;
  }
  .login-card>.eyebrow{margin-top:0}
  .secure{margin-bottom:0}
}
@media (max-width:380px){
  .login-page{padding:10px 10px 16px}
  .login-side{min-height:calc(100dvh - 20px)}
  .login-card{padding:12px 12px 14px;border-radius:18px}
  .mobile-logo{height:80px;margin-bottom:9px;padding:4px 10px}
  .mobile-logo img{width:min(218px,72vw);max-height:62px}
}

/* v12.8.20 — Login móvil: superficie Ventyum, fondo neutro y contraste alto */
@media (max-width:640px){
  html,body,#root{background:#f5f7fa}
  .login-page{
    min-height:100dvh;
    background:#f5f7fa;
    padding:14px 14px 22px;
  }
  .login-side{
    min-height:calc(100dvh - 28px);
    padding:0;
    background:transparent;
  }
  .login-card{
    width:100%;
    max-width:430px;
    margin:0 auto;
    padding:16px 16px 18px;
    background:linear-gradient(155deg,#0a2039 0%,#10365a 62%,#116d83 100%);
    border:1px solid rgba(10,32,57,.18);
    border-radius:22px;
    box-shadow:0 16px 40px rgba(18,42,68,.16);
  }
  .mobile-logo{
    height:96px;
    margin:0 0 12px;
    padding:8px 14px 4px;
    border-radius:15px;
    background:transparent;
  }
  .mobile-logo img{
    width:min(250px,74vw);
    max-height:76px;
    filter:none;
    mix-blend-mode:normal;
  }
  .login-card>.eyebrow{color:#8fe7df!important;margin-top:0}
  .login-card h2{color:#fff}
  .login-card>p{color:#d7e4ef}
  .login-card label{color:#eef6fb}
  .login-card input{
    background:#f8fbfe;
    color:#152334;
    border-color:rgba(255,255,255,.55);
    box-shadow:none;
  }
  .login-card input::placeholder{color:#68798a;opacity:1}
  .login-card input:focus{border-color:#7edbd5;box-shadow:0 0 0 3px rgba(126,219,213,.18)}
  .remember{color:#eef6fb!important}
  .remember input{accent-color:#19b7b1}
  .login-divider{color:#c9d9e7!important}
  .login-divider:before,.login-divider:after{background:rgba(255,255,255,.28)!important}
  .google-btn{background:#fff;color:#203247;border-color:rgba(255,255,255,.65)}
  .google-btn:hover{background:#f4f8fb}
  .secure{color:#b8d5df}
  .login-error{background:#fff0f0;color:#983b3b}
}
@media (max-width:380px){
  .login-page{padding:10px 10px 16px}
  .login-side{min-height:calc(100dvh - 20px)}
  .login-card{padding:12px 12px 14px;border-radius:18px}
  .mobile-logo{height:80px;margin-bottom:9px;padding:4px 10px}
  .mobile-logo img{width:min(218px,72vw);max-height:62px}
}

/* v12.8.21 — Login móvil a pantalla completa: conserva superficie Ventyum y elimina el corte de tarjeta */
@media (max-width:640px){
  html,body,#root{min-height:100%;background:#0a2039}
  .login-page{
    min-height:100dvh;
    width:100%;
    padding:0;
    margin:0;
    background:linear-gradient(155deg,#0a2039 0%,#10365a 62%,#116d83 100%);
  }
  .login-side{
    width:100%;
    min-height:100dvh;
    padding:0;
    margin:0;
    display:block;
    background:transparent;
  }
  .login-card{
    width:100%;
    max-width:none;
    min-height:100dvh;
    margin:0;
    padding:18px 22px max(20px,env(safe-area-inset-bottom));
    border:0;
    border-radius:0;
    box-shadow:none;
    background:transparent;
  }
  .mobile-logo{
    height:100px;
    margin:0 0 12px;
    padding:8px 12px 4px;
  }
  .mobile-logo img{width:min(255px,76vw);max-height:78px}
  .login-card>.eyebrow{margin-top:0}
}
@media (max-width:380px){
  .login-page,.login-side{min-height:100dvh}
  .login-card{
    min-height:100dvh;
    padding:14px 16px max(16px,env(safe-area-inset-bottom));
    border-radius:0;
  }
  .mobile-logo{height:84px;margin-bottom:8px;padding:4px 8px}
  .mobile-logo img{width:min(220px,73vw);max-height:64px}
}

/* v12.8.22 Google Identity Services */
.google-identity-host{width:100%;display:flex;justify-content:center;align-items:center;min-height:44px}
.google-identity-host>div{max-width:100%}
.google-identity-host iframe{max-width:100%!important}
@media(max-width:640px){.google-identity-host{min-height:50px}.google-identity-host>div{width:100%!important;display:flex;justify-content:center}}

/* v12.8.23 Google Identity: un solo control, sin botón duplicado */
.google-identity-host{width:100%;min-height:52px;display:flex!important;justify-content:center;align-items:center;overflow:hidden}
.google-identity-host[hidden]{display:flex!important}
.google-loading,.google-unavailable{font-size:14px;color:rgba(255,255,255,.75);text-align:center;padding:12px}
@media(max-width:640px){.google-identity-host{min-height:52px}.google-identity-host>div:not(.google-loading):not(.google-unavailable){max-width:100%!important}}

/* v12.8.24 — Google Identity: presentación integrada al login Ventyum.
   El iframe oficial sigue siendo el elemento clicable para conservar el flujo GIS. */
.google-identity-host{box-sizing:border-box;width:100%;min-height:88px;padding:17px 14px;background:#fff;border:1px solid #d5dce5;border-radius:22px;box-shadow:0 8px 20px rgba(6,32,62,.08);overflow:visible}
.google-identity-host>div:not(.google-loading):not(.google-unavailable){margin:auto!important}
@media(max-width:640px){.google-identity-host{min-height:88px;padding:17px 10px;border-radius:20px}.google-identity-host iframe{max-width:100%!important}}


/* v12.8.25 — Registro web reutilizando el flujo seguro de la app */
.register-prompt{text-align:center;margin-top:14px;font-size:12px;color:#7c8b99}.register-link{border:0;background:transparent;color:#1676b8;font-weight:800;padding:4px 6px;cursor:pointer}.register-link:hover{text-decoration:underline}.register-overlay{position:fixed;inset:0;z-index:10000;background:rgba(5,20,36,.66);backdrop-filter:blur(8px);display:grid;place-items:center;padding:12px;overflow:hidden}.register-modal{position:relative;width:min(470px,calc(100vw - 32px));max-height:none;overflow:hidden;background:linear-gradient(160deg,#0a2039 0%,#123d65 64%,#116d83 100%);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:18px 22px 16px;box-shadow:0 24px 72px rgba(0,0,0,.34)}.register-close{position:absolute;right:12px;top:12px;border:0;background:rgba(255,255,255,.12);color:#fff;width:34px;height:34px;border-radius:50%;font-size:22px;line-height:1;cursor:pointer}.register-close:hover{background:rgba(255,255,255,.2)}.register-brand img{display:block;width:174px;max-height:50px;object-fit:contain;object-position:left center;margin:0 0 6px}.register-modal .eyebrow{color:#8fe7df;letter-spacing:.14em;font-size:10px}.register-modal h2{font-size:27px;line-height:1.05;margin:3px 0 5px;color:#fff}.register-modal>p{margin:0 0 9px;color:#d7e4ef;font-size:12px}.register-modal form{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.register-modal form label{display:grid;gap:4px;margin:5px 0;font-size:10.5px;font-weight:800;color:#eef6fb}.register-modal form label:nth-of-type(1),.register-modal form label:nth-of-type(2),.register-modal .login-error,.register-modal .register-submit{grid-column:1/-1}.register-modal input{width:100%;height:41px;border:1px solid rgba(255,255,255,.72);border-radius:11px;padding:0 12px;font-size:13px;outline:0;background:#fff;color:#172a3c}.register-modal input:focus{border-color:#8fe7df;box-shadow:0 0 0 3px rgba(143,231,223,.2)}.register-submit{width:100%;height:43px;margin-top:7px}.register-note{display:block;text-align:center;color:#d7e4ef;line-height:1.3;margin-top:8px;font-size:10px}.register-modal .login-error{background:#fff0f0;color:#a33f3f}.modal-open{overflow:hidden}
@media (min-width:641px) and (max-height:650px){.register-modal{transform:scale(.92);transform-origin:center}.register-overlay{padding:6px}}
@media(max-width:640px){.register-prompt{color:#d7e4ef;margin-top:12px}.register-link{color:#8fe7df}.register-overlay{padding:0;background:#0b2947}.register-modal{min-height:100dvh;max-height:none;width:100%;border:0;border-radius:0;padding:24px 18px 30px;background:linear-gradient(160deg,#0a2039,#123d65 64%,#116d83);color:#fff;overflow:auto}.register-modal .register-close{background:rgba(255,255,255,.12);color:#fff}.register-modal .register-brand img{width:210px;filter:none}.register-modal .eyebrow{color:#8fe7df}.register-modal h2{color:#fff}.register-modal>p,.register-note{color:#d7e4ef}.register-modal form{display:block}.register-modal form label{color:#eef6fb;margin:11px 0}.register-modal input{height:48px;background:#fff;color:#172a3c;border-color:rgba(255,255,255,.62)}.register-modal .login-error{background:#fff0f0;color:#a33f3f}}

/* v12.8.27 — Botón clásico visible + Google Identity real por encima.
   El iframe oficial queda transparente pero clicable: conserva GIS/FedCM
   sin mostrar "Continuar como ..." ni redirigir por el OAuth de Supabase. */
.google-classic-wrap{position:relative;width:100%;height:48px;margin-top:0}
.google-classic-wrap .google-classic-visual{position:absolute;inset:0;z-index:1;pointer-events:none;margin:0}
.google-classic-wrap .google-click-layer{position:absolute!important;inset:0;z-index:2;width:100%!important;height:100%!important;min-height:0!important;overflow:hidden;opacity:.001;display:block!important;cursor:pointer}
.google-classic-wrap .google-click-layer>div{width:100%!important;height:100%!important;max-width:none!important}
.google-classic-wrap .google-click-layer iframe{width:100%!important;height:100%!important;max-width:none!important}
.google-classic-wrap .google-click-layer.oauth-fallback{opacity:0;pointer-events:auto}

/* Escritorio: ajuste leve de escala para que el login completo quepa sin scroll. */
@media (min-width:851px){
  .login-page{height:100dvh;min-height:0;overflow:hidden}
  .login-brand{padding:46px 52px}
  .login-side{height:100dvh;min-height:0;padding:24px 36px;overflow:hidden}
  .login-card{transform:scale(.94);transform-origin:center center}
}
@media (min-width:851px) and (max-height:760px){
  .login-card{transform:scale(.88)}
  .login-brand{padding:38px 46px}
  .login-brand h1{font-size:46px}
}

/* v12.8.31 — Ampliar estadísticas = más detalle, no gráfico gigante */
.donut-modal{width:min(1080px,94vw);max-height:min(760px,90vh);overflow:hidden;padding:22px 24px}
.donut-modal-head{padding-bottom:14px}
.donut-modal-head h2{font-size:25px;margin:2px 0 4px}
.donut-modal-body .donut-expanded-template{display:grid!important;grid-template-columns:300px minmax(0,1fr);gap:26px;align-items:start;padding-top:18px;min-height:0}
.donut-modal-summary{display:grid;gap:16px;align-content:start}
.donut-modal-chart{min-height:250px;display:grid;place-items:center;background:#fbfcfe;border:1px solid var(--line);border-radius:16px;padding:14px}
.donut-ring-large{width:230px!important;height:230px!important;max-width:none!important}
.donut-detail-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.donut-detail-kpis>div{min-width:0;background:#f7f9fc;border:1px solid var(--line);border-radius:12px;padding:10px}
.donut-detail-kpis small{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.donut-detail-kpis strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.donut-modal-detail{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px}
.donut-detail-head{display:flex;justify-content:space-between;gap:14px;align-items:end;padding:0 2px}
.donut-detail-head>span{font-size:14px;font-weight:850;color:var(--text)}
.donut-detail-head>small{font-size:11px;color:var(--muted)}
.donut-modal-legend{display:grid;gap:5px;max-height:560px;overflow:auto;padding-right:4px;align-content:start}
.donut-modal-row{grid-template-columns:10px minmax(150px,1fr) minmax(145px,auto) 58px;gap:10px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 10px;min-height:38px}
.donut-modal-row span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.donut-modal-row b{font-size:11px;white-space:nowrap}
.donut-modal-row em{font-size:11px}
@media(max-height:760px) and (min-width:851px){
  .donut-modal{max-height:94vh;padding:18px 20px}.donut-modal-head{padding-bottom:10px}.donut-modal-head h2{font-size:22px}.donut-modal-body .donut-expanded-template{padding-top:12px;grid-template-columns:265px minmax(0,1fr);gap:18px}.donut-modal-chart{min-height:205px;padding:10px}.donut-ring-large{width:190px!important;height:190px!important}.donut-detail-kpis>div{padding:8px}.donut-modal-legend{max-height:430px}.donut-modal-row{padding:6px 9px;min-height:34px}
}
@media(max-width:850px){
  .donut-modal{overflow:auto;max-height:92vh}.donut-modal-body .donut-expanded-template{grid-template-columns:1fr;gap:14px}.donut-modal-chart{min-height:220px}.donut-ring-large{width:210px!important;height:210px!important}.donut-detail-kpis{grid-template-columns:repeat(3,1fr)}.donut-detail-head{align-items:start;flex-direction:column;gap:2px}.donut-modal-legend{max-height:none;overflow:visible}.donut-modal-row{grid-template-columns:10px minmax(100px,1fr) auto 50px}
}


/* v12.8.32 — detalle ampliado: TODOS los registros visibles sin scroll interno */
@media (min-width:681px){
  .donut-modal{width:min(1120px,96vw);max-height:94vh;padding:18px 20px}
  .donut-modal-head{padding-bottom:10px}
  .donut-modal-head h2{font-size:22px;margin:1px 0 3px}
  .donut-modal-head p{font-size:12px}
  .donut-modal-body .donut-expanded-template{grid-template-columns:230px minmax(0,1fr);gap:16px;padding-top:12px;align-items:start}
  .donut-modal-summary{gap:10px}
  .donut-modal-chart{min-height:180px;padding:8px;border-radius:13px}
  .donut-ring-large{width:165px!important;height:165px!important}
  .donut-detail-kpis{grid-template-columns:1fr;gap:5px}
  .donut-detail-kpis>div{padding:6px 8px;border-radius:9px;display:grid;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:6px}
  .donut-detail-kpis small{margin:0;font-size:9px}
  .donut-detail-kpis strong{font-size:12px;text-align:right}
  .donut-modal-detail{gap:6px}
  .donut-detail-head{min-height:28px;align-items:center}
  .donut-modal-legend{max-height:none!important;overflow:visible!important;gap:4px;padding-right:0}
  .donut-modal-legend-dense{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:7px;row-gap:4px}
  .donut-modal-row{grid-template-columns:9px minmax(90px,1fr) auto 45px;gap:6px;min-height:31px;padding:5px 7px;border-radius:8px}
  .donut-modal-row span{font-size:11px}
  .donut-modal-row b,.donut-modal-row em{font-size:10px}
}
@media (min-width:681px) and (max-width:900px){
  .donut-modal-body .donut-expanded-template{grid-template-columns:200px minmax(0,1fr);gap:12px}
  .donut-ring-large{width:145px!important;height:145px!important}
  .donut-modal-chart{min-height:158px}
  .donut-modal-row{grid-template-columns:8px minmax(70px,1fr) auto 40px;padding:4px 6px;min-height:29px}
  .donut-modal-row span{font-size:10px}
  .donut-modal-row b,.donut-modal-row em{font-size:9px}
}
@media (max-width:680px){
  .donut-modal-legend-dense{grid-template-columns:1fr}
}


/* v12.8.33 — Ampliar conserva el mismo formato de la tarjeta y usa toda la pantalla */
@media (min-width:851px){
  .donut-modal{width:min(1180px,96vw);height:min(720px,91vh);max-height:91vh;overflow:hidden;padding:22px 26px;display:grid;grid-template-rows:auto minmax(0,1fr)}
  .donut-modal-body{min-height:0;display:grid}
  .donut-modal-body .donut-expanded-template{display:grid!important;grid-template-columns:minmax(330px,42%) minmax(0,58%);gap:34px;align-items:center;padding-top:16px;min-height:0;height:100%}
  .donut-modal-chart{min-height:0;height:100%;display:grid;place-items:center;background:transparent;border:0;border-radius:0;padding:0}
  .donut-ring-large{width:min(360px,32vw)!important;height:min(360px,32vw)!important;max-width:100%;max-height:100%}
  .donut-ring-large .donut-hole{overflow:visible;padding:16px}
  .donut-ring-large .donut-hole strong{font-size:clamp(14px,1.55vw,22px);white-space:normal;overflow:visible;text-overflow:clip;line-height:1.15;max-width:94%;overflow-wrap:anywhere}
  .donut-modal-side{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);align-content:center;gap:10px}
  .donut-modal-side-head{display:flex;justify-content:space-between;align-items:end;gap:14px;padding:0 2px 8px;border-bottom:1px solid var(--line)}
  .donut-modal-side-head strong{font-size:15px}
  .donut-modal-side-head span{font-size:11px;color:var(--muted);text-align:right}
  .donut-modal-legend{display:grid;grid-template-columns:1fr;gap:6px;max-height:none!important;overflow:visible!important;padding:0;align-content:center}
  .donut-modal-row{grid-template-columns:11px minmax(130px,1fr) minmax(155px,auto) 58px;gap:10px;min-height:37px;padding:7px 10px;border:0;border-bottom:1px solid #edf1f4;border-radius:0;background:transparent}
  .donut-modal-row:hover,.donut-modal-row.active{background:#f5f9fd;border-color:#dcebf7}
  .donut-modal-row span{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .donut-modal-row b{font-size:11px;white-space:nowrap}
  .donut-modal-row em{font-size:10px;white-space:nowrap}
}
@media (min-width:851px) and (max-height:760px){
  .donut-modal{height:92vh;padding:16px 22px}
  .donut-modal-head{padding-bottom:8px}
  .donut-modal-head h2{font-size:21px}
  .donut-modal-body .donut-expanded-template{padding-top:8px;gap:24px;grid-template-columns:minmax(280px,39%) minmax(0,61%)}
  .donut-ring-large{width:min(300px,29vw)!important;height:min(300px,29vw)!important}
  .donut-modal-row{min-height:31px;padding:4px 8px}
  .donut-modal-row span{font-size:11px}.donut-modal-row b,.donut-modal-row em{font-size:9.5px}
}
@media (max-width:850px){
  .donut-modal-side{display:grid;gap:8px}.donut-modal-side-head{display:flex;justify-content:space-between;gap:10px;font-size:11px}.donut-modal-side-head span{color:var(--muted)}
  .donut-ring-large .donut-hole strong{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
}

/* v12.8.34 — modal ampliado: información a la izquierda, gráfico a la derecha */
@media (min-width:851px){
  .donut-modal-body .donut-expanded-template{
    grid-template-columns:minmax(0,58%) minmax(330px,42%);
  }
  .donut-modal-side{grid-column:1;grid-row:1;}
  .donut-modal-chart{grid-column:2;grid-row:1;}
}
@media (min-width:851px) and (max-height:760px){
  .donut-modal-body .donut-expanded-template{
    grid-template-columns:minmax(0,61%) minmax(280px,39%);
  }
}

/* v12.8.35 — selección interactiva en estadísticas ampliadas */
.donut-ring-large .donut-hole.selected{padding:12px 10px}
.donut-ring-large .donut-hole.selected small{max-width:94%;font-size:10px;line-height:1.15;text-transform:none;letter-spacing:0;white-space:normal;overflow-wrap:anywhere;color:var(--muted)}
.donut-ring-large .donut-hole.selected strong{font-size:clamp(24px,2.4vw,34px);line-height:1;margin-top:5px;color:var(--blue);white-space:nowrap}
.donut-selection-meta{display:block;max-width:94%;margin-top:7px;font-size:10px;font-weight:700;line-height:1.2;color:var(--text);text-align:center;white-space:normal;overflow-wrap:anywhere}
.donut-modal-row.active em{color:var(--blue);font-weight:900}

/* v12.8.36 — indicador radial del segmento seleccionado */
.donut-ring-wrap{position:relative;display:grid;place-items:center;width:max-content;max-width:100%;margin:auto;overflow:visible}
.donut-callout{--segment-angle:0deg;--segment-color:#1378d1;position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .14s ease;z-index:4}
.donut-callout.visible{opacity:1}
.donut-callout::before{content:"";position:absolute;left:50%;top:50%;width:38px;height:2px;border-radius:999px;background:var(--segment-color);transform-origin:0 50%;transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(calc((min(360px,32vw) / 2) - 1px));box-shadow:0 0 0 1px rgba(255,255,255,.55)}
.donut-callout::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:var(--segment-color);border:2px solid #fff;box-shadow:0 1px 5px rgba(18,42,68,.25);transform:translate(-4px,-4px) rotate(calc(var(--segment-angle) - 90deg)) translateX(calc((min(360px,32vw) / 2) + 36px))}
.donut-modal-row.active{position:relative}
.donut-modal-row.active::before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;border-radius:99px;background:var(--blue)}
@media (min-width:851px) and (max-height:760px){
  .donut-callout::before{transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(calc((min(300px,29vw) / 2) - 1px))}
  .donut-callout::after{transform:translate(-4px,-4px) rotate(calc(var(--segment-angle) - 90deg)) translateX(calc((min(300px,29vw) / 2) + 36px))}
}
@media (max-width:850px){
  .donut-callout::before{transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(104px)}
  .donut-callout::after{transform:translate(-4px,-4px) rotate(calc(var(--segment-angle) - 90deg)) translateX(140px)}
}

/* v12.8.37 — indicador interno: flecha desde el hueco hacia el segmento */
.donut-callout::before{
  left:50%;
  top:50%;
  width:18%;
  height:10px;
  border-radius:0;
  background:var(--segment-color);
  box-shadow:none;
  transform-origin:0 50%;
  transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(160%);
  clip-path:polygon(0 35%,78% 35%,78% 0,100% 50%,78% 100%,78% 65%,0 65%);
  opacity:.9;
}
.donut-callout::after{display:none!important}
@media (min-width:851px) and (max-height:760px){
  .donut-callout::before{transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(160%)}
}
@media (max-width:850px){
  .donut-callout::before{transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(160%)}
}

/* v12.8.38 — selección de segmento más intuitiva: flecha interna grande + efecto 3D */
.donut-ring-large{overflow:visible!important}
.donut-ring-large .donut-hole{z-index:6}
.donut-segment-highlight{
  --segment-start:0deg;--segment-end:0deg;--segment-color:#1378d1;--segment-x:0px;--segment-y:0px;
  position:absolute;inset:0;border-radius:50%;pointer-events:none;opacity:0;z-index:3;
  background:conic-gradient(from 0deg,transparent 0deg var(--segment-start),var(--segment-color) var(--segment-start) var(--segment-end),transparent var(--segment-end) 360deg);
  -webkit-mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%);
  mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%);
  transform:translate(var(--segment-x),var(--segment-y)) scale(1.008);
  filter:drop-shadow(0 5px 5px rgba(18,42,68,.18)) drop-shadow(0 1px 1px rgba(255,255,255,.68));
  transition:opacity .16s ease,transform .18s ease,filter .18s ease;
}
.donut-segment-highlight.visible{opacity:1;transform:translate(var(--segment-x),var(--segment-y)) scale(1.018);filter:drop-shadow(0 6px 5px rgba(18,42,68,.20)) drop-shadow(0 1px 1px rgba(255,255,255,.72))}
.donut-callout{z-index:7}
.donut-callout::before{
  width:72px!important;height:4px!important;border-radius:999px!important;
  background:linear-gradient(90deg,rgba(255,255,255,.15),var(--segment-color))!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.85),0 2px 5px rgba(18,42,68,.18)!important;
  transform-origin:0 50%!important;
  transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(86px)!important;
}
.donut-callout span{display:block;position:absolute;left:50%;top:50%;width:0;height:0;pointer-events:none;transform-origin:0 0;transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(154px)}
.donut-callout span::after{content:"";position:absolute;left:-1px;top:-7px;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:13px solid var(--segment-color);filter:drop-shadow(0 1px 1px rgba(18,42,68,.22))}
@media(max-width:850px){
  .donut-callout::before{width:54px!important;transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(72px)!important}
  .donut-callout span{transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(122px)}
  .donut-segment-highlight.visible{transform:translate(var(--segment-x),var(--segment-y)) scale(1.014)}
}

/* v12.8.40 — donut 3D sobrio: profundidad real visual + selección elevada */
.donut-ring-large{
  isolation:isolate;
  transform:translateY(-5px);
  filter:drop-shadow(0 13px 10px rgba(18,42,68,.10));
}
.donut-ring-large::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:inherit;
  -webkit-mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%);
  mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%);
  transform:translateY(10px);
  filter:brightness(.68) saturate(.92);
  z-index:-2;
  pointer-events:none;
}
.donut-ring-large::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 38%,rgba(9,31,53,.08));
  -webkit-mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%);
  mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%);
  z-index:2;
  pointer-events:none;
}
.donut-segment-highlight{
  --segment-x:0px;--segment-y:0px;
  transform:translate(var(--segment-x),calc(var(--segment-y) - 2px)) scale(1.006)!important;
  filter:drop-shadow(0 8px 5px rgba(18,42,68,.20))!important;
  z-index:5;
}
.donut-segment-highlight::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:inherit;
  -webkit-mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%);
  mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%);
  transform:translateY(7px);
  filter:brightness(.58) saturate(.95);
  z-index:-1;
}
.donut-segment-highlight.visible{
  opacity:1;
  transform:translate(var(--segment-x),calc(var(--segment-y) - 4px)) scale(1.012)!important;
}
.donut-callout::before{opacity:.72}

/* v12.8.41 — un solo donut: elimina capas concéntricas que simulaban profundidad */
.donut-ring-large{
  transform:none!important;
  filter:drop-shadow(0 8px 12px rgba(18,42,68,.12))!important;
}
/* No duplicar el donut completo para crear profundidad. */
.donut-ring-large::before{display:none!important;content:none!important}
/* Solo una luz/sombra superficial sobre el mismo donut, sin cortes adicionales. */
.donut-ring-large::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,rgba(255,255,255,.16),transparent 34%,rgba(9,31,53,.07))!important;
  -webkit-mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%)!important;
  mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%)!important;
  z-index:2!important;
  pointer-events:none!important;
}
/* La selección no crea una segunda copia desplazada: resalta la misma porción. */
.donut-segment-highlight{
  transform:none!important;
  filter:none!important;
  opacity:0!important;
  z-index:5!important;
}
.donut-segment-highlight::before{display:none!important;content:none!important}
.donut-segment-highlight.visible{
  opacity:.22!important;
  transform:none!important;
  filter:drop-shadow(0 3px 3px rgba(18,42,68,.18))!important;
}
/* Mantener la flecha interna como indicador principal del segmento activo. */
.donut-callout{z-index:7!important}

/* v12.8.42 — selección limpia: flecha hacia el segmento, sin sombreado global */
.donut-ring-large{filter:none!important}
.donut-ring-large::after{display:none!important;content:none!important}
.donut-segment-highlight{opacity:0!important;filter:none!important;transform:translate(var(--segment-x),var(--segment-y)) scale(1)!important}
.donut-segment-highlight.visible{opacity:1!important;transform:translate(var(--segment-x),var(--segment-y)) scale(1.018)!important;filter:drop-shadow(0 5px 4px rgba(18,42,68,.18))!important}
/* Flecha interna: nace cerca del centro y la punta mira hacia la porción activa. */
.donut-callout::before{
  width:64px!important;height:4px!important;border-radius:999px!important;
  background:var(--segment-color)!important;box-shadow:none!important;opacity:.9!important;
  transform-origin:0 50%!important;
  transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(76px)!important;
  clip-path:none!important;
}
.donut-callout span{transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(136px)!important}
.donut-callout span::after{
  left:-1px!important;top:-8px!important;
  border-top:8px solid transparent!important;border-bottom:8px solid transparent!important;
  border-left:14px solid var(--segment-color)!important;border-right:0!important;
  filter:none!important;
}
@media(max-width:850px){
  .donut-callout::before{width:48px!important;transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(62px)!important}
  .donut-callout span{transform:rotate(calc(var(--segment-angle) - 90deg)) translateX(106px)!important}
}


/* v12.8.43 — selección tipo rebanada: sin flecha, porcentaje por color, sin sombra global */
.donut-callout{display:none!important}
.donut-ring-large{filter:none!important;box-shadow:none!important}
.donut-ring-large::before,.donut-ring-large::after{display:none!important;content:none!important}
.donut-ring-large .donut-hole.selected strong{color:inherit}
.donut-segment-highlight{
  opacity:0!important;
  transform:none!important;
  filter:none!important;
  z-index:5!important;
  pointer-events:none!important;
}
.donut-segment-highlight::before{display:none!important;content:none!important}
.donut-segment-highlight.visible{opacity:0!important;transform:none!important;filter:none!important}
.donut-segment-highlight.slice-pop{
  animation:ventyum-slice-pop .52s cubic-bezier(.2,.8,.2,1) both!important;
}
@keyframes ventyum-slice-pop{
  0%{opacity:0;transform:translate(0,0) scale(1)}
  14%{opacity:1;transform:translate(0,0) scale(1)}
  48%{opacity:1;transform:translate(var(--segment-x),var(--segment-y)) scale(1.003)}
  76%{opacity:1;transform:translate(calc(var(--segment-x) * .22),calc(var(--segment-y) * .22)) scale(1.001)}
  100%{opacity:0;transform:translate(0,0) scale(1)}
}
\n\n/* v12.8.44 — colores inequívocos + rebanada real temporal */
.donut-segment-highlight{
  opacity:0!important;
  transform:translate(0,0) scale(1)!important;
  filter:none!important;
  transition:transform .24s cubic-bezier(.2,.8,.2,1),opacity .12s ease!important;
}
.donut-segment-highlight.slice-active{
  opacity:1!important;
  transform:translate(0,0) scale(1)!important;
}
.donut-segment-highlight.slice-active.slice-out{
  opacity:1!important;
  transform:translate(var(--segment-x),var(--segment-y)) scale(1)!important;
}
.donut-segment-highlight.slice-pop{animation:none!important}

/* v12.8.45 — rebanada real: se extrae del donut base, sin duplicar la porción */
.donut-ring-large{overflow:visible!important;isolation:isolate}
.donut-segment-highlight{
  opacity:0!important;
  transform:translate(0,0)!important;
  filter:none!important;
  transition:transform .22s cubic-bezier(.22,.8,.24,1),opacity .12s ease!important;
  z-index:5!important;
  background:conic-gradient(from 0deg,transparent 0deg var(--segment-start),var(--segment-color) var(--segment-start) var(--segment-end),transparent var(--segment-end) 360deg)!important;
  -webkit-mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%)!important;
  mask:radial-gradient(circle at center,transparent 0 52%,#000 52.5% 100%)!important;
}
.donut-segment-highlight.slice-active{opacity:1!important}
.donut-segment-highlight.slice-active.slice-out{transform:translate(var(--segment-x),var(--segment-y))!important}
.donut-segment-highlight.slice-pop{animation:none!important}
.donut-callout{display:none!important}

/* v12.8.48 — período rápido arriba + descarga por tipo de reporte */
.stats-quick-block{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.stats-quick-block .eyebrow{display:block;width:100%}
.stats-download-wrap{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.stats-download-btn{min-width:128px}
.stats-download-menu{position:absolute;right:0;top:100%;margin-top:8px;width:430px;max-width:min(430px,88vw);padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 45px rgba(18,38,63,.18);z-index:60}
.stats-download-head,.stats-download-row{display:grid;grid-template-columns:1fr 62px 62px;gap:8px;align-items:center;padding:8px}
.stats-download-head{border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.stats-download-head b{color:var(--text);font-size:13px}.stats-download-head span{grid-column:2/4;text-align:center}
.stats-download-row+ .stats-download-row{border-top:1px solid #eef2f6}.stats-download-row span{font-size:13px;font-weight:650}.stats-download-row button{border:1px solid var(--line);background:#f7f9fc;border-radius:8px;padding:7px 5px;cursor:pointer;font-weight:700;color:var(--primary)}.stats-download-row button:hover{background:#edf5ff}
@media(max-width:720px){.stats-download-menu{left:0;right:auto;width:min(430px,88vw)}.stats-download-row{grid-template-columns:1fr 56px 56px}}

/* v12.8.50 — menú Descargar completo, visible y autocierre */
.stats-filters{overflow:visible!important}
.stats-toolbar,.stats-toolbar-right,.stats-download-wrap{overflow:visible!important}
.stats-download-menu{max-height:min(620px,70vh);overflow-y:auto;overscroll-behavior:contain;z-index:500!important}
.stats-download-menu[hidden]{display:none!important}
.stats-download-menu:not([hidden]){display:block!important}

/* v12.8.51 - cuentas por cobrar: acciones de documento */
.credit-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin:-4px 0 14px;flex-wrap:wrap}.credit-table td small{display:block;color:#7a8798;margin-top:4px;font-size:11px}

/* v12.8.53 — Usuarios: roles y permisos */
.users-admin-head{align-items:flex-start}.users-admin-head p,.user-modal .panel-head p{margin:5px 0 0;color:var(--muted);font-size:13px}.users-role-strip{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 16px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--soft-bg,#f8fafc);font-size:12px;color:var(--muted)}.users-role-strip b{padding:5px 9px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--text)}.users-notice{margin:0 0 14px;padding:10px 12px;border-radius:10px;font-size:13px}.users-notice.good{background:#ecfdf3;color:#137a42;border:1px solid #b8ebcb}.users-notice.bad{background:#fff1f1;color:#b42318;border:1px solid #ffd0d0}.users-table td{vertical-align:middle}.users-table td:last-child{text-align:right}.user-role-badge,.user-state,.yes-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;white-space:nowrap}.user-role-badge{background:#eef3ff;color:#3155a6}.user-state.on,.yes-pill{background:#ecfdf3;color:#137a42}.user-state.off{background:#f3f4f6;color:#6b7280}.user-modal-backdrop{position:fixed;inset:0;z-index:9999;background:rgba(14,25,42,.48);display:flex;align-items:center;justify-content:center;padding:24px}.user-modal{width:min(940px,96vw);max-height:92vh;overflow:auto;background:var(--panel,#fff);border-radius:18px;padding:22px;box-shadow:0 24px 70px rgba(0,0,0,.22)}.user-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.user-form-grid label,.user-modal label{font-size:12px;font-weight:700;color:var(--muted)}.user-form-grid input,.user-form-grid select{margin-top:6px}.user-toggle-row{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.user-toggle-row label{display:flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text)}.user-toggle-row input,.permission-card input{width:auto}.permissions-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:8px 0 10px}.permissions-head h4{margin:2px 0 0;font-size:16px}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.permission-card{display:flex!important;align-items:flex-start;gap:9px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;color:var(--text)!important}.permission-card span{display:flex;flex-direction:column;gap:3px}.permission-card b{font-size:12px}.permission-card small{font-size:11px;color:var(--muted);line-height:1.3}.user-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}@media(max-width:760px){.user-form-grid,.permission-grid{grid-template-columns:1fr}.user-modal-backdrop{padding:10px}.user-modal{padding:16px}.users-admin-head{gap:12px}.users-admin-head .primary{width:100%}.users-table{min-width:900px}}
/* v12.8.54 — Productos: administración completa equivalente a la app */
.products-admin-head{align-items:flex-start}.products-admin-head .primary{white-space:nowrap}.product-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0}.product-toolbar>input{min-width:280px;flex:1}.presentation-filters{display:flex;gap:7px;flex-wrap:wrap}.presentation-filters .soft small{opacity:.65;margin-left:4px}.presentation-filters .soft.active{background:#1677d2;color:#fff;border-color:#1677d2}.product-catalog-summary{padding:8px 2px 14px;color:#687386}.product-catalog-summary b{font-size:22px;color:#182436}.product-catalog-summary span{margin-left:10px}.product-admin-table{border:1px solid #e7ebf0;border-radius:14px;overflow:hidden}.product-admin-row{display:grid;grid-template-columns:minmax(240px,2fr) 110px 150px 120px 70px 110px 28px;gap:14px;align-items:center;width:100%;padding:14px 16px;border:0;border-bottom:1px solid #edf0f3;background:#fff;text-align:left;color:#263344;font:inherit}.product-admin-row:not(.header){cursor:pointer}.product-admin-row:not(.header):hover{background:#f8fbff}.product-admin-row.header{background:#f7f9fb;font-size:11px;font-weight:800;letter-spacing:.06em;color:#718096;text-transform:uppercase}.product-admin-row:last-child{border-bottom:0}.product-admin-row span:first-child small{display:block;color:#8a94a3;margin-top:3px}.presentation-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef6ff;color:#176ebd;font-weight:700}.product-state{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px}.product-state.on{background:#20a264}.product-state.off{background:#b9c0ca}.row-arrow{font-size:24px;color:#9aa4b1}.product-modal-backdrop{position:fixed;inset:0;z-index:10000;background:rgba(17,24,39,.42);display:flex;align-items:flex-start;justify-content:flex-end;padding:0}.product-editor{height:100%;width:min(720px,94vw);overflow:auto;background:#fff;box-shadow:-18px 0 45px rgba(0,0,0,.12);padding:24px}.product-editor-head{display:flex;align-items:flex-start;justify-content:space-between;position:sticky;top:-24px;background:#fff;z-index:3;padding:18px 0 16px;border-bottom:1px solid #edf0f3;margin-bottom:20px}.product-editor-head h3{margin:4px 0 0;font-size:24px}.product-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.product-form-grid label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#5e6876}.product-form-grid input,.product-form-grid select,.product-form-grid textarea{width:100%;box-sizing:border-box}.product-form-grid textarea{min-height:90px;resize:vertical}.span-2{grid-column:1/-1}.form-label{display:block;font-weight:800;color:#5e6876;margin-bottom:8px}.presentation-picker{display:flex;flex-wrap:wrap;gap:8px}.presentation-choice{padding:11px 14px;border:1px solid #dfe5ec;background:#f8fafc;border-radius:12px;font-weight:750;color:#3d4858;cursor:pointer}.presentation-choice.active{background:#1677d2;color:#fff;border-color:#1677d2}.fiscal-product{border:1px solid #dfe5ec;border-radius:14px;padding:0 16px}.fiscal-product summary{cursor:pointer;padding:16px 0;font-weight:800;color:#27384b}.product-form-grid.inner{padding:2px 0 18px}.switch-row{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid #edf0f3}.switch-row span small{display:block;font-weight:400;color:#929baa;margin-top:3px}.switch-row input{width:22px!important;height:22px}.product-editor-actions{display:flex;gap:12px;justify-content:flex-end;position:sticky;bottom:-24px;background:#fff;border-top:1px solid #edf0f3;padding:18px 0 20px;margin-top:20px}.product-editor-actions button{min-width:160px}.danger{background:#e32626;color:#fff;border:0;border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer}
@media(max-width:900px){.product-admin-table{overflow:auto}.product-admin-row{min-width:850px}.product-form-grid{grid-template-columns:1fr}.span-2{grid-column:1}.product-editor{width:100vw}.product-editor-actions{flex-direction:column-reverse}.product-editor-actions button{width:100%}}

/* v12.8.63 — filtro de presentaciones visible + campos principales al crear producto */
.presentation-select-wrap{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#5f6b7a;white-space:nowrap}
.presentation-select-wrap select{min-width:190px;padding:10px 36px 10px 12px;border:1px solid #dfe5ec;border-radius:10px;background:#fff;color:#263344;font:inherit}
.presentation-filters-full{margin:-2px 0 14px;max-width:100%;overflow-x:auto;padding-bottom:3px;flex-wrap:nowrap}
.presentation-filters-full .soft{flex:0 0 auto}
.product-required-presentation{padding:14px;border:1px solid #d9e8f7;border-radius:14px;background:#f8fbff}
.product-required-presentation small{display:block;margin-top:8px;color:#7a8795}
@media(max-width:760px){.presentation-select-wrap{width:100%;justify-content:space-between}.presentation-select-wrap select{flex:1;min-width:0}.presentation-filters-full{display:none}}

/* v12.8.65 - accesos rápidos editables */
.quick .panel-head{align-items:center}.quick-edit-btn{padding:8px 11px;font-size:11px;white-space:nowrap}.quick #quickLinks>a:last-child{border-bottom:0}.quick-editor-overlay{position:fixed;inset:0;z-index:12000;background:rgba(9,24,42,.58);backdrop-filter:blur(3px);display:grid;place-items:center;padding:24px}.quick-editor-modal{width:min(760px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 30px 90px rgba(3,18,34,.28);padding:24px}.quick-editor-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:15px}.quick-editor-head h3{font-size:22px;margin:4px 0}.quick-editor-head p{margin:0;color:var(--muted);font-size:12px}.quick-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px 0}.quick-choice{display:flex;align-items:flex-start;gap:11px;padding:13px;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer}.quick-choice:hover{border-color:#a9cbe6;background:#fbfdff}.quick-choice input{margin-top:3px;accent-color:var(--blue)}.quick-choice span,.quick-choice b,.quick-choice small{display:block}.quick-choice b{font-size:12px}.quick-choice small{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.35}.quick-choice:has(input:checked){border-color:#88bce3;background:#f1f8fe}.quick-choice:has(input:disabled){opacity:.55;cursor:not-allowed}.quick-editor-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;border-top:1px solid var(--line);padding-top:16px}.quick-editor-foot>span{font-size:11px;color:var(--muted)}.quick-editor-foot>div{display:flex;gap:8px}@media(max-width:650px){.quick-editor-grid{grid-template-columns:1fr}.quick-editor-foot{align-items:flex-start;flex-direction:column}.quick-editor-foot>div{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr}.quick-editor-foot button{padding-left:8px;padding-right:8px}.quick-edit-btn{padding:7px 9px}}

/* v12.8.66: tarjetas KPI navegables del Inicio */
.metric-card.metric-link{position:relative;color:inherit;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.metric-card.metric-link:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(15,23,42,.10);border-color:rgba(37,99,235,.28)}
.metric-card.metric-link:focus-visible{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}
.metric-link-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-style:normal;font-size:18px;opacity:.45}
.metric-card.metric-link:hover .metric-link-arrow{opacity:.85}


/* v12.8.68 — Inicio compacto y mejor aprovechamiento vertical en escritorio */
@media (min-width:1001px){
  .home-hero{min-height:112px;padding:19px 26px;margin-bottom:12px;border-radius:16px}
  .home-hero h2{font-size:25px;margin:3px 0}
  .home-hero .primary{padding:10px 15px}
  .dashboard-home .home-metrics{gap:10px;margin-bottom:12px;grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}
  .dashboard-home .home-metrics .metric-card{padding:12px 14px;gap:11px;min-height:72px}
  .dashboard-home .home-metrics .metric-icon{width:36px;height:36px;border-radius:10px;font-size:16px}
  .dashboard-home .home-metrics .metric-card strong{font-size:19px;margin:2px 0}
  .dashboard-home .home-primary-grid{grid-template-columns:minmax(0,7fr) minmax(270px,3fr);gap:12px;align-items:start}
  .dashboard-home .home-primary-grid>.panel{padding:15px 17px}
  .dashboard-home .home-primary-grid .panel-head{margin-bottom:10px}
  .dashboard-home .home-chart-panel .mini-chart{height:164px;padding:14px 8px 5px;gap:8px}
  .dashboard-home .home-chart-panel .mini-chart>div{min-width:34px;gap:4px}
  .dashboard-home .home-chart-panel .mini-chart small{font-size:7px}
  .dashboard-home .home-quick{align-self:start}
  .dashboard-home .home-quick .panel-head{margin-bottom:4px}
  .dashboard-home .home-quick a{padding:9px 2px}
  .dashboard-home .home-quick a span{margin-top:2px;font-size:10px}
  .dashboard-home .home-activity,.dashboard-home .home-team{margin-top:12px;padding:15px 17px}
  .dashboard-home .home-activity .panel-head,.dashboard-home .home-team .panel-head{margin-bottom:10px}
  .dashboard-home .home-activity .empty{padding:22px 18px}
}
@media (min-width:1001px) and (max-height:820px){
  .content{padding-top:18px;padding-bottom:28px}
  .home-hero{min-height:100px;padding:15px 24px;margin-bottom:10px}
  .home-hero h2{font-size:23px}
  .dashboard-home .home-metrics{margin-bottom:10px}
  .dashboard-home .home-metrics .metric-card{padding:10px 12px;min-height:66px}
  .dashboard-home .home-primary-grid{gap:10px}
  .dashboard-home .home-chart-panel .mini-chart{height:145px;padding-top:10px}
  .dashboard-home .home-quick a{padding:7px 2px}
  .dashboard-home .home-activity,.dashboard-home .home-team{margin-top:10px}
  .dashboard-home .home-activity .empty{padding:16px 18px}
}
@media (max-width:1000px){
  .dashboard-home .home-primary-grid{align-items:start}
  .dashboard-home .home-activity,.dashboard-home .home-team{margin-top:14px}
}

/* v12.8.69 — búsqueda global real en sidebar + estado de conexión integrado al perfil */
.topbar{height:64px;padding-left:30px;padding-right:30px}
.topbar .top-actions{display:none!important}
.account{margin-bottom:8px}
.account-copy{min-width:0}
.account-health{color:#8fd7b5;font-size:10px;font-weight:600}
.account small i.offline{background:var(--bad)}
.sidebar-search-btn{width:calc(100% - 12px);height:38px;margin:0 6px 10px;border:1px solid #ffffff16;border-radius:9px;background:#ffffff09;color:#c8d8e6;display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:7px;padding:0 10px;text-align:left}
.sidebar-search-btn:hover{background:#ffffff12;color:#fff}
.sidebar-search-btn b{font-size:17px;font-weight:500;text-align:center}.sidebar-search-btn span{font-weight:650}.sidebar-search-btn kbd{font:9px/1 ui-sans-serif,system-ui;color:#8fa6ba;border:1px solid #ffffff18;border-radius:5px;padding:4px 5px;background:#071a2d}
.global-search-backdrop{position:fixed;inset:0;z-index:10050;background:rgba(5,16,28,.52);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding:8vh 20px 30px}
.global-search-dialog{width:min(720px,96vw);max-height:78vh;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 28px 80px rgba(4,20,36,.28);overflow:hidden}
.global-search-box{height:62px;display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:0 16px;border-bottom:1px solid var(--line)}
.global-search-box>span{font-size:22px;color:var(--blue)}.global-search-box input{height:100%;border:0;outline:0;font-size:16px;background:transparent;color:var(--text)}.global-search-box button{border:1px solid var(--line);background:#f5f7fa;border-radius:7px;padding:6px 9px;color:var(--muted);font-size:11px}
.global-search-help,.global-search-summary{padding:13px 16px;color:var(--muted);font-size:11px;background:#fafbfc;border-bottom:1px solid var(--line)}
.global-search-results{max-height:calc(78vh - 62px);overflow:auto}.global-search-results .loading{min-height:150px}.global-search-results .empty{margin:18px}
.global-search-result{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;text-align:left;padding:12px 16px;color:var(--text)}.global-search-result:hover{background:#f5f9fc}.global-search-result .gs-icon{width:36px;height:36px;border-radius:10px;background:#eef6fc;color:var(--blue);display:grid;place-items:center;font-size:17px}.global-search-result small,.global-search-result strong,.global-search-result em{display:block}.global-search-result small{font-size:9px;letter-spacing:.7px;text-transform:uppercase;color:var(--blue);font-weight:800}.global-search-result strong{font-size:13px;margin:2px 0}.global-search-result em{font-size:10px;color:var(--muted);font-style:normal}.global-search-result>b{color:var(--blue);font-weight:500}
@media(max-width:900px){.topbar{height:60px;padding:0 16px}.sidebar-search-btn kbd{display:none}.global-search-backdrop{padding-top:4vh}.global-search-dialog{max-height:88vh}.global-search-results{max-height:calc(88vh - 62px)}}

/* v12.8.80 - filtros de Comprobantes con selección visible */
.fiscal-quick-top .soft.active{background:#1677d2!important;color:#fff!important;border-color:#1677d2!important;box-shadow:0 2px 7px rgba(22,119,210,.18)!important}

/* v12.8.86 — comprobantes: acciones fiscales directas en la tabla */
.fiscal-doc-head-direct,.fiscal-doc-row-direct{display:grid;grid-template-columns:minmax(145px,1fr) minmax(210px,1.55fr) 92px 118px 126px minmax(115px,.82fr) minmax(105px,.72fr);gap:12px;align-items:center}
.fiscal-doc-head-direct{padding:11px 16px;background:#f7f9fb;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.45px}
.fiscal-doc-head-direct>span:nth-child(3),.fiscal-doc-head-direct>span:nth-child(4),.fiscal-doc-head-direct>span:nth-child(5){text-align:center}
.fiscal-doc-head-direct>span:nth-child(6){text-align:right}.fiscal-doc-head-direct>span:nth-child(7){text-align:right}
.fiscal-doc-row-direct{width:100%;padding:14px 16px;background:#fff;color:var(--text)}
.fiscal-doc-row-direct:hover{background:#fafcfd}.fiscal-action-cell{text-align:center}.fiscal-action-cell .file-pill{width:100%;min-width:0;padding:8px 7px;font-size:10px;white-space:nowrap}.fiscal-doc-row-direct .fiscal-doc-amount{text-align:right;font-weight:800}.fiscal-doc-row-direct .fiscal-doc-state{justify-self:end}
@media(max-width:1180px){.fiscal-doc-head-direct,.fiscal-doc-row-direct{grid-template-columns:135px minmax(170px,1.4fr) 80px 105px 112px 105px 100px;gap:8px}.fiscal-action-cell .file-pill{font-size:9px;padding:7px 5px}}
@media(max-width:860px){.fiscal-doc-list-direct{overflow-x:auto}.fiscal-doc-head-direct,.fiscal-doc-row-direct{min-width:900px}}

/* v12.8.87 — Comprobantes compactos; PDF/XML sin cambios */
.fiscal-docs-compact{padding:14px 16px 12px}.fiscal-compact-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:9px}.fiscal-docs-title h3{margin:2px 0 0;font-size:17px}.fiscal-docs-title .eyebrow{font-size:9px}.fiscal-docs-compact .fiscal-quick-top{margin:0;gap:6px;flex-wrap:nowrap}.fiscal-docs-compact .fiscal-quick-top .soft{min-width:72px;height:34px;padding:0 12px;font-size:11px}.fiscal-docs-compact .fiscal-filterbar-compact{display:grid;grid-template-columns:150px 150px 180px minmax(190px,1fr) 125px;gap:8px;align-items:end;margin:0 0 9px}.fiscal-docs-compact .fiscal-filterbar-compact label{gap:4px;font-size:9px}.fiscal-docs-compact .fiscal-filterbar-compact input,.fiscal-docs-compact .fiscal-filterbar-compact select{height:36px;padding:0 9px;font-size:11px}.fiscal-docs-compact .fiscal-filterbar-compact .primary{height:36px;padding:0 14px}.fiscal-docs-compact .fiscal-summary{gap:7px;margin-bottom:8px}.fiscal-docs-compact .fiscal-summary>div{padding:7px 11px;border-radius:9px}.fiscal-docs-compact .fiscal-summary span{font-size:8px}.fiscal-docs-compact .fiscal-summary b{font-size:17px;margin-top:1px}.fiscal-docs-compact .fiscal-doc-list-direct{border-radius:9px}.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{grid-template-columns:145px minmax(190px,1.7fr) 68px 94px 100px 105px 92px;gap:7px}.fiscal-docs-compact .fiscal-doc-head-direct{padding:7px 10px;font-size:8px}.fiscal-docs-compact .fiscal-doc-row-direct{padding:7px 10px;min-height:43px}.fiscal-docs-compact .fiscal-doc-date{font-size:10px}.fiscal-docs-compact .fiscal-doc-client{font-size:11px}.fiscal-docs-compact .fiscal-action-cell .file-pill{height:29px;padding:0 6px;border-radius:6px;font-size:8.5px;justify-content:center}.fiscal-docs-compact .fiscal-doc-amount{font-size:11px}.fiscal-docs-compact .fiscal-state{padding:4px 7px;font-size:8px}.fiscal-docs-compact .tx-pager{padding-top:7px;font-size:9px}
@media(max-width:1050px){.fiscal-compact-top{align-items:flex-start;flex-direction:column}.fiscal-docs-compact .fiscal-filterbar-compact{grid-template-columns:1fr 1fr 1fr}.fiscal-docs-compact .fiscal-search-wrap{grid-column:auto}.fiscal-docs-compact .fiscal-doc-list-direct{overflow-x:auto}.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{min-width:820px}}
@media(max-width:700px){.fiscal-docs-compact .fiscal-filterbar-compact{grid-template-columns:1fr 1fr}.fiscal-docs-compact .fiscal-search-wrap,.fiscal-docs-compact .fiscal-filterbar-compact .primary{grid-column:1/-1}.fiscal-docs-compact .fiscal-quick-top{width:100%}.fiscal-docs-compact .fiscal-quick-top .soft{flex:1;min-width:0}}

/* v12.8.88 — compactación visual global inspirada en Comprobantes v12.8.87.
   SOLO PRESENTACIÓN: no cambia rutas, APIs, PDF, XML, filtros ni lógica de negocio. */
@media (min-width:1001px){
  .content{padding:18px 24px 30px}
  .topbar{height:58px;padding-left:24px;padding-right:24px}
  .topbar h1{font-size:17px}.topbar p{margin-top:2px;font-size:10px}

  .hero{min-height:104px;padding:17px 22px;margin-bottom:10px;border-radius:14px}
  .hero h2{font-size:23px;margin:3px 0}.hero p{font-size:11px}.hero .primary{padding:9px 13px}

  .panel{padding:14px 16px;border-radius:12px}
  .panel-head{margin-bottom:10px;gap:10px}
  .panel-head h3{font-size:15px;margin-top:2px}.panel-head a{font-size:10px}
  .eyebrow{font-size:9px;letter-spacing:1px}

  .metrics,.stats-kpis,.reports-kpis,.credit-metrics{gap:8px;margin-bottom:10px}
  .metric-card{padding:10px 12px;gap:10px;min-height:66px;border-radius:11px}
  .metric-icon{width:34px;height:34px;border-radius:9px;font-size:15px}
  .metric-card span{font-size:9px}.metric-card strong{font-size:18px;margin:1px 0}.metric-card small{font-size:9px}

  .dashboard-grid,.stats-grid,.reports-grid,.route-comparison-grid{gap:10px}
  .feature-grid{gap:10px}.feature{padding:16px;min-height:145px;border-radius:12px}.feature h3{margin:13px 0 5px}.feature p{font-size:11px;line-height:1.45}

  th,td{padding:8px 8px}th{font-size:9px}td{font-size:11px}
  .status{padding:3px 7px;font-size:9px}
  .empty,.error{padding:24px 14px}

  .primary,.soft{padding:8px 12px;border-radius:8px}
  input,select{font-size:11px}
  .checkout input,.checkout select,.panel-head input,.login-card input{height:36px}

  .stats-filters,.stats-wide{margin-bottom:10px}
  .stats-filter-grid{gap:8px;grid-template-columns:140px 140px 170px 170px 1fr}
  .stats-filter-grid label{gap:4px;font-size:9px}.stats-filter-grid input,.stats-filter-grid select{height:36px}
  .stats-summary{gap:8px}.stats-summary>div{padding:10px;border-radius:9px}.stats-summary span{margin-bottom:3px;font-size:9px}.stats-summary b{font-size:17px}

  .reports-quick,.credit-quick,.tx-periods{gap:6px;margin-bottom:9px}
  .reports-filter-grid{grid-template-columns:140px 140px minmax(150px,.8fr) minmax(150px,.8fr) minmax(190px,1.2fr) auto;gap:7px}
  .reports-filter-grid label,.credit-filters label{gap:4px;font-size:9px}
  .reports-filter-grid input,.reports-filter-grid select,.reports-filter-grid .primary{height:36px}
  .reports-grid{margin-bottom:10px}

  .route-report-head{margin-bottom:10px;gap:12px}.route-report-head p{font-size:10px}
  .route-report-filters{grid-template-columns:minmax(155px,.65fr) minmax(185px,1fr) minmax(185px,1fr) minmax(115px,.45fr);gap:8px}
  .route-report-filters label{gap:4px;font-size:9px}.route-report-filters input,.route-report-filters select,.route-report-filters .primary{height:36px;border-radius:8px}
  .route-report-summary{gap:8px;margin-bottom:10px}.route-report-summary>div{padding:10px 12px;border-radius:10px}.route-report-summary small{font-size:9px;margin-bottom:3px}.route-report-summary strong{font-size:18px}
  .route-card-top{padding-bottom:9px}.route-card-top h3{font-size:17px}.route-card-top>strong{font-size:17px}.route-card-main{padding:10px 0;gap:10px}.route-card-main b{font-size:20px}.route-card-foot{padding-top:8px}

  .client-report-filters{grid-template-columns:minmax(150px,.8fr) minmax(170px,1fr) minmax(160px,1fr) minmax(190px,1.2fr) auto;gap:8px;margin:10px 0 11px}
  .client-report-filters label{font-size:10px}.client-report-filters input,.client-report-filters select{margin-top:4px;height:36px}.client-report-filters .primary{height:36px}
  .client-compare-list{gap:9px}.client-compare-card{padding:12px;border-radius:12px}.client-compare-values{gap:7px;margin-top:10px}.client-compare-values div{padding:8px}.client-change{padding:5px 8px;font-size:10px}

  .tx-periods .soft{min-width:78px}.tx-filters{grid-template-columns:repeat(5,minmax(120px,1fr)) auto;gap:8px;margin-bottom:10px}.tx-pager{padding:10px 4px 2px}

  .credit-head{margin-bottom:10px}.credit-filters{grid-template-columns:140px 140px minmax(170px,.8fr) minmax(210px,1.3fr) auto;gap:8px}
  .credit-filters input,.credit-filters select,.credit-filters .primary{height:36px}
  .credit-pager{margin-top:10px}.credit-account-summary{gap:7px;margin:10px 0}.credit-account-summary>div{padding:9px}.credit-account-summary b{font-size:17px;margin-top:3px}
  .credit-pay-form{gap:8px;padding:11px}.credit-pay-form input,.credit-pay-form select{height:36px}

  #decl .decl-toolbar{gap:10px;margin-bottom:10px}
  #decl .decl-period-grid{grid-template-columns:minmax(160px,230px) minmax(160px,230px) auto;gap:8px}

  .products-admin-head p,.users-admin-head p{font-size:11px!important;margin-top:3px!important}
  .product-toolbar{gap:8px;margin:9px 0}.product-toolbar>input{min-width:240px;height:36px}.presentation-filters{gap:5px}.presentation-filters .soft{padding:7px 10px}
  .product-catalog-summary{padding:5px 2px 8px}.product-catalog-summary b{font-size:18px}.product-admin-row{grid-template-columns:minmax(220px,2fr) 95px 125px 105px 60px 100px 24px;gap:9px;padding:9px 12px}.product-admin-row.header{font-size:9px}.presentation-pill{padding:4px 7px;font-size:10px}

  .users-role-strip{gap:6px;margin-bottom:9px;padding:7px 9px;font-size:10px}.users-role-strip b{padding:4px 7px}.users-notice{margin-bottom:9px;padding:7px 9px;font-size:11px}
  .user-role-badge,.user-state,.yes-pill{padding:3px 7px;font-size:9px}

  .quick a{padding:9px 2px}.quick a span{font-size:10px}
  .cart-item{padding:8px 0}.total{padding:12px 0 6px}.total strong{font-size:20px}
}

/* v12.8.89 — distribución escritorio: aprovechar ancho real, reducir vacío vertical.
   SOLO CSS / PRESENTACIÓN. No modifica lógica, eventos, consultas, PDF ni XML. */
@media (min-width:1101px){
  /* Lienzo: más área útil y menos marco */
  .app-shell{grid-template-columns:224px minmax(0,1fr)}
  .sidebar{padding:16px 10px 10px}
  .sidebar nav a,.logout{height:36px;padding:0 9px}
  .account{margin:9px 4px 10px;padding:9px 7px}
  .logo{height:42px;padding:0 8px}
  .content{max-width:none!important;width:100%;margin:0!important;padding:14px 18px 24px!important}
  .topbar{height:54px;padding:0 18px}

  /* Regla general: encabezados compactos y controles en horizontal */
  .panel{padding:12px 14px}
  .panel-head{margin-bottom:8px}
  .panel-head h3{font-size:14px}
  .hero{min-height:88px;padding:14px 18px;margin-bottom:8px}
  .hero h2{font-size:21px}

  /* Reportes de vendedor: una franja ejecutiva en lugar de bloques apilados */
  .route-report-controls{padding:12px 14px!important;display:grid!important;grid-template-columns:minmax(290px,.8fr) minmax(620px,2.2fr)!important;grid-template-rows:auto auto!important;column-gap:16px!important;row-gap:8px!important;align-items:end!important}
  .route-report-head{display:contents!important}
  .route-report-head>div:first-child{grid-column:1!important;grid-row:1 / span 2!important;align-self:center!important;min-width:0!important}
  .route-report-head>div:first-child h3{font-size:16px!important;margin:2px 0 3px!important}
  .route-report-head>div:first-child p{font-size:9px!important;line-height:1.3!important;max-width:310px!important}
  .route-report-actions{grid-column:2!important;grid-row:1!important;display:flex!important;justify-content:flex-start!important;align-items:center!important;gap:6px!important;padding:0!important;border:0!important;width:auto!important;flex-wrap:nowrap!important}
  .route-report-quick,.route-report-actions .report-view-toggle{display:flex!important;gap:5px!important;flex-wrap:nowrap!important}
  .route-report-actions .report-view-toggle{min-height:32px!important;padding:2px!important;border-radius:8px!important}
  .route-report-actions .soft,.route-report-actions .report-view-toggle .soft{min-height:30px!important;height:30px!important;min-width:92px!important;padding:0 10px!important;border-radius:7px!important;font-size:10px!important}
  .route-report-filters{grid-column:2!important;grid-row:2!important;display:grid!important;grid-template-columns:132px minmax(150px,1fr) minmax(150px,1fr) 104px!important;gap:6px!important;align-items:end!important;margin:0!important}
  .route-report-filters label{gap:2px!important;font-size:8px!important}
  .route-report-filters input,.route-report-filters select,.route-report-filters .primary{height:32px!important;border-radius:7px!important;font-size:10px!important;padding-left:8px!important;padding-right:8px!important}

  /* Resumen de reportes como banda, no tarjetas altas */
  .route-report-summary.route-report-summary-clean{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;margin:8px 0!important}
  .route-report-summary.route-report-summary-clean>div{min-height:56px!important;padding:7px 10px!important;border-radius:9px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center!important;column-gap:8px!important}
  .route-report-summary.route-report-summary-clean small{grid-column:1;font-size:8px!important;margin:0!important}
  .route-report-summary.route-report-summary-clean strong{grid-column:1;font-size:16px!important;line-height:1.05!important}
  .route-report-summary.route-report-summary-clean .route-trend,.route-report-summary.route-report-summary-clean .route-summary-note{grid-column:2;grid-row:1 / span 2;align-self:center;margin:0!important;font-size:8px!important;white-space:nowrap}
  .route-report-guide{margin:0 0 7px!important;padding:6px 9px!important;font-size:9px!important;border-radius:8px!important}

  /* Tablas de reportes: más información visible por pantalla */
  .report-table-note{padding:7px 10px!important;font-size:9px!important}
  .report-table th button{padding:7px 9px!important;font-size:8px!important}
  .report-table td{padding:7px 9px!important;font-size:10px!important}
  .report-inline-detail{padding:7px 2px!important;gap:7px!important;font-size:9px!important}
  .report-inline-detail>span{padding:4px 6px!important;border-radius:6px!important}

  /* Tarjetas alternativas: tres columnas cuando el ancho lo permite */
  .route-comparison-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
  .route-comparison-card{padding:10px 11px!important}
  .route-card-top{padding-bottom:6px!important}.route-card-top h3{font-size:14px!important}.route-card-top>strong{font-size:14px!important}
  .route-card-main{padding:7px 0!important;gap:7px!important}.route-card-main b{font-size:16px!important;margin-bottom:3px!important}.route-card-main small{font-size:8px!important}
  .route-card-foot{padding-top:5px!important;gap:4px!important}.route-card-foot span{padding:3px 6px!important;font-size:8px!important}

  /* Estadísticas: usar ancho en vez de apilar */
  .stats-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important}
  .stats-toolbar-left,.stats-toolbar-right{width:auto!important;display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important}
  .stats-kpis.compact-kpis{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:6px!important}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .donut-panel{min-height:0!important}

  /* Reporte de clientes: filtros y resultados más horizontales */
  .client-week-report{padding:12px 14px!important}
  .client-report-head{margin-bottom:6px!important}
  .client-report-filters{grid-template-columns:128px minmax(150px,.9fr) minmax(145px,.8fr) minmax(170px,1fr) 98px!important;gap:6px!important;margin:6px 0 8px!important}
  .client-report-filters input,.client-report-filters select,.client-report-filters .primary{height:32px!important;margin-top:2px!important;font-size:10px!important}
  .client-compare-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  .client-compare-card{padding:9px!important;border-radius:10px!important}.client-compare-values{gap:5px!important;margin-top:7px!important}.client-compare-values div{padding:6px!important}

  /* Transacciones, créditos, productos y usuarios: menos aire, más columnas visibles */
  .tx-periods{margin-bottom:6px!important}.tx-filters{gap:6px!important;margin-bottom:7px!important}.tx-filters input,.tx-filters select,.tx-filters .primary{height:32px!important;font-size:10px!important}
  .credit-head{margin-bottom:6px!important}.credit-filters{gap:6px!important}.credit-filters input,.credit-filters select,.credit-filters .primary{height:32px!important;font-size:10px!important}
  .product-toolbar{margin:5px 0 7px!important}.product-toolbar>input{height:32px!important}.product-admin-row{padding:7px 10px!important}
  .users-role-strip{margin-bottom:6px!important;padding:5px 7px!important}

  /* Dashboard / módulos con dos paneles: priorizar ancho */
  .dashboard-grid{grid-template-columns:minmax(0,2.5fr) minmax(240px,.72fr)!important;gap:8px!important}
  .metrics{gap:6px!important;margin-bottom:8px!important}.metric-card{min-height:58px!important;padding:7px 9px!important}.metric-card strong{font-size:16px!important}.metric-icon{width:30px!important;height:30px!important}
  .feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}.feature{min-height:118px!important;padding:12px!important}.feature h3{margin:8px 0 4px!important}

  /* Formularios genéricos: controles ligeramente más bajos */
  .filter-grid{gap:6px!important}
  .filter-grid input,.filter-grid select,.filter-grid .primary{min-height:32px!important;height:32px!important}
}

@media (min-width:1500px){
  .route-report-controls{grid-template-columns:minmax(320px,.7fr) minmax(760px,2.3fr)!important}
  .route-comparison-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .client-compare-list{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* v12.8.90 — Inventario: resumen monetario real y alertas visuales */
.inv-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.inv-summary .metric-card{min-height:72px!important}
.inv-summary .metric-card:nth-child(2) strong,.inv-summary .metric-card:nth-child(3) strong{color:#c62828!important}
.inv-summary .metric-card:nth-child(2) .metric-icon,.inv-summary .metric-card:nth-child(3) .metric-icon{color:#c62828!important;background:#fff0f0!important}
.inv-summary .metric-card:nth-child(2) small,.inv-summary .metric-card:nth-child(3) small{color:#b23a3a!important}
@media(max-width:800px){.inv-summary{grid-template-columns:1fr!important}}


/* v12.8.91 — Inventario editable y orden maestro igual que Android */
.inventory-toolbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:0 0 10px}.inventory-toolbar label{display:grid;gap:4px;font-size:10px;font-weight:800;color:var(--muted)}.inventory-toolbar input,.inventory-toolbar select{height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 9px}.inventory-toolbar #invUpdated{align-self:center;color:var(--muted);font-size:10px}.inventory-order-toggle.active{background:var(--blue);color:#fff}.inventory-order-tools{display:flex;gap:8px;align-items:center;margin:-2px 0 8px;padding:7px 9px;border-radius:9px;background:#f7fafe;border:1px solid var(--line)}.inventory-order-tools[hidden]{display:none!important}.inventory-order-tools span{color:var(--muted);font-size:10px}.inventory-edit-table td,.inventory-edit-table th{padding:7px 9px}.inventory-load-input{width:86px;height:32px;border:1px solid #cfd9e5;border-radius:8px;padding:0 8px;font-weight:800;color:#173958;background:#fbfdff}.inventory-load-input:focus{outline:0;border-color:#5aa6df;box-shadow:0 0 0 3px #e8f4fd}.inventory-order-cell{display:flex;gap:4px}.inventory-order-cell .icon-btn{padding:4px 8px;min-width:30px}@media(max-width:800px){.inventory-toolbar>*{flex:1 1 140px}.inventory-order-tools{align-items:flex-start;flex-wrap:wrap}.inventory-edit-table{min-width:700px}}


/* v12.8.92 — Inventario: cabecera sin duplicados y búsqueda compacta */
.inventory-panel .inventory-search-row{display:flex;justify-content:flex-start;align-items:center;margin:0 0 8px}
.inventory-panel .inventory-search-row #filter{width:min(100%,420px);height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 11px;font:inherit}
.inventory-panel .inventory-search-row #filter:focus{outline:0;border-color:#5aa6df;box-shadow:0 0 0 3px #e8f4fd}
@media(max-width:800px){.inventory-panel .inventory-search-row #filter{width:100%}}

/* v12.8.93 — Inventario: controles equivalentes a la app, presentación y borrar carga */
.inventory-panel{position:relative}
.inventory-panel .inventory-search-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 8px}
.inventory-panel .inventory-search-row #filter{width:min(100%,420px);height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 11px;font:inherit}
.inventory-updated{margin-left:auto;color:var(--muted);font-size:10px;white-space:nowrap}
.inventory-toolbar-app{display:grid;grid-template-columns:minmax(150px,210px) minmax(140px,180px) minmax(160px,210px) auto;align-items:end;gap:8px;margin:0 0 9px}
.inventory-toolbar-app label{min-width:0}
.inventory-toolbar-app input,.inventory-toolbar-app select{width:100%;height:34px}
.inventory-toolbar-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.inventory-clear-load{height:34px;padding:0 13px;border-radius:8px}
.inventory-row-presentation{display:block;color:var(--muted);font-size:9px;font-weight:600;margin-top:2px}
@media(min-width:1101px){
 .inventory-panel{padding-top:11px!important}
 .inventory-panel .inventory-search-row{margin-bottom:7px}
 .inventory-toolbar-app{grid-template-columns:190px 160px 190px 1fr;gap:7px}
 .inventory-toolbar-actions{justify-content:flex-start}
 .inventory-edit-table td,.inventory-edit-table th{padding:6px 9px!important}
}
@media(max-width:900px){
 .inventory-panel .inventory-search-row{align-items:stretch;flex-direction:column}
 .inventory-updated{margin-left:0;align-self:flex-end}
 .inventory-toolbar-app{grid-template-columns:1fr 1fr}
 .inventory-toolbar-actions{grid-column:1/-1}
}
@media(max-width:600px){
 .inventory-toolbar-app{grid-template-columns:1fr}
 .inventory-toolbar-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}
 .inventory-toolbar-actions>*{width:100%}
}

/* v12.8.94 — Estadísticas y Transacciones: controles más compactos */
@media(min-width:901px){
  .stats-actions .soft{height:32px!important;min-width:68px!important;padding:0 11px!important;font-size:10px!important}
  .stats-view-toggle .soft{height:32px!important;min-width:104px!important;padding:0 12px!important;font-size:10px!important}
  .stats-download-btn{height:32px!important;min-width:104px!important;padding:0 12px!important;font-size:10px!important}
  .stats-filter-grid{grid-template-columns:140px 140px 170px 170px auto!important;justify-content:start!important}
  .stats-apply{width:auto!important;min-width:118px!important;max-width:140px!important;height:34px!important;padding:0 16px!important;font-size:10px!important;justify-self:start!important}
  .tx-periods .soft{height:32px!important;min-width:66px!important;padding:0 11px!important;font-size:10px!important}
}

/* v12.8.95 — Ventyum Command Center: cabecera Inicio futurista, compacta y útil */
.command-hero{position:relative;isolation:isolate;overflow:hidden;display:grid!important;grid-template-columns:minmax(230px,.8fr) minmax(480px,1.65fr) auto;align-items:stretch;gap:18px;min-height:116px!important;padding:16px 18px 16px 22px!important;background:linear-gradient(112deg,#082f67 0%,#07528d 46%,#087bb0 100%)!important;border:1px solid rgba(122,214,255,.22);box-shadow:0 14px 34px rgba(4,48,94,.16),inset 0 1px 0 rgba(255,255,255,.12)}
.command-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 0 47%,rgba(85,220,255,.08) 47.1% 47.25%,transparent 47.35%),radial-gradient(circle at 73% 12%,rgba(69,231,255,.22),transparent 28%);pointer-events:none}
.command-ambient{position:absolute;right:24%;top:-70px;width:270px;height:190px;border:1px solid rgba(90,223,255,.18);border-radius:50%;transform:rotate(-18deg);box-shadow:0 0 55px rgba(43,206,255,.08);pointer-events:none}
.command-intro{align-self:center;min-width:0}.command-brand{display:inline-flex;align-items:center;gap:7px;font-size:9px;font-weight:900;letter-spacing:.22em;color:#64e5ff}.command-brand:before{content:"";width:17px;height:2px;border-radius:4px;background:#64e5ff;box-shadow:0 0 10px #64e5ff}.command-intro h2{font-size:24px!important;line-height:1.05;margin:5px 0 4px!important;color:#fff}.command-intro p{margin:0!important;color:rgba(232,247,255,.72)!important;font-size:11px}
.command-live{display:grid;grid-template-columns:1.05fr .72fr 1fr;align-items:center;min-width:0;border-left:1px solid rgba(255,255,255,.12);border-right:1px solid rgba(255,255,255,.12)}
.command-module{position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;height:100%;padding:10px 17px;text-decoration:none;color:#fff!important;border-right:1px solid rgba(255,255,255,.1);transition:background .18s ease,transform .18s ease}.command-module:last-child{border-right:0}.command-module:hover{background:rgba(91,218,255,.1);transform:translateY(-1px)}.command-module span{font-size:8px;font-weight:900;letter-spacing:.13em;color:#76e5ff}.command-module strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 2px;font-size:17px;line-height:1.05;color:#fff}.command-module small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;color:rgba(225,243,255,.62)}.command-module:after{content:"";position:absolute;left:17px;bottom:10px;width:22px;height:2px;border-radius:5px;background:#4bdcff;opacity:.65;box-shadow:0 0 9px rgba(75,220,255,.8)}
.command-sale{align-self:center;display:flex;align-items:center;gap:9px;height:42px;padding:0 16px;border:1px solid rgba(255,255,255,.38);border-radius:11px;background:rgba(255,255,255,.94);color:#0a5488;box-shadow:0 8px 22px rgba(0,30,65,.16);cursor:pointer;white-space:nowrap}.command-sale span{font-size:20px;font-weight:400;line-height:1}.command-sale b{font-size:11px}.command-sale:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(0,30,65,.22)}
@media(max-width:1100px){.command-hero{grid-template-columns:minmax(210px,.75fr) minmax(390px,1.4fr) auto;gap:10px}.command-module{padding-left:11px;padding-right:11px}.command-module:after{left:11px}.command-module strong{font-size:14px}}
@media(max-width:850px){.command-hero{grid-template-columns:1fr auto;min-height:auto!important}.command-live{grid-column:1/-1;grid-row:2;border:1px solid rgba(255,255,255,.12);border-radius:10px;min-height:68px}.command-sale{grid-column:2;grid-row:1}.command-intro{grid-column:1;grid-row:1}}
@media(max-width:560px){.command-hero{padding:15px!important}.command-intro h2{font-size:20px!important}.command-live{grid-template-columns:1fr 1fr}.command-fiscal{display:none}.command-module{padding:9px 11px}.command-sale{padding:0 12px}.command-sale b{display:none}}

/* v12.8.96 — Command Center por empresa + privacidad de montos */
.command-brand:before{display:none!important;content:none!important}
.command-intro .command-brand{gap:0!important;letter-spacing:.14em;font-size:10px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.command-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;align-self:center;position:relative;z-index:2}
.command-eye{width:38px;height:38px;border-radius:12px;border:1px solid rgba(132,226,255,.3);background:rgba(5,40,87,.42);color:#dff8ff;font-size:20px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 22px rgba(0,35,80,.15);transition:.18s ease}
.command-eye:hover{background:rgba(80,214,255,.15);border-color:rgba(132,226,255,.55);transform:translateY(-1px)}
.command-seller strong{font-size:16px}
.command-live{grid-template-columns:repeat(4,minmax(105px,1fr))!important}
/* El ojo oculta solo importes, nunca conteos de clientes/productos/usuarios. */
.home-money-hidden .home-metrics .metric:nth-child(1) strong,
.home-money-hidden .home-metrics .metric:nth-child(2) strong,
.home-money-hidden .mini-chart small,
.home-money-hidden .home-team tbody td:last-child{filter:blur(8px);user-select:none}
@media(max-width:1100px){.command-live{grid-template-columns:repeat(3,minmax(100px,1fr))!important}.command-actions{gap:6px}}
@media(max-width:850px){.command-actions{grid-column:2;grid-row:1}.command-sale{grid-column:auto;grid-row:auto}.command-live{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.command-eye{width:34px;height:34px;border-radius:10px}.command-actions{align-self:start}.command-live{grid-template-columns:1fr 1fr!important}}

/* v12.8.97 — Inicio sin encabezado redundante, ojo sobre saludo y datos completos */
.home-workspace>.topbar{display:none!important}
.home-workspace>.content{padding-top:18px!important}
.command-intro-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
.command-intro-top .command-eye{flex:0 0 auto}
.command-module strong,.command-module small{overflow:visible!important;text-overflow:clip!important;white-space:normal!important;word-break:normal;line-height:1.15}
.command-module{min-width:135px!important}
.command-live{grid-template-columns:repeat(4,minmax(135px,1fr))!important}
/* Privacidad: oculta todos los importes monetarios visibles del Inicio, incluidos KPI, gráfico y tabla de equipo. */
.home-money-hidden .home-metrics .metric:nth-child(1) strong,
.home-money-hidden .home-metrics .metric:nth-child(2) strong,
.home-money-hidden .mini-chart small,
.home-money-hidden .home-team tbody td:last-child{filter:blur(8px)!important;user-select:none!important}
@media(max-width:1100px){.command-live{grid-template-columns:repeat(3,minmax(125px,1fr))!important}}
@media(max-width:850px){.command-live{grid-template-columns:repeat(2,minmax(0,1fr))!important}.command-module{min-width:0!important}}

/* v12.8.99 — ojo integrado al panel, sin relieve ni superficie propia */
.command-eye,
.command-eye:hover,
.command-eye:focus,
.command-eye:active{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
  outline:none!important;
  border-radius:0!important;
}
/* v12.8.101: botón Nueva venta más compacto en panel principal */
.command-hero .command-sale{height:36px;padding:0 13px;gap:7px;border-radius:10px}
.command-hero .command-sale span{font-size:17px}
.command-hero .command-sale b{font-size:10px}

/* v12.8.102 — Inicio concentra Transacciones y Por cobrar; lateral más limpio */
.command-live{grid-template-columns:repeat(6,minmax(105px,1fr))!important}
.command-module{min-width:105px!important;padding-left:12px!important;padding-right:12px!important}
.command-module:after{left:12px!important}
@media(max-width:1100px){.command-live{grid-template-columns:repeat(3,minmax(105px,1fr))!important}}
@media(max-width:850px){.command-live{grid-template-columns:repeat(2,minmax(0,1fr))!important}.command-module{min-width:0!important}}

/* v12.8.103 — simetría del Command Center */
.command-hero{
  grid-template-columns:minmax(300px,.95fr) minmax(0,2.15fr) 132px!important;
  gap:0!important;
  align-items:stretch!important;
}
.command-intro{
  display:flex!important;
  flex-direction:column;
  justify-content:center;
  padding-right:22px;
}
.command-live{
  width:100%;
  display:grid!important;
  grid-template-columns:repeat(var(--command-count,4),minmax(0,1fr))!important;
  align-items:stretch!important;
  border-left:1px solid rgba(255,255,255,.12)!important;
  border-right:1px solid rgba(255,255,255,.12)!important;
}
.command-module{
  min-width:0!important;
  width:auto!important;
  padding:12px 14px!important;
  justify-content:center!important;
  align-items:flex-start!important;
  box-sizing:border-box!important;
}
.command-module span{min-height:12px;display:flex;align-items:center}
.command-module strong{font-size:15px!important;min-height:34px;display:flex;align-items:center;margin:3px 0 1px!important}
.command-module small{min-height:22px;display:flex;align-items:flex-start;font-size:9px!important}
.command-module:after{left:14px!important;bottom:9px!important;width:20px!important}
.command-actions{
  width:132px;
  justify-content:flex-end!important;
  padding-left:14px;
  box-sizing:border-box;
}
.command-hero .command-sale{width:118px;justify-content:center!important;padding:0 10px!important}
@media(max-width:1200px){
  .command-hero{grid-template-columns:minmax(250px,.8fr) minmax(0,2fr) 122px!important}
  .command-actions{width:122px;padding-left:10px}.command-hero .command-sale{width:108px}
  .command-module{padding-left:10px!important;padding-right:10px!important}.command-module:after{left:10px!important}
  .command-module strong{font-size:13px!important}
}
@media(max-width:850px){
  .command-hero{grid-template-columns:1fr auto!important;gap:10px!important}
  .command-intro{padding-right:0}.command-actions{width:auto;padding-left:0}
  .command-live{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .command-module strong,.command-module small{min-height:auto}
}

/* v12.8.105 — Inicio: identidad sin duplicar nombre + privacidad completa de montos */
/* El nombre ya aparece en el saludo del Command Center; en el lateral dejamos rol/estado. */
.home-workspace .sidebar .account-copy>strong{display:none!important}
.home-workspace .sidebar .account{padding-top:10px;padding-bottom:10px}
.home-workspace .sidebar .account-copy small{margin-top:0}
/* El ojo debe ocultar también Ventas de hoy y Ticket promedio. */
.home-money-hidden .home-metrics .metric-card:nth-child(1) strong,
.home-money-hidden .home-metrics .metric-card:nth-child(2) strong,
.home-money-hidden .mini-chart small,
.home-money-hidden .home-team tbody td:last-child{
  filter:blur(8px)!important;
  user-select:none!important;
}

/* v12.8.106 — Privacidad de montos estilo app: mostrar ****, nunca huecos ni blur */
.home-money-hidden .home-metrics .metric-card:nth-child(1) strong,
.home-money-hidden .home-metrics .metric-card:nth-child(2) strong{
  filter:none!important;
  color:transparent!important;
  font-size:0!important;
  user-select:none!important;
}
.home-money-hidden .home-metrics .metric-card:nth-child(1) strong::after,
.home-money-hidden .home-metrics .metric-card:nth-child(2) strong::after{
  content:"****";
  color:#253044!important;
  font-size:20px!important;
  letter-spacing:.08em;
}
.home-money-hidden .mini-chart small{
  filter:none!important;
  color:transparent!important;
  font-size:0!important;
  user-select:none!important;
}
.home-money-hidden .mini-chart small::after{
  content:"****";
  color:#6f7b8e!important;
  font-size:9px!important;
  letter-spacing:.04em;
}
.home-money-hidden .home-team tbody td:last-child{
  filter:none!important;
  color:transparent!important;
  font-size:0!important;
  user-select:none!important;
}
.home-money-hidden .home-team tbody td:last-child::after{
  content:"****";
  color:#253044!important;
  font-size:13px!important;
  font-weight:700;
  letter-spacing:.06em;
}

/* v12.8.107 - aprobación manual de empresas */
.license-badge.pendiente{background:#fff7df;color:#8a5b00;border:1px solid #f1d48c}.license-badge.rechazada{background:#fff0f0;color:#a12828;border:1px solid #f2bcbc}

/* v12.8.111 — saludo contextual + planilla */
.greeting-line{display:flex;align-items:center;gap:10px}
.greeting-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:.92;flex:0 0 auto}
.command-hero .greeting-icon{filter:drop-shadow(0 2px 5px rgba(0,0,0,.12))}
.payroll-actions{display:flex;gap:10px;align-items:center}
.payroll-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.payroll-form label,.payroll-detail-grid label{display:grid;gap:6px;font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.35px}
.payroll-form input,.payroll-form select,.payroll-detail-grid input,.payroll-detail-grid select{height:42px;border:1px solid var(--line);border-radius:9px;padding:0 11px;background:#fff;color:var(--text)}
.payroll-form .wide{grid-column:1/-1}
.payroll-modal{max-width:980px}
.payroll-detail-list{display:grid;gap:14px;max-height:70vh;overflow:auto;padding-right:4px}
.payroll-detail{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}
.payroll-detail-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}
.payroll-detail-title small{display:block;color:var(--muted);margin-top:3px}
.payroll-net{font-size:19px;color:var(--blue)}
.payroll-detail-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin-bottom:12px}
@media(max-width:760px){.payroll-actions{width:100%;justify-content:flex-start}.payroll-form{grid-template-columns:1fr}.payroll-form .wide{grid-column:auto}.payroll-detail-grid{grid-template-columns:1fr 1fr}.greeting-icon{width:19px;height:19px}}

/* v12.8.112 — Planilla profesional */
.payroll-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0}
.payroll-tabs button{border:1px solid var(--line);background:#fff;color:var(--muted);font-weight:800;padding:10px 15px;border-radius:10px;cursor:pointer}
.payroll-tabs button.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 8px 20px rgba(35,119,214,.18)}
.employee-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.employee-card{border:1px solid var(--line);border-radius:16px;padding:16px;background:#fff;box-shadow:0 8px 25px rgba(16,42,67,.04)}
.employee-card-head{display:flex;align-items:center;gap:11px}.employee-card-head h4{margin:0;font-size:17px}.employee-card-head p{margin:3px 0 0;color:var(--muted);font-size:12px}.employee-card-head .pill{margin-left:auto}
.avatar-mini{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#e8f2ff,#f5f9ff);color:var(--blue);font-weight:900;font-size:17px}
.employee-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.employee-facts span{font-size:12px;color:var(--text)}.employee-facts b{display:block;color:var(--muted);text-transform:uppercase;font-size:9px;letter-spacing:.5px;margin-bottom:3px}
.vacation-strip{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid var(--line);padding-top:12px}.vacation-strip div{background:#f8fbff;border-radius:11px;padding:10px}.vacation-strip b{display:block;font-size:18px;color:var(--blue)}.vacation-strip small{font-size:10px;color:var(--muted)}
.legal-note{background:#f7fbff;border:1px solid #d8e9fb;border-radius:12px;padding:12px 14px;color:#53667b;font-size:12px;line-height:1.5;margin-bottom:14px}
.vacation-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-bottom:15px}.vacation-summary-grid article{border:1px solid var(--line);border-radius:14px;padding:14px}.vacation-summary-grid span,.vacation-summary-grid small{display:block;color:var(--muted)}.vacation-summary-grid strong{display:block;font-size:22px;margin:5px 0;color:var(--blue)}.vacation-ref{font-size:11px;margin-top:9px;padding-top:9px;border-top:1px solid var(--line)}
@media(max-width:700px){.employee-grid{grid-template-columns:1fr}.employee-facts,.vacation-strip{grid-template-columns:1fr 1fr}.payroll-tabs{overflow-x:auto;flex-wrap:nowrap}.payroll-tabs button{white-space:nowrap}}

.employee-card-actions{margin-left:auto;display:flex;align-items:center;gap:8px}
.employee-card-actions .soft{padding:7px 10px;font-size:11px}

/* v12.8.119 — tarjeta de Planilla compacta */
.employee-card-compact{padding:12px 14px;border-radius:13px}
.employee-card-compact .employee-card-head{gap:9px}
.employee-card-compact .avatar-mini{width:36px;height:36px;border-radius:10px;font-size:15px}
.employee-card-compact .employee-main{min-width:0}
.employee-card-compact .employee-main h4{font-size:16px;line-height:1.15}
.employee-card-compact .employee-main p{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.employee-dot{margin:0 6px;color:var(--muted)}
.employee-facts-compact{grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px;margin:10px 0 8px;padding-top:9px;border-top:1px solid var(--line)}
.employee-facts-compact span{padding:0 2px;font-size:11px}
.employee-facts-compact b{font-size:8px;margin-bottom:2px}
.employee-facts-compact .employee-salary strong{display:block;font-size:14px;color:var(--text)}
.vacation-strip-compact{padding-top:8px;gap:7px}
.vacation-strip-compact div{padding:7px 9px}
.vacation-strip-compact b{font-size:15px}
.vacation-strip-compact small{font-size:9px}
.employee-card-compact .employee-card-actions .soft{padding:6px 9px}
@media(max-width:760px){
  .employee-facts-compact{grid-template-columns:1fr 1fr}
  .employee-card-compact .employee-main p{white-space:normal}
}

.payroll-schedule-form{display:grid;gap:8px}
.schedule-help,.schedule-note{padding:10px 12px;border-radius:10px;background:var(--soft);font-size:12px;line-height:1.45;color:var(--muted)}
.schedule-row{display:grid;grid-template-columns:1.1fr repeat(4,1fr);gap:8px;align-items:end;padding:8px 0;border-bottom:1px solid var(--line)}
.schedule-row label{font-size:10px;color:var(--muted)}
.schedule-row input{width:100%}
.schedule-day{display:flex;align-items:center;gap:7px;padding-bottom:9px}
.schedule-day input{width:auto}
.schedule-row.is-rest{opacity:.55}
@media(max-width:760px){.schedule-row{grid-template-columns:1fr 1fr}.schedule-day{grid-column:1/-1}}

/* v12.8.121 — tarjeta de Planilla más compacta */
.employee-card-v121{padding:11px 14px}
.employee-card-v121 .employee-card-head{align-items:flex-start}
.employee-card-v121 .employee-main{flex:1;min-width:0}
.employee-inline-facts{display:grid;grid-template-columns:repeat(4,minmax(105px,1fr));gap:10px;margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}
.employee-inline-facts span{font-size:11px;color:var(--text);min-width:0}
.employee-inline-facts b{display:block;color:var(--muted);text-transform:uppercase;font-size:8px;letter-spacing:.45px;margin-bottom:2px}
.employee-inline-facts .employee-salary-inline strong{display:block;font-size:14px;color:var(--text);white-space:nowrap}
.employee-card-v121 .vacation-strip-compact{margin-top:8px}
@media(max-width:860px){
  .employee-inline-facts{grid-template-columns:1fr 1fr}
}

/* v12.8.123 — acciones de Planilla más compactas */
#payrollPage .payroll-actions button,
.payroll-page .payroll-actions button,
.payroll-actions .soft,
.payroll-actions button{
  min-height:34px;
  padding:7px 13px;
  font-size:12px;
  border-radius:10px;
}

.payroll-row-actions{display:flex;gap:6px;align-items:center;white-space:nowrap}
.payroll-row-actions .danger{color:#b42318;border-color:#f0b4ae;background:#fff7f6}
.payroll-row-actions .danger:hover{background:#feeceb}

/* v12.8.126: vacaciones junto al nombre para compactar expediente */
.employee-vacation-inline{display:flex;flex-wrap:wrap;gap:6px 14px;margin:3px 0 4px}
.employee-vacation-inline span{font-size:10px;color:var(--muted);white-space:nowrap}
.employee-vacation-inline b{font-size:12px;color:var(--blue);margin-right:3px}
.employee-card-v121 .employee-main>p{margin-top:1px}

/* v12.8.127: vacaciones a la derecha del nombre, misma línea */
.employee-name-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.employee-name-row h4{margin:0}
.employee-name-row .employee-vacation-inline{display:flex;align-items:center;gap:14px;margin:0}
@media (min-width:900px){
  .employee-name-row{flex-wrap:nowrap}
}

/* v12.8.129 — horario más claro */
.schedule-day{display:flex;align-items:center;gap:7px}
.schedule-day small{font-size:9px;color:var(--muted);font-weight:600;margin-left:2px}
.schedule-row.is-rest{opacity:.48;background:#fafafa}
.schedule-row.is-rest .schedule-day small::after{content:' · Descanso';font-weight:700}

/* v12.8.130 — subir encabezado de Planilla y aprovechar espacio */
.payroll-hero{
  margin-top:-10px;
}
.payroll-hero + .metrics{
  margin-top:10px;
}
@media(min-width:900px){
  .payroll-hero{
    margin-top:-18px;
  }
}

/* v12.8.132 — Planilla sin espacio superior vacío */
.topbar.topbar-empty{display:none}
.topbar.topbar-empty + .content{padding-top:8px}
.topbar.topbar-empty + .content .payroll-hero{margin-top:0}
@media(min-width:900px){
  .topbar.topbar-empty + .content{padding-top:8px}
  .topbar.topbar-empty + .content .payroll-hero{margin-top:0}
}

/* v12.8.133 — Inventario usa catálogo completo aun con carga cero */
.inventory-edit-table .inventory-load-input,
.inventory-edit-table .inventory-return-input{
  width:88px;
  min-width:72px;
  text-align:center;
}
.inventory-edit-table .inventory-return-input{
  border-color:#cbd5e1;
}


/* v12.8.137 — Inventario: Cargado/Regreso iguales + trazabilidad como la app */
.inventory-edit-table .inventory-qty-cell{min-width:96px;vertical-align:middle;text-align:center}
.inventory-edit-table .inventory-qty-value{display:flex;align-items:center;justify-content:center;min-height:38px}
.inventory-edit-table .inventory-load-input.inventory-inline-number,
.inventory-edit-table .inventory-return-input.inventory-inline-number{
  width:82px!important;min-width:82px!important;height:38px!important;
  border:1px solid #d9e3ee!important;border-radius:12px!important;
  background:#f8fbff!important;box-shadow:none!important;padding:0 8px!important;
  text-align:center;font-size:15px;font-weight:850;color:var(--text)!important;
  appearance:textfield;-moz-appearance:textfield;
}
.inventory-edit-table .inventory-inline-number::-webkit-inner-spin-button,
.inventory-edit-table .inventory-inline-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.inventory-edit-table .inventory-load-input.inventory-inline-number:hover,
.inventory-edit-table .inventory-return-input.inventory-inline-number:hover{background:#f3f8fd!important;border-color:#c9d8e8!important}
.inventory-edit-table .inventory-load-input.inventory-inline-number:focus,
.inventory-edit-table .inventory-return-input.inventory-inline-number:focus{outline:0!important;background:#fff!important;border-color:#7db3ea!important;box-shadow:0 0 0 3px rgba(59,130,246,.10)!important}
.inventory-number-static{font-size:14px;font-weight:800;text-align:center}
.inventory-audit{display:none!important}
.inventory-trace-card{margin:18px 0 2px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 4px 14px rgba(30,64,96,.05)}
.inventory-trace-card h3{margin:0 0 14px;font-size:20px;line-height:1.2;color:var(--text)}
.inventory-trace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.inventory-trace-grid article{display:grid;gap:3px;padding:16px 18px;border:1px solid #dbe5ef;border-radius:16px;background:#f8fbff}
.inventory-trace-grid span{font-size:12px;font-weight:750;color:#66788a}
.inventory-trace-grid strong{font-size:18px;line-height:1.15;color:var(--text)}
.inventory-trace-grid small{font-size:12px;font-weight:700;color:#8594a3}
.inventory-trace-last{margin-top:14px;padding-top:13px;border-top:1px solid var(--line);font-size:13px;font-weight:700;color:#657687}
.inventory-trace-last b{color:#2f78c7}
@media(max-width:800px){
  .inventory-edit-table{min-width:700px}
  .inventory-edit-table .inventory-qty-cell{min-width:92px}
  .inventory-trace-grid{grid-template-columns:1fr}
  .inventory-trace-card{padding:16px;border-radius:18px}
}

/* v12.8.138: resumen de inventario como la app, sin iconos decorativos */
.inv-summary .inv-summary-card{display:block!important;padding:14px 18px!important}
.inv-summary .inv-summary-card>div{width:100%!important}
.inv-summary .inv-summary-card>div>span{font-size:12px!important;font-weight:700!important;color:#667587!important}
.inv-summary .inv-summary-card strong{font-size:22px!important;margin:5px 0 2px!important}

/* v12.8.142 — control diario real de asistencia */
.payroll-attendance-head{align-items:flex-end;gap:20px}.payroll-date-picker{min-width:190px;font-weight:700;color:var(--muted,#65758b)}.payroll-date-picker input{display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #d9e2ec;border-radius:12px;background:#fff;color:#172033;font:inherit}.payroll-daily-summary{margin:0 0 18px}.payroll-daily-summary>div{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:12px 14px;border-radius:14px;background:#f6f9fd;border:1px solid #e2eaf3}.payroll-daily-summary b{margin-right:auto}.payroll-daily-summary span{padding:6px 10px;border-radius:999px;background:#fff;border:1px solid #e3eaf2;color:#5e6b7c;font-size:.86rem;font-weight:700}.attendance-daily-list{display:grid;gap:14px}.attendance-person-card{border:1px solid #e1e8f0;border-radius:18px;background:#fff;padding:16px 18px;box-shadow:0 5px 18px rgba(20,52,90,.045)}.attendance-person-main{display:flex;align-items:center;gap:12px}.attendance-person-main h4{margin:0;font-size:1.05rem}.attendance-person-main p{margin:3px 0 0;color:#7a8797;font-size:.88rem}.attendance-status{margin-left:auto;padding:7px 11px;border-radius:999px;font-weight:800;font-size:.82rem;background:#eef2f6;color:#667485}.attendance-status.present{background:#e9f8ef;color:#16713d}.attendance-status.late{background:#fff4dc;color:#9a6510}.attendance-status.absent{background:#ffe9e9;color:#a52e2e}.attendance-status.permission{background:#eaf2ff;color:#2c63a9}.attendance-times{display:flex;gap:26px;flex-wrap:wrap;margin:13px 0 10px;padding:10px 0;border-top:1px solid #eef2f6;border-bottom:1px solid #eef2f6}.attendance-times span{min-width:90px}.attendance-times small{display:block;color:#8a97a8;font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:.03em}.attendance-times b{display:block;margin-top:2px;color:#243246}.attendance-note{margin:8px 0 10px;padding:9px 11px;border-radius:10px;background:#f7f9fc;color:#5f6e80;font-size:.88rem}.attendance-actions{display:flex;gap:8px;flex-wrap:wrap}.att-action{border:1px solid #dce5ef;background:#fff;color:#445468;border-radius:11px;padding:9px 13px;font-weight:800;cursor:pointer}.att-action:hover{transform:translateY(-1px)}.att-action.present{border-color:#bfe6cd;color:#197044;background:#f3fbf6}.att-action.late{border-color:#f0d79e;color:#91610f;background:#fffaf0}.att-action.absent{border-color:#efc2c2;color:#a43a3a;background:#fff7f7}.att-action.permission{border-color:#c8daf3;color:#3369aa;background:#f7faff}.att-action.checkout{margin-left:auto;border-color:#b8d0f2;color:#1d64b7;background:#edf5ff}@media(max-width:760px){.payroll-attendance-head{align-items:stretch;flex-direction:column}.payroll-date-picker{width:100%}.attendance-person-card{padding:14px}.attendance-actions .att-action{flex:1 1 45%}.att-action.checkout{margin-left:0}.attendance-times{gap:16px}}


/* v12.8.146 — Asistencia compacta: entrada/salida junto al estado */
.attendance-person-card{padding:13px 16px}
.attendance-person-main-compact{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:14px}
.attendance-person-identity{min-width:0}
.attendance-times-inline{display:flex;align-items:center;gap:22px;padding:0;margin-left:auto}
.attendance-times-inline span{min-width:76px}
.attendance-times-inline small{display:block;color:#8a97a8;font-weight:700;font-size:.68rem;text-transform:uppercase;letter-spacing:.03em;line-height:1}
.attendance-times-inline b{display:block;margin-top:4px;color:#243246;font-size:.95rem;white-space:nowrap}
.attendance-person-main-compact .attendance-status{margin-left:4px;white-space:nowrap}
.attendance-note-compact{margin:9px 0 8px;padding:7px 10px}
.attendance-person-card .attendance-actions{margin-top:9px}
@media(max-width:900px){
  .attendance-person-main-compact{grid-template-columns:auto 1fr auto}
  .attendance-times-inline{grid-column:2/4;justify-self:start;margin-left:0;margin-top:4px}
}
@media(max-width:600px){
  .attendance-person-main-compact{display:grid;grid-template-columns:auto 1fr auto;gap:10px}
  .attendance-times-inline{grid-column:1/4;width:100%;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid #eef2f6}
  .attendance-times-inline span{min-width:auto}
}

/* v12.8.147 — asistencia más compacta + auditoría visible */
.attendance-person-card{padding:10px 13px}
.attendance-person-main-compact{gap:10px}
.attendance-person-identity h4{font-size:1.02rem;line-height:1.15;margin:0 0 2px}
.attendance-person-identity p{font-size:.76rem;line-height:1.1;margin:0}
.attendance-times-inline{gap:15px}
.attendance-times-inline span{min-width:66px}
.attendance-times-inline small{font-size:.60rem}
.attendance-times-inline b{font-size:.84rem;margin-top:3px}
.attendance-status{font-size:.72rem;padding:5px 9px}
.attendance-person-card .attendance-actions{gap:7px;margin-top:7px}
.attendance-person-card .att-action{padding:7px 11px;font-size:.78rem;min-height:32px;border-radius:10px}
.attendance-person-card .edit-time{padding:7px 10px;font-size:.74rem}
.attendance-audit{margin-top:7px;padding-top:6px;border-top:1px solid #edf1f5;color:#6f7d8e;font-size:.72rem;line-height:1.25}
.attendance-audit b{color:#2e69b7}
.attendance-note-compact{margin:6px 0;padding:5px 8px;font-size:.75rem}

/* v12.8.151 — Configuración Hacienda WEB-ONLY */
.hc-form{display:grid;gap:14px}
.hc-card{background:#fff;border:1px solid #e5ebf3;border-radius:14px;padding:15px}
.hc-card h4{margin:0 0 12px}
.hc-top{display:grid;grid-template-columns:1fr minmax(220px,320px);gap:14px;align-items:end}
.hc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:11px}
.hc-field{display:grid;gap:6px;font-size:13px;font-weight:700}
.hc-field input,.hc-field select{box-sizing:border-box;width:100%;padding:10px;border:1px solid #dbe3ee;border-radius:10px;background:#fff;font:inherit}
.hc-toggle{display:flex;gap:9px;align-items:center;font-weight:800;min-height:42px}
.hc-secret-status{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:9px}
.hc-secret-status span{padding:6px 9px;border-radius:999px;background:#f3f7fb;font-size:12px;font-weight:800}
.hc-current{font-size:13px;margin-top:9px}
.hc-actions{display:flex;justify-content:flex-end}
@media(max-width:700px){.hc-top,.hc-grid{grid-template-columns:1fr}}

/* v12.8.152 — Configuración Hacienda más ordenada */
#fiscal{max-width:1180px;margin:0 auto}
.hc-form{display:grid;gap:18px}
.hc-card{
  background:#fff;
  border:1px solid #e6edf5;
  border-radius:16px;
  padding:18px 20px;
  box-shadow:0 3px 12px rgba(26,47,73,.04)
}
.hc-card h4{
  margin:0 0 15px;
  font-size:1rem;
  color:#25364a;
  padding-bottom:9px;
  border-bottom:1px solid #edf2f7
}
.hc-top{
  grid-template-columns:minmax(0,1fr) 260px;
  align-items:center;
  padding-top:16px;
  padding-bottom:16px
}
.hc-toggle{
  min-height:38px;
  padding:0;
  font-size:1rem
}
.hc-toggle input{width:18px;height:18px}
.hc-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px 16px
}
.hc-field{
  gap:7px;
  font-size:.76rem;
  color:#526276
}
.hc-field span{font-weight:800}
.hc-field input,.hc-field select{
  height:42px;
  padding:9px 11px;
  border-radius:9px;
  font-size:.92rem;
  color:#243447;
  background:#fbfcfe
}
.hc-field input:focus,.hc-field select:focus{
  outline:none;
  border-color:#6aa9e9;
  box-shadow:0 0 0 3px rgba(80,155,230,.12);
  background:#fff
}
.hc-secret-status{
  margin:0 0 12px;
  gap:8px
}
.hc-secret-status span{
  background:#f5f8fc;
  border:1px solid #e4ebf3;
  padding:6px 10px
}
.hc-current{
  margin-top:11px;
  padding-top:10px;
  border-top:1px solid #edf2f7;
  color:#64748b
}
.hc-actions{
  position:sticky;
  bottom:0;
  padding:12px 0 4px;
  background:linear-gradient(to top,#f7f9fc 72%,rgba(247,249,252,0))
}
.hc-actions .primary{
  min-width:210px;
  height:44px
}
@media(max-width:1100px){
  .hc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  #fiscal{max-width:none}
  .hc-card{padding:15px}
  .hc-top,.hc-grid{grid-template-columns:1fr}
  .hc-actions{position:static}
  .hc-actions .primary{width:100%}
}

/* v12.8.153 — Control de carga sin dependencia de derived() */
.derived-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.derived-card{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;padding:16px;border:1px solid #e6edf5;border-radius:14px;background:#fff}
.derived-card h4{margin:0 0 5px;font-size:1rem}
.derived-card p{margin:0;color:#6b7788;font-size:.86rem;line-height:1.4}
.derived-card a{grid-column:2;justify-self:start;margin-top:8px;font-weight:800;text-decoration:none}
.derived-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#f1f6fb;font-size:1.15rem}
@media(max-width:900px){.derived-grid{grid-template-columns:1fr}}

/* v12.8.154 — Reportes de vendedor con jerarquía visual tipo Planilla */
.reports-hero{
  margin-top:0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
}
.reports-hero-actions{
  display:grid;
  gap:9px;
  justify-items:end;
}
.reports-hero .route-report-quick,
.reports-hero .report-view-toggle{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.reports-hero .soft{
  min-height:38px;
  padding:0 15px;
  border-radius:10px;
}
.reports-hero .route-report-quick .soft.active,
.reports-hero .report-view-toggle .soft.active{
  background:#fff;
  border-color:#fff;
  color:var(--blue);
  box-shadow:0 7px 18px rgba(0,0,0,.10);
}
.reports-hero .route-report-quick .soft:not(.active),
.reports-hero .report-view-toggle .soft:not(.active){
  background:rgba(255,255,255,.92);
  border-color:rgba(255,255,255,.92);
  color:#425269;
}
.route-report-controls{
  margin-top:10px;
  padding:18px 20px;
}
.reports-panel-head{
  margin-bottom:15px;
}
.reports-panel-head h3{
  margin:3px 0 5px;
}
.reports-panel-head p{
  margin:0;
  font-size:12px;
}
.route-report-filters{
  grid-template-columns:minmax(180px,.65fr) minmax(220px,1fr) minmax(220px,1fr) 140px;
  gap:12px;
}
.route-report-filters input,
.route-report-filters select,
.route-report-filters .primary{
  height:42px;
}
@media(max-width:980px){
  .reports-hero{
    align-items:flex-start;
    flex-direction:column;
  }
  .reports-hero-actions{
    width:100%;
    justify-items:start;
  }
  .reports-hero .route-report-quick,
  .reports-hero .report-view-toggle{
    justify-content:flex-start;
  }
}
@media(max-width:760px){
  .route-report-filters{grid-template-columns:1fr}
  .reports-hero .route-report-quick,
  .reports-hero .report-view-toggle{
    width:100%;
  }
  .reports-hero .soft{
    flex:1 1 auto;
  }
}

/* v12.8.155: tarjetas de acceso del Inicio más compactas; las tarjetas enlazables ya no reservan espacio para flecha. */
.dashboard-home .home-metrics .metric-link{padding-right:14px}

/* v12.8.156: Inicio — seis tarjetas en una sola fila, incluido Inventario. */
.dashboard-home .home-metrics{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
}
.dashboard-home .home-metrics .metric-card{
  min-width:0;
  padding:10px 11px!important;
  gap:9px;
}
.dashboard-home .home-metrics .metric-icon{
  flex:0 0 32px;
  width:32px!important;
  height:32px!important;
}
.dashboard-home .home-metrics .metric-card>div:last-child{min-width:0}
.dashboard-home .home-metrics .metric-card span,
.dashboard-home .home-metrics .metric-card small{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media(max-width:1280px){
  .dashboard-home .home-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .dashboard-home .home-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* v12.8.157: mantener las 6 tarjetas del Inicio en una sola fila en laptops/escritorio. */
@media (min-width:901px){
  .dashboard-home .home-metrics{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
}
@media (max-width:900px) and (min-width:761px){
  .dashboard-home .home-metrics{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

/* v12.8.159 — Configuración Hacienda con cabecera profesional tipo Planilla */
.hacienda-hero{margin-bottom:12px}
.hacienda-hero .eyebrow{color:#39e0d0}
.hacienda-hero-status{display:flex;align-items:center;justify-content:flex-end}
.hacienda-hero-status span{display:inline-flex;align-items:center;height:38px;padding:0 15px;border:1px solid rgba(255,255,255,.30);border-radius:11px;background:rgba(255,255,255,.12);color:#fff;font-size:12px;font-weight:800;white-space:nowrap}
.topbar.topbar-empty + .content .hacienda-hero{margin-top:0}
#fiscal{max-width:none;margin:0}
@media(max-width:700px){.hacienda-hero-status{justify-content:flex-start}.hacienda-hero-status span{height:34px}}

/* v12.8.162 — Control de carga con estructura visual de la app */
.load-control-web-app{max-width:1180px;margin:14px auto 0;display:grid;gap:16px}
.lc-web-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 28px;border-radius:22px;background:#4d708d;color:#fff}
.lc-web-hero.safe{background:#316e85}.lc-web-hero.warning{background:#997429}.lc-web-hero.danger{background:#a84545}
.lc-web-hero span{display:block;font-size:.74rem;font-weight:900;letter-spacing:.12em;margin-bottom:8px}
.lc-web-hero strong{display:block;font-size:2.35rem;line-height:1;font-weight:900}
.lc-web-hero small{display:block;margin-top:9px;font-size:.92rem;color:rgba(255,255,255,.9)}
.lc-web-percent{font-size:2.25rem;font-weight:900}
.lc-web-progress{height:10px;border-radius:99px;background:#dde7ec;overflow:hidden;margin:0 10px}
.lc-web-progress i{display:block;height:100%;background:#2c8bc7;border-radius:inherit}
.lc-web-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.lc-web-kpis>div{background:#fff;border:1px solid #e1e7ee;border-radius:16px;padding:14px 16px}
.lc-web-kpis span{display:block;color:#758292;font-size:.79rem}.lc-web-kpis b{display:block;margin-top:4px;font-size:1.2rem;color:#203d59}
.lc-web-card{background:#fff;border:1px solid #e1e7ee;border-radius:20px;padding:20px}
.lc-web-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.lc-web-card-head h2{margin:0;font-size:1.22rem}.lc-web-card-head button{border:0;background:#edf6fd;color:#28688f;border-radius:12px;padding:10px 14px;font-weight:900}
.lc-web-vehicle{width:100%;border:1px solid #e5ebf1;background:#fbfcfe;border-radius:14px;padding:13px 15px;display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;text-align:left;margin-top:9px}
.lc-web-vehicle.active{border-color:#55a8df;background:#f2f9fe;box-shadow:0 0 0 2px rgba(74,157,214,.08)}
.lc-web-vehicle span b,.lc-web-vehicle span small{display:block}.lc-web-vehicle span small{color:#7d8996;margin-top:3px}.lc-web-vehicle strong{color:#244562}.lc-web-vehicle i{font-style:normal;color:#2d74a3;font-weight:800}
.lc-web-empty{padding:24px;text-align:center;border-radius:14px;background:#f7f9fb;color:#7f8994}
.lc-web-form{margin-top:15px;border-top:1px solid #e7ecf1;padding-top:16px}
.lc-web-form-head{display:flex;justify-content:space-between;align-items:center}.lc-web-form-head h3{margin:0}.lc-web-form-head button{border:0;width:36px;height:36px;border-radius:50%;font-size:1.4rem;background:#f1f5f8;color:#627180}
.lc-web-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.lc-web-form-grid label,.lc-web-filter-grid label{display:grid;gap:6px;font-size:.78rem;font-weight:800;color:#596878}
.lc-web-form-grid input,.lc-web-form-grid select,.lc-web-filter-grid input,.lc-web-filter-grid select{height:42px;border:1px solid #dbe3eb;border-radius:10px;padding:0 11px;background:#fbfcfe;font:inherit}
.lc-web-save-vehicle{width:100%;height:44px}
.lc-web-inventory{padding:0;overflow:hidden}
.lc-web-inventory-toggle{width:100%;border:0;background:#fff;padding:18px 20px;display:flex;justify-content:space-between;align-items:center;text-align:left}
.lc-web-inventory-toggle span b,.lc-web-inventory-toggle span small{display:block}.lc-web-inventory-toggle span b{font-size:1.1rem}.lc-web-inventory-toggle span small{color:#7b8792;margin-top:4px}.lc-web-inventory-toggle i{font-style:normal;color:#2b7ba8;font-size:1.25rem}
.lc-web-inventory-body{padding:0 20px 20px}
.lc-web-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}
.lc-web-summary-line{display:flex;justify-content:space-between;gap:12px;background:#f4f8fb;border-radius:12px;padding:11px 13px;margin-bottom:10px}.lc-web-summary-line b{color:#245f86}
.lc-web-products{border:1px solid #e6ebf0;border-radius:12px;overflow:hidden}
.lc-web-product{display:flex;justify-content:space-between;gap:16px;padding:11px 13px;border-bottom:1px solid #edf1f4}.lc-web-product:last-child{border-bottom:0}.lc-web-product span b,.lc-web-product span small{display:block}.lc-web-product span small{color:#84909a;margin-top:2px}.lc-web-product strong{white-space:nowrap}
.lc-web-full{width:100%;margin-top:12px;min-height:44px}
@media(max-width:760px){
 .load-control-web-app{margin-top:10px}.lc-web-hero{padding:20px;border-radius:18px}.lc-web-hero strong{font-size:2rem}.lc-web-percent{font-size:1.8rem}
 .lc-web-kpis{gap:8px}.lc-web-kpis>div{padding:12px 10px}.lc-web-form-grid,.lc-web-filter-grid{grid-template-columns:1fr}
 .lc-web-vehicle{grid-template-columns:1fr auto}.lc-web-vehicle i{grid-column:2}
}

/* v12.8.164 — Control de carga compacto para escritorio */
@media(min-width:761px){
  .load-control-web-app{max-width:none;margin:10px auto 0;gap:10px}
  .control-carga-hero{padding:14px 20px!important;min-height:0!important}
  .control-carga-hero h2{font-size:1.35rem!important;margin:2px 0!important}
  .control-carga-hero p{font-size:.82rem!important;margin:2px 0 0!important}
  .control-carga-hero .eyebrow{font-size:.65rem!important}

  .lc-web-hero{padding:14px 20px;border-radius:16px;min-height:86px}
  .lc-web-hero span{font-size:.66rem;margin-bottom:5px}
  .lc-web-hero strong{font-size:1.72rem}
  .lc-web-hero small{font-size:.78rem;margin-top:5px}
  .lc-web-percent{font-size:1.65rem}

  .lc-web-progress{height:6px;margin:0 6px}
  .lc-web-kpis{gap:8px}
  .lc-web-kpis>div{padding:9px 13px;border-radius:12px;min-height:58px}
  .lc-web-kpis span{font-size:.7rem}
  .lc-web-kpis b{font-size:1rem;margin-top:2px}

  .lc-web-card{padding:14px 16px;border-radius:15px}
  .lc-web-card-head{margin-bottom:8px}
  .lc-web-card-head h2{font-size:1.05rem}
  .lc-web-card-head button{padding:7px 11px;border-radius:9px;font-size:.78rem}
  .lc-web-empty{padding:14px;font-size:.8rem}

  .lc-web-vehicle{padding:9px 12px;margin-top:6px;border-radius:10px}
  .lc-web-vehicle span b{font-size:.88rem}
  .lc-web-vehicle span small,.lc-web-vehicle strong,.lc-web-vehicle i{font-size:.75rem}

  .lc-web-inventory-toggle{padding:12px 16px}
  .lc-web-inventory-toggle span b{font-size:.96rem}
  .lc-web-inventory-toggle span small{font-size:.72rem;margin-top:2px}
  .lc-web-inventory-body{padding:0 16px 14px}
}

/* v12.8.165 — Inicio más profesional: KPIs, accesos rápidos, gráfico y sistema visual */

/* 2) Seis tarjetas KPI más compactas y uniformes */
.dashboard-kpis,
.kpi-grid,
.home-kpis,
.summary-grid{
  gap:8px!important;
}
.dashboard-kpis .metric,
.dashboard-kpis .stat-card,
.kpi-grid .metric,
.kpi-grid .stat-card,
.home-kpis .metric,
.home-kpis .stat-card,
.summary-grid .metric,
.summary-grid .stat-card{
  min-height:68px!important;
  padding:10px 12px!important;
  border-radius:12px!important;
}
.dashboard-kpis .metric small,
.dashboard-kpis .stat-card small,
.kpi-grid .metric small,
.kpi-grid .stat-card small,
.home-kpis .metric small,
.home-kpis .stat-card small,
.summary-grid .metric small,
.summary-grid .stat-card small{
  font-size:.68rem!important;
  line-height:1.1!important;
}
.dashboard-kpis .metric strong,
.dashboard-kpis .stat-card strong,
.kpi-grid .metric strong,
.kpi-grid .stat-card strong,
.home-kpis .metric strong,
.home-kpis .stat-card strong,
.summary-grid .metric strong,
.summary-grid .stat-card strong{
  font-size:1.05rem!important;
  line-height:1.1!important;
}
.dashboard-kpis .metric p,
.dashboard-kpis .stat-card p,
.kpi-grid .metric p,
.kpi-grid .stat-card p,
.home-kpis .metric p,
.home-kpis .stat-card p,
.summary-grid .metric p,
.summary-grid .stat-card p{
  margin-top:3px!important;
  font-size:.67rem!important;
  line-height:1.1!important;
}

/* fallback for the current six dashboard cards */
.home-mini-card,
.dashboard-mini-card,
.dashboard-summary-card{
  min-height:68px!important;
  padding:10px 12px!important;
  border-radius:12px!important;
}
.home-mini-card h3,
.dashboard-mini-card h3,
.dashboard-summary-card h3{
  font-size:1.05rem!important;
  margin:2px 0!important;
}
.home-mini-card p,
.dashboard-mini-card p,
.dashboard-summary-card p{
  font-size:.67rem!important;
  margin:2px 0 0!important;
}

/* 3) Acciones rápidas: filas clicables, iconos discretos, sin flechas */
.quick-actions,
.quick-list,
.dashboard-quick-actions{
  border-radius:14px!important;
}
.quick-actions a,
.quick-list a,
.dashboard-quick-actions a,
.quick-actions .quick-item,
.quick-list .quick-item,
.dashboard-quick-actions .quick-item{
  position:relative;
  display:grid!important;
  grid-template-columns:24px 1fr!important;
  align-items:center!important;
  gap:9px!important;
  padding:10px 8px!important;
  border-radius:10px!important;
}
.quick-actions a:hover,
.quick-list a:hover,
.dashboard-quick-actions a:hover,
.quick-actions .quick-item:hover,
.quick-list .quick-item:hover,
.dashboard-quick-actions .quick-item:hover{
  background:#f4f8fc!important;
}
.quick-actions a::after,
.quick-list a::after,
.dashboard-quick-actions a::after,
.quick-actions .quick-item::after,
.quick-list .quick-item::after,
.dashboard-quick-actions .quick-item::after{
  content:none!important;
}
.quick-actions .arrow,
.quick-list .arrow,
.dashboard-quick-actions .arrow,
.quick-actions .chevron,
.quick-list .chevron,
.dashboard-quick-actions .chevron{
  display:none!important;
}
.quick-actions svg,
.quick-list svg,
.dashboard-quick-actions svg,
.quick-actions .icon,
.quick-list .icon,
.dashboard-quick-actions .icon{
  width:18px!important;
  height:18px!important;
  opacity:.82;
}
.quick-actions b,
.quick-list b,
.dashboard-quick-actions b{
  font-size:.88rem!important;
}
.quick-actions small,
.quick-list small,
.dashboard-quick-actions small{
  font-size:.68rem!important;
  margin-top:2px!important;
}

/* 6) Ventas por hora: más área útil para las barras, menos aire muerto */
.hourly-card,
.sales-hour-card,
.dashboard-chart-card,
.chart-panel{
  padding:14px 16px!important;
  border-radius:14px!important;
}
.hourly-card .chart-wrap,
.sales-hour-card .chart-wrap,
.dashboard-chart-card .chart-wrap,
.chart-panel .chart-wrap,
.hourly-chart,
.sales-hour-chart{
  min-height:190px!important;
  height:190px!important;
}
.hourly-card canvas,
.sales-hour-card canvas,
.dashboard-chart-card canvas,
.chart-panel canvas{
  max-height:190px!important;
}
.hourly-card .panel-head,
.sales-hour-card .panel-head,
.dashboard-chart-card .panel-head,
.chart-panel .panel-head{
  margin-bottom:6px!important;
}
.hourly-card h3,
.sales-hour-card h3,
.dashboard-chart-card h3,
.chart-panel h3{
  margin:2px 0 0!important;
}
.hourly-card .hour-label,
.sales-hour-card .hour-label,
.dashboard-chart-card .hour-label{
  font-size:.67rem!important;
}
.hourly-card .hour-amount,
.sales-hour-card .hour-amount,
.dashboard-chart-card .hour-amount{
  font-size:.62rem!important;
}

/* 7) Sistema visual unificado: radios, bordes y sombras */
.panel,
.card,
.metric,
.stat-card,
.home-mini-card,
.dashboard-mini-card,
.dashboard-summary-card,
.quick-actions,
.quick-list,
.dashboard-quick-actions,
.hourly-card,
.sales-hour-card,
.dashboard-chart-card,
.chart-panel{
  border-radius:14px!important;
  border-color:#e6edf4!important;
  box-shadow:0 3px 12px rgba(25,45,70,.045)!important;
}
.panel:hover,
.card:hover,
.metric:hover,
.stat-card:hover{
  box-shadow:0 5px 16px rgba(25,45,70,.06)!important;
}

@media(min-width:1100px){
  /* Mantener seis KPIs en una fila y realmente compactos */
  .dashboard-kpis,
  .kpi-grid,
  .home-kpis,
  .summary-grid{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
}

/* v12.8.166 — Control de carga con dimensiones coherentes con el resto de la web */
@media(min-width:761px){
  .load-control-web-app{
    max-width:1180px!important;
    margin:12px auto 0!important;
    gap:12px!important;
  }

  .control-carga-hero{
    max-width:1180px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Peso de salida ya no ocupa una franja gigante */
  .lc-web-hero{
    max-width:1180px!important;
    margin:0 auto!important;
    padding:12px 18px!important;
    min-height:72px!important;
    border-radius:14px!important;
  }
  .lc-web-hero strong{font-size:1.55rem!important}
  .lc-web-percent{font-size:1.45rem!important}

  /* KPIs con tamaño de tarjeta normal */
  .lc-web-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .lc-web-kpis>div{
    min-height:52px!important;
    padding:9px 12px!important;
    border-radius:12px!important;
  }

  /* Tarjetas principales dentro del mismo ancho de contenido */
  .lc-web-card{
    padding:14px 16px!important;
    border-radius:14px!important;
  }

  /* Formulario de vehículo: ancho razonable, no pantalla completa */
  .lc-web-form{
    max-width:900px!important;
    margin:14px auto 0!important;
  }
  .lc-web-form-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }

  /* Guardar con tamaño de botón normal */
  .lc-web-save-vehicle{
    width:auto!important;
    min-width:180px!important;
    height:40px!important;
    padding:0 18px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-left:auto!important;
    border-radius:10px!important;
  }

  /* Botones de acciones dentro de carga */
  .lc-web-full{
    width:auto!important;
    min-width:190px!important;
    min-height:40px!important;
    padding:0 18px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-top:10px!important;
    margin-right:8px!important;
    border-radius:10px!important;
  }

  .lc-web-inventory-body{
    padding:0 16px 14px!important;
  }

  .lc-web-filter-grid{
    max-width:760px!important;
  }
}

@media(max-width:760px){
  .lc-web-save-vehicle,
  .lc-web-full{
    width:100%!important;
  }
}

/* v12.8.167 — Acciones rápidas sin flechas */
.home-quick #quickLinks a{
  grid-template-columns:1fr!important;
  padding-right:10px!important;
}
.home-quick #quickLinks a>i{
  display:none!important;
}


/* v12.8.169 — Inicio: saludo y marca más compactos */
@media (min-width: 900px){
  .home-hero,
  .dashboard-hero,
  .inicio-hero{
    min-height: 0 !important;
  }
  .home-hero .hero-copy,
  .dashboard-hero .hero-copy,
  .inicio-hero .hero-copy{
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }
  .home-hero .eyebrow,
  .dashboard-hero .eyebrow,
  .inicio-hero .eyebrow{
    margin-bottom: 5px !important;
    line-height: 1 !important;
  }
  .home-hero h1,
  .dashboard-hero h1,
  .inicio-hero h1{
    margin: 0 !important;
    line-height: 1.08 !important;
  }
}

@media (min-width:900px){
  .v169-compact-brand{margin:0 0 4px!important;line-height:1!important}
  .v169-compact-greeting{margin:0!important;line-height:1.05!important}
}

/* v12.8.170 — Control de carga: resumen horizontal y balanceado */
@media (min-width: 900px){
  .load-control-web-app{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  /* El resumen deja de quedar flotando solo en el centro */
  .lc-web-hero{
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    min-height:64px!important;
    padding:10px 14px!important;
    border-radius:12px!important;
  }

  /* Peso + Disponible + Exceso + Productos en una sola banda visual */
  .load-control-web-app{
    position:relative;
  }
  .lc-web-kpis{
    margin-top:-74px!important;
    margin-left:330px!important;
    min-height:64px!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    position:relative!important;
    z-index:2!important;
  }
  .lc-web-hero{
    width:310px!important;
    position:relative!important;
    z-index:3!important;
  }
  .lc-web-kpis>div{
    min-height:64px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding:9px 12px!important;
    border-radius:12px!important;
    box-shadow:none!important;
  }
  .lc-web-kpis span{font-size:.68rem!important}
  .lc-web-kpis b{font-size:.98rem!important}

  /* Recuperar el flujo normal después de la fila resumen */
  .lc-web-card{
    margin-top:2px!important;
  }

  /* Vehículo y carga quedan más cerca del resumen */
  .lc-web-card-head{
    margin-bottom:7px!important;
  }
  .lc-web-inventory-toggle{
    padding:11px 14px!important;
  }
}

@media (min-width: 900px) and (max-width: 1120px){
  .lc-web-hero{width:270px!important}
  .lc-web-kpis{margin-left:290px!important}
}

@media (max-width:899px){
  .lc-web-kpis{margin:0!important}
  .lc-web-hero{width:auto!important}
}

/* v12.8.172 — Inicio: CUQUITA y saludo realmente compactos */
@media (min-width: 851px){
  .command-hero{
    min-height:98px!important;
    padding-top:12px!important;
    padding-bottom:12px!important;
    grid-template-columns:minmax(245px,.78fr) minmax(0,2.15fr) 132px!important;
  }

  .command-intro{
    justify-content:flex-start!important;
    align-self:stretch!important;
    padding-top:3px!important;
    padding-right:16px!important;
  }

  .command-intro-top{
    margin:0 0 7px!important;
    min-height:12px!important;
    align-items:flex-start!important;
  }

  .command-intro .command-brand{
    font-size:8px!important;
    line-height:1!important;
    letter-spacing:.16em!important;
    margin:0!important;
    padding:0!important;
  }

  .command-intro h2.greeting-line{
    font-size:18px!important;
    line-height:1.05!important;
    margin:0!important;
    gap:7px!important;
    white-space:nowrap!important;
  }

  .command-intro h2.greeting-line span{
    font-size:18px!important;
    line-height:1.05!important;
  }

  .command-intro .greeting-icon{
    width:17px!important;
    height:17px!important;
  }

  .command-eye{
    transform:scale(.82);
    transform-origin:top right;
  }
}

@media (min-width: 851px) and (max-width: 1200px){
  .command-hero{
    grid-template-columns:minmax(220px,.74fr) minmax(0,2fr) 122px!important;
  }
  .command-intro h2.greeting-line,
  .command-intro h2.greeting-line span{
    font-size:16px!important;
  }
  .command-intro .greeting-icon{
    width:16px!important;
    height:16px!important;
  }
}

/* v12.8.180 — Inicio: saludo compacto + Pedidos en Command Center */
@media (min-width:851px){
  .command-hero{
    grid-template-columns:minmax(205px,.58fr) minmax(0,2.45fr) 122px!important;
  }
  .command-intro{padding-right:10px!important}
  .command-intro-top{margin-bottom:5px!important}
  .command-intro .command-brand{font-size:7.5px!important}
  .command-intro h2.greeting-line,
  .command-intro h2.greeting-line span{font-size:15px!important}
  .command-intro .greeting-icon{width:15px!important;height:15px!important}
  .command-module{padding-left:9px!important;padding-right:9px!important}
  .command-module:after{left:9px!important}
  .command-module strong{font-size:13px!important}
  .command-module small{font-size:8px!important}
}
@media (min-width:851px) and (max-width:1200px){
  .command-hero{grid-template-columns:minmax(185px,.54fr) minmax(0,2.5fr) 112px!important}
  .command-actions{width:112px!important}
  .command-hero .command-sale{width:100px!important;padding-left:10px!important;padding-right:10px!important}
  .command-intro h2.greeting-line,
  .command-intro h2.greeting-line span{font-size:14px!important}
}

/* v12.8.182: icono de privacidad real, sin apariencia de circulo */
.command-eye svg{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.command-eye svg circle{fill:none}

/* v12.8.183 — Restaurar acceso Ver estadísticas en Inicio */
.home-stats-link{
  margin-left:auto;
  font-size:.78rem;
  font-weight:800;
  color:#2584bc;
  text-decoration:none;
  white-space:nowrap;
}
.home-stats-link:hover{
  text-decoration:underline;
}

/* v12.8.184 — selector Hoy / Semana / Mes del gráfico de Inicio */
.home-period-tabs{display:flex;align-items:center;gap:4px;margin-bottom:4px}
.home-period{border:0;background:transparent;padding:3px 8px;border-radius:7px;font:inherit;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#8190a0;cursor:pointer}
.home-period:hover{background:#eef7fb;color:#217cae}
.home-period.active{background:#e5f6fb;color:#0b91b8}
#homeSalesChart.month-view{gap:4px;overflow-x:auto;padding-bottom:4px}
#homeSalesChart.month-view>div{min-width:25px}
#homeSalesChart.month-view b{font-size:.64rem}
#homeSalesChart.month-view small{font-size:.55rem}

/* v12.8.185 — Semana real + métricas por período + mes por semanas */
#homeSalesChart.month-view{overflow:visible!important;gap:18px!important}
#homeSalesChart.month-view>div{min-width:70px!important;flex:1 1 0!important}
#homeSalesChart.month-view b{font-size:.72rem!important}
#homeSalesChart.month-view small{font-size:.61rem!important;white-space:nowrap}

/* v12.8.193 — Reportes de vendedor: Día / Semana / Mes */
.route-report-filters-periods{
  display:grid!important;
  grid-template-columns:minmax(110px,.75fr) minmax(130px,.9fr) minmax(150px,1fr) minmax(190px,1.25fr) minmax(170px,1.1fr) auto!important;
  gap:10px!important;
  align-items:end!important;
}
.route-report-filters-periods label{min-width:0!important}
.route-report-filters-periods select,
.route-report-filters-periods input{width:100%!important}
.reports-hero-actions{justify-content:flex-end!important}
@media(max-width:1180px){
 .route-report-filters-periods{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .route-report-filters-periods .primary{width:max-content!important}
}

/* v12.8.196 — Reportes: filtros comienzan desde el borde izquierdo */
.route-report-controls{
  display:block!important;
  padding:12px 14px!important;
}
.route-report-controls .reports-panel-head{
  margin:0 0 10px!important;
}
.route-report-filters.route-report-filters-periods{
  display:grid!important;
  grid-template-columns:120px 140px 155px minmax(180px,1fr) minmax(170px,1fr) 105px!important;
  gap:8px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  justify-content:start!important;
  align-items:end!important;
}
.route-report-filters.route-report-filters-periods label{
  margin:0!important;
}
@media(max-width:1180px){
 .route-report-filters.route-report-filters-periods{
   grid-template-columns:repeat(3,minmax(160px,1fr))!important;
 }
}

/* v12.8.197 — carga perceptiblemente más rápida en reportes */
.report-fast-loading{
  min-height:110px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.report-fast-loading small{
  color:#7c8997;
  font-size:.76rem;
  font-weight:700;
}

/* v12.8.198 — Control de carga: bloques normales y peso de salida 50% más compacto */
@media (min-width: 900px){
  .load-control-web-app{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:9px!important;
  }

  /* Peso de salida: deja de ser una franja grande y pasa a una etiqueta compacta. */
  .lc-web-hero{
    width:270px!important;
    max-width:270px!important;
    min-height:0!important;
    margin:0!important;
    padding:7px 11px!important;
    border-radius:10px!important;
    gap:10px!important;
  }
  .lc-web-hero span{
    font-size:.55rem!important;
    margin-bottom:2px!important;
    letter-spacing:.09em!important;
  }
  .lc-web-hero strong{
    font-size:1.05rem!important;
    line-height:1.05!important;
  }
  .lc-web-hero small{
    margin-top:2px!important;
    font-size:.62rem!important;
    line-height:1.15!important;
  }
  .lc-web-percent{
    font-size:1rem!important;
  }
  .lc-web-progress{
    width:270px!important;
    height:4px!important;
    margin:0!important;
  }

  /* Los indicadores quedan debajo, sin reconstruir una banda de lado a lado. */
  .lc-web-kpis{
    width:min(620px,100%)!important;
    margin:0!important;
    min-height:0!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .lc-web-kpis>div{
    min-height:46px!important;
    padding:7px 10px!important;
  }
  .lc-web-kpis span{font-size:.62rem!important}
  .lc-web-kpis b{font-size:.88rem!important}

  /* Vehículo y Carga de inventario vuelven a bloques normales, uno debajo del otro. */
  .load-control-web-app > .lc-web-card{
    width:min(720px,100%)!important;
    max-width:720px!important;
    margin:0!important;
  }
  .lc-web-vehicle{
    width:min(560px,100%)!important;
    max-width:560px!important;
  }
  .lc-web-inventory{
    width:min(720px,100%)!important;
    max-width:720px!important;
  }
}

/* v12.8.199 — Control de carga: toda la información de peso vive en la fila de cada vehículo */
.load-control-web-app > .lc-web-hero,
.load-control-web-app > .lc-web-progress,
.load-control-web-app > .lc-web-kpis{display:none!important}

.lc-web-vehicles-card{width:min(980px,100%)!important;max-width:980px!important}
.lc-web-vehicle{
  width:100%!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:minmax(190px,1.35fr) repeat(3,minmax(120px,.72fr)) auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:10px 12px!important;
  border-radius:12px!important;
}
.lc-web-vehicle-id{min-width:0}
.lc-web-vehicle-id b,.lc-web-vehicle-id small{display:block}
.lc-web-vehicle-id b{font-size:.92rem}
.lc-web-vehicle-id small{font-size:.72rem;color:#7d8996;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lc-web-vehicle-stat{
  min-width:0;
  padding-left:10px;
  border-left:1px solid #e7edf2;
}
.lc-web-vehicle-stat small,.lc-web-vehicle-stat b{display:block}
.lc-web-vehicle-stat small{font-size:.62rem!important;text-transform:uppercase;letter-spacing:.05em;color:#7b8793!important;margin:0 0 2px!important}
.lc-web-vehicle-stat b{font-size:.84rem!important;line-height:1.15;color:#244562}
.lc-web-vehicle-stat.has-excess b{color:#b53f3f!important}
.lc-web-vehicle.danger{border-color:#e6abab;background:#fff7f7}
.lc-web-vehicle.warning{border-color:#e7cf91;background:#fffdf5}
.lc-web-vehicle.safe.active{border-color:#55a8df;background:#f2f9fe}
.lc-web-vehicle i{font-size:.74rem!important;white-space:nowrap}

@media (max-width:899px){
  .lc-web-vehicle{
    grid-template-columns:minmax(150px,1fr) repeat(3,minmax(88px,.7fr)) auto!important;
    overflow-x:auto;
  }
  .lc-web-vehicle-stat{padding-left:8px}
}
@media (max-width:650px){
  .lc-web-vehicle{
    grid-template-columns:1fr auto!important;
    gap:7px 10px!important;
  }
  .lc-web-vehicle-id{grid-column:1/2}
  .lc-web-vehicle i{grid-column:2;grid-row:1}
  .lc-web-vehicle-stat{border-left:0;border-top:1px solid #e7edf2;padding:7px 0 0!important}
  .lc-web-vehicle-stat:nth-of-type(2){grid-column:1/2}
  .lc-web-vehicle-stat:nth-of-type(3){grid-column:2/3}
  .lc-web-vehicle-stat:nth-of-type(4){grid-column:1/3}
}

/* v12.8.200 — Control de carga: fondo blanco continuo sin estirar la fila del vehículo */
@media (min-width:900px){
  .load-control-web-app{
    width:100%!important;
    max-width:1180px!important;
    min-height:calc(100vh - 285px)!important;
    box-sizing:border-box!important;
    background:#fff!important;
    border:1px solid #e1e7ee!important;
    border-radius:18px!important;
    padding:16px 18px 26px!important;
    align-content:flex-start!important;
  }

  /* Las tarjetas dejan de verse "cortadas": el blanco lo aporta el panel completo. */
  .load-control-web-app > .lc-web-card{
    background:transparent!important;
    border-color:transparent!important;
    box-shadow:none!important;
  }

  /* Se conservan exactamente los anchos operativos: no estirar "patrona". */
  .lc-web-vehicles-card{
    width:min(980px,100%)!important;
    max-width:980px!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .lc-web-vehicle{
    width:100%!important;
    max-width:none!important;
  }
  .lc-web-inventory{
    width:min(720px,100%)!important;
    max-width:720px!important;
  }
}

/* v12.8.202 — vendedor diario separado del vehículo */
.lc-web-vehicle{grid-template-columns:minmax(230px,1fr) repeat(3,minmax(125px,auto)) minmax(118px,auto) auto!important}
.lc-web-vehicle-assign{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding-left:12px;border-left:1px solid #e7edf2;min-width:112px}
.lc-web-vehicle-assign small{font-size:.66rem!important;color:#6d7a86!important;white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis}
.lc-web-vehicle-assign button,.lc-web-edit-btn{border:0;background:#eaf4fb;color:#236a99;border-radius:8px;padding:6px 9px;font-size:.72rem;font-weight:800;cursor:pointer}
.lc-web-edit-btn{background:transparent;color:#2d74a3;padding:6px}
.lc-web-assign-form{margin-top:10px;padding:12px;border:1px solid #dce8f1;border-radius:12px;background:#f8fbfd;display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,260px) auto auto;gap:9px;align-items:center}
.lc-web-assign-form b,.lc-web-assign-form small{display:block}.lc-web-assign-form small{margin-top:2px;color:#74828f;font-size:.72rem}
.lc-web-assign-form select{width:100%}
@media(max-width:900px){.lc-web-vehicle{grid-template-columns:1fr 1fr!important}.lc-web-vehicle-id{grid-column:1/2}.lc-web-vehicle-stat,.lc-web-vehicle-assign{border-left:0;border-top:1px solid #e7edf2;padding:7px 0 0!important}.lc-web-vehicle-assign{grid-column:1/2}.lc-web-edit-btn{grid-column:2;grid-row:1;justify-self:end}.lc-web-assign-form{grid-template-columns:1fr 1fr}.lc-web-assign-form>div,.lc-web-assign-form select{grid-column:1/-1}}

/* v12.8.203 — Control de carga adopta el lenguaje visual de Planilla */
.load-control-web-app.lc-payroll-format{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:block!important;
}
.lc-payroll-format .lc-web-metrics{
  width:100%;
  margin:0 0 10px;
}
.lc-web-tabs{margin:0 0 10px!important}
.lc-web-pane{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  box-sizing:border-box;
}
.lc-web-pane[hidden]{display:none!important}
.lc-web-panel-head{align-items:flex-end!important}
.lc-web-vehicle-list{display:flex;flex-direction:column;gap:8px}
.lc-web-vehicle{
  background:#fff!important;
  border:1px solid #e4eaf0!important;
  box-shadow:0 2px 8px rgba(31,54,76,.035)!important;
  padding:12px 14px!important;
  min-height:74px;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.lc-web-vehicle:hover{border-color:#cbdce9!important;box-shadow:0 4px 12px rgba(31,54,76,.055)!important}
.lc-web-vehicle.active{border-color:#88bee1!important;background:#f8fcff!important}
.lc-web-vehicle-id b{font-size:1rem!important;color:#263747}
.lc-web-vehicle-id small{font-size:.74rem!important}
.lc-web-vehicle-stat small{font-size:.6rem!important}
.lc-web-vehicle-stat b{font-size:.87rem!important;color:#293f51}
.lc-web-vehicle-assign button,.lc-web-edit-btn{
  min-height:30px;
  border-radius:9px;
}
.lc-web-form,.lc-web-assign-form{
  margin-top:10px!important;
  border:1px solid #dfe7ee!important;
  border-radius:14px!important;
  background:#f9fbfd!important;
}
.lc-web-inventory-body-planilla{padding:0!important}
.lc-web-inventory-body-planilla .lc-web-filter-grid{margin:0 0 12px!important}
.lc-web-inventory-body-planilla .lc-web-summary-line{
  border:1px solid #e6ebf0;
  border-radius:12px;
  padding:11px 13px!important;
  margin-bottom:9px;
  background:#fbfcfd;
}
.lc-web-products{display:flex;flex-direction:column;gap:6px}
.lc-web-product{
  border:1px solid #e8edf2!important;
  border-radius:10px!important;
  padding:9px 11px!important;
  background:#fff;
}
.lc-web-action-row{display:flex;gap:9px;margin-top:12px;align-items:center}
.lc-web-action-row .lc-web-full{width:auto!important;flex:1;margin:0!important}
.lc-web-action-row .danger{flex:0 0 auto!important}

@media (min-width:900px){
  .control-carga-hero{margin-bottom:10px!important}
  .lc-payroll-format .lc-web-vehicle{
    grid-template-columns:minmax(220px,1.35fr) repeat(3,minmax(115px,.72fr)) minmax(125px,.75fr) 64px!important;
  }
}
@media (max-width:899px){
  .lc-payroll-format .lc-web-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .lc-payroll-format .lc-web-vehicle{
    grid-template-columns:minmax(170px,1fr) repeat(3,minmax(100px,.72fr)) minmax(118px,.7fr) 58px!important;
  }
}
@media (max-width:680px){
  .control-carga-hero{align-items:flex-start!important}
  .control-carga-hero .payroll-actions{width:100%;margin-top:10px}
  .control-carga-hero .payroll-actions button{width:100%}
  .lc-payroll-format .lc-web-metrics{grid-template-columns:1fr 1fr!important}
  .lc-web-panel-head{align-items:flex-start!important;gap:10px}
  .lc-web-panel-head .payroll-date-picker{width:100%}
  .lc-payroll-format .lc-web-vehicle{
    grid-template-columns:1fr 1fr!important;
    gap:9px 12px!important;
  }
  .lc-payroll-format .lc-web-vehicle-id{grid-column:1/3!important}
  .lc-payroll-format .lc-web-vehicle-stat{border-left:0!important;border-top:1px solid #edf1f4;padding:8px 0 0!important}
  .lc-payroll-format .lc-web-vehicle-stat:nth-child(4){grid-column:1/3!important}
  .lc-payroll-format .lc-web-vehicle-assign{grid-column:1/2;border-left:0!important;padding-left:0!important}
  .lc-payroll-format .lc-web-edit-btn{grid-column:2/3;align-self:end;justify-self:end}
  .lc-web-action-row{flex-direction:column}
  .lc-web-action-row .lc-web-full{width:100%!important}
}

/* v12.8.204 — Control de carga realmente alineado con Planilla */
.load-control-web-app.lc-payroll-format{display:block!important;width:100%!important}
.lc-payroll-format .lc-web-metrics{margin:0 0 14px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
.lc-payroll-format .metric-card{min-height:82px!important;padding:13px 16px!important}
.lc-web-tabs{margin:0 0 14px!important}
.lc-web-pane{padding:20px!important;border-radius:15px!important}
.lc-web-panel-head{margin-bottom:16px!important;align-items:center!important}
.lc-web-vehicle-list{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
.lc-vehicle-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 17px;box-shadow:0 2px 9px rgba(16,40,66,.035);transition:.15s}
.lc-vehicle-card:hover{border-color:#b8d4e8;box-shadow:0 5px 14px rgba(16,40,66,.055)}
.lc-vehicle-card.active{border-color:#83bde5;background:#fbfdff;box-shadow:0 0 0 2px rgba(19,120,209,.06)}
.lc-vehicle-head{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:13px;align-items:start}
.lc-vehicle-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eef6fc;color:#1679bd;font-weight:850;font-size:17px}
.lc-vehicle-main{min-width:0}
.lc-vehicle-title-row{display:flex;align-items:center;gap:12px;min-width:0}
.lc-vehicle-title-row h4{margin:0;font-size:16px;letter-spacing:.1px;color:#263747;text-transform:none}
.lc-vehicle-capacity{font-size:10px;color:#6d8ba1;background:#f0f7fb;padding:4px 8px;border-radius:999px;white-space:nowrap}
.lc-vehicle-main p{margin:3px 0 10px;color:var(--muted);font-size:11px}
.lc-vehicle-facts{display:grid;grid-template-columns:repeat(4,minmax(105px,1fr));gap:18px}
.lc-vehicle-facts span{display:grid;gap:2px;min-width:0}
.lc-vehicle-facts small{font-size:9px;text-transform:uppercase;letter-spacing:.45px;color:#8c98a5;font-weight:800}
.lc-vehicle-facts b{font-size:13px;color:#334b5e;white-space:nowrap}
.lc-vehicle-facts .has-excess b{color:#bc4242}
.lc-vehicle-actions{display:flex;align-items:center;gap:8px;align-self:center}
.lc-vehicle-actions .soft,.lc-vehicle-actions .lc-web-edit-btn{min-height:34px!important;padding:8px 11px!important;border-radius:9px!important;font-size:11px!important;font-weight:800!important;background:#eef3f7!important;color:#3d566d!important}
.lc-vehicle-actions .pill{white-space:nowrap}
.lc-web-assign-form,.lc-web-form{margin-top:12px!important;padding:14px!important}
.lc-web-inventory-body-planilla{padding:0!important}
.lc-web-inventory-body-planilla .lc-web-filter-grid{margin-top:2px!important}
.lc-web-product{min-height:48px!important;display:flex!important;align-items:center!important;justify-content:space-between!important}
@media(max-width:1100px){.lc-vehicle-head{grid-template-columns:38px 1fr}.lc-vehicle-actions{grid-column:2;justify-content:flex-start;flex-wrap:wrap}.lc-vehicle-facts{grid-template-columns:repeat(2,minmax(120px,1fr))}.lc-payroll-format .lc-web-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:650px){.lc-payroll-format .lc-web-metrics{grid-template-columns:1fr 1fr!important}.lc-vehicle-head{grid-template-columns:34px 1fr}.lc-vehicle-avatar{width:34px;height:34px}.lc-vehicle-facts{grid-template-columns:1fr 1fr;gap:10px}.lc-vehicle-actions{grid-column:1/-1}.lc-vehicle-title-row{align-items:flex-start;flex-direction:column;gap:4px}.lc-web-pane{padding:14px!important}}


/* v12.8.207 — acciones compactas de Carga de inventario */
.load-control-web-app .lc-web-action-row-compact{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin-top:14px !important;
}
.load-control-web-app .lc-web-action-row-compact .lc-web-action-btn{
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:40px !important;
  padding:9px 16px !important;
  flex:0 0 auto !important;
  border-radius:11px !important;
  font-size:14px !important;
  line-height:1.2 !important;
}
.load-control-web-app .lc-web-action-row-compact #lcConfirmLoad{
  min-width:170px !important;
}
.load-control-web-app .lc-web-action-row-compact .lc-web-delete-btn{
  min-width:92px !important;
}
@media (max-width:640px){
  .load-control-web-app .lc-web-action-row-compact{
    justify-content:stretch !important;
  }
  .load-control-web-app .lc-web-action-row-compact .lc-web-action-btn{
    flex:1 1 auto !important;
  }
}

/* v12.8.210 — pesos separados, igual que Android */
.product-editor .product-weight-box{
  border:1px solid var(--line,#dbe3ea);
  border-radius:14px;
  padding:14px;
}
.product-editor .product-weight-box > .form-label{
  display:block;
  font-weight:700;
  margin-bottom:10px;
}
.product-editor .product-weight-box small{
  display:block;
  margin-top:8px;
}

/* v12.8.212 — Control de carga deriva peso automáticamente del Inventario del vendedor */
.load-control-web-app .lc-auto-inventory-note{
  display:flex;
  gap:10px 18px;
  align-items:center;
  flex-wrap:wrap;
  margin:12px 0 18px;
  padding:12px 16px;
  border:1px solid var(--line,#dbe3ea);
  border-radius:14px;
  background:rgba(14,165,233,.05);
}
.load-control-web-app .lc-auto-inventory-note b{white-space:nowrap}
.load-control-web-app .lc-auto-inventory-note span{opacity:.72}


/* v12.8.214 — cabecera Administrador + menú lateral plegable */
.sidebar .logo,
.sidebar .account{display:none!important}

.sidebar-admin-toggle{
  width:100%;
  min-height:72px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 24px;
  align-items:center;
  gap:10px;
  padding:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:rgba(255,255,255,.055);
  color:inherit;
  cursor:pointer;
  text-align:left;
}
.sidebar-admin-toggle:hover{background:rgba(255,255,255,.09)}
.sidebar-admin-toggle .avatar{
  width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;
  font-weight:800;font-size:19px;
  background:rgba(73,171,255,.22);
}
.sidebar-admin-copy{min-width:0}
.sidebar-admin-copy strong{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:15px;
}
.sidebar-admin-copy small{
  display:block;
  margin-top:3px;
  white-space:nowrap;
  font-size:12px;
  opacity:.85;
}
.sidebar-collapse-arrow{
  font-size:25px;
  line-height:1;
  opacity:.8;
}
.sidebar-brand-mini{
  padding:8px 12px 2px;
  text-align:center;
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  opacity:.42;
}

/* Escritorio: al plegar queda una barra de iconos */
.app-shell.sidebar-collapsed{
  grid-template-columns:82px minmax(0,1fr)!important;
}
.app-shell.sidebar-collapsed .sidebar{
  width:82px!important;
  padding-left:10px!important;
  padding-right:10px!important;
}
.app-shell.sidebar-collapsed .sidebar-admin-toggle{
  grid-template-columns:1fr;
  justify-items:center;
  min-height:64px;
  padding:9px 6px;
}
.app-shell.sidebar-collapsed .sidebar-admin-copy,
.app-shell.sidebar-collapsed .sidebar-collapse-arrow,
.app-shell.sidebar-collapsed .sidebar-brand-mini,
.app-shell.sidebar-collapsed .sidebar a span,
.app-shell.sidebar-collapsed .sidebar button span,
.app-shell.sidebar-collapsed .owner-center span{
  display:none!important;
}
.app-shell.sidebar-collapsed .sidebar-search-btn,
.app-shell.sidebar-collapsed .sidebar nav a,
.app-shell.sidebar-collapsed .sidebar .owner-center,
.app-shell.sidebar-collapsed .sidebar .logout{
  justify-content:center!important;
  padding-left:0!important;
  padding-right:0!important;
}
.app-shell.sidebar-collapsed .sidebar nav a b,
.app-shell.sidebar-collapsed .sidebar-search-btn b,
.app-shell.sidebar-collapsed .sidebar .logout b,
.app-shell.sidebar-collapsed .sidebar .owner-center b{
  margin:0!important;
}
.app-shell.sidebar-collapsed .workspace{
  min-width:0;
}

/* En teléfono conservamos el comportamiento móvil existente */
@media (max-width:900px){
  .app-shell.sidebar-collapsed{grid-template-columns:1fr!important}
  .app-shell.sidebar-collapsed .sidebar{width:280px!important}
}

/* v12.8.215 — menú profesional + accesos administrativos restaurados */
.nav-icon{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin:auto}
.sidebar nav a b,.logout b,.owner-center b{display:grid;place-items:center;width:24px;height:24px}
.sidebar-admin-toggle{min-height:68px;border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));border-color:rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.sidebar-admin-emblem{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#168bd8,#16b8bd);box-shadow:0 7px 18px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.25)}
.sidebar-admin-emblem span{font-size:18px;font-weight:900;color:white;letter-spacing:-1px}
.sidebar-admin-copy strong{font-size:14px;letter-spacing:.01em}.sidebar-admin-copy small{font-size:10px;color:#9fb6c9}
.sidebar-brand-mini{text-align:left;padding-left:12px;font-size:9px;opacity:.5}
.app-shell.sidebar-collapsed .sidebar-admin-emblem{width:42px;height:42px}


/* v12.8.216 — identidad Ventyum en Inicio + sidebar limpio */
.sidebar-admin-toggle,.sidebar-brand-mini{display:none!important}
.sidebar{position:relative;padding-top:18px!important}
.sidebar-search-btn{margin-top:0!important}
.sidebar-collapse-float{
  position:absolute;right:-11px;top:26px;z-index:8;
  width:24px;height:24px;border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
  background:#123f63;color:#d9edf9;display:grid;place-items:center;
  font-size:19px;line-height:1;cursor:pointer;
  box-shadow:0 4px 12px rgba(7,29,47,.28);
}
.sidebar-collapse-float:hover{background:#17567f;color:#fff}
.app-shell.sidebar-collapsed .sidebar-collapse-float{right:-11px}
.command-user-status{display:flex;align-items:center;gap:6px;margin:7px 0 0 38px;font-size:11px;color:rgba(230,247,255,.78);letter-spacing:.02em}
.command-user-status span{font-weight:700;color:rgba(255,255,255,.88)}
.command-user-status i{width:7px;height:7px;border-radius:50%;background:#41e5b5;box-shadow:0 0 0 3px rgba(65,229,181,.12)}
.command-user-status i.offline{background:#ff8790;box-shadow:0 0 0 3px rgba(255,135,144,.12)}
.command-user-status b{font-weight:600;color:#81ebca}
.command-user-status i.offline + b{color:#ffadb3}
@media(max-width:900px){.sidebar-collapse-float{display:none!important}.sidebar{padding-top:14px!important}}

/* v12.8.217 — rail superior estrecho + menú desplegable desde debajo del Command Center */
@media (min-width:901px){
  /* El rail izquierdo conserva solo el ancho de iconos. El contenido puede avanzar hacia la izquierda. */
  .app-shell,
  .app-shell.sidebar-collapsed{
    grid-template-columns:82px minmax(0,1fr)!important;
  }
  .sidebar,
  .app-shell.sidebar-collapsed .sidebar{
    width:82px!important;
    padding:18px 10px 10px!important;
    overflow:visible!important;
  }

  /* Buscar queda como único control superior del rail. */
  .sidebar-search-btn{
    width:58px!important;
    height:48px!important;
    margin:0 auto!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:13px!important;
  }
  .sidebar-search-btn b{width:auto!important;margin:0!important;font-size:19px!important}
  .sidebar-search-btn span,.sidebar-search-btn kbd{display:none!important}

  /* El mando de plegado queda a la altura del borde inferior del panel azul (zona señalada). */
  .sidebar-collapse-float,
  .app-shell.sidebar-collapsed .sidebar-collapse-float{
    top:126px!important;
    right:-13px!important;
    width:28px!important;
    height:28px!important;
    border-radius:50%!important;
    z-index:80!important;
  }

  /* Cerrado: navegación normal en columna de iconos. */
  .app-shell.sidebar-collapsed .sidebar nav{
    position:static!important;
    width:auto!important;
    margin-top:10px!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:0!important;
  }
  .app-shell.sidebar-collapsed .sidebar nav a{
    width:58px!important;
    margin:0 auto!important;
  }

  /* Abierto: solo el menú nace debajo del hero; no ensancha toda la columna superior. */
  .app-shell:not(.sidebar-collapsed) .sidebar nav{
    position:absolute!important;
    left:0!important;
    top:148px!important;
    width:238px!important;
    max-height:calc(100vh - 206px)!important;
    overflow-y:auto!important;
    padding:10px 10px 12px!important;
    margin:0!important;
    background:linear-gradient(180deg,#0b2744 0%,#091d33 100%)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-left:0!important;
    border-radius:0 16px 16px 0!important;
    box-shadow:16px 18px 34px rgba(5,24,41,.20)!important;
    z-index:70!important;
  }
  .app-shell:not(.sidebar-collapsed) .sidebar nav a{
    width:100%!important;
    justify-content:flex-start!important;
    padding:0 12px!important;
  }
  .app-shell:not(.sidebar-collapsed) .sidebar nav a span{display:inline!important}

  /* El pie queda compacto en el rail para no invadir el contenido. */
  .sidebar .owner-center,.sidebar .logout{
    width:58px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    justify-content:center!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .sidebar .owner-center span,.sidebar .logout span{display:none!important}

  /* Inicio: el Command Center avanza hacia la izquierda, manteniendo borde redondeado simétrico. */
  .home-workspace>.content{
    padding-left:18px!important;
    padding-right:30px!important;
  }
  .home-workspace .command-hero{
    border-radius:18px!important;
    margin-left:0!important;
    overflow:hidden!important;
  }
}

/* v12.8.218 — Inicio: Command Center ocupa la franja superior completa;
   el rail/menu lateral comienza debajo del panel VENTYUM. */
@media (min-width:901px){
  /* Solo en Inicio: desaparece la columna azul oscura de la parte superior. */
  .home-workspace + *{} /* ancla inocua para mantener el bloque aislado */
  .app-shell:has(.home-workspace) .sidebar{
    padding-top:164px!important;
    background:linear-gradient(
      180deg,
      transparent 0,
      transparent 150px,
      var(--nav) 150px,
      #09192d 100%
    )!important;
  }

  /* Buscar es el primer control del lateral, pero ahora nace debajo del hero. */
  .app-shell:has(.home-workspace) .sidebar-search-btn{
    margin-top:0!important;
  }

  /* El mando queda en la unión inferior del Command Center, no en la franja superior. */
  .app-shell:has(.home-workspace) .sidebar-collapse-float,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar-collapse-float{
    top:143px!important;
  }

  /* Cerrado: iconos inmediatamente después de Buscar. */
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar nav{
    margin-top:10px!important;
  }

  /* Abierto: el desplegable completo aparece por debajo de VENTYUM/Buscar. */
  .app-shell:not(.sidebar-collapsed):has(.home-workspace) .sidebar nav{
    top:222px!important;
    max-height:calc(100vh - 278px)!important;
  }

  /* El dashboard gana la zona que antes ocupaba la parte superior del menú.
     Conserva el mismo borde redondeado del extremo derecho de Nueva venta. */
  .home-workspace>.content{
    padding-left:18px!important;
    padding-right:30px!important;
  }
  .home-workspace .command-hero{
    margin-left:-82px!important;
    padding-left:28px!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }
}

/* Navegadores sin :has(): la expansión del hero sigue funcionando sin alterar otros módulos. */
@media (min-width:901px){
  .home-workspace .command-hero{margin-left:-82px!important}
}

/* v12.8.219 — rail lateral continuo, limpio y expansión como una sola pieza */
@media (min-width:901px){
  .app-shell,.app-shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)!important}
  .sidebar,.app-shell.sidebar-collapsed .sidebar{
    width:76px!important;padding:164px 8px 10px!important;overflow:visible!important;
    background:linear-gradient(180deg,transparent 0,transparent 150px,#0b2239 150px,#09192d 100%)!important;
  }
  .sidebar-search-btn{
    width:52px!important;height:44px!important;margin:0 auto 7px!important;padding:0!important;
    display:flex!important;justify-content:center!important;border:0!important;border-radius:11px!important;
    background:transparent!important;color:#a9bfd0!important;box-shadow:none!important;
  }
  .sidebar-search-btn:hover{background:rgba(255,255,255,.07)!important;color:#fff!important}
  .sidebar-search-btn b{font-size:18px!important}.sidebar-search-btn span,.sidebar-search-btn kbd{display:none!important}
  .sidebar nav,.app-shell.sidebar-collapsed .sidebar nav,.app-shell:not(.sidebar-collapsed) .sidebar nav{
    position:static!important;width:auto!important;max-height:calc(100vh - 280px)!important;overflow-y:auto!important;
    margin:0!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;
  }
  .sidebar nav a,.app-shell.sidebar-collapsed .sidebar nav a{
    width:52px!important;height:44px!important;margin:2px auto!important;padding:0!important;justify-content:center!important;
    border-radius:11px!important;color:#9fb5c8!important;box-shadow:none!important;gap:0!important;
  }
  .sidebar nav a:hover{background:rgba(255,255,255,.065)!important;color:#fff!important}
  .sidebar nav a.active{background:rgba(24,116,171,.28)!important;color:#fff!important;box-shadow:inset 3px 0 0 #1bc7c3!important}
  .sidebar nav a span{display:none!important}.sidebar nav a b{width:24px!important;height:24px!important;margin:0!important}
  .sidebar .owner-center,.sidebar .logout{width:52px!important;height:42px!important;margin-left:auto!important;margin-right:auto!important;border-radius:10px!important}
  .sidebar-collapse-float,.app-shell.sidebar-collapsed .sidebar-collapse-float{
    top:153px!important;right:8px!important;width:25px!important;height:25px!important;border:0!important;
    background:#123754!important;box-shadow:none!important;color:#bcd1df!important;font-size:17px!important;
  }
  .sidebar-collapse-float:hover{background:#185077!important;color:#fff!important}
  /* Abierto: la misma barra crece hacia la derecha; no aparece un panel flotante separado. */
  .app-shell:not(.sidebar-collapsed) .sidebar{width:244px!important;padding-left:12px!important;padding-right:12px!important;box-shadow:12px 12px 28px rgba(5,24,41,.13)!important;border-radius:0 0 16px 0!important}
  .app-shell:not(.sidebar-collapsed) .sidebar-search-btn{width:100%!important;justify-content:flex-start!important;padding:0 14px!important;gap:12px!important}
  .app-shell:not(.sidebar-collapsed) .sidebar-search-btn span{display:inline!important;font-weight:650!important}
  .app-shell:not(.sidebar-collapsed) .sidebar nav a{width:100%!important;justify-content:flex-start!important;padding:0 14px!important;gap:12px!important}
  .app-shell:not(.sidebar-collapsed) .sidebar nav a span{display:inline!important;white-space:nowrap!important;font-weight:650!important}
  .app-shell:not(.sidebar-collapsed) .sidebar .owner-center,.app-shell:not(.sidebar-collapsed) .sidebar .logout{width:100%!important;justify-content:flex-start!important;padding:0 14px!important;gap:12px!important}
  .app-shell:not(.sidebar-collapsed) .sidebar .owner-center span,.app-shell:not(.sidebar-collapsed) .sidebar .logout span{display:inline!important}
  .app-shell:not(.sidebar-collapsed) .sidebar-collapse-float{right:10px!important}
  .home-workspace>.content{padding-left:18px!important}
  .home-workspace .command-hero{margin-left:-76px!important}
}

/* v12.8.220 — sidebar marino, más fino y con extremos curvos */
@media (min-width:901px){
  .app-shell,.app-shell.sidebar-collapsed{grid-template-columns:68px minmax(0,1fr)!important}
  .sidebar,.app-shell.sidebar-collapsed .sidebar{
    width:68px!important;
    padding:164px 6px 12px!important;
    background:linear-gradient(180deg,transparent 0,transparent 150px,#07182b 150px,#061426 100%)!important;
    border-radius:0 24px 24px 0!important;
    box-shadow:8px 10px 24px rgba(5,20,38,.10)!important;
  }
  .sidebar-search-btn{width:48px!important;height:42px!important;border-radius:14px!important;color:#aebfce!important}
  .sidebar nav{scrollbar-width:none!important;-ms-overflow-style:none!important}
  .sidebar nav::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
  .sidebar nav a,.app-shell.sidebar-collapsed .sidebar nav a{
    width:48px!important;height:42px!important;border-radius:14px!important;color:#a8bac9!important;
  }
  .sidebar nav a.active{
    background:linear-gradient(135deg,rgba(20,126,180,.30),rgba(19,89,137,.22))!important;
    box-shadow:inset 3px 0 0 #19c7c3!important;
  }
  .sidebar .owner-center,.sidebar .logout{width:48px!important;height:40px!important;border-radius:14px!important}
  .sidebar-collapse-float,.app-shell.sidebar-collapsed .sidebar-collapse-float{
    top:157px!important;right:6px!important;width:22px!important;height:22px!important;border-radius:9px!important;
    background:#0d2a43!important;color:#a9c1d1!important;box-shadow:0 3px 9px rgba(2,16,30,.16)!important;font-size:14px!important;
  }
  .app-shell:not(.sidebar-collapsed) .sidebar{
    width:232px!important;border-radius:0 24px 24px 0!important;
    background:linear-gradient(180deg,transparent 0,transparent 150px,#07182b 150px,#061426 100%)!important;
    box-shadow:10px 12px 28px rgba(5,20,38,.13)!important;
  }
  .app-shell:not(.sidebar-collapsed) .sidebar-search-btn,
  .app-shell:not(.sidebar-collapsed) .sidebar nav a,
  .app-shell:not(.sidebar-collapsed) .sidebar .owner-center,
  .app-shell:not(.sidebar-collapsed) .sidebar .logout{border-radius:14px!important}
  .home-workspace .command-hero{margin-left:-68px!important}
}

/* v12.8.222 — sidebar flotante VISUAL, sin tocar el layout de la web.
   IMPORTANTE: no usa position:fixed, no cambia columnas del grid y no modifica
   workspace/content/topbar. Solo cambia la apariencia del rail ya existente. */
@media (min-width:901px){
  /* Mantener exactamente la geometría funcional de v12.8.220. */
  .app-shell,
  .app-shell.sidebar-collapsed{
    grid-template-columns:68px minmax(0,1fr)!important;
  }

  .sidebar,
  .app-shell.sidebar-collapsed .sidebar{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    bottom:auto!important;
    width:68px!important;
    height:100vh!important;
    padding:164px 6px 12px!important;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    isolation:isolate;
  }

  /* La cápsula es solo decorativa y vive dentro de los 68px que ya tenía el menú. */
  .sidebar::before,
  .app-shell.sidebar-collapsed .sidebar::before{
    content:"";
    position:absolute;
    z-index:-1;
    left:8px;
    right:6px;
    top:154px;
    bottom:18px;
    border-radius:22px;
    background:linear-gradient(180deg,#0a3151 0%,#082945 52%,#071f36 100%);
    border:1px solid rgba(255,255,255,.07);
    box-shadow:0 12px 28px rgba(5,24,41,.15);
    pointer-events:none;
  }

  .sidebar-search-btn{
    width:46px!important;
    height:42px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    border-radius:14px!important;
    background:transparent!important;
  }
  .sidebar nav a,
  .app-shell.sidebar-collapsed .sidebar nav a{
    width:46px!important;
    height:42px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    border-radius:14px!important;
  }
  .sidebar .owner-center,
  .sidebar .logout{
    width:46px!important;
    height:40px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    border-radius:14px!important;
  }

  /* Tirador pequeño, por fuera de la cápsula pero todavía sin afectar contenido. */
  .sidebar-collapse-float,
  .app-shell.sidebar-collapsed .sidebar-collapse-float{
    top:50%!important;
    right:-5px!important;
    transform:translateY(-50%)!important;
    width:20px!important;
    height:30px!important;
    border-radius:0 10px 10px 0!important;
    background:#0b3556!important;
    color:#c6d8e5!important;
    border:0!important;
    box-shadow:4px 3px 10px rgba(4,22,38,.14)!important;
  }

  /* Al abrir, se conserva el comportamiento original de v12.8.220:
     el menú crece visualmente sobre su propio rail. NO se cambia el grid. */
  .app-shell:not(.sidebar-collapsed) .sidebar{
    width:232px!important;
    padding-left:12px!important;
    padding-right:12px!important;
    background:transparent!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .app-shell:not(.sidebar-collapsed) .sidebar::before{
    left:8px;
    right:0;
    top:154px;
    bottom:18px;
    border-radius:22px;
    box-shadow:0 14px 32px rgba(5,24,41,.18);
  }
  .app-shell:not(.sidebar-collapsed) .sidebar-search-btn,
  .app-shell:not(.sidebar-collapsed) .sidebar nav a,
  .app-shell:not(.sidebar-collapsed) .sidebar .owner-center,
  .app-shell:not(.sidebar-collapsed) .sidebar .logout{
    border-radius:14px!important;
  }
  .app-shell:not(.sidebar-collapsed) .sidebar-collapse-float{
    right:0!important;
  }

  /* NO sobrescribir .workspace, .content, .topbar ni .command-hero aquí. */
}

/* v12.8.223 — sidebar del mismo azul del dashboard + sin flecha superior.
   Cambio exclusivamente visual: no modifica grid, workspace, content ni lógica. */
@media (min-width:901px){
  .sidebar::before,
  .app-shell.sidebar-collapsed .sidebar::before,
  .app-shell:not(.sidebar-collapsed) .sidebar::before{
    background:linear-gradient(112deg,#082f67 0%,#07528d 46%,#087bb0 100%)!important;
    border-color:rgba(122,214,255,.22)!important;
    box-shadow:0 12px 28px rgba(4,48,94,.16),inset 0 1px 0 rgba(255,255,255,.10)!important;
  }
  .sidebar-collapse-float,
  .app-shell.sidebar-collapsed .sidebar-collapse-float,
  .app-shell:not(.sidebar-collapsed) .sidebar-collapse-float{
    display:none!important;
  }
}


/* v12.8.224 — Inicio: marca Ventyum con mayor presencia y rol alineado a la izquierda */
@media (min-width:851px){
  .command-intro .command-brand{
    font-size:11px!important;
    font-weight:950!important;
    letter-spacing:.19em!important;
    color:#62edff!important;
    text-shadow:0 0 12px rgba(98,237,255,.20);
  }
  .command-user-status{
    margin-left:0!important;
    padding-left:0!important;
    justify-content:flex-start!important;
  }
}

/* v12.8.226: orden Transacciones → Pedidos y +5% en títulos del command center */
.command-module span{font-size:8.4px!important;}


/* v12.8.227 — sidebar más simétrico: Inventario central fuera del rail; estado alineado bajo el saludo */
@media (min-width:851px){
  .command-user-status{
    margin-left:34px!important;
    padding-left:0!important;
    justify-content:flex-start!important;
    gap:7px!important;
  }
}

/* v12.8.228 — bloque de saludo simétrico: rol alineado bajo el texto del saludo */
@media (min-width:851px){
  .command-intro h2.greeting-line{gap:7px!important;}
  .command-user-status{
    margin-top:4px!important;
    margin-left:24px!important;
    padding-left:0!important;
    justify-content:flex-start!important;
    gap:6px!important;
    line-height:1.05!important;
  }
}

/* v12.8.229 — Rendimiento de hoy ocupa el espacio bajo Estadísticas, sin esperar la altura de Accesos */
@media (min-width:1001px){
  .dashboard-home .home-main-stack{min-width:0;display:flex;flex-direction:column;gap:10px}
  .dashboard-home .home-main-stack .home-team{margin-top:0!important;padding:13px 17px!important}
  .dashboard-home .home-main-stack .home-team .panel-head{margin-bottom:6px!important}
  .dashboard-home .home-main-stack .home-team table{margin-top:0}
}

/* v12.8.230 — Nueva venta: CTA principal Ventyum, compacto y visible */
.command-hero .command-actions{display:flex!important;align-items:center!important;justify-content:center!important}
.command-hero .command-sale{
  width:108px!important;
  height:34px!important;
  padding:0 11px!important;
  gap:7px!important;
  justify-content:center!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#13d8df 0%,#19bcd3 100%)!important;
  color:#ffffff!important;
  box-shadow:0 7px 18px rgba(0,49,94,.18)!important;
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important;
}
.command-hero .command-sale span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.32)!important;
  color:#ffffff!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1!important;
}
.command-hero .command-sale b{font-size:10.5px!important;font-weight:800!important;letter-spacing:.01em!important;color:#ffffff!important}
.command-hero .command-sale:hover{transform:translateY(-2px)!important;box-shadow:0 10px 22px rgba(0,49,94,.25)!important;filter:brightness(1.035)!important}
.command-hero .command-sale:active{transform:translateY(0) scale(.97)!important;box-shadow:0 5px 13px rgba(0,49,94,.18)!important}
.command-hero .command-sale:focus-visible{outline:2px solid rgba(255,255,255,.9)!important;outline-offset:2px!important}

/* v12.8.232 — Nueva venta: símbolo + y texto en blanco para mayor contraste */
.command-hero .command-sale,.command-hero .command-sale span,.command-hero .command-sale b{color:#fff!important;}


/* v12.8.233 — Inicio: Control de carga como tarjeta y rail sin camión. */
@media (min-width:901px){
  .dashboard-home .home-metrics{
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .dashboard-home .home-metrics .metric-card{
    padding-left:8px!important;
    padding-right:8px!important;
    gap:7px!important;
  }
  .dashboard-home .home-metrics .metric-icon{
    flex-basis:30px!important;
    width:30px!important;
    height:30px!important;
  }
  .dashboard-home .home-metrics .metric-icon .nav-icon{
    width:18px!important;
    height:18px!important;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
}
@media (max-width:1180px) and (min-width:901px){
  .dashboard-home .home-metrics .metric-card{padding-left:6px!important;padding-right:6px!important;gap:5px!important}
  .dashboard-home .home-metrics .metric-icon{flex-basis:28px!important;width:28px!important;height:28px!important}
  .dashboard-home .home-metrics .metric-card strong{font-size:15px!important}
}
/* v12.8.234 — reportes fluidos y filtros instantáneos */
.route-report-controls-fast{padding-bottom:14px}
.route-report-controls-fast .reports-panel-head{margin-bottom:10px}
.rr-live-state{font-size:12px;font-weight:800;color:#168a8d;background:#e9fbfb;border:1px solid #c9f1f2;border-radius:999px;padding:7px 11px;white-space:nowrap}
.rr-reload{align-self:end;min-height:40px;padding:8px 12px}
.rr-seller-quick{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid rgba(20,87,135,.08)}
.rr-seller-chip{border:1px solid #dce8f2;background:#f8fbfd;color:#31536d;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;cursor:pointer;transition:.14s ease}
.rr-seller-chip:hover{transform:translateY(-1px);border-color:#78cfe0}
.rr-seller-chip.active{background:#13a8c4;color:#fff;border-color:#13a8c4;box-shadow:0 5px 14px rgba(19,168,196,.18)}
.rr-summary-dense{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}
.rr-summary-dense>div{padding:12px 14px;min-height:78px}
.rr-summary-dense strong{font-size:20px}
.report-table-panel{padding:12px 14px}
.report-table-note{margin-bottom:8px}
.route-report-table th,.route-report-table td{padding:8px 10px}
.rr-seller-link{border:0;background:transparent;color:#0b73b8;font:inherit;font-weight:850;padding:0;cursor:pointer;text-align:left}
.rr-seller-link:hover{text-decoration:underline}
.rr-detail-compact{display:block;padding:10px 12px}
.rr-visit-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:9px}
.rr-visit-strip>span{background:#f4f8fb;border-radius:8px;padding:5px 8px;font-size:12px}
.rr-op-table{border:1px solid #e6edf3;border-radius:10px;overflow:hidden;background:#fff}
.rr-op-head,.rr-op-row{display:grid;grid-template-columns:80px minmax(180px,1fr) 120px 120px;gap:8px;align-items:center;padding:7px 10px}
.rr-op-head{background:#f6f9fb;color:#718292;font-size:11px;font-weight:800;text-transform:uppercase}
.rr-op-row{font-size:12px;border-top:1px solid #eef3f6}
.rr-op-row b{text-align:right}
@media(max-width:1000px){.rr-summary-dense{grid-template-columns:repeat(2,minmax(0,1fr))}.rr-op-head,.rr-op-row{grid-template-columns:65px minmax(120px,1fr) 90px 95px}}

/* v12.8.235 — reportes: vendedores oficiales primero */
.rr-seller-chip-all{margin-left:8px;border-style:dashed!important;opacity:.78}.rr-seller-chip-all.active{opacity:1}


/* v12.8.237 — Configurar fijo justo antes de Cerrar sesión en el rail lateral. */
.sidebar-settings{
  height:39px;border:0;background:transparent;color:#afc3d5;text-decoration:none;border-radius:9px;
  display:flex;align-items:center;gap:11px;padding:0 11px;text-align:left;margin-top:auto;
}
.sidebar-settings b{width:21px;text-align:center;font-size:16px;font-weight:500;display:grid;place-items:center}
.sidebar-settings:hover,.sidebar-settings.active{background:#ffffff10;color:#fff}
.sidebar-settings.active{box-shadow:inset 3px 0 0 var(--cyan)}
.sidebar-settings + .logout{margin-top:4px}
.sidebar .owner-center + .sidebar-settings{margin-top:4px}
.sidebar .owner-center{margin-top:auto}

@media (min-width:901px){
  .sidebar .sidebar-settings{width:52px!important;height:42px!important;margin-left:auto!important;margin-right:auto!important;border-radius:10px!important;justify-content:center!important;padding:0!important}
  .sidebar .sidebar-settings span{display:none!important}
  .sidebar .sidebar-settings b{width:24px!important;height:24px!important;margin:0!important}
  .app-shell:not(.sidebar-collapsed) .sidebar .sidebar-settings{width:100%!important;justify-content:flex-start!important;padding:0 14px!important;gap:12px!important;border-radius:14px!important}
  .app-shell:not(.sidebar-collapsed) .sidebar .sidebar-settings span{display:inline!important}
}
@media (max-width:900px){
  .sidebar .sidebar-settings{height:36px;padding:0 9px}
}


/* v12.8.239 — Configuraciones: moneda + idioma, sin cierre de sesión */
.settings-page{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;align-items:start}
.settings-card{padding:22px}.settings-card .panel-head p{margin:6px 0 0;color:var(--muted);font-size:12px}
.settings-fields{display:grid;gap:12px}.settings-field{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:20px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:13px;background:#fbfdff}
.settings-field span b,.settings-field span small{display:block}.settings-field span b{font-size:14px}.settings-field span small{margin-top:5px;color:var(--muted);font-size:11px;line-height:1.45}
.settings-field select{height:43px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 11px;color:var(--text);font-weight:700}
.settings-note{margin:14px 0;padding:12px 14px;border-radius:11px;background:#f4f9fd;color:#5b7084;font-size:11px;line-height:1.5}.settings-save{min-width:190px}
.settings-summary{display:grid;gap:10px}.settings-summary>div{padding:14px;border:1px solid var(--line);border-radius:12px}.settings-summary b,.settings-summary small{display:block}.settings-summary small{margin-top:5px;color:var(--muted);line-height:1.5}
@media(max-width:900px){.settings-page{grid-template-columns:1fr}.settings-field{grid-template-columns:1fr}.settings-field select{width:100%}}

/* v12.8.240 — Configuraciones compactas con jerarquía visual similar a la app */
.settings-app-page{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);gap:16px;align-items:start;max-width:1180px;margin:0 auto}
.settings-app-card{padding:20px;border-radius:18px;box-shadow:0 8px 26px rgba(24,73,112,.06)}
.settings-app-title{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.settings-app-title h3{margin:3px 0 0;font-size:21px}
.settings-app-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#edf8fd;color:#14a8c2;font-size:21px;font-weight:900;flex:0 0 42px}
.settings-app-row{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(185px,240px);align-items:center;gap:12px;padding:13px 0;border-top:1px solid var(--line)}
.settings-app-row-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#f0f7fb;color:#2f6fd6;font-weight:900}
.settings-app-copy b,.settings-app-copy small{display:block}.settings-app-copy b{font-size:14px}.settings-app-copy small{margin-top:3px;color:var(--muted);font-size:11px;line-height:1.35}
.settings-app-row select{height:42px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:0 12px;color:var(--text);font-weight:750;width:100%}
.settings-app-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.settings-app-meta span{padding:11px 13px;border-radius:11px;background:#f7fafc;color:#526a7c;font-size:12px}.settings-app-meta b{display:block;color:var(--text);margin-bottom:3px}
.settings-app-save{min-width:190px;height:42px}
.settings-fiscal-state{display:grid;gap:8px;margin:2px 0 16px}.settings-fiscal-state>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 13px;border-radius:11px;background:#f7fafc;font-size:13px}.settings-fiscal-state span{color:var(--muted)}.settings-fiscal-state b{font-size:13px}.settings-fiscal-state b.ok{color:#0a9d6f}.settings-fiscal-state b.off{color:#b04a4a}.settings-fiscal-error{display:block!important;color:#815a21!important;background:#fff8e8!important}
.settings-hacienda-link{display:flex!important;align-items:center;justify-content:center;text-decoration:none;min-height:42px;width:100%}
@media(max-width:900px){.settings-app-page{grid-template-columns:1fr;max-width:none}.settings-app-row{grid-template-columns:38px 1fr}.settings-app-row select{grid-column:2}.settings-app-meta{grid-template-columns:1fr}}

/* v12.8.241 — Configuración visible, moneda funcional e idioma aplicado */
.settings-app-page{max-width:1240px!important;margin:10px auto 0!important;align-items:stretch!important}
.settings-app-card{min-height:0!important;overflow:visible!important}
.settings-general-card,.settings-fiscal-card{align-self:start!important}
.settings-current{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;margin:0 0 8px;border-radius:12px;background:#eef8ff;border:1px solid #d8ebf8}
.settings-current span{font-size:11px;color:var(--muted);font-weight:750;text-transform:uppercase;letter-spacing:.4px}.settings-current strong{font-size:18px;color:var(--blue)}
.settings-app-row select{cursor:pointer;border:1px solid #cfdde8!important;box-shadow:0 1px 2px rgba(18,42,68,.03)}
.settings-app-row select:focus{outline:none;border-color:#5ca9df!important;box-shadow:0 0 0 3px #e6f3fc}
.settings-save-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.settings-save-row small{color:var(--muted);font-size:10px}
@media(max-width:900px){.settings-app-page{margin-top:6px!important}.settings-app-card{padding:18px!important}}

/* v12.8.243 — Configuración dentro del content normal, no dentro del topbar */
.settings-app-page{padding-top:4px!important}
.settings-app-page .settings-app-save{position:relative;z-index:1;pointer-events:auto}
/* v12.8.244 */
.settings-hero{margin-bottom:16px}
.settings-app-page{margin-top:0}

/* v12.8.251 — Pedidos editable y cabecera profesional tipo Planilla */
.orders-hero-web{margin-bottom:12px!important}
.orders-metrics{margin:0 0 12px!important}
.orders-panel{margin-top:0!important}
.orders-table td{vertical-align:top}
.orders-table td small{display:block;margin-top:3px;color:var(--muted)}
.order-detail-cell{min-width:220px;max-width:380px;white-space:normal;line-height:1.35}
.orders-row-actions{display:flex;gap:6px;flex-wrap:wrap;min-width:180px}
.orders-row-actions button{padding:7px 10px!important;min-height:32px!important}
.orders-web-form textarea{resize:vertical;min-height:110px}
@media(max-width:900px){.orders-table-wrap{overflow-x:auto}.orders-hero-web .payroll-actions{width:100%;justify-content:flex-start}.orders-row-actions{min-width:150px}.order-detail-cell{min-width:180px}}

/* v12.8.252 — Pedidos: KPIs legibles + ubicación/dirección explícita */
.orders-metrics{grid-template-columns:repeat(3,minmax(190px,1fr))!important;gap:12px!important}
.orders-metrics .order-kpi{min-height:78px;padding:14px 16px!important;align-items:center}
.orders-metrics .order-kpi>div:last-child{min-width:0}
.orders-metrics .order-kpi span,.orders-metrics .order-kpi strong,.orders-metrics .order-kpi small{display:block}
.orders-metrics .order-kpi strong{font-size:24px;line-height:1;margin:5px 0 4px;font-variant-numeric:tabular-nums}
.orders-metrics .order-kpi span{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.45px;color:var(--muted)}
.orders-metrics .order-kpi small{font-size:9px;color:#98a2ae}
.orders-metrics .metric-icon{flex:0 0 38px;width:38px;height:38px;font-size:15px}
.order-address-cell{min-width:190px;max-width:300px;white-space:normal!important;line-height:1.35;color:#536274}
@media(max-width:900px){.orders-metrics{grid-template-columns:1fr!important}.orders-metrics .order-kpi{min-height:68px}.orders-metrics .order-kpi strong{font-size:21px}.order-address-cell{min-width:170px}}

/* v12.8.256 — Sistema visual maestro: encabezados, acciones y fechas.
   La geometría se define una vez y los módulos solo aportan su contenido. */
:root{--page-edge:18px;--sidebar-rail-width:68px;--content-pad-x:22px;--page-hero-radius:18px;--page-hero-pad-x:24px;--page-hero-pad-y:18px;--control-height:42px;--control-radius:10px}
.ventyum-page-hero,.hero,.command-hero,.payroll-hero,.reports-hero,.hacienda-hero,.transactions-hero,.orders-hero-web,.control-carga-hero,.settings-hero{min-height:116px;margin-bottom:16px;border-radius:var(--page-hero-radius);padding:var(--page-hero-pad-y) var(--page-hero-pad-x);background:linear-gradient(112deg,#082f67 0%,#07528d 48%,#087bb0 100%);color:#fff;box-shadow:0 12px 28px rgba(4,48,94,.14),inset 0 1px 0 rgba(255,255,255,.12)}
.ventyum-page-hero .eyebrow,.hero .eyebrow,.command-hero .eyebrow,.payroll-hero .eyebrow,.reports-hero .eyebrow,.hacienda-hero .eyebrow,.transactions-hero .eyebrow,.orders-hero-web .eyebrow,.control-carga-hero .eyebrow,.settings-hero .eyebrow{font-size:11px;font-weight:900;letter-spacing:1.15px;color:#89eee8}
.ventyum-page-hero h2,.hero h2,.command-hero h2,.payroll-hero h2,.reports-hero h2,.hacienda-hero h2,.transactions-hero h2,.orders-hero-web h2,.control-carga-hero h2,.settings-hero h2{margin:4px 0;font-size:clamp(25px,2vw,30px);font-weight:850;line-height:1.08;letter-spacing:-.7px;color:#fff}
.ventyum-page-hero p,.hero p,.command-hero p,.payroll-hero p,.reports-hero p,.hacienda-hero p,.transactions-hero p,.orders-hero-web p,.control-carga-hero p,.settings-hero p{margin:0;color:rgba(255,255,255,.82);font-size:13px;line-height:1.45}
.ventyum-page-hero .primary,.hero .primary,.command-hero .primary,.payroll-hero .primary,.reports-hero .primary,.hacienda-hero .primary,.transactions-hero .primary,.orders-hero-web .primary,.control-carga-hero .primary,.settings-hero .primary{min-height:var(--control-height);border-radius:11px;padding:0 18px;font-size:13px;font-weight:800}
button.primary,button.soft,a.primary,a.soft,.primary,.soft{min-height:var(--control-height);border-radius:11px;padding:0 16px;font-size:13px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;line-height:1.1}
input:not([type="checkbox"]):not([type="radio"]),select{min-height:var(--control-height);border-radius:var(--control-radius)}label{font-size:12px;font-weight:750}
.date-control{position:relative;display:grid;gap:6px;cursor:pointer}.date-control input[type="date"]{width:100%;cursor:pointer}.date-control:focus-within{outline:2px solid rgba(24,138,202,.22);outline-offset:2px;border-radius:var(--control-radius)}
.tx-periods,.route-report-quick,.report-view-toggle{display:flex;flex-wrap:wrap;gap:8px}.tx-periods .soft,.route-report-quick .soft,.report-view-toggle .soft{min-height:36px;border-radius:999px;padding:0 13px}.tx-periods .soft.active,.route-report-quick .soft.active,.report-view-toggle .soft.active{background:#1378d1;color:#fff;border-color:#1378d1}
@media (min-width:901px){.workspace>.content{max-width:none;margin:0;padding:22px var(--content-pad-x) 42px!important}.ventyum-page-hero,.workspace>.content>.hero,.workspace>.content>.command-hero,.workspace>.content>.payroll-hero,.workspace>.content>.reports-hero,.workspace>.content>.hacienda-hero,.workspace>.content>.transactions-hero,.workspace>.content>.orders-hero-web,.workspace>.content>.control-carga-hero,.workspace>.content>.settings-hero{width:calc(100% + var(--sidebar-rail-width) + (var(--content-pad-x) * 2) - (var(--page-edge) * 2));margin-left:calc((var(--sidebar-rail-width) + var(--content-pad-x) - var(--page-edge)) * -1)!important;margin-right:0!important}}
@media (min-width:641px) and (max-width:900px){.workspace>.content{padding:18px!important}.ventyum-page-hero,.hero,.command-hero,.payroll-hero,.reports-hero,.hacienda-hero,.transactions-hero,.orders-hero-web,.control-carga-hero,.settings-hero{width:100%;margin-left:0!important}}
@media (max-width:640px){:root{--page-edge:12px;--page-hero-pad-x:16px;--page-hero-pad-y:16px}.ventyum-page-hero,.hero,.command-hero,.payroll-hero,.reports-hero,.hacienda-hero,.transactions-hero,.orders-hero-web,.control-carga-hero,.settings-hero{width:100%;min-height:0;padding:var(--page-hero-pad-y) var(--page-hero-pad-x);margin-left:0!important}.ventyum-page-hero h2,.hero h2,.command-hero h2,.payroll-hero h2,.reports-hero h2,.hacienda-hero h2,.transactions-hero h2,.orders-hero-web h2,.control-carga-hero h2,.settings-hero h2{font-size:24px}}


/* v12.8.257 — Calendarios completos + área clicable uniforme. */
.date-control{min-width:0}
.date-control input[type="date"],.date-control input[type="month"]{box-sizing:border-box;width:100%;min-width:0;padding-right:42px;cursor:pointer;background-color:#fff}
.date-control input[type="date"]::-webkit-calendar-picker-indicator,.date-control input[type="month"]::-webkit-calendar-picker-indicator{cursor:pointer;margin:0;opacity:.82}
.date-control:focus-within{outline:none}
.date-control input[type="date"]:focus,.date-control input[type="month"]:focus{outline:2px solid rgba(24,138,202,.22);outline-offset:1px}


/* v12.8.258 — Estadísticas adopta el encabezado maestro azul. */
.stats-page-hero{margin-bottom:16px!important}
.stats-page-hero>div{min-width:0}


/* v12.8.263 — Transacciones: HUD financiero integrado, compacto y futurista */
.tx-smart-hero{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);align-items:center;gap:30px;overflow:hidden;position:relative;isolation:isolate}
.tx-smart-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 0 49%,rgba(120,239,236,.045) 49.2% 49.5%,transparent 49.7%),repeating-linear-gradient(90deg,transparent 0 76px,rgba(255,255,255,.018) 77px,transparent 78px);z-index:0}
.tx-smart-hero:after{content:"";position:absolute;right:-130px;top:-160px;width:470px;height:470px;border:1px solid rgba(137,238,232,.13);border-radius:50%;box-shadow:0 0 0 74px rgba(137,238,232,.025),0 0 0 148px rgba(137,238,232,.018);pointer-events:none;z-index:0}
.tx-hero-copy{position:relative;z-index:2;min-width:0}
.tx-hero-insight{position:relative;z-index:2;justify-self:end;width:min(100%,500px);min-height:66px;padding:8px 18px 8px 22px;border:0;border-left:1px solid rgba(137,238,232,.34);border-radius:0;background:linear-gradient(90deg,rgba(4,54,105,.08),rgba(4,54,105,.22) 55%,rgba(4,54,105,.08));box-shadow:none;overflow:hidden}
.tx-hero-insight:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:2px;background:linear-gradient(180deg,transparent,#89eee8 35%,#89eee8 65%,transparent);box-shadow:0 0 12px rgba(137,238,232,.7)}
.tx-hero-insight:after{content:"";position:absolute;top:0;bottom:0;width:54px;left:-72px;background:linear-gradient(90deg,transparent,rgba(143,247,242,.11),transparent);transform:skewX(-18deg);animation:txHudScan 6.5s ease-in-out infinite;pointer-events:none}
.tx-insight-top{display:flex;align-items:center;gap:7px;min-width:0;margin-bottom:4px}
.tx-live-dot{width:5px;height:5px;border-radius:50%;background:#89eee8;box-shadow:0 0 0 3px rgba(137,238,232,.08),0 0 9px rgba(137,238,232,.8);flex:0 0 auto;animation:txDotPulse 2.2s ease-in-out infinite}
.tx-insight-kicker{display:block;color:#9cf4ef;font-size:9px;font-weight:900;letter-spacing:1.45px;line-height:1.2;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tx-insight-line{display:flex;align-items:center;gap:9px;min-width:0;height:24px}
.tx-insight-line strong{color:#fff;font-size:17px;line-height:1;letter-spacing:-.15px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 0 14px rgba(255,255,255,.08)}
.tx-delta{display:inline-flex;align-items:center;flex:0 0 auto;font-size:9.5px;font-weight:900;line-height:1;padding:3px 6px;border:1px solid transparent;border-radius:999px;letter-spacing:.15px}
.tx-delta.up{color:#a7f3d0;background:rgba(16,185,129,.10);border-color:rgba(167,243,208,.13)}
.tx-delta.down{color:#fecaca;background:rgba(239,68,68,.10);border-color:rgba(254,202,202,.12)}
.tx-delta.neutral{color:#dbeafe;background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.08)}
.tx-insight-foot{display:flex;align-items:center;gap:10px;min-width:0;margin-top:4px}
.tx-hero-insight small{display:block;margin:0;color:rgba(255,255,255,.58);font-size:9px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tx-hud-line{height:1px;flex:1;min-width:28px;background:linear-gradient(90deg,rgba(137,238,232,.36),rgba(137,238,232,.04));position:relative;overflow:hidden}
.tx-hud-line:after{content:"";position:absolute;width:28%;height:1px;left:-30%;top:0;background:#9cf4ef;box-shadow:0 0 6px rgba(156,244,239,.75);animation:txHudSignal 3.8s linear infinite}
.tx-insight-dots{display:flex;gap:4px;align-items:center;flex:0 0 auto}
.tx-insight-dots i{display:block;width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.22);transition:.28s cubic-bezier(.2,.8,.2,1)}
.tx-insight-dots i.active{width:12px;border-radius:4px;background:#89eee8;box-shadow:0 0 8px rgba(137,238,232,.45)}
.tx-insight-swap .tx-insight-kicker{animation:txHudKickerIn .48s cubic-bezier(.2,.8,.2,1)}
.tx-insight-swap .tx-insight-line{animation:txHudValueIn .52s cubic-bezier(.16,.84,.2,1)}
.tx-insight-swap .tx-insight-foot{animation:txHudFootIn .58s cubic-bezier(.2,.8,.2,1)}
@keyframes txHudKickerIn{0%{opacity:0;transform:translateX(12px);filter:blur(3px)}100%{opacity:1;transform:none;filter:blur(0)}}
@keyframes txHudValueIn{0%{opacity:0;transform:translateX(18px);clip-path:inset(0 100% 0 0)}45%{opacity:1}100%{opacity:1;transform:none;clip-path:inset(0 0 0 0)}}
@keyframes txHudFootIn{0%{opacity:0;transform:translateY(3px)}100%{opacity:1;transform:none}}
@keyframes txHudScan{0%,16%{left:-72px;opacity:0}24%{opacity:1}46%{left:112%;opacity:0}100%{left:112%;opacity:0}}
@keyframes txHudSignal{to{left:108%}}
@keyframes txDotPulse{0%,100%{opacity:.55;transform:scale(.85)}50%{opacity:1;transform:scale(1.08)}}
@media(max-width:900px){.tx-smart-hero{grid-template-columns:1fr!important;gap:10px}.tx-hero-insight{justify-self:stretch;width:100%;min-height:58px;padding:7px 14px 7px 18px}}
@media(max-width:640px){.tx-hero-insight{min-height:54px}.tx-insight-line strong{font-size:15px}.tx-insight-kicker,.tx-hero-insight small{font-size:8.5px}}
@media(prefers-reduced-motion:reduce){.tx-hero-insight:after,.tx-live-dot,.tx-hud-line:after,.tx-insight-swap .tx-insight-kicker,.tx-insight-swap .tx-insight-line,.tx-insight-swap .tx-insight-foot{animation:none}}


/* v12.8.265 · Inicio HUD fusionado — sin tarjetas/sombras internas + lectura más lenta */
.home-workspace .command-live{grid-template-columns:repeat(5,minmax(0,1fr))!important;overflow:hidden;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}
.home-workspace .command-module.command-hud{min-width:0!important;overflow:hidden!important;padding:0!important;isolation:isolate;background:transparent!important;background-image:none!important;box-shadow:none!important;filter:none!important;backdrop-filter:none!important;transform:none!important;border-radius:0!important;border-top:0!important;border-bottom:0!important}
.home-workspace .command-module.command-hud:hover{background:rgba(73,214,255,.035)!important;box-shadow:none!important;transform:none!important}
.home-workspace .command-module.command-hud:after{display:none!important}
.home-workspace .command-module.command-hud + .command-module.command-hud{border-left:0!important}
.command-hud-track{position:relative;width:100%;height:100%;min-height:82px;background:transparent!important;box-shadow:none!important}
.command-hud-slide{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:11px 15px 13px;opacity:0;transform:translateY(6px);filter:blur(1.4px);animation:homeHudCycle 21s cubic-bezier(.22,.72,.26,1) infinite;will-change:opacity,transform,filter}
.command-hud-slide:nth-child(2){animation-delay:7s}.command-hud-slide:nth-child(3){animation-delay:14s}
.command-hud-slide span{min-height:0!important;font-size:8.2px!important;font-weight:900!important;letter-spacing:.14em!important;color:#72eaff!important;text-transform:uppercase;text-shadow:0 0 12px rgba(73,224,255,.18)}
.command-hud-slide strong{min-height:0!important;margin:4px 0 2px!important;font-size:14.2px!important;line-height:1.08!important;font-weight:850!important;color:#fff!important;letter-spacing:-.2px;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;text-shadow:0 1px 1px rgba(1,24,54,.10)}
.command-hud-slide small{min-height:0!important;font-size:8.6px!important;line-height:1.2!important;color:rgba(224,244,255,.68)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.command-hud-slide small.hud-up{color:#8ef5d0!important}.command-hud-slide small.hud-down{color:#ffb3b8!important}.command-hud-slide small.hud-neutral{color:rgba(224,244,255,.62)!important}
.command-hud-scan{position:absolute;z-index:2;pointer-events:none;top:12px;bottom:12px;width:1px;left:-4%;opacity:0;background:linear-gradient(180deg,transparent,rgba(110,238,255,.70),transparent);box-shadow:0 0 7px rgba(72,226,255,.38);animation:homeHudScan 9s ease-in-out infinite}
.command-hud-dots{position:absolute;z-index:3;right:11px;bottom:9px;display:flex;gap:3px;align-items:center}.command-hud-dots i{width:3px;height:3px;border-radius:50%;background:rgba(111,235,255,.25);box-shadow:0 0 5px rgba(70,225,255,.22);animation:homeHudDot 21s infinite}.command-hud-dots i:nth-child(2){animation-delay:7s}.command-hud-dots i:nth-child(3){animation-delay:14s}
.command-hud:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(105deg,transparent 0 44%,rgba(88,222,255,.035) 50%,transparent 56%);transform:translateX(-110%);animation:homeHudSheen 10s ease-in-out infinite}
.command-hud.command-warning{background:transparent!important}.command-hud.command-warning .command-hud-slide span{color:#ffd696!important}.command-hud.command-warning .command-hud-scan{background:linear-gradient(180deg,transparent,rgba(255,194,108,.72),transparent);box-shadow:0 0 7px rgba(255,180,82,.32)}
@keyframes homeHudCycle{0%{opacity:0;transform:translateY(6px);filter:blur(1.4px)}3%,30%{opacity:1;transform:translateY(0);filter:blur(0)}32.5%,100%{opacity:0;transform:translateY(-5px);filter:blur(1px)}}
@keyframes homeHudScan{0%,28%{left:-4%;opacity:0}38%{opacity:.42}66%{left:104%;opacity:0}100%{left:104%;opacity:0}}
@keyframes homeHudSheen{0%,66%{transform:translateX(-120%);opacity:0}73%{opacity:.65}86%,100%{transform:translateX(120%);opacity:0}}
@keyframes homeHudDot{0%,30%{background:#67eaff;box-shadow:0 0 7px rgba(70,225,255,.62);transform:scale(1.16)}33.5%,100%{background:rgba(111,235,255,.23);box-shadow:none;transform:scale(1)}}
@media(max-width:1100px){.home-workspace .command-live{grid-template-columns:repeat(5,minmax(92px,1fr))!important}.command-hud-slide{padding-left:10px;padding-right:10px}.command-hud-slide strong{font-size:12.5px!important}.command-hud-slide small{font-size:7.8px!important}}
@media(max-width:850px){.home-workspace .command-live{grid-template-columns:repeat(2,minmax(0,1fr))!important}.command-hud-track{min-height:70px}}
@media(max-width:560px){.home-workspace .command-live{grid-template-columns:1fr 1fr!important}.command-hud-slide strong{font-size:12px!important}.command-fiscal.command-hud{display:flex!important}}
@media(prefers-reduced-motion:reduce){.command-hud-slide,.command-hud-scan,.command-hud:before,.command-hud-dots i{animation:none!important}.command-hud-slide{opacity:0;filter:none;transform:none}.command-hud-slide:first-child{opacity:1}}

/* v12.8.266 — Reportes: selector de vista fuera del hero. Inventario adopta hero azul estándar. */
.inventory-hero{display:flex;align-items:center;justify-content:space-between}
.reports-panel-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.reports-panel-actions .report-view-toggle{display:flex;gap:7px;padding:3px;border:1px solid rgba(10,70,120,.10);border-radius:999px;background:#f4f8fb}
.reports-panel-actions .report-view-toggle .soft{min-height:32px;padding:0 12px;font-size:12px}
@media(max-width:720px){.reports-panel-actions{width:100%;justify-content:flex-start}.reports-panel-head{align-items:flex-start;gap:10px}.inventory-hero{display:block}}

/* v12.8.268 — encabezados limpios Inventario + Usuarios */
.users-hero{align-items:center}
.users-hero .primary{flex:0 0 auto;white-space:nowrap}
@media (max-width:760px){.users-hero{align-items:flex-start}.users-hero .primary{width:100%;margin-top:12px}}


/* v12.8.272 — Aprovechamiento de pantalla: Pedidos y Control de carga */
@media (min-width:901px){
  .orders-hero-web,.control-carga-hero{min-height:92px!important;padding-top:14px!important;padding-bottom:14px!important;margin-bottom:10px!important}
  .orders-hero-web h2,.control-carga-hero h2{font-size:26px!important;margin:2px 0!important}
  .orders-hero-web p,.control-carga-hero p{font-size:12px!important;line-height:1.3!important}
  .orders-metrics,.load-control-web-app .lc-web-metrics{gap:9px!important;margin-bottom:9px!important}
  .orders-metrics .order-kpi,.load-control-web-app .lc-web-metrics .metric-card{min-height:64px!important;padding:10px 13px!important}
  .orders-metrics .order-kpi strong,.load-control-web-app .lc-web-metrics .metric-card strong{font-size:20px!important;margin:3px 0 2px!important}
  .orders-panel,.load-control-web-app .lc-web-pane{padding:14px 16px!important}
  .orders-panel .panel-head,.load-control-web-app .lc-web-panel-head{margin-bottom:9px!important}
  .orders-panel .panel-head h3,.load-control-web-app .lc-web-panel-head h3{margin:2px 0!important;font-size:19px!important}
  .orders-panel .panel-head p{margin:2px 0 0!important;font-size:11px!important}
  .orders-table th{padding-top:9px!important;padding-bottom:9px!important}
  .orders-table td{padding-top:9px!important;padding-bottom:9px!important}
  .load-control-web-app .lc-auto-inventory-note{margin:7px 0 9px!important;padding:8px 12px!important;min-height:0!important}
  .load-control-web-app .lc-web-vehicle-list{gap:7px!important}
  .load-control-web-app .lc-vehicle-card{padding:10px 13px!important}
}


/* v12.8.275 — Control de carga: ancho útil completo + flota compacta sin scroll para 2 vehículos */
@media (min-width:901px){
  /* Usa el mismo borde visual derecho del hero, sin dejar la franja vacía. */
  .workspace>.content>#loadControlApp{
    width:calc(100% + var(--content-pad-x) - var(--page-edge))!important;
    max-width:none!important;
  }
  .load-control-web-app .lc-web-metrics,
  .load-control-web-app .lc-web-pane{width:100%!important;max-width:none!important}

  /* La explicación de peso automático deja de ocupar una fila independiente. */
  .load-control-web-app .lc-web-panel-head{min-height:42px!important;margin-bottom:7px!important;align-items:center!important}
  .load-control-web-app .lc-web-panel-title{min-width:0}
  .load-control-web-app .lc-web-title-line{display:flex;align-items:center;gap:12px;min-width:0;flex-wrap:wrap}
  .load-control-web-app .lc-web-title-line h3{margin:1px 0!important}
  .load-control-web-app .lc-auto-inventory-inline{font-size:10px;color:#6d7f90;font-weight:600;white-space:nowrap}
  .load-control-web-app .lc-auto-inventory-inline b{color:#2476ac;font-weight:850}

  /* Dos vehículos deben verse completos en una pantalla de portátil normal. */
  .load-control-web-app .lc-web-pane{padding:10px 14px!important}
  .load-control-web-app .lc-web-vehicle-list{gap:6px!important}
  .load-control-web-app .lc-vehicle-card{padding:8px 11px!important;border-radius:12px!important}
  .load-control-web-app .lc-vehicle-head{grid-template-columns:32px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important}
  .load-control-web-app .lc-vehicle-avatar{width:32px!important;height:32px!important;font-size:14px!important}
  .load-control-web-app .lc-vehicle-title-row{gap:8px!important}
  .load-control-web-app .lc-vehicle-title-row h4{font-size:14px!important}
  .load-control-web-app .lc-vehicle-capacity{font-size:9px!important;padding:3px 7px!important}
  .load-control-web-app .lc-vehicle-main p{margin:2px 0 5px!important;font-size:10px!important}
  .load-control-web-app .lc-vehicle-facts{grid-template-columns:repeat(4,minmax(92px,1fr))!important;gap:10px!important}
  .load-control-web-app .lc-vehicle-facts small{font-size:8px!important}
  .load-control-web-app .lc-vehicle-facts b{font-size:12px!important}
  .load-control-web-app .lc-vehicle-actions{gap:6px!important}
  .load-control-web-app .lc-vehicle-actions .pill{font-size:9px!important;padding:4px 7px!important}
  .load-control-web-app .lc-vehicle-actions .soft,
  .load-control-web-app .lc-vehicle-actions .lc-web-edit-btn{min-height:29px!important;padding:5px 8px!important;font-size:10px!important;border-radius:8px!important}
}
@media (min-width:901px) and (max-width:1180px){
  .load-control-web-app .lc-vehicle-head{grid-template-columns:32px minmax(0,1fr)!important}
  .load-control-web-app .lc-vehicle-actions{grid-column:2!important;justify-content:flex-start!important;margin-top:2px!important}
  .load-control-web-app .lc-vehicle-facts{grid-template-columns:repeat(4,minmax(78px,1fr))!important}
}
@media (max-width:900px){
  .load-control-web-app .lc-web-title-line{display:block}
  .load-control-web-app .lc-auto-inventory-inline{display:block;margin-top:3px;font-size:10px;color:#6d7f90}
}

/* v12.8.276: el HUD de Inicio permanece estable durante la hidratación inicial.
   Evita que cada respuesta asíncrona reinicie el carrusel y repita la primera notificación. */
.home-workspace:not(.home-hud-ready) .command-hud-slide{animation:none!important;opacity:0!important;transform:none!important;filter:none!important}
.home-workspace:not(.home-hud-ready) .command-hud-slide:first-child{opacity:1!important}
.home-workspace:not(.home-hud-ready) .command-hud-dots i,.home-workspace:not(.home-hud-ready) .command-hud-scan{animation-play-state:paused!important}
\n\n/* v12.8.277 — Control de carga usa exactamente todo el ancho útil hasta el borde derecho. */\n@media (min-width:901px){\n  .workspace>.content>#loadControlApp{\n    display:block!important;\n    width:auto!important;\n    max-width:none!important;\n    margin-right:calc((var(--content-pad-x) - var(--page-edge)) * -1)!important;\n  }\n  #loadControlApp>.load-control-web-app.lc-payroll-format{\n    width:100%!important;\n    max-width:none!important;\n    margin-left:0!important;\n    margin-right:0!important;\n  }\n  #loadControlApp .lc-web-metrics,\n  #loadControlApp .lc-web-pane,\n  #loadControlApp .lc-web-vehicle-list,\n  #loadControlApp .lc-vehicle-card{\n    width:100%!important;\n    max-width:none!important;\n  }\n}\n\n/* v12.8.277 — no animar HUD hasta después del único montaje de Inicio. */\n.home-workspace:not(.home-hud-ready) .command-hud-track{visibility:visible!important}\n
/* v12.8.280 — Centro de notificaciones de Inicio. */
.home-command-actions{position:relative!important;align-self:stretch!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:flex-start!important;gap:12px!important;padding-top:0!important;width:128px!important}
.home-command-actions .home-notification-button{position:relative;width:36px;height:36px;min-width:36px;padding:0;border:1px solid rgba(255,255,255,.28);border-radius:11px;background:rgba(255,255,255,.12);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:none;transition:.18s ease}
.home-command-actions .home-notification-button:hover{background:rgba(255,255,255,.20);transform:translateY(-1px)}
.home-notification-bell{font-size:17px;line-height:1;filter:grayscale(1) brightness(4)}
.home-notification-badge{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:10px;background:#e53935;color:#fff;border:2px solid #0872a7;font-size:9px;font-weight:900;line-height:14px;text-align:center}
.home-command-actions .command-sale{margin-top:2px!important;align-self:flex-end!important}
.home-notification-backdrop{position:fixed;inset:0;background:rgba(8,24,40,.18);z-index:1190;backdrop-filter:blur(1px)}
.home-notification-drawer{position:fixed;z-index:1200;right:14px;top:14px;bottom:14px;width:min(410px,calc(100vw - 28px));background:#fff;border:1px solid #dbe7f0;border-radius:18px;box-shadow:0 22px 60px rgba(14,42,68,.24);transform:translateX(calc(100% + 30px));opacity:0;pointer-events:none;transition:transform .22s ease,opacity .18s ease;overflow:hidden}
.home-notification-drawer.open{transform:translateX(0);opacity:1;pointer-events:auto}
.home-notification-head{display:flex;justify-content:space-between;gap:16px;padding:20px 20px 14px;border-bottom:1px solid #edf2f6}.home-notification-head h3{margin:3px 0 2px;font-size:18px;color:#17344c}.home-notification-head p{margin:0;color:#758697;font-size:11px}.home-notification-close{width:32px;height:32px;border:0;border-radius:9px;background:#f2f6f9;color:#607486;font-size:22px;cursor:pointer}
.home-notification-tabs{display:flex;gap:6px;padding:10px 14px;border-bottom:1px solid #edf2f6}.home-notification-tabs button{border:0;border-radius:9px;background:transparent;padding:7px 11px;color:#718294;font-size:11px;font-weight:800}.home-notification-tabs button.active{background:#eaf5fc;color:#0871ad}.home-notification-tabs button:disabled{opacity:.45}
.home-notification-empty{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:#7a8b99}.home-notification-empty>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e9f7ef;color:#24945c;font-size:18px;margin-bottom:10px}.home-notification-empty strong{color:#28465d;font-size:13px}.home-notification-empty p{font-size:11px;max-width:240px;margin:5px 0}
.home-notification-list{padding:8px;overflow:auto;max-height:calc(100vh - 145px)}.home-notification-item{width:100%;display:grid;grid-template-columns:10px 1fr 18px;align-items:center;gap:9px;text-align:left;border:0;border-bottom:1px solid #eef3f6;background:#fff;padding:12px 10px;cursor:pointer}.home-notification-item:hover{background:#f8fbfd}.home-notification-dot{width:8px;height:8px;border-radius:50%;background:#3b91c6}.home-notification-item.warning .home-notification-dot{background:#e59b22}.home-notification-item.critical .home-notification-dot{background:#e34848}.home-notification-item b{display:block;color:#233f55;font-size:11px}.home-notification-item small{display:block;color:#718394;font-size:10px;margin-top:2px}.home-notification-item em{font-style:normal;color:#9aabb8;font-size:20px}
@media(max-width:850px){.home-command-actions{width:auto!important;flex-direction:row!important;align-items:flex-start!important;gap:7px!important}.home-command-actions .command-sale{margin-top:0!important}.home-notification-drawer{right:8px;top:8px;bottom:8px;width:calc(100vw - 16px)}}


/* v12.8.282 — Inicio: campana integrada al HUD y Nueva venta debajo. */
@media (min-width:851px){
  .home-command-actions{
    position:relative!important;
    align-self:stretch!important;
    width:128px!important;
    min-width:128px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    justify-content:flex-end!important;
    gap:0!important;
    padding:0!important;
  }
  .home-command-actions .home-notification-button{
    position:absolute!important;
    top:2px!important;
    right:4px!important;
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    display:grid!important;
    place-items:center!important;
    color:#fff!important;
    cursor:pointer!important;
  }
  .home-command-actions .home-notification-button:hover{
    background:transparent!important;
    transform:scale(1.06)!important;
    box-shadow:none!important;
  }
  .home-notification-bell{
    font-size:18px!important;
    line-height:1!important;
    filter:grayscale(1) brightness(4)!important;
  }
  .home-notification-badge{
    right:-7px!important;
    top:-6px!important;
    border-color:#0876aa!important;
  }
  .home-command-actions .command-sale{
    margin-top:auto!important;
    margin-bottom:1px!important;
    align-self:flex-end!important;
  }
}
@media(max-width:850px){
  .home-command-actions{position:relative!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:flex-start!important;gap:6px!important}
  .home-command-actions .home-notification-button{border:0!important;background:transparent!important;box-shadow:none!important;width:28px!important;height:28px!important;min-width:28px!important}
  .home-command-actions .command-sale{margin-top:0!important}
}


/* v12.8.282 — Inicio: jerarquía profesional de Accesos rápidos */
.dashboard-home .home-quick{padding:17px 16px 14px!important}
.dashboard-home .home-quick .panel-head{margin-bottom:9px!important;padding-bottom:9px;border-bottom:1px solid #edf1f5}
.dashboard-home .home-quick .panel-head h3{font-size:15px!important;letter-spacing:-.2px}
.dashboard-home .home-quick #quickLinks{display:grid;gap:6px}
.dashboard-home .home-quick #quickLinks .quick-link{position:relative;display:grid!important;grid-template-columns:30px minmax(0,1fr) 12px!important;align-items:center;gap:9px;padding:9px 9px!important;border:1px solid transparent!important;border-radius:10px;text-decoration:none;transition:background .15s,border-color .15s,transform .15s}
.dashboard-home .home-quick #quickLinks .quick-link:hover{background:#f6faff;border-color:#dbeaf5!important;transform:translateX(1px)}
.dashboard-home .home-quick #quickLinks .quick-link-icon{width:30px;height:30px;border-radius:9px;background:#edf6fd;color:#1378d1;display:grid;place-items:center;font-size:14px;font-weight:800;margin:0!important}
.dashboard-home .home-quick #quickLinks .quick-link-copy{display:block;min-width:0;margin:0!important}
.dashboard-home .home-quick #quickLinks .quick-link-kicker{display:block;margin:0 0 1px!important;font-size:8px!important;line-height:1.15;text-transform:uppercase;letter-spacing:.7px;font-weight:800;color:#7f91a4}
.dashboard-home .home-quick #quickLinks .quick-link b{display:block;font-size:12.5px;line-height:1.2;color:#1b2b3d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-home .home-quick #quickLinks .quick-link-desc{display:block!important;margin:2px 0 0!important;font-size:9.5px!important;line-height:1.2;color:#8996a5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-home .home-quick #quickLinks .quick-link>i{display:block!important;grid-column:3!important;grid-row:1!important;align-self:center;color:#91a8ba;font-size:17px;font-style:normal}
.dashboard-home .home-quick #quickLinks .quick-link-secondary{margin-top:2px;background:#fafbfc;border-color:#f0f2f5!important}
.dashboard-home .home-quick #quickLinks .quick-link-secondary .quick-link-icon{background:#f1f3f5;color:#66788a}
.dashboard-home .home-quick #quickLinks .quick-link-secondary .quick-link-kicker{color:#9aa5af}
.dashboard-home .home-quick .quick-edit-btn{padding:6px 9px!important;font-size:10px!important;background:transparent!important;color:#39759f!important}


/* v12.8.283 — Accesos rápidos compactos, legibles y sin flechas */
.dashboard-home .home-quick{
  padding:15px 15px 13px!important;
  overflow:visible!important;
}
.dashboard-home .home-quick .panel-head{
  margin-bottom:5px!important;
  padding-bottom:8px!important;
}
.dashboard-home .home-quick #quickLinks{
  display:grid!important;
  gap:2px!important;
  overflow:visible!important;
  max-height:none!important;
}
.dashboard-home .home-quick #quickLinks .quick-link{
  display:grid!important;
  grid-template-columns:27px minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  min-height:39px!important;
  padding:5px 4px!important;
  margin:0!important;
  border:0!important;
  border-bottom:1px solid #eef2f5!important;
  border-radius:7px!important;
  background:transparent!important;
  text-decoration:none!important;
  transform:none!important;
}
.dashboard-home .home-quick #quickLinks .quick-link:last-child{
  border-bottom:0!important;
}
.dashboard-home .home-quick #quickLinks .quick-link:hover{
  background:#f6faff!important;
  border-color:#eef2f5!important;
  transform:none!important;
}
.dashboard-home .home-quick #quickLinks .quick-link-icon{
  width:27px!important;
  height:27px!important;
  border-radius:8px!important;
  display:grid!important;
  place-items:center!important;
  background:#eef7fd!important;
  color:#147ac4!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:700!important;
  margin:0!important;
}
.dashboard-home .home-quick #quickLinks .quick-link b{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:#1b2b3d!important;
  font-size:12.25px!important;
  line-height:1.2!important;
  font-weight:700!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:normal!important;
}
.dashboard-home .home-quick #quickLinks .quick-link-copy,
.dashboard-home .home-quick #quickLinks .quick-link-kicker,
.dashboard-home .home-quick #quickLinks .quick-link-desc,
.dashboard-home .home-quick #quickLinks .quick-link>i{
  display:none!important;
}

/* v12.8.285 — Inicio premium en una pantalla: densidad adaptativa sin perder jerarquía. */
@media (min-width:1001px){
  .dashboard-home .home-main-stack{gap:8px!important}
  .dashboard-home .home-team{overflow:hidden}
}

/* Portátiles / viewport de poca altura: recuperar espacio vertical, no encoger la identidad. */
@media (min-width:1001px) and (max-height:850px){
  .home-workspace>.content{padding-top:12px!important;padding-bottom:16px!important}
  .home-workspace .command-hero{
    min-height:102px!important;
    height:102px!important;
    margin-bottom:10px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  .home-workspace .command-hud-track{min-height:68px!important}
  .home-workspace .command-hud-slide{padding-top:8px!important;padding-bottom:9px!important}
  .home-workspace .command-intro h2{margin-top:2px!important;margin-bottom:2px!important}
  .home-workspace .command-user-status{margin-top:2px!important}

  .dashboard-home .home-metrics{
    margin-bottom:8px!important;
    gap:6px!important;
  }
  .dashboard-home .home-metrics .metric-card{
    min-height:58px!important;
    padding-top:7px!important;
    padding-bottom:7px!important;
  }
  .dashboard-home .home-metrics .metric-icon{
    width:28px!important;
    height:28px!important;
    flex-basis:28px!important;
  }
  .dashboard-home .home-metrics .metric-card strong{margin:1px 0!important;line-height:1.05!important}
  .dashboard-home .home-metrics .metric-card span{line-height:1.1!important}
  .dashboard-home .home-metrics .metric-card small{line-height:1.05!important}

  .dashboard-home .home-primary-grid{gap:10px!important}
  .dashboard-home .home-main-stack{gap:7px!important}
  .dashboard-home .home-chart-panel{padding:11px 15px 9px!important}
  .dashboard-home .home-chart-panel .panel-head{margin-bottom:5px!important}
  .dashboard-home .home-period-tabs{margin-bottom:2px!important}
  .dashboard-home .home-period{min-height:27px!important;padding:0 9px!important}
  .dashboard-home .home-chart-panel h3{margin-top:2px!important;margin-bottom:0!important;line-height:1.1!important}
  .dashboard-home .home-chart-panel .mini-chart{
    height:116px!important;
    min-height:116px!important;
    padding:7px 7px 3px!important;
    gap:7px!important;
  }
  .dashboard-home .home-chart-panel .mini-chart>div{gap:3px!important}

  .dashboard-home .home-main-stack .home-team{
    margin-top:0!important;
    padding:9px 15px 8px!important;
  }
  .dashboard-home .home-main-stack .home-team .panel-head{margin-bottom:3px!important}
  .dashboard-home .home-main-stack .home-team .eyebrow{font-size:8px!important;line-height:1!important}
  .dashboard-home .home-main-stack .home-team h3{font-size:14px!important;line-height:1.1!important;margin-top:2px!important}
  .dashboard-home .home-main-stack .home-team table{margin-top:0!important}
  .dashboard-home .home-main-stack .home-team th,
  .dashboard-home .home-main-stack .home-team td{padding-top:5px!important;padding-bottom:5px!important;line-height:1.1!important}

  .dashboard-home .home-quick{padding:11px 13px 9px!important}
  .dashboard-home .home-quick .panel-head{margin-bottom:3px!important;padding-bottom:6px!important}
  .dashboard-home .home-quick #quickLinks{gap:0!important}
  .dashboard-home .home-quick #quickLinks .quick-link{
    min-height:34px!important;
    padding-top:3px!important;
    padding-bottom:3px!important;
    grid-template-columns:25px minmax(0,1fr)!important;
    gap:7px!important;
  }
  .dashboard-home .home-quick #quickLinks .quick-link-icon{width:25px!important;height:25px!important;border-radius:7px!important;font-size:12px!important}
  .dashboard-home .home-quick #quickLinks .quick-link b{font-size:11.75px!important;line-height:1.1!important}
}

/* Viewports especialmente bajos: un último ajuste de aire, sin reducir números principales. */
@media (min-width:1001px) and (max-height:700px){
  .home-workspace>.content{padding-top:8px!important;padding-bottom:10px!important}
  .home-workspace .command-hero{min-height:92px!important;height:92px!important;margin-bottom:7px!important}
  .home-workspace .command-hud-track{min-height:60px!important}
  .dashboard-home .home-metrics{margin-bottom:6px!important}
  .dashboard-home .home-metrics .metric-card{min-height:53px!important;padding-top:5px!important;padding-bottom:5px!important}
  .dashboard-home .home-chart-panel{padding-top:9px!important;padding-bottom:7px!important}
  .dashboard-home .home-chart-panel .mini-chart{height:102px!important;min-height:102px!important;padding-top:5px!important}
  .dashboard-home .home-main-stack{gap:6px!important}
  .dashboard-home .home-main-stack .home-team{padding-top:7px!important;padding-bottom:6px!important}
  .dashboard-home .home-main-stack .home-team th,
  .dashboard-home .home-main-stack .home-team td{padding-top:4px!important;padding-bottom:4px!important}
  .dashboard-home .home-quick{padding-top:9px!important;padding-bottom:7px!important}
  .dashboard-home .home-quick #quickLinks .quick-link{min-height:31px!important}
}


/* v12.8.286 — Inicio: devolver aire premium al HUD y escala útil al gráfico sin perder una pantalla. */
@media (min-width:1001px) and (max-height:850px){
  /* El HUD conserva densidad, pero el saludo y CTA ya no quedan pegados a los bordes. */
  .home-workspace .command-hero{
    min-height:106px!important;
    height:106px!important;
    padding-top:13px!important;
    padding-bottom:13px!important;
  }
  .home-workspace .command-intro{
    padding-top:5px!important;
  }
  .home-workspace .command-intro-top{
    margin-bottom:6px!important;
  }
  .home-workspace .command-intro h2{
    margin-top:3px!important;
    margin-bottom:3px!important;
  }
  .home-workspace .command-user-status{
    margin-top:3px!important;
  }
  .home-workspace .home-command-actions .home-notification-button{
    top:5px!important;
    right:4px!important;
  }
  .home-workspace .home-command-actions .command-sale{
    margin-bottom:5px!important;
  }

  /* Recuperar altura real para las barras: menos vacío visual entre el tope del panel y la serie. */
  .dashboard-home .home-chart-panel{
    padding-top:12px!important;
    padding-bottom:9px!important;
  }
  .dashboard-home .home-chart-panel .panel-head{
    margin-bottom:3px!important;
  }
  .dashboard-home .home-chart-panel .mini-chart{
    height:128px!important;
    min-height:128px!important;
    padding-top:5px!important;
    padding-bottom:3px!important;
  }
  .dashboard-home .home-main-stack .home-team{
    padding-top:8px!important;
    padding-bottom:7px!important;
  }
  .dashboard-home .home-main-stack .home-team th,
  .dashboard-home .home-main-stack .home-team td{
    padding-top:4px!important;
    padding-bottom:4px!important;
  }
}

/* En pantallas extremadamente bajas mantener una pantalla, pero sin volver a pegar el HUD. */
@media (min-width:1001px) and (max-height:700px){
  .home-workspace .command-hero{
    min-height:98px!important;
    height:98px!important;
    padding-top:11px!important;
    padding-bottom:11px!important;
  }
  .home-workspace .command-intro{padding-top:4px!important}
  .home-workspace .home-command-actions .command-sale{margin-bottom:4px!important}
  .dashboard-home .home-chart-panel .mini-chart{
    height:112px!important;
    min-height:112px!important;
  }
}

/* v12.8.287 — corrección efectiva: aire real en HUD + gráfico con altura útil. */
@media (min-width:1001px) and (max-height:850px){
  .home-workspace .command-hero{
    min-height:108px!important;
    height:108px!important;
    padding-top:14px!important;
    padding-bottom:14px!important;
  }
  .home-workspace .command-intro{
    padding-top:0!important;
    padding-bottom:0!important;
  }
  .home-workspace .command-intro-top{margin-bottom:6px!important}
  .home-workspace .command-intro h2.greeting-line{margin-top:4px!important;margin-bottom:4px!important}
  .home-workspace .command-user-status{margin-top:3px!important}

  .home-workspace .home-command-actions{
    padding-right:5px!important;
    padding-bottom:6px!important;
  }
  .home-workspace .home-command-actions .home-notification-button{
    top:1px!important;
    right:0!important;
  }
  .home-workspace .home-command-actions .command-sale{
    margin-top:3px!important;
    margin-bottom:0!important;
  }

  .dashboard-home .home-chart-panel .mini-chart{
    height:132px!important;
    min-height:132px!important;
    padding-top:4px!important;
    padding-bottom:3px!important;
  }
}

@media (min-width:1001px) and (max-height:700px){
  .home-workspace .command-hero{
    min-height:101px!important;
    height:101px!important;
    padding-top:12px!important;
    padding-bottom:12px!important;
  }
  .dashboard-home .home-chart-panel .mini-chart{
    height:116px!important;
    min-height:116px!important;
  }
}


/* v12.8.289 — Inicio: aire real en saludo, rail más alto, estadísticas con más altura y 8 accesos. */
@media (min-width:1001px) and (max-height:850px){
  /* El saludo deja de rozar el borde inferior del HUD: sube el bloque, no se encoge. */
  .home-workspace .command-hero{
    min-height:112px!important;
    height:112px!important;
    padding-top:14px!important;
    padding-bottom:16px!important;
  }
  .home-workspace .command-intro{
    transform:translateY(-5px)!important;
  }
  .home-workspace .command-intro h2.greeting-line{
    margin-top:5px!important;
    margin-bottom:5px!important;
  }
  .home-workspace .command-user-status{margin-top:4px!important}

  /* El rail comienza un poco más arriba una vez retirada Declaraciones de Hacienda. */
  .app-shell:has(.home-workspace) .sidebar{
    padding-top:154px!important;
    background:linear-gradient(180deg,transparent 0,transparent 140px,var(--nav) 140px,#09192d 100%)!important;
  }
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar nav{margin-top:5px!important}
  .app-shell:not(.sidebar-collapsed):has(.home-workspace) .sidebar nav{
    top:212px!important;
    max-height:calc(100vh - 268px)!important;
  }

  /* Estadísticas recupera altura sin sacrificar Rendimiento de hoy. */
  .dashboard-home .home-chart-panel{padding-top:12px!important;padding-bottom:10px!important}
  .dashboard-home .home-chart-panel .mini-chart{
    height:146px!important;
    min-height:146px!important;
    padding-top:5px!important;
    padding-bottom:4px!important;
  }
  .dashboard-home .home-main-stack .home-team{
    padding-top:7px!important;
    padding-bottom:6px!important;
  }
  .dashboard-home .home-main-stack .home-team th,
  .dashboard-home .home-main-stack .home-team td{
    padding-top:3px!important;
    padding-bottom:3px!important;
  }

  /* Hasta 8 accesos conservando el panel compacto. */
  .dashboard-home .home-quick #quickLinks .quick-link{
    min-height:30px!important;
    padding-top:2px!important;
    padding-bottom:2px!important;
  }
  .dashboard-home .home-quick #quickLinks .quick-link-icon{
    width:23px!important;height:23px!important;flex-basis:23px!important;font-size:11px!important;
  }
}

@media (min-width:1001px) and (max-height:700px){
  .home-workspace .command-hero{
    min-height:104px!important;
    height:104px!important;
    padding-top:12px!important;
    padding-bottom:14px!important;
  }
  .home-workspace .command-intro{transform:translateY(-4px)!important}
  .dashboard-home .home-chart-panel .mini-chart{
    height:126px!important;
    min-height:126px!important;
  }
  .dashboard-home .home-quick #quickLinks .quick-link{min-height:28px!important}
}


/* v12.8.290 — corrección visual real de Inicio: rail flotante, HUD con jerarquía y gráfico más alto. */
@media (min-width:1001px){
  /* Quitar la columna/rectángulo azul agregado en .289. El rail flotante conserva su propia pieza. */
  .app-shell:has(.home-workspace) .sidebar,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar,
  .app-shell:not(.sidebar-collapsed):has(.home-workspace) .sidebar{
    background:transparent!important;
    padding-top:148px!important;
  }
  .app-shell:has(.home-workspace) .sidebar::before,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar::before{
    top:160px!important;
    bottom:14px!important;
  }
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar nav{margin-top:0!important}

  /* Saludo: subir todo el bloque izquierdo para que Mario y el estado no rocen la línea inferior. */
  .home-workspace .command-intro{
    transform:translateY(-11px)!important;
  }
  .home-workspace .command-intro h2.greeting-line{
    margin-top:3px!important;
    margin-bottom:3px!important;
  }
  .home-workspace .command-user-status{
    margin-top:2px!important;
  }

  /* Campana arriba, Nueva venta abajo: posiciones independientes, no flex dependiente. */
  .home-workspace .home-command-actions{
    position:relative!important;
    align-self:stretch!important;
    width:128px!important;
    min-width:128px!important;
    display:block!important;
    padding:0!important;
  }
  .home-workspace .home-command-actions .home-notification-button{
    position:absolute!important;
    top:7px!important;
    right:5px!important;
    margin:0!important;
  }
  .home-workspace .home-command-actions .command-sale{
    position:absolute!important;
    right:0!important;
    bottom:7px!important;
    top:auto!important;
    margin:0!important;
  }

  /* Todos los accesos, incluidos Ruta / Centro Hacienda / Factura, exactamente iguales. */
  .dashboard-home .home-quick #quickLinks{
    gap:1px!important;
  }
  .dashboard-home .home-quick #quickLinks .quick-link{
    min-height:31px!important;
    height:31px!important;
    padding:2px 4px!important;
    grid-template-columns:24px minmax(0,1fr)!important;
    gap:7px!important;
  }
  .dashboard-home .home-quick #quickLinks .quick-link-icon{
    width:23px!important;
    height:23px!important;
    min-width:23px!important;
    border-radius:7px!important;
    font-size:11px!important;
  }
  .dashboard-home .home-quick #quickLinks .quick-link b{
    font-size:11.4px!important;
    line-height:1!important;
  }
}

@media (min-width:1001px) and (max-height:850px){
  /* Ganancia visible de altura: +18px frente a .289. */
  .dashboard-home .home-chart-panel .mini-chart{
    height:164px!important;
    min-height:164px!important;
    padding-top:4px!important;
    padding-bottom:3px!important;
  }
  .dashboard-home .home-chart-panel{
    padding-top:10px!important;
    padding-bottom:8px!important;
  }
  .dashboard-home .home-main-stack .home-team{
    padding-top:6px!important;
    padding-bottom:5px!important;
  }
  .dashboard-home .home-main-stack .home-team th,
  .dashboard-home .home-main-stack .home-team td{
    padding-top:2px!important;
    padding-bottom:2px!important;
  }
}
@media (min-width:1001px) and (max-height:700px){
  .home-workspace .command-intro{transform:translateY(-10px)!important}
  .dashboard-home .home-chart-panel .mini-chart{
    height:144px!important;
    min-height:144px!important;
  }
}


/* v12.8.292 — SOLO menú lateral de Inicio. No modifica HUD, gráfico ni dashboard. */
@media (min-width:1001px){
  /* El rail conserva el aspecto flotante, pero se adapta a las opciones reales restantes. */
  .app-shell:has(.home-workspace) .sidebar,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar{
    padding-top:148px!important;
    background:transparent!important;
  }
  .app-shell:has(.home-workspace) .sidebar::before,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar::before{
    top:160px!important;
    bottom:auto!important;
    height:244px!important;
    border-radius:22px!important;
  }

  /* Sin huecos empujados al fondo: cada control forma parte de una sola cápsula compacta. */
  .app-shell:has(.home-workspace) .sidebar nav{
    margin-top:0!important;
    overflow:visible!important;
  }
  .app-shell:has(.home-workspace) .sidebar .owner-center{
    margin-top:4px!important;
  }
  .app-shell:has(.home-workspace) .sidebar .sidebar-settings{
    margin-top:4px!important;
  }
  .app-shell:has(.home-workspace) .sidebar .logout{
    margin-top:4px!important;
  }

  /* Inicio activo queda integrado al rail: sin tarjeta/cuadro flotante alrededor de la casita. */
  .app-shell:has(.home-workspace) .sidebar nav a[href*="/app/inicio"].active,
  .app-shell:has(.home-workspace) .sidebar nav a[href$="#/app/inicio"].active{
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
  }
  .app-shell:has(.home-workspace) .sidebar nav a[href*="/app/inicio"].active b,
  .app-shell:has(.home-workspace) .sidebar nav a[href$="#/app/inicio"].active b{
    color:#ffffff!important;
    filter:none!important;
  }
}

/* v12.8.294 — dock glass refinado: aire superior, privacidad clara y altura ajustada. */
@media (min-width:1001px){
  .app-shell:has(.home-workspace) .sidebar,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar{
    background:transparent!important;
    padding-top:166px!important;
  }
  .app-shell:has(.home-workspace) .sidebar::before,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar::before{
    top:154px!important;
    height:298px!important;
    bottom:auto!important;
    background:linear-gradient(180deg,rgba(8,91,174,.84),rgba(7,120,190,.76))!important;
    border:1px solid rgba(255,255,255,.24)!important;
    box-shadow:0 14px 34px rgba(13,72,132,.16),inset 0 1px 0 rgba(255,255,255,.16)!important;
    backdrop-filter:blur(16px) saturate(135%)!important;
    -webkit-backdrop-filter:blur(16px) saturate(135%)!important;
    border-radius:24px!important;
  }
  .app-shell:has(.home-workspace) .sidebar nav a,
  .app-shell:has(.home-workspace) .sidebar .sidebar-search-btn,
  .app-shell:has(.home-workspace) .sidebar .sidebar-help,
  .app-shell:has(.home-workspace) .sidebar .sidebar-privacy,
  .app-shell:has(.home-workspace) .sidebar .sidebar-settings,
  .app-shell:has(.home-workspace) .sidebar .logout{
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
  }
  .sidebar-help,.sidebar-privacy{
    height:42px;border:0;background:transparent;color:#d9ecfb;text-decoration:none;border-radius:12px;
    display:flex;align-items:center;gap:11px;padding:0 11px;text-align:left;margin-top:4px;
  }
  .sidebar-help b,.sidebar-privacy b{width:21px;text-align:center;font-size:16px;font-weight:650}
  .sidebar-help:hover,.sidebar-privacy:hover,.sidebar-help.active,.sidebar-privacy.active{color:#fff;background:rgba(255,255,255,.08)!important}
  .app-shell.sidebar-collapsed .sidebar-help,.app-shell.sidebar-collapsed .sidebar-privacy{width:52px!important;height:42px!important;margin-left:auto!important;margin-right:auto!important;justify-content:center!important;padding:0!important}
  .app-shell.sidebar-collapsed .sidebar-help span,.app-shell.sidebar-collapsed .sidebar-privacy span{display:none!important}
  .app-shell:not(.sidebar-collapsed) .sidebar-help,.app-shell:not(.sidebar-collapsed) .sidebar-privacy{width:100%!important;padding:0 14px!important;gap:12px!important}
  .app-shell:has(.home-workspace) .sidebar .sidebar-settings{margin-top:12px!important}
  .app-shell:has(.home-workspace) .sidebar .logout{margin-top:4px!important}
}
.legal-page{max-width:820px;margin:0 auto}.legal-page h2{margin:8px 0 10px;font-size:24px}.legal-page p{color:var(--muted);line-height:1.7}.legal-links{display:grid;gap:5px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.legal-links span{color:var(--muted);margin-bottom:12px;font-size:12px}

/* v12.8.297 — BASE .294: bajar únicamente el dock lateral de Inicio. */
@media (min-width:1001px){
  .app-shell:has(.home-workspace) .sidebar,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar{
    padding-top:198px!important; /* .294: 166px; +32px */
  }
  .app-shell:has(.home-workspace) .sidebar::before,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar::before{
    top:186px!important; /* .294: 154px; +32px */
  }
}

/* v12.8.298 — HUD Inicio: campana separada y marca VENTYUM con aire superior.
   Base: v12.8.297 (derivada de la .294 estable). Solo ajustes visuales del HUD. */
@media (min-width:1001px){
  /* La marca deja de rozar el borde superior sin desplazar saludo/estado. */
  .home-workspace .command-intro .command-brand{
    position:relative!important;
    top:7px!important;
  }

  /* Campana más discreta, claramente por encima de Nueva venta. */
  .home-workspace .home-command-actions .home-notification-button{
    top:0!important;
    right:5px!important;
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
  }
  .home-workspace .home-notification-bell{
    font-size:15px!important;
  }
  .home-workspace .home-notification-badge{
    min-width:16px!important;
    height:16px!important;
    right:-6px!important;
    top:-5px!important;
    padding:0 4px!important;
    font-size:8px!important;
    line-height:12px!important;
  }

  /* Nueva venta conserva su ubicación inferior independiente. */
  .home-workspace .home-command-actions .command-sale{
    bottom:7px!important;
    top:auto!important;
  }
}

/* v12.8.299 — Inicio: jerarquía tipográfica en tarjetas operativas + Equipo más respirado. */
@media (min-width:1001px){
  /* "Consultar" / "Abrir" son acciones secundarias, no KPIs: bajar protagonismo. */
  .dashboard-home .home-metrics a.metric-link[href*="/app/inventario"] strong,
  .dashboard-home .home-metrics a.metric-link[href*="/app/control-carga"] strong{
    font-size:14px!important;
    line-height:1.08!important;
    letter-spacing:-.15px!important;
    font-weight:750!important;
    margin:2px 0!important;
  }

  /* Equipo / Rendimiento: menos altura muerta y separación más limpia entre título y tabla. */
  .dashboard-home .home-main-stack .home-team{
    padding:9px 14px 8px!important;
  }
  .dashboard-home .home-main-stack .home-team .panel-head{
    margin-bottom:5px!important;
    align-items:flex-start!important;
  }
  .dashboard-home .home-main-stack .home-team .eyebrow{
    font-size:8px!important;
    line-height:1!important;
    margin-bottom:2px!important;
  }
  .dashboard-home .home-main-stack .home-team h3{
    font-size:13.5px!important;
    line-height:1.08!important;
    margin:1px 0 0!important;
  }
  .dashboard-home .home-main-stack .home-team th,
  .dashboard-home .home-main-stack .home-team td{
    padding-top:3px!important;
    padding-bottom:3px!important;
    line-height:1.08!important;
  }
}


/* v12.8.301 — Inicio: ocho tarjetas operativas, siempre una sola fila en escritorio. */
@media (min-width:901px){
  .dashboard-home .home-metrics{
    display:grid!important;
    grid-template-columns:repeat(8,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    gap:4px!important;
    width:100%!important;
  }
  .dashboard-home .home-metrics .metric-card{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    padding-left:5px!important;
    padding-right:5px!important;
    gap:4px!important;
  }
  .dashboard-home .home-metrics .metric-icon{
    width:24px!important;
    height:24px!important;
    flex:0 0 24px!important;
  }
  .dashboard-home .home-metrics .metric-card>div:last-child{min-width:0!important}
  .dashboard-home .home-metrics .metric-card span,
  .dashboard-home .home-metrics .metric-card strong,
  .dashboard-home .home-metrics .metric-card small{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .dashboard-home .home-metrics .metric-card strong{font-size:13.5px!important}
  .dashboard-home .home-metrics .metric-card span{font-size:9.5px!important}
  .dashboard-home .home-metrics .metric-card small{font-size:8.5px!important}
}

/* v12.8.302 — Accesos fijos, solo ordenables */
.quick-order-modal{max-width:620px}
.quick-order-list{display:flex;flex-direction:column;gap:7px;max-height:min(58vh,560px);overflow:auto;padding:4px 2px 8px}
.quick-order-item{display:grid;grid-template-columns:28px 34px minmax(0,1fr) 28px;align-items:center;gap:10px;min-height:52px;padding:8px 10px;border:1px solid rgba(15,61,108,.10);border-radius:13px;background:rgba(255,255,255,.88);cursor:grab;user-select:none;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}
.quick-order-item:active{cursor:grabbing}
.quick-order-item.dragging{opacity:.48;box-shadow:0 10px 26px rgba(15,61,108,.16)}
.quick-order-handle{font-size:18px;line-height:1;color:#8ca2b8;letter-spacing:-4px;text-align:center}
.quick-order-copy{display:flex;flex-direction:column;min-width:0;gap:2px}
.quick-order-copy b{font-size:13px;color:#102b45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quick-order-copy small{font-size:11px;color:#75879a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quick-order-pos{width:25px;height:25px;border-radius:999px;display:grid;place-items:center;background:#eef7fc;color:#2487b8;font-size:11px;font-weight:800}
@media(max-width:760px){.quick-order-item{grid-template-columns:24px 30px minmax(0,1fr) 24px}.quick-order-copy small{display:none}}


/* v12.8.303 — Inicio: tarjetas operativas con ancho según relevancia y contenido centrado. */
@media (min-width:901px){
  .dashboard-home .home-metrics{
    grid-template-columns:
      minmax(150px,1.55fr)  /* Ventas de hoy */
      minmax(132px,1.35fr)  /* Ticket promedio */
      minmax(92px,.92fr)    /* Pedidos */
      minmax(96px,.96fr)    /* Clientes */
      minmax(88px,.88fr)    /* Productos */
      minmax(82px,.82fr)    /* Usuarios */
      minmax(112px,1.10fr)  /* Inventario */
      minmax(124px,1.22fr)  /* Control de carga */
      !important;
    gap:6px!important;
    align-items:stretch!important;
  }

  .dashboard-home .home-metrics .metric-card{
    min-width:0!important;
    padding:7px 8px!important;
    gap:6px!important;
    overflow:hidden!important;
  }

  /* Los importes deben poder crecer a millones sin cortarse. */
  .dashboard-home #homeSalesMetric,
  .dashboard-home #homeTicketMetric{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .dashboard-home #homeSalesMetric>div:last-child,
  .dashboard-home #homeTicketMetric>div:last-child{
    flex:1 1 auto!important;
    min-width:0!important;
  }
  .dashboard-home #homeSalesMetric strong{
    font-size:clamp(14px,1.13vw,18px)!important;
    letter-spacing:-.45px!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    font-variant-numeric:tabular-nums!important;
  }
  .dashboard-home #homeTicketMetric strong{
    font-size:clamp(13.5px,1.03vw,16.5px)!important;
    letter-spacing:-.35px!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    font-variant-numeric:tabular-nums!important;
  }

  /* Tarjetas de conteo: centrar el bloque para evitar vacío visual a la derecha. */
  .dashboard-home .home-metrics a.metric-link[href*="/app/pedidos"],
  .dashboard-home .home-metrics a.metric-link[href*="/app/productos"],
  .dashboard-home .home-metrics a.metric-link[href*="/app/usuarios"]{
    justify-content:center!important;
    text-align:center!important;
  }
  .dashboard-home .home-metrics a.metric-link[href*="/app/pedidos"]>div:last-child,
  .dashboard-home .home-metrics a.metric-link[href*="/app/productos"]>div:last-child,
  .dashboard-home .home-metrics a.metric-link[href*="/app/usuarios"]>div:last-child{
    min-width:0!important;
    flex:0 1 auto!important;
  }
  .dashboard-home .home-metrics a.metric-link[href*="/app/pedidos"] strong,
  .dashboard-home .home-metrics a.metric-link[href*="/app/productos"] strong,
  .dashboard-home .home-metrics a.metric-link[href*="/app/usuarios"] strong{
    font-size:15px!important;
    font-variant-numeric:tabular-nums!important;
  }

  /* Clientes tiene un poco más de aire, pero mantiene lectura natural. */
  .dashboard-home .home-metrics a.metric-link[href*="/app/clientes"]{
    justify-content:center!important;
  }

  /* Inventario y carga conservan ancho para palabras completas. */
  .dashboard-home .home-metrics a.metric-link[href*="/app/inventario"] strong,
  .dashboard-home .home-metrics a.metric-link[href*="/app/control-carga"] strong{
    overflow:visible!important;
    text-overflow:clip!important;
  }
}

/* En laptops angostas mantenemos una sola fila reduciendo mínimos sin sacrificar Ventas. */
@media (min-width:901px) and (max-width:1280px){
  .dashboard-home .home-metrics{
    grid-template-columns:1.52fr 1.30fr .88fr .92fr .82fr .76fr 1.08fr 1.18fr!important;
    gap:4px!important;
  }
  .dashboard-home .home-metrics .metric-card{padding-left:5px!important;padding-right:5px!important}
  .dashboard-home #homeSalesMetric strong{font-size:clamp(13px,1.18vw,16px)!important}
  .dashboard-home #homeTicketMetric strong{font-size:clamp(12.5px,1.08vw,15px)!important}
}

/* v12.8.304 — Inicio: aprovechar el hueco libre a la izquierda de la fila operativa.
   El dock está más abajo, por lo que esta franja puede ensancharse hacia la izquierda
   sin superponer navegación ni alterar el HUD/gráfico. */
@media (min-width:1281px){
  .dashboard-home .home-metrics{
    width:calc(100% + 86px)!important;
    margin-left:-86px!important;
    margin-right:0!important;
  }
}
@media (min-width:1001px) and (max-width:1280px){
  .dashboard-home .home-metrics{
    width:calc(100% + 64px)!important;
    margin-left:-64px!important;
    margin-right:0!important;
  }
}
@media (min-width:901px) and (max-width:1000px){
  .dashboard-home .home-metrics{
    width:calc(100% + 34px)!important;
    margin-left:-34px!important;
    margin-right:0!important;
  }
}
/* v12.8.306 · lectura instantánea vs ayer */
.dashboard-home .home-metrics .metric-trend.trend-up{color:#119c70;font-weight:750}
.dashboard-home .home-metrics .metric-trend.trend-down{color:#d94b55;font-weight:750}
.dashboard-home .home-metrics .metric-trend.trend-neutral{color:#7b8794;font-weight:650}

/* v12.8.307 · comparativos reales: el color pertenece al texto visible y prevalece sobre small genérico */
.dashboard-home .home-metrics small.metric-trend.trend-up{color:#119c70!important;font-weight:800!important}
.dashboard-home .home-metrics small.metric-trend.trend-down{color:#d63d4a!important;font-weight:800!important}
.dashboard-home .home-metrics small.metric-trend.trend-neutral{color:#7b8794!important;font-weight:650!important}

/* v12.8.309 · primer ingreso: estructura de Inicio visible mientras hidrata datos. */
.dashboard-home.home-booting .metric-card strong{color:rgba(15,37,65,.36)}
.dashboard-home.home-booting .home-boot-line{display:block;width:68%;height:7px;border-radius:999px;background:rgba(18,76,125,.08);color:transparent;margin-top:5px}
.dashboard-home.home-booting .home-boot-bar{background:linear-gradient(180deg,rgba(0,184,224,.36),rgba(0,126,191,.22));border-radius:8px 8px 3px 3px}
.dashboard-home.home-booting .mini-chart b{color:rgba(20,42,67,.58)}
.dashboard-home.home-booting .mini-chart small{opacity:.22}
.dashboard-home.home-booting .home-boot-muted{opacity:.42;pointer-events:none}
.dashboard-home.home-booting .home-boot-team-rows{display:grid;gap:9px;padding:6px 2px 2px}
.dashboard-home.home-booting .home-boot-team-rows span{display:block;height:8px;border-radius:999px;background:rgba(18,76,125,.08);width:72%}
.dashboard-home.home-booting .home-boot-team-rows span:nth-child(2){width:58%}
.dashboard-home.home-booting .home-boot-team-rows span:nth-child(3){width:46%}
.dashboard-home.home-booting .quick-link{opacity:.72}


/* v12.8.310 — dock glass GLOBAL: el mismo menú renovado en todos los módulos. */
@media (min-width:1001px){
  .app-shell .sidebar,
  .app-shell.sidebar-collapsed .sidebar,
  .app-shell:not(.sidebar-collapsed) .sidebar{
    background:transparent!important;
    padding-top:198px!important;
  }
  .app-shell .sidebar::before,
  .app-shell.sidebar-collapsed .sidebar::before,
  .app-shell:not(.sidebar-collapsed) .sidebar::before{
    top:186px!important;
    bottom:auto!important;
    height:298px!important;
    background:linear-gradient(180deg,rgba(8,91,174,.84),rgba(7,120,190,.76))!important;
    border:1px solid rgba(255,255,255,.24)!important;
    box-shadow:0 14px 34px rgba(13,72,132,.16),inset 0 1px 0 rgba(255,255,255,.16)!important;
    backdrop-filter:blur(16px) saturate(135%)!important;
    -webkit-backdrop-filter:blur(16px) saturate(135%)!important;
    border-radius:24px!important;
  }
  .app-shell .sidebar nav{margin-top:0!important;overflow:visible!important}
  .app-shell .sidebar nav a,
  .app-shell .sidebar .sidebar-search-btn,
  .app-shell .sidebar .sidebar-help,
  .app-shell .sidebar .sidebar-privacy,
  .app-shell .sidebar .sidebar-settings,
  .app-shell .sidebar .owner-center,
  .app-shell .sidebar .logout{
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
  }
  .app-shell .sidebar nav a.active{
    background:rgba(255,255,255,.075)!important;
    box-shadow:none!important;
    border:0!important;
  }
  .app-shell .sidebar nav a.active b{color:#fff!important;filter:none!important}
  .app-shell .sidebar .owner-center{margin-top:4px!important}
  .app-shell .sidebar .sidebar-settings{margin-top:12px!important}
  .app-shell .sidebar .logout{margin-top:4px!important}
}

/* v12.8.312 · notificaciones atendibles + arranque estable */
.home-notification-item{display:grid!important;grid-template-columns:minmax(0,1fr) 34px!important;gap:6px!important;align-items:stretch!important;padding:0!important;border-bottom:1px solid #eef3f6!important;background:#fff!important}
.home-notification-open{width:100%;display:grid;grid-template-columns:10px minmax(0,1fr) 18px;align-items:center;gap:9px;text-align:left;border:0;background:transparent;padding:12px 10px;cursor:pointer}
.home-notification-open:hover{background:#f8fbfd}
.home-notification-check,.home-notification-restore{align-self:center;width:30px;height:30px;border:1px solid #d9e7ef;border-radius:9px;background:#f5fbf8;color:#238a58;font-size:15px;font-weight:900;cursor:pointer;margin-right:5px}
.home-notification-check:hover{background:#e7f7ee;border-color:#bde5ce}.home-notification-restore{background:#f5f8fb;color:#557289}.home-notification-restore:hover{background:#eaf1f6}
.home-notification-item.resolved{opacity:.78}.home-notification-item.resolved .home-notification-dot{background:#7fb99a!important}.home-notification-time{font-size:9px!important;color:#8ca0af!important;margin-top:4px!important}
.home-notification-tabs button:not(:disabled){cursor:pointer}

/* v12.8.313 — Inventario viewport compacto: búsqueda + filtros + acciones en una sola fila */
@media(min-width:901px){
  body:has(.inventory-panel) .inventory-hero{min-height:84px!important;padding-top:12px!important;padding-bottom:12px!important;margin-bottom:8px!important}
  body:has(.inventory-panel) .inventory-hero h2{font-size:20px!important;line-height:1.05!important;margin:1px 0!important}
  body:has(.inventory-panel) .inventory-hero p{margin-top:2px!important;font-size:11px!important}
  body:has(.inventory-panel) .inventory-panel{padding:9px 12px 8px!important;margin-top:0!important}
  .inventory-toolbar-app{display:grid!important;grid-template-columns:minmax(190px,1.45fr) minmax(110px,.75fr) minmax(120px,.82fr) minmax(135px,.9fr) auto!important;align-items:end!important;gap:6px!important;margin:0 0 5px!important}
  .inventory-toolbar-app label{font-size:9px!important;line-height:1.1!important;margin:0!important}
  .inventory-toolbar-app input,.inventory-toolbar-app select{height:30px!important;min-height:30px!important;padding-top:0!important;padding-bottom:0!important;font-size:10px!important}
  .inventory-search-control input{width:100%!important}
  .inventory-toolbar-actions{display:flex!important;align-items:flex-end!important;gap:5px!important;flex-wrap:nowrap!important;white-space:nowrap!important}
  .inventory-toolbar-actions button,.inventory-clear-load{height:30px!important;min-height:30px!important;padding:0 10px!important;font-size:9px!important;border-radius:7px!important}
  .inventory-updated{align-self:center!important;margin:0 0 3px 3px!important;font-size:8px!important;white-space:nowrap!important}
  .inventory-edit-table th{padding:4px 8px!important;font-size:9px!important}
  .inventory-edit-table td{padding:3px 8px!important;font-size:10px!important;height:32px!important}
  .inventory-edit-table td b{font-size:10px!important;line-height:1.05!important}
  .inventory-row-presentation{font-size:8px!important;margin-top:0!important;line-height:1!important}
  .inventory-inline-number{height:27px!important;min-height:27px!important;padding:0 6px!important;font-size:11px!important}
  body:has(.inventory-panel) .table-wrap{max-height:calc(100vh - 250px)!important;overflow:auto!important}
  body:has(.inventory-panel){overflow:hidden!important}
}
@media(min-width:901px) and (max-width:1180px){
  .inventory-toolbar-app{grid-template-columns:minmax(165px,1.3fr) 105px 120px 130px auto!important}
  .inventory-toolbar-actions button,.inventory-clear-load{padding:0 7px!important}
}

/* v12.8.314 — fix buscador inventario + título más compacto */
@media(min-width:901px){body:has(.inventory-panel) .inventory-hero h2{font-size:20px!important;line-height:1.05!important}}

/* v12.8.316 — Inventario: resumen inferior compacto */
#inventorySummary .inv-summary .inv-summary-card,
.inv-summary .inv-summary-card{
  min-height:58px!important;
  padding:8px 16px!important;
}
.inv-summary .inv-summary-card>div>span{
  font-size:11px!important;
  line-height:1.15!important;
}
.inv-summary .inv-summary-card strong{
  font-size:17px!important;
  line-height:1.1!important;
  margin:3px 0 1px!important;
  font-weight:750!important;
  letter-spacing:-.015em!important;
}
.inv-summary .inv-summary-card small{
  font-size:10px!important;
  line-height:1.15!important;
}
@media (max-height:800px) and (min-width:801px){
  .inv-summary .inv-summary-card{min-height:54px!important;padding:7px 14px!important}
  .inv-summary .inv-summary-card strong{font-size:16px!important}
}


/* v12.8.318 — Inventario: métricas + auditoría en una sola línea */
#inventorySummary .inv-summary,.inv-summary{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
.inv-summary .inv-audit-card strong{font-size:15px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)!important}
.inv-summary .inv-audit-card small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#invTrace{display:none!important}
@media(min-width:801px){#inventorySummary .inv-summary,.inv-summary{grid-template-columns:repeat(4,minmax(0,1fr))!important}}


/* v12.8.319 — Planilla compacta para 10–20 colaboradores */
.payroll-hero-v319{min-height:82px!important;padding-top:13px!important;padding-bottom:13px!important;margin-bottom:9px!important;display:flex;align-items:center}
.payroll-hero-v319 h2{font-size:24px!important;margin:2px 0!important}
.payroll-hero-v319 p{font-size:11.5px!important;line-height:1.25!important}
.payroll-hero-v319 .eyebrow{font-size:9.5px!important}
.payroll-metrics-v319{margin-top:0!important;margin-bottom:7px!important;gap:8px!important}
.payroll-metrics-v319 .metric{min-height:58px!important;padding:8px 12px!important}
.payroll-metrics-v319 .metric strong{font-size:18px!important}
.payroll-toolbar-v319{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:7px 0 8px;min-width:0}
.payroll-toolbar-v319 .payroll-tabs{margin:0;display:flex;flex-wrap:nowrap;gap:6px;min-width:0}
.payroll-toolbar-v319 .payroll-tabs button{padding:7px 13px;min-height:34px;border-radius:9px;font-size:12px;white-space:nowrap}
.payroll-quick-actions-v319{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto}
.payroll-quick-actions-v319 button{min-height:34px!important;padding:0 13px!important;border-radius:9px!important;font-size:11.5px!important;white-space:nowrap}
.payroll-personal-pane-v319{padding:10px 12px!important;margin-top:0!important;overflow:hidden}
.payroll-panel-head-v319{margin-bottom:7px!important;min-height:32px;align-items:center}
.payroll-panel-head-v319 h3{font-size:16px!important;margin:1px 0!important}
.payroll-panel-head-v319 .eyebrow{font-size:8.5px!important}
.payroll-panel-head-v319 small{font-size:10.5px!important}
.payroll-employee-table-v319{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.payroll-employee-head-v319,.payroll-employee-row-v319{display:grid;grid-template-columns:minmax(220px,2.3fr) minmax(68px,.7fr) minmax(84px,.85fr) minmax(72px,.75fr) minmax(76px,.8fr) minmax(100px,1fr) minmax(90px,.9fr) minmax(126px,1.1fr);align-items:center;column-gap:8px}
.payroll-employee-head-v319{min-height:30px;padding:0 10px;background:#f6f9fc;border-bottom:1px solid var(--line);font-size:8.5px;font-weight:900;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);position:sticky;top:0;z-index:2}
.payroll-employee-body-v319{max-height:calc(100vh - 365px);overflow:auto;overscroll-behavior:contain}
.payroll-employee-row-v319{min-height:54px;padding:5px 10px;border-bottom:1px solid #edf1f5;background:#fff}
.payroll-employee-row-v319:last-child{border-bottom:0}
.payroll-employee-row-v319:hover{background:#fbfdff}
.payroll-employee-identity-v319{display:flex;align-items:center;gap:8px;min-width:0}
.payroll-employee-identity-v319 .avatar-mini{width:31px;height:31px;border-radius:9px;font-size:13px;flex:0 0 auto}
.payroll-employee-identity-v319>div:last-child{min-width:0}
.payroll-employee-identity-v319 strong{display:block;font-size:12.5px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.payroll-employee-identity-v319 small{display:block;margin-top:2px;font-size:9.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.payroll-employee-row-v319 .pill{font-size:9px;padding:4px 7px;white-space:nowrap}
.payroll-cell-v319{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.payroll-cell-v319 b{display:none}
.payroll-salary-v319{font-size:12px;font-weight:850;white-space:nowrap}
.payroll-vacation-v319{display:flex;align-items:baseline;gap:3px;white-space:nowrap}
.payroll-vacation-v319 strong{font-size:12px;color:var(--blue)}
.payroll-vacation-v319 small,.payroll-vacation-v319 span{font-size:8.5px;color:var(--muted)}
.payroll-row-actions-v319{display:flex;justify-content:flex-end;gap:5px}
.payroll-row-actions-v319 .soft{padding:5px 8px!important;min-height:28px!important;font-size:9.5px!important;border-radius:8px!important}
.payroll-vacation-head-actions-v319{display:flex;align-items:center;gap:10px}
.payroll-vacation-head-actions-v319 .soft{min-height:32px;padding:0 11px;font-size:10.5px}
@media(max-width:1100px){
 .payroll-toolbar-v319{overflow-x:auto;padding-bottom:2px}.payroll-quick-actions-v319{padding-right:2px}
 .payroll-employee-head-v319,.payroll-employee-row-v319{grid-template-columns:minmax(190px,2fr) 66px 84px 72px 75px 96px 84px 118px;min-width:900px}
 .payroll-employee-table-v319{overflow-x:auto}.payroll-employee-body-v319{min-width:900px}
}
@media(max-width:700px){
 .payroll-hero-v319{min-height:70px!important}.payroll-toolbar-v319{display:block;overflow:visible}.payroll-toolbar-v319 .payroll-tabs{overflow-x:auto}.payroll-quick-actions-v319{margin-top:7px;overflow-x:auto;justify-content:flex-start}.payroll-employee-body-v319{max-height:none}
}

/* v12.8.320 — Alertas críticas operativas visibles */
.home-notification-item.critical{background:#fff5f5!important;border-left:3px solid #df3f48!important}
.home-notification-item.critical .home-notification-open{background:linear-gradient(90deg,rgba(223,63,72,.08),rgba(255,255,255,0))!important}
.home-notification-item.critical .home-notification-dot{background:#df3f48!important;box-shadow:0 0 0 4px rgba(223,63,72,.11)!important}
.home-notification-item.critical b{color:#b82f39!important}
.home-notification-item.critical small{color:#7d4a50!important}
.home-notification-item.critical .home-notification-check{color:#b82f39!important}
/* v12.8.321 · Estadísticas: un solo lienzo dinámico con todos los análisis */
.stats-filter-grid-unified{grid-template-columns:150px 150px minmax(150px,1fr) minmax(150px,1fr) minmax(150px,1fr) auto!important}
.stats-analysis-switcher{padding:10px 12px!important;margin-bottom:10px!important;overflow:hidden}
.stats-analysis-tabs{display:flex;gap:7px;align-items:center;overflow-x:auto;scrollbar-width:thin;padding:1px 1px 5px}
.stats-analysis-tabs .soft{flex:0 0 auto;height:34px;padding:0 13px;border-radius:11px;font-size:11px;font-weight:800;white-space:nowrap}
.stats-analysis-tabs .soft.active{background:#1378d1;color:#fff;border-color:#1378d1;box-shadow:none}
.stats-single-analysis{min-width:0}
.stats-single-analysis>.panel{margin-bottom:0}
.stats-unified-chart{min-height:360px;padding:16px 18px!important;overflow:hidden}
.stats-unified-chart .panel-head{margin-bottom:14px;align-items:flex-end}
.stats-unified-chart .panel-head h3{font-size:20px;margin:2px 0 0}
.stats-unified-total{text-align:right;display:grid;gap:2px}
.stats-unified-total small{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:800}
.stats-unified-total strong{font-size:18px;font-variant-numeric:tabular-nums}
.stats-unified-bars{display:grid;gap:9px;max-height:390px;overflow:auto;padding-right:4px}
.stats-unified-row{display:grid;grid-template-columns:minmax(150px,250px) 1fr;gap:14px;align-items:center;min-height:28px}
.stats-unified-label{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.stats-unified-label span{font-size:11px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stats-unified-label b{font-size:10px;color:var(--muted);font-weight:700;white-space:nowrap}
.stats-unified-track{height:14px;border-radius:999px;background:rgba(19,120,209,.08);overflow:hidden;position:relative}
.stats-unified-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1378d1,#11b7d8);min-width:3px}
.stats-single-analysis .donut-panel{min-height:360px!important}
.stats-single-analysis .donut-layout{min-height:285px!important;grid-template-columns:minmax(220px,.72fr) minmax(300px,1.28fr)!important}
.stats-single-analysis .donut-ring{width:220px;height:220px}
.stats-single-analysis .text-stats-panel{max-height:440px;overflow:auto}
@media(max-width:1250px){.stats-filter-grid-unified{grid-template-columns:repeat(3,minmax(0,1fr))!important}.stats-filter-grid-unified .stats-apply{min-height:40px}.stats-unified-row{grid-template-columns:minmax(130px,210px) 1fr}}
@media(max-width:760px){.stats-filter-grid-unified{grid-template-columns:1fr 1fr!important}.stats-analysis-tabs{padding-bottom:8px}.stats-unified-chart{min-height:320px}.stats-unified-row{grid-template-columns:1fr;gap:5px}.stats-unified-label{align-items:flex-end}.stats-single-analysis .donut-layout{grid-template-columns:1fr!important}}

/* v12.8.323 — Estadísticas: una pantalla, máxima densidad útil */
@media (min-width: 1000px){
  .stats-page-hero-compact{min-height:74px!important;height:74px!important;padding:12px 20px!important;margin-bottom:8px!important;border-radius:18px!important}
  .stats-page-hero-compact h2{font-size:22px!important;line-height:1.05!important;margin:1px 0 2px!important}
  .stats-page-hero-compact p{font-size:10px!important;margin:0!important}
  .stats-page-hero-compact .eyebrow{font-size:8px!important}
  .stats-filters-compact{padding:8px 10px!important;margin-bottom:7px!important;border-radius:13px!important}
  .stats-control-line{display:grid;grid-template-columns:auto 122px 122px minmax(130px,.9fr) minmax(120px,.8fr) minmax(120px,.8fr) 82px auto;gap:6px;align-items:end;min-width:0}
  .stats-control-line>label{display:grid;gap:3px;font-size:8px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.45px;min-width:0}
  .stats-control-line>label input,.stats-control-line>label select{width:100%;height:31px!important;min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 8px;font-size:10px}
  .stats-period-inline{display:flex!important;gap:4px!important;align-self:end!important;flex-wrap:nowrap!important}
  .stats-period-inline .soft{height:31px!important;min-width:52px!important;padding:0 8px!important;font-size:9px!important;border-radius:8px!important}
  .stats-filters-compact .stats-apply{height:31px!important;min-width:76px!important;padding:0 10px!important;font-size:9px!important;border-radius:8px!important}
  .stats-mini-tools{display:flex;gap:4px;align-items:end;justify-content:flex-end;min-width:0}
  .stats-mini-tools>.soft,.stats-mini-tools .stats-download-btn{height:31px!important;min-width:auto!important;padding:0 9px!important;font-size:9px!important;border-radius:8px!important;white-space:nowrap}
  .stats-analysis-switcher-compact{padding:6px 8px!important;margin-bottom:6px!important;border-radius:12px!important}
  .stats-analysis-switcher-compact .stats-analysis-tabs{gap:4px!important;padding:0!important;scrollbar-width:none}
  .stats-analysis-switcher-compact .stats-analysis-tabs::-webkit-scrollbar{display:none}
  .stats-analysis-switcher-compact .stats-analysis-tabs .soft{height:29px!important;padding:0 9px!important;font-size:9px!important;border-radius:8px!important}
  #statsBody .stats-kpis.compact-kpis{gap:5px!important;margin-bottom:6px!important}
  #statsBody .stats-kpis.compact-kpis .metric-card{min-height:58px!important;padding:8px 9px!important;border-radius:10px!important}
  #statsBody .stats-kpis.compact-kpis .metric-card strong{font-size:13px!important;line-height:1.05!important}
  #statsBody .stats-kpis.compact-kpis .metric-card small,#statsBody .stats-kpis.compact-kpis .metric-card span{font-size:8px!important;line-height:1.15!important}
  .stats-unified-chart{min-height:0!important;height:calc(100vh - 360px)!important;max-height:520px!important;padding:10px 12px!important;border-radius:13px!important}
  .stats-unified-chart .panel-head{margin-bottom:7px!important;min-height:34px!important}
  .stats-unified-chart .panel-head h3{font-size:17px!important;line-height:1.1!important;margin:1px 0 0!important}
  .stats-unified-chart .panel-head .eyebrow{font-size:8px!important}
  .stats-unified-total small{font-size:8px!important}.stats-unified-total strong{font-size:15px!important}
  .stats-unified-bars{gap:5px!important;max-height:calc(100vh - 420px)!important;overflow:auto!important;padding-right:2px!important}
  .stats-unified-row{grid-template-columns:minmax(185px,300px) 1fr!important;gap:10px!important;min-height:21px!important}
  .stats-unified-label span{font-size:10px!important}.stats-unified-label b{font-size:9px!important}
  .stats-unified-track{height:10px!important}
  .stats-single-analysis .donut-panel{min-height:0!important;height:calc(100vh - 360px)!important;max-height:520px!important;padding:10px 12px!important}
  .stats-single-analysis .donut-layout{min-height:0!important;height:calc(100% - 38px)!important;grid-template-columns:minmax(180px,.55fr) minmax(280px,1.45fr)!important;gap:14px!important}
  .stats-single-analysis .donut-ring{width:180px!important;height:180px!important}
  .stats-single-analysis .text-stats-panel{max-height:calc(100vh - 360px)!important;overflow:auto!important;padding:10px 12px!important}
}
@media (min-width: 1000px) and (max-width: 1250px){
  .stats-control-line{grid-template-columns:auto 110px 110px minmax(115px,.8fr) minmax(105px,.75fr) minmax(105px,.75fr) 74px auto}
  .stats-period-inline .soft{min-width:46px!important;padding:0 6px!important}
}


/* v12.8.324 — Estadísticas: gráficos reales, escala contenida y selector de vista persistente */
#stGraph.active,#stText.active,
#stGraph[aria-pressed="true"],#stText[aria-pressed="true"]{
  background:#1378d1!important;color:#fff!important;border-color:#1378d1!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important;
}
#stGraph:not(.active),#stText:not(.active){background:#f4f7fb!important;color:#35485d!important;border-color:#e1e8ef!important}
.stats-real-chart{display:flex;flex-direction:column}
.stats-ranking-wrap{display:flex;justify-content:flex-start;min-width:0;overflow:auto}
.stats-ranking-wrap .stats-unified-bars{width:min(100%,980px)!important;min-width:min(720px,100%)!important;margin:0 auto 0 0!important}
.stats-ranking-wrap .stats-unified-row{grid-template-columns:minmax(250px,360px) minmax(280px,620px)!important;gap:14px!important}
.stats-ranking-wrap .stats-unified-track{max-width:620px!important;height:12px!important;background:linear-gradient(90deg,rgba(19,120,209,.07),rgba(19,120,209,.035))!important}
.stats-ranking-wrap .stats-unified-track i{background:linear-gradient(90deg,#1378d1 0%,#11b7d8 100%)!important}
.stats-column-chart{height:100%;min-height:230px;display:flex;align-items:stretch;gap:10px;padding:8px 8px 2px;border-bottom:1px solid #e8eef4;position:relative;overflow-x:auto}
.stats-column-chart:before,.stats-column-chart:after{content:"";position:absolute;left:8px;right:8px;border-top:1px dashed rgba(87,111,137,.14);pointer-events:none}
.stats-column-chart:before{top:34%}.stats-column-chart:after{top:63%}
.stats-column-item{flex:1 0 58px;min-width:58px;max-width:100px;display:grid;grid-template-rows:26px 1fr 28px;align-items:end;gap:3px;position:relative;z-index:1}
.stats-column-value{font-size:8px;font-weight:800;text-align:center;color:#61758b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stats-column-plot{height:100%;display:flex;align-items:flex-end;justify-content:center;min-height:150px}
.stats-column-plot i{display:block;width:min(52px,72%);min-height:4px;border-radius:9px 9px 3px 3px;background:linear-gradient(180deg,#10b7da,#1378d1);box-shadow:0 5px 16px rgba(19,120,209,.11)}
.stats-column-label{font-size:9px;font-weight:800;text-align:center;color:#263a4e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:2px}
@media(min-width:1000px){
  .stats-real-chart{height:calc(100vh - 360px)!important;max-height:520px!important}
  .stats-column-chart{min-height:0;height:calc(100% - 42px)}
}
@media(max-width:900px){
  .stats-ranking-wrap .stats-unified-row{grid-template-columns:minmax(180px,260px) minmax(250px,1fr)!important}
  .stats-ranking-wrap .stats-unified-bars{min-width:650px!important}
}


/* v12.8.325 — Modo Gráfico = visual circular en todos los análisis */
.stats-single-analysis .donut-panel{overflow:hidden}
.stats-single-analysis .donut-layout{align-items:center!important}
.stats-single-analysis .donut-ring-wrap{display:flex;align-items:center;justify-content:center}
.stats-single-analysis .donut-ring{box-shadow:0 12px 28px rgba(19,120,209,.10)}
.stats-single-analysis .donut-legend-row{min-height:30px;padding:4px 2px;border-bottom:1px solid rgba(223,231,239,.75)}
.stats-single-analysis .donut-legend-row:last-child{border-bottom:0}
.stats-single-analysis .donut-legend-row span{font-size:10px!important}
.stats-single-analysis .donut-legend-row b,.stats-single-analysis .donut-legend-row em{font-size:9px!important}
@media(min-width:1000px){
 .stats-single-analysis .donut-layout{grid-template-columns:minmax(210px,.62fr) minmax(360px,1.38fr)!important;gap:20px!important}
 .stats-single-analysis .donut-ring{width:210px!important;height:210px!important}
 .stats-single-analysis .donut-hole{width:57%!important;height:57%!important}
}
\n\n/* v12.8.326 — Gráfico completo visible + Texto como barras */
.stats-single-analysis .donut-panel{overflow:visible!important}
.stats-single-analysis .donut-layout{overflow:visible!important}
.stats-single-analysis .donut-legend{max-height:210px;overflow:auto;padding-right:4px}
@media(min-width:1000px){
  .stats-single-analysis .donut-panel{
    height:clamp(270px,calc(100vh - 390px),330px)!important;
    min-height:270px!important;
    max-height:330px!important;
    padding:9px 12px!important;
  }
  .stats-single-analysis .donut-panel .panel-head{margin-bottom:2px!important;min-height:30px!important}
  .stats-single-analysis .donut-layout{
    height:calc(100% - 32px)!important;
    min-height:0!important;
    grid-template-columns:minmax(190px,.58fr) minmax(340px,1.42fr)!important;
    gap:16px!important;
    align-items:center!important;
  }
  .stats-single-analysis .donut-ring{width:175px!important;height:175px!important;max-width:175px!important;max-height:175px!important}
  .stats-single-analysis .donut-hole{width:58%!important;height:58%!important}
  .stats-single-analysis .donut-legend{max-height:190px!important;overflow:auto!important}
  .stats-single-analysis .stats-unified-chart{
    height:clamp(270px,calc(100vh - 390px),330px)!important;
    min-height:270px!important;
    max-height:330px!important;
  }
  .stats-single-analysis .stats-ranking-wrap{max-height:250px!important;overflow:auto!important}
  .stats-single-analysis .stats-column-chart{min-height:185px!important;height:220px!important}
}
@media(max-width:999px){
  .stats-single-analysis .donut-panel{min-height:320px!important}
  .stats-single-analysis .donut-ring{width:170px!important;height:170px!important}
}


/* v12.8.327 — Estadísticas: gráfico completo sin scroll + selector visual */
@media (min-width:1000px){
  .stats-page-hero-compact{
    min-height:58px!important;height:58px!important;padding:8px 18px!important;
    margin-top:0!important;margin-bottom:5px!important;border-radius:15px!important;
  }
  .stats-page-hero-compact h2{font-size:19px!important;margin:0 0 1px!important;line-height:1!important}
  .stats-page-hero-compact p{font-size:8.5px!important;line-height:1.05!important}
  .stats-page-hero-compact .eyebrow{font-size:7px!important;line-height:1!important}
  .stats-filters-compact{padding:5px 8px!important;margin-bottom:5px!important;border-radius:11px!important}
  .stats-control-line{gap:5px!important}
  .stats-control-line>label{gap:2px!important;font-size:7px!important}
  .stats-control-line>label input,.stats-control-line>label select{height:28px!important;padding:0 7px!important;font-size:9px!important;border-radius:7px!important}
  .stats-period-inline .soft,.stats-filters-compact .stats-apply,.stats-mini-tools>.soft,.stats-mini-tools .stats-download-btn{
    height:28px!important;min-height:28px!important;font-size:8.5px!important;border-radius:7px!important;
  }
  .stats-period-inline .soft{min-width:45px!important;padding:0 6px!important}
  .stats-filters-compact .stats-apply{min-width:70px!important}

  .stats-analysis-switcher-compact{padding:4px 6px!important;margin-bottom:5px!important;border-radius:11px!important;overflow:visible!important}
  .stats-analysis-switcher-compact .stats-analysis-tabs{
    display:grid!important;grid-template-columns:repeat(11,minmax(0,1fr))!important;gap:3px!important;
    overflow:visible!important;padding:0!important;width:100%!important;
  }
  .stats-analysis-switcher-compact .stats-analysis-tabs .stats-analysis-option{
    min-width:0!important;width:100%!important;height:49px!important;padding:3px 2px!important;border-radius:8px!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;
    white-space:normal!important;line-height:1!important;overflow:hidden!important;
  }
  .stats-analysis-icon{height:17px;display:flex;align-items:center;justify-content:center;color:#1378d1}
  .stats-analysis-icon .nav-icon{width:17px!important;height:17px!important;stroke:currentColor!important;stroke-width:1.8!important}
  .stats-analysis-label{display:block;font-size:7.5px!important;font-weight:800!important;line-height:1.02!important;text-align:center;max-width:100%;}
  .stats-analysis-option.active .stats-analysis-icon,.stats-analysis-option.active .stats-analysis-label{color:#fff!important}

  #statsBody .stats-kpis.compact-kpis{gap:4px!important;margin-bottom:4px!important}
  #statsBody .stats-kpis.compact-kpis .metric-card{min-height:49px!important;height:49px!important;padding:6px 8px!important;border-radius:9px!important}
  #statsBody .stats-kpis.compact-kpis .metric-card strong{font-size:12px!important}
  #statsBody .stats-kpis.compact-kpis .metric-card small,#statsBody .stats-kpis.compact-kpis .metric-card span{font-size:7.5px!important}

  .stats-single-analysis .donut-panel{
    height:clamp(230px,calc(100vh - 332px),300px)!important;
    min-height:230px!important;max-height:300px!important;padding:7px 10px!important;margin-bottom:0!important;overflow:hidden!important;
  }
  .stats-single-analysis .donut-panel .panel-head{min-height:25px!important;margin-bottom:0!important}
  .stats-single-analysis .donut-panel .panel-head h3{font-size:15px!important;line-height:1!important}
  .stats-single-analysis .donut-layout{
    height:calc(100% - 26px)!important;min-height:0!important;
    grid-template-columns:minmax(175px,.55fr) minmax(330px,1.45fr)!important;gap:12px!important;overflow:hidden!important;
  }
  .stats-single-analysis .donut-ring{width:165px!important;height:165px!important;max-width:165px!important;max-height:165px!important}
  .stats-single-analysis .donut-legend{max-height:165px!important;overflow:auto!important;padding-right:3px!important}
  .stats-single-analysis .donut-legend-row{min-height:25px!important;padding:2px!important}
  .stats-single-analysis .stats-unified-chart{
    height:clamp(230px,calc(100vh - 332px),300px)!important;min-height:230px!important;max-height:300px!important;padding:7px 10px!important;margin-bottom:0!important;
  }
  .stats-single-analysis .stats-ranking-wrap{max-height:205px!important;overflow:auto!important}
  .stats-single-analysis .stats-column-chart{min-height:165px!important;height:190px!important}
}
@media (min-width:1000px) and (max-width:1180px){
  .stats-analysis-label{font-size:7px!important}
  .stats-analysis-icon .nav-icon{width:15px!important;height:15px!important}
  .stats-analysis-switcher-compact .stats-analysis-tabs .stats-analysis-option{height:47px!important}
}

/* v12.8.328 — Estadísticas: controles de igual altura + máximo aprovechamiento vertical */
@media (min-width:1000px){
  /* Una sola línea visual: período, calendarios, selects, aplicar y herramientas. */
  .stats-control-line{
    align-items:flex-end!important;
    min-height:36px!important;
  }
  .stats-period-inline{
    align-self:flex-end!important;
    height:30px!important;
    display:flex!important;
    align-items:stretch!important;
  }
  .stats-control-line>label{
    display:grid!important;
    grid-template-rows:8px 30px!important;
    align-content:end!important;
    min-height:40px!important;
    margin:0!important;
  }
  .stats-control-line>label input,
  .stats-control-line>label select,
  .stats-period-inline .soft,
  .stats-filters-compact .stats-apply,
  .stats-mini-tools>.soft,
  .stats-mini-tools .stats-download-btn{
    box-sizing:border-box!important;
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    line-height:1!important;
  }
  .stats-filters-compact .stats-apply,
  .stats-mini-tools{
    align-self:flex-end!important;
  }
  .stats-mini-tools{
    height:30px!important;
    display:flex!important;
    align-items:stretch!important;
  }

  /* Usar el pequeño espacio inferior para el análisis, no para aire vacío. */
  .stats-single-analysis .donut-panel,
  .stats-single-analysis .stats-unified-chart{
    height:clamp(248px,calc(100vh - 316px),318px)!important;
    min-height:248px!important;
    max-height:318px!important;
  }
  .stats-single-analysis .donut-layout{
    height:calc(100% - 24px)!important;
  }
  .stats-single-analysis .donut-ring{
    width:178px!important;
    height:178px!important;
    max-width:178px!important;
    max-height:178px!important;
  }
  .stats-single-analysis .donut-legend{
    max-height:186px!important;
  }
  .stats-single-analysis .stats-ranking-wrap{
    max-height:222px!important;
  }
  .stats-single-analysis .stats-column-chart{
    min-height:178px!important;
    height:205px!important;
  }
}

/* v12.8.329 — Estadísticas: Ampliar limpio + iconos con más presencia + hero aprovecha margen superior */
@media (min-width:1000px){
  /* El encabezado crece hacia el margen superior, sin robar prácticamente altura al análisis. */
  .stats-page-hero-compact{
    min-height:64px!important;
    height:64px!important;
    padding:9px 18px!important;
    margin-top:-5px!important;
    margin-bottom:4px!important;
    display:flex!important;
    align-items:center!important;
  }
  .stats-page-hero-compact h2{font-size:21px!important;line-height:1.02!important;margin:1px 0 2px!important}
  .stats-page-hero-compact p{font-size:9px!important;line-height:1.08!important}
  .stats-page-hero-compact .eyebrow{font-size:7.5px!important;line-height:1!important}

  /* Iconos de análisis más visibles, manteniendo texto debajo y una sola fila. */
  .stats-analysis-switcher-compact .stats-analysis-tabs .stats-analysis-option{
    height:51px!important;
    padding:3px 2px!important;
    gap:2px!important;
  }
  .stats-analysis-icon{height:21px!important;min-height:21px!important}
  .stats-analysis-icon .nav-icon{width:20px!important;height:20px!important;stroke-width:1.9!important}
  .stats-analysis-label{font-size:7.6px!important;line-height:1.02!important}

  /* Vista Ampliar: lienzo totalmente independiente; nada del dashboard se mezcla visualmente. */
  .donut-modal-overlay{
    z-index:2147483000!important;
    background:rgba(10,24,40,.72)!important;
    backdrop-filter:blur(7px)!important;
    -webkit-backdrop-filter:blur(7px)!important;
    padding:18px!important;
    isolation:isolate!important;
  }
  .donut-modal{
    position:relative!important;
    z-index:1!important;
    width:min(1220px,96vw)!important;
    height:min(760px,92vh)!important;
    max-height:92vh!important;
    overflow:hidden!important;
    background:#fff!important;
    opacity:1!important;
    border:1px solid rgba(218,228,237,.95)!important;
    border-radius:20px!important;
    box-shadow:0 30px 100px rgba(3,18,34,.38)!important;
    padding:20px 24px!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
  }
  .donut-modal-head{
    position:relative!important;
    z-index:2!important;
    background:#fff!important;
    padding:0 0 12px!important;
    margin:0!important;
    border-bottom:1px solid var(--line)!important;
    min-height:72px!important;
    align-items:flex-start!important;
  }
  .donut-modal-head .eyebrow{display:block!important;font-size:8px!important;letter-spacing:.11em!important;margin-bottom:3px!important}
  .donut-modal-head h2{font-size:27px!important;line-height:1.05!important;margin:0 0 3px!important}
  .donut-modal-head p{font-size:11px!important;line-height:1.25!important;margin:0!important;color:var(--muted)!important}
  .donut-modal-close{flex:0 0 auto!important;position:relative!important;z-index:3!important}
  .donut-modal-body{
    position:relative!important;
    z-index:1!important;
    min-height:0!important;
    overflow:hidden!important;
    background:#fff!important;
  }
  .donut-modal-body .donut-expanded-template{
    height:100%!important;
    min-height:0!important;
    padding-top:14px!important;
    grid-template-columns:minmax(0,57%) minmax(330px,43%)!important;
    gap:26px!important;
    align-items:stretch!important;
    overflow:hidden!important;
    background:#fff!important;
  }
  .donut-modal-side{
    grid-column:1!important;
    grid-row:1!important;
    min-height:0!important;
    height:100%!important;
    align-content:start!important;
    background:#fff!important;
    overflow:hidden!important;
  }
  .donut-modal-chart{
    grid-column:2!important;
    grid-row:1!important;
    min-height:0!important;
    height:100%!important;
    background:#fbfdff!important;
    border:1px solid var(--line)!important;
    border-radius:16px!important;
    padding:14px!important;
    overflow:hidden!important;
  }
  .donut-ring-large{
    width:min(350px,30vw)!important;
    height:min(350px,30vw)!important;
  }
  .donut-modal-side-head{
    background:#fff!important;
    padding:0 2px 9px!important;
    margin:0!important;
  }
  .donut-modal-legend{
    min-height:0!important;
    max-height:calc(92vh - 150px)!important;
    overflow:auto!important;
    align-content:start!important;
    background:#fff!important;
    padding-right:5px!important;
  }
  .donut-modal-row{
    background:#fff!important;
    min-height:35px!important;
    padding:6px 9px!important;
  }
  .donut-modal-row:hover,.donut-modal-row.active{background:#f3f8fd!important}
}
@media (min-width:1000px) and (max-height:760px){
  .donut-modal{height:94vh!important;padding:14px 20px!important}
  .donut-modal-head{min-height:58px!important;padding-bottom:8px!important}
  .donut-modal-head h2{font-size:23px!important}
  .donut-modal-body .donut-expanded-template{padding-top:9px!important;gap:18px!important;grid-template-columns:minmax(0,61%) minmax(280px,39%)!important}
  .donut-ring-large{width:min(290px,27vw)!important;height:min(290px,27vw)!important}
  .donut-modal-legend{max-height:calc(94vh - 120px)!important}
  .donut-modal-row{min-height:30px!important;padding:4px 7px!important}
}


/* v12.8.330 · Productos compacto tipo Planilla/Estadísticas */
@media (min-width:901px){
  .products-page-hero{
    min-height:86px!important;
    padding:13px 20px!important;
    margin-bottom:8px!important;
  }
  .products-page-hero h2{font-size:22px!important;margin:2px 0!important;line-height:1.04!important}
  .products-page-hero p{font-size:10.5px!important;line-height:1.2!important}
  .products-page-hero .eyebrow{font-size:9px!important}

  .products-admin-panel.products-admin-compact{
    padding:10px 12px 10px!important;
    border-radius:13px!important;
    min-height:0!important;
    height:calc(100vh - 196px)!important;
    display:grid!important;
    grid-template-rows:auto auto minmax(0,1fr)!important;
    gap:6px!important;
    overflow:hidden!important;
  }
  .products-control-strip{
    display:grid!important;
    grid-template-columns:minmax(300px,1.7fr) 210px minmax(320px,1.35fr) auto!important;
    gap:8px!important;
    align-items:end!important;
    min-height:38px!important;
  }
  .products-control-strip>input{
    min-width:0!important;
    width:100%!important;
    height:36px!important;
    border:1px solid var(--line)!important;
    border-radius:9px!important;
    padding:0 11px!important;
    outline:0!important;
    background:#fff!important;
  }
  .products-control-strip>input:focus{border-color:#8bbde3!important;box-shadow:0 0 0 3px #eaf5fd!important}
  .products-control-strip .presentation-select-wrap{
    height:36px!important;
    min-width:0!important;
    padding:0 9px!important;
    gap:7px!important;
    border-radius:9px!important;
    background:#f8fafc!important;
    align-items:center!important;
  }
  .products-control-strip .presentation-select-wrap>span{font-size:9px!important;letter-spacing:.02em!important}
  .products-control-strip .presentation-select-wrap select{
    height:30px!important;
    min-width:0!important;
    width:100%!important;
    padding:0 24px 0 6px!important;
    font-size:11px!important;
  }
  .products-control-strip .presentation-filters-full{
    margin:0!important;
    padding:0 2px 0 0!important;
    min-width:0!important;
    height:36px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    align-items:center!important;
    gap:5px!important;
    flex-wrap:nowrap!important;
    scrollbar-width:none!important;
  }
  .products-control-strip .presentation-filters-full::-webkit-scrollbar{display:none!important}
  .products-control-strip .presentation-filters-full .soft{
    height:32px!important;
    min-height:32px!important;
    padding:0 10px!important;
    border-radius:8px!important;
    font-size:10px!important;
    white-space:nowrap!important;
  }
  .products-control-strip #newProduct{
    height:36px!important;
    min-height:36px!important;
    padding:0 14px!important;
    border-radius:9px!important;
    white-space:nowrap!important;
    font-size:11px!important;
    box-shadow:none!important;
  }
  #productSummary .product-catalog-summary{
    padding:1px 2px 3px!important;
    min-height:22px!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    font-size:10.5px!important;
    line-height:1.1!important;
  }
  #productSummary .product-catalog-summary b{font-size:14px!important;line-height:1!important}
  #productSummary .product-catalog-summary span{margin-left:0!important}

  .products-data-viewport{
    min-height:0!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-width:thin!important;
  }
  .products-data-viewport .product-admin-table{
    border-radius:10px!important;
    overflow:visible!important;
  }
  .products-data-viewport .product-admin-row{
    grid-template-columns:minmax(220px,2.15fr) 90px 120px 110px 58px 92px 20px!important;
    gap:8px!important;
    min-height:38px!important;
    padding:6px 10px!important;
    font-size:11px!important;
  }
  .products-data-viewport .product-admin-row.header{
    position:sticky!important;
    top:0!important;
    z-index:3!important;
    min-height:30px!important;
    padding:5px 10px!important;
    font-size:8.5px!important;
    background:#f7f9fb!important;
  }
  .products-data-viewport .product-admin-row span:first-child b{font-size:11.5px!important;line-height:1.15!important}
  .products-data-viewport .product-admin-row span:first-child small{
    margin-top:1px!important;
    font-size:9px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .products-data-viewport .presentation-pill{padding:3px 6px!important;font-size:9px!important;border-radius:7px!important}
  .products-data-viewport .row-arrow{font-size:18px!important}
}
@media (min-width:901px) and (max-height:760px){
  .products-page-hero{min-height:76px!important;padding:10px 18px!important;margin-bottom:6px!important}
  .products-page-hero h2{font-size:20px!important}
  .products-admin-panel.products-admin-compact{height:calc(100vh - 176px)!important;padding-top:8px!important}
  .products-control-strip{grid-template-columns:minmax(260px,1.5fr) 190px minmax(280px,1.2fr) auto!important}
  .products-data-viewport .product-admin-row{min-height:34px!important;padding:5px 9px!important}
  .products-data-viewport .product-admin-row.header{min-height:27px!important}
}

/* v12.8.331 · Productos: controles proporcionados + viewport completo */
@media (min-width:901px){
  .products-admin-panel.products-admin-compact{
    height:calc(100dvh - 148px)!important;
    max-height:calc(100dvh - 148px)!important;
    padding-bottom:6px!important;
  }
  .products-control-strip{
    grid-template-columns:minmax(300px,.92fr) minmax(250px,.62fr) minmax(360px,1.18fr) auto!important;
    gap:9px!important;
  }
  .products-control-strip>input{
    max-width:520px!important;
  }
  .products-control-strip .presentation-select-wrap{
    min-width:250px!important;
    grid-template-columns:auto minmax(150px,1fr)!important;
  }
  .products-control-strip .presentation-select-wrap>span{
    flex:0 0 auto!important;
    white-space:nowrap!important;
  }
  .products-control-strip .presentation-select-wrap select{
    min-width:150px!important;
    width:100%!important;
    text-overflow:ellipsis!important;
  }
  .products-control-strip .presentation-filters-full{
    min-width:340px!important;
    justify-content:flex-start!important;
  }
  .products-data-viewport{
    height:100%!important;
    min-height:0!important;
    align-self:stretch!important;
    padding-bottom:0!important;
  }
  .products-data-viewport .product-admin-table{
    min-height:100%!important;
  }
}
@media (min-width:901px) and (max-height:760px){
  .products-admin-panel.products-admin-compact{
    height:calc(100dvh - 132px)!important;
    max-height:calc(100dvh - 132px)!important;
  }
  .products-control-strip{
    grid-template-columns:minmax(260px,.9fr) minmax(235px,.62fr) minmax(310px,1.08fr) auto!important;
  }
  .products-control-strip .presentation-select-wrap{min-width:235px!important}
  .products-control-strip .presentation-filters-full{min-width:300px!important}
}


/* v12.8.332 — Pedidos compacto + filtros de período/estado */
@media (min-width:901px){
  .orders-hero-compact{min-height:78px!important;padding-top:10px!important;padding-bottom:10px!important;margin-bottom:7px!important}
  .orders-hero-compact h2{font-size:24px!important;margin:1px 0!important}
  .orders-hero-compact p{font-size:11px!important;line-height:1.25!important}
  .orders-hero-compact .eyebrow{font-size:9px!important}
  .orders-hero-compact .payroll-actions{gap:7px!important}
  .orders-hero-compact .primary{min-height:38px!important;height:38px!important;padding:0 15px!important}
  .orders-metrics-compact{gap:8px!important;margin-bottom:7px!important}
  .orders-metrics-compact .order-kpi{min-height:54px!important;height:54px!important;padding:7px 11px!important}
  .orders-metrics-compact .order-kpi strong{font-size:18px!important;margin:2px 0 1px!important}
  .orders-metrics-compact .order-kpi span{font-size:9px!important}
  .orders-metrics-compact .order-kpi small{font-size:8px!important}
  .orders-metrics-compact .metric-icon{width:31px!important;height:31px!important;flex-basis:31px!important;font-size:13px!important}
  .orders-panel-compact{height:calc(100vh - 245px);min-height:300px;margin:0!important;padding:9px 12px 10px!important;display:flex;flex-direction:column;overflow:hidden}
  .orders-filterbar{display:grid;grid-template-columns:auto 138px 138px 150px 92px 92px;gap:7px;align-items:end;flex:0 0 auto}
  .orders-quick{display:flex;gap:5px;align-items:end}
  .orders-filterbar label{display:grid;gap:3px;margin:0;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.45px;color:var(--muted)}
  .orders-filterbar input,.orders-filterbar select,.orders-filterbar button,.orders-quick .soft{height:38px!important;min-height:38px!important;border-radius:10px!important;font-size:11px!important}
  .orders-filterbar input,.orders-filterbar select{padding:0 10px!important}
  .orders-quick .soft{padding:0 13px!important;min-width:58px}
  .orders-quick .soft.active{background:#0b8fe7!important;color:#fff!important;border-color:#0b8fe7!important;box-shadow:0 4px 12px rgba(11,143,231,.18)}
  .orders-period-info{min-height:24px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 2px 4px;color:var(--muted);font-size:9px;flex:0 0 auto}
  .orders-data-viewport{min-height:0;flex:1;overflow:hidden}
  .orders-data-viewport>.empty{margin-top:12px}
  .orders-table-wrap{height:100%;max-height:none!important;overflow:auto!important;border-radius:10px}
  .orders-table{font-size:10px!important}
  .orders-table thead th{position:sticky;top:0;z-index:2;background:#f7fafc;padding:8px 9px!important;font-size:8px!important}
  .orders-table tbody td{padding:7px 9px!important;line-height:1.2!important;vertical-align:middle}
  .orders-table tbody tr{height:42px}
  .orders-row-actions{display:flex;gap:4px!important;flex-wrap:nowrap!important;min-width:0!important}
  .orders-row-actions .soft{min-height:28px!important;height:28px!important;padding:0 8px!important;font-size:9px!important;border-radius:8px!important}
  .order-address-cell{max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .order-detail-cell{max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media (max-width:1100px) and (min-width:901px){
  .orders-filterbar{grid-template-columns:auto 120px 120px 130px 82px 82px}
  .orders-quick .soft{padding:0 9px!important;min-width:50px}
}

/* v12.8.333 — Pedidos KPI premium */
@media (min-width:901px){
.orders-summary-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:9px!important;align-items:stretch!important;margin:0 0 7px!important}
.orders-summary-row .orders-metrics{margin:0!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
.orders-summary-row .order-kpi{min-height:46px!important;height:46px!important;padding:5px 10px!important;border-radius:12px!important}
.orders-summary-row .order-kpi .metric-icon{width:27px!important;height:27px!important;flex:0 0 27px!important;font-size:12px!important;border-radius:9px!important}
.orders-summary-row .order-kpi span{font-size:8px!important;line-height:1!important;letter-spacing:.35px!important}
.orders-summary-row .order-kpi strong{font-size:16px!important;line-height:1!important;margin:1px 0!important}
.orders-summary-row .order-kpi small{font-size:7.5px!important;line-height:1!important}
.orders-new-compact{min-height:46px!important;height:46px!important;padding:0 18px!important;border-radius:12px!important;white-space:nowrap!important;align-self:stretch!important;box-shadow:0 5px 14px rgba(11,143,231,.14)!important}
.orders-panel-compact{height:calc(100vh - 230px)!important}
}
@media (max-width:900px){.orders-summary-row{display:grid;gap:8px;margin-bottom:8px}.orders-new-compact{width:100%;min-height:42px}}


/* v12.8.335 — Clientes: lenguaje visual compacto de Productos/Estadísticas */
@media (min-width:901px){
  .clients-panel-compact{padding:12px 14px 8px!important;margin-top:8px!important}
  .clients-panel-compact .clients-head{margin-bottom:7px!important;min-height:34px!important}
  .clients-panel-compact .clients-head h3{font-size:15px!important;line-height:1.05!important;margin-top:2px!important}
  .clients-panel-compact .clients-head .eyebrow{font-size:8px!important}
  .clients-toolbar{display:grid!important;grid-template-columns:minmax(280px,.95fr) minmax(190px,.58fr) minmax(190px,.58fr) 1fr!important;gap:9px!important;align-items:center!important;margin:0 0 8px!important}
  .clients-toolbar #filter{grid-column:1!important;max-width:470px!important;width:100%!important}
  .clients-toolbar #clientSeller{grid-column:2!important}
  .clients-toolbar #clientRoute{grid-column:3!important}
  .clients-toolbar input,.clients-toolbar select{height:42px!important;min-height:42px!important;padding-top:0!important;padding-bottom:0!important;border-radius:11px!important}
  #clientSummary .clients-metrics{margin:0 0 7px!important;gap:7px!important}
  #clientSummary .metric{min-height:48px!important;padding:6px 10px!important;border-radius:12px!important}
  #clientSummary .metric-icon{width:28px!important;height:28px!important;flex:0 0 28px!important;font-size:12px!important;border-radius:9px!important}
  #clientSummary .metric span{font-size:8px!important;line-height:1!important}
  #clientSummary .metric strong{font-size:16px!important;line-height:1.05!important}
  #clientSummary .metric small{font-size:8px!important;line-height:1!important}
  .clients-data .table-wrap{max-height:calc(100vh - 315px)!important;overflow:auto!important}
  .clients-data table th{padding-top:7px!important;padding-bottom:7px!important;font-size:9px!important}
  .clients-data table td{padding-top:8px!important;padding-bottom:8px!important}
  .clients-data table td small{margin-top:1px!important}
  .clients-data .client-edit{min-height:32px!important;padding:5px 11px!important;border-radius:9px!important}
}
@media (max-width:900px){
 .clients-toolbar{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:8px}
 .clients-toolbar #filter{width:100%}
}


/* v12.8.338 — Clientes y Usuarios con encabezado premium uniforme */
@media (min-width:901px){
  .clients-page-hero,
  .users-page-hero{
    min-height:76px!important;
    height:76px!important;
    padding:10px 18px!important;
    margin-top:6px!important;
    margin-bottom:6px!important;
    border-radius:18px!important;
    align-items:center!important;
  }
  .clients-page-hero h2,
  .users-page-hero h2{
    font-size:20px!important;
    line-height:1.04!important;
    margin:1px 0 2px!important;
  }
  .clients-page-hero p,
  .users-page-hero p{
    font-size:9.5px!important;
    line-height:1.12!important;
    margin:0!important;
  }
  .clients-page-hero .eyebrow,
  .users-page-hero .eyebrow{
    font-size:8px!important;
    line-height:1!important;
  }

  /* Clientes: ya no necesita un segundo encabezado blanco */
  .clients-panel-compact{
    margin-top:0!important;
    padding-top:10px!important;
    height:calc(100vh - 172px)!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .clients-toolbar{
    flex:0 0 auto!important;
  }
  #clientSummary{
    flex:0 0 auto!important;
  }
  .clients-data{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow:auto!important;
  }
  .clients-data .table-wrap{
    max-height:none!important;
    height:100%!important;
    overflow:auto!important;
  }

  /* Usuarios: mismo peso visual que Productos/Estadísticas */
  .users-page-hero .primary{
    min-height:36px!important;
    height:36px!important;
    padding:0 14px!important;
    border-radius:10px!important;
  }
  .users-admin-panel{
    margin-top:0!important;
    padding-top:10px!important;
  }
  .users-admin-head{
    margin-bottom:6px!important;
  }
  .users-admin-head h3{
    font-size:15px!important;
    margin:1px 0!important;
  }
  .users-admin-head p{
    font-size:9px!important;
    margin:2px 0 0!important;
  }
  .users-role-strip{
    margin-top:5px!important;
    margin-bottom:6px!important;
    gap:5px!important;
  }
}
@media (max-width:900px){
  .clients-page-hero,
  .users-page-hero{
    min-height:auto!important;
    padding:12px 14px!important;
  }
  .clients-panel-compact{
    height:auto!important;
    overflow:visible!important;
  }
}


/* v12.8.339 — Usuarios: permisos y edición compactos */
@media (min-width:901px){
  .users-page-hero p:empty{
    display:none!important;
  }

  /* Tabla más densa y profesional */
  .users-admin-panel table th{
    padding-top:6px!important;
    padding-bottom:6px!important;
  }
  .users-admin-panel table td{
    padding-top:6px!important;
    padding-bottom:6px!important;
    vertical-align:middle!important;
  }

  /* Pastilla de permisos: quitar apariencia de botón grande */
  .users-admin-panel table td button:not(.danger):not(.primary),
  .users-admin-panel [class*="permission"] button,
  .users-admin-panel [class*="permis"] button{
    min-height:28px!important;
    height:28px!important;
    padding:0 10px!important;
    border-radius:9px!important;
    font-size:11px!important;
    line-height:1!important;
    width:auto!important;
    min-width:0!important;
  }

  /* Botón Editar compacto */
  .users-admin-panel table td:last-child button,
  .users-admin-panel table td:last-child .btn,
  .users-admin-panel table td:last-child a{
    min-height:28px!important;
    height:28px!important;
    padding:0 10px!important;
    border-radius:8px!important;
    font-size:10.5px!important;
    line-height:26px!important;
    width:auto!important;
    min-width:0!important;
  }

  /* Evitar que la columna de acciones desperdicie ancho */
  .users-admin-panel table th:last-child,
  .users-admin-panel table td:last-child{
    width:72px!important;
    min-width:72px!important;
    text-align:center!important;
  }
}


/* v12.8.340 — Control de carga: misma densidad visual que Usuarios */
@media (min-width:901px){
  /* Encabezado */
  .load-control-page-hero,
  .load-control-hero,
  .control-load-hero,
  .vehicle-load-hero{
    min-height:76px!important;
    height:76px!important;
    padding:10px 18px!important;
    margin-top:6px!important;
    margin-bottom:6px!important;
    border-radius:18px!important;
    align-items:center!important;
  }
  .load-control-page-hero h2,
  .load-control-hero h2,
  .control-load-hero h2,
  .vehicle-load-hero h2{
    font-size:20px!important;
    line-height:1.04!important;
    margin:1px 0 2px!important;
  }
  .load-control-page-hero p:empty,
  .load-control-hero p:empty,
  .control-load-hero p:empty,
  .vehicle-load-hero p:empty{
    display:none!important;
  }

  /* Panel principal */
  .load-control-panel,
  .control-load-panel,
  .vehicle-load-panel{
    padding:9px 11px!important;
    margin-top:0!important;
  }

  /* Controles superiores */
  .load-control-toolbar,
  .control-load-toolbar,
  .vehicle-load-toolbar{
    gap:7px!important;
    margin-bottom:6px!important;
    align-items:center!important;
  }
  .load-control-toolbar input,
  .load-control-toolbar select,
  .load-control-toolbar button,
  .control-load-toolbar input,
  .control-load-toolbar select,
  .control-load-toolbar button,
  .vehicle-load-toolbar input,
  .vehicle-load-toolbar select,
  .vehicle-load-toolbar button{
    min-height:34px!important;
    height:34px!important;
  }

  /* Tarjetas / filas de vehículos más compactas */
  .vehicle-card,
  .load-vehicle-card,
  .control-load-vehicle{
    padding:8px 10px!important;
    border-radius:12px!important;
    margin-bottom:6px!important;
  }
  .vehicle-card h3,
  .load-vehicle-card h3,
  .control-load-vehicle h3{
    margin:0 0 4px!important;
    font-size:14px!important;
  }

  /* Métricas de peso */
  .vehicle-metrics,
  .load-metrics,
  .control-load-metrics{
    gap:6px!important;
  }
  .vehicle-metric,
  .load-metric,
  .control-load-metric{
    min-height:42px!important;
    padding:5px 8px!important;
    border-radius:10px!important;
  }
  .vehicle-metric strong,
  .load-metric strong,
  .control-load-metric strong{
    font-size:15px!important;
    line-height:1!important;
  }
  .vehicle-metric span,
  .load-metric span,
  .control-load-metric span{
    font-size:8.5px!important;
  }

  /* Acciones: editar / eliminar / asignar más discretas */
  .vehicle-actions,
  .load-actions,
  .control-load-actions{
    gap:5px!important;
  }
  .vehicle-actions button,
  .load-actions button,
  .control-load-actions button{
    min-height:28px!important;
    height:28px!important;
    padding:0 10px!important;
    border-radius:8px!important;
    font-size:10.5px!important;
    line-height:1!important;
  }

  /* Inventario asociado: filas más densas */
  .load-inventory-table th,
  .load-inventory-table td,
  .control-load-table th,
  .control-load-table td{
    padding-top:6px!important;
    padding-bottom:6px!important;
  }

  /* Evitar huecos verticales grandes */
  .load-control-summary,
  .control-load-summary{
    margin:4px 0 6px!important;
    gap:6px!important;
  }
}
@media (max-width:900px){
  .load-control-page-hero,
  .load-control-hero,
  .control-load-hero,
  .vehicle-load-hero{
    min-height:auto!important;
    height:auto!important;
    padding:12px 14px!important;
  }
}


/* v12.8.342 — Privacidad y Ayuda con encabezado azul estructural */
@media (min-width:901px){
  .legal-page-hero{
    min-height:76px!important;
    height:76px!important;
    padding:10px 18px!important;
    margin:6px 0!important;
    border-radius:18px!important;
    display:flex!important;
    align-items:center!important;
  }
  .legal-page-hero h2{
    font-size:20px!important;
    line-height:1.04!important;
    margin:1px 0 2px!important;
  }
  .legal-page-hero p{
    font-size:9.5px!important;
    line-height:1.12!important;
    margin:0!important;
  }
  .legal-page-hero .eyebrow{
    font-size:8px!important;
    line-height:1!important;
  }
  .legal-page-content{
    max-width:none!important;
    margin:0!important;
    padding:14px 16px!important;
    border-radius:13px!important;
  }
  .legal-page-content h3{
    margin:0 0 6px!important;
    font-size:16px!important;
  }
  .legal-page-content p{
    margin:0!important;
    line-height:1.5!important;
  }
  .legal-page-content .legal-links{
    margin-top:14px!important;
    padding-top:12px!important;
    gap:4px!important;
  }
}
@media (max-width:900px){
  .legal-page-hero{
    min-height:auto!important;
    height:auto!important;
    padding:12px 14px!important;
  }
  .legal-page-content{
    max-width:none!important;
    margin:0!important;
  }
}


/* v12.8.343 — Estadísticas: controles sin solapamiento + sin scroll de página */
@media (min-width:901px){
  .stats-page-hero-compact,
  .stats-page-hero{
    min-height:64px!important;
    height:64px!important;
    margin-top:5px!important;
    margin-bottom:5px!important;
    padding:8px 16px!important;
  }

  .stats-filters-compact{
    padding:6px 8px!important;
    margin-bottom:5px!important;
    overflow:visible!important;
  }

  .stats-control-line{
    display:grid!important;
    grid-template-columns:auto auto auto auto 116px 116px minmax(110px,1fr) minmax(110px,1fr) minmax(110px,1fr) 72px 68px 52px 80px!important;
    gap:5px!important;
    align-items:end!important;
    width:100%!important;
  }

  .stats-control-line>*{
    min-width:0!important;
    max-width:100%!important;
  }

  .stats-control-line button,
  .stats-control-line input,
  .stats-control-line select{
    height:33px!important;
    min-height:33px!important;
  }

  .stats-control-line .primary,
  .stats-view-toggle,
  .stats-download,
  #statsApply,
  #statsGraph,
  #statsText{
    position:static!important;
    transform:none!important;
    margin:0!important;
    z-index:auto!important;
  }

  .stats-view-controls,
  .stats-mode-controls,
  .stats-actions{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    margin:0!important;
  }

  .stats-analysis-switcher-compact{
    margin:0 0 4px!important;
  }
  .stats-analysis-switcher-compact .stats-analysis-option{
    height:45px!important;
    min-height:45px!important;
    padding:3px 4px!important;
  }

  .stats-kpis.compact-kpis{
    margin-bottom:4px!important;
    gap:5px!important;
  }
  .stats-kpis.compact-kpis .metric-card{
    min-height:42px!important;
    height:42px!important;
    padding:4px 7px!important;
  }

  .stats-single-analysis{
    height:calc(100vh - 270px)!important;
    max-height:calc(100vh - 270px)!important;
    min-height:0!important;
    overflow:hidden!important;
    margin-top:0!important;
    padding-bottom:0!important;
  }

  .stats-single-analysis .stats-analysis-body,
  .stats-single-analysis .analysis-body,
  .stats-chart-shell,
  .stats-chart-area{
    min-height:0!important;
    max-height:100%!important;
    overflow:hidden!important;
  }

  .stats-chart-shell,
  .stats-text-shell{
    overflow:auto!important;
    scrollbar-width:thin!important;
  }

  .stats-single-analysis>:last-child{
    margin-bottom:0!important;
  }
}

@media (min-width:901px) and (max-height:800px){
  .stats-page-hero-compact,
  .stats-page-hero{
    min-height:58px!important;
    height:58px!important;
    padding:7px 14px!important;
  }
  .stats-analysis-switcher-compact .stats-analysis-option{
    height:42px!important;
    min-height:42px!important;
  }
  .stats-kpis.compact-kpis .metric-card{
    min-height:39px!important;
    height:39px!important;
  }
  .stats-single-analysis{
    height:calc(100vh - 246px)!important;
    max-height:calc(100vh - 246px)!important;
  }
}


/* v12.8.344 — Estadísticas centradas, sin desplazamiento lateral */
@media (min-width:901px){
  .stats-page,
  .stats-shell,
  .stats-layout,
  .stats-page-hero-compact,
  .stats-filters-compact,
  .stats-analysis-switcher-compact,
  .stats-kpis.compact-kpis,
  .stats-single-analysis{
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
  }

  .stats-control-line{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:flex-end!important;
    justify-content:flex-start!important;
    gap:5px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }

  .stats-control-line > *{
    min-width:0!important;
  }

  .stats-control-line input[type="date"]{
    flex:0 0 116px!important;
    width:116px!important;
    min-width:116px!important;
  }

  .stats-control-line select{
    flex:1 1 110px!important;
    min-width:96px!important;
    max-width:145px!important;
  }

  .stats-control-line .primary,
  .stats-view-toggle,
  .stats-download,
  #statsApply,
  #statsGraph,
  #statsText{
    flex:0 0 auto!important;
    position:static!important;
    transform:none!important;
    margin:0!important;
  }

  .stats-view-controls,
  .stats-mode-controls,
  .stats-actions{
    flex:0 0 auto!important;
    position:static!important;
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    margin:0!important;
  }

  .stats-single-analysis{
    overflow:hidden!important;
  }
}

@media (min-width:901px) and (max-width:1450px){
  .stats-control-line{
    gap:4px!important;
  }
  .stats-control-line input[type="date"]{
    flex-basis:106px!important;
    width:106px!important;
    min-width:106px!important;
  }
  .stats-control-line select{
    min-width:88px!important;
    max-width:120px!important;
  }
  .stats-control-line button{
    padding-left:8px!important;
    padding-right:8px!important;
  }
}


/* v12.8.346 — Estadísticas: aprovechar ancho y separar la fila Hoy → Descargar */
@media (min-width:901px){
  .stats-filters-compact{
    padding-left:16px!important;
    padding-right:10px!important;
  }

  .stats-control-line{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    gap:9px!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
  }

  .stats-control-line > *{
    min-width:0!important;
    margin:0!important;
  }

  /* Hoy / 7 días / Mes / Año */
  .stats-control-line > button:nth-child(-n+4){
    flex:0 0 auto!important;
    min-width:58px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }

  /* Fechas */
  .stats-control-line input[type="date"]{
    flex:0 0 112px!important;
    width:112px!important;
    min-width:112px!important;
  }

  /* Vendedor / Ruta / Método */
  .stats-control-line select{
    flex:0 1 126px!important;
    min-width:106px!important;
    max-width:138px!important;
  }

  /* Aplicar / Gráfico / Texto / Descargar */
  .stats-control-line .primary,
  .stats-view-toggle,
  .stats-download,
  #statsApply,
  #statsGraph,
  #statsText{
    flex:0 0 auto!important;
    position:static!important;
    transform:none!important;
  }

  .stats-view-controls,
  .stats-mode-controls,
  .stats-actions{
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin-left:auto!important;
  }
}

/* Ajuste fino para laptop 1366–1450 */
@media (min-width:901px) and (max-width:1450px){
  .stats-filters-compact{
    padding-left:14px!important;
    padding-right:8px!important;
  }

  .stats-control-line{
    gap:6px!important;
  }

  .stats-control-line > button:nth-child(-n+4){
    min-width:52px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }

  .stats-control-line input[type="date"]{
    flex-basis:105px!important;
    width:105px!important;
    min-width:105px!important;
  }

  .stats-control-line select{
    min-width:92px!important;
    max-width:118px!important;
  }

  .stats-view-controls,
  .stats-mode-controls,
  .stats-actions{
    gap:6px!important;
  }
}


/* v12.8.347 — Estadísticas: balance horizontal real y encabezado simétrico */
@media (min-width:901px){

  /* Encabezado: mismo margen visual a izquierda y derecha */
  .stats-hero,
  .statistics-hero,
  [data-page="estadisticas"] .page-hero,
  [data-page="estadisticas"] .module-hero{
    width:auto!important;
    max-width:none!important;
    margin-left:14px!important;
    margin-right:14px!important;
    box-sizing:border-box!important;
  }

  /* La zona de controles ocupa el ancho útil completo, pero deja respiración simétrica */
  .stats-filters-compact{
    width:auto!important;
    max-width:none!important;
    margin-left:14px!important;
    margin-right:14px!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }

  .stats-control-line{
    width:100%!important;
    display:grid!important;
    grid-template-columns:
      minmax(58px,.65fr)
      minmax(58px,.65fr)
      minmax(58px,.65fr)
      minmax(58px,.65fr)
      minmax(105px,1.05fr)
      minmax(105px,1.05fr)
      minmax(100px,1fr)
      minmax(90px,.9fr)
      minmax(90px,.9fr)
      auto auto auto auto!important;
    align-items:end!important;
    column-gap:8px!important;
    justify-content:stretch!important;
    box-sizing:border-box!important;
  }

  .stats-control-line > *{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  .stats-control-line input[type="date"],
  .stats-control-line select{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    flex:none!important;
  }

  .stats-control-line > button,
  .stats-control-line .primary,
  .stats-view-toggle,
  .stats-download,
  #statsApply,
  #statsGraph,
  #statsText{
    width:auto!important;
    min-width:max-content!important;
    flex:none!important;
    position:static!important;
    transform:none!important;
  }

  /* Evita que un contenedor de acciones se coma todo el hueco derecho */
  .stats-view-controls,
  .stats-mode-controls,
  .stats-actions{
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    display:contents!important;
  }

  /* Bloques inferiores también usan ambos lados por igual */
  .stats-tabs,
  .stats-kpis,
  .stats-chart-card,
  .stats-analysis{
    margin-left:14px!important;
    margin-right:14px!important;
    width:auto!important;
    max-width:none!important;
    box-sizing:border-box!important;
  }
}

/* Laptop: mantener todo visible sin amontonarlo */
@media (min-width:901px) and (max-width:1450px){
  .stats-hero,
  .statistics-hero,
  [data-page="estadisticas"] .page-hero,
  [data-page="estadisticas"] .module-hero,
  .stats-filters-compact,
  .stats-tabs,
  .stats-kpis,
  .stats-chart-card,
  .stats-analysis{
    margin-left:10px!important;
    margin-right:10px!important;
  }

  .stats-control-line{
    grid-template-columns:
      50px 54px 50px 50px
      minmax(96px,1fr) minmax(96px,1fr)
      minmax(88px,.9fr) minmax(82px,.8fr) minmax(82px,.8fr)
      auto auto auto auto!important;
    column-gap:5px!important;
  }

  .stats-control-line > button,
  #statsApply,
  #statsGraph,
  #statsText,
  .stats-download{
    padding-left:8px!important;
    padding-right:8px!important;
  }
}


/* v12.8.348 — FIX real del encabezado de Estadísticas */
@media (min-width:901px){

  /* El hero activo de Estadísticas debe ocupar todo el ancho disponible real */
  .stats-page-hero-compact,
  .stats-page-hero,
  .stats-hero,
  .statistics-hero{
    display:flex!important;
    width:calc(100% - 20px)!important;
    max-width:none!important;
    margin-left:10px!important;
    margin-right:10px!important;
    box-sizing:border-box!important;
    align-self:stretch!important;
    justify-self:stretch!important;
  }

  /* Si el hero está dentro de un wrapper con ancho limitado, romper esa limitación */
  .stats-page-hero-compact,
  .stats-page-hero{
    left:auto!important;
    right:auto!important;
    transform:none!important;
  }

  /* Asegurar que el contenedor padre no recorte el lado derecho */
  .stats-page,
  .stats-shell,
  .stats-layout,
  .stats-container{
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  /* El borde derecho debe coincidir visualmente con el izquierdo */
  .stats-page-hero-compact::before,
  .stats-page-hero-compact::after,
  .stats-page-hero::before,
  .stats-page-hero::after{
    max-width:100%!important;
  }
}

/* Laptop */
@media (min-width:901px) and (max-width:1450px){
  .stats-page-hero-compact,
  .stats-page-hero,
  .stats-hero,
  .statistics-hero{
    width:calc(100% - 16px)!important;
    margin-left:8px!important;
    margin-right:8px!important;
  }
}


/* v12.8.349 — Clientes alfabéticos y listado de alta densidad */
@media (min-width:901px){
  .clients-page-hero{
    min-height:58px!important;
    height:58px!important;
    padding:7px 14px!important;
    margin:5px 0!important;
  }
  .clients-page-hero h2{
    font-size:18px!important;
    line-height:1!important;
    margin:1px 0!important;
  }
  .clients-page-hero p{
    font-size:8px!important;
    margin:1px 0 0!important;
  }

  .clients-panel-compact{
    height:calc(100vh - 126px)!important;
    min-height:0!important;
    padding:6px 8px!important;
    margin-top:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  .clients-toolbar{
    grid-template-columns:minmax(210px,300px) 205px 205px!important;
    gap:6px!important;
    margin-bottom:3px!important;
    flex:0 0 auto!important;
  }
  .clients-toolbar input,
  .clients-toolbar select{
    height:30px!important;
    min-height:30px!important;
    font-size:10.5px!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }

  #clientSummary{
    margin:0 0 3px!important;
    flex:0 0 auto!important;
  }
  .clients-metrics{
    gap:5px!important;
  }
  .clients-metrics .metric{
    min-height:32px!important;
    height:32px!important;
    padding:3px 7px!important;
    border-radius:9px!important;
  }
  .clients-metrics .metric strong{
    font-size:13px!important;
    line-height:1!important;
  }
  .clients-metrics .metric span,
  .clients-metrics .metric small{
    font-size:7px!important;
    line-height:1!important;
  }

  .clients-data{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    overflow:auto!important;
    scrollbar-width:thin!important;
  }
  .clients-data .table-wrap{
    height:100%!important;
    max-height:none!important;
    overflow:auto!important;
  }
  .clients-data table{
    width:100%!important;
    border-collapse:collapse!important;
  }

  .clients-data thead th{
    position:sticky!important;
    top:0!important;
    z-index:3!important;
    height:24px!important;
    padding:4px 7px!important;
    font-size:7.5px!important;
    line-height:1!important;
    background:var(--surface,#fff)!important;
  }

  .clients-data tbody tr{
    height:28px!important;
    min-height:28px!important;
  }
  .clients-data tbody td{
    height:28px!important;
    min-height:28px!important;
    padding:3px 7px!important;
    font-size:9.5px!important;
    line-height:1!important;
    vertical-align:middle!important;
  }
  .clients-data tbody td:first-child strong{
    font-size:10px!important;
    line-height:1!important;
  }
  .clients-data .client-secondary{
    display:inline!important;
    margin-left:7px!important;
    margin-top:0!important;
    color:var(--muted)!important;
    font-size:7.5px!important;
    line-height:1!important;
  }

  .clients-data tbody td:last-child{
    width:58px!important;
    min-width:58px!important;
    text-align:right!important;
  }
  .clients-data tbody td:last-child button{
    height:23px!important;
    min-height:23px!important;
    padding:0 7px!important;
    border-radius:7px!important;
    font-size:8.5px!important;
    line-height:1!important;
  }
}

@media (min-width:901px) and (max-height:800px){
  .clients-page-hero{
    min-height:54px!important;
    height:54px!important;
  }
  .clients-panel-compact{
    height:calc(100vh - 116px)!important;
  }
  .clients-data tbody tr,
  .clients-data tbody td{
    height:26px!important;
    min-height:26px!important;
  }
}

@media (max-width:900px){
  .clients-panel-compact{
    height:auto!important;
    overflow:visible!important;
  }
  .clients-toolbar{
    grid-template-columns:1fr!important;
  }
  .clients-data .client-secondary{
    display:block!important;
    margin-left:0!important;
    margin-top:2px!important;
  }
}


/* v12.8.351 — Clientes: modal profesional + nombre comercial/razón social visibles */
@media (min-width:901px){

  /* ===== Listado ===== */
  .clients-data .client-name-cell{
    min-width:260px!important;
  }
  .clients-data .client-trade-name{
    display:inline-block!important;
    font-size:10.5px!important;
    line-height:1.05!important;
    font-weight:700!important;
    color:var(--ink,#172033)!important;
  }
  .clients-data .client-legal-name{
    display:inline-block!important;
    margin-left:8px!important;
    font-size:8px!important;
    line-height:1.05!important;
    color:var(--muted,#7a8495)!important;
    white-space:nowrap!important;
  }
  .clients-data .client-legal-name b{
    font-weight:700!important;
    color:var(--muted-strong,#667085)!important;
  }
  .clients-data .client-secondary{
    display:inline-block!important;
    margin-left:8px!important;
    font-size:7.5px!important;
    color:var(--muted,#7a8495)!important;
  }

  /* ===== Modal editor ===== */
  #clientEditor .modal,
  .client-editor-modal{
    position:fixed!important;
    inset:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:24px!important;
    background:rgba(15,23,42,.34)!important;
    backdrop-filter:blur(4px)!important;
    z-index:9999!important;
  }

  #clientEditor .modal-card,
  .client-editor-card{
    width:min(860px,calc(100vw - 48px))!important;
    max-width:860px!important;
    max-height:calc(100vh - 48px)!important;
    overflow:auto!important;
    background:#fff!important;
    border-radius:18px!important;
    padding:0!important;
    box-shadow:0 22px 60px rgba(15,23,42,.20)!important;
    border:1px solid rgba(15,23,42,.08)!important;
  }

  #clientEditor .modal-head,
  .client-editor-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:16px 18px 12px!important;
    border-bottom:1px solid rgba(15,23,42,.07)!important;
    margin:0!important;
  }

  #clientEditor .modal-head h2,
  #clientEditor .modal-head h3{
    margin:0!important;
    font-size:18px!important;
    line-height:1.05!important;
  }

  #clientEditor .modal-head .eyebrow{
    display:block!important;
    font-size:8px!important;
    margin-bottom:3px!important;
  }

  #clientEditor .modal-head button,
  .client-editor-head button{
    height:30px!important;
    min-height:30px!important;
    padding:0 10px!important;
    border-radius:9px!important;
    font-size:10px!important;
  }

  /* Formulario: dos columnas equilibradas */
  #clientEditor form,
  #clientEditor .form-grid,
  #clientEditor .editor-grid{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    column-gap:18px!important;
    row-gap:10px!important;
    padding:14px 18px!important;
    margin:0!important;
  }

  #clientEditor label{
    display:grid!important;
    grid-template-columns:118px minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    margin:0!important;
    font-size:10.5px!important;
    font-weight:650!important;
    line-height:1.1!important;
  }

  #clientEditor input,
  #clientEditor select,
  #clientEditor textarea{
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    border-radius:10px!important;
    border:1px solid #d8dee8!important;
    background:#fff!important;
    font-size:11px!important;
    color:#172033!important;
    outline:none!important;
  }

  #clientEditor input,
  #clientEditor select{
    height:36px!important;
    min-height:36px!important;
    padding:0 10px!important;
  }

  #clientEditor textarea{
    min-height:74px!important;
    height:74px!important;
    padding:9px 10px!important;
    resize:vertical!important;
  }

  #clientEditor input:focus,
  #clientEditor select:focus,
  #clientEditor textarea:focus{
    border-color:#2aa8df!important;
    box-shadow:0 0 0 3px rgba(42,168,223,.10)!important;
  }

  /* Dirección ocupa todo el ancho cuando es el textarea */
  #clientEditor label:has(textarea){
    grid-column:1 / -1!important;
    grid-template-columns:118px minmax(0,1fr)!important;
  }

  #clientEditor .modal-actions,
  .client-editor-actions{
    grid-column:1 / -1!important;
    display:flex!important;
    justify-content:flex-end!important;
    gap:8px!important;
    padding:12px 18px 16px!important;
    margin:0!important;
    border-top:1px solid rgba(15,23,42,.07)!important;
  }

  #clientEditor .modal-actions button,
  .client-editor-actions button{
    height:34px!important;
    min-height:34px!important;
    padding:0 14px!important;
    border-radius:9px!important;
    font-size:10.5px!important;
    width:auto!important;
    min-width:0!important;
  }

  #clientEditor .modal-actions .primary,
  .client-editor-actions .primary{
    min-width:118px!important;
  }
}

@media (max-width:900px){
  #clientEditor .modal,
  .client-editor-modal{
    padding:10px!important;
  }
  #clientEditor .modal-card,
  .client-editor-card{
    width:100%!important;
    max-height:calc(100vh - 20px)!important;
  }
  #clientEditor form,
  #clientEditor .form-grid,
  #clientEditor .editor-grid{
    grid-template-columns:1fr!important;
  }
  #clientEditor label,
  #clientEditor label:has(textarea){
    grid-template-columns:1fr!important;
    gap:4px!important;
  }
}


/* v12.8.352 — Clientes por columnas: cliente, razón social, correo y teléfono */
@media (min-width:901px){
  .clients-directory-table{
    width:100%!important;
    table-layout:fixed!important;
    border-collapse:collapse!important;
  }

  .clients-directory-table th,
  .clients-directory-table td{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    vertical-align:middle!important;
  }

  /* Reparto del ancho útil */
  .clients-directory-table th:nth-child(1),
  .clients-directory-table td:nth-child(1){width:20%!important;}
  .clients-directory-table th:nth-child(2),
  .clients-directory-table td:nth-child(2){width:21%!important;}
  .clients-directory-table th:nth-child(3),
  .clients-directory-table td:nth-child(3){width:22%!important;}
  .clients-directory-table th:nth-child(4),
  .clients-directory-table td:nth-child(4){width:11%!important;}
  .clients-directory-table th:nth-child(5),
  .clients-directory-table td:nth-child(5){width:10%!important;}
  .clients-directory-table th:nth-child(6),
  .clients-directory-table td:nth-child(6){width:10%!important;}
  .clients-directory-table th:nth-child(7),
  .clients-directory-table td:nth-child(7){width:6%!important;}

  /* Cliente y razón social con la misma jerarquía visual */
  .clients-directory-table .client-name-cell,
  .clients-directory-table .client-legal-cell{
    font-size:10px!important;
    font-weight:650!important;
    color:var(--ink,#172033)!important;
  }
  .clients-directory-table .client-name-cell strong{
    font-size:10px!important;
    font-weight:650!important;
    line-height:1!important;
  }

  .clients-directory-table .client-email-cell,
  .clients-directory-table .client-phone-cell{
    font-size:9.5px!important;
    color:var(--ink,#172033)!important;
  }

  .clients-directory-table tbody tr,
  .clients-directory-table tbody td{
    height:28px!important;
    min-height:28px!important;
  }

  .clients-directory-table tbody td{
    padding:3px 7px!important;
  }

  .clients-directory-table thead th{
    padding:5px 7px!important;
    font-size:7.5px!important;
    text-transform:uppercase!important;
    letter-spacing:.02em!important;
  }

  .clients-directory-table .client-actions-cell{
    text-align:right!important;
    width:6%!important;
  }

  .clients-directory-table .client-actions-cell button{
    height:23px!important;
    min-height:23px!important;
    padding:0 7px!important;
    border-radius:7px!important;
    font-size:8.5px!important;
  }
}

@media (min-width:901px) and (max-width:1250px){
  .clients-directory-table th:nth-child(1),
  .clients-directory-table td:nth-child(1){width:18%!important;}
  .clients-directory-table th:nth-child(2),
  .clients-directory-table td:nth-child(2){width:20%!important;}
  .clients-directory-table th:nth-child(3),
  .clients-directory-table td:nth-child(3){width:20%!important;}
  .clients-directory-table th:nth-child(4),
  .clients-directory-table td:nth-child(4){width:12%!important;}
  .clients-directory-table th:nth-child(5),
  .clients-directory-table td:nth-child(5){width:11%!important;}
  .clients-directory-table th:nth-child(6),
  .clients-directory-table td:nth-child(6){width:12%!important;}
  .clients-directory-table th:nth-child(7),
  .clients-directory-table td:nth-child(7){width:7%!important;}
}

@media (max-width:900px){
  .clients-directory-table{
    table-layout:auto!important;
    min-width:900px!important;
  }
}


/* v12.8.353 — Productos e Inventario con la misma densidad visual de Clientes */
@media (min-width:901px){

  /* =========================================================
     PRODUCTOS
     ========================================================= */
  .products-page-hero{
    min-height:58px!important;
    height:58px!important;
    padding:7px 14px!important;
    margin:5px 0!important;
  }
  .products-page-hero h2{
    font-size:18px!important;
    line-height:1!important;
    margin:1px 0!important;
  }
  .products-page-hero p{
    font-size:8px!important;
    margin:1px 0 0!important;
  }

  .products-dashboard-compact,
  .products-admin-panel.products-admin-compact{
    height:calc(100vh - 126px)!important;
    min-height:0!important;
    padding:6px 8px!important;
    margin-top:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  .products-control-strip{
    display:grid!important;
    grid-template-columns:minmax(210px,300px) 190px minmax(250px,1fr) auto!important;
    gap:6px!important;
    align-items:center!important;
    margin-bottom:3px!important;
    flex:0 0 auto!important;
  }
  .products-control-strip > input{
    width:100%!important;
    max-width:300px!important;
    height:30px!important;
    min-height:30px!important;
    font-size:10.5px!important;
  }
  .products-control-strip select,
  .products-control-strip button{
    height:30px!important;
    min-height:30px!important;
    font-size:10px!important;
  }
  .products-control-strip .presentation-select-wrap{
    min-width:190px!important;
    width:190px!important;
  }
  .products-control-strip .presentation-filters-full{
    min-width:250px!important;
    gap:4px!important;
  }

  #productSummary{
    flex:0 0 auto!important;
    margin:1px 0 3px!important;
    min-height:22px!important;
    font-size:9px!important;
  }

  .products-data-viewport{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    overflow:auto!important;
    scrollbar-width:thin!important;
  }

  .product-admin-table{
    width:100%!important;
    border-collapse:collapse!important;
    table-layout:fixed!important;
  }
  .product-admin-table thead th{
    position:sticky!important;
    top:0!important;
    z-index:3!important;
    height:24px!important;
    padding:4px 7px!important;
    font-size:7.5px!important;
    line-height:1!important;
    background:var(--surface,#fff)!important;
  }
  .product-admin-table tbody tr,
  .product-admin-table tbody td{
    height:28px!important;
    min-height:28px!important;
  }
  .product-admin-table tbody td{
    padding:3px 7px!important;
    font-size:9.5px!important;
    line-height:1!important;
    vertical-align:middle!important;
  }
  .product-admin-table tbody td:first-child{
    font-size:10px!important;
    font-weight:650!important;
  }
  .product-admin-table tbody td:first-child small{
    display:inline!important;
    margin-left:7px!important;
    font-size:7.5px!important;
  }

  /* =========================================================
     INVENTARIO
     ========================================================= */
  .inventory-hero{
    min-height:58px!important;
    height:58px!important;
    padding:7px 14px!important;
    margin:5px 0!important;
  }
  .inventory-hero h2{
    font-size:18px!important;
    line-height:1!important;
    margin:1px 0!important;
  }
  .inventory-hero p{
    font-size:8px!important;
    margin:1px 0 0!important;
  }

  .inventory-dashboard-compact,
  .inventory-panel{
    height:calc(100vh - 126px)!important;
    min-height:0!important;
    padding:6px 8px!important;
    margin-top:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  #inventoryControls{
    flex:0 0 auto!important;
    margin:0 0 3px!important;
  }

  .inventory-toolbar,
  .inventory-search-row{
    display:grid!important;
    grid-template-columns:minmax(200px,280px) 160px 145px 170px auto auto auto!important;
    gap:6px!important;
    align-items:end!important;
    margin-bottom:3px!important;
  }

  .inventory-toolbar input,
  .inventory-toolbar select,
  .inventory-toolbar button,
  .inventory-search-row input,
  .inventory-search-row select,
  .inventory-search-row button{
    height:30px!important;
    min-height:30px!important;
    font-size:10px!important;
    box-sizing:border-box!important;
  }

  .inventory-search-control,
  .inventory-toolbar input[type="search"],
  .inventory-search-row input[type="search"]{
    width:100%!important;
    max-width:280px!important;
  }

  .inventory-panel > #data,
  .inventory-dashboard-compact > #data{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow:auto!important;
    scrollbar-width:thin!important;
  }

  .inventory-panel table,
  .inventory-dashboard-compact table{
    width:100%!important;
    border-collapse:collapse!important;
    table-layout:fixed!important;
  }

  .inventory-panel table thead th,
  .inventory-dashboard-compact table thead th{
    position:sticky!important;
    top:0!important;
    z-index:3!important;
    height:24px!important;
    padding:4px 7px!important;
    font-size:7.5px!important;
    line-height:1!important;
    background:var(--surface,#fff)!important;
  }

  .inventory-panel table tbody tr,
  .inventory-panel table tbody td,
  .inventory-dashboard-compact table tbody tr,
  .inventory-dashboard-compact table tbody td{
    height:28px!important;
    min-height:28px!important;
  }

  .inventory-panel table tbody td,
  .inventory-dashboard-compact table tbody td{
    padding:3px 7px!important;
    font-size:9.5px!important;
    line-height:1!important;
    vertical-align:middle!important;
  }

  .inventory-panel table tbody td:first-child,
  .inventory-dashboard-compact table tbody td:first-child{
    font-size:10px!important;
    font-weight:650!important;
  }

  /* Inputs numéricos de carga/regreso más pequeños */
  .inventory-panel table input,
  .inventory-dashboard-compact table input{
    height:24px!important;
    min-height:24px!important;
    width:72px!important;
    padding:0 6px!important;
    border-radius:7px!important;
    font-size:9px!important;
  }

  #invSummary{
    flex:0 0 auto!important;
    margin-top:3px!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;
  }

  #invSummary .metric,
  #invSummary .metric-card{
    min-height:32px!important;
    height:32px!important;
    padding:3px 7px!important;
    border-radius:9px!important;
  }

  #invSummary strong{
    font-size:13px!important;
    line-height:1!important;
  }
  #invSummary span,
  #invSummary small{
    font-size:7px!important;
    line-height:1!important;
  }
}

@media (min-width:901px) and (max-height:800px){
  .products-page-hero,
  .inventory-hero{
    min-height:54px!important;
    height:54px!important;
  }

  .products-dashboard-compact,
  .products-admin-panel.products-admin-compact,
  .inventory-dashboard-compact,
  .inventory-panel{
    height:calc(100vh - 116px)!important;
  }

  .product-admin-table tbody tr,
  .product-admin-table tbody td,
  .inventory-panel table tbody tr,
  .inventory-panel table tbody td,
  .inventory-dashboard-compact table tbody tr,
  .inventory-dashboard-compact table tbody td{
    height:26px!important;
    min-height:26px!important;
  }
}

@media (max-width:900px){
  .products-dashboard-compact,
  .products-admin-panel.products-admin-compact,
  .inventory-dashboard-compact,
  .inventory-panel{
    height:auto!important;
    overflow:visible!important;
  }

  .products-control-strip,
  .inventory-toolbar,
  .inventory-search-row{
    grid-template-columns:1fr!important;
  }
}


/* v12.8.354 — Inventario: corregir encabezado y restaurar resumen inferior */
@media (min-width:901px){

  /* Encabezado real del módulo Inventario */
  .inventory-hero,
  .inventory-page-hero,
  .inventory-smart-hero,
  body:has(#inventoryControls) .hero{
    min-height:58px!important;
    height:58px!important;
    padding:7px 14px!important;
    margin-top:5px!important;
    margin-bottom:5px!important;
    border-radius:16px!important;
    align-items:center!important;
  }

  .inventory-hero h2,
  .inventory-page-hero h2,
  .inventory-smart-hero h2,
  body:has(#inventoryControls) .hero h2{
    font-size:18px!important;
    line-height:1!important;
    margin:1px 0!important;
  }

  .inventory-hero p,
  .inventory-page-hero p,
  .inventory-smart-hero p,
  body:has(#inventoryControls) .hero p{
    font-size:8px!important;
    line-height:1.05!important;
    margin:1px 0 0!important;
  }

  /* Restaurar por completo el resumen inferior:
     Total vendido / Descuentos / Devoluciones / Carga */
  #invSummary{
    display:block!important;
    margin-top:6px!important;
    flex:0 0 auto!important;
  }

  #invSummary .metrics{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
  }

  #invSummary .metric,
  #invSummary .metric-card{
    height:auto!important;
    min-height:unset!important;
    padding:12px 14px!important;
    border-radius:14px!important;
  }

  #invSummary strong{
    font-size:inherit!important;
    line-height:normal!important;
  }

  #invSummary span,
  #invSummary small{
    font-size:inherit!important;
    line-height:normal!important;
  }

  /* Mantener únicamente la tabla/controles compactos */
  .inventory-dashboard-compact,
  .inventory-panel{
    height:calc(100vh - 126px)!important;
    min-height:0!important;
    padding:6px 8px!important;
    margin-top:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  #inventoryControls{
    flex:0 0 auto!important;
    margin-bottom:3px!important;
  }

  .inventory-panel > #data,
  .inventory-dashboard-compact > #data{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow:auto!important;
    scrollbar-width:thin!important;
  }

  /* No alterar tamaño de las cifras/campos resumen */
  #invSummary input,
  #invSummary button{
    font-size:inherit!important;
  }
}

@media (min-width:901px) and (max-height:800px){
  .inventory-hero,
  .inventory-page-hero,
  .inventory-smart-hero,
  body:has(#inventoryControls) .hero{
    min-height:54px!important;
    height:54px!important;
  }

  .inventory-dashboard-compact,
  .inventory-panel{
    height:calc(100vh - 116px)!important;
  }
}


/* v12.8.355 — Configuraciones estilo Clientes + resumen Inventario compacto */
@media (min-width:901px){

  /* CONFIGURACIONES: mismo encabezado de Clientes */
  .settings-page-hero,
  .settings-hero,
  .config-hero,
  .configuration-hero{
    min-height:58px!important;
    height:58px!important;
    padding:7px 14px!important;
    margin:5px 0!important;
    border-radius:16px!important;
    align-items:center!important;
  }

  .settings-page-hero h1,
  .settings-page-hero h2,
  .settings-hero h1,
  .settings-hero h2,
  .config-hero h1,
  .config-hero h2,
  .configuration-hero h1,
  .configuration-hero h2{
    font-size:18px!important;
    line-height:1!important;
    margin:1px 0!important;
  }

  .settings-page-hero p,
  .settings-hero p,
  .config-hero p,
  .configuration-hero p{
    font-size:8px!important;
    line-height:1.05!important;
    margin:1px 0 0!important;
  }

  /* INVENTARIO: tarjetas inferiores más bajas y densas */
  #invSummary{
    margin-top:4px!important;
  }

  #invSummary .metrics{
    gap:6px!important;
  }

  #invSummary .metric,
  #invSummary .metric-card{
    min-height:54px!important;
    height:54px!important;
    padding:6px 10px!important;
    border-radius:11px!important;
    box-sizing:border-box!important;
  }

  #invSummary .metric strong,
  #invSummary .metric-card strong{
    font-size:15px!important;
    line-height:1.05!important;
    margin:0!important;
  }

  #invSummary .metric span,
  #invSummary .metric small,
  #invSummary .metric-card span,
  #invSummary .metric-card small{
    font-size:8px!important;
    line-height:1.1!important;
    margin-top:2px!important;
  }

  /* Tarjeta de "Carga puesta por" */
  #invSummary .metric:last-child,
  #invSummary .metric-card:last-child{
    padding-top:6px!important;
    padding-bottom:6px!important;
  }
}

/* laptops típicas: aún más compacto */
@media (min-width:901px) and (max-height:800px){
  .settings-page-hero,
  .settings-hero,
  .config-hero,
  .configuration-hero{
    min-height:54px!important;
    height:54px!important;
    padding:6px 13px!important;
  }

  #invSummary .metric,
  #invSummary .metric-card{
    min-height:48px!important;
    height:48px!important;
    padding:5px 9px!important;
  }

  #invSummary .metric strong,
  #invSummary .metric-card strong{
    font-size:14px!important;
  }
}


/* =========================================================
   v12.8.357 — EDITORES PROFESIONALES, ESPECÍFICOS POR MÓDULO
   ========================================================= */
body.modal-open{
  overflow:hidden!important;
}

/* ===================== CLIENTES ===================== */
.client-edit-backdrop{
  position:fixed!important;
  inset:0!important;
  z-index:9998!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px!important;
  background:rgba(15,23,42,.34)!important;
  backdrop-filter:blur(5px)!important;
}
.client-edit-modal{
  width:min(820px,calc(100vw - 48px))!important;
  max-width:820px!important;
  max-height:calc(100vh - 48px)!important;
  overflow:auto!important;
  margin:0!important;
  padding:0!important;
  border-radius:20px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 24px 70px rgba(15,23,42,.22)!important;
  background:#fff!important;
}
.client-edit-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:16px 18px 12px!important;
  margin:0!important;
  border-bottom:1px solid rgba(15,23,42,.07)!important;
}
.client-edit-head h3{
  margin:2px 0 0!important;
  font-size:19px!important;
  line-height:1.05!important;
}
.client-edit-head .eyebrow{
  font-size:8px!important;
  letter-spacing:.08em!important;
}
.client-edit-head #clientEditClose{
  height:30px!important;
  min-height:30px!important;
  width:auto!important;
  padding:0 11px!important;
  border-radius:9px!important;
  font-size:10px!important;
}
.client-edit-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px 16px!important;
  padding:14px 18px 6px!important;
}
.client-edit-grid label{
  display:grid!important;
  grid-template-columns:116px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  margin:0!important;
  font-size:10.5px!important;
  font-weight:650!important;
  color:#253247!important;
}
.client-edit-grid label[style*="grid-column"]{
  grid-column:1/-1!important;
}
.client-edit-grid input,
.client-edit-grid select,
.client-edit-grid textarea{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  border:1px solid #d8dee8!important;
  border-radius:10px!important;
  background:#fff!important;
  font-size:11px!important;
  color:#172033!important;
  outline:none!important;
}
.client-edit-grid input,
.client-edit-grid select{
  height:35px!important;
  min-height:35px!important;
  padding:0 10px!important;
}
.client-edit-grid textarea{
  min-height:70px!important;
  height:70px!important;
  padding:9px 10px!important;
  resize:vertical!important;
}
.client-edit-grid input:focus,
.client-edit-grid select:focus,
.client-edit-grid textarea:focus{
  border-color:#27a8df!important;
  box-shadow:0 0 0 3px rgba(39,168,223,.10)!important;
}
#clientEditError{
  margin:8px 18px 0!important;
}
.client-edit-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  padding:12px 18px 16px!important;
  margin-top:8px!important;
  border-top:1px solid rgba(15,23,42,.07)!important;
}
.client-edit-actions button{
  width:auto!important;
  min-width:0!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 14px!important;
  border-radius:9px!important;
  font-size:10.5px!important;
}
#clientEditSave{
  min-width:124px!important;
}

/* ===================== PRODUCTOS ===================== */
.product-modal-backdrop{
  position:fixed!important;
  inset:0!important;
  z-index:9998!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:22px!important;
  background:rgba(15,23,42,.34)!important;
  backdrop-filter:blur(5px)!important;
}
.product-editor{
  width:min(980px,calc(100vw - 44px))!important;
  max-width:980px!important;
  max-height:calc(100vh - 44px)!important;
  overflow:auto!important;
  margin:0!important;
  padding:0!important;
  border-radius:20px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(15,23,42,.22)!important;
}
.product-editor-head{
  position:sticky!important;
  top:0!important;
  z-index:5!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:15px 18px 12px!important;
  border-bottom:1px solid rgba(15,23,42,.07)!important;
  background:rgba(255,255,255,.97)!important;
  backdrop-filter:blur(10px)!important;
}
.product-editor-head h3{
  margin:2px 0 0!important;
  font-size:20px!important;
  line-height:1.05!important;
}
.product-editor-head .eyebrow{
  font-size:8px!important;
  letter-spacing:.08em!important;
}
.product-editor-head .icon-btn{
  width:30px!important;
  height:30px!important;
  min-height:30px!important;
  padding:0!important;
  border-radius:9px!important;
  font-size:18px!important;
}
.product-form-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px 16px!important;
  padding:14px 18px!important;
}
.product-form-grid.inner{
  padding:8px 0 0!important;
  gap:8px 14px!important;
}
.product-form-grid > label{
  display:grid!important;
  gap:5px!important;
  margin:0!important;
  min-width:0!important;
  font-size:10.5px!important;
  font-weight:650!important;
  color:#253247!important;
}
.product-form-grid input,
.product-form-grid select,
.product-form-grid textarea{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  border:1px solid #d8dee8!important;
  border-radius:10px!important;
  background:#fff!important;
  font-size:11px!important;
  color:#172033!important;
}
.product-form-grid input,
.product-form-grid select{
  height:35px!important;
  min-height:35px!important;
  padding:0 10px!important;
}
.product-form-grid textarea{
  min-height:64px!important;
  height:64px!important;
  padding:9px 10px!important;
}
.product-form-grid .span-2{
  grid-column:1/-1!important;
}
.product-required-presentation,
.product-weight-box,
.fiscal-product{
  padding:11px 12px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:13px!important;
  background:#fbfcfe!important;
}
.form-label{
  display:block!important;
  margin-bottom:8px!important;
  font-size:10px!important;
  font-weight:750!important;
  color:#253247!important;
}
.presentation-picker{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:6px!important;
}
.presentation-choice{
  min-width:0!important;
  width:100%!important;
  height:32px!important;
  min-height:32px!important;
  padding:0 6px!important;
  border-radius:9px!important;
  font-size:9.5px!important;
}
.product-weight-box small,
.product-required-presentation small{
  display:block!important;
  margin-top:7px!important;
  font-size:8px!important;
  line-height:1.2!important;
}
.fiscal-product summary{
  cursor:pointer!important;
  font-size:10px!important;
  font-weight:700!important;
}
.switch-row{
  min-height:44px!important;
  padding:8px 10px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:12px!important;
  background:#fbfcfe!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}
.switch-row span{
  display:grid!important;
  gap:2px!important;
}
.switch-row small{
  font-size:8px!important;
}
.switch-row input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
}
#productFormMsg{
  margin:0 18px!important;
}
.product-editor-actions{
  position:sticky!important;
  bottom:0!important;
  z-index:5!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:8px!important;
  padding:12px 18px 15px!important;
  border-top:1px solid rgba(15,23,42,.07)!important;
  background:rgba(255,255,255,.97)!important;
  backdrop-filter:blur(10px)!important;
}
.product-editor-actions button{
  width:auto!important;
  min-width:0!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 14px!important;
  border-radius:9px!important;
  font-size:10.5px!important;
}
#saveProduct{
  min-width:122px!important;
}

/* ===================== USUARIOS ===================== */
.user-modal-backdrop{
  position:fixed!important;
  inset:0!important;
  z-index:9998!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:22px!important;
  background:rgba(15,23,42,.34)!important;
  backdrop-filter:blur(5px)!important;
}
.user-modal{
  width:min(980px,calc(100vw - 44px))!important;
  max-width:980px!important;
  max-height:calc(100vh - 44px)!important;
  overflow:auto!important;
  margin:0!important;
  padding:0!important;
  border-radius:20px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(15,23,42,.22)!important;
}
.user-modal > .panel-head{
  position:sticky!important;
  top:0!important;
  z-index:6!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:15px 18px 12px!important;
  margin:0!important;
  border-bottom:1px solid rgba(15,23,42,.07)!important;
  background:rgba(255,255,255,.97)!important;
  backdrop-filter:blur(10px)!important;
}
.user-modal > .panel-head h3{
  margin:2px 0!important;
  font-size:19px!important;
  line-height:1.05!important;
}
.user-modal > .panel-head p{
  margin:3px 0 0!important;
  font-size:9px!important;
}
#userClose{
  height:30px!important;
  min-height:30px!important;
  width:auto!important;
  padding:0 11px!important;
  border-radius:9px!important;
  font-size:10px!important;
}
.user-form-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px 16px!important;
  padding:14px 18px 10px!important;
}
.user-form-grid label{
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  margin:0!important;
  font-size:10.5px!important;
  font-weight:650!important;
}
.user-form-grid input,
.user-form-grid select{
  width:100%!important;
  min-width:0!important;
  height:35px!important;
  min-height:35px!important;
  box-sizing:border-box!important;
  padding:0 10px!important;
  border:1px solid #d8dee8!important;
  border-radius:10px!important;
  background:#fff!important;
  font-size:11px!important;
}
.user-toggle-row{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
  padding:0 18px 12px!important;
}
.user-toggle-row label{
  min-height:38px!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:7px 10px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:11px!important;
  background:#fbfcfe!important;
  font-size:9.5px!important;
  font-weight:650!important;
}
.user-toggle-row input{
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
}
.permissions-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:11px 18px 8px!important;
  border-top:1px solid rgba(15,23,42,.07)!important;
}
.permissions-head h4{
  margin:2px 0 0!important;
  font-size:15px!important;
}
#applyRole{
  width:auto!important;
  min-width:0!important;
  height:30px!important;
  min-height:30px!important;
  padding:0 11px!important;
  border-radius:9px!important;
  font-size:10px!important;
}
.permission-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  padding:0 18px 14px!important;
}
.permission-card{
  min-width:0!important;
  min-height:58px!important;
  display:flex!important;
  align-items:flex-start!important;
  gap:9px!important;
  padding:9px 10px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:12px!important;
  background:#fbfcfe!important;
}
.permission-card input{
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  margin-top:2px!important;
}
.permission-card span{
  min-width:0!important;
  display:grid!important;
  gap:3px!important;
}
.permission-card b{
  font-size:10px!important;
  line-height:1.15!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.permission-card small{
  font-size:8px!important;
  line-height:1.2!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
#userFormError{
  margin:0 18px 8px!important;
}
.user-modal-actions{
  position:sticky!important;
  bottom:0!important;
  z-index:6!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:8px!important;
  padding:12px 18px 15px!important;
  border-top:1px solid rgba(15,23,42,.07)!important;
  background:rgba(255,255,255,.97)!important;
  backdrop-filter:blur(10px)!important;
}
.user-modal-actions button{
  width:auto!important;
  min-width:0!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 14px!important;
  border-radius:9px!important;
  font-size:10.5px!important;
}
#userSave{
  min-width:122px!important;
}

/* Laptop 1366x768 */
@media (min-width:901px) and (max-height:800px){
  .client-edit-modal,
  .product-editor,
  .user-modal{
    max-height:calc(100vh - 26px)!important;
  }
  .product-form-grid{
    gap:8px 14px!important;
    padding-top:11px!important;
    padding-bottom:11px!important;
  }
  .presentation-choice{
    height:29px!important;
    min-height:29px!important;
    font-size:9px!important;
  }
  .permission-card{
    min-height:52px!important;
    padding:7px 9px!important;
  }
}

/* Responsive */
@media (max-width:900px){
  .client-edit-backdrop,
  .product-modal-backdrop,
  .user-modal-backdrop{
    padding:10px!important;
  }
  .client-edit-modal,
  .product-editor,
  .user-modal{
    width:100%!important;
    max-height:calc(100vh - 20px)!important;
  }
  .client-edit-grid,
  .product-form-grid,
  .user-form-grid,
  .permission-grid{
    grid-template-columns:1fr!important;
  }
  .client-edit-grid label,
  .user-form-grid label{
    grid-template-columns:1fr!important;
    gap:4px!important;
  }
  .presentation-picker{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .user-toggle-row{
    grid-template-columns:1fr 1fr!important;
  }
}


/* v12.8.358 — FIX definitivo del editor de Clientes
   Neutraliza la antigua regla #clientEditor form { display:grid } */
@media (min-width:901px){

  #clientEditor #clientEditForm.client-edit-modal{
    display:block!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
    gap:0!important;
  }

  #clientEditor #clientEditForm.client-edit-modal > .client-edit-head,
  #clientEditor #clientEditForm.client-edit-modal > .client-edit-grid,
  #clientEditor #clientEditForm.client-edit-modal > #clientEditError,
  #clientEditor #clientEditForm.client-edit-modal > .client-edit-actions{
    grid-column:auto!important;
    grid-row:auto!important;
    width:auto!important;
  }

  #clientEditor .client-edit-head{
    width:100%!important;
    box-sizing:border-box!important;
  }

  #clientEditor .client-edit-grid{
    width:100%!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px 16px!important;
    padding:14px 18px 8px!important;
  }

  #clientEditor .client-edit-grid label{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:118px minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
  }

  #clientEditor .client-edit-grid label[style*="grid-column"]{
    grid-column:1 / -1!important;
  }

  #clientEditor .client-edit-grid label[style*="grid-column"] textarea{
    width:100%!important;
  }

  #clientEditor #clientEditError{
    margin:8px 18px 0!important;
  }

  #clientEditor .client-edit-actions{
    width:100%!important;
    box-sizing:border-box!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:8px!important;
  }
}

@media (max-width:900px){
  #clientEditor #clientEditForm.client-edit-modal{
    display:block!important;
  }

  #clientEditor .client-edit-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  #clientEditor .client-edit-grid label{
    grid-template-columns:1fr!important;
  }
}


/* v12.8.359 — Alertas operativas críticas visibles */
.home-notification-item.critical,
.home-notification-item[data-level="critical"]{
  border-left:4px solid #dc2626!important;
  background:linear-gradient(90deg,rgba(220,38,38,.075),rgba(255,255,255,.98) 36%)!important;
}
.home-notification-item.critical .home-notification-level,
.home-notification-item[data-level="critical"] .home-notification-level{
  color:#b91c1c!important;
  font-weight:800!important;
}


/* v12.8.360 — Centro de notificaciones: verificación autoritativa */
.home-notification-empty.checking{
  min-height:160px!important;
}
.notification-check-spinner{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  background:rgba(14,165,233,.10)!important;
  font-size:20px!important;
  animation:ventyumNotificationSpin 1s linear infinite!important;
}
@keyframes ventyumNotificationSpin{
  to{transform:rotate(360deg)}
}


/* v12.8.361 — Encabezados de Inventario Central y Reportes iguales a Planilla */
@media (min-width:901px){
  .planilla-style-hero{
    min-height:58px!important;
    height:58px!important;
    padding:7px 14px!important;
    margin:5px 0!important;
    border-radius:16px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
  }

  .planilla-style-hero > div{
    min-width:0!important;
  }

  .planilla-style-hero .eyebrow{
    display:block!important;
    margin:0 0 2px!important;
    font-size:8px!important;
    line-height:1!important;
    letter-spacing:.08em!important;
  }

  .planilla-style-hero h1,
  .planilla-style-hero h2{
    margin:1px 0!important;
    font-size:18px!important;
    line-height:1!important;
  }

  .planilla-style-hero p{
    margin:1px 0 0!important;
    font-size:8px!important;
    line-height:1.05!important;
  }

  .planilla-style-hero button{
    width:auto!important;
    min-width:0!important;
    height:32px!important;
    min-height:32px!important;
    padding:0 12px!important;
    border-radius:9px!important;
    font-size:10px!important;
    flex:0 0 auto!important;
  }
}

@media (min-width:901px) and (max-height:800px){
  .planilla-style-hero{
    min-height:54px!important;
    height:54px!important;
    padding:6px 13px!important;
  }
}

/* v12.8.362 — Hacienda usa el mismo encabezado compacto de Planilla */
@media (min-width:901px){
 .hacienda-report-hero,
 .hacienda-center-hero{
   min-height:58px!important;height:58px!important;padding:7px 14px!important;
   margin:5px 0!important;border-radius:16px!important;box-sizing:border-box!important;
   display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
 }
 .hacienda-report-hero .eyebrow,.hacienda-center-hero .eyebrow{
   display:block!important;margin:0 0 2px!important;font-size:8px!important;line-height:1!important;letter-spacing:.08em!important;
 }
 .hacienda-report-hero h2,.hacienda-center-hero h2{
   margin:1px 0!important;font-size:18px!important;line-height:1!important;
 }
 .hacienda-report-hero p,.hacienda-center-hero p{
   margin:1px 0 0!important;font-size:8px!important;line-height:1.05!important;
 }
 .hacienda-center-panel{margin-top:8px!important;}
}
@media (min-width:901px) and (max-height:800px){
 .hacienda-report-hero,.hacienda-center-hero{min-height:54px!important;height:54px!important;padding:6px 13px!important;}
}


/* v12.8.363 — Comprobantes electrónicos con encabezado estilo Planilla */
@media (min-width:901px){
  .comprobantes-header-hero{
    min-height:58px!important;
    height:58px!important;
    padding:7px 14px!important;
    margin:5px 0!important;
    border-radius:16px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
  }

  .comprobantes-header-hero .eyebrow{
    display:block!important;
    margin:0 0 2px!important;
    font-size:8px!important;
    line-height:1!important;
    letter-spacing:.08em!important;
  }

  .comprobantes-header-hero h2{
    margin:1px 0!important;
    font-size:18px!important;
    line-height:1!important;
  }

  .comprobantes-header-hero p{
    margin:1px 0 0!important;
    font-size:8px!important;
    line-height:1.05!important;
  }

  .comprobantes-header-hero button{
    width:auto!important;
    min-width:0!important;
    height:32px!important;
    min-height:32px!important;
    padding:0 12px!important;
    border-radius:9px!important;
    font-size:10px!important;
  }
}

@media (min-width:901px) and (max-height:800px){
  .comprobantes-header-hero{
    min-height:54px!important;
    height:54px!important;
    padding:6px 13px!important;
  }
}


/* v12.8.364 — regla global de encabezados: más presencia y mejor uso vertical superior */
@media (min-width:901px){
  .app-main > .hero,
  main > .hero,
  .hero{
    min-height:72px!important;
    height:72px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
    box-sizing:border-box!important;
    align-items:center!important;
  }

  .hero .eyebrow{
    margin-bottom:3px!important;
    font-size:9px!important;
    line-height:1!important;
  }

  .hero h1,
  .hero h2{
    margin-top:1px!important;
    margin-bottom:2px!important;
    font-size:21px!important;
    line-height:1.02!important;
  }

  .hero p{
    margin-top:1px!important;
    margin-bottom:0!important;
    font-size:9px!important;
    line-height:1.1!important;
  }

  /* anula las reglas compactas anteriores solo en altura, para que todos sigan una regla */
  .planilla-style-hero,
  .hacienda-report-hero,
  .hacienda-center-hero,
  .comprobantes-header-hero{
    min-height:72px!important;
    height:72px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
}

/* En pantallas de portátil bajas sigue siendo más grande que antes,
   pero evita robar espacio al contenido. */
@media (min-width:901px) and (max-height:800px){
  .app-main > .hero,
  main > .hero,
  .hero,
  .planilla-style-hero,
  .hacienda-report-hero,
  .hacienda-center-hero,
  .comprobantes-header-hero{
    min-height:66px!important;
    height:66px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
  }
}


/* v12.8.365 — un error de módulo no destruye la sesión */
.module-inline-error{
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  align-items:center!important;
  gap:10px!important;
  margin:8px!important;
  padding:10px 12px!important;
  border:1px solid rgba(220,38,38,.18)!important;
  border-radius:12px!important;
  background:rgba(254,242,242,.96)!important;
  color:#7f1d1d!important;
}
.module-inline-error strong{font-size:10px!important;}
.module-inline-error span{font-size:9px!important;overflow-wrap:anywhere!important;}
.module-inline-error button{
  width:auto!important;
  min-width:0!important;
  height:30px!important;
  min-height:30px!important;
  padding:0 10px!important;
  border-radius:8px!important;
  font-size:9px!important;
}


/* v12.8.366 — Encabezados globales: ocupar realmente el espacio superior */
@media (min-width:901px){

  /* Reduce el hueco entre la barra superior y el primer módulo */
  .app-main,
  .main-content,
  .workspace,
  .page-content,
  main.app-main{
    padding-top:4px!important;
  }

  /* Si el primer bloque es un hero, súbelo para ocupar la franja vacía */
  .app-main > .hero:first-child,
  .main-content > .hero:first-child,
  .workspace > .hero:first-child,
  .page-content > .hero:first-child,
  main > .hero:first-child{
    margin-top:0!important;
  }

  /* Regla global real: más alto y con contenido más grande */
  .hero,
  .ventyum-page-hero,
  .planilla-style-hero,
  .payroll-hero,
  .transactions-hero,
  .reports-hero,
  .hacienda-hero,
  .orders-hero-web,
  .control-carga-hero,
  .settings-hero{
    min-height:84px!important;
    height:84px!important;
    padding:12px 18px!important;
    margin-top:2px!important;
    margin-bottom:7px!important;
    border-radius:17px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
  }

  .hero > div,
  .ventyum-page-hero > div{
    min-width:0!important;
  }

  .hero .eyebrow,
  .ventyum-page-hero .eyebrow{
    display:block!important;
    margin:0 0 4px!important;
    font-size:10px!important;
    line-height:1!important;
    letter-spacing:.09em!important;
  }

  .hero h1,
  .hero h2,
  .ventyum-page-hero h1,
  .ventyum-page-hero h2{
    margin:0 0 3px!important;
    font-size:24px!important;
    line-height:1.02!important;
    letter-spacing:-.015em!important;
  }

  .hero p,
  .ventyum-page-hero p{
    margin:0!important;
    font-size:10px!important;
    line-height:1.15!important;
  }

  /* Botones del encabezado crecen proporcionalmente, sin hacerse gigantes */
  .hero > button,
  .hero .primary,
  .hero .soft,
  .ventyum-page-hero > button{
    height:36px!important;
    min-height:36px!important;
    padding:0 14px!important;
    border-radius:10px!important;
    font-size:10.5px!important;
  }
}

/* Laptop 1366x768: sigue aprovechando arriba pero cuida el contenido */
@media (min-width:901px) and (max-height:800px){
  .app-main,
  .main-content,
  .workspace,
  .page-content,
  main.app-main{
    padding-top:2px!important;
  }

  .hero,
  .ventyum-page-hero,
  .planilla-style-hero,
  .payroll-hero,
  .transactions-hero,
  .reports-hero,
  .hacienda-hero,
  .orders-hero-web,
  .control-carga-hero,
  .settings-hero{
    min-height:76px!important;
    height:76px!important;
    padding:10px 16px!important;
    margin-top:0!important;
    margin-bottom:6px!important;
  }

  .hero h1,
  .hero h2,
  .ventyum-page-hero h1,
  .ventyum-page-hero h2{
    font-size:22px!important;
  }

  .hero .eyebrow,
  .ventyum-page-hero .eyebrow{
    font-size:9px!important;
  }

  .hero p,
  .ventyum-page-hero p{
    font-size:9px!important;
  }
}


/* v12.8.367 — Control de carga: KPIs superiores compactos */
@media (min-width:901px){
  body:has(.control-carga-page) .metrics,
  body:has(.control-load-page) .metrics,
  .control-carga-page .metrics,
  .control-load-page .metrics{
    gap:8px!important;
    margin-bottom:8px!important;
  }

  body:has(.control-carga-page) .metric-card,
  body:has(.control-load-page) .metric-card,
  .control-carga-page .metric-card,
  .control-load-page .metric-card{
    min-height:58px!important;
    height:58px!important;
    padding:7px 12px!important;
    gap:9px!important;
    border-radius:11px!important;
  }

  body:has(.control-carga-page) .metric-icon,
  body:has(.control-load-page) .metric-icon,
  .control-carga-page .metric-icon,
  .control-load-page .metric-icon{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    border-radius:9px!important;
    font-size:13px!important;
  }

  body:has(.control-carga-page) .metric-card span,
  body:has(.control-load-page) .metric-card span,
  .control-carga-page .metric-card span,
  .control-load-page .metric-card span{
    font-size:9px!important;
    line-height:1.05!important;
  }

  body:has(.control-carga-page) .metric-card strong,
  body:has(.control-load-page) .metric-card strong,
  .control-carga-page .metric-card strong,
  .control-load-page .metric-card strong{
    font-size:17px!important;
    line-height:1!important;
    margin:2px 0!important;
  }

  body:has(.control-carga-page) .metric-card small,
  body:has(.control-load-page) .metric-card small,
  .control-carga-page .metric-card small,
  .control-load-page .metric-card small{
    font-size:8px!important;
    line-height:1!important;
  }
}


/* v12.8.368 — Control de carga refinado */
@media (min-width:901px){
  /* KPI row: visibly smaller and denser */
  .load-control-web-app .lc-web-metrics{
    gap:7px!important;
    margin:6px 0 8px!important;
    align-items:stretch!important;
  }
  .load-control-web-app .lc-web-metrics > *{
    min-width:0!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card{
    min-height:46px!important;
    height:46px!important;
    padding:5px 9px!important;
    border-radius:10px!important;
    gap:7px!important;
  }
  .load-control-web-app .lc-web-metrics .metric-icon{
    width:25px!important;height:25px!important;min-width:25px!important;
    border-radius:7px!important;font-size:11px!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card span{
    font-size:8px!important;line-height:1!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card strong{
    font-size:15px!important;line-height:1!important;margin:1px 0!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card small{
    font-size:7.5px!important;line-height:1!important;
  }

  /* First KPI owns + Vehículo, without increasing row height */
  .load-control-web-app .lc-vehicle-metric-wrap{
    position:relative!important;
    min-width:0!important;
  }
  .load-control-web-app .lc-vehicle-metric-wrap .metric-card{
    padding-right:84px!important;
  }
  .load-control-web-app .lc-kpi-add-vehicle{
    position:absolute!important;
    right:7px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    height:28px!important;
    min-height:28px!important;
    padding:0 10px!important;
    border-radius:8px!important;
    font-size:10px!important;
    font-weight:800!important;
    white-space:nowrap!important;
  }

  /* Header must reach the same right edge as the page content */
  .load-control-web-app{
    width:100%!important;
    max-width:none!important;
  }
  .load-control-web-app .page-hero,
  .load-control-web-app .module-hero,
  .load-control-web-app .hero,
  [data-route="control-carga"] .page-hero,
  [data-route="control-carga"] .module-hero{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
    margin-right:0!important;
  }
}

/* Also normalize the route header itself when it sits outside the inner app node */
body:has(.load-control-web-app) .module-hero,
body:has(.load-control-web-app) .page-hero{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  margin-right:0!important;
}


/* v12.8.369 — Control de carga: composición profesional y compacta */
@media (min-width:901px){
  /* Hero limpio: sin botón y usando todo el ancho útil */
  body:has(.load-control-web-app) .control-carga-hero{
    width:calc(100% - 12px)!important;
    max-width:none!important;
    margin-left:6px!important;
    margin-right:6px!important;
    min-height:76px!important;
    padding:13px 20px!important;
    border-radius:15px!important;
    box-sizing:border-box!important;
  }
  body:has(.load-control-web-app) .control-carga-hero > div:first-child{
    width:100%!important;
    max-width:none!important;
  }
  body:has(.load-control-web-app) .control-carga-hero h2{
    font-size:27px!important;
    line-height:1.02!important;
    margin:1px 0 2px!important;
  }
  body:has(.load-control-web-app) .control-carga-hero p{
    font-size:10.5px!important;
    line-height:1.15!important;
    margin:0!important;
  }
  body:has(.load-control-web-app) .control-carga-hero .eyebrow{
    font-size:9px!important;
    line-height:1!important;
  }

  /* KPIs realmente compactos */
  .load-control-web-app .lc-web-metrics{
    display:grid!important;
    grid-template-columns:1.08fr .92fr 1fr 1fr!important;
    gap:8px!important;
    margin:7px 6px 9px!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card{
    height:42px!important;
    min-height:42px!important;
    padding:4px 8px!important;
    border-radius:9px!important;
  }
  .load-control-web-app .lc-web-metrics .metric-icon{
    width:22px!important;height:22px!important;min-width:22px!important;
    border-radius:6px!important;font-size:10px!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card span{
    font-size:7.5px!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card strong{
    font-size:14px!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card small{
    font-size:7px!important;
  }

  /* +Vehículo vive dentro de Vehículos activos */
  .load-control-web-app .lc-vehicle-metric-wrap{
    position:relative!important;
    min-width:0!important;
  }
  .load-control-web-app .lc-vehicle-metric-wrap .metric-card{
    padding-right:79px!important;
  }
  .load-control-web-app .lc-kpi-add-vehicle{
    position:absolute!important;
    right:6px!important;top:50%!important;
    transform:translateY(-50%)!important;
    height:25px!important;min-height:25px!important;
    padding:0 9px!important;
    border:1px solid rgba(0,132,214,.20)!important;
    border-radius:7px!important;
    background:#fff!important;
    box-shadow:none!important;
    font-size:9px!important;
    font-weight:800!important;
    color:#087bb8!important;
  }

  /* Panel de flota: menos aire y jerarquía más fina */
  .load-control-web-app .lc-web-pane{
    margin:0 6px!important;
    padding:10px 12px!important;
    border-radius:13px!important;
  }
  .load-control-web-app .lc-web-panel-head{
    min-height:46px!important;
    padding:0 2px 7px!important;
    align-items:center!important;
  }
  .load-control-web-app .lc-web-panel-title .eyebrow{
    font-size:8px!important;
    line-height:1!important;
    margin-bottom:3px!important;
  }
  .load-control-web-app .lc-web-title-line{
    gap:10px!important;
    align-items:baseline!important;
  }
  .load-control-web-app .lc-web-title-line h3{
    font-size:20px!important;
    line-height:1.05!important;
    margin:0!important;
    letter-spacing:-.25px!important;
  }
  .load-control-web-app .lc-auto-inventory-inline{
    font-size:9px!important;
    white-space:nowrap!important;
  }
  .load-control-web-app .payroll-date-picker{
    font-size:8px!important;
    gap:3px!important;
  }
  .load-control-web-app .payroll-date-picker input{
    height:31px!important;
    min-height:31px!important;
    padding:4px 8px!important;
    font-size:10px!important;
    border-radius:8px!important;
  }

  /* Filas de vehículos un poco más densas sin tocar su información */
  .load-control-web-app .lc-web-vehicle-list{
    gap:6px!important;
  }
  .load-control-web-app [data-vehicle]{
    min-height:72px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
    border-radius:11px!important;
  }
}

/* El botón antiguo del hero nunca debe reaparecer por estilos/caché */
body:has(.load-control-web-app) #lcHeroAddVehicle{
  display:none!important;
}


/* v12.8.370 — Inicio: el saludo no invade KPIs ni "Ventas por vendedor" */
@media (min-width:901px){

  /* Inicio es una excepción a la regla global de hero grande */
  body:has(.home-dashboard) .hero,
  body:has(.home-page) .hero,
  body:has(.home-shell) .hero,
  body:has(#homeDashboard) .hero,
  .home-hero,
  .inicio-hero{
    min-height:64px!important;
    height:64px!important;
    padding:8px 14px!important;
    margin-bottom:6px!important;
    border-radius:15px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  body:has(.home-dashboard) .hero h1,
  body:has(.home-dashboard) .hero h2,
  body:has(.home-page) .hero h1,
  body:has(.home-page) .hero h2,
  body:has(#homeDashboard) .hero h1,
  body:has(#homeDashboard) .hero h2,
  .home-hero h1,
  .home-hero h2,
  .inicio-hero h1,
  .inicio-hero h2{
    font-size:21px!important;
    line-height:1!important;
    margin:0 0 2px!important;
  }

  body:has(.home-dashboard) .hero p,
  body:has(.home-page) .hero p,
  body:has(#homeDashboard) .hero p,
  .home-hero p,
  .inicio-hero p{
    font-size:9px!important;
    line-height:1.05!important;
    margin:0!important;
  }

  /* KPIs que viven dentro del encabezado de Inicio */
  body:has(.home-dashboard) .hero .metric,
  body:has(.home-dashboard) .hero .metric-card,
  body:has(.home-page) .hero .metric,
  body:has(.home-page) .hero .metric-card,
  body:has(#homeDashboard) .hero .metric,
  body:has(#homeDashboard) .hero .metric-card,
  .home-hero .metric,
  .home-hero .metric-card,
  .inicio-hero .metric,
  .inicio-hero .metric-card{
    min-height:44px!important;
    height:44px!important;
    padding:4px 8px!important;
    box-sizing:border-box!important;
  }

  body:has(.home-dashboard) .hero .metric strong,
  body:has(.home-dashboard) .hero .metric-card strong,
  body:has(.home-page) .hero .metric strong,
  body:has(.home-page) .hero .metric-card strong,
  body:has(#homeDashboard) .hero .metric strong,
  body:has(#homeDashboard) .hero .metric-card strong,
  .home-hero .metric strong,
  .home-hero .metric-card strong,
  .inicio-hero .metric strong,
  .inicio-hero .metric-card strong{
    font-size:15px!important;
    line-height:1!important;
  }

  /* Separación segura entre hero y primera fila del dashboard */
  body:has(.home-dashboard) .home-kpi-row,
  body:has(.home-page) .home-kpi-row,
  body:has(#homeDashboard) .home-kpi-row,
  .home-dashboard .metrics,
  .home-page .metrics{
    margin-top:6px!important;
    position:relative!important;
    z-index:1!important;
  }

  /* El saludo nunca debe crecer encima del contenido inferior */
  body:has(.home-dashboard) .hero,
  body:has(.home-page) .hero,
  body:has(#homeDashboard) .hero{
    position:relative!important;
    z-index:2!important;
  }
}

/* Laptop 1366x768 */
@media (min-width:901px) and (max-height:800px){
  body:has(.home-dashboard) .hero,
  body:has(.home-page) .hero,
  body:has(.home-shell) .hero,
  body:has(#homeDashboard) .hero,
  .home-hero,
  .inicio-hero{
    min-height:58px!important;
    height:58px!important;
    padding:6px 12px!important;
  }

  body:has(.home-dashboard) .hero h1,
  body:has(.home-dashboard) .hero h2,
  body:has(.home-page) .hero h1,
  body:has(.home-page) .hero h2,
  body:has(#homeDashboard) .hero h1,
  body:has(#homeDashboard) .hero h2{
    font-size:19px!important;
  }
}


/* v12.8.371 — FIX REAL Inicio.
   El problema era horizontal: command-intro podía invadir command-live.
   Se corrigen las clases reales creadas por inicio(): .home-workspace/.command-hero. */
@media (min-width:1001px){
  .workspace.home-workspace > .command-hero{
    display:grid!important;
    grid-template-columns:minmax(205px,245px) minmax(0,1fr) 118px!important;
    column-gap:12px!important;
    align-items:stretch!important;
    min-height:96px!important;
    height:96px!important;
    padding:10px 14px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  .workspace.home-workspace > .command-hero > .command-intro{
    grid-column:1!important;
    min-width:0!important;
    width:auto!important;
    max-width:245px!important;
    padding:0 10px 0 0!important;
    transform:none!important;
    overflow:hidden!important;
    justify-content:center!important;
    align-self:stretch!important;
  }

  .workspace.home-workspace .command-intro-top{
    margin:0 0 3px!important;
    min-width:0!important;
  }

  .workspace.home-workspace .command-brand{
    position:static!important;
    top:auto!important;
    font-size:10px!important;
    line-height:1!important;
  }

  .workspace.home-workspace .greeting-line{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    margin:2px 0 3px!important;
    min-width:0!important;
    white-space:nowrap!important;
    font-size:20px!important;
    line-height:1.05!important;
    overflow:hidden!important;
  }

  .workspace.home-workspace .greeting-line span{
    display:block!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .workspace.home-workspace .greeting-icon{
    width:17px!important;
    height:17px!important;
    flex:0 0 17px!important;
  }

  .workspace.home-workspace .command-user-status{
    margin:0!important;
    font-size:10px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
  }

  .workspace.home-workspace > .command-hero > .command-live{
    grid-column:2!important;
    min-width:0!important;
    width:100%!important;
    overflow:hidden!important;
    grid-template-columns:1fr 1fr!important;
    border-left:1px solid rgba(255,255,255,.12)!important;
    border-right:1px solid rgba(255,255,255,.12)!important;
  }

  .workspace.home-workspace .command-live .command-module{
    min-width:0!important;
    overflow:hidden!important;
    padding-left:14px!important;
    padding-right:12px!important;
  }

  .workspace.home-workspace .command-live .command-module strong,
  .workspace.home-workspace .command-live .command-module small,
  .workspace.home-workspace .command-live .command-module span{
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .workspace.home-workspace > .command-hero > .home-command-actions{
    grid-column:3!important;
    width:118px!important;
    min-width:118px!important;
  }
}

@media (min-width:1001px) and (max-width:1250px){
  .workspace.home-workspace > .command-hero{
    grid-template-columns:minmax(190px,220px) minmax(0,1fr) 108px!important;
  }
  .workspace.home-workspace > .command-hero > .command-intro{
    max-width:220px!important;
  }
  .workspace.home-workspace .greeting-line{
    font-size:18px!important;
  }
  .workspace.home-workspace > .command-hero > .home-command-actions{
    width:108px!important;
    min-width:108px!important;
  }
}

/* v12.8.372 — Inicio: saludo completo sin invadir los módulos.
   Se da más ancho al bloque personal y se elimina el ellipsis del saludo. */
@media (min-width:1251px){
  .workspace.home-workspace > .command-hero{
    grid-template-columns:minmax(285px,330px) minmax(0,1fr) 118px!important;
  }
  .workspace.home-workspace > .command-hero > .command-intro{
    max-width:330px!important;
    overflow:visible!important;
  }
  .workspace.home-workspace .greeting-line{
    font-size:20px!important;
    overflow:visible!important;
  }
  .workspace.home-workspace .greeting-line span{
    max-width:none!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }
}
@media (min-width:1001px) and (max-width:1250px){
  .workspace.home-workspace > .command-hero{
    grid-template-columns:minmax(250px,285px) minmax(0,1fr) 108px!important;
  }
  .workspace.home-workspace > .command-hero > .command-intro{
    max-width:285px!important;
  }
  .workspace.home-workspace .greeting-line{
    font-size:17px!important;
  }
  .workspace.home-workspace .greeting-line span{
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }
}


/* v12.8.373 — SOLO INICIO: restaura distribución aprobada sin tocar otros módulos */
/* v12.8.357 — INICIO: distribución restaurada según referencia aprobada */
@media (min-width: 1101px){
  .home-workspace .command-hero{
    display:grid!important;
    grid-template-columns:260px minmax(0,1fr) 145px!important;
    gap:0!important;
    min-height:116px!important;
    height:116px!important;
    padding:14px 16px 14px 22px!important;
    align-items:stretch!important;
    overflow:hidden!important;
  }

  .home-workspace .command-intro{
    min-width:0!important;
    max-width:none!important;
    padding:0 18px 0 0!important;
    align-self:stretch!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    overflow:visible!important;
  }

  .home-workspace .command-intro-top{
    margin:0 0 10px!important;
    min-height:13px!important;
  }

  .home-workspace .command-intro .command-brand{
    font-size:10px!important;
    line-height:1!important;
    letter-spacing:.18em!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  .home-workspace .command-intro h2.greeting-line,
  .home-workspace .command-intro h2.greeting-line span{
    font-size:18px!important;
    line-height:1.08!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  .home-workspace .command-intro h2.greeting-line{
    margin:0 0 7px!important;
    gap:8px!important;
  }

  .home-workspace .command-intro .greeting-icon{
    width:17px!important;
    height:17px!important;
    flex:0 0 17px!important;
  }

  .home-workspace .command-user-status{
    margin:0!important;
    font-size:10px!important;
    white-space:nowrap!important;
  }

  .home-workspace .command-live{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    min-width:0!important;
    height:100%!important;
    overflow:hidden!important;
    border-left:1px solid rgba(255,255,255,.12)!important;
    border-right:1px solid rgba(255,255,255,.12)!important;
  }

  .home-workspace .command-module,
  .home-workspace .command-module.command-hud{
    min-width:0!important;
    padding-left:13px!important;
    padding-right:13px!important;
    overflow:hidden!important;
  }

  .home-workspace .command-hud-slide{
    padding:11px 13px 13px!important;
  }

  .home-workspace .command-hud-slide strong{
    font-size:14px!important;
  }

  .home-workspace .home-command-actions{
    width:145px!important;
    min-width:145px!important;
    padding-left:14px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
  }

  .home-workspace .home-notification-button{
    margin-left:auto!important;
  }

  .home-workspace .command-hero .command-sale{
    width:128px!important;
    min-width:128px!important;
  }
}

@media (min-width: 851px) and (max-width:1100px){
  .home-workspace .command-hero{
    grid-template-columns:225px minmax(0,1fr) 118px!important;
    gap:0!important;
    min-height:108px!important;
    padding:12px 14px 12px 18px!important;
  }
  .home-workspace .command-intro{
    padding-right:12px!important;
  }
  .home-workspace .command-intro h2.greeting-line,
  .home-workspace .command-intro h2.greeting-line span{
    font-size:15px!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  .home-workspace .command-live{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
  .home-workspace .command-hud-slide{
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .home-workspace .command-hud-slide strong{
    font-size:12px!important;
  }
  .home-workspace .home-command-actions{
    width:118px!important;
    min-width:118px!important;
    padding-left:8px!important;
  }
  .home-workspace .command-hero .command-sale{
    width:108px!important;
    min-width:108px!important;
  }
}

/* Asegura que este trasplante solo afecte Inicio y prevalezca sobre 370-372 */
@media (min-width:851px){
  .workspace.home-workspace > .command-hero > .command-intro{
    overflow:visible!important;
  }
  .workspace.home-workspace .greeting-line,
  .workspace.home-workspace .greeting-line span{
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }
}

/* v12.8.374 — Estadísticas: período seleccionado siempre visible */
.stats-period-inline .soft.active,.stats-period-inline .soft[aria-pressed="true"]{background:var(--navy,#123b63)!important;color:#fff!important;border-color:var(--navy,#123b63)!important;box-shadow:0 1px 3px rgba(15,47,77,.18)!important}
/* Reporte de clientes: paridad visual con la app */
.client-app-toolbar{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:14px}.client-periods{display:flex;gap:8px}.client-periods .soft.active{background:var(--primary);color:#fff;border-color:var(--primary)}.client-app-toolbar label{min-width:180px}.client-app-kpis{margin-bottom:14px}.client-top-panel{margin:0}.client-top-list{display:grid;gap:6px}.client-top-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border-bottom:1px solid var(--line)}.client-top-row:last-child{border-bottom:0}.client-top-rank{font-weight:800;text-align:center}.client-top-name{display:flex;flex-direction:column;min-width:0}.client-top-name b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-top-name small{color:var(--muted)}@media(max-width:700px){.client-app-toolbar{align-items:stretch;flex-direction:column}.client-periods{display:grid;grid-template-columns:repeat(4,1fr)}.client-app-toolbar label{min-width:0}}
.demo-login-hint{margin-top:12px;padding:10px 12px;border:1px solid #dbe5ef;border-radius:12px;background:#f7fafc;display:flex;justify-content:space-between;gap:10px;font-size:12px}.demo-login-hint b{color:#173a5e}.demo-login-hint span{color:#66788a}


/* v12.8.379 · Reporte de clientes compacto + detalle de compras */
.client-app-report{padding-top:12px}.client-app-toolbar{display:block;margin-bottom:12px}.client-period-bar{display:flex;align-items:center;gap:10px;justify-content:flex-start;flex-wrap:wrap}.client-periods{display:inline-flex;align-items:center;gap:4px;padding:4px;background:var(--soft,#f4f7fa);border:1px solid var(--line);border-radius:12px}.client-periods .soft{min-width:78px;height:36px;padding:0 14px;border:0;border-radius:9px;background:transparent;box-shadow:none}.client-periods .soft:hover{background:#fff}.client-periods .soft.active{background:var(--primary);color:#fff;box-shadow:0 4px 10px rgba(19,120,209,.16)}.client-app-toolbar #rcMonthWrap{display:flex;align-items:center;gap:8px;min-width:0;margin:0;padding:4px 6px 4px 10px;border:1px solid var(--line);border-radius:12px;background:#fff}.client-app-toolbar #rcMonthWrap[hidden]{display:none!important}.client-app-toolbar #rcMonthWrap>span{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.client-app-toolbar #rcMonth{width:150px;height:34px;padding:5px 8px;border:0;background:transparent;box-shadow:none}.client-app-kpis{margin-bottom:12px}.client-top-entry{border-bottom:1px solid var(--line)}.client-top-entry:last-child{border-bottom:0}.client-top-row{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto 24px;align-items:center;gap:10px;padding:10px 10px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.client-top-row:hover{background:rgba(19,120,209,.045)}.client-top-row[aria-expanded="true"]{background:rgba(19,120,209,.06)}.client-row-chevron{font-size:18px;color:var(--muted);transition:transform .16s ease;text-align:center}.client-top-row[aria-expanded="true"] .client-row-chevron{transform:rotate(180deg)}.client-purchase-detail{padding:0 12px 12px 54px;background:linear-gradient(180deg,rgba(19,120,209,.035),transparent)}.client-detail-summary{display:flex;gap:16px;flex-wrap:wrap;padding:10px 0 8px;font-size:12px;color:var(--muted)}.client-detail-summary b{color:var(--text);font-size:13px}.client-product-list{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.client-product-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,auto) minmax(110px,auto);align-items:center;gap:12px;padding:9px 12px;border-bottom:1px solid var(--line);font-size:13px}.client-product-row:last-child{border-bottom:0}.client-product-row>div{display:flex;flex-direction:column;min-width:0}.client-product-row small{color:var(--muted);margin-top:2px}.client-product-row>span{color:var(--muted);text-align:right}.client-product-row>strong{text-align:right}.client-no-items{padding:10px 0;margin:0}@media(max-width:700px){.client-period-bar{display:block}.client-periods{display:grid;grid-template-columns:repeat(4,1fr);width:100%;gap:3px}.client-periods .soft{min-width:0;padding:0 8px}.client-app-toolbar #rcMonthWrap{margin-top:8px;width:100%;justify-content:space-between}.client-app-toolbar #rcMonth{width:auto;flex:1}.client-top-row{grid-template-columns:28px minmax(0,1fr) auto 18px;padding:10px 4px}.client-purchase-detail{padding:0 4px 10px 32px}.client-product-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px}.client-product-row>strong{grid-column:2}.client-product-row>span{font-size:12px}}

/* v12.8.380 · Reporte de clientes compacto + filtros inteligentes */
.client-app-report{padding:10px 12px 12px}
.client-app-toolbar{margin-bottom:8px}
.client-period-bar{gap:7px}
.client-periods{padding:3px;border-radius:10px}
.client-periods .soft{min-width:72px;height:32px;padding:0 11px;border-radius:8px;font-size:12px}
.client-app-toolbar #rcMonthWrap{padding:3px 5px 3px 9px;border-radius:10px}
.client-app-toolbar #rcMonth{height:30px;width:138px;font-size:12px}
.client-app-kpis{margin-bottom:8px;gap:8px}
.client-app-kpis .metric{min-height:66px;padding:9px 11px}
.client-app-kpis .metric strong{font-size:18px}
.client-app-kpis .metric small{font-size:10px}
.client-intelligence-bar{display:flex;align-items:center;gap:8px;margin:0 0 7px;min-width:0}
.client-search-box{height:36px;min-width:260px;max-width:360px;flex:1;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:#fff}
.client-search-box>span{font-size:18px;color:var(--muted);line-height:1}
.client-search-box input{width:100%;min-width:0;height:32px;border:0!important;outline:0;box-shadow:none!important;background:transparent;padding:0;font-size:12px}
.client-smart-filters{display:flex;align-items:center;gap:5px;min-width:0;overflow-x:auto;scrollbar-width:none}
.client-smart-filters::-webkit-scrollbar{display:none}
.client-smart-filters .soft{height:34px;padding:0 11px;white-space:nowrap;border-radius:9px;font-size:11px;font-weight:700;background:#fff}
.client-smart-filters .soft.active{background:var(--primary);border-color:var(--primary);color:#fff}
.client-smart-filters .client-risk-filter.active{background:#9a5b13;border-color:#9a5b13}
.client-insight-strip{display:flex;align-items:center;gap:5px;margin:0 0 7px;overflow-x:auto;scrollbar-width:none}
.client-insight-strip::-webkit-scrollbar{display:none}
.client-insight-strip span{white-space:nowrap;padding:4px 8px;border-radius:999px;background:var(--soft,#f4f7fa);border:1px solid var(--line);font-size:10px;color:var(--muted)}
.client-insight-strip span b{color:var(--text);font-size:11px}
.client-insight-strip .risk{background:#fff8ed;border-color:#f1d3a8;color:#8a5718}
.client-top-panel{border-radius:12px;overflow:hidden}
.client-top-panel .panel-head.client-list-head{padding:9px 11px 7px;margin:0}
.client-list-head h3{font-size:16px;margin:1px 0}
.client-list-head p{font-size:10px;margin:1px 0 0}
.client-top-list{gap:0}
.client-top-row{grid-template-columns:26px minmax(0,1fr) auto auto 18px;gap:8px;padding:7px 9px;min-height:48px}
.client-top-rank{font-size:11px}
.client-top-name b{font-size:12px}
.client-top-name small{font-size:9.5px;line-height:1.25}
.client-top-row>strong{font-size:12px;white-space:nowrap}
.client-row-chevron{font-size:15px}
.client-inactive-badge{font-size:9px;font-weight:800;color:#8a5718;background:#fff5e6;border:1px solid #f2d2a3;border-radius:999px;padding:3px 6px;white-space:nowrap}
.client-purchase-detail{padding:0 9px 8px 43px}
.client-detail-summary{gap:10px;padding:7px 0 6px;font-size:10px}
.client-detail-summary b{font-size:11px}
.client-product-row{grid-template-columns:minmax(0,1fr) minmax(90px,auto) minmax(90px,auto);gap:8px;padding:6px 9px;font-size:11px}
.client-product-row small{font-size:9px}
@media(max-width:900px){.client-intelligence-bar{align-items:stretch;flex-direction:column}.client-search-box{max-width:none;width:100%}.client-smart-filters{width:100%}.client-top-row{grid-template-columns:24px minmax(0,1fr) auto 18px}.client-inactive-badge{grid-column:2;justify-self:start}.client-top-row>strong{grid-column:3;grid-row:1/3}.client-row-chevron{grid-column:4;grid-row:1/3}.client-top-name{grid-column:2;grid-row:1}}
@media(max-width:700px){.client-app-report{padding:8px}.client-app-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.client-periods .soft{height:31px}.client-top-row{padding:7px 3px}.client-purchase-detail{padding:0 3px 8px 28px}.client-product-row{grid-template-columns:minmax(0,1fr) auto}.client-product-row>strong{grid-column:2}}


/* v12.8.383 · Reporte vendedor: control gerencial en tabla ejecutiva */
.rr-executive{margin-top:16px!important;padding:0!important;overflow:hidden!important;border-radius:14px!important}
.rr-exec-head{padding:16px 18px 13px!important;margin:0!important;border-bottom:1px solid var(--line,#dce5ee)!important;background:#fff!important}
.rr-exec-head h3{font-size:18px!important;margin:3px 0 2px!important}.rr-exec-head p{font-size:11px!important;margin:0!important}
.rr-exec-wrap{width:100%!important;overflow:auto!important}.rr-exec-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;min-width:760px!important}
.rr-exec-table th,.rr-exec-table td{padding:12px 16px!important;border-bottom:1px solid #e8edf2!important;border-right:1px solid #edf1f5!important;vertical-align:middle!important;white-space:normal!important;background:#fff!important}
.rr-exec-table thead th{position:sticky!important;top:0!important;z-index:2!important;background:#f7f9fb!important;color:#536579!important;text-transform:none!important;letter-spacing:0!important}
.rr-exec-table thead .rr-exec-metric-head{width:180px!important;min-width:180px!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.07em!important}
.rr-exec-table tbody>tr>th{width:180px!important;min-width:180px!important;font-size:11px!important;font-weight:850!important;color:#34495e!important;background:#fbfcfd!important;text-transform:none!important;letter-spacing:0!important}
.rr-exec-table tr:last-child th,.rr-exec-table tr:last-child td{border-bottom:0!important}.rr-exec-table th:last-child,.rr-exec-table td:last-child{border-right:0!important}
.rr-exec-seller{min-width:220px!important}.rr-exec-seller b{display:block!important;font-size:14px!important;color:#193b59!important}.rr-exec-seller span{display:block!important;margin-top:2px!important;font-size:10px!important;font-weight:600!important;color:var(--muted,#708090)!important}
.rr-exec-value{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}.rr-exec-value>b{font-size:14px!important;line-height:1.25!important;color:#18374f!important;white-space:nowrap!important}.rr-exec-table td>small{display:block!important;margin-top:3px!important;font-size:10px!important;line-height:1.3!important;color:var(--muted,#708090)!important}
.rr-exec-trend{display:inline-flex!important;margin-top:5px!important;padding:3px 6px!important;border-radius:999px!important;font-size:9px!important;font-weight:850!important}.rr-exec-trend.up{background:#eaf7ef!important;color:#247649!important}.rr-exec-trend.down{background:#fff0f0!important;color:#a54545!important}.rr-exec-trend.neutral{background:#eef2f5!important;color:#667584!important}
.rr-exec-badge{display:inline-flex!important;align-items:center!important;padding:3px 6px!important;border-radius:999px!important;font-size:8px!important;font-weight:900!important;letter-spacing:.02em!important;white-space:nowrap!important}.rr-exec-badge.discount{background:#fff5e6!important;border:1px solid #f1d1a0!important;color:#8d5a17!important}.rr-exec-badge.return{background:#fff0f0!important;border:1px solid #efc4c4!important;color:#a34444!important}
.rr-exec-legend{display:flex!important;gap:14px!important;flex-wrap:wrap!important;padding:10px 16px!important;border-top:1px solid #edf1f5!important;background:#fbfcfd!important;font-size:9px!important;color:var(--muted,#708090)!important}.rr-exec-legend>span{display:flex!important;align-items:center!important;gap:6px!important}
.rr-management{margin-top:14px!important;padding:16px!important;border-radius:14px!important}.rr-management>.panel-head{margin-bottom:12px!important}.rr-management>.panel-head h3{font-size:17px!important;margin:3px 0 1px!important}.rr-management>.panel-head p{font-size:10px!important;margin:0!important}
.rr-cost-leaders{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-bottom:12px!important}.rr-cost-callout{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:2px 12px!important;align-items:center!important;padding:11px 13px!important;border:1px solid var(--line,#dce5ee)!important;border-radius:11px!important}.rr-cost-callout small{grid-column:1!important;font-size:9px!important;font-weight:850!important;text-transform:uppercase!important;letter-spacing:.06em!important}.rr-cost-callout b{grid-column:1!important;font-size:13px!important}.rr-cost-callout strong{grid-column:2!important;grid-row:1/3!important;font-size:16px!important;white-space:nowrap!important}.rr-cost-callout span{grid-column:1/3!important;font-size:9px!important;color:var(--muted,#708090)!important}.rr-cost-callout.discount{background:#fffaf2!important;border-color:#f2dfc0!important}.rr-cost-callout.return{background:#fff7f7!important;border-color:#f0d4d4!important}
.rr-management-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;gap:10px!important}.rr-management-seller{border:1px solid var(--line,#dce5ee)!important;border-radius:11px!important;padding:12px 13px!important;background:#fff!important}.rr-management-title{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding-bottom:8px!important;border-bottom:1px solid #edf1f5!important}.rr-management-title>b{font-size:14px!important}.rr-management-title .route-trend{font-size:9px!important;white-space:nowrap!important}.rr-management-seller ul{margin:9px 0 0!important;padding-left:17px!important;display:grid!important;gap:6px!important}.rr-management-seller li{font-size:11px!important;line-height:1.45!important;color:#344b60!important}.rr-management-seller details{margin-top:9px!important;padding-top:8px!important;border-top:1px solid #edf1f5!important}.rr-management-seller summary{font-size:10px!important;font-weight:800!important;cursor:pointer!important}
@media(max-width:760px){.rr-exec-table th,.rr-exec-table td{padding:10px 11px!important}.rr-exec-table thead .rr-exec-metric-head,.rr-exec-table tbody>tr>th{width:145px!important;min-width:145px!important}.rr-exec-seller{min-width:190px!important}.rr-cost-leaders{grid-template-columns:1fr!important}.rr-management-grid{grid-template-columns:1fr!important}}


/* v12.8.385 · Gestión vendedor: negocios sin venta legibles + alertas compactas */
.rr-cost-leaders{display:flex!important;gap:7px!important;flex-wrap:wrap!important;margin-bottom:10px!important}
.rr-cost-callout{display:flex!important;align-items:center!important;gap:7px!important;width:auto!important;min-height:0!important;padding:6px 9px!important;border-radius:9px!important}
.rr-cost-callout small,.rr-cost-callout b,.rr-cost-callout strong,.rr-cost-callout span{grid-column:auto!important;grid-row:auto!important;margin:0!important;line-height:1.15!important}
.rr-cost-callout small{font-size:8px!important;letter-spacing:.045em!important}
.rr-cost-callout b{font-size:11px!important}.rr-cost-callout strong{font-size:12px!important}.rr-cost-callout span{font-size:8.5px!important}
.rr-lost-details{margin-top:10px!important;padding-top:8px!important;border-top:1px solid #edf1f5!important}
.rr-lost-details>summary{display:flex!important;align-items:center!important;gap:7px!important;width:max-content!important;max-width:100%!important;font-size:10px!important;font-weight:850!important;color:#24445f!important;cursor:pointer!important;list-style:none!important}
.rr-lost-details>summary::-webkit-details-marker{display:none!important}.rr-lost-details>summary:before{content:'›';font-size:15px;line-height:1;transition:transform .15s ease}.rr-lost-details[open]>summary:before{transform:rotate(90deg)}
.rr-lost-details>summary span{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:20px!important;height:18px!important;padding:0 5px!important;border-radius:999px!important;background:#eef4f8!important;color:#36566f!important;font-size:9px!important}
.rr-lost-panel{margin-top:8px!important;border:1px solid #e3eaf0!important;border-radius:10px!important;overflow:hidden!important;background:#fff!important}
.rr-lost-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:7px 9px!important;background:#f8fafc!important;border-bottom:1px solid #e8edf2!important}
.rr-lost-toolbar label{display:flex!important;align-items:center!important;gap:5px!important;min-width:220px!important;max-width:360px!important;flex:1!important;height:30px!important;padding:0 8px!important;border:1px solid #dce5ed!important;border-radius:8px!important;background:#fff!important}.rr-lost-toolbar label span{font-size:12px!important;color:#718395!important}.rr-lost-toolbar input{width:100%!important;border:0!important;outline:0!important;background:transparent!important;font-size:10px!important;color:#263f54!important}.rr-lost-toolbar small{font-size:8.5px!important;color:#7a8b99!important;white-space:nowrap!important}
.rr-lost-table-wrap{max-height:320px!important;overflow:auto!important}.rr-lost-head,.rr-lost-row{display:grid!important;grid-template-columns:minmax(220px,1.8fr) minmax(100px,.8fr) minmax(90px,.7fr) minmax(100px,.8fr)!important;gap:10px!important;align-items:center!important}
.rr-lost-head{position:sticky!important;top:0!important;z-index:2!important;padding:7px 10px!important;background:#f6f8fa!important;border-bottom:1px solid #e5ebf0!important;color:#6b7c8c!important;font-size:8px!important;font-weight:850!important;text-transform:uppercase!important;letter-spacing:.04em!important}.rr-lost-head span:last-child{text-align:right!important}
.rr-lost-row{padding:7px 10px!important;border-bottom:1px solid #edf1f4!important;font-size:10px!important;color:#3a5267!important}.rr-lost-row:last-child{border-bottom:0!important}.rr-lost-row:hover{background:#fbfcfd!important}.rr-lost-row>strong{text-align:right!important;font-size:10.5px!important;color:#203f58!important}.rr-lost-business{min-width:0!important}.rr-lost-business b{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:10.5px!important;color:#203f58!important}.rr-lost-business small{display:block!important;margin-top:1px!important;font-size:8px!important;color:#8493a0!important}.rr-inactive{display:inline-flex!important;padding:3px 6px!important;border-radius:999px!important;font-style:normal!important;font-size:8px!important;font-weight:850!important;white-space:nowrap!important}.rr-inactive.recent{background:#eef6fb!important;color:#4b708b!important}.rr-inactive.watch{background:#fff8e8!important;color:#8c681c!important}.rr-inactive.warn{background:#fff2e8!important;color:#9a5524!important}.rr-inactive.late{background:#fff0f0!important;color:#a54242!important}
@media(max-width:760px){.rr-cost-callout span{display:none!important}.rr-lost-toolbar{align-items:stretch!important;flex-direction:column!important}.rr-lost-toolbar label{min-width:0!important;max-width:none!important;width:100%!important}.rr-lost-head,.rr-lost-row{grid-template-columns:minmax(160px,1.6fr) minmax(90px,.8fr) minmax(78px,.7fr) minmax(90px,.8fr)!important}.rr-lost-table-wrap{overflow:auto!important}.rr-lost-head,.rr-lost-row{min-width:590px!important}}
/* v12.8.387 — Facturación electrónica directa, inspirada en el flujo de la app */
.fe-app-shell{display:grid;gap:14px;max-width:1280px;margin:0 auto}.fe-app-hero{align-items:center}.fe-app-hero>a{align-self:center}.fe-section{padding:18px 20px}.fe-section-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.fe-section-head h3{margin:0;font-size:20px}.fe-section-head p{margin:3px 0 0;color:var(--muted);font-size:13px}.fe-step{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#eaf4ff;color:#1475d1;font-weight:900}.fe-identity{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.fe-identity>div{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fbfdff}.fe-identity span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.fe-identity strong{display:block;margin-top:4px;font-size:16px}.fe-grid{display:grid;gap:12px}.fe-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.fe-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.fe-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.fe-grid label{display:grid;gap:6px;font-size:12px;font-weight:800}.fe-grid input,.fe-grid select,.fe-grid textarea,.fe-search-row input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:0 12px;color:var(--text)}.fe-grid textarea{padding:10px 12px}.span-2{grid-column:span 2}.fe-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:10px}.fe-search-row button{min-width:135px}.fe-hints{display:grid;gap:6px;margin:0 0 12px}.fe-hints button{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.fe-hints small{color:var(--muted)}.fe-line-editor{grid-template-columns:2fr 1fr 1.3fr .7fr 1fr .8fr .8fr .8fr auto;align-items:end}.fe-add-line{height:44px;white-space:nowrap}.fe-lines-table{margin-top:14px}.fe-lines-table td small{display:block;color:var(--muted);font-size:11px}.fe-total-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:14px}.fe-total-grid>div{padding:12px;border:1px solid var(--line);border-radius:12px;background:#fbfdff}.fe-total-grid span{display:block;font-size:11px;color:var(--muted);font-weight:800}.fe-total-grid strong{display:block;margin-top:5px;font-size:17px}.fe-grand-total{background:#eef6ff!important;border-color:#cfe5ff!important}.fe-grand-total strong{font-size:20px;color:#126fc4}.fe-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.fe-ready{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;padding:12px 14px;border:1px solid #bde8cf;background:#f1fbf5;border-radius:12px}.fe-ready b{color:#187a45}.fe-ready small{width:100%;color:var(--muted)}
@media(max-width:1050px){.fe-grid-4,.fe-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.fe-line-editor{grid-template-columns:repeat(4,minmax(0,1fr))}.fe-add-line{grid-column:span 2}.fe-total-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.fe-app-shell{gap:10px}.fe-section{padding:15px}.fe-identity,.fe-grid-4,.fe-grid-3,.fe-grid-2{grid-template-columns:1fr}.span-2{grid-column:auto}.fe-line-editor{grid-template-columns:1fr 1fr}.fe-line-editor label:first-child{grid-column:1/-1}.fe-add-line{grid-column:1/-1}.fe-total-grid{grid-template-columns:1fr 1fr}.fe-grand-total{grid-column:1/-1}.fe-search-row{grid-template-columns:1fr auto}.fe-actions{flex-direction:column}.fe-actions button{width:100%}}
/* v12.8.388 — FE compacta + tipo de cambio automático */
.fe-issuer-grid{grid-template-columns:minmax(210px,1.25fr) minmax(150px,.8fr) minmax(175px,.85fr) minmax(170px,.9fr);align-items:end}
.fe-issuer-grid .fe-order-field{grid-column:span 1;max-width:320px}
.fe-exchange-wrap{position:relative}.fe-exchange-wrap input{padding-right:12px}.fe-exchange-wrap small{display:block;margin-top:5px;font-size:10px;font-weight:700;color:var(--muted);line-height:1.2}.fe-exchange-wrap small[data-kind="ok"]{color:#278257}.fe-exchange-wrap small[data-kind="warn"]{color:#a46a18}.fe-exchange-wrap small[data-kind="loading"]{color:#3977a9}
.fe-receiver-grid{grid-template-columns:minmax(170px,.8fr) minmax(190px,.9fr) minmax(220px,1.1fr) minmax(170px,.8fr);align-items:end}.fe-client-name-field{grid-column:span 2}.fe-client-email-field{grid-column:span 2}
.fe-line-editor .fe-cabys-field{max-width:230px}
.fe-payment-grid{grid-template-columns:minmax(220px,.8fr) minmax(180px,.65fr) minmax(360px,1.55fr);align-items:start}.fe-payment-grid .fe-notes-field{grid-column:3;grid-row:1 / span 2}.fe-notes-field textarea{min-height:112px!important;resize:vertical!important;line-height:1.45!important;padding:12px 14px!important;background:#fbfdff!important}
.fe-payment-grid label:nth-child(1),.fe-payment-grid label:nth-child(2){max-width:340px}
@media(max-width:1050px){.fe-issuer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fe-receiver-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fe-client-name-field,.fe-client-email-field{grid-column:auto}.fe-payment-grid{grid-template-columns:1fr 1fr}.fe-payment-grid .fe-notes-field{grid-column:1/-1;grid-row:auto}}
@media(max-width:720px){.fe-issuer-grid,.fe-receiver-grid,.fe-payment-grid{grid-template-columns:1fr}.fe-issuer-grid .fe-order-field,.fe-line-editor .fe-cabys-field,.fe-payment-grid label:nth-child(1),.fe-payment-grid label:nth-child(2){max-width:none}.fe-payment-grid .fe-notes-field{grid-column:auto}.fe-notes-field textarea{min-height:120px!important}}

/* v12.8.389 · Reporte vendedor: KPIs más compactos y sin tarjeta Clientes */
.route-report-summary.route-report-summary-clean.rr-summary-dense{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;margin:7px 0 9px!important}
.route-report-summary.route-report-summary-clean.rr-summary-dense>div{min-height:48px!important;padding:6px 9px!important;border-radius:9px!important}
.route-report-summary.route-report-summary-clean.rr-summary-dense small{font-size:7.5px!important;line-height:1.05!important;margin:0!important}
.route-report-summary.route-report-summary-clean.rr-summary-dense strong{font-size:15px!important;line-height:1!important;margin:1px 0 0!important}
.route-report-summary.route-report-summary-clean.rr-summary-dense .route-trend,.route-report-summary.route-report-summary-clean.rr-summary-dense .route-summary-note{font-size:7.5px!important;line-height:1.05!important}
@media(max-width:980px){.route-report-summary.route-report-summary-clean.rr-summary-dense{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:680px){.route-report-summary.route-report-summary-clean.rr-summary-dense{grid-template-columns:repeat(2,minmax(0,1fr))!important}.route-report-summary.route-report-summary-clean.rr-summary-dense>div{min-height:46px!important}}

/* v12.8.413 — Reporte de vendedor: tarjetas ultracompactas reales */
@media (min-width:1000px){
  #report .route-comparison-grid.route-comparison-grid-clean{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;
  }
  #report .route-comparison-card.route-card-clean{
    min-height:0!important;
    border-radius:8px!important;
    box-shadow:none!important;
  }
  #report .route-card-summary{
    display:grid!important;
    grid-template-columns:minmax(72px,.78fr) minmax(92px,1fr) minmax(74px,.72fr) 10px!important;
    align-items:center!important;
    gap:5px!important;
    min-height:48px!important;
    padding:4px 6px!important;
  }
  #report .route-card-heading .eyebrow{
    font-size:6.5px!important;
    line-height:1!important;
    letter-spacing:.2px!important;
  }
  #report .route-card-heading h3{
    font-size:10px!important;
    line-height:1.05!important;
    margin:1px 0 0!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  #report .route-card-primary small,
  #report .route-card-secondary small{
    font-size:6.5px!important;
    line-height:1!important;
    margin:0 0 1px!important;
    white-space:nowrap!important;
  }
  #report .route-card-primary strong{
    font-size:14px!important;
    line-height:1!important;
    margin:0 0 2px!important;
    white-space:nowrap!important;
  }
  #report .route-card-secondary{
    padding-left:5px!important;
    border-left:1px solid var(--line)!important;
  }
  #report .route-card-secondary b{
    font-size:9px!important;
    line-height:1!important;
    margin:0 0 1px!important;
    white-space:nowrap!important;
  }
  #report .route-card-secondary .route-month-total{
    font-size:6px!important;
    line-height:1!important;
  }
  #report .route-card-summary .route-trend{
    font-size:6.5px!important;
    line-height:1!important;
    padding:1px 4px!important;
    border-radius:999px!important;
    white-space:nowrap!important;
  }
  #report .route-card-chevron{
    font-size:10px!important;
    line-height:1!important;
  }
  #report .route-card-detail{
    padding:5px 7px 6px!important;
  }
  #report .route-card-detail-head{
    gap:5px!important;
    margin-bottom:2px!important;
    font-size:8px!important;
  }
  #report .route-visit-row{
    gap:7px!important;
    padding:3px 0!important;
    font-size:8px!important;
  }
  #report .route-report-guide{
    margin-bottom:4px!important;
    padding:4px 7px!important;
    min-height:0!important;
    font-size:8px!important;
    line-height:1.15!important;
  }
}
@media (min-width:1600px){
  #report .route-comparison-grid.route-comparison-grid-clean{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}
@media (min-width:800px) and (max-width:999px){
  #report .route-comparison-grid.route-comparison-grid-clean{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
  #report .route-card-summary{
    padding:6px 7px!important;
    min-height:58px!important;
    gap:6px!important;
  }
}

/* v12.8.415 — Vender: cierre en flujo normal, sin botón flotante */
.pos-content .checkout #charge{position:static!important;inset:auto!important;transform:none!important;float:none!important;width:100%!important;max-width:none!important;margin:10px 0 0!important;align-self:stretch!important;flex:0 0 auto!important}
.pos-content .checkout .sale-document-choice{position:static!important;margin-top:8px!important}
.pos-content .checkout .sale-note{display:block!important;margin:7px 0 0!important;text-align:center!important}


/* v12.8.418 — confirmacion fiscal centrada */
.fe-center-notice{position:fixed;inset:0;display:grid;place-items:center;z-index:9999;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease;background:rgba(10,30,52,.08)}
.fe-center-notice.show{opacity:1;visibility:visible}
.fe-center-card{min-width:300px;max-width:min(440px,calc(100vw - 36px));padding:26px 30px 24px;border-radius:20px;background:rgba(255,255,255,.97);border:1px solid rgba(18,61,101,.10);box-shadow:0 22px 60px rgba(10,35,60,.24);backdrop-filter:blur(14px);display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}
.fe-center-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:900;background:#e9f7f1;color:#23845f}
.fe-center-card strong{font-size:24px;letter-spacing:-.45px;color:#173650}
.fe-center-card span{font-size:12px;line-height:1.45;color:#738195}
.fe-center-notice.sending .fe-center-icon{background:#edf6ff;color:#2384c7;animation:fePulse 1s infinite}
.fe-center-notice.sent .fe-center-icon,.fe-center-notice.accepted .fe-center-icon{background:#e9f7f1;color:#23845f}
.fe-center-notice.rejected .fe-center-icon{background:#fff0f0;color:#b64646}
.fe-center-notice.pending .fe-center-icon{background:#fff7df;color:#9b7618}
@keyframes fePulse{50%{transform:scale(.92);opacity:.58}}

/* v12.8.423 — Control de carga: 2 vehículos por fila en escritorio */
@media (min-width:1150px){
  .load-control-web-app .lc-web-vehicle-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    align-items:stretch!important;
  }
  .load-control-web-app .lc-vehicle-card{
    width:auto!important;
    min-width:0!important;
    min-height:118px!important;
    padding:10px 12px!important;
  }
  .load-control-web-app .lc-vehicle-head{
    grid-template-columns:32px minmax(0,1fr)!important;
    gap:9px!important;
    align-items:start!important;
  }
  .load-control-web-app .lc-vehicle-main{min-width:0!important}
  .load-control-web-app .lc-vehicle-title-row{
    gap:7px!important;
    flex-wrap:wrap!important;
  }
  .load-control-web-app .lc-vehicle-title-row h4{font-size:14px!important}
  .load-control-web-app .lc-vehicle-capacity{font-size:9px!important}
  .load-control-web-app .lc-vehicle-main>p{font-size:10px!important;margin:2px 0 7px!important}
  .load-control-web-app .lc-vehicle-facts{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .load-control-web-app .lc-vehicle-facts small{font-size:7px!important;letter-spacing:.25px!important}
  .load-control-web-app .lc-vehicle-facts b{font-size:11px!important;white-space:nowrap!important}
  .load-control-web-app .lc-vehicle-actions{
    grid-column:2!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:5px!important;
    margin-top:7px!important;
  }
  .load-control-web-app .lc-vehicle-actions .pill{
    margin-right:auto!important;
    font-size:8px!important;
    padding:4px 6px!important;
  }
  .load-control-web-app .lc-vehicle-actions .soft,
  .load-control-web-app .lc-vehicle-actions .lc-web-edit-btn{
    min-height:27px!important;
    padding:4px 7px!important;
    font-size:9px!important;
  }
}

/* v12.8.424 — Control de carga: KPIs superiores con proporción de tarjeta */
@media (min-width:1150px){
  .load-control-web-app .lc-web-metrics{
    width:min(100%,1080px)!important;
    grid-template-columns:repeat(4,minmax(190px,1fr))!important;
    gap:10px!important;
    margin:8px auto 12px 0!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card{
    height:64px!important;
    min-height:64px!important;
    padding:8px 11px!important;
    border-radius:12px!important;
    gap:9px!important;
  }
  .load-control-web-app .lc-web-metrics .metric-icon{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    border-radius:8px!important;
    font-size:12px!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card span{
    font-size:8.5px!important;
    line-height:1.05!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card strong{
    font-size:16px!important;
    line-height:1.05!important;
    margin:2px 0!important;
  }
  .load-control-web-app .lc-web-metrics .metric-card small{
    font-size:8px!important;
    line-height:1.05!important;
  }
  .load-control-web-app .lc-vehicle-metric-wrap .metric-card{
    padding-right:88px!important;
  }
  .load-control-web-app .lc-kpi-add-vehicle{
    height:30px!important;
    min-height:30px!important;
    padding:0 10px!important;
    font-size:9px!important;
  }
}


/* v12.8.427 — Cuentas por cobrar: Pendientes → Consultar en UNA sola línea real */
@media (min-width:901px){
  .workspace > .content > .credit-hero{
    width:calc(100% + var(--sidebar-rail-width) + (var(--content-pad-x) * 2))!important;
    max-width:none!important;
    margin-left:calc((var(--sidebar-rail-width) + var(--content-pad-x)) * -1)!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }

  .credit-head-compact{
    padding:11px 14px 12px!important;
  }
  .credit-head-compact .credit-panel-head{
    margin-bottom:8px!important;
  }

  .credit-toolbar-single{
    display:grid!important;
    grid-template-columns:
      92px 78px 78px 66px
      112px 112px 108px
      minmax(180px,1fr)
      88px!important;
    gap:7px!important;
    align-items:end!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
  }

  .credit-toolbar-single > button,
  .credit-toolbar-single > label{
    min-width:0!important;
    margin:0!important;
  }

  .credit-toolbar-single > .soft,
  .credit-toolbar-single > .primary{
    height:32px!important;
    min-height:32px!important;
    padding:0 9px!important;
    font-size:9px!important;
    white-space:nowrap!important;
  }

  .credit-toolbar-single > label{
    display:grid!important;
    grid-template-rows:11px 32px!important;
    gap:3px!important;
    font-size:8px!important;
    line-height:1!important;
    font-weight:800!important;
    color:var(--muted)!important;
    text-transform:uppercase!important;
    letter-spacing:.3px!important;
  }

  .credit-toolbar-single input,
  .credit-toolbar-single select{
    width:100%!important;
    min-width:0!important;
    height:32px!important;
    box-sizing:border-box!important;
    border:1px solid var(--line)!important;
    border-radius:8px!important;
    background:#fff!important;
    padding:0 8px!important;
    font-size:9px!important;
    color:var(--text)!important;
  }

  .credit-toolbar-single .credit-seller-filter{
    min-width:0!important;
    width:auto!important;
  }

  .credit-toolbar-single .credit-search-filter{
    min-width:0!important;
  }
}

@media (max-width:900px){
  .workspace > .content > .credit-hero{
    width:100%!important;
    margin-left:0!important;
  }
  .credit-toolbar-single{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .credit-toolbar-single .credit-search-filter,
  .credit-toolbar-single > .primary{
    grid-column:1/-1!important;
  }
}


/* v12.8.428 — Cuentas por cobrar: máxima compactación y KPIs alineados */
@media (min-width:901px){
  /* Barra principal: usar solo el ancho necesario y dejar Buscar compacto */
  .credit-toolbar-single{
    grid-template-columns:
      88px 72px 72px 62px
      106px 106px 96px
      250px
      84px!important;
    justify-content:start!important;
    column-gap:6px!important;
    width:100%!important;
  }

  .credit-toolbar-single .credit-search-filter{
    width:250px!important;
    max-width:250px!important;
  }

  .credit-toolbar-single .credit-search-filter input{
    width:250px!important;
    max-width:250px!important;
  }

  .credit-toolbar-single .credit-seller-filter{
    width:96px!important;
    max-width:96px!important;
  }

  .credit-toolbar-single .credit-seller-filter select{
    width:96px!important;
    max-width:96px!important;
  }

  /* Evitar altura/aire sobrante en el bloque de filtros */
  .credit-head-compact{
    padding:10px 12px 10px!important;
  }
  .credit-head-compact .credit-panel-head{
    margin-bottom:6px!important;
  }
  .credit-head-compact .credit-panel-head small{
    margin-top:2px!important;
    line-height:1.25!important;
  }

  /* KPIs: cuatro tarjetas compactas, iguales y alineadas */
  .credit-metrics{
    display:grid!important;
    grid-template-columns:repeat(4,180px)!important;
    justify-content:start!important;
    align-items:stretch!important;
    gap:8px!important;
    width:auto!important;
    margin-top:8px!important;
    margin-bottom:8px!important;
  }

  .credit-metrics > *{
    width:180px!important;
    min-width:180px!important;
    max-width:180px!important;
    min-height:72px!important;
    height:72px!important;
    padding:9px 11px!important;
    box-sizing:border-box!important;
    margin:0!important;
  }

  .credit-metrics .metric-card,
  .credit-metrics .metric{
    display:grid!important;
    align-content:center!important;
  }

  .credit-metrics h3,
  .credit-metrics strong,
  .credit-metrics .value{
    margin-top:2px!important;
    margin-bottom:1px!important;
    line-height:1.05!important;
  }

  .credit-metrics small,
  .credit-metrics p{
    margin:0!important;
    line-height:1.1!important;
  }
}

@media (min-width:901px) and (max-width:1180px){
  .credit-toolbar-single{
    grid-template-columns:
      84px 70px 70px 60px
      102px 102px 92px
      190px
      82px!important;
  }
  .credit-toolbar-single .credit-search-filter,
  .credit-toolbar-single .credit-search-filter input{
    width:190px!important;
    max-width:190px!important;
  }
  .credit-toolbar-single .credit-seller-filter,
  .credit-toolbar-single .credit-seller-filter select{
    width:92px!important;
    max-width:92px!important;
  }
  .credit-metrics{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    width:100%!important;
  }
  .credit-metrics > *{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
  }
}

@media (max-width:900px){
  .credit-metrics{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .credit-metrics > *{
    min-height:70px!important;
    height:auto!important;
  }
}


/* v12.8.429 — Cuentas por cobrar: KPIs restaurados al estándar profesional */
@media (min-width:901px){
  #crKpis.credit-metrics{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    max-width:none!important;
    margin:8px 0 10px!important;
    align-items:stretch!important;
  }

  #crKpis.credit-metrics > .metric-card{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:76px!important;
    min-height:76px!important;
    padding:11px 13px!important;
    margin:0!important;
    box-sizing:border-box!important;
    border-radius:12px!important;
  }

  #crKpis.credit-metrics > .metric-card > .metric-icon{
    flex:0 0 34px!important;
    width:34px!important;
    height:34px!important;
    border-radius:10px!important;
    font-size:15px!important;
    margin:0!important;
  }

  #crKpis.credit-metrics > .metric-card > div:last-child{
    display:block!important;
    min-width:0!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
  }

  #crKpis.credit-metrics > .metric-card span{
    display:block!important;
    font-size:10px!important;
    line-height:1.1!important;
    margin:0!important;
    white-space:nowrap!important;
  }

  #crKpis.credit-metrics > .metric-card strong{
    display:block!important;
    font-size:18px!important;
    line-height:1.1!important;
    margin:3px 0 2px!important;
    letter-spacing:-.3px!important;
    white-space:nowrap!important;
  }

  #crKpis.credit-metrics > .metric-card small{
    display:block!important;
    font-size:9px!important;
    line-height:1.1!important;
    margin:0!important;
    white-space:nowrap!important;
  }
}

@media (max-width:900px){
  #crKpis.credit-metrics{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  #crKpis.credit-metrics > .metric-card{
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    width:100%!important;
    min-width:0!important;
    height:74px!important;
    padding:10px 12px!important;
    box-sizing:border-box!important;
  }
}

/* v12.8.431 — Hacienda compacta + carga rápida */
#decl .decl-controls-compact{padding:12px 14px;margin-bottom:10px}
#decl .decl-period-inline{display:flex!important;align-items:end;gap:8px;flex-wrap:nowrap;grid-template-columns:none!important}
#decl .decl-period-inline .fiscal-quick{display:flex;gap:6px;flex:0 0 auto;margin:0}
#decl .decl-period-inline label{display:grid;gap:4px;min-width:142px;font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase}
#decl .decl-period-inline input{height:34px}
#decl .decl-period-inline .stats-apply,#decl .decl-period-inline .soft{height:34px;white-space:nowrap}
#decl .decl-period-inline .decl-export{display:flex;gap:6px;margin-left:auto}
@media(max-width:1100px){#decl .decl-period-inline{flex-wrap:wrap}#decl .decl-period-inline .decl-export{margin-left:0}}

/* v12.8.432 — Reporte Hacienda unificado visualmente con Cuentas por cobrar */
#decl .decl-head-compact{
  padding:10px 12px 10px!important;
  margin-bottom:10px!important;
}
#decl .decl-panel-head{
  margin-bottom:6px!important;
}
#decl .decl-panel-head small{
  margin-top:2px!important;
  line-height:1.25!important;
}
@media (min-width:901px){
  #decl .decl-toolbar-single{
    grid-template-columns:88px 72px 92px 106px 106px 84px 100px 108px!important;
    justify-content:start!important;
    column-gap:6px!important;
    width:100%!important;
  }
  #decl .decl-toolbar-single > button,
  #decl .decl-toolbar-single > label{
    min-width:0!important;
    margin:0!important;
  }
  #decl .decl-toolbar-single > .soft,
  #decl .decl-toolbar-single > .primary{
    height:32px!important;
    min-height:32px!important;
    padding:0 9px!important;
    font-size:9px!important;
    white-space:nowrap!important;
  }
  #decl .decl-toolbar-single > label{
    display:grid!important;
    grid-template-rows:11px 32px!important;
    gap:3px!important;
    font-size:8px!important;
    line-height:1!important;
    font-weight:800!important;
    color:var(--muted)!important;
    text-transform:uppercase!important;
    letter-spacing:.3px!important;
  }
  #decl .decl-toolbar-single input{
    width:100%!important;
    min-width:0!important;
    height:32px!important;
    box-sizing:border-box!important;
    border:1px solid var(--line)!important;
    border-radius:8px!important;
    background:#fff!important;
    padding:0 8px!important;
    font-size:9px!important;
    color:var(--text)!important;
  }
}
@media (max-width:900px){
  #decl .decl-toolbar-single{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  #decl .decl-toolbar-single > button,
  #decl .decl-toolbar-single > label{min-width:0!important;margin:0!important}
  #decl .decl-toolbar-single > label{display:grid!important;gap:3px!important}
  #decl .decl-toolbar-single input{width:100%!important;box-sizing:border-box!important}
}

/* v12.8.433 — Declaraciones: paridad con app + conciliación contable */
#decl .decl-accounting-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(135deg,#fff,#f7fbff);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:10px}
#decl .decl-accounting-strip>div:first-child{display:grid;gap:3px;min-width:0}
#decl .decl-accounting-strip span{font-size:9px;font-weight:900;letter-spacing:.55px;color:var(--muted)}
#decl .decl-accounting-strip strong{font-size:24px;line-height:1;color:var(--primary);letter-spacing:-.6px}
#decl .decl-accounting-strip small{font-size:10px;color:var(--muted)}
#decl .decl-health{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 11px;border-radius:999px;font-size:9px!important;white-space:nowrap}
#decl .decl-health.ok{background:#ecfdf3;color:#177245}
#decl .decl-health.warn{background:#fff7e6;color:#966400}
#decl .decl-accounting-panel{padding:14px 16px}
#decl .decl-accounting-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}
#decl .decl-accounting-grid>div{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff;min-width:0}
#decl .decl-accounting-grid span{display:block;font-size:9px;font-weight:800;color:var(--muted);margin-bottom:4px}
#decl .decl-accounting-grid strong{display:block;font-size:16px;line-height:1.1;color:var(--text);overflow-wrap:anywhere}
#decl .decl-accounting-grid small{display:block;margin-top:3px;font-size:8px;color:var(--muted)}
#decl .decl-reconcile{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
#decl .decl-reconcile>div{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--soft,#f7f9fc);border-radius:8px;padding:8px 10px}
#decl .decl-reconcile span{font-size:9px;color:var(--muted);font-weight:700}
#decl .decl-reconcile b{font-size:11px;color:var(--text)}
#decl .decl-note{color:var(--muted);font-size:10px;line-height:1.45;margin:10px 0 0}
#decl .decl-iva-foot{display:flex;justify-content:flex-end;gap:18px;padding:10px 4px 0;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
#decl .decl-iva-foot b{color:var(--text);margin-left:4px}
@media(max-width:900px){
 #decl .decl-accounting-strip{align-items:flex-start;flex-direction:column;padding:12px}
 #decl .decl-accounting-strip strong{font-size:21px}
 #decl .decl-accounting-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 #decl .decl-reconcile{grid-template-columns:1fr}
 #decl .decl-iva-foot{justify-content:flex-start;flex-wrap:wrap;gap:8px 14px}
}
@media(max-width:520px){#decl .decl-accounting-grid{grid-template-columns:1fr 1fr}#decl .decl-accounting-grid strong{font-size:14px}}

/* v12.8.435 — Hacienda: controles separados, compactos y gastos en Supabase */
#decl .decl-toolbar-single{
  display:flex!important;
  align-items:flex-end!important;
  gap:14px!important;
  flex-wrap:wrap!important;
}
#decl .decl-tab-group,
#decl .decl-date-group,
#decl .decl-export-group{
  display:flex;
  align-items:flex-end;
  gap:6px;
}
#decl .decl-tab-group{
  padding-right:14px;
  border-right:1px solid var(--line);
}
#decl .decl-date-group{
  gap:8px;
}
#decl .decl-export-group{
  margin-left:auto;
  padding-left:14px;
  border-left:1px solid var(--line);
}
#decl .decl-tab-group button,
#decl .decl-export-group button{
  min-height:30px!important;
  height:30px!important;
  padding:0 10px!important;
  border-radius:8px!important;
  font-size:9px!important;
  line-height:1!important;
  white-space:nowrap;
}
#decl .decl-tab-group button[data-decl-tab="expenses"]{padding-inline:11px!important}
#decl .decl-date-group label{
  display:grid!important;
  grid-template-rows:10px 30px!important;
  gap:3px!important;
  min-width:112px!important;
  margin:0!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.35px!important;
  color:var(--muted)!important;
  text-transform:uppercase!important;
}
#decl .decl-date-group input{
  width:100%!important;
  height:30px!important;
  min-height:30px!important;
  box-sizing:border-box!important;
  border:1px solid var(--line)!important;
  border-radius:8px!important;
  background:#fff!important;
  padding:0 7px!important;
  font-size:9px!important;
}
#decl .decl-assistant-actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
#decl .decl-assistant-actions button{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  min-height:30px!important;
  height:30px!important;
  padding:0 11px!important;
  border-radius:8px!important;
  font-size:9px!important;
  white-space:nowrap!important;
}
#decl .decl-assistant-actions button + button{margin-left:2px}
#decl .decl-expense-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#decl .decl-cloud-state{display:inline-flex;align-items:center;height:28px;padding:0 9px;border-radius:999px;font-size:9px;font-weight:800;border:1px solid var(--line);background:#f8fafc;color:var(--muted)}
#decl .decl-cloud-state.ok{background:#ecfdf3;color:#177245;border-color:#b7e8c8}
#decl .decl-cloud-state.warn{background:#fff7e6;color:#966400;border-color:#f2d59b}
#decl .decl-cloud-warning{margin:0 0 10px;padding:8px 10px;border-radius:9px;background:#fff7e6;border:1px solid #f2d59b;color:#7a5700;font-size:10px;line-height:1.35}
@media(max-width:1050px){
  #decl .decl-export-group{margin-left:0}
}
@media(max-width:760px){
  #decl .decl-toolbar-single{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  #decl .decl-tab-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding-right:0;border-right:0;gap:6px}
  #decl .decl-tab-group button{width:100%!important}
  #decl .decl-date-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  #decl .decl-date-group label{min-width:0!important}
  #decl .decl-export-group{display:flex;margin-left:0;padding-left:0;border-left:0;gap:7px}
  #decl .decl-export-group button{flex:0 1 auto!important;width:auto!important}
  #decl .decl-assistant-actions{width:auto!important}
  #decl .decl-assistant-actions button{flex:0 0 auto!important;width:auto!important}
}

/* ===== SOURCE: patch-12.8.394.css ===== */
/* v12.8.394 — fix aislado: nombre largo sin deformar Inicio. No modifica el grid ni el sidebar. */
@media (min-width:851px){
  .home-workspace .command-intro{min-width:0!important;overflow:hidden!important}
  .home-workspace .command-intro h2{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:clamp(19px,1.65vw,24px)!important;
  }
  .home-workspace .command-intro-top{min-width:0!important}
}

/* ===== SOURCE: patch-12.8.401.css ===== */
/* v12.8.401 — FORZADO REAL del dock lateral.
   Las reglas anteriores con :has(.home-workspace) tenían mayor especificidad y
   anulaban el parche genérico de .400. Este parche usa selectores de mayor
   especificidad para mover fondo + contenido exactamente 24px hacia abajo. */
@media (min-width:1001px){
  .app-shell:has(.home-workspace) .sidebar,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar,
  .app-shell:not(.sidebar-collapsed):has(.home-workspace) .sidebar,
  body .app-shell.sidebar-collapsed:has(.home-workspace) > .sidebar,
  body .app-shell:not(.sidebar-collapsed):has(.home-workspace) > .sidebar{
    padding-top:222px!important;
  }

  .app-shell:has(.home-workspace) .sidebar::before,
  .app-shell.sidebar-collapsed:has(.home-workspace) .sidebar::before,
  .app-shell:not(.sidebar-collapsed):has(.home-workspace) .sidebar::before,
  body .app-shell.sidebar-collapsed:has(.home-workspace) > .sidebar::before,
  body .app-shell:not(.sidebar-collapsed):has(.home-workspace) > .sidebar::before{
    top:210px!important;
  }
}

/* ===== SOURCE: patch-12.8.402-responsive.css ===== */
/* Ventyum v12.8.402 — viewport responsive real
   Objetivo: aprovechar monitores de distinta resolución sin tocar el sidebar.
   Este parche se carga al final para dominar las reglas históricas con !important. */

/* 1) El área de trabajo ocupa SIEMPRE el ancho útil real del monitor. */
@media (min-width:901px){
  .workspace{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
  }

  .workspace > .content{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding-left:clamp(14px,1.35vw,30px)!important;
    padding-right:clamp(14px,1.35vw,30px)!important;
    box-sizing:border-box!important;
  }
}

/* 2) INICIO: el contenido inferior crece con la ALTURA disponible.
      En un monitor alto ya no queda media pantalla vacía. */
@media (min-width:1001px){
  .home-workspace > .content{
    min-height:100vh!important;
    display:flex!important;
    flex-direction:column!important;
  }

  .home-workspace .dashboard-home{
    width:100%!important;
    min-width:0!important;
    flex:1 1 auto!important;
    display:flex!important;
    flex-direction:column!important;
  }

  .dashboard-home .home-metrics{
    width:100%!important;
    flex:0 0 auto!important;
  }

  .dashboard-home .home-primary-grid{
    width:100%!important;
    min-width:0!important;
    flex:1 1 auto!important;
    display:grid!important;
    grid-template-columns:minmax(0,2.45fr) minmax(clamp(260px,21vw,360px),.75fr)!important;
    align-items:stretch!important;
    gap:clamp(10px,1vw,18px)!important;
    min-height:max(390px,calc(100vh - 300px))!important;
  }

  .dashboard-home .home-main-stack{
    min-width:0!important;
    height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    gap:clamp(8px,.8vh,14px)!important;
  }

  .dashboard-home .home-chart-panel{
    min-width:0!important;
    flex:1 1 62%!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  .dashboard-home .home-chart-panel .mini-chart{
    width:100%!important;
    height:auto!important;
    min-height:clamp(150px,24vh,310px)!important;
    flex:1 1 auto!important;
  }

  .dashboard-home .home-main-stack .home-team{
    flex:0 1 auto!important;
    min-height:0!important;
    margin-top:0!important;
  }

  .dashboard-home .home-quick{
    min-width:0!important;
    height:100%!important;
    align-self:stretch!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  .dashboard-home .home-quick #quickLinks{
    flex:1 1 auto!important;
    min-height:0!important;
    display:grid!important;
    grid-template-rows:repeat(var(--quick-count,9),minmax(32px,1fr))!important;
    align-content:stretch!important;
  }

  .dashboard-home .home-quick #quickLinks .quick-link{
    min-height:0!important;
    height:100%!important;
    align-content:center!important;
  }
}

/* 3) Monitores anchos: aumentar información útil, no márgenes vacíos. */
@media (min-width:1500px){
  .dashboard-home .home-primary-grid{
    grid-template-columns:minmax(0,3fr) minmax(300px,.72fr)!important;
  }

  .dashboard-home .home-metrics{
    gap:clamp(7px,.65vw,13px)!important;
  }

  .dashboard-home .home-chart-panel .mini-chart{
    min-height:clamp(190px,27vh,340px)!important;
  }
}

/* 4) Monitores altos (900p/1080p/1200p): ocupar el espacio vertical sobrante. */
@media (min-width:1001px) and (min-height:860px){
  .dashboard-home .home-primary-grid{
    min-height:calc(100vh - 285px)!important;
  }
  .dashboard-home .home-chart-panel .mini-chart{
    min-height:clamp(210px,29vh,360px)!important;
  }
  .dashboard-home .home-quick #quickLinks .quick-link{
    padding-top:clamp(5px,.55vh,10px)!important;
    padding-bottom:clamp(5px,.55vh,10px)!important;
  }
}

/* 5) Laptop 1366x768 / baja altura: conservar la versión compacta existente. */
@media (min-width:1001px) and (max-height:800px){
  .dashboard-home .home-primary-grid{
    min-height:0!important;
  }
  .dashboard-home .home-chart-panel .mini-chart{
    height:116px!important;
    min-height:116px!important;
    flex:none!important;
  }
  .dashboard-home .home-quick{
    height:auto!important;
  }
  .dashboard-home .home-quick #quickLinks{
    display:grid!important;
    grid-template-rows:none!important;
  }
  .dashboard-home .home-quick #quickLinks .quick-link{
    height:auto!important;
  }
}

/* 6) Anchura intermedia: evitar compresión/solapes antes de pasar al layout móvil. */
@media (min-width:901px) and (max-width:1180px){
  .dashboard-home .home-primary-grid{
    grid-template-columns:minmax(0,1fr) minmax(235px,31%)!important;
  }
}

/* ===== SOURCE: patch-12.8.403-sale-origin.css ===== */
/* v12.8.403 — Nueva venta: Tiquete / Factura electrónica + origen de venta */
.sale-document-choice{display:grid;gap:8px;margin-top:2px}.sale-document-choice>span{font-size:12px;font-weight:800;color:var(--muted,#64748b);text-transform:uppercase;letter-spacing:.04em}.sale-document-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;border:1px solid rgba(148,163,184,.25);border-radius:15px;background:rgba(241,245,249,.72)}.sale-document-option{min-height:46px;border:0;border-radius:11px;background:transparent;color:#334155;font-weight:800;cursor:pointer}.sale-document-option.active{background:#fff;color:#1677d2;box-shadow:0 3px 12px rgba(15,23,42,.09)}.checkout .charge{margin-top:4px}.sale-note{line-height:1.35}
@media (max-width:1080px){.sale-document-buttons{grid-template-columns:1fr}.sale-document-option{min-height:42px}}

/* ===== SOURCE: patch-12.8.404-vender-desktop-pro.css ===== */
/* v12.8.404 · Vender desktop PRO: cierre compacto y jerarquía visual correcta */
@media (min-width:851px){
  .pos-content .pos{grid-template-columns:minmax(0,1fr) minmax(330px,360px)!important;gap:14px!important}
  .pos-content .catalog{padding:16px 17px!important}
  .pos-content .checkout{padding:15px 16px 14px!important;border-radius:14px!important;box-shadow:0 5px 18px rgba(18,42,68,.055)!important}
  .pos-content .checkout>.panel-head{margin-bottom:10px!important;padding-bottom:10px!important;border-bottom:1px solid var(--line,#e5eaf0)!important}
  .pos-content .checkout>.panel-head h3{font-size:15px!important;margin-top:2px!important}
  .pos-content .checkout>.panel-head .eyebrow{font-size:8.5px!important;letter-spacing:.11em!important}
  .pos-content .checkout label{margin:9px 0!important;gap:5px!important;font-size:10px!important}
  .pos-content .checkout input,.pos-content .checkout select{height:36px!important;border-radius:8px!important;font-size:12px!important}
  .pos-content .checkout #cart{margin:1px 0 2px!important}
  .pos-content .checkout .cart-item{padding:8px 0!important;gap:8px!important}
  .pos-content .checkout .cart-item b{font-size:11px!important}
  .pos-content .checkout .cart-item>strong{font-size:11px!important}
  .pos-content .checkout .stepper button{width:25px!important;height:25px!important}
  .pos-content .checkout .stepper span{width:25px!important}
  .pos-content .checkout .totals-box{margin-top:4px!important;border-top:1px solid var(--line,#e5eaf0)!important;padding-top:7px!important}
  .pos-content .checkout .totals-box>div{min-height:25px!important;font-size:10px!important}
  .pos-content .checkout .total{padding:7px 0 4px!important}
  .pos-content .checkout .total strong{font-size:20px!important;letter-spacing:-.35px!important}

  .pos-content .sale-document-choice{gap:5px!important;margin:8px 0 0!important;padding-top:8px!important;border-top:1px solid var(--line,#e5eaf0)!important}
  .pos-content .sale-document-choice>span{font-size:8.5px!important;letter-spacing:.1em!important;color:#7b8898!important}
  .pos-content .sale-document-buttons{display:flex!important;grid-template-columns:none!important;gap:3px!important;padding:3px!important;border-radius:9px!important;background:#f2f5f8!important;border:1px solid #e2e8ef!important}
  .pos-content .sale-document-option{flex:1 1 0!important;min-height:31px!important;height:31px!important;border-radius:7px!important;padding:0 8px!important;font-size:10.5px!important;font-weight:800!important;white-space:nowrap!important}
  .pos-content .sale-document-option.active{box-shadow:0 1px 4px rgba(18,42,68,.08)!important}

  .pos-content .checkout .charge{display:block!important;width:auto!important;min-width:168px!important;height:38px!important;margin:10px 0 0 auto!important;padding:0 18px!important;border-radius:9px!important;font-size:11px!important;font-weight:850!important;box-shadow:0 4px 11px rgba(19,120,209,.16)!important}
  .pos-content .sale-note{display:block!important;margin:5px 0 0!important;text-align:right!important;font-size:8.5px!important;line-height:1.25!important;color:#8b98a7!important}
}

@media (min-width:1180px){
  .pos-content .products{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))!important;gap:9px!important}
  .pos-content .product-card{min-height:140px!important;padding:10px!important}
  .pos-content .product-art{height:54px!important;margin-bottom:3px!important}
}

/* En pantallas angostas sigue siendo táctil y cómodo. */
@media (max-width:850px){
  .sale-document-buttons{grid-template-columns:1fr 1fr!important}
  .sale-document-option{min-height:42px!important}
  .checkout .charge{width:100%!important;min-height:44px!important}
}

/* ===== SOURCE: patch-12.8.405-vender-header-presentaciones.css ===== */
/* v12.8.405 · Vender: encabezado estándar + catálogo separado por presentación */
.vender-page-hero{min-height:112px!important;margin-bottom:14px!important;padding:20px 24px!important;border-radius:16px!important;background:linear-gradient(120deg,#102d50,#164c77)!important}
.vender-page-hero h2{font-size:24px!important;margin:3px 0 4px!important}.vender-page-hero p{font-size:11px!important}
.pos-content .sale-presentation-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:-4px 0 13px;padding-bottom:11px;border-bottom:1px solid var(--line,#e4e9ef)}
.pos-content .sale-presentation-filter{height:30px;padding:0 12px;border:1px solid #dfe6ed;border-radius:999px;background:#f7f9fb;color:#5f6e7f;font-size:10.5px;font-weight:800;cursor:pointer}
.pos-content .sale-presentation-filter:hover{border-color:#a9cbe6;color:#176fae}.pos-content .sale-presentation-filter.active{background:#e9f4fc;border-color:#8fc1e6;color:#126da9;box-shadow:inset 0 0 0 1px rgba(19,120,209,.04)}
.pos-content .product-presentation-badge{display:inline-flex;align-items:center;min-height:19px;padding:2px 7px;border-radius:999px;background:#eef4f8;color:#5c7184;font-size:9px;font-weight:800;letter-spacing:.02em}
@media(max-width:850px){.vender-page-hero{min-height:100px!important;padding:18px!important}.pos-content .sale-presentation-filters{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.pos-content .sale-presentation-filter{flex:0 0 auto;height:34px}}

/* ===== SOURCE: patch-12.8.406-vender-presentaciones-app.css ===== */
/* v12.8.406 · Vender: un solo encabezado + catálogo completo de presentaciones Android */
.app-shell:has(.content.pos-content) .topbar{display:none!important}
.app-shell:has(.content.pos-content) .workspace{padding-top:0!important}
.pos-content{padding-top:0!important}
.vender-page-hero{margin-top:0!important}
.pos-content .sale-presentation-filters{display:flex!important;align-items:center;gap:6px;flex-wrap:wrap;margin:-4px 0 12px!important;padding-bottom:10px;border-bottom:1px solid var(--line,#e4e9ef)}
.pos-content .sale-presentation-filter{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:1px solid #dfe6ed;border-radius:999px;background:#f7f9fb;color:#5f6e7f;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap}
.pos-content .sale-presentation-filter small{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#e9eef3;color:#708090;font-size:9px;font-weight:900}
.pos-content .sale-presentation-filter:hover{border-color:#a9cbe6;color:#176fae}.pos-content .sale-presentation-filter.active{background:#e9f4fc;border-color:#6fb0df;color:#126da9;box-shadow:inset 0 0 0 1px rgba(19,120,209,.05)}
.pos-content .sale-presentation-filter.active small{background:#cfe8fa;color:#126da9}.pos-content .sale-presentation-filter.is-empty{opacity:.55}
@media(max-width:850px){.app-shell:has(.content.pos-content) .topbar{display:none!important}.pos-content .sale-presentation-filters{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.pos-content .sale-presentation-filter{flex:0 0 auto;height:34px}}

/* ===== SOURCE: patch-12.8.407-vender-fit.css ===== */
/* v12.8.407 · Vender: encabezado dentro del área útil + catálogo compacto desktop */
@media (min-width:901px){
  /* El encabezado de Vender NO debe usar la expansión global hacia debajo del sidebar. */
  .workspace>.content.pos-content>.vender-page-hero{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  /* Mantener todo el POS dentro del ancho real del workspace. */
  .workspace>.content.pos-content{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding-left:clamp(14px,1.35vw,24px)!important;
    padding-right:clamp(14px,1.35vw,24px)!important;
    overflow:hidden!important;
  }
  .pos-content .pos,
  .pos-content .catalog,
  .pos-content .checkout{min-width:0!important}

  /* Filtros en una sola línea: no consumen dos o tres filas del catálogo. */
  .pos-content .sale-presentation-filters{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:thin!important;
    margin:0 0 8px!important;
    padding:0 0 7px!important;
    gap:5px!important;
  }
  .pos-content .sale-presentation-filter{
    flex:0 0 auto!important;
    height:27px!important;
    padding:0 8px!important;
    font-size:9.5px!important;
  }
  .pos-content .sale-presentation-filter small{
    min-width:16px!important;
    height:16px!important;
    padding:0 4px!important;
    font-size:8px!important;
  }

  /* Catálogo realmente compacto: permite al menos 3 filas útiles en laptop. */
  .pos-content .catalog{
    padding:13px 14px!important;
  }
  .pos-content .catalog>.panel-head{
    margin-bottom:8px!important;
    gap:10px!important;
  }
  .pos-content .catalog>.panel-head h3{font-size:15px!important}
  .pos-content .catalog>.panel-head .eyebrow{font-size:8.5px!important}
  .pos-content .catalog>.panel-head input{
    height:34px!important;
    width:min(58%,520px)!important;
    font-size:11px!important;
  }

  .pos-content .products{
    grid-template-columns:repeat(auto-fill,minmax(128px,1fr))!important;
    grid-auto-rows:minmax(112px,auto)!important;
    gap:7px!important;
    align-content:start!important;
    padding-right:3px!important;
  }
  .pos-content .product-card{
    min-height:112px!important;
    height:112px!important;
    padding:8px 9px!important;
    gap:3px!important;
    border-radius:10px!important;
    overflow:hidden!important;
  }
  .pos-content .product-art{
    height:34px!important;
    min-height:34px!important;
    margin-bottom:1px!important;
    border-radius:7px!important;
    font-size:18px!important;
  }
  .pos-content .product-card>b{
    font-size:11px!important;
    line-height:1.18!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .pos-content .product-card>small{
    min-height:17px!important;
    flex:0 0 auto!important;
    line-height:1!important;
  }
  .pos-content .product-presentation-badge{
    min-height:16px!important;
    padding:1px 5px!important;
    font-size:8px!important;
  }
  .pos-content .product-card>strong{
    margin-top:auto!important;
    font-size:11px!important;
    line-height:1.05!important;
  }
}

/* En pantallas de escritorio bajas, compactar además el hero para liberar altura. */
@media (min-width:901px) and (max-height:820px){
  .workspace>.content.pos-content>.vender-page-hero{
    min-height:82px!important;
    height:82px!important;
    padding:13px 18px!important;
    margin-bottom:10px!important;
  }
  .vender-page-hero h2{font-size:20px!important;margin:1px 0 2px!important}
  .vender-page-hero p{font-size:9.5px!important}
  .vender-page-hero .eyebrow{font-size:8px!important}

  .pos-content .products{
    grid-auto-rows:104px!important;
  }
  .pos-content .product-card{
    min-height:104px!important;
    height:104px!important;
  }
  .pos-content .product-art{
    height:30px!important;
    min-height:30px!important;
  }
}

/* ===== SOURCE: patch-12.8.408-vender-clientes-header.css ===== */
/* v12.8.408 · Vender: buscador de clientes robusto + hero visualmente simétrico */
@media (min-width:901px){
  /* Mantener el contenido/texto seguro en el workspace, pero extender SOLO el fondo azul
     hacia la izquierda como los demás encabezados. Así no se vuelve a cortar "Vender". */
  .workspace>.content.pos-content>.vender-page-hero{
    position:relative!important;
    isolation:isolate!important;
    overflow:visible!important;
    border-radius:0 16px 16px 0!important;
    background:linear-gradient(120deg,#102d50,#164c77)!important;
  }
  .workspace>.content.pos-content>.vender-page-hero::before{
    content:"";
    position:absolute;
    z-index:-1;
    top:0;
    bottom:0;
    right:100%;
    width:calc(var(--sidebar-rail-width,72px) + var(--content-pad-x,24px) - var(--page-edge,12px));
    background:#102d50;
    border-radius:16px 0 0 16px;
    pointer-events:none;
  }
  .workspace>.content.pos-content>.vender-page-hero>div{
    position:relative!important;
    z-index:1!important;
    min-width:0!important;
  }
}

/* Buscador de cliente: resultados visibles, compactos y utilizables dentro del panel de venta. */
.pos-content .checkout #clientHints{
  z-index:20!important;
  max-height:220px!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-width:thin!important;
  background:#fff!important;
}
.pos-content .checkout #clientHints:not(:empty){
  margin-top:-7px!important;
  margin-bottom:8px!important;
  border:1px solid #dbe5ee!important;
  border-radius:9px!important;
  box-shadow:0 10px 24px rgba(20,48,78,.10)!important;
}
.pos-content .checkout #clientHints button{
  display:block!important;
  width:100%!important;
  padding:8px 10px!important;
  border:0!important;
  border-bottom:1px solid #edf1f5!important;
  background:#fff!important;
  text-align:left!important;
}
.pos-content .checkout #clientHints button:last-child{border-bottom:0!important}
.pos-content .checkout #clientHints button:hover{background:#f3f8fc!important}
.pos-content .checkout #clientHints b{display:block!important;font-size:11px!important;color:#203246!important;line-height:1.25!important}
.pos-content .checkout #clientHints small{display:block!important;margin-top:2px!important;font-size:9px!important;color:#748094!important;line-height:1.25!important}
.client-hint-loading,.client-hint-empty,.client-hint-error{padding:10px 11px;font-size:10px;color:#748094;background:#fff}
.client-hint-error{color:#a44747;background:#fff8f8}

/* ===== SOURCE: patch-12.8.409-vender-real-fix.css ===== */
/* v12.8.409 — Vender: encabezado realmente simétrico + selector de clientes visible */
@media (min-width:901px){
  /* El workspace de Vender usa todo el ancho disponible; el header ya no queda “metido” a la izquierda. */
  .workspace>.content.pos-content{
    max-width:none!important;
    width:100%!important;
    margin:0!important;
    padding-left:30px!important;
    padding-right:30px!important;
  }
  .workspace>.content.pos-content>.vender-page-hero{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    left:auto!important;
    right:auto!important;
    overflow:hidden!important;
    border-radius:16px!important;
  }
  .workspace>.content.pos-content>.vender-page-hero::before{display:none!important;content:none!important}
}

/* El desplegable vive inmediatamente debajo del input y por encima del carrito. */
.pos-content .checkout label:has(#saleClient){position:relative!important;z-index:60!important;margin-bottom:0!important}
.pos-content .checkout #clientHints{
  position:relative!important;
  z-index:59!important;
  width:100%!important;
  max-height:230px!important;
  overflow:auto!important;
  margin:4px 0 8px!important;
  background:#fff!important;
  border:0!important;
  border-radius:9px!important;
  box-shadow:none!important;
}
.pos-content .checkout #clientHints:not(:empty){
  border:1px solid #dbe5ee!important;
  box-shadow:0 9px 22px rgba(20,48,78,.12)!important;
}
.pos-content .checkout #clientHints button{
  display:block!important;width:100%!important;min-height:42px!important;
  padding:7px 10px!important;border:0!important;border-bottom:1px solid #edf1f5!important;
  background:#fff!important;text-align:left!important;color:#203246!important;
}
.pos-content .checkout #clientHints button:last-child{border-bottom:0!important}
.pos-content .checkout #clientHints button:hover{background:#eef6fc!important}
.pos-content .checkout #clientHints b{display:block!important;font-size:11px!important;line-height:1.25!important}
.pos-content .checkout #clientHints small{display:block!important;margin-top:3px!important;font-size:9px!important;line-height:1.25!important;color:#748094!important}

/* ===== SOURCE: patch-12.8.410-vender-control-clientes-unificado.css ===== */
/* v12.8.410 — Vender y Control de carga usan exactamente el hero de Reporte de vendedor. */
@media (min-width:901px){
  /* Anula los parches 407–409 que separaron Vender del estándar global. */
  .workspace>.content.pos-content{
    max-width:none!important;
    width:auto!important;
    margin:0!important;
    padding:22px var(--content-pad-x) 42px!important;
    overflow:visible!important;
  }
  .workspace>.content.pos-content>.vender-page-hero,
  body:has(.load-control-web-app) .control-carga-hero{
    width:calc(100% + var(--sidebar-rail-width) + (var(--content-pad-x) * 2) - (var(--page-edge) * 2))!important;
    max-width:none!important;
    margin-left:calc((var(--sidebar-rail-width) + var(--content-pad-x) - var(--page-edge)) * -1)!important;
    margin-right:0!important;
    min-height:58px!important;
    height:58px!important;
    padding:7px 14px!important;
    margin-top:5px!important;
    margin-bottom:5px!important;
    border-radius:16px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    overflow:hidden!important;
    background:linear-gradient(112deg,#082f67 0%,#07528d 48%,#087bb0 100%)!important;
  }
  .workspace>.content.pos-content>.vender-page-hero::before{display:none!important;content:none!important}
  .workspace>.content.pos-content>.vender-page-hero>div,
  body:has(.load-control-web-app) .control-carga-hero>div:first-child{
    width:auto!important;max-width:none!important;min-width:0!important;
  }
  .vender-page-hero .eyebrow,
  body:has(.load-control-web-app) .control-carga-hero .eyebrow{
    display:block!important;margin:0 0 2px!important;font-size:8px!important;line-height:1!important;letter-spacing:.08em!important;
  }
  .vender-page-hero h2,
  body:has(.load-control-web-app) .control-carga-hero h2{
    margin:1px 0!important;font-size:18px!important;line-height:1!important;
  }
  .vender-page-hero p,
  body:has(.load-control-web-app) .control-carga-hero p{
    margin:1px 0 0!important;font-size:8px!important;line-height:1.05!important;
  }
}

/* Vender: desplegable del MISMO directorio de clientes. */
.pos-content .checkout{overflow:visible!important}
.pos-content .checkout label:has(#saleClient){position:relative!important;z-index:90!important;margin-bottom:0!important}
.pos-content .checkout #saleClient{position:relative!important;z-index:91!important}
.pos-content .checkout #clientHints{
  position:relative!important;z-index:92!important;width:100%!important;max-height:250px!important;
  overflow:auto!important;margin:4px 0 8px!important;background:#fff!important;border-radius:9px!important;
}
.pos-content .checkout #clientHints:not(:empty){border:1px solid #dbe5ee!important;box-shadow:0 9px 22px rgba(20,48,78,.12)!important}
.pos-content .checkout #clientHints button{display:block!important;width:100%!important;min-height:42px!important;padding:7px 10px!important;border:0!important;border-bottom:1px solid #edf1f5!important;background:#fff!important;text-align:left!important;color:#203246!important;cursor:pointer!important}
.pos-content .checkout #clientHints button:hover{background:#eef6fc!important}
.pos-content .checkout #clientHints button:last-child{border-bottom:0!important}
.pos-content .checkout #clientHints b{display:block!important;font-size:11px!important;line-height:1.25!important}
.pos-content .checkout #clientHints small{display:block!important;margin-top:3px!important;font-size:9px!important;line-height:1.25!important;color:#748094!important}
.client-hint-loading,.client-hint-empty,.client-hint-error{padding:10px 11px!important;font-size:10px!important;color:#748094!important;background:#fff!important}
.client-hint-error{color:#a44747!important;background:#fff8f8!important}

/* ===== SOURCE: patch-12.8.411-vender-clientes-footer.css ===== */
/* v12.8.411 — Vender: directorio real + cierre siempre visible en escritorio. */
@media (min-width:901px){
  .pos-content .pos{align-items:start!important}
  .pos-content .checkout{
    position:sticky!important;
    top:10px!important;
    height:calc(100vh - 110px)!important;
    max-height:calc(100vh - 110px)!important;
    min-height:455px!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:visible!important;
    padding:13px 15px 12px!important;
  }
  .pos-content .checkout>.panel-head{flex:0 0 auto!important;margin-bottom:7px!important;padding-bottom:7px!important}
  .pos-content .sale-client-field{position:relative!important;z-index:120!important;flex:0 0 auto!important}
  .pos-content .sale-client-field label{margin:5px 0 4px!important}
  .pos-content .checkout #cart{
    flex:1 1 auto!important;
    min-height:78px!important;
    max-height:none!important;
    overflow:auto!important;
    margin:2px 0 3px!important;
    scrollbar-width:thin!important;
  }
  .pos-content .checkout #cart .empty{min-height:72px!important;padding:22px 10px!important}
  .pos-content .checkout>label{flex:0 0 auto!important;margin:5px 0!important}
  .pos-content .checkout>label input,.pos-content .checkout>label select{height:34px!important}
  .pos-content .sale-document-choice{flex:0 0 auto!important;margin-top:4px!important;gap:4px!important}
  .pos-content .sale-document-choice>span{font-size:8px!important}
  .pos-content .sale-document-buttons{height:34px!important;padding:2px!important;border-radius:9px!important;gap:2px!important}
  .pos-content .sale-document-option{min-height:28px!important;height:28px!important;font-size:10px!important;border-radius:7px!important}
  .pos-content .checkout .charge{flex:0 0 auto!important;height:36px!important;min-height:36px!important;margin:7px 0 0 auto!important;font-size:11px!important}
  .pos-content .checkout .sale-note{flex:0 0 auto!important;font-size:8px!important;line-height:1.15!important;margin-top:4px!important}
}
/* El buscador usa el directorio y el desplegable no empuja el resto del cobro. */
.pos-content .sale-client-field{position:relative!important;z-index:120!important}
.pos-content .sale-client-field #clientHints{
  position:absolute!important;
  z-index:500!important;
  left:0!important;right:0!important;top:100%!important;
  width:100%!important;
  max-height:260px!important;
  overflow:auto!important;
  margin:2px 0 0!important;
  background:#fff!important;
  border-radius:9px!important;
}
.pos-content .sale-client-field #clientHints:not(:empty){border:1px solid #dbe5ee!important;box-shadow:0 12px 28px rgba(20,48,78,.16)!important}
.pos-content .sale-client-field #clientHints button{display:block!important;width:100%!important;min-height:42px!important;padding:7px 10px!important;border:0!important;border-bottom:1px solid #edf1f5!important;background:#fff!important;text-align:left!important;color:#203246!important;cursor:pointer!important}
.pos-content .sale-client-field #clientHints button:hover{background:#eef6fc!important}
.pos-content .sale-client-field #clientHints button:last-child{border-bottom:0!important}

/* ===== SOURCE: patch-12.8.441-dashboard-fe.css ===== */
/* v12.8.441 — dashboard containment + borradores neutros; Estadísticas conserva formato v12.8.434 */
.dashboard-home .home-primary-grid{min-width:0!important;grid-template-columns:minmax(0,1fr) minmax(250px,320px)!important;align-items:start!important}
.dashboard-home .home-main-stack,.dashboard-home .home-chart-panel,.dashboard-home #homeSalesChart{min-width:0!important;max-width:100%!important}
.dashboard-home .home-chart-panel{overflow:hidden!important}
.dashboard-home .home-chart-panel .mini-chart{box-sizing:border-box!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-inline:contain}
.dashboard-home .home-chart-panel .mini-chart.month-view{overflow-x:auto!important;overflow-y:hidden!important;max-width:100%!important}
@media(max-width:980px){.dashboard-home .home-primary-grid{grid-template-columns:minmax(0,1fr)!important}.dashboard-home .home-quick{width:auto!important;max-width:none!important}}
.fe-hero-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fe-hero-actions .soft{white-space:nowrap}.fe-hero-actions #feDraftCount{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;margin-left:5px;border-radius:999px;background:rgba(19,120,209,.10);font-size:11px;font-weight:800}
.fe-drafts-panel{margin-bottom:12px!important;padding:14px 16px!important}.fe-drafts-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}.fe-drafts-head h3{margin:2px 0 2px;font-size:18px}.fe-drafts-head p{margin:0;color:#748296;font-size:12px}.fe-draft-list{display:grid;gap:7px}.fe-draft-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid #e5ebf1;border-radius:11px;background:#fbfdff}.fe-draft-item>div:first-child{min-width:0}.fe-draft-item strong{display:block;font-size:13px;color:#1e3046;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fe-draft-item small{display:block;margin-top:2px;color:#7a8898;font-size:10.5px}.fe-draft-actions{display:flex;gap:6px;flex:0 0 auto}.fe-draft-actions .soft{padding:6px 9px!important;font-size:10.5px!important}.fe-draft-actions [data-fe-delete]{color:#536579!important;background:#f7f9fb!important;border-color:#dbe3eb!important}.fe-draft-actions [data-fe-delete]:hover{background:#eef3f7!important;color:#25384d!important}
@media(max-width:680px){.fe-drafts-head,.fe-draft-item{align-items:stretch;flex-direction:column}.fe-draft-actions{justify-content:flex-end}.fe-hero-actions{justify-content:flex-start}}

/* ===== SOURCE: patch-12.8.442-dashboard-analytics.css ===== */
/* v12.8.442 — Inicio: gráfico visible completo + análisis estructurado */
/* La barra más alta conserva aire bajo el encabezado y nunca queda recortada. */
.dashboard-home .home-chart-panel{overflow:visible!important;min-height:0!important}
.dashboard-home .home-chart-panel .mini-chart{
  height:190px!important;min-height:190px!important;
  padding:22px 10px 7px!important;
  overflow-x:auto!important;overflow-y:visible!important;
  align-items:flex-end!important;
}
.dashboard-home .home-chart-panel .mini-chart>div{min-height:0!important;justify-content:flex-end!important}
.dashboard-home .home-chart-panel .mini-chart>div>span{max-height:118px!important;flex:0 0 auto!important}
@media (min-width:1001px) and (max-height:850px){
 .dashboard-home .home-chart-panel .mini-chart{height:178px!important;min-height:178px!important;padding-top:20px!important}
}
@media (min-width:1001px) and (max-height:700px){
 .dashboard-home .home-chart-panel .mini-chart{height:166px!important;min-height:166px!important;padding-top:18px!important}
}
@media (max-width:1000px){
 .dashboard-home .home-chart-panel .mini-chart{height:190px!important;min-height:190px!important;padding-top:20px!important}
}

/* ===== SOURCE: patch-12.8.445-credit-notes.css ===== */
/* Ventyum Web 12.8.445 — Nota de crédito en Comprobantes electrónicos */
.fiscal-docs-compact .fiscal-filterbar-compact{grid-template-columns:132px 132px 156px 156px minmax(180px,1fr) 116px!important}
.fiscal-summary.fiscal-summary-with-nc{grid-template-columns:repeat(5,minmax(105px,1fr))!important}
.fiscal-summary-filter{appearance:none;width:100%;border:1px solid var(--line);background:#f9fbfc;border-radius:9px;padding:7px 11px;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.fiscal-summary-filter:hover{border-color:#9ebbe0!important;box-shadow:0 5px 14px rgba(31,76,128,.1);transform:translateY(-1px)}.fiscal-summary-filter:focus-visible{outline:3px solid rgba(36,120,214,.24);outline-offset:2px}.fiscal-summary-filter.active{border-color:#2478d6!important;background:#eef6ff!important;box-shadow:inset 0 0 0 1px #2478d6,0 5px 14px rgba(31,76,128,.12)}.fiscal-summary-filter.active span:after{content:' · FILTRO';color:#2478d6;font-size:7px;font-weight:900;letter-spacing:.35px}
.fiscal-summary-nc{background:#fff8f8!important;border-color:#f2d7d7!important}.fiscal-summary-nc b{color:#b42318!important}
.fiscal-summary-nc.active{border-color:#b42318!important;background:#fff0f0!important;box-shadow:inset 0 0 0 1px #b42318,0 5px 14px rgba(180,35,24,.12)}.fiscal-summary-nc.active span:after{color:#b42318}
.fiscal-doc-client{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important}.fiscal-doc-client>b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.fiscal-doc-kind{display:block;font-size:8px;font-weight:800;color:#718096;text-transform:uppercase;letter-spacing:.32px}.fiscal-doc-kind.credit{color:#b42318}
.fiscal-credit-note-row{background:#fffdfd}.fiscal-credit-note-row .fiscal-doc-row-direct{box-shadow:inset 3px 0 0 #e48787}
.fiscal-doc-state{display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:3px!important}.fiscal-credit-link{appearance:none;border:0;background:transparent;padding:0;margin:0;color:#b42318;font:inherit;font-size:8.5px;font-weight:900;line-height:1.1;cursor:pointer;white-space:nowrap}.fiscal-credit-link:hover{text-decoration:underline}.fiscal-credit-link.ok{color:#9f2d2d}.fiscal-credit-link.wait{color:#a15c10}.fiscal-credit-link.bad{color:#b42318}.fiscal-credit-link.create{color:#b42318}
.web-nc-backdrop{position:fixed;inset:0;z-index:10000;background:rgba(13,24,41,.38);backdrop-filter:blur(3px);display:grid;place-items:center;padding:24px}.web-nc-modal{width:min(620px,calc(100vw - 36px));max-height:min(760px,calc(100vh - 48px));overflow:auto;background:#fff;border:1px solid #e4e9ef;border-radius:18px;box-shadow:0 28px 70px rgba(16,24,40,.22);padding:20px}.web-nc-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.web-nc-head h3{margin:3px 0 4px;font-size:22px}.web-nc-head p{margin:0;color:#6b7788;font-size:12px}.web-nc-close{width:34px;height:34px;border-radius:10px;border:1px solid #e1e6ec;background:#fff;font-size:20px;color:#536174;cursor:pointer}.web-nc-ref{display:grid;grid-template-columns:1fr 1.2fr .8fr;gap:8px;margin:15px 0 12px}.web-nc-ref>div{border:1px solid #e7ebf0;background:#f8fafc;border-radius:11px;padding:10px 11px;min-width:0}.web-nc-ref span{display:block;color:#788597;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}.web-nc-ref b{display:block;margin-top:3px;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.web-nc-reason-label{display:block;font-size:11px;font-weight:850;color:#344054}.web-nc-reason-label>b{color:#c62f2f}.web-nc-reason-label textarea{display:block;width:100%;box-sizing:border-box;margin-top:6px;min-height:82px;resize:vertical;border:1px solid #d9e0e8;border-radius:11px;padding:10px 11px;font:inherit;font-size:13px;line-height:1.35;color:#1f2937;background:#fff}.web-nc-reason-label small{display:block;text-align:right;color:#8994a3;margin-top:4px;font-size:9px}.web-nc-quick{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 15px}.web-nc-quick button{border:1px solid #e2e7ed;background:#f8fafc;color:#536174;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:800;cursor:pointer}.web-nc-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #edf0f4;padding-top:13px}.web-nc-actions button{min-width:115px}.web-nc-actions .primary:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:1180px){.fiscal-docs-compact .fiscal-filterbar-compact{grid-template-columns:1fr 1fr 1fr!important}.fiscal-docs-compact .fiscal-search-wrap{grid-column:1/3}.fiscal-summary.fiscal-summary-with-nc{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:700px){.fiscal-docs-compact .fiscal-filterbar-compact{grid-template-columns:1fr 1fr!important}.fiscal-docs-compact .fiscal-search-wrap,.fiscal-docs-compact .fiscal-filterbar-compact .primary{grid-column:1/-1}.fiscal-summary.fiscal-summary-with-nc{grid-template-columns:1fr 1fr!important}.web-nc-backdrop{padding:12px}.web-nc-modal{padding:15px;border-radius:15px}.web-nc-ref{grid-template-columns:1fr 1fr}.web-nc-ref>div:last-child{grid-column:1/-1}.web-nc-actions button{flex:1;min-width:0}}

/* v12.8.448 — trazabilidad de facturas en el cálculo de IVA */
#decl .decl-iva-documents{margin-top:10px;padding-bottom:10px}#decl .decl-iva-documents .panel-head small{display:block;margin-top:3px;color:var(--muted);font-size:9px}#decl .decl-iva-documents .table-wrap{max-height:430px;overflow:auto;border:1px solid var(--line);border-radius:10px}#decl .decl-iva-documents table{min-width:980px}#decl .decl-iva-documents thead{position:sticky;top:0;z-index:2;background:#f7faff}#decl .decl-iva-document-totals{display:flex;justify-content:flex-end;gap:20px;padding:10px 4px 0;color:var(--muted);font-size:10px}#decl .decl-iva-document-totals b{color:var(--text);margin-left:4px}@media(max-width:700px){#decl .decl-iva-document-totals{justify-content:flex-start;flex-wrap:wrap;gap:7px 14px}}

/* v12.8.449 — diagnóstico a la izquierda, acciones a la derecha */
#decl .decl-assistant{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:28px!important;padding:14px 16px!important}#decl .decl-assistant-score{display:grid!important;grid-template-columns:auto auto!important;align-items:baseline!important;column-gap:8px!important;row-gap:3px!important;min-width:0!important}#decl .decl-assistant-score>span{font-size:9px!important;font-weight:900!important;letter-spacing:.55px!important;color:var(--muted)!important;white-space:nowrap!important}#decl .decl-assistant-score>strong{font-size:18px!important;line-height:1!important;color:var(--text)!important;white-space:nowrap!important}#decl .decl-assistant-score>small{grid-column:1/-1!important;display:block!important;color:var(--muted)!important;font-size:9px!important;line-height:1.35!important;overflow-wrap:anywhere!important}#decl .decl-assistant-actions{margin-left:auto!important;flex:0 0 auto!important;justify-content:flex-end!important;gap:8px!important}#decl .decl-assistant-actions button+button{margin-left:0!important}@media(max-width:800px){#decl .decl-assistant{align-items:stretch!important;flex-direction:column!important;gap:12px!important}#decl .decl-assistant-actions{margin-left:0!important;justify-content:flex-start!important}}

/* v12.8.451 — accesos táctiles sin selección, callout ni arrastre prolongado */
a[data-route],button[data-route],a.quick-link,.sidebar a,.metric-link,.command-module[href],.home-stats-link{-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important;-webkit-user-drag:none!important;touch-action:manipulation!important}a[data-route] *,button[data-route] *,a.quick-link *,.sidebar a *,.metric-link *,.command-module[href] *,.home-stats-link *{-webkit-user-select:none!important;user-select:none!important;-webkit-user-drag:none!important}

/* v12.8.452 — paginación real del directorio de clientes */
.clients-pager{display:flex;align-items:center;justify-content:center;gap:12px;padding:9px 2px 1px;color:var(--muted);font-size:10px}.clients-pager button{height:30px!important;min-height:30px!important;padding:0 11px!important;border-radius:8px!important;font-size:9px!important}.clients-pager button:disabled{opacity:.42;cursor:not-allowed}.clients-pager span{text-align:center}.clients-pager span b{color:var(--text)}@media(max-width:650px){.clients-pager{justify-content:space-between;gap:6px}.clients-pager button{padding:0 8px!important}.clients-pager span{font-size:9px}}

/* v12.8.453 — expediente fiscal y navegación desde indicadores */
.metric-card.metric-link[role="link"]{cursor:pointer}.metric-card.metric-link[role="link"]:focus-visible{outline:3px solid rgba(18,148,211,.28);outline-offset:3px}
.fiscal-expedient-toggle{margin-top:7px;border:0;background:transparent;color:#087fb7;font:700 12px/1.2 inherit;cursor:pointer;padding:3px 0;text-decoration:underline;text-underline-offset:3px}.fiscal-expedient{border-top:1px solid #e3edf3;background:linear-gradient(180deg,#f8fcff,#fff);padding:18px 20px 20px}.fiscal-expedient[hidden]{display:none!important}.fiscal-expedient-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.fiscal-expedient-head div{display:grid;gap:3px}.fiscal-expedient-head span{font-size:10px;font-weight:900;letter-spacing:.1em;color:#0787bf}.fiscal-expedient-head b{font-size:15px}.fiscal-expedient-head small{color:#647785}.fiscal-expedient-meta{display:grid;grid-template-columns:1fr 2fr 1fr;gap:10px;margin-bottom:17px}.fiscal-expedient-meta>div{min-width:0;border:1px solid #e1ebf0;border-radius:10px;background:#fff;padding:9px 11px;display:grid;gap:3px}.fiscal-expedient-meta span{font-size:10px;color:#71818c;text-transform:uppercase;font-weight:800}.fiscal-expedient-meta b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fiscal-timeline{display:grid;grid-template-columns:repeat(6,minmax(90px,1fr));gap:0;list-style:none;margin:0;padding:0}.fiscal-timeline li{position:relative;display:grid;justify-items:center;text-align:center;gap:4px;padding:0 5px}.fiscal-timeline li:not(:last-child)::after{content:"";position:absolute;height:2px;background:#dce8ee;left:calc(50% + 14px);right:calc(-50% + 14px);top:12px}.fiscal-timeline li.done:not(:last-child)::after{background:#29a96b}.fiscal-timeline i{position:relative;z-index:1;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#e7eef2;color:#667780;font-style:normal;font-size:11px;font-weight:900}.fiscal-timeline .done i{background:#29a96b;color:#fff}.fiscal-timeline span{font-size:11px;font-weight:800}.fiscal-timeline small{font-size:10px;color:#778792}.fiscal-timeline .done small{color:#23875a}@media(max-width:900px){.fiscal-expedient-meta{grid-template-columns:1fr}.fiscal-timeline{grid-template-columns:1fr;gap:8px}.fiscal-timeline li{grid-template-columns:28px 1fr auto;justify-items:start;text-align:left;align-items:center}.fiscal-timeline li::after{display:none}.fiscal-expedient-head{display:block}.fiscal-expedient-head>small{display:block;margin-top:5px}}

/* v12.8.454 — ruta fiscal compacta */
.fiscal-state-tools{display:flex;align-items:center;justify-content:flex-end;gap:5px;white-space:nowrap}.fiscal-expedient-toggle{margin:0;border:1px solid #d8e7ef;background:#f7fbfd;color:#477286;border-radius:999px;padding:3px 7px;text-decoration:none;font-size:8.5px;line-height:1;letter-spacing:.1px}.fiscal-expedient-toggle:hover{border-color:#8eb9cb;background:#eef8fc}.fiscal-credit-link{font-size:8px!important}.fiscal-expedient{padding:11px 16px 13px}.fiscal-expedient-head{margin-bottom:8px}.fiscal-expedient-head span{font-size:8px}.fiscal-expedient-head b{font-size:12px}.fiscal-expedient-meta{gap:7px;margin-bottom:11px}.fiscal-expedient-meta>div{padding:6px 8px;border-radius:7px}.fiscal-expedient-meta span{font-size:8px}.fiscal-expedient-meta b{font-size:9px}.fiscal-timeline{grid-template-columns:repeat(5,minmax(70px,1fr))}.fiscal-timeline i{width:20px;height:20px;font-size:9px}.fiscal-timeline li:not(:last-child)::after{top:9px;left:calc(50% + 11px);right:calc(-50% + 11px)}.fiscal-timeline span{font-size:9px}@media(max-width:900px){.fiscal-state-tools{flex-wrap:wrap}.fiscal-timeline{grid-template-columns:repeat(5,minmax(58px,1fr));gap:0}.fiscal-timeline li{display:grid;grid-template-columns:1fr;justify-items:center;text-align:center}.fiscal-timeline li:not(:last-child)::after{display:block}.fiscal-expedient{padding:9px}.fiscal-expedient-meta{grid-template-columns:1fr}}

/* v12.8.455 — filtros fiscales proporcionados y fecha legible */
@media(min-width:1181px){.fiscal-docs-compact .fiscal-filterbar-compact{grid-template-columns:170px 170px 178px 150px minmax(180px,230px) 116px!important;justify-content:start!important}.fiscal-docs-compact .fiscal-search-wrap{width:100%;max-width:230px}}
.fiscal-docs-compact .date-control{min-width:0!important}.fiscal-docs-compact .date-control input[type="date"]{box-sizing:border-box!important;width:100%!important;min-width:0!important;padding-left:10px!important;padding-right:30px!important;font-variant-numeric:tabular-nums!important}.fiscal-docs-compact .date-control input[type="date"]::-webkit-calendar-picker-indicator{width:15px!important;height:15px!important;margin:0!important;padding:0!important;cursor:pointer!important}
@media(max-width:1180px) and (min-width:701px){.fiscal-docs-compact .fiscal-filterbar-compact{grid-template-columns:minmax(165px,1fr) minmax(165px,1fr) minmax(170px,1fr)!important}.fiscal-docs-compact .fiscal-search-wrap{max-width:260px}}

/* v12.8.456 — acción de nota de crédito sin abreviaturas */
.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{grid-template-columns:145px minmax(190px,1.7fr) 68px 94px 100px 100px 160px!important}.fiscal-state-tools{gap:7px}.fiscal-credit-link{white-space:nowrap!important;font-size:8px!important}.fiscal-credit-link.create{color:#b42318!important}.fiscal-credit-link.create:hover{text-decoration:underline}
@media(max-width:1050px){.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{min-width:900px!important}}

/* v12.8.457 — acciones fiscales contextuales y documentos relacionados */
.fiscal-context-action{appearance:none;border:0;background:transparent;padding:2px 0;font:inherit;font-size:8px;font-weight:900;white-space:nowrap;cursor:pointer}.fiscal-context-action.wait{color:#936119}.fiscal-context-action.bad{color:#b42318}.fiscal-context-action:hover{text-decoration:underline}.fiscal-context-action:disabled{opacity:.55;cursor:wait}.fiscal-doc-relation{display:block!important;margin-top:2px;color:#367a9e!important;font-size:8px!important;font-weight:800!important;text-transform:none!important;letter-spacing:0!important}.fiscal-credit-link.ok{color:#287956!important}.fiscal-credit-link.wait{color:#936119!important}.fiscal-credit-link.bad{color:#b42318!important}

/* v12.8.458 — reenvío de correo y autoría del comprobante */
.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{grid-template-columns:145px minmax(220px,1.7fr) 68px 94px 100px 100px 205px!important}.fiscal-doc-author{display:block!important;margin-top:2px;color:#5f7080!important;font-size:8px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important}.fiscal-email-action{appearance:none;border:0;background:transparent;padding:2px 0;color:#087eb7;font:inherit;font-size:8px;font-weight:900;white-space:nowrap;cursor:pointer}.fiscal-email-action:hover{text-decoration:underline}.fiscal-email-action:disabled{opacity:.55;cursor:wait}.fiscal-state-tools{flex-wrap:wrap!important;row-gap:3px!important}
@media(max-width:1050px){.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{min-width:980px!important}}

/* v12.8.459 — estado limpio, acciones separadas y varios destinatarios */
.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{grid-template-columns:135px minmax(205px,1.6fr) 62px 88px 94px 92px 80px 250px!important}.fiscal-doc-head-direct::after{content:"ACCIONES";display:block}.fiscal-doc-state{justify-self:center!important;align-items:center!important}.fiscal-doc-actions{min-width:0;display:flex;justify-content:flex-end;align-items:center}.fiscal-doc-actions .fiscal-state-tools{justify-content:flex-end!important}.fiscal-email-modal{width:min(640px,calc(100vw - 36px))}.fiscal-email-document{display:grid;gap:3px;margin:15px 0 12px;padding:10px 12px;border:1px solid #e1e9ef;border-radius:10px;background:#f8fbfd}.fiscal-email-document span{font-size:9px;font-weight:900;color:#6b7b88;text-transform:uppercase}.fiscal-email-document b{font-size:12px;overflow-wrap:anywhere}.fiscal-email-document small{color:#6b7b88}.fiscal-email-modal textarea{min-height:92px!important}.fiscal-email-modal .login-error{margin:9px 0 0}
@media(max-width:1050px){.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{min-width:1080px!important}}

/* prioridad final v12.8.461 */
.fiscal-doc-actions .fiscal-credit-link.create,.fiscal-doc-actions .fiscal-email-action{border-color:#cde3ee!important;background:#f3faff!important;color:#0877aa!important}.fiscal-doc-actions .fiscal-credit-link.create:hover,.fiscal-doc-actions .fiscal-email-action:hover{border-color:#9fcbdc!important;background:#eaf7fc!important;color:#0877aa!important}

/* v12.8.461 — acciones azules y modal de reenvío refinado */
.fiscal-doc-actions .fiscal-credit-link.create,.fiscal-doc-actions .fiscal-email-action{border:1px solid #cde3ee!important;background:#f3faff!important;color:#0877aa!important}.fiscal-doc-actions .fiscal-credit-link.create:hover,.fiscal-doc-actions .fiscal-email-action:hover{border-color:#9fcbdc!important;background:#eaf7fc!important}.fiscal-email-modal{width:min(560px,calc(100vw - 32px))!important;padding:17px 18px 15px!important;border-radius:16px!important}.fiscal-email-modal .web-nc-head{gap:12px!important}.fiscal-email-modal .web-nc-head h3{font-size:20px!important;margin:2px 0 3px!important}.fiscal-email-modal .web-nc-head p{font-size:11px!important}.fiscal-email-modal .web-nc-close{width:31px!important;height:31px!important;border-radius:9px!important}.fiscal-email-modal .fiscal-email-document{margin:11px 0 10px!important;padding:8px 10px!important;border-radius:9px!important}.fiscal-email-modal textarea{min-height:68px!important;padding:9px 10px!important;border-radius:9px!important}.fiscal-email-modal .web-nc-reason-label small{font-size:8.5px!important}.fiscal-email-modal .web-nc-actions{gap:7px!important;padding-top:11px!important}.fiscal-email-modal .web-nc-actions button{flex:0 0 auto!important;width:auto!important;min-width:108px!important;min-height:34px!important;height:34px!important;padding:0 13px!important;border-radius:9px!important;font-size:10px!important;font-weight:850!important}.fiscal-email-modal .web-nc-actions .soft{background:#f7f9fb!important;border:1px solid #dfe6eb!important;color:#526574!important}.fiscal-email-modal .web-nc-actions .primary{min-width:142px!important;box-shadow:0 3px 8px rgba(9,135,190,.14)!important}
@media(max-width:520px){.fiscal-email-modal{padding:15px!important}.fiscal-email-modal .web-nc-actions{display:grid!important;grid-template-columns:1fr 1.35fr!important}.fiscal-email-modal .web-nc-actions button{width:100%!important;min-width:0!important}}

/* v12.8.460 — estado alineado y acciones verticales legibles */
.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{grid-template-columns:135px minmax(205px,1.6fr) 62px 88px 94px 92px 100px 220px!important}.fiscal-doc-head-direct>span:nth-child(7){text-align:center!important}.fiscal-doc-head-direct::after{text-align:center!important;align-self:center!important}.fiscal-doc-row-direct{min-height:66px!important}.fiscal-doc-state{width:100%!important;justify-self:stretch!important;align-items:center!important;justify-content:center!important;text-align:center!important}.fiscal-doc-actions{width:100%!important;justify-content:center!important;align-items:center!important}.fiscal-doc-actions .fiscal-state-tools{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;justify-content:center!important;gap:6px!important;width:100%!important;max-width:190px!important;white-space:normal!important}.fiscal-doc-actions button{box-sizing:border-box!important;width:100%!important;min-height:30px!important;margin:0!important;padding:5px 10px!important;border-radius:8px!important;font-size:9.5px!important;line-height:1.15!important;text-align:center!important;text-decoration:none!important}.fiscal-doc-actions .fiscal-credit-link.create{border:1px solid #efcccc!important;background:#fff6f6!important;color:#a92525!important}.fiscal-doc-actions .fiscal-email-action{border:1px solid #cde3ee!important;background:#f3faff!important;color:#0877aa!important}.fiscal-doc-actions .fiscal-context-action.bad{border:1px solid #efcccc!important;background:#fff6f6!important}.fiscal-doc-actions .fiscal-context-action.wait{border:1px solid #ead9b5!important;background:#fffaf0!important}.fiscal-doc-actions .fiscal-expedient-toggle{border:1px solid #d5e5ed!important;background:#f7fbfd!important;color:#477286!important}
@media(max-width:1050px){.fiscal-docs-compact .fiscal-doc-head-direct,.fiscal-docs-compact .fiscal-doc-row-direct{min-width:1080px!important}}

/* prioridad cromática final v12.8.461 */
.fiscal-doc-actions .fiscal-credit-link.create,.fiscal-doc-actions .fiscal-email-action{border-color:#cde3ee!important;background:#f3faff!important;color:#0877aa!important}.fiscal-doc-actions .fiscal-credit-link.create:hover,.fiscal-doc-actions .fiscal-email-action:hover{border-color:#9fcbdc!important;background:#eaf7fc!important;color:#0877aa!important}

/* v12.8.462 — botón de envío más proporcionado */
.fiscal-email-modal .web-nc-actions .primary{min-width:128px!important;padding-inline:11px!important;font-size:9.5px!important}.fiscal-email-modal .web-nc-actions .soft{min-width:92px!important;padding-inline:11px!important}

/* v12.8.463 — cabecera fiscal sin textos redundantes */
.fiscal-docs-compact .fiscal-docs-title{display:none!important}.fiscal-docs-compact .fiscal-compact-top{justify-content:flex-end!important;min-height:0!important;margin-bottom:5px!important}.fiscal-docs-compact .fiscal-quick-top{margin-left:auto!important}

/* v12.8.464 — las tarjetas sustituyen el filtro Estado */
.fiscal-docs-compact .fiscal-filterbar-compact label:has(#fiscalState){display:none!important}@media(min-width:1181px){.fiscal-docs-compact .fiscal-filterbar-compact{grid-template-columns:170px 170px 165px minmax(220px,1fr) 116px!important}.fiscal-docs-compact .fiscal-search-wrap{max-width:none!important}}

/* v12.8.465 — fechas y periodos rápidos en una sola línea */
.fiscal-docs-compact .fiscal-compact-top{display:none!important}.fiscal-docs-compact .fiscal-filterbar-compact>.fiscal-quick-top{margin:0!important;align-self:end!important;display:grid!important;grid-template-columns:repeat(4,minmax(48px,1fr))!important;gap:6px!important}.fiscal-docs-compact .fiscal-filterbar-compact>.fiscal-quick-top button{min-width:0!important;padding-inline:8px!important}@media(min-width:1181px){.fiscal-docs-compact .fiscal-filterbar-compact{grid-template-columns:160px 160px 250px 145px minmax(190px,1fr) 112px!important;align-items:end!important}}
@media(max-width:1180px) and (min-width:701px){.fiscal-docs-compact .fiscal-filterbar-compact>.fiscal-quick-top{grid-column:1/3!important}.fiscal-docs-compact .fiscal-search-wrap{grid-column:auto!important}}

/* ===== v12.8.468 · Automatización mensual de IVA ===== */
.hc-vat-automation{display:grid;gap:18px}.hc-vat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.hc-vat-head h4{margin:3px 0 5px}.hc-vat-head p{margin:0;max-width:680px;color:var(--muted,#667085);line-height:1.45}.hc-vat-head .hc-toggle{flex:0 0 auto;margin-top:4px}.hc-vat-grid{align-items:end}.hc-vat-options{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:12px 14px;border:1px solid #dbe5f0;border-radius:12px;background:#f8fbff}.hc-vat-options label{display:flex;align-items:center;gap:8px;font-weight:700;color:#344054}.hc-vat-options input{accent-color:#1378d1}.hc-vat-schedule,.hc-vat-last{display:grid;grid-template-columns:minmax(110px,auto) minmax(220px,1fr);gap:3px 14px;align-items:center;padding:12px 14px;border-radius:12px;background:#edf7ff;border:1px solid #cfe7fb}.hc-vat-schedule span,.hc-vat-last span{grid-row:1/3;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#1670b8}.hc-vat-schedule b,.hc-vat-last b{color:#17324d}.hc-vat-schedule small,.hc-vat-last small{color:#61758a}.hc-vat-last{background:#f8fafc;border-color:#e2e8f0}.hc-vat-last span{color:#64748b}.hc-vat-automation.is-disabled .hc-vat-grid,.hc-vat-automation.is-disabled .hc-vat-options,.hc-vat-automation.is-disabled .hc-vat-schedule{opacity:.62}@media(max-width:760px){.hc-vat-head{flex-direction:column;gap:12px}.hc-vat-schedule,.hc-vat-last{grid-template-columns:1fr}.hc-vat-schedule span,.hc-vat-last span{grid-row:auto}.hc-vat-options{align-items:flex-start;flex-direction:column;gap:10px}}

/* v12.8.473 — acción Hacienda compacta */
#haciendaForm .hc-actions{position:static!important;bottom:auto!important;padding:2px 0 0!important;background:none!important}
#haciendaForm .hc-actions .primary{width:auto!important;min-width:0!important;height:38px!important;padding:0 17px!important;border-radius:9px;font-size:.86rem}
