
:root{--navy:#052d5b;--navy2:#0b417d;--yellow:#ffd400;--bg:#f3f6fa;--white:#fff;--text:#142033;--muted:#68778b;--line:#dce4ee;--green:#16834b;--red:#c63c3c;--orange:#d97706;--shadow:0 14px 35px rgba(5,45,91,.09)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{display:flex;min-height:100vh}.sidebar{width:245px;position:fixed;inset:0 auto 0 0;background:linear-gradient(180deg,#062648,#07386d);color:#fff;padding:24px 17px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;gap:12px;align-items:center;padding:2px 8px 26px}.brand-logo{width:56px;height:56px;display:block;object-fit:contain;border-radius:0;background:transparent}.brand-logo-box{display:flex;align-items:center;justify-content:center}.brand b{display:block;letter-spacing:.08em}.brand small{color:#b8c8d8}.nav{display:grid;gap:8px}.nav button{border:0;color:#c9d7e4;background:transparent;text-align:left;padding:12px 14px;border-radius:10px;font-weight:700}.nav button:hover,.nav button.active{color:#fff;background:rgba(255,255,255,.1)}.nav button.active{box-shadow:inset 3px 0 0 var(--yellow)}
.nav button.nav-locked{color:#8fa5b9;opacity:.78;position:relative;padding-right:34px}
.nav button.nav-locked:hover{background:rgba(255,255,255,.055);color:#aebdcc}
.nav button.nav-locked::after{content:'🔒';position:absolute;right:11px;top:50%;transform:translateY(-50%);font-size:11px;filter:grayscale(1);opacity:.85}
.nav-area.nav-area-locked>.nav-area-toggle{opacity:.72}
.permission-locked{opacity:.58;filter:saturate(.45)}.sidebar-note{margin-top:auto;border-top:1px solid rgba(255,255,255,.15);padding:16px 8px 0;color:#b8c8d8;font-size:12px}.main{margin-left:245px;width:calc(100% - 245px);padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.topbar h1{margin:0;font-size:28px}.eyebrow{font-size:11px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.11em;margin-bottom:4px}.date-chip{background:#fff;border:1px solid var(--line);padding:10px 13px;border-radius:10px;color:var(--muted);font-size:13px}.view{display:none}.view.active{display:block}.panel{background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow);padding:21px}.hero{background:linear-gradient(135deg,#07315f,#0b4a8d);color:#fff;padding:31px;border-radius:21px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow)}.hero h2{font-size:32px;margin:8px 0}.hero p{color:#d5e2ee;max-width:650px;line-height:1.55}.hero-badge{font-size:11px;font-weight:900;background:rgba(255,212,0,.16);color:#ffe35f;padding:7px 10px;border-radius:999px}.primary,.secondary,.ghost,.danger{border:1px solid transparent;border-radius:10px;padding:10px 14px;font-weight:850}.primary{background:var(--yellow);color:var(--navy)}.secondary{background:var(--navy);color:#fff}.ghost{background:#fff;color:var(--navy);border-color:var(--line)}.danger{background:#fff0f0;color:var(--red);border-color:#f0caca}.small{padding:8px 11px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:17px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px;box-shadow:var(--shadow)}.stat span{display:block;color:var(--muted);font-size:12px}.stat strong{display:block;font-size:27px;margin-top:8px}.stat.accent{border-top:4px solid var(--yellow)}.grid2{display:grid;grid-template-columns:1.55fr 1fr;gap:17px}.empty{text-align:center;padding:35px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:17px}.section-head h3{margin:0 0 4px}.section-head p{margin:0;color:var(--muted);font-size:13px}.form-grid{display:grid;gap:13px}.form-grid.four{grid-template-columns:repeat(4,1fr)}.form-grid.three{grid-template-columns:repeat(3,1fr)}label span{display:block;font-size:12px;color:#46576a;font-weight:800;margin-bottom:6px}input,select,textarea{width:100%;border:1px solid #d4dde8;border-radius:9px;padding:10px 11px;outline:none;background:#fff;color:var(--text)}input:focus,select:focus,textarea:focus{border-color:var(--navy2);box-shadow:0 0 0 3px rgba(11,65,125,.08)}input[readonly]{background:#f5f7fa;color:#617084}.dispatch-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:17px}.dispatch-main{display:grid;gap:16px}.sticky{position:sticky;top:18px;height:max-content}.summary-list{margin-top:12px}.summary-list div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px dashed var(--line)}.summary-list span{color:var(--muted)}.summary-list strong.big{font-size:22px;color:var(--navy)}.group-card{border:1px solid #cad8e6;border-radius:15px;overflow:hidden;background:#fff}.group-head{background:linear-gradient(90deg,#eff5fb,#fff);padding:14px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.group-title{display:flex;gap:11px;align-items:center}.group-number{width:31px;height:31px;border-radius:9px;background:var(--yellow);color:var(--navy);font-weight:950;display:grid;place-items:center}.group-title h4{margin:0}.group-title small{display:block;color:var(--muted);margin-top:2px}.group-body{padding:16px}.times-box{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#fff9d5;border:1px solid #f1d85d;padding:12px;border-radius:11px}.group-schedule-box{display:grid;grid-template-columns:.9fr 1fr 1fr;gap:12px;background:#fff9d5;border:1px solid #f1d85d;padding:12px;border-radius:11px}.group-operation-date{font-weight:800}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:11px;margin-top:14px}.truck-table{width:100%;border-collapse:collapse;min-width:1080px}.truck-table th{background:var(--navy);color:#fff;font-size:10px;text-transform:uppercase;padding:9px 7px;text-align:left}.truck-table td{border-top:1px solid var(--line);padding:7px}.truck-table input,.truck-table select{font-size:11px;padding:8px}.truck-table .duplicate{border-color:#d94a4a;background:#fff0f0}.row-actions{display:flex;gap:8px;margin-top:11px}.warning{color:var(--red);font-size:12px;font-weight:800;margin-top:8px;display:none}.preview-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.preview-tabs{display:flex;gap:8px}.preview-tab{border:1px solid var(--line);border-radius:9px;padding:9px 12px;background:#fff;color:var(--navy);font-weight:850}.preview-tab.active{background:var(--navy);color:#fff}.preview-pane{display:none}.preview-pane.active{display:block}.sheet{background:#fff;border:1px solid var(--line);border-radius:13px;padding:22px;box-shadow:var(--shadow);overflow:auto}.sheet-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.sheet-brand{display:flex;gap:10px;align-items:center}.sheet-brand .brand-logo{width:46px;height:46px}.sheet-client-brand{display:flex;align-items:center;justify-content:center;margin-left:auto;margin-right:14px}.sheet-client-brand .brand-logo{width:112px;height:72px;object-fit:contain;background:#fff;padding:3px;border-radius:6px}.sheet-brand strong{display:block}.sheet-brand small{color:var(--muted)}.sheet-title{text-align:right}.sheet-title strong{display:block;font-size:18px;color:var(--navy)}.sheet-title small{color:var(--muted)}.sheet-summary{display:flex;justify-content:flex-end;gap:23px;background:#dfeefb;border-top:1px solid #c7dced;border-bottom:1px solid #c7dced;padding:8px 12px;margin-bottom:10px;font-size:12px}.sheet-summary b{color:#063d80}.sheet-table{width:100%;border-collapse:collapse;min-width:1360px;font-size:10px}.sheet-table th{background:#042f63;color:#fff;padding:7px 6px;border:1px solid #fff3;text-align:center}.sheet-table td{border:1px solid #aab7c5;padding:6px;text-align:center;white-space:nowrap}.sheet-table td.yellow{background:#fff600}.sheet-table tr.group-start td{border-top:2px solid #1d4f7e}.sheet-footer{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-top:12px}.history{display:grid;gap:11px}.history-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px;display:flex;justify-content:space-between;align-items:center}.history-card h4{margin:0 0 4px}.history-card p{margin:0;color:var(--muted);font-size:12px}.history-metrics{display:flex;gap:14px;align-items:center}.history-metrics div{text-align:center}.history-metrics span{display:block;color:var(--muted);font-size:10px}.history-metrics strong{font-size:17px}.fleet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.fleet-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px}.fleet-card .disk{font-size:20px;font-weight:900;color:var(--navy)}.fleet-card p{font-size:12px;line-height:1.5;color:var(--muted)}.capacity{display:inline-block;background:#fff7c8;color:#6a5700;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:900}.pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:850}.pill.green{background:#e4f6eb;color:var(--green)}.pill.orange{background:#fff2dc;color:var(--orange)}
@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}.dispatch-layout,.grid2{grid-template-columns:1fr}.sticky{position:static}.form-grid.four,.form-grid.three{grid-template-columns:repeat(2,1fr)}.fleet-grid{grid-template-columns:repeat(2,1fr)}}

.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.admin-table{width:100%;border-collapse:collapse;min-width:980px}.admin-table th{background:var(--navy);color:#fff;padding:10px 8px;font-size:11px;text-align:left}.admin-table td{border-bottom:1px solid var(--line);padding:10px 8px;font-size:12px}.admin-table tr:hover td{background:#f7faff}.money-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px}.money-card span{display:block;color:var(--muted);font-size:12px}.money-card strong{display:block;font-size:25px;margin-top:7px}.bank-note{background:#fff9d5;border:1px solid #f1d85d;border-radius:11px;padding:12px;font-size:12px;color:#675500}.capacity-field{min-width:70px}.bins-input{min-width:70px}.reason-input{min-width:150px}.field-error{border-color:#d94a4a!important;background:#fff0f0!important}.mobile-menu{display:none;border:0;background:var(--navy);color:#fff;border-radius:9px;padding:9px 11px;font-weight:900}.readonly-zone{background:#eef4fa!important;color:#153a61!important;font-weight:800}.inline-help{display:block;font-size:10px;color:var(--muted);margin-top:4px}
@media(max-width:760px){.sidebar{width:76px;padding:18px 10px}.brand div:not(.brand-logo),.nav button span,.sidebar-note{display:none}.brand{padding-left:6px}.nav button{text-align:center;padding:12px 5px}.main{margin-left:76px;width:calc(100% - 76px);padding:15px}.topbar{align-items:flex-start}.topbar h1{font-size:21px}.date-chip{display:none}.stats{grid-template-columns:1fr 1fr}.form-grid.four,.form-grid.three{grid-template-columns:1fr}.hero{padding:22px}.hero h2{font-size:25px}.fleet-grid{grid-template-columns:1fr}.preview-toolbar{align-items:flex-start;gap:10px;flex-direction:column}.admin-grid{grid-template-columns:1fr 1fr}.mobile-menu{display:block}.topbar{gap:10px}.main{padding:12px}.panel{padding:14px}.group-body{padding:11px}.times-box,.group-schedule-box{grid-template-columns:1fr}.sheet{padding:10px}.nav{font-size:11px}}
@media print{.sidebar,.topbar,.preview-toolbar{display:none!important}.main{margin:0;width:100%;padding:0}.view{display:none!important}#preview-view{display:block!important}.preview-pane{display:none!important}.preview-pane.active{display:block!important}.sheet{border:0;box-shadow:none;padding:5px}.sheet-table{font-size:8px;min-width:0}.sheet-table th,.sheet-table td{padding:4px 3px}@page{size:landscape;margin:8mm}}

/* v1.0 - historial Kardex y respaldo */
.kardex-controls{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.6fr auto;gap:10px;align-items:end}.kardex-controls label{margin:0}.kardex-table{width:100%;border-collapse:collapse;min-width:1550px}.kardex-table th{position:sticky;top:0;z-index:2;background:var(--navy);color:#fff;padding:9px 7px;font-size:10px;text-transform:uppercase;text-align:left}.kardex-table td{padding:8px 7px;border-bottom:1px solid var(--line);font-size:11px;white-space:nowrap}.kardex-table tbody tr:hover td{background:#f5f9fd}.source-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#e8f1fb;color:var(--navy);font-size:10px;font-weight:900}.pager{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:13px}.pager-info{color:var(--muted);font-size:12px}.pager button:disabled{opacity:.42;cursor:not-allowed;box-shadow:none;filter:grayscale(.15)}.pager button[hidden]{display:none!important}.backup-grid{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center}.backup-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.data-origin{background:#eaf6ef;border:1px solid #b7dfc7;color:#155e38;border-radius:11px;padding:11px 13px;font-size:12px;margin-bottom:15px}.compact-stat strong{font-size:22px}.kardex-tabbar{display:flex;gap:8px;flex-wrap:wrap}.kardex-tabbar button.active{background:var(--navy);color:#fff}.unit-source{font-size:10px;color:var(--muted);margin-top:5px}
@media(max-width:1000px){.kardex-controls{grid-template-columns:repeat(2,1fr)}.kardex-controls>button{width:100%}.backup-grid{grid-template-columns:1fr}.admin-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.kardex-controls,.admin-grid{grid-template-columns:1fr}.pager{align-items:stretch;flex-direction:column}.pager button{width:100%}}

.test-banner{position:fixed;top:0;left:245px;right:0;z-index:9999;background:#8a1c1c;color:#fff;text-align:center;padding:7px 12px;font-weight:900;font-size:12px;letter-spacing:.04em}.main{padding-top:58px!important}@media(max-width:760px){.test-banner{left:76px}.main{padding-top:48px!important}}
.bin-preload-panel{margin-bottom:18px;border:1px solid #b6d8df}.bin-preload-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.bin-preload-grid label{display:flex;flex-direction:column;gap:6px}.bin-preload-grid label span{font-size:11px;font-weight:850;color:var(--navy)}.bin-preload-grid .wide-2{grid-column:span 2}.bin-preload-grid .wide-all{grid-column:1/-1}.bin-preload-result{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.bin-preload-pill{border-radius:999px;padding:7px 10px;background:#eef7fb;color:#074d72;font-size:11px;font-weight:900}.bin-preload-pill.error{background:#ffe8e8;color:#a11616}.bin-preload-pill.ok{background:#e6f7ec;color:#13733a}@media(max-width:1000px){.bin-preload-grid{grid-template-columns:repeat(2,1fr)}.bin-preload-grid .wide-2{grid-column:span 2}}
.bin-preload-link-list{display:grid;gap:9px;margin-top:11px}
.bin-preload-link-row{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:center}
.bin-preload-link-row select{width:100%}
.bin-preload-available{border:1px solid #b7d9df;background:#f3fbfc;border-radius:12px;padding:11px 12px}
.bin-preload-available-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}
.bin-preload-available-head strong{color:var(--navy)}
.bin-preload-series{font-size:11px;color:var(--muted);line-height:1.55;word-break:break-word;margin-top:8px}
.bin-preload-empty{border:1px dashed #e0a62c;background:#fff9e9;border-radius:11px;padding:11px;color:#765100;font-size:11px}
.bin-preloads-visible-grid{display:grid;gap:10px}
.bin-preload-visible-card{border:1px solid var(--line);border-radius:13px;background:#fff;padding:12px 14px}
.bin-preload-visible-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:7px}
.bin-preload-visible-head strong{color:var(--navy);font-size:13px}
.bin-preload-visible-head small{color:var(--muted);display:block;margin-top:3px}
.bin-preload-visible-series{font-size:11px;line-height:1.55;color:#334e68;word-break:break-word;background:#f7fafc;border-radius:9px;padding:8px 10px}
.bin-preload-visible-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.bin-preload-visible-meta span{font-size:9px;font-weight:900;border-radius:999px;padding:5px 8px;background:#eef4fa;color:var(--navy)}
.bin-preload-actions{display:flex;justify-content:flex-end;margin-top:9px}
.bin-preload-dispatch-box{margin-top:10px;padding:10px;border:1px solid #dce7ef;background:#f8fbfd;border-radius:10px;display:grid;grid-template-columns:minmax(320px,1fr) auto auto;gap:9px;align-items:end}
.bin-preload-dispatch-box label span{display:block;font-size:10px;font-weight:900;color:var(--navy);margin-bottom:5px}.bin-preload-dispatch-box label small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.bin-preload-dispatch-box select{width:100%}
@media(max-width:1000px){.bin-preload-dispatch-box{grid-template-columns:1fr}.bin-preload-dispatch-box button{width:100%}}

.bin-preload-actions .convert-preload-egress{border-color:#d5ad00;background:#fff9df}


.bin-preload-linked{border:1px solid #a9dfba;background:#effbf3;border-radius:11px;padding:11px;color:#17683a;font-weight:850}
.bin-group-link-preview{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
@media(max-width:850px){.bin-preload-link-row{grid-template-columns:1fr}}

.bins-sync-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.bins-sync-actions{display:flex;align-items:center;gap:8px}
.bins-sync-detail{font-size:10px;opacity:.82;margin-top:4px}
.bins-sync-warning{color:#765100}

.transport-report-builder{margin-bottom:16px}
.transport-report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.transport-report-head h3{margin:0;color:var(--navy);font-size:20px}
.transport-report-head p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
.transport-report-tag{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#e7f6ee;color:#167748;font-size:10px;font-weight:950;white-space:nowrap}
.transport-report-form{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}
.transport-report-form label span{font-size:10px}
.transport-report-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 10px}
.transport-report-toolbar .spacer{flex:1}
.transport-report-note{padding:10px 12px;border-radius:10px;background:#edf8f9;border:1px solid #add7db;color:#075a63;font-size:11px;line-height:1.5;margin-bottom:12px}
.transport-report-table{width:100%;border-collapse:collapse;min-width:1300px;font-size:10px}
.transport-report-table th{background:var(--navy);color:#fff;padding:8px 6px;text-align:left;white-space:nowrap}
.transport-report-table td{border-top:1px solid var(--line);padding:5px;vertical-align:middle}
.transport-report-table input,.transport-report-table select{min-width:78px;padding:7px 7px;font-size:10px;border-radius:7px}
.transport-report-table input[type="checkbox"]{min-width:auto;width:16px;height:16px}
.transport-report-table .money{min-width:88px}
.transport-report-table .wide{min-width:130px}
.transport-report-table .date{min-width:116px}
.transport-report-empty{text-align:center;color:var(--muted);padding:30px!important}
.transport-report-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:12px}
.transport-report-summary div{border:1px solid var(--line);background:#f8fbfe;border-radius:11px;padding:11px}
.transport-report-summary span{display:block;color:var(--muted);font-size:9px}
.transport-report-summary strong{display:block;color:var(--navy);font-size:18px;margin-top:5px}
.transport-report-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:13px}
.transport-report-status{font-size:11px;font-weight:850;color:var(--muted)}
.transport-report-status.ok{color:#167748}.transport-report-status.error{color:#a32727}
.transport-report-saved-table{width:100%;border-collapse:collapse;min-width:1180px;font-size:10px}
.transport-report-saved-table th{background:var(--navy);color:#fff;padding:8px;text-align:left}
.transport-report-saved-table td{border-top:1px solid var(--line);padding:8px;vertical-align:top}
.transport-report-state{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:950;background:#fff0d8;color:#925100}
.transport-report-state.aprobado,.transport-report-state.cobrado{background:#e4f6eb;color:#167748}
.transport-report-state.facturado{background:#e9f0ff;color:#275fbb}
.transport-report-state.corregir{background:#ffe4e4;color:#a32727}
.transport-report-divider{display:flex;align-items:center;gap:10px;margin:18px 0 14px;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.transport-report-divider:before,.transport-report-divider:after{content:"";height:1px;background:var(--line);flex:1}
@media(max-width:1200px){.transport-report-form{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.transport-report-form{grid-template-columns:1fr}.transport-report-summary{grid-template-columns:1fr 1fr}.transport-report-head{flex-direction:column}}

.transport-report-form .wide-2{grid-column:span 2}
.transport-report-form .wide-3{grid-column:span 3}
.transport-report-form .wide-6{grid-column:1/-1}
.transport-report-identity{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
.transport-report-identity div{border:1px solid #b9dce1;background:#f2fafb;border-radius:11px;padding:11px 12px}
.transport-report-identity span{display:block;font-size:9px;font-weight:900;color:#08727d;text-transform:uppercase;letter-spacing:.05em}
.transport-report-identity strong{display:block;color:var(--navy);font-size:12px;line-height:1.45;margin-top:5px}
.transport-report-identity small{display:block;color:var(--muted);margin-top:4px;line-height:1.4}
.report-sector-other[hidden]{display:none!important}
@media(max-width:720px){
  .transport-report-form .wide-2,.transport-report-form .wide-3{grid-column:1/-1}
  .transport-report-identity{grid-template-columns:1fr}
}

.bin-history-quickbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:-2px 0 12px}
.bin-history-quickbar>div{display:flex;gap:7px;flex-wrap:wrap}
.bin-history-quick{border:1px solid #c7d6e5;background:#fff;color:var(--navy);padding:7px 11px;border-radius:999px;font-size:10px;font-weight:950;cursor:pointer}
.bin-history-quick.active{background:var(--navy);color:#fff;border-color:var(--navy)}
#bin-history-filter-status{font-size:10px;font-weight:850;color:var(--muted)}
#bin-history-filter-status.active{color:#075b8c}

.bin-module-tabs{position:relative;z-index:20;pointer-events:auto}
.bin-module-tab{position:relative;z-index:21;pointer-events:auto}
.bin-tab-panel{position:relative;z-index:1}
.bin-preload-availability{margin-top:10px;padding:10px 12px;border:1px solid #cdd9e6;border-radius:10px;background:#f7fafc;color:#46576a;font-size:11px;line-height:1.5}.bin-preload-availability.checking{background:#eef6ff;border-color:#9bbce1;color:#245f9e}.bin-preload-availability.ok{background:#e9f8ef;border-color:#a9dfba;color:#17683a}.bin-preload-availability.blocked{background:#fff0f0;border-color:#efb5b5;color:#9c2c2c}.bin-preload-rule-note{margin-top:8px;padding:9px 11px;border-radius:9px;background:#fff9df;border:1px solid #eed56b;color:#6a5700;font-size:10px;line-height:1.5}

.maintenance-simple-tip{margin-top:12px;padding:11px 13px;border-radius:12px;background:#eef8f3;border:1px solid #cce9d9;color:#155e38;font-size:13px}
.maintenance-tech-card{margin-top:12px;border:1px solid #d9e4ef;border-radius:14px;padding:14px;background:#fbfdff;min-height:170px}
.maintenance-tech-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px}
.maintenance-tech-grid div{padding:8px 0;border-bottom:1px dashed #dbe4ee}
.maintenance-tech-grid small{display:block;color:var(--muted);font-weight:700;text-transform:uppercase;font-size:10px;margin-bottom:3px}
.maintenance-tech-grid b{font-size:13px}
.preventive-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.maintenance-prev-state{font-weight:900;white-space:nowrap}
.maintenance-prev-state.overdue{color:#b91c1c}.maintenance-prev-state.soon{color:#b45309}.maintenance-prev-state.ok{color:#047857}.maintenance-prev-state.unknown{color:#475569}
@media(max-width:900px){.maintenance-tech-grid,.preventive-kpis{grid-template-columns:1fr}}


/* V49 · Viáticos: histórico mensual completo + paginación total + aprobación segura */
/* V54 · Despachos multifecha por grupo + Viáticos carga rápida + FLETE completo + Hielo solo en LIBRAS */
.viatic-v42-history-kpis{display:grid;grid-template-columns:repeat(6,minmax(145px,1fr));gap:10px;padding:14px 18px}.viatic-v42-history-kpis .approved{border-left:4px solid #0d7b79}.viatic-v42-history-kpis .review{border-left:4px solid #d88400}.viatic-v42-history-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding:0 18px 18px}.viatic-v42-history-column{min-width:0;border:1px solid #dbe6ee;border-radius:14px;background:#fff;padding:13px}.viatic-v42-history-column.approved-column{box-shadow:inset 0 4px 0 #0d7b79}.viatic-v42-history-column.review-column{box-shadow:inset 0 4px 0 #d88400}.viatic-v42-column-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.viatic-v42-column-head h4{margin:7px 0 3px;color:#082f59;font-size:17px}.viatic-v42-column-head p{margin:0;color:#667b8d;font-size:11px;line-height:1.45}.viatic-v42-review-mini{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.viatic-v42-review-mini span{background:#fff5dc;color:#805400;border:1px solid #f0d28c;border-radius:999px;padding:6px 8px;font-size:10px;white-space:nowrap}.viatic-v42-table-toolbar{margin:12px 0 8px}.viatic-v42-table-toolbar input{width:100%}.viatic-v42-history-table-wrap{max-height:520px}.viatic-v42-history-table{min-width:850px}.viatic-v42-review-table{min-width:1180px}.viatic-v42-history-table td,.viatic-v42-review-table td{vertical-align:top}.viatic-v42-history-table .money,.viatic-v42-review-table .money{white-space:nowrap;font-weight:900}.viatic-v42-review-actions{display:flex;gap:6px;flex-wrap:wrap}.viatic-v42-review-actions button{padding:7px 9px;border-radius:8px;font-size:10px;font-weight:900;cursor:pointer}.viatic-v42-approve{border:1px solid #75c7aa;background:#e5f8ef;color:#0b6b50}.viatic-v42-deny{border:1px solid #efb5b0;background:#fff0ef;color:#a22920}.viatic-v42-rule-note{margin:0 18px 18px}.viatic-v42-history-panel .viatic-hist-approved-actions input[type=file]{max-width:310px}.viatic-v42-history-panel .pager{margin-top:9px}.viatic-v42-history-panel .viatic-v40-review-filters{grid-template-columns:minmax(180px,1fr) minmax(180px,260px)}
@media(max-width:1500px){.viatic-v42-history-kpis{grid-template-columns:repeat(3,1fr)}.viatic-v42-history-grid{grid-template-columns:1fr}}
@media(max-width:760px){.viatic-v42-history-kpis{grid-template-columns:1fr 1fr}.viatic-v42-history-grid{padding:0 10px 12px}.viatic-v42-rule-note{margin:0 10px 12px}.viatic-v42-column-head{flex-direction:column}.viatic-v42-review-mini{justify-content:flex-start}.viatic-v42-history-panel .viatic-hist-approved-actions{width:100%}}
@media(max-width:520px){.viatic-v42-history-kpis{grid-template-columns:1fr}}
