@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.relative{position:relative}.static{position:static}.container{width:100%}.mx-auto{margin-inline:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}:root{--paper:#f4f3ee;--paper-2:#edebe3;--paper-3:#e4e1d7;--paper-4:#d8d4c7;--card-w:#fff;--ink:#1f1a14;--ink-2:#4a463e;--ink-3:#8a847a;--ink-4:#b5afa3;--line:#1f1a1414;--line-2:#1f1a140a;--line-lo:#1f1a140a;--accent-tc:#c96442;--accent-tc-soft:#c964421a;--accent-tc-edge:#c9644240;--ok-tc:#5b8c44;--ok-soft:#5b8c441f;--warn-tc:#b57828;--bad-tc:#b4452c;--bad-soft:#b4452c1a;--t-blue:#5b88b5;--t-blue-soft:#e1eaf4;--t-blue-ink:#2a4868;--t-purple:#8b7bb8;--t-purple-soft:#e7ddf1;--t-purple-ink:#4a3e70;--t-green:#6a9068;--t-green-soft:#dcead4;--t-green-ink:#2d4a2e;--t-yellow:#c49840;--t-yellow-soft:#f5e8b8;--t-yellow-ink:#5c4318;--t-orange:#d17847;--t-orange-soft:#fce0c8;--t-orange-ink:#5e3318;--t-teal:#5a9da8;--t-teal-soft:#cfe4df;--t-teal-ink:#1a4a52;--t-pink:#c28098;--t-pink-soft:#f6dde3;--t-pink-ink:#6b3548;--t-coral-soft:#f8d5c8;--shadow-xs:0 1px 2px #1f1a140a;--shadow-sm:0 2px 6px #1f1a140f;--shadow-md:0 6px 18px #1f1a1414;--shadow-lg:0 18px 60px #1f1a141f,0 4px 16px #1f1a140f;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-full:999px;--bg-base:#080c12;--bg-surface:#0d1526;--bg-elevated:#141d2e;--bg-hover:#1a2540;--border-subtle:#ffffff0d;--border-default:#ffffff1a;--border-strong:#ffffff2e;--accent:#f59e0b;--accent-bright:#fbbf24;--accent-dim:#f59e0b26;--accent-glow:0 0 20px #f59e0b40;--accent-fg:#080c12;--status-pending:#f59e0b;--status-dispatched:#3b82f6;--status-completed:#10b981;--status-urgent:#ef4444;--status-cancelled:#4b5563;--status-chronic:#c084fc;--bg-deep:#060a10;--bg-card:#0f1a2e;--border-dim:#1e293b;--border-bright:#2d3d55;--border-hair:#ffffff0a;--accent-border:#f59e0b40;--green-dim:#10b9811a;--green-border:#10b98140;--red-dim:#ef44441a;--red-border:#ef444440;--blue:#3b82f6;--blue-dim:#3b82f61a;--teal:#0891b2;--teal-dim:#0891b21f;--purple:#a78bfa;--purple-dim:#a78bfa1f;--subcat-dispensador:#3b82f6;--subcat-compresor:#f59e0b;--subcat-electrico:#eab308;--subcat-plomeria:#06b6d4;--subcat-tanque:#6366f1;--subcat-proyecto:#84cc16;--subcat-calibracion:#8b5cf6;--cat-preventivo:#10b981;--cat-correctivo:#ef4444;--cat-calibracion:#8b5cf6;--text-primary:#e2e8f0;--text-secondary:#8494a7;--text-tertiary:#64748b;--text-muted:#475569;--text-faint:#334155;--text-on-color:#fff;--text-accent:#f59e0b;--text-success:#10b981;--text-danger:#ef4444;--sidebar-width:240px;--sidebar-collapsed-width:56px;--r:8px;--fg-rgb:255,255,255;--ease-snap:cubic-bezier(.2,0,0,1);--ease-out:cubic-bezier(0,0,.2,1);--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--duration-instant:.1s;--duration-fast:.18s;--duration-normal:.3s;--duration-slow:.5s;--btn-h:36px;--btn-h-sm:28px;--btn-h-lg:44px;--font-display:"Fraunces","Instrument Serif",ui-serif,Georgia,serif;--font-sans:"Inter",system-ui,-apple-system,sans-serif;--font-body:"Inter",system-ui,-apple-system,sans-serif;--font-serif:"Instrument Serif","Fraunces",ui-serif,Georgia,serif;--font-mono:"JetBrains Mono","Fira Code",ui-monospace,monospace;font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-base);color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5}[data-theme=dark]{--t-blue-soft:#60a5fa29;--t-blue-ink:#93c5fd;--t-purple-soft:#a78bfa29;--t-purple-ink:#c4b5fd;--t-green-soft:#86d08029;--t-green-ink:#86efac;--t-yellow-soft:var(--accent-border);--t-yellow-ink:#fbbf24;--t-orange-soft:#fb923c2e;--t-orange-ink:#fdba74;--t-teal-soft:#5eead429;--t-teal-ink:#5eead4;--t-pink-soft:#f472b629;--t-pink-ink:#f9a8d4;--bad-soft:#ef44442e;--bad-tc:#fca5a5;--paper:#0d1526;--paper-2:#141d2e;--paper-3:#1a2540;--paper-4:#2d3d55;--ink:#e2e8f0;--ink-2:#b1bfd0;--ink-3:#8494a7;--ink-4:#5a6b80;--line:#ffffff1a;--line-2:#ffffff0d;--line-lo:#ffffff0d;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 2px 6px #0006;--shadow-md:0 6px 18px #00000080;--shadow-lg:0 18px 60px #0009,0 4px 16px #0006}[data-theme=light]{--fg-rgb:31,26,20;--bg-base:#f4f3ee;--bg-surface:#fff;--bg-elevated:#edebe3;--bg-hover:#e4e1d7;--bg-deep:#edebe3;--bg-card:#fff;--border-dim:#1f1a141a;--border-bright:#1f1a1433;--border-subtle:#1f1a140d;--border-default:#1f1a1414;--border-strong:#1f1a1424;--border-hair:#1f1a140a;--accent-border:#c9644240;--text-primary:#1f1a14;--text-secondary:#4a463e;--text-tertiary:#8a847a;--text-muted:#b5afa3;--text-faint:#d8d4c7;--text-accent:#c96442;--text-success:#5b8c44;--text-danger:#b4452c;--accent:#c96442;--accent-bright:#a24e32;--accent-dim:#c964421a;--accent-glow:0 0 12px #c9644233;--accent-fg:#fff;--green-dim:#5b8c441a;--green-border:#5b8c4438;--red-dim:#b4452c14;--red-border:#b4452c33;--blue-dim:#5b88b514;--teal-dim:#5a9da81a;--purple-dim:#8b7bb81a;--status-pending:#b57828;--status-dispatched:#5b88b5;--status-completed:#5b8c44;--status-urgent:#b4452c;--status-cancelled:#8a847a;--subcat-dispensador:#5b88b5;--subcat-compresor:#d17847;--subcat-electrico:#c49840;--subcat-plomeria:#5a9da8;--subcat-tanque:#8b7bb8;--subcat-proyecto:#6a9068;--subcat-calibracion:#c28098;--cat-preventivo:#5b8c44;--cat-correctivo:#b4452c;--cat-calibracion:#8b7bb8;--blue:#5b88b5;--r:10px;color-scheme:light}[data-theme=light] body:after{display:none}[data-theme=light] ::-webkit-scrollbar-track{background:var(--bg-base)}[data-theme=light] ::-webkit-scrollbar-thumb{background:var(--border-dim)}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:var(--border-bright)}[data-theme=light] .badge-success{background:var(--t-green-soft);color:var(--t-green-ink)}[data-theme=light] .badge-warning{background:var(--t-yellow-soft);color:var(--t-yellow-ink)}[data-theme=light] .badge-danger{background:var(--bad-soft);color:var(--bad-tc)}[data-theme=light] .badge-info{background:var(--t-blue-soft);color:var(--t-blue-ink)}[data-theme=light] .badge-secondary{background:var(--paper-3);color:var(--ink-2)}[data-theme=light] .status-pending,[data-theme=light] .status-dispatched,[data-theme=light] .status-in-progress,[data-theme=light] .status-completed,[data-theme=light] .status-urgent{box-shadow:none}[data-theme=light] .table-industrial th{background:var(--bg-deep);border-bottom-color:var(--accent-border)}[data-theme=light] .card:hover{box-shadow:var(--shadow-sm)}[data-theme=light] .btn-primary{color:#fff}[data-theme=light] .btn-ghost{border-color:var(--border-default)}[data-theme=light] .btn-ghost:hover{background:var(--bg-elevated)}[data-theme=light] .btn-danger{background:var(--red-dim);color:var(--bad-tc);border-color:var(--red-border)}[data-theme=light] .btn-danger:hover{background:var(--bad-soft);border-color:var(--bad-tc)}[data-theme=light] .input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}[data-theme=light] .section-header__rule{background:linear-gradient(90deg,var(--border-default),transparent)}*{box-sizing:border-box}body{background:var(--bg-base);min-width:320px;min-height:100vh;margin:0;padding:0}#root{max-width:100%;margin:0;padding:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.card{background:var(--bg-surface);border-radius:var(--r);border:1px solid var(--border-default);padding:1.25rem;transition:border-color .2s,box-shadow .2s}.card:hover{border-color:var(--border-strong)}.badge{border-radius:var(--r);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:600;font-family:var(--font-mono);align-items:center;padding:.2rem .5rem;display:inline-flex}.badge-success{color:#10b981;background:#10b98126}.badge-warning{background:var(--accent-border);color:#f59e0b}.badge-danger{color:#ef4444;background:#ef444426}.badge-info{color:#3b82f6;background:#3b82f626}.badge-secondary{color:#94a3b8;background:#64748b26}.kpi-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(130px,1fr));display:grid}.kpi-grid--asymmetric{grid-template-columns:2fr 1fr 1fr 1fr}.kpi{padding:var(--sp-3)var(--sp-4);border-left:3px solid var(--accent-border)}.kpi[style*=--kpi-color]{border-left-color:var(--kpi-color)}.kpi[style*=--kpi-color] .kpi-value{color:var(--kpi-color)}.kpi--hero{padding:var(--sp-5);border-left-width:4px;border-left-color:var(--accent)}.kpi-value{font-family:var(--font-mono);font-feature-settings:"tnum";letter-spacing:-.01em;color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1}.kpi--hero .kpi-value{font-family:var(--font-display);letter-spacing:-.025em;font-variation-settings:"opsz" 144,"SOFT" 40;font-size:2.75rem;font-weight:400}.kpi-value--sm{font-size:.875rem;font-family:var(--font-mono)}.empty{text-align:center;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.03em;padding:2rem 1rem;font-size:.8rem}.kpi-label{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase;margin-top:var(--sp-1);font-size:.65rem}.kpi-sub{font-family:var(--font-mono);color:var(--text-tertiary);margin-top:var(--sp-1);font-size:.7rem}.status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-right:5px;display:inline-block}.status-pending{background:var(--status-pending);box-shadow:0 0 6px var(--accent)}.status-dispatched,.status-in-progress{background:var(--status-dispatched);box-shadow:0 0 6px #3b82f666}.status-completed{background:var(--status-completed);box-shadow:0 0 6px #10b98166}.status-urgent{background:var(--status-urgent);animation:1.5s ease-in-out infinite urgentPulse;box-shadow:0 0 8px #ef444499}@keyframes urgentPulse{0%,to{opacity:1;box-shadow:0 0 8px #ef444499}50%{opacity:.7;box-shadow:0 0 14px #ef4444e6}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.fade-in{animation:.3s ease-out fadeIn}.slide-in{animation:.3s ease-out slideInLeft}.skeleton{background:linear-gradient(90deg,var(--paper-3,var(--bg-elevated))25%,var(--paper-2,var(--bg-surface))50%,var(--paper-3,var(--bg-elevated))75%);border-radius:var(--r);background-size:200% 100%;animation:1.8s ease-in-out infinite shimmer}.spinner{background:var(--accent);border:none;border-radius:50%;width:14px;height:14px;animation:1.2s ease-in-out infinite dot-pulse;display:inline-block}@keyframes dot-pulse{0%,to{opacity:.3;transform:scale(.7)}50%{opacity:1;transform:scale(1.1)}}@keyframes spin{to{transform:rotate(360deg)}}.btn{border-radius:var(--r);font-family:var(--font-sans);letter-spacing:-.005em;cursor:pointer;border:1px solid #0000;padding:.5rem 1rem;font-size:13px;font-weight:500;transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .1s}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:var(--bg-base);border-color:var(--accent);font-weight:700}.btn-primary:hover{background:var(--accent-bright);border-color:var(--accent-bright);box-shadow:var(--accent-glow)}.btn-ghost{color:var(--text-secondary);border-color:var(--border-default);background:0 0}.btn-ghost:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-strong)}.btn-danger{color:#ef4444;background:#ef444426;border-color:#ef44444d}.btn-danger:hover{background:#ef444440;border-color:#ef4444}.btn-secondary{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-default)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.btn-text{color:var(--text-secondary);padding:var(--sp-1)var(--sp-2);cursor:pointer;background:0 0;border:none;font-size:.75rem}.btn-text:hover{color:var(--text-primary);background:var(--accent-dim)}.btn-sm{height:var(--btn-h-sm);padding:0 var(--sp-2);font-size:.7rem}.btn-lg{height:var(--btn-h-lg);padding:0 1.25rem;font-size:.85rem}.input{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--r);color:var(--text-primary);font-family:var(--font-sans);letter-spacing:-.005em;outline:none;width:100%;padding:.6rem .875rem;font-size:14px;transition:border-color .2s,box-shadow .2s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.input::-moz-placeholder{color:var(--text-muted)}.input::placeholder{color:var(--text-muted)}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.text-accent{color:var(--accent)}.text-success{color:var(--status-completed)}.text-danger{color:var(--status-urgent)}.text-muted{color:var(--text-secondary)}.section-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);font-size:.65rem;font-weight:600}.section-header{border-bottom:1px solid var(--border-hair);align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.5rem;display:flex}.section-header__code{background:var(--paper-3,var(--bg-elevated));border:1px solid var(--border-default);min-width:2rem;height:22px;font-family:var(--font-mono);font-feature-settings:"tnum";color:var(--text-secondary);letter-spacing:.04em;border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:10px;font-weight:700;display:inline-flex}.section-header__title{font-family:var(--font-sans);letter-spacing:-.005em;text-transform:none;color:var(--text-primary);font-size:1rem;font-weight:600}.section-header__rule{background:linear-gradient(90deg,var(--border-default),transparent);flex:1;height:1px}.table-industrial{border-collapse:collapse;background:var(--bg-surface);border:1px solid var(--border-default);width:100%;font-size:.8rem}.table-industrial th{background:var(--bg-deep);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);text-align:left;border-bottom:1px solid var(--accent-border);padding:.6rem .75rem;font-size:.65rem;font-weight:700}.table-industrial td{border-bottom:1px solid var(--border-hair);color:var(--text-primary);padding:.55rem .75rem}.table-industrial tr:hover td{background:var(--bg-hover)}.severity-critical{border-left:3px solid var(--status-urgent)}.severity-warning{border-left:3px solid var(--accent)}.severity-info{border-left:3px solid var(--blue)}.severity-success{border-left:3px solid var(--status-completed)}.empty-terminal{text-align:center;color:var(--text-secondary);padding:48px 24px}.empty-terminal__icon{opacity:.35;margin-bottom:12px;font-size:2rem}.empty-terminal__text{font-family:var(--font-sans);letter-spacing:-.005em;color:var(--text-tertiary);font-size:14px;line-height:1.55}.empty-terminal__cursor{background:var(--accent-dim);vertical-align:middle;border-radius:999px;width:6px;height:6px;margin-left:4px;display:inline-block}@keyframes radarSpin{0%{transform:rotate(0)}to{opacity:0;transform:rotate(360deg)}}@keyframes panelReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.panel-reveal{animation:panelReveal .25s var(--ease-snap)}@media(max-width:540px){.section-header{display:none}.card{padding:.65rem}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.inline-numeric-dirty{border-color:var(--accent)!important;background:var(--accent-dim)!important}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(ellipse 60% 80% at 100% 0%,var(--accent-tc-soft, rgba(201,100,66,.07)) 0%,transparent 60%),radial-gradient(ellipse 70% 50% at 0% 100%,rgba(91,136,181,.05) 0%,transparent 60%),var(--bg-base)}.login-screen:before{content:none}.login-card{position:relative;z-index:1;width:100%;max-width:400px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:14px;box-shadow:var(--shadow-lg);padding:36px 32px 28px;animation:fadeIn .4s ease-out}.login-logo{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:var(--accent);color:#fff;font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-.02em;border-radius:14px;margin:0 auto 20px;box-shadow:var(--shadow-sm);transition:transform .18s,box-shadow .18s;font-variation-settings:"opsz" 96,"SOFT" 50}.login-logo:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.login-title{font-family:var(--font-display);font-weight:400;font-size:30px;letter-spacing:-.03em;line-height:1.05;color:var(--text-primary);text-align:center;margin:0;font-variation-settings:"opsz" 144,"SOFT" 50;text-transform:none}.login-subtitle{font-family:var(--font-mono);font-feature-settings:"tnum";font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-tertiary);text-align:center;margin:6px 0 0}.login-divider{border:none;border-top:1px solid var(--border-subtle);margin:24px 0 18px}.login-field{margin-bottom:14px}.login-label{display:block;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:6px}.login-card .input{background:var(--bg-base);border-color:var(--border-default);border-radius:8px;padding:10px 12px;font-family:var(--font-sans);font-size:14px;color:var(--text-primary);letter-spacing:-.005em}.login-card .input::-moz-placeholder{color:var(--text-muted);font-family:var(--font-sans)}.login-card .input::placeholder{color:var(--text-muted);font-family:var(--font-sans)}.login-card .input:focus{background:var(--bg-surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.login-input-error{border-color:var(--status-urgent)!important;box-shadow:0 0 0 3px var(--red-dim, rgba(180,69,44,.08))!important}.login-remember{display:flex;align-items:center;gap:8px;margin-bottom:14px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.login-remember input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent);border-radius:4px;cursor:pointer}.login-remember span{font-size:13px;color:var(--text-secondary)}.login-error{margin-bottom:14px;padding:10px 12px;background:var(--red-dim, rgba(180,69,44,.08));border:1px solid var(--red-border, rgba(180,69,44,.22));border-radius:8px;color:var(--bad-tc, var(--text-danger));font-size:13px;font-family:var(--font-sans);line-height:1.4}.login-error-center{text-align:center}.login-submit{width:100%;padding:12px 16px;border-radius:10px;border:1px solid var(--accent);background:var(--accent);color:#fff;font-family:var(--font-sans);font-weight:600;font-size:14px;letter-spacing:-.005em;cursor:pointer;transition:background .18s,transform .1s,box-shadow .18s;display:flex;align-items:center;justify-content:center;gap:8px}.login-submit:hover:not(:disabled){background:var(--accent-bright);border-color:var(--accent-bright);box-shadow:var(--shadow-sm)}.login-submit:active:not(:disabled){transform:translateY(1px)}.login-submit:disabled{opacity:.5;cursor:not-allowed}.login-submit-arrow{font-size:1.1rem;transition:transform .18s}.login-submit:hover:not(:disabled) .login-submit-arrow{transform:translate(2px)}.login-actions{margin-top:18px;display:flex;flex-direction:column;gap:8px}.login-action-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 14px;background:var(--bg-base);border:1px solid var(--border-default);border-radius:8px;color:var(--text-secondary);font-size:13px;font-family:var(--font-sans);font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s;letter-spacing:-.005em}.login-action-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:var(--bg-elevated)}.login-action-btn.login-action-active{color:var(--accent);border-color:var(--accent-border, var(--accent));background:var(--accent-dim)}.login-action-bypass{background:var(--t-green-soft, var(--green-dim));border-color:var(--t-green-soft, var(--green-border));color:var(--t-green-ink, var(--status-completed))}.login-action-bypass:hover{background:var(--green-border, var(--t-green-soft));border-color:var(--t-green-ink, var(--status-completed));color:var(--t-green-ink, var(--status-completed))}.login-action-icon{font-size:1rem;line-height:1}.pin-dots{display:flex;justify-content:center;gap:14px;margin:18px 0}.pin-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--border-strong);background:transparent;transition:all .15s}.pin-dot.filled{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);transform:scale(1.05)}.numpad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.numpad-btn{height:60px;display:flex;align-items:center;justify-content:center;background:var(--bg-base);border:1px solid var(--border-default);color:var(--text-primary);font-family:var(--font-mono);font-feature-settings:"tnum";font-size:22px;font-weight:600;border-radius:10px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .15s,border-color .15s,transform .05s}.numpad-btn:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--border-strong)}.numpad-btn:active:not(:disabled){background:var(--accent-dim);border-color:var(--accent);transform:scale(.97)}.numpad-btn:disabled{opacity:.4;cursor:not-allowed}.numpad-btn-clear{background:var(--red-dim);border-color:var(--red-border);color:var(--bad-tc, var(--status-urgent))}.numpad-btn-clear:hover:not(:disabled){background:var(--bad-soft);border-color:var(--bad-tc, var(--status-urgent))}.numpad-btn-backspace{background:var(--paper-3, var(--bg-elevated));border-color:var(--border-default);color:var(--text-secondary)}.numpad-btn-backspace:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.login-hint{font-size:12px;color:var(--text-tertiary);text-align:center;margin-top:12px;font-family:var(--font-sans)}.login-checking{text-align:center;padding:18px 12px}.login-spinner-wrap{display:flex;justify-content:center;margin-bottom:14px}.login-checking-text{font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary)}@keyframes loginShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}.login-shake{animation:loginShake .5s ease-in-out}[data-theme=dark] .login-logo,[data-theme=dark] .login-submit{color:#fff}@media(max-width:420px){.login-card{padding:28px 22px 22px}.login-title{font-size:26px}.numpad-btn{height:54px;font-size:18px}}.dashboard{min-height:100vh;background:var(--bg-base);overflow-x:clip;max-width:100vw}.dashboard-main{margin-left:var(--sidebar-width);min-width:0;display:flex;flex-direction:column;transition:margin-left .2s var(--ease-snap)}.dashboard.sidebar-collapsed .dashboard-main{margin-left:var(--sidebar-collapsed-width)}.dashboard-header{position:sticky;top:0;z-index:100;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:var(--bg-base);border-bottom:1px solid var(--border-default);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sidebar-hamburger{display:none}.header-kpis{display:flex;align-items:center;gap:6px}.header-kpi{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:12px;color:var(--text-secondary);padding:5px 11px;background:var(--paper-3, var(--bg-elevated));border-radius:999px;letter-spacing:-.005em;line-height:1.4}.header-kpi strong{font-family:var(--font-mono);font-feature-settings:"tnum";font-weight:700;font-size:13px;color:var(--text-primary)}.header-kpi--pending strong{color:var(--t-orange-ink, var(--accent))}.header-kpi--completed strong{color:var(--t-green-ink, var(--status-completed))}.header-kpi--stale strong{color:var(--t-yellow-ink, var(--status-pending))}.header-kpi--clickable{cursor:pointer;transition:background .15s,color .15s}.header-kpi--clickable:hover{background:var(--paper-4, var(--bg-hover));color:var(--text-primary)}.header-kpi--clickable:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-dim)}.header-kpi-sep{display:none}.header-health-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.header-health-green{background:var(--status-completed);box-shadow:0 0 6px #10b98166}.header-health-amber{background:var(--status-pending, #f59e0b);box-shadow:0 0 6px var(--accent)}.header-health-red{background:var(--status-urgent, #ef4444);box-shadow:0 0 6px #ef444466;animation:healthPulse 2s ease-in-out infinite}@keyframes healthPulse{0%,to{opacity:.7}50%{opacity:1}}.header-right{display:flex;align-items:center;gap:.5rem}.ws-status-indicator{display:flex;align-items:center;font-size:.7rem;color:var(--text-secondary)}.ws-dot{width:8px;height:8px;border-radius:50%;margin-right:4px}.ws-dot.connected{background:var(--status-completed);box-shadow:0 0 6px #10b98199;animation:livePulse 2s ease-in-out infinite}@keyframes livePulse{0%,to{box-shadow:0 0 4px #10b98180}50%{box-shadow:0 0 10px #10b981cc}}.header-clock{font-family:var(--font-mono);font-feature-settings:"tnum";font-size:12px;font-weight:500;color:var(--text-secondary);letter-spacing:0;white-space:nowrap;padding:4px 10px;background:var(--paper-3, var(--bg-elevated));border-radius:6px}.ws-dot.disconnected{background:var(--text-muted)}.header-btn{padding:.3rem .65rem;border-radius:var(--r);font-weight:500;font-size:.75rem;cursor:pointer;transition:all .18s;border:1px solid var(--border-default);background:transparent;color:var(--text-secondary);font-family:var(--font-body);text-decoration:none;display:inline-flex;align-items:center}.header-btn:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-strong)}.header-btn--active{background:var(--accent-dim);color:var(--accent);border-color:var(--accent-border)}.header-btn--danger{color:var(--text-danger);border-color:#ef44444d}.header-btn--danger:hover{background:#ef444426;border-color:var(--text-danger);color:var(--text-danger)}.btn-icon{font-size:.9rem;line-height:1}.header-btn--icon{gap:.3rem}.dashboard-content{padding:1.5rem 2rem;max-width:100%;overflow-x:clip;box-sizing:border-box;animation:panelReveal .25s var(--ease-snap)}.dashboard-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem;padding:2rem;background:var(--bg-base)}.dashboard-error h2{color:var(--text-danger);font-family:var(--font-display);font-size:1.5rem;letter-spacing:.04em}.dashboard-error p{color:var(--text-secondary);font-family:var(--font-mono);font-size:.85rem}.dashboard-error button{padding:.45rem 1rem;border-radius:var(--r);border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;font-size:.85rem;transition:all .18s;margin:0 .5rem}.dashboard-error button:hover{background:var(--bg-elevated);border-color:var(--border-strong)}.sla-config-overlay{position:fixed;inset:0;background:#1f1a1499;z-index:900;display:flex;justify-content:flex-end;animation:fadeIn .2s ease-out}.sla-config-panel{background:var(--bg-surface);width:600px;max-width:90vw;height:100vh;overflow-y:auto;padding:1.5rem;border-left:1px solid var(--border-default);box-shadow:-4px 0 24px #1f1a1466}@media(max-width:768px){.dashboard-main,.dashboard.sidebar-collapsed .dashboard-main{margin-left:0}.dashboard-header{height:auto;min-height:48px;flex-wrap:nowrap;gap:.5rem;padding:.5rem .75rem}.sidebar-hamburger{display:inline-block}.header-kpi{font-size:.65rem}.header-kpis{gap:.5rem}.header-kpi-sep{font-size:.55rem}.header-right{flex-wrap:nowrap;gap:.3rem}.dashboard-content{padding:.75rem}}@media(max-width:540px){.dashboard-header{position:sticky;top:0;z-index:100;padding:.4rem .6rem;gap:.25rem}.header-kpis{gap:.35rem}.header-kpi-sep{display:none}.header-kpi{font-size:.6rem}.header-clock,.ws-status-indicator{display:none}.header-btn{padding:.3rem .4rem;font-size:.7rem;border:none}.dashboard-content{padding:.5rem}}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width, 240px);background:var(--bg-elevated);border-right:1px solid var(--border-default);display:flex;flex-direction:column;z-index:101;transition:width .22s cubic-bezier(.2,0,0,1);overflow:hidden;contain:layout style;font-family:var(--font-sans)}.sidebar--collapsed{width:var(--sidebar-collapsed-width, 64px)}.sidebar__brand{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 14px 14px;flex-shrink:0;border-bottom:1px solid var(--line, var(--border-subtle))}.sidebar__brand-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.sidebar__logo{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;background:var(--accent);color:var(--bg-base);font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:.02em;border-radius:8px;box-shadow:var(--shadow-xs)}.sidebar__brand-text{display:flex;flex-direction:column;gap:2px;min-width:0;overflow:hidden}.sidebar__title{font-family:var(--font-sans);font-size:13px;font-weight:600;letter-spacing:-.012em;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;line-height:1.15}.sidebar__version{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary);white-space:nowrap;font-feature-settings:"tnum"}.sidebar__toggle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:1px solid var(--border-default);border-radius:6px;color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background .15s,color .15s,border-color .15s}.sidebar__toggle:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-strong)}.sidebar__eyebrow{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary);padding:14px 18px 8px}.sidebar__nav{display:flex;flex-direction:column;gap:2px;padding:0 10px;overflow-y:auto;overflow-x:hidden}.sidebar__nav::-webkit-scrollbar{width:4px}.sidebar__nav::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:2px}.sidebar__group{display:flex;flex-direction:column}.sidebar__category{display:flex;align-items:center;gap:10px;width:100%;height:38px;padding:0 10px;background:transparent;border:none;border-radius:8px;cursor:pointer;font-family:inherit;color:var(--text-secondary);text-align:left;transition:background .15s,color .15s}.sidebar__category:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__category--active{color:var(--text-primary)}.sidebar__icon-box{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;min-width:26px;border-radius:7px;background:var(--paper-3, var(--bg-hover));color:var(--text-secondary);transition:background .18s,color .18s,transform .18s}.sidebar__icon-box[data-active=true][data-tone=blue]{background:var(--t-blue-soft);color:var(--t-blue-ink)}.sidebar__icon-box[data-active=true][data-tone=purple]{background:var(--t-purple-soft);color:var(--t-purple-ink)}.sidebar__icon-box[data-active=true][data-tone=green]{background:var(--t-green-soft);color:var(--t-green-ink)}.sidebar__icon-box[data-active=true][data-tone=yellow]{background:var(--t-yellow-soft);color:var(--t-yellow-ink)}.sidebar__icon-box[data-active=true][data-tone=orange]{background:var(--t-orange-soft);color:var(--t-orange-ink)}.sidebar__icon-box[data-active=true][data-tone=teal]{background:var(--t-teal-soft);color:var(--t-teal-ink)}.sidebar__icon-box[data-active=true][data-tone=pink]{background:var(--t-pink-soft);color:var(--t-pink-ink)}.sidebar__icon-box[data-active=true][data-tone=bad]{background:var(--bad-soft);color:var(--bad-tc)}.sidebar__count-pill{font-family:var(--font-mono);font-feature-settings:"tnum";font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--paper-3, var(--bg-hover));color:var(--text-tertiary);letter-spacing:0;line-height:1.3}.sidebar__count-pill[data-active=true][data-tone=purple]{background:var(--t-purple-soft);color:var(--t-purple-ink)}.sidebar__lane-count{margin-left:auto;font-family:var(--font-mono);font-feature-settings:"tnum";font-size:10px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--paper-3, rgba(31,26,20,.06));color:var(--text-tertiary);line-height:1.4;transition:background .15s,color .15s}.sidebar__lane-count[data-active=true][data-tone=blue]{background:var(--t-blue-ink);color:var(--t-blue-soft)}.sidebar__lane-count[data-active=true][data-tone=purple]{background:var(--t-purple-ink);color:var(--t-purple-soft)}.sidebar__lane-count[data-active=true][data-tone=green]{background:var(--t-green-ink);color:var(--t-green-soft)}.sidebar__lane-count[data-active=true][data-tone=yellow]{background:var(--t-yellow-ink);color:var(--t-yellow-soft)}.sidebar__lane-count[data-active=true][data-tone=orange]{background:var(--t-orange-ink);color:var(--t-orange-soft)}.sidebar__lane-count[data-active=true][data-tone=teal]{background:var(--t-teal-ink);color:var(--t-teal-soft)}.sidebar__lane-count[data-active=true][data-tone=pink]{background:var(--t-pink-ink);color:var(--t-pink-soft)}.sidebar__lane-count[data-active=true][data-tone=bad]{background:var(--bad-tc);color:var(--bad-soft)}.sidebar__category:hover .sidebar__icon-box[data-active=false]{color:var(--text-primary)}.sidebar__category-label{flex:1;font-size:13px;font-weight:500;letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar__category--active .sidebar__category-label{font-weight:600}.sidebar__chevron{display:inline-flex;align-items:center;color:var(--text-tertiary);transition:transform .18s,color .18s}.sidebar__category--active .sidebar__chevron{color:var(--text-secondary)}.sidebar__tabs{padding-left:10px}.sidebar__tabs-inner{display:flex;flex-direction:column;gap:2px;padding:4px 0 6px 26px;margin-left:12px;border-left:1px solid var(--border-subtle)}.sidebar__tab{display:flex;align-items:center;width:100%;padding:6px 10px;height:28px;background:transparent;border:none;border-radius:6px;font-family:inherit;font-size:12.5px;font-weight:500;letter-spacing:-.002em;color:var(--text-tertiary);cursor:pointer;text-align:left;transition:background .15s,color .15s}.sidebar__tab:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__tab--active[data-tone=blue]{background:var(--t-blue-soft);color:var(--t-blue-ink)}.sidebar__tab--active[data-tone=purple]{background:var(--t-purple-soft);color:var(--t-purple-ink)}.sidebar__tab--active[data-tone=green]{background:var(--t-green-soft);color:var(--t-green-ink)}.sidebar__tab--active[data-tone=yellow]{background:var(--t-yellow-soft);color:var(--t-yellow-ink)}.sidebar__tab--active[data-tone=orange]{background:var(--t-orange-soft);color:var(--t-orange-ink)}.sidebar__tab--active[data-tone=teal]{background:var(--t-teal-soft);color:var(--t-teal-ink)}.sidebar__tab--active[data-tone=pink]{background:var(--t-pink-soft);color:var(--t-pink-ink)}.sidebar__tab--active[data-tone=bad]{background:var(--bad-soft);color:var(--bad-tc)}.sidebar__tab--active{font-weight:600}.sidebar__spacer{flex:1;min-height:12px}.sidebar__footer{display:flex;flex-direction:column;gap:4px;padding:10px;border-top:1px solid var(--line, var(--border-subtle));flex-shrink:0}.sidebar__footer-btn{display:flex;align-items:center;gap:10px;width:100%;height:34px;padding:0 10px;background:transparent;border:1px solid transparent;border-radius:7px;color:var(--text-secondary);font-family:inherit;font-size:12.5px;font-weight:500;cursor:pointer;text-align:left;transition:background .15s,color .15s,border-color .15s}.sidebar__footer-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__footer-btn--active{background:var(--accent-dim);color:var(--accent)}.sidebar__footer-btn--alerts{color:var(--text-secondary)}.sidebar__footer-btn--alerts:hover{color:var(--accent)}.sidebar__footer-btn--urgent,.sidebar__footer-btn--danger:hover{color:var(--status-urgent);border-color:var(--red-border);background:var(--red-dim)}.sidebar__alert-badge{margin-left:auto;font-family:var(--font-mono);font-feature-settings:"tnum";font-size:10px;font-weight:700;padding:2px 6px;background:var(--accent-dim);color:var(--accent);border-radius:999px;line-height:1}.sidebar__footer-btn--urgent .sidebar__alert-badge{background:#1f1a140f;color:var(--status-urgent)}.sidebar__user{display:flex;align-items:center;gap:8px;padding-top:4px;margin-top:4px;border-top:1px solid var(--line, var(--border-subtle))}.sidebar__user-meta{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.15}.sidebar__username{font-size:12.5px;font-weight:600;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar__userrole{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary);white-space:nowrap}.sidebar__user .sidebar__footer-btn{width:auto;padding:0 8px}.sidebar--collapsed .sidebar__brand{flex-direction:column;gap:8px;padding:14px 10px}.sidebar--collapsed .sidebar__brand-main{flex:none;justify-content:center}.sidebar--collapsed .sidebar__category,.sidebar--collapsed .sidebar__footer-btn{justify-content:center;padding:0}.sidebar--collapsed .sidebar__user{justify-content:center}.sidebar--collapsed .sidebar__user-meta{display:none}@media(max-width:900px){.sidebar{transform:translate(-100%);transition:transform .22s cubic-bezier(.2,0,0,1),width .22s cubic-bezier(.2,0,0,1);box-shadow:var(--shadow-lg)}.sidebar--mobile-open{transform:translate(0)}}.toast-stack{position:fixed;top:76px;right:20px;z-index:1100;display:flex;flex-direction:column;gap:10px;max-width:360px;width:calc(100vw - 40px);pointer-events:none}.toast{pointer-events:auto;display:grid;grid-template-columns:28px 1fr 28px;align-items:start;gap:10px;padding:12px 14px;background:var(--bg-surface);border:1px solid var(--border-default);border-left:3px solid var(--accent);border-radius:var(--r);box-shadow:var(--shadow-md);font-family:var(--font-sans);animation:toastSlideIn .32s var(--ease-out)}.toast--urgent{border-left-color:var(--status-urgent, #B4452C)}.toast--sla{border-left-color:var(--status-pending, #f59e0b)}.toast--info{border-left-color:var(--accent)}.toast--clickable{cursor:pointer}.toast--clickable:hover{border-color:var(--border-strong)}.toast__icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:var(--bg-elevated);color:var(--text-secondary);margin-top:1px}.toast--urgent .toast__icon{background:var(--red-dim, rgba(180,69,44,.08));color:var(--status-urgent, #B4452C)}.toast--sla .toast__icon,.toast--info .toast__icon{background:var(--accent-dim);color:var(--accent)}.toast__title{font-size:13px;font-weight:600;line-height:1.35;color:var(--text-primary);letter-spacing:-.005em}.toast__sub{margin-top:3px;font-size:12px;line-height:1.4;color:var(--text-secondary)}.toast__close{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;border-radius:var(--r);transition:color .15s,background .15s}.toast__close:hover{color:var(--text-primary);background:var(--bg-elevated)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@media(max-width:640px){.toast-stack{inset:auto 12px 76px;max-width:none;width:auto}}.skeleton-bone{background:linear-gradient(90deg,var(--bg-elevated) 25%,var(--bg-hover) 50%,var(--bg-elevated) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--r);height:.875rem}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.w-quarter{width:25%}.w-fifth{width:20%}.w-third{width:33%}.w-half{width:50%}.w-three-quarter{width:75%}.w-full{width:100%}.skeleton-row{display:flex;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle)}.skeleton-card{padding:1rem;border:1px solid var(--border-default);border-radius:var(--r)}.dispatch-board-skeleton{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.skeleton-zone-col{background:var(--bg-surface);border-radius:var(--r);border:1px solid var(--border-default);padding:.75rem}.skeleton-zone-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.skeleton-zone-bar{height:3px;background:var(--border-default);border-radius:var(--r);margin-bottom:.75rem}.skeleton-ot-card{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--r);padding:.75rem;margin-bottom:.5rem}.skeleton-ot-header{display:flex;justify-content:space-between}.skeleton-tech-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.skeleton-tech-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--r);padding:1rem}.skeleton-tech-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.skeleton-tech-stats{display:flex;justify-content:space-between}.skeleton-stat{display:flex;flex-direction:column;align-items:center}.skeleton-parts{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--r);padding:1rem}.skeleton-parts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.skeleton-table{width:100%}.skeleton-table-header{display:flex;gap:1rem;padding:.5rem 1rem;border-bottom:2px solid var(--border-default);margin-bottom:.25rem}.skeleton-stations{padding:0}.skeleton-stations-header{display:flex;gap:.5rem;margin-bottom:1rem}.skeleton-top-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem}.skeleton-station-card{display:flex;align-items:center;gap:.75rem;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--r);padding:1rem}.skeleton-map{padding:0}.skeleton-map-controls{display:flex;gap:.75rem;align-items:center;margin-bottom:1rem}.skeleton-map-area{height:500px;background:linear-gradient(90deg,var(--bg-elevated) 25%,var(--bg-hover) 50%,var(--bg-elevated) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--r)}.skeleton-map-legend{display:flex;gap:1rem;margin-top:.75rem;flex-wrap:wrap}.skeleton-legend-item{display:flex;align-items:center;gap:.4rem}.skeleton-panel-generic{padding:0}.skeleton-panel-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media(max-width:768px){.skeleton-panel-cards{grid-template-columns:1fr}}@media(max-width:768px){.dispatch-board-skeleton,.skeleton-tech-grid,.skeleton-top-grid{grid-template-columns:1fr}}.error-boundary{padding:2rem;text-align:center;color:var(--text-secondary);font-family:var(--font-mono)}.error-boundary__title{color:var(--status-urgent);font-family:var(--font-display);font-weight:400;font-size:22px;letter-spacing:-.02em;font-variation-settings:"opsz" 96,"SOFT" 40;margin:0 0 .5rem;line-height:1.1}.error-boundary__message{font-size:.85rem;margin:0}.error-boundary__retry{margin-top:1rem;padding:.5rem 1.5rem;background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-border);border-radius:var(--r);cursor:pointer;font-family:var(--font-mono);text-transform:uppercase;font-size:.75rem;letter-spacing:.1em;transition:background .15s,border-color .15s}.error-boundary__retry:hover{background:var(--accent-border);border-color:var(--accent)}.error-boundary__retry:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-dim)}.sp-menu{position:relative;display:inline-flex}.sp-menu__trigger{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.sp-menu__dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:200px;background:var(--bg-surface);border:1px solid var(--accent-border);box-shadow:var(--accent-glow);z-index:100;display:flex;flex-direction:column}.sp-menu__item{display:flex;align-items:center;gap:10px;padding:10px 14px;color:var(--text-primary, #e5e7eb);text-decoration:none;font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--accent-dim);transition:background .12s var(--ease-snap)}.sp-menu__item:last-child{border-bottom:none}.sp-menu__item:hover{background:var(--bg-elevated);color:var(--accent)}.sp-menu__icon{font-size:16px;opacity:.8}.sp-link{display:inline-flex;align-items:center;gap:4px;color:var(--accent);text-decoration:none;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border:1px solid var(--accent-border);transition:background .12s var(--ease-snap)}.sp-link:hover{background:var(--accent-dim)}.mobile-dash{display:flex;flex-direction:column;min-height:100dvh;background:var(--bg-base);color:var(--text-primary);font-family:var(--font-body, "DM Sans", sans-serif);-webkit-font-smoothing:antialiased;overflow-x:hidden}.mobile-dash__header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-surface);border-bottom:1px solid var(--border-default)}.mobile-dash__title{font-family:var(--font-display);font-size:20px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0}.mobile-dash__clock{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:12px;color:var(--text-secondary)}.mobile-dash__logout{background:none;border:1px solid var(--border-default);color:var(--text-secondary);font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:10px;text-transform:uppercase;letter-spacing:.06em;padding:4px 10px;cursor:pointer;transition:border-color .15s,color .15s}.mobile-dash__logout:hover,.mobile-dash__logout:focus-visible{border-color:var(--accent-border);color:var(--text-primary);outline:none}.mobile-dash__pull-indicator{text-align:center;padding:10px 0;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;transition:opacity .2s}.mobile-dash__pull-indicator--refreshing{color:var(--accent)}.mobile-dash__content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 12px 80px}.mobile-dash__status-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.mobile-kpi{background:var(--bg-surface);border:1px solid var(--border-subtle);padding:8px;text-align:center}.mobile-kpi__value{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:22px;font-weight:700;line-height:1;margin-bottom:2px}.mobile-kpi__value--pending{color:var(--status-pending)}.mobile-kpi__value--completed{color:var(--status-completed)}.mobile-kpi__value--urgent{color:var(--status-urgent)}.mobile-kpi__label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary)}.mobile-section-title{font-family:var(--font-display);font-size:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin:16px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--border-subtle)}.mobile-tech-list{display:flex;flex-direction:column;gap:4px}.mobile-tech-card{display:flex;align-items:center;gap:10px;background:var(--bg-surface);border:1px solid var(--border-subtle);padding:8px 10px;transition:border-color .15s}.mobile-tech-card:active{border-color:var(--accent-border)}.mobile-tech-card__avatar{width:36px;height:36px;border:1px solid var(--border-default);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:13px;font-weight:700;color:var(--accent);background:var(--accent-dim);text-transform:uppercase}.mobile-tech-card__info{flex:1;min-width:0}.mobile-tech-card__name{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:13px;font-weight:600;color:var(--text-primary);text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-tech-card__meta{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:10px;color:var(--text-tertiary);margin-top:2px}.mobile-tech-card__stats{display:flex;gap:10px;flex-shrink:0}.mobile-tech-stat{text-align:center}.mobile-tech-stat__value{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:18px;font-weight:700;line-height:1}.mobile-tech-stat__value--active{color:var(--status-dispatched)}.mobile-tech-stat__value--done{color:var(--status-completed)}.mobile-tech-stat__value--secondary{color:var(--text-secondary)}.mobile-dash__logout--compact{padding:4px 12px}.mobile-tech-stat__label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-top:2px}.mobile-alerts{display:flex;flex-direction:column;gap:6px}.mobile-alert{display:flex;align-items:flex-start;gap:10px;background:var(--bg-surface);border:1px solid var(--border-subtle);padding:10px 12px}.mobile-alert--critical{border-left:3px solid var(--status-urgent);background:var(--red-dim)}.mobile-alert--warning{border-left:3px solid var(--status-pending);background:var(--accent-dim)}.mobile-alert__icon{flex-shrink:0;font-size:14px;margin-top:1px}.mobile-alert__body{flex:1;min-width:0}.mobile-alert__title{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:12px;font-weight:600;color:var(--text-primary)}.mobile-alert__detail{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:10px;color:var(--text-tertiary);margin-top:2px}.mobile-alert__badge{flex-shrink:0;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:10px;padding:2px 6px;text-transform:uppercase;letter-spacing:.06em}.mobile-alert__badge--critical{background:var(--red-dim);color:var(--status-urgent);border:1px solid var(--red-border)}.mobile-alert__badge--warning{background:var(--accent-dim);color:var(--status-pending);border:1px solid var(--accent-border)}.mobile-config{padding:20px 0;text-align:center}.mobile-config__item{display:flex;align-items:center;justify-content:space-between;background:var(--bg-surface);border:1px solid var(--border-subtle);padding:14px 16px;margin-bottom:6px}.mobile-config__label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:12px;color:var(--text-primary);text-transform:uppercase;letter-spacing:.06em}.mobile-config__value{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:12px;color:var(--text-secondary)}.mobile-dash__nav{position:fixed;bottom:0;left:0;right:0;z-index:50;display:grid;grid-template-columns:repeat(4,1fr);background:var(--bg-surface);border-top:1px solid var(--border-default);padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-nav-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 4px 10px;background:none;border:none;color:var(--text-muted);cursor:pointer;transition:color .15s;-webkit-tap-highlight-color:transparent}.mobile-nav-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.mobile-nav-btn--active{color:var(--accent);background:var(--accent-dim)}.mobile-nav-btn__icon{font-size:18px;line-height:1}.mobile-nav-btn__label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.mobile-empty{text-align:center;padding:24px 16px;color:var(--text-tertiary);font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.mobile-skeleton{background:linear-gradient(90deg,var(--bg-surface) 25%,var(--bg-elevated) 50%,var(--bg-surface) 75%);background-size:200% 100%;animation:mobile-shimmer 1.5s infinite}.mobile-skeleton--bar{height:72px}.mobile-skeleton--card{height:56px;margin-bottom:8px}@keyframes mobile-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.mobile-dash__updated{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:10px;color:var(--text-muted);text-align:center;padding:8px 0 4px;text-transform:uppercase;letter-spacing:.06em}.mobile-ot-filters{display:flex;gap:6px;overflow-x:auto;padding:0 0 8px;-webkit-overflow-scrolling:touch;position:relative;mask-image:linear-gradient(to right,black calc(100% - 32px),transparent 100%);-webkit-mask-image:linear-gradient(to right,black calc(100% - 32px),transparent 100%)}.mobile-ot-filters::-webkit-scrollbar{height:0}.mobile-ot-chip{flex:0 0 auto;padding:6px 12px;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-default);cursor:pointer;white-space:nowrap;transition:all .15s;-webkit-tap-highlight-color:transparent}.mobile-ot-chip.active{background:var(--accent-dim);color:var(--accent);border-color:var(--accent-border)}.mobile-ot-list{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.mobile-ot-card{background:var(--bg-surface);border:1px solid var(--border-default);border-left:3px solid var(--status-dispatched, #3b82f6);padding:10px 12px;cursor:pointer;transition:border-color .15s,background .15s}.mobile-ot-card:active{background:var(--bg-elevated)}.mobile-ot-card--expanded{border-color:var(--accent-border);background:var(--bg-elevated)}.ot-card-urgency-critical.mobile-ot-card{border-left-color:var(--status-urgent, #ef4444);background:var(--red-dim)}.ot-card-urgency-warning.mobile-ot-card{border-left-color:var(--accent, #f59e0b)}.mobile-ot-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.mobile-ot-card__id{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:12px;font-weight:500;color:var(--text-secondary)}.mobile-ot-card__badges{display:flex;gap:4px;align-items:center}.mobile-ot-card__badge{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:9px;font-weight:700;padding:1px 5px;color:var(--text-primary);letter-spacing:.02em;line-height:1.4}.mobile-ot-card__badge--sub{background:#64748b26;color:var(--text-secondary);font-weight:500}.mobile-ot-card__badge--priority{background:var(--accent-border);color:var(--accent, #f59e0b)}.mobile-ot-card__badge--age{font-weight:600}.mobile-ot-card__badge--age.fresh{background:var(--green-dim);color:var(--status-completed, #10b981)}.mobile-ot-card__badge--age.aging{background:var(--accent-dim);color:var(--accent)}.mobile-ot-card__badge--age.warning{background:var(--accent-border);color:var(--accent, #f59e0b);font-weight:700}.mobile-ot-card__badge--age.critical{background:var(--red-border);color:var(--status-urgent, #ef4444);font-weight:700}.mobile-ot-card__station{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:4px;line-height:1.25}.mobile-ot-card__footer{display:flex;justify-content:space-between;align-items:center}.mobile-ot-card__tech{font-size:12px;color:var(--text-secondary);font-style:italic}.mobile-ot-card__tech--unassigned{color:var(--accent, #f59e0b)}.mobile-ot-card__status{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:9px;font-weight:700;padding:2px 8px;text-transform:uppercase;letter-spacing:.05em}.mobile-ot-card__status--dispatched{color:var(--text-secondary);background:#64748b26}.mobile-ot-card__status--pending{color:var(--status-urgent, #ef4444);background:var(--red-dim)}.mobile-ot-card__status--progress{color:var(--accent, #f59e0b);background:var(--accent-dim)}.mobile-ot-detail{padding:10px 12px 12px;background:var(--bg-elevated);border:1px solid var(--accent-border);border-top:none;margin-top:-4px;margin-bottom:4px;overflow:hidden;animation:mobile-detail-slide .2s var(--ease-snap, cubic-bezier(.2, 0, 0, 1)) forwards}@keyframes mobile-detail-slide{0%{max-height:0;opacity:0;padding-top:0;padding-bottom:0}to{max-height:300px;opacity:1;padding-top:10px;padding-bottom:12px}}.mobile-ot-detail__row{display:flex;justify-content:space-between;align-items:flex-start;padding:4px 0;font-size:12px;color:var(--text-primary);border-bottom:1px solid rgba(255,255,255,.04)}.mobile-ot-detail__row:last-child{border-bottom:none}.mobile-ot-detail__label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);flex:0 0 80px}.mobile-ot-detail__loading{text-align:center;padding:8px;font-size:11px;color:var(--text-secondary)}.modal-overlay{position:fixed;inset:0;background:#1f1a146b;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:40px 24px;overflow-y:auto;animation:overlayFadeIn .24s var(--ease-out)}[data-theme=dark] .modal-overlay{background:#1f1a14a6}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--r);box-shadow:var(--shadow-lg);max-width:640px;width:92%;margin:auto 0;animation:modalSlideIn .32s var(--ease-out)}.ot-detail-modal{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--r);box-shadow:var(--shadow-lg);max-width:640px;width:92%;max-height:85vh;margin:auto 0;overflow-y:auto;animation:modalSlideIn .32s var(--ease-out)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-loading,.modal-error{padding:3rem;text-align:center;font-family:var(--font-mono);font-size:.85rem}.modal-loading{color:var(--text-secondary)}.modal-error{color:var(--text-danger)}.modal-close-btn{display:block;margin:1rem auto;padding:.5rem 2rem;border:1px solid var(--border-default);border-radius:var(--r);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;font-family:var(--font-mono);transition:border-color .18s,color .18s,background .18s}.modal-close-btn:hover{border-color:var(--border-strong);color:var(--text-primary);background:var(--bg-hover)}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 1.75rem 1.25rem;border-bottom:1px solid var(--border-default)}.detail-header-left{display:flex;align-items:center;gap:.75rem;min-width:0}.detail-emoji{font-size:1.75rem;flex-shrink:0}.detail-ot-id{margin:0;font-size:1.1rem;font-family:var(--font-mono);color:var(--accent);font-weight:600;letter-spacing:.02em}.detail-service-type{font-size:.75rem;color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.03em}.detail-header-right{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.detail-priority{padding:.2rem .5rem;border-radius:var(--r);font-size:.7rem;font-weight:600;font-family:var(--font-mono);background:var(--accent-dim);color:var(--accent)}.detail-age{padding:.2rem .5rem;border-radius:var(--r);font-size:.7rem;font-weight:600;font-family:var(--font-mono);background:#10b98126;color:var(--status-completed)}.detail-age.age-warning{background:var(--accent-border);color:var(--status-pending)}.detail-age.age-critical{background:#ef444426;color:var(--status-urgent);animation:urgentPulse 1.5s ease-in-out infinite}.modal-x-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:.25rem .4rem;margin-left:.25rem;line-height:1;border-radius:var(--r);transition:color .18s,background .18s;min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center}.modal-x-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.detail-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-default);padding:0 1.25rem;background:var(--bg-surface)}.detail-tabs button{padding:.85rem 1.125rem;border:none;background:none;color:var(--text-secondary);font-size:.75rem;font-weight:600;font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border-bottom:2px solid transparent;transition:color .18s,background .18s,border-bottom-color .18s}.detail-tabs button:hover{color:var(--text-primary);background:var(--bg-hover)}.detail-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.detail-section{padding:1.25rem 1.5rem}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border-subtle);border-radius:var(--r);overflow:hidden}@media(max-width:540px){.detail-grid{grid-template-columns:1fr}}.detail-group{background:var(--bg-elevated);padding:1rem 1.125rem}.detail-group.full-width{grid-column:1 / -1}.detail-group h3{margin:0 0 .5rem;font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.detail-field{display:flex;justify-content:space-between;align-items:baseline;padding:.3rem 0;border-bottom:1px solid var(--border-subtle)}.detail-field:last-child{border-bottom:none}.detail-field label{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);min-width:80px;flex-shrink:0}.detail-field span{font-size:.85rem;color:var(--text-primary);font-weight:500;text-align:right;word-break:break-word}.detail-field.unassigned{color:var(--accent);font-style:italic;font-size:.85rem;justify-content:center;padding:.75rem 0}.badge-yes{background:#10b98126;color:var(--status-completed);padding:.15rem .5rem;border-radius:var(--r);font-size:.7rem;font-weight:600;font-family:var(--font-mono)}.detail-description{margin-top:1rem;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--r);padding:.75rem 1rem}.detail-description h3{margin:0 0 .4rem;font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.detail-description p{margin:0;color:var(--text-primary);font-size:.875rem;line-height:1.6}.detail-photo-section{margin-top:1rem;background:var(--bg-elevated);border:1px solid var(--border-default);padding:.75rem 1rem}.detail-photo-section h3{margin:0 0 .5rem;font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.detail-photo-link{display:block;cursor:pointer}.detail-photo-img{display:block;width:100%;max-width:100%;height:auto;border:1px solid var(--border-default);transition:border-color .18s,box-shadow .18s}.detail-photo-link:hover .detail-photo-img{border-color:var(--accent);box-shadow:0 0 12px var(--accent-border)}.detail-photo-link:focus-visible .detail-photo-img{outline:2px solid var(--accent);outline-offset:2px}.detail-photo-empty{margin:0;padding:1rem 0;text-align:center;color:var(--text-secondary);font-family:var(--font-mono);font-size:.8rem;font-style:italic}.detail-pdf-section{margin-top:.75rem;background:var(--bg-elevated);border:1px solid var(--border-default);padding:.75rem 1rem}.detail-pdf-section h3{margin:0 0 .5rem;font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.detail-pdf-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:var(--accent);color:var(--bg-base);font-family:var(--font-mono);font-size:.85rem;font-weight:700;letter-spacing:.03em;text-decoration:none;text-transform:uppercase;border:1px solid var(--accent);transition:background .18s,box-shadow .18s}.detail-pdf-btn:hover{background:var(--accent-bright, #fbbf24);box-shadow:var(--accent-glow)}.detail-pdf-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.detail-pdf-report-num{font-weight:500;opacity:.8;font-size:.75rem}.detail-empty{text-align:center;padding:3rem;color:var(--text-secondary);font-family:var(--font-mono);font-size:.8rem;font-style:italic}.parts-table{width:100%;border-collapse:collapse;font-size:.8rem}.parts-table th{text-align:left;padding:.6rem .75rem;background:var(--bg-elevated);color:var(--text-secondary);font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600;border-bottom:1px solid var(--border-strong)}.parts-table td{padding:.5rem .75rem;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.parts-table tr:hover td{background:var(--bg-hover)}.assign-bar{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;background:var(--bg-elevated);border-bottom:1px solid var(--border-default);gap:.75rem;flex-wrap:wrap}.assign-bar-left{display:flex;align-items:center;gap:.5rem}.assign-select{padding:.4rem .75rem;border:1px solid var(--border-default);border-radius:var(--r);font-size:.8rem;font-family:var(--font-mono);background:var(--bg-surface);color:var(--text-primary);min-width:180px;outline:none;transition:border-color .18s,box-shadow .18s}.assign-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.assign-select option{background:var(--bg-surface);color:var(--text-primary)}.assign-btn{padding:.4rem 1rem;background:var(--accent);color:var(--bg-base);border:1px solid var(--accent);border-radius:var(--r);font-size:.8rem;font-weight:700;font-family:var(--font-mono);cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s;white-space:nowrap}.assign-btn:hover:not(:disabled){background:var(--accent-bright);border-color:var(--accent-bright);box-shadow:var(--accent-glow)}.assign-btn:disabled{opacity:.4;cursor:not-allowed}.assign-error{font-size:.75rem;font-family:var(--font-mono);color:var(--text-danger);font-weight:500}.assign-success{font-size:.75rem;font-family:var(--font-mono);color:var(--text-success);font-weight:500}.score-breakdown{display:flex;flex-direction:column;gap:.5rem}.score-total{display:flex;justify-content:space-between;align-items:center;padding:.4rem .6rem;background:#3b82f61a;border-radius:var(--r);border:1px solid rgba(59,130,246,.2)}.score-total-label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.score-total-value{font-size:1.1rem;font-weight:700;color:var(--blue);font-family:var(--font-mono, monospace)}.score-bars{display:flex;flex-direction:column;gap:.35rem}.score-bar-row{display:grid;grid-template-columns:80px 1fr 42px;align-items:center;gap:.4rem}.score-bar-label{font-size:.7rem;color:var(--text-secondary);text-align:right}.score-bar-track{height:6px;background:rgba(var(--fg-rgb),.06);border-radius:var(--r);overflow:hidden}.score-bar-fill{height:100%;border-radius:var(--r);transition:width .3s ease}.score-bar-value{font-size:.65rem;color:var(--text-primary);font-family:var(--font-mono, monospace);text-align:right}.score-distance{font-size:.7rem;color:var(--text-tertiary);text-align:right;padding-top:.2rem}.notify-btn{background:var(--border-dim);border-color:var(--accent-border);color:var(--accent)}.notify-btn:hover{background:var(--accent-dim);box-shadow:var(--accent-glow)}.notify-overlay{position:fixed;inset:0;background:#060a10d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.notify-panel{background:var(--bg-surface, #0d1526);border:1px solid var(--accent-border);box-shadow:var(--accent-glow);width:min(720px,95vw);max-height:90vh;display:flex;flex-direction:column;font-family:var(--font-body, "DM Sans")}.notify-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--accent-border)}.notify-header h3{margin:0;font-family:var(--font-display, "Bebas Neue");font-size:1.15rem;letter-spacing:.08em;color:var(--accent)}.notify-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.8rem;overflow-y:auto}.notify-field{display:flex;flex-direction:column;gap:.3rem}.notify-field>span{font-family:var(--font-mono, "JetBrains Mono");font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary, #9ca3af)}.notify-field input,.notify-field textarea{background:var(--bg-elevated, #141d2e);border:1px solid var(--accent-border);color:var(--text-primary, #e5e7eb);padding:.55rem .7rem;font-family:inherit;font-size:.9rem;border-radius:0;outline:none;resize:vertical}.notify-field input:focus,.notify-field textarea:focus{border-color:var(--accent);box-shadow:var(--accent-glow)}.notify-field textarea{font-family:var(--font-mono, "JetBrains Mono");font-size:.8rem;line-height:1.45}.notify-hint{margin:0;font-size:.75rem;color:var(--text-tertiary, #6b7280)}.notify-error{color:var(--text-danger);font-size:.85rem;padding:.4rem .6rem;background:#ef444414;border-left:2px solid var(--status-urgent)}.notify-success{color:var(--text-success);font-size:.85rem;padding:.4rem .6rem;background:#10b98114;border-left:2px solid var(--status-completed)}.notify-footer{display:flex;justify-content:flex-end;gap:.6rem;padding:.9rem 1.25rem;border-top:1px solid var(--accent-border)}.assign-btn.secondary{background:transparent;color:var(--text-secondary, #9ca3af);border-color:#9ca3af4d}.detail-photo-ai{margin-top:.5rem;padding:.5rem .75rem;background:var(--bg-elevated);border:1px solid var(--border-default);border-left:2px solid var(--accent);font-family:var(--font-mono);font-size:.75rem}.detail-photo-ai-caption{color:var(--text-primary);margin-bottom:.4rem;display:flex;gap:.5rem;align-items:flex-start}.detail-photo-ai-label{color:var(--accent);font-weight:700;font-size:.7rem;letter-spacing:.05em}.detail-photo-ai-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.4rem}.detail-photo-ai-tag{padding:.15rem .45rem;background:var(--accent-dim);border:1px solid var(--accent-border);color:var(--accent);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.detail-photo-ai-ocr summary{cursor:pointer;color:var(--text-secondary);font-size:.7rem;letter-spacing:.05em;padding:.2rem 0}.detail-photo-ai-ocr pre{margin:.3rem 0 0;padding:.5rem;background:var(--bg-deep);border:1px solid var(--border-default);color:var(--text-primary);font-size:.7rem;white-space:pre-wrap;max-height:160px;overflow:auto}.similar-hint{font-family:var(--font-mono);font-size:10px;color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px}.similar-list{display:flex;flex-direction:column;gap:10px}.similar-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-left:3px solid var(--accent);padding:10px 14px}.similar-card-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.similar-ot{font-family:var(--font-mono);font-weight:700;color:var(--text-primary);font-size:12px}.similar-sim{font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--accent);background:var(--accent-dim);padding:2px 8px;letter-spacing:.04em}.similar-meta{font-family:var(--font-mono);font-size:10px;color:var(--text-secondary);letter-spacing:.04em;margin-bottom:6px}.similar-row{font-size:12px;color:var(--text-primary);margin-top:4px;line-height:1.4}.similar-row b{color:var(--accent);font-weight:600;margin-right:4px}.detail-photo-grid{display:flex;flex-wrap:wrap;gap:8px}.detail-photo-img-empty{min-width:200px;min-height:150px;background:var(--bg-elevated)}.detail-activos-list{display:flex;flex-direction:column;gap:4px}.detail-activo-line{font-family:var(--font-mono);font-size:12px}.detail-fracttal-date{margin-left:6px;opacity:.6}.ot-comments-section{display:flex;flex-direction:column;gap:.75rem}.ot-comments-header{display:flex;justify-content:space-between;align-items:center}.ot-comments-title{margin:0;font-family:var(--font-sans);font-size:14px;font-weight:600;letter-spacing:-.012em;text-transform:none;color:var(--text-primary)}.ot-comments-smart-btn{padding:.4rem .85rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--r);cursor:pointer;font-size:.7rem;font-weight:600;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;transition:background .15s,border-color .15s,color .15s}.ot-comments-smart-btn:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--accent-border)}.ot-comments-empty{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);padding:.75rem;background:var(--bg-elevated);border:1px dashed var(--border-subtle);border-radius:var(--r);text-align:center}.ot-comments-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;max-height:360px;overflow-y:auto}.ot-comments-item{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--r);padding:.5rem .75rem}.ot-comments-meta{display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.65rem;color:var(--text-tertiary);margin-bottom:.3rem;flex-wrap:wrap}.ot-comments-author{color:var(--text-secondary);font-weight:600}.ot-comments-source{padding:.05rem .4rem;background:var(--bg-deep);border:1px solid var(--border-subtle);border-radius:var(--r);font-size:.55rem;text-transform:uppercase;letter-spacing:.05em}.ot-comments-time{margin-left:auto}.ot-comments-delete{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:0 .3rem;font-size:1rem;line-height:1;transition:color .15s}.ot-comments-delete:hover{color:var(--text-danger)}.ot-comments-content{color:var(--text-primary);font-size:.85rem;line-height:1.4;white-space:pre-wrap}.ot-comments-add{display:flex;flex-wrap:wrap;gap:.5rem;align-items:stretch}.ot-comments-textarea{flex:1;padding:.5rem;background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--r);font-family:var(--font-mono);font-size:.8rem;resize:vertical;min-height:50px;outline:none;box-sizing:border-box;transition:border-color .15s}.ot-comments-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.ot-comments-add-btn{padding:.45rem 1rem;background:var(--accent);color:var(--bg-base);border:1px solid var(--accent);border-radius:var(--r);cursor:pointer;font-size:.75rem;font-weight:600;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;align-self:flex-start;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s}.ot-comments-add-btn:hover:not(:disabled){background:var(--accent-bright);border-color:var(--accent-bright);box-shadow:var(--accent-glow)}.ot-comments-add-btn:disabled{opacity:.4;cursor:not-allowed}.ot-comments-error{width:100%;padding:.35rem .6rem;background:var(--status-urgent-bg, rgba(239,68,68,.1));color:var(--text-danger, #ef4444);border:1px solid rgba(239,68,68,.3);border-radius:var(--r);font-size:.75rem}.tech-portal button,.tech-portal a{-webkit-tap-highlight-color:transparent}.tech-portal{min-height:100vh;background:var(--bg-base);display:flex;flex-direction:column;max-width:512px;margin:0 auto}.tech-header{position:sticky;top:0;z-index:10;background:var(--bg-surface);border-bottom:1px solid var(--border-default);padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between}.tech-header-left{display:flex;align-items:center;gap:.75rem;min-width:0}.tech-logo{width:36px;height:36px;background:var(--accent);border-radius:6px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:.95rem;color:var(--accent-fg);letter-spacing:.03em;flex-shrink:0}.tech-user-name{font-weight:600;color:var(--text-primary);font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tech-user-role{font-size:.75rem;color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase}.tech-header-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.tech-nav{display:none}.tech-content{flex:1;overflow-y:auto;padding:1rem 1rem calc(6rem + env(safe-area-inset-bottom,0px))}.tech-bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:512px;display:flex;background:var(--bg-surface);border-top:1px solid var(--border-default);z-index:50;padding-bottom:env(safe-area-inset-bottom,0)}.tech-bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.5rem .25rem;min-height:56px;background:transparent;border:none;cursor:pointer;color:var(--text-secondary);transition:color .15s;position:relative;-webkit-tap-highlight-color:transparent}.tech-bottom-tab:active{background:var(--accent-border);transition:background .05s}.tech-bottom-tab.active{color:var(--accent);background:var(--accent-dim)}.tech-bottom-tab.active:before{content:"";position:absolute;top:0;left:20%;right:20%;height:3px;background:var(--accent)}.tech-bottom-icon{font-size:1.25rem;line-height:1}.tech-bottom-label{font-size:.75rem;font-weight:600;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.03em;line-height:1}.tech-bottom-badge{position:absolute;top:.25rem;right:50%;transform:translate(calc(50% + 10px));font-size:.7rem;font-weight:700;font-family:var(--font-mono);min-width:16px;height:16px;line-height:16px;text-align:center;border-radius:8px;background:var(--accent);color:var(--accent-fg)}.tech-station-group{margin-bottom:1rem}.tech-station-header{display:flex;align-items:center;justify-content:space-between;padding:.4rem .5rem;margin-bottom:.25rem;border-bottom:1px solid var(--accent-border, var(--accent-border))}.tech-station-header__name{font-family:var(--font-display);font-size:.95rem;letter-spacing:.05em;color:var(--accent, #f59e0b);text-transform:uppercase}.tech-station-header__count{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:.8rem;font-weight:700;padding:.1rem .4rem;background:var(--accent-dim, var(--accent-border));color:var(--accent, #f59e0b)}.tech-station-group .tech-ot-card{margin-bottom:.35rem}.tech-station-group .tech-ot-card:last-child{margin-bottom:0}.tech-ot-card{margin-bottom:.75rem;padding:1rem;border-left-width:4px;border-left-style:solid}.tech-ot-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.5rem}.tech-ot-station{font-weight:700;color:var(--text-primary);font-size:1.1rem;margin-bottom:.15rem;line-height:1.25}.tech-ot-id{font-size:.95rem;color:var(--text-secondary);letter-spacing:.02em}.tech-ot-badges{display:flex;gap:.35rem;flex-shrink:0}.tech-ot-description{font-size:.8rem;color:var(--text-secondary);margin-bottom:.5rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tech-ot-meta{display:flex;align-items:center;gap:.5rem;font-size:.7rem;color:var(--text-secondary);margin-bottom:.5rem}.tech-progress{display:flex;align-items:center;gap:3px;margin-bottom:.5rem}.tech-progress-step{height:3px;flex:1;border-radius:2px;background:var(--border-default)}.tech-progress-step.filled{background:var(--status-dispatched)}.tech-progress-step.completed{background:var(--status-completed)}.tech-completed-check{margin-top:.25rem;display:flex;align-items:center;justify-content:center;color:var(--status-completed);font-size:.85rem;gap:.3rem;font-family:var(--font-mono);font-weight:600}.tech-history-card{padding:.7rem .8rem;margin-bottom:.4rem;font-size:.8rem}.tech-history-station{font-weight:600;color:var(--text-primary);margin-bottom:.15rem}.tech-history-meta{display:flex;gap:.75rem;flex-wrap:wrap;font-size:.7rem;color:var(--text-secondary)}.btn-complete{width:100%;min-height:48px;margin-top:.25rem;background:var(--green-dim);color:var(--status-completed);border:1px solid var(--green-border);border-radius:var(--r);font-weight:700;font-size:.85rem;font-family:var(--font-body);cursor:pointer;transition:all .18s}@media(hover:hover){.btn-complete:hover{background:var(--green-border);border-color:var(--status-completed);box-shadow:0 0 12px var(--green-border)}}.btn-complete:active{transform:scale(.97);transition:transform .05s}.btn-complete:disabled{opacity:.5;cursor:not-allowed}.tech-error-banner{background:#ef44441a;border-left:3px solid var(--status-urgent);padding:.75rem 1rem;margin:.75rem 1rem 0;border-radius:var(--r);font-size:.8rem;color:var(--status-urgent)}.tech-gps-banner{background:var(--accent-dim);border-left:3px solid var(--accent);padding:.5rem 1rem;margin:.5rem 1rem 0;border-radius:6px;font-size:.75rem;color:var(--text-secondary);display:flex;align-items:center;gap:.5rem}.tech-toast{position:fixed;bottom:5.5rem;left:1rem;right:1rem;max-width:480px;margin:0 auto;padding:.75rem 1rem;border-radius:var(--r);font-size:.85rem;font-weight:600;z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tech-toast-success{background:var(--green-dim);color:var(--status-completed);border:1px solid var(--green-border)}.tech-toast-error{background:var(--red-dim);color:var(--status-urgent);border:1px solid var(--red-border)}.tech-refresh-btn{position:fixed;bottom:4.5rem;right:1rem;width:48px;height:48px;background:var(--accent);border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px var(--accent-border);transition:all .18s;color:var(--accent-fg)}@media(hover:hover){.tech-refresh-btn:hover{background:var(--accent-bright);box-shadow:var(--shadow-sm)}}.tech-refresh-btn:active{transform:scale(.93);transition:transform .05s}.tech-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.tech-empty{text-align:center;padding:3rem 0;color:var(--text-secondary)}.tech-empty svg{margin:0 auto .75rem;height:3rem;width:3rem;color:var(--text-muted)}.tech-config-overlay{position:fixed;inset:0;background:#020617b8;z-index:60;display:flex;align-items:center;justify-content:center;padding:1rem}.tech-config-panel{width:100%;max-width:420px;padding:1rem;border:1px solid var(--border-default);background:var(--bg-surface)}.tech-detail-panel{max-width:480px;max-height:85vh;overflow-y:auto}.tech-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.tech-detail-title{font-weight:700;font-size:1rem;color:var(--text-primary)}.tech-detail-subtitle{font-size:.75rem;color:var(--text-secondary)}.tech-detail-badges{display:flex;gap:.4rem;margin-bottom:.75rem;flex-wrap:wrap}.tech-detail-desc{font-size:.82rem;color:var(--text-secondary);line-height:1.5;margin-bottom:.75rem}.tech-detail-section{padding:.6rem .8rem;margin-bottom:.5rem}.tech-detail-section .section-label{margin-bottom:.3rem}.tech-detail-section-title{font-weight:600;font-size:.82rem;color:var(--text-primary)}.tech-detail-section-meta{font-size:.72rem;color:var(--text-secondary);display:flex;gap:.75rem;margin-top:.15rem}.tech-detail-section-text{font-size:.75rem;color:var(--text-secondary);line-height:1.4}.tech-detail-section-note{font-size:.72rem;color:var(--text-secondary);margin-top:.25rem;font-style:italic}.tech-detail-dates{font-size:.7rem;color:var(--text-secondary);margin-top:.75rem;display:flex;flex-direction:column;gap:.15rem}.tech-pin-warning{background:var(--accent-dim);border:1px solid var(--accent);border-radius:6px;padding:.6rem .8rem;margin-bottom:.75rem;font-size:.78rem;color:var(--text-primary)}.tech-part-card{padding:.6rem .8rem;margin-bottom:.4rem;border-left:3px solid var(--accent);font-size:.8rem}.tech-part-header{display:flex;justify-content:space-between;align-items:flex-start}.tech-part-name{font-weight:600;color:var(--text-primary);flex:1;min-width:0}.tech-part-qty{font-size:.7rem;color:var(--text-secondary);flex-shrink:0}.tech-part-meta{display:flex;gap:.75rem;margin-top:.15rem;font-size:.7rem;color:var(--text-secondary);flex-wrap:wrap}.tech-maint-pill{font-size:.72rem;padding:.2rem .5rem;border-radius:4px;font-weight:600;font-family:var(--font-mono)}.tech-maint-entry{padding:.6rem .8rem;margin-bottom:.4rem;font-size:.8rem}@media(max-width:540px){.tech-header{padding:.5rem .75rem}.tech-logo{width:30px;height:30px;font-size:.8rem}.tech-user-name{font-size:.85rem}.tech-header-actions .btn-label{display:none}.tech-header-actions .btn{padding:.3rem .4rem;font-size:.85rem}.tech-content{padding:.75rem .75rem calc(5.5rem + env(safe-area-inset-bottom,0px))}.tech-ot-card{padding:.75rem;margin-bottom:.5rem}.tech-ot-station{font-size:1rem}.tech-ot-description{font-size:.75rem}.tech-refresh-btn{width:44px;height:44px;bottom:4.5rem;right:.75rem}.tech-config-panel{padding:.75rem}}.aup-container{min-height:100vh;background:var(--bg-base);padding:1.5rem}@media(min-width:768px){.aup-container{padding:2rem}}.aup-denied{padding:3rem;text-align:center;color:var(--status-urgent);font-family:var(--font-mono);font-size:.85rem}.aup-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:var(--bg-base)}.aup-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:.75rem}.aup-header-left{display:flex;align-items:center;gap:.75rem}.aup-back-link{color:var(--text-secondary);text-decoration:none;font-size:.85rem;transition:color .18s}.aup-back-link:hover{color:var(--accent)}.aup-title{font-family:var(--font-mono);font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0}.aup-count{font-size:.65rem}.aup-table-card{padding:0;overflow:hidden}.aup-table{width:100%;border-collapse:collapse;display:none}@media(min-width:768px){.aup-table{display:table}}.aup-table thead th{padding:.875rem 1rem;text-align:left;border-bottom:1px solid var(--border-default);background:var(--bg-elevated)}.aup-table tbody td{padding:.75rem 1rem;font-size:.85rem;color:var(--text-primary);border-bottom:1px solid var(--border-subtle)}.aup-row{transition:background .18s}.aup-row:hover{background:var(--bg-hover)}.aup-row:last-child td{border-bottom:none}.aup-status{display:inline-flex;align-items:center;font-size:.8rem;font-family:var(--font-mono)}.aup-status--active{color:var(--status-completed)}.aup-status--inactive{color:var(--status-urgent)}.aup-actions{display:flex;gap:.5rem}.btn.aup-action-btn{padding:.3rem .6rem;font-size:.75rem}.aup-mobile-list{display:flex;flex-direction:column;gap:.5rem;padding:.75rem}@media(min-width:768px){.aup-mobile-list{display:none}}.aup-mobile-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--r);padding:.875rem;transition:border-color .18s}.aup-mobile-card:hover{border-color:var(--border-strong)}.aup-mobile-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.aup-mobile-name{font-size:.8rem;color:var(--text-secondary);margin:0 0 .5rem}.aup-mobile-footer{display:flex;align-items:center;justify-content:space-between}.aup-mobile-actions{display:flex;gap:.4rem}.aup-empty{padding:3rem;text-align:center;font-size:.85rem}.aup-overlay{position:fixed;inset:0;background:#1f1a14b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem}.aup-modal{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--r);width:100%;max-width:28rem;padding:1.5rem;box-shadow:var(--shadow-lg)}.aup-modal-title{font-family:var(--font-mono);font-size:1.1rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-subtle)}.aup-error{color:var(--status-urgent);font-size:.8rem;font-family:var(--font-mono);margin:0 0 .75rem;padding:.5rem .75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:var(--r)}.aup-form{display:flex;flex-direction:column;gap:.75rem}.aup-field{display:flex;flex-direction:column;gap:.35rem}.aup-input-disabled{opacity:.5;cursor:not-allowed}.aup-form select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.aup-form select.input option{background:var(--bg-elevated);color:var(--text-primary)}.aup-modal-buttons{display:flex;gap:.75rem;margin-top:.5rem}.aup-modal-buttons .btn{flex:1}
