:root{--ink:#17201c;--muted:#708078;--paper:#f3f5f1;--line:#dfe5de;--acid:#d7ff52;--green:#204b3c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.shell{display:grid;grid-template-columns:235px 1fr;min-height:100vh}aside{position:fixed;inset:0 auto 0 0;width:235px;background:#183d31;color:#fff;padding:28px 18px 20px;display:flex;flex-direction:column}.brand,.login-brand{display:flex;align-items:center;gap:12px}.brand{padding:0 10px 35px}.brand>b,.login-brand>b{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--acid);color:#183d31;font:bold 25px Georgia}.brand strong,.brand small,.login-brand strong,.login-brand small{display:block}.brand strong{letter-spacing:2px}.brand small,.login-brand small{color:#9eb6ac;font-size:9px;letter-spacing:3px;margin-top:3px}nav{display:flex;flex-direction:column;gap:5px}nav a{color:#bdd0c8;padding:12px 13px;border-radius:9px;text-decoration:none;font-size:14px;display:flex;align-items:center;gap:12px}nav a i{font-style:normal;font-size:18px;width:20px;text-align:center}nav a em{margin-left:auto;background:#f29b7b;color:#3d2117;padding:2px 7px;border-radius:10px;font-size:11px;font-style:normal}nav a.active{background:var(--acid);color:#193a30;font-weight:700}.profile{margin-top:auto;border-top:1px solid #315448;padding:20px 5px 0;display:flex;align-items:center;gap:9px}.profile>span,.user-row>span{width:36px;height:36px;border-radius:50%;background:#e7b98d;color:#482d1c;display:grid;place-items:center;font-size:12px;font-weight:800}.profile div{min-width:0;flex:1}.profile strong,.profile small{display:block}.profile strong{font-size:12px}.profile small{font-size:9px;color:#94ada3;margin-top:3px}.profile>a{color:#cbdad4;font-size:10px}.content{grid-column:2;padding:34px 40px 55px;max-width:1500px;width:100%;margin:auto}header{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}header p,.panel small,.card small,.modal small{font-size:9px;letter-spacing:1.6px;color:#718078;font-weight:800;margin:0 0 8px}h1{font:700 34px Georgia;margin:0}.primary{border:0;border-radius:9px;padding:12px 16px;font-weight:700;cursor:pointer;background:#214b3c;color:#fff}.small{padding:9px 12px}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:15px}.card,.panel{border-radius:15px;padding:22px;background:#fff;border:1px solid var(--line)}.card.cash{background:#1c4638;color:#fff;border:0;min-height:175px}.card h2{font:700 34px Georgia;margin:17px 0 6px}.card.cash p{color:#b6c8c0;font-size:12px}.card.cash>strong{display:block;font:700 28px Georgia;margin-top:35px}.metric h2 em{font:normal 12px Arial;color:#849087}.metric p{font-size:11px;color:#a25738}.grid-two,.rezago-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}.title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.title h3,.panel h3{font:700 20px Georgia;margin:0}.title>a{font-size:11px;color:#385247;text-decoration:none}.count{background:#ffdfd1;color:#a64b28;padding:5px 9px;border-radius:13px;font-size:11px}.list-row,.cash-row,.user-row{display:flex;align-items:center;border-top:1px solid #edf0ec;padding:12px 0;gap:10px}.list-row>div,.cash-row>div,.user-row>div{flex:1}.list-row strong,.list-row small,.cash-row strong,.cash-row small,.user-row strong,.user-row small{display:block}.list-row small,.cash-row small,.user-row small{letter-spacing:0;margin:3px 0 0;font-weight:400}.list-row b{font-size:12px}.badge{width:31px;height:31px;border-radius:8px;background:#efffbd;display:grid;place-items:center}.full{min-height:500px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:#78857f;font-size:9px;letter-spacing:1px;padding:13px 10px;border-bottom:1px solid var(--line)}td{padding:14px 10px;border-bottom:1px solid #edf0ec;white-space:nowrap}td select{border:1px solid var(--line);border-radius:6px;padding:6px}.pill{display:inline-block;border-radius:13px;padding:5px 9px;font-size:10px;font-weight:700}.pill.red{background:#ffe5dc;color:#a34525}.pill.green{background:#e4f4dc;color:#316834}.cash-row>span{font-size:20px}.cash-row b{font-size:16px}.big-row{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line)}.panel>.primary{margin-top:25px}.user-row b{font-size:10px;background:#e4f4dc;color:#316834;padding:5px 8px;border-radius:10px}.inline-form{display:flex;gap:10px;margin-top:16px}.inline-form input{border:1px solid var(--line);border-radius:8px;padding:11px;min-width:250px}.overlay{display:none;position:fixed;inset:0;background:rgba(10,25,20,.55);place-items:center;z-index:10;padding:20px}.overlay.show{display:grid}.modal{width:min(650px,100%);max-height:92vh;overflow:auto;background:#fff;padding:27px;border-radius:18px;box-shadow:0 20px 70px #09201855}.modal-head{display:flex;justify-content:space-between;margin-bottom:20px}.modal-head h2{font:700 25px Georgia;margin:0}.modal-head button{border:0;background:#eff2ee;width:32px;height:32px;border-radius:50%;font-size:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label,.login-card label,.install-card label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700}.form-grid label.wide{grid-column:1/-1}.modal input,.modal select,.modal textarea,.login-card input,.install-card input{width:100%;border:1px solid #d8dfd8;padding:12px;border-radius:9px;background:#fff}.modal textarea{min-height:70px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.modal-actions button{border:0;padding:11px 15px;border-radius:9px;font-weight:700}.toast{position:fixed;right:30px;bottom:30px;border-radius:10px;padding:14px 18px;box-shadow:0 10px 30px #1235;z-index:20;font-size:12px}.toast.success,.notice.success{background:#173d31;color:#fff}.toast.error,.notice.error{background:#8d342c;color:#fff}.login-page,.install-page{min-height:100vh;display:grid;place-items:center;background:#183d31;padding:20px}.login-card,.install-card{width:min(440px,100%);background:#fff;border-radius:18px;padding:34px;box-shadow:0 25px 80px #071c1555}.login-brand strong{letter-spacing:2px}.login-card h1,.install-card h1{font:700 30px Georgia;margin:35px 0 8px}.login-card>p,.install-card>p{color:#6d7a74;font-size:13px}.login-card form,.install-card form{display:grid;gap:15px;margin-top:25px}.notice{padding:12px;border-radius:8px;font-size:12px;margin:18px 0}.link-button{display:inline-block;text-decoration:none;margin-top:20px}.install-card hr{border:0;border-top:1px solid var(--line);width:100%}
@media(max-width:900px){.shell{grid-template-columns:75px 1fr}aside{width:75px;padding:22px 10px}.brand div,.profile div,.profile>a,nav a{font-size:0}.brand{padding:0 8px 30px}.profile{justify-content:center}nav a{justify-content:center;padding:12px}.content{padding:25px 18px}.hero-grid{grid-template-columns:1fr 1fr}.card.cash{grid-column:1/-1}.grid-two{grid-template-columns:1fr}}@media(max-width:640px){.shell{display:block}aside{position:fixed;z-index:5;inset:auto 0 0;width:auto;height:65px;flex-direction:row;padding:7px}.brand,.profile{display:none}nav{width:100%;flex-direction:row;justify-content:space-around}nav a{padding:8px;display:block;text-align:center}nav a i{display:block;margin:auto}nav a.active{font-size:9px}.content{padding:22px 13px 90px}.hero-grid,.grid-two,.rezago-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}header h1{font-size:28px}}
.password-field{position:relative;display:block;width:100%}.password-field>input{padding-right:48px!important}.password-eye{position:absolute!important;right:5px;top:50%;transform:translateY(-50%);width:38px!important;height:34px!important;min-width:0!important;padding:0!important;margin:0!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#52645c!important;display:grid!important;place-items:center!important;cursor:pointer;font-size:17px!important;line-height:1!important}.password-eye:hover,.password-eye.visible{background:#e8efeb!important;color:#176348!important}

.reports-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:20px;margin-bottom:20px}.supplier-report textarea{width:100%;min-height:230px;margin:16px 0 12px;padding:18px;border:1px solid #dce5e0;border-radius:14px;background:#f7faf8;color:#173a30;font:600 15px/1.7 monospace;resize:vertical}.report-actions,.alert-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.report-summary{display:flex;flex-direction:column;justify-content:space-between;background:#153f34!important;color:white;min-height:270px}.report-summary small,.report-summary p,.report-summary span{color:#c8ded6}.report-summary h2{font-size:64px;margin:16px 0}.customer-alert-card{display:grid;grid-template-columns:minmax(240px,1fr) minmax(300px,1.4fr) auto;gap:22px;align-items:center;padding:20px 0;border-bottom:1px solid #e5ebe8}.customer-alert-card:last-child{border-bottom:0}.alert-person{display:flex;align-items:center;gap:12px}.alert-person>span{width:44px;height:44px;border-radius:13px;background:#e8f2ed;color:#176348;display:grid;place-items:center;font-weight:800}.alert-person div{display:grid;gap:3px}.alert-person small{color:#64756e}.customer-alert-card ul{margin:0;padding-left:20px;color:#7b4335}.customer-alert-card li+li{margin-top:5px}.customer-alert-card .copy-feedback{grid-column:1/-1;margin:0}.alert-actions{justify-content:flex-end}@media(max-width:900px){.reports-grid{grid-template-columns:1fr}.customer-alert-card{grid-template-columns:1fr}.alert-actions{justify-content:flex-start}}
.blue-rate-widget{display:grid;gap:2px;padding:8px 12px;border:1px solid #cbdaf3;border-radius:12px;background:#edf4ff;color:#123f78;line-height:1.15}.blue-rate-widget strong{font-size:14px}.blue-rate-widget small{font-size:10px;color:#52709a}.business-report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 20px}.business-report-grid .card{min-height:150px}.business-report-grid h2{font-size:28px}.report-filter{display:flex;align-items:end;gap:14px;margin-bottom:20px}.report-filter>div{margin-right:auto}.report-filter label{min-width:150px}.report-products{margin-bottom:20px}.account-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.account-invoices-panel .account-payment-open{display:block;margin-top:8px}.account-customer-link{font-weight:700;color:var(--primary,#164f92)}.customer-head-actions form{margin:0}.cash-row .danger-button{margin-left:4px}
html[data-theme="dark"] .blue-rate-widget{background:#132b4a;border-color:#31577e;color:#f4c542}html[data-theme="dark"] .blue-rate-widget small{color:#b9c9de}
.transfer-balance-info{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:7px;padding:8px 10px;border-radius:10px;background:#edf4ff;color:#31577e;font-size:12px}.transfer-balance-info[hidden]{display:none}.transfer-balance-info strong{color:#123f78;font-size:13px}.transfer-balance-info .transfer-all-button{padding:5px 9px;font-size:11px;white-space:nowrap}html[data-theme="dark"] .transfer-balance-info{background:#132b4a;color:#b9c9de}html[data-theme="dark"] .transfer-balance-info strong{color:#f4c542}
.supplier-account-summary{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px;margin-bottom:20px}.supplier-account-summary .card{min-height:170px}.supplier-account-summary h2{font-size:30px}.supplier-ledger .table-wrap{max-height:65vh}.supplier-ledger th{position:sticky;top:0;z-index:2}.supplier-direction-note{margin-top:14px;padding:11px 14px;border-radius:11px;font-weight:700}.supplier-direction-note.increase{background:#fff1ee;color:#a53b31}.supplier-direction-note.decrease{background:#eaf8f1;color:#147351}.supplier-movement-form [hidden]{display:none!important}html[data-theme="dark"] .supplier-direction-note.increase{background:#46231f;color:#ffb5a9}html[data-theme="dark"] .supplier-direction-note.decrease{background:#17372e;color:#8bdfbd}
@media(max-width:850px){.supplier-account-summary{grid-template-columns:1fr}.supplier-ledger .table-wrap{max-height:none}}
.vehicle-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.vehicle-catalog-grid section{padding:14px;border:1px solid #dce5ee;border-radius:12px;background:#f7faff}.vehicle-catalog-grid strong{color:#164f92}.vehicle-catalog-grid p{margin:6px 0 0;color:#617083;font-size:12px;line-height:1.5}.vehicle-row>.danger-button{margin-left:6px}@media(max-width:900px){.vehicle-catalog-grid{grid-template-columns:1fr}}
@media(max-width:1050px){.business-report-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.blue-rate-widget{padding:6px 8px}.blue-rate-widget small{display:none}.business-report-grid,.account-summary-grid{grid-template-columns:1fr}.report-filter{align-items:stretch;flex-direction:column}.report-filter>div{margin-right:0}.report-filter label{width:100%}}

.stock-copy-shortcut{display:flex;align-items:center;gap:8px}.stock-copy-shortcut .copy-feedback{position:absolute;margin-top:64px;right:22px;white-space:nowrap}.stock-table-wrap{max-height:calc(100vh - 230px);overflow:auto}.stock-table-wrap thead th{position:sticky;top:0;z-index:4;background:#fff;border-top:1px solid var(--line);box-shadow:0 2px 0 var(--line)}

.accordion-nav{flex:1;min-height:0;overflow-y:auto;padding-right:4px;scrollbar-width:thin}.nav-group{border-bottom:1px solid #315448}.nav-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;color:#9eb6ac;padding:12px 11px 9px;font-size:10px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;cursor:pointer}.nav-group-toggle i{font-style:normal;font-size:16px;transition:transform .2s}.nav-group.open .nav-group-toggle{color:#fff}.nav-group.open .nav-group-toggle i{transform:rotate(180deg)}.nav-group-items{display:flex;flex-direction:column;max-height:0;overflow:hidden;transition:max-height .22s ease}.nav-group.open .nav-group-items{max-height:430px;padding-bottom:7px}.nav-action{color:#bdd0c8;padding:11px 13px;border:0;border-radius:9px;background:transparent;text-align:left;font-size:13px;display:flex;align-items:center;gap:12px;cursor:pointer}.nav-action:hover,nav a:hover{background:#294e42;color:#fff}.nav-action i{font-style:normal;font-size:18px;width:20px;text-align:center}.scrap-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:22px}.scrap-panel>.scrap-actions .primary{margin:0}.scrap-help{display:block;margin-top:14px!important;line-height:1.5}.scrap-other[hidden]{display:none}.scrap-history{margin-top:16px;min-height:0}
/* Reporte gerencial master */
.master-report-filter{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(4,minmax(135px,.7fr)) auto;gap:14px;align-items:end}
.master-report-filter label{display:grid;gap:6px;font-size:12px;font-weight:700;color:var(--muted)}
.master-report-filter input,.master-report-filter select{width:100%}
.master-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.master-metrics .balance-positive{border-top:4px solid #1b8a63}
.master-metrics .balance-negative{border-top:4px solid #c94b45}
.master-metrics .positive h2{color:#167655}
.master-metrics .negative h2,.master-metrics .balance-negative h2{color:#b33a35}
.master-report-panels{margin-top:18px}
.report-rank .badge{font-size:18px;font-weight:900;background:var(--yellow);color:#17233d}
.stock-health-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}
.stock-health-counts span{display:grid;gap:3px;padding:12px;border-radius:12px;background:var(--surface-soft);font-size:11px;text-transform:uppercase}
.stock-health-counts b{font-size:24px}
.stock-health-counts .green{color:#167655}.stock-health-counts .red{color:#b33a35}.stock-health-counts .amber{color:#a66b00}
.sticky-report-table thead th{position:sticky;top:0;z-index:2;background:var(--surface)}
@media(max-width:1100px){.master-report-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.master-report-filter>div{grid-column:1/-1}.master-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.master-report-filter,.master-metrics{grid-template-columns:1fr}.stock-health-counts{grid-template-columns:repeat(2,1fr)}}
.whatsapp-link,.whatsapp-direct{color:#138a55!important;font-weight:800;text-decoration:none;cursor:pointer}
.whatsapp-link:hover,.whatsapp-direct:hover{text-decoration:underline}
.whatsapp-link:focus-visible,.whatsapp-direct:focus-visible{outline:3px solid rgba(19,138,85,.25);outline-offset:3px;border-radius:5px}
.whatsapp-action{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border-radius:10px;background:#1da96b;color:#fff!important;font-size:12px;font-weight:800;text-decoration:none}
.whatsapp-action:hover{background:#168b58}
