/* Oscuro conserva la identidad actual. Claro e intermedio comparten superficies legibles. */
.theme-picker{display:flex;align-items:center;gap:9px;margin-left:18px}.theme-picker label{margin:0;font-size:11px;white-space:nowrap}.theme-picker select{min-height:42px;width:125px;font-size:12px;cursor:pointer}.topbar{gap:14px;height:auto;padding-top:15px;padding-bottom:15px}.account{margin-left:auto}.guest .secure-label{margin-left:auto}
:root[data-theme=light],:root[data-theme=dim]{color-scheme:light;--bg:#f3f6fb;--panel:#fff;--panel2:#edf3fa;--line:#b8c7da;--text:#172b45;--muted:#50647f;--cyan:#00697e;--mint:#067043;--amber:#936000;--violet:#63419e;--red:#b71f43;--surface:#fff;--surface-soft:#edf3fa;--surface-raised:#f8fbff;--control:#fff;--shadow:#41567526;--shadow-edge:#afc0d4;--alert-bg:#fff0f2;--alert-border:#c33554;--alert-ink:#9f1638;--nav-active:#d7eff0;--button:#00758b}
:root[data-theme=dim]{--bg:#c8d2df;--panel:#e0e7f0;--panel2:#d4deea;--line:#92a5bd;--text:#14273e;--muted:#405570;--surface:#e0e7f0;--surface-soft:#cdd8e6;--surface-raised:#edf2f8;--control:#f2f5fa;--shadow:#253a5740;--shadow-edge:#93a7bf;--alert-bg:#eedee4;--nav-active:#bddcde;--button:#00697e}
:root:is([data-theme=light],[data-theme=dim]) body{--mint:#067043;--amber:#936000;--red:#b71f43;background-image:radial-gradient(ellipse at 80% 0,#00758b0c,transparent 55%)}
:root:is([data-theme=light],[data-theme=dim]) .sidebar{background:linear-gradient(180deg,var(--surface-raised),var(--surface-soft))}
:root:is([data-theme=light],[data-theme=dim]) .topbar,:root:is([data-theme=light],[data-theme=dim]) .topbar:hover{background:var(--surface-raised);border-color:var(--line);box-shadow:0 3px 14px var(--shadow)}
:root:is([data-theme=light],[data-theme=dim]) :is(.brand strong,.brand-heading>strong,.account,.card>strong,.panel h2,.unit-link,.legend-row strong,.priority-dialog h2,.priority-unit h3){color:var(--text);text-shadow:none}
:root:is([data-theme=light],[data-theme=dim]) :is(.brand small,.brand-heading>span,.nav-caption,.sidebar-bottom,.eyebrow,.metric-label,.metric-detail,.legend-row,.chart-note,.chart-empty,td,th,label,.info,.logout,.login-intro>p,.login-footnote,.login-tags,.subtle-tag,footer){color:var(--muted)}
:root:is([data-theme=light],[data-theme=dim]) :is(.card>small,.card em,td small,.priority-dialog p,.priority-banner p){color:var(--muted)}
:root:is([data-theme=light],[data-theme=dim]) .brand-emblem{background:linear-gradient(145deg,var(--surface),var(--surface-soft));border-color:var(--line)}
:root:is([data-theme=light],[data-theme=dim]) .nav-item{color:var(--muted)}
:root:is([data-theme=light],[data-theme=dim]) .nav-item:first-child{background:transparent;border-color:transparent;color:var(--muted)}
:root:is([data-theme=light],[data-theme=dim]) :is(.nav-item[aria-current=page],.nav-item:hover){background:var(--nav-active);border-color:#43888e80;color:#075567;box-shadow:inset 3px 0 #087b78,0 4px 10px var(--shadow)}
:root:is([data-theme=light],[data-theme=dim]) .nav-item:hover .nav-icon{color:#075567}
:root:is([data-theme=light],[data-theme=dim]) .nav-item[aria-current=page] .nav-icon{color:#075567}
:root:is([data-theme=light],[data-theme=dim]) :is(.card,.panel,.login,.assistant-intro){background:linear-gradient(135deg,var(--surface-raised),var(--surface));border-color:var(--line);box-shadow:inset 0 1px #ffffffbf,0 5px 0 var(--shadow-edge),0 14px 24px -12px var(--shadow)}
:root:is([data-theme=light],[data-theme=dim]) :is(.card:hover,.panel:hover){border-color:#318394;box-shadow:inset 0 1px #ffffffbf,0 6px 0 var(--shadow-edge),0 16px 28px -12px var(--shadow)}
:root:is([data-theme=light],[data-theme=dim]) :is(.metric-icon,.panel-symbol,.avatar,.unit-glyph){background:var(--surface-soft);border-color:var(--line);color:var(--cyan);box-shadow:inset 0 1px #ffffffa1,0 2px 4px var(--shadow)}
:root:is([data-theme=light],[data-theme=dim]) input:not([type=checkbox]):not([type=hidden]),:root:is([data-theme=light],[data-theme=dim]) :is(select,textarea){background:var(--control);border-color:var(--line);color:var(--text);box-shadow:inset 0 1px 3px #253a570a}
:root:is([data-theme=light],[data-theme=dim]) input::placeholder,:root:is([data-theme=light],[data-theme=dim]) textarea::placeholder{color:#5a6d85}
:root:is([data-theme=light],[data-theme=dim]) :is(input,select,textarea):focus{outline:2px solid #00758b;border-color:#00758b}
:root:is([data-theme=light],[data-theme=dim]) input:disabled{background:var(--surface-soft);color:var(--muted)}
:root:is([data-theme=light],[data-theme=dim]) th{background:var(--surface-soft);border-bottom-color:var(--line)}
:root:is([data-theme=light],[data-theme=dim]) td{border-bottom-color:var(--line)}
:root:is([data-theme=light],[data-theme=dim]) tbody tr:hover,:root:is([data-theme=light],[data-theme=dim]) .panel tbody tr:hover{background:#00758b0b}
:root:is([data-theme=light],[data-theme=dim]) :is(.subtle-tag,.login-footnote){border-color:var(--line)}
:root:is([data-theme=light],[data-theme=dim]) :is(button,.button){color:#fff;background:var(--button);box-shadow:0 3px 10px #00758b20}
:root:is([data-theme=light],[data-theme=dim]) :is(button:hover,.button:hover){background:#00586d;color:#fff}
:root:is([data-theme=light],[data-theme=dim]) :is(.secondary,.priority-close){background:var(--surface-soft);color:var(--text);border-color:var(--line);box-shadow:none}
:root:is([data-theme=light],[data-theme=dim]) .logout{background:transparent;color:var(--muted);box-shadow:none}
:root:is([data-theme=light],[data-theme=dim]) .text-link{color:#00697e}
:root:is([data-theme=light],[data-theme=dim]) .badge{color:#115b3d;background:#d8f3e5;border-color:#208254;box-shadow:none}
:root:is([data-theme=light],[data-theme=dim]) .badge[data-status=Próximo]{color:#704500;background:#fff0b8;border-color:#a56c00}
:root:is([data-theme=light],[data-theme=dim]) :is(.badge[data-status=Vencido],.badge[data-status="Sin documentación vigente"]){color:#941735;background:#ffe1e8;border-color:#c33554}
:root:is([data-theme=light],[data-theme=dim]) .badge[data-status="Sin lectura reciente"]{color:#59358a;background:#e9defa;border-color:#7852b1}
:root:is([data-theme=light],[data-theme=dim]) .badge[data-status="En mantenimiento"]{color:#704500;background:#fff0b8;border-color:#a56c00}
:root:is([data-theme=light],[data-theme=dim]) .message{color:#145e42;background:#d8f3e5;border-color:#63a385}
:root:is([data-theme=light],[data-theme=dim]) .errorlist{color:#941735;background:#ffe1e8;border-color:#c33554}
:root:is([data-theme=light],[data-theme=dim]) .priority-banner{background:linear-gradient(120deg,var(--alert-bg),var(--surface));border-color:var(--alert-border);box-shadow:0 8px 20px var(--shadow)}
:root:is([data-theme=light],[data-theme=dim]) :is(.priority-label,.priority-banner h2){color:var(--alert-ink)}
:root:is([data-theme=light],[data-theme=dim]) .priority-dialog{background:linear-gradient(135deg,var(--surface-raised),var(--surface));color:var(--text);border-color:var(--alert-border)}
:root:is([data-theme=light],[data-theme=dim]) .priority-unit{background:var(--surface);border-color:var(--line);border-left-color:#a56c00;box-shadow:0 3px 9px var(--shadow)}
:root:is([data-theme=light],[data-theme=dim]) .priority-unit.priority-urgent{border-left-color:#c33554}
:root:is([data-theme=light],[data-theme=dim]) .priority-dialog-footer{border-color:var(--line)}
:root:is([data-theme=light],[data-theme=dim]) .priority-clear{background:#d8f3e5;border-color:#63a385}
:root:is([data-theme=light],[data-theme=dim]) :is(.priority-clear strong,.priority-clear p){color:#145e42}
:root:is([data-theme=light],[data-theme=dim]) .assistant-result{border-color:var(--line)}
:root:is([data-theme=light],[data-theme=dim]) .chart svg text{fill:var(--muted)}
:root:is([data-theme=light],[data-theme=dim]) .chart svg line{stroke:var(--line)}
:root:is([data-theme=light],[data-theme=dim]) .chart svg circle[fill="#0f1929"]{fill:var(--surface)}
:root:is([data-theme=light],[data-theme=dim]) .line-chart svg :is(polyline,circle){stroke:var(--cyan)}
:root:is([data-theme=light],[data-theme=dim]) .fleet-hero :is(strong,p){color:#f3f8ff}
:root:is([data-theme=light],[data-theme=dim]) .fleet-hero .eyebrow,:root:is([data-theme=light],[data-theme=dim]) .hero-caption{color:#b9d4e7}
@media(max-width:600px){.topbar{gap:12px}.theme-picker{width:100%;margin-left:0;justify-content:flex-end;padding-top:9px;border-top:1px solid var(--line)}.theme-picker select{width:130px}.account{gap:6px}.theme-picker label{font-size:12px}}
