:root{--sim-forest: #012316;--sim-forest-80: #1e342b;--sim-forest-70: #2a3d34;--sim-forest-60: #41514a;--sim-moss: #6c786c;--sim-ash-dark: #7e897e;--sim-ash: #8a968d;--sim-ash-light: #9aa695;--sim-mist: #c7d0c2;--sim-sand: #cbd0be;--sim-sage: #d9ddce;--sim-line-soft: #dadece;--sim-line: #dde1d4;--sim-line-strong: #e3e6da;--sim-cream: #eceee4;--sim-beige: #f2f4eb;--sim-paper: #f7f8f1;--sim-white: #fff;--sim-lime: #dbff38;--sim-error: #ffb4a2;--sim-warn-bg: #fff3cd;--sim-warn-border: #e7d58a;--sim-warn-text: #6a5a1e;--sim-warn-strong: #9a6a00}.sim-page{min-height:100dvh;background:var(--sim-forest);padding:22px 14px 70px}.sim-topbar{max-width:520px;margin:0 auto 18px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;color:var(--sim-mist);font-size:13px}.sim-topbar a,.sim-back{color:var(--sim-lime);text-decoration:none;font-weight:700}.sim-topbar a:hover{text-decoration:underline}.sim-topbar-note{color:var(--sim-error)}.sim-topbar-deal b{color:var(--sim-white);margin:0 6px}.sim-link-btn{background:none;border:0;padding:0;color:var(--sim-lime);font:inherit;font-weight:700;cursor:pointer}.sim-topbar-pick{flex:1 1 260px;min-width:240px;color:var(--text)}.sim{--sim-radius: 20px;max-width:520px;margin:0 auto;color:var(--sim-white);font-feature-settings:"tnum" 1}.sim-status{max-width:520px;margin:24px auto;line-height:1.5;color:var(--sim-beige)}.sim-status a{color:var(--sim-lime)}.sim-status.alert{color:var(--sim-error)}.sim .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--sim-lime);font-weight:700}.sim h1{font-size:28px;font-weight:800;letter-spacing:-.02em;margin:6px 0 8px;line-height:1.02;color:var(--sim-white)}.sim .sub{font-style:italic;font-family:Georgia,Times New Roman,serif;color:var(--sim-mist);font-size:16px;line-height:1.4;margin-bottom:22px}.sim .context-card{background:var(--sim-forest-80);border:1.5px solid var(--sim-forest-60);border-radius:14px;padding:12px 16px;margin:0 0 16px;font-size:13px}.sim .context-row{display:flex;justify-content:space-between;gap:12px;padding:3px 0}.sim .context-row .k{text-transform:uppercase;letter-spacing:.08em;font-size:10.5px;font-weight:700;color:var(--sim-ash);padding-top:2px}.sim .context-row .v{font-weight:700;text-align:right}.sim .context-note{margin-top:6px;padding-top:6px;border-top:1px dashed var(--sim-forest-60);color:var(--sim-mist);font-size:12px;font-style:italic}.sim .complete-card{background:var(--sim-warn-bg);border:1.5px solid var(--sim-warn-border);border-radius:14px;padding:14px 16px;margin:0 0 16px;color:var(--sim-warn-text)}.sim .complete-title{font-size:14px;font-weight:800}.sim .complete-title small{display:block;font-weight:500;font-size:12px;margin-top:3px;line-height:1.4}.sim .complete-fields{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.sim .complete-fields input{flex:1;min-width:130px;font-family:inherit;font-size:14px;font-weight:600;color:var(--sim-forest);background:var(--sim-white);border:1.5px solid var(--sim-sage);border-radius:10px;padding:10px 12px}.sim .complete-fields input:focus{outline:none;border-color:var(--sim-forest)}.sim .complete-btn{display:block;width:100%;margin-top:10px;background:var(--sim-forest);color:var(--sim-lime);font-family:inherit;font-weight:700;font-size:13px;border:none;border-radius:10px;padding:11px;cursor:pointer}.sim .complete-btn:disabled{opacity:.55;cursor:not-allowed}.sim .card{border-radius:var(--sim-radius);padding:22px;margin-bottom:14px}.sim .card.beige{background:var(--sim-beige);color:var(--sim-forest)}.sim .card.forest{background:var(--sim-forest-80);color:var(--sim-white)}.sim .card.lime{background:var(--sim-lime);color:var(--sim-forest)}.sim .field-label{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.75;margin-bottom:10px}.sim .field-label.dim{opacity:.6}.sim select{width:100%;appearance:none;-webkit-appearance:none;font-family:inherit;font-size:17px;font-weight:700;color:var(--sim-forest);background:var(--sim-white);border:1.5px solid var(--sim-sage);border-radius:14px;padding:15px 44px 15px 16px;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23012316' stroke-width='3'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 16px center}.sim select:focus{outline:none;border-color:var(--sim-forest);box-shadow:0 0 0 3px #0123162e}.sim .price-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px;padding-top:16px;border-top:1.5px dashed var(--sim-sand)}.sim .price-row.tight{margin-top:8px;padding-top:8px}.sim .price-row.flat{margin-top:0;padding-top:0;border-top:none}.sim .price-row .lbl{font-size:13px;opacity:.7}.sim .price-row .val{font-size:22px;font-weight:800;letter-spacing:-.01em}.sim .price-row .val.small{font-size:15px}.sim .hero-top{display:flex;justify-content:space-between;align-items:flex-start}.sim .loyer-big{font-size:56px;font-weight:800;letter-spacing:-.035em;line-height:.95;margin:4px 0 0;display:flex;align-items:baseline;gap:4px}.sim .loyer-big .cur{font-size:30px;font-weight:700}.sim .loyer-unit{font-size:14px;font-weight:600;opacity:.7;margin-top:2px}.sim .loyer-was{font-style:italic;font-family:Georgia,serif;font-size:15px;margin-top:6px;opacity:.8}.sim .cee-flag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--sim-forest);color:var(--sim-lime);padding:3px 9px;border-radius:99px;margin-top:8px}.sim .toggle{display:inline-flex;background:#0123161f;border-radius:99px;padding:3px;gap:2px}.sim .toggle button{font-family:inherit;font-size:12px;font-weight:700;letter-spacing:.04em;border:none;background:transparent;color:var(--sim-forest);padding:7px 13px;border-radius:99px;cursor:pointer;text-transform:uppercase}.sim .toggle button.on{background:var(--sim-forest);color:var(--sim-lime)}.sim .lever{margin-top:22px}.sim .lever.first{margin-top:4px}.sim .lever-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.sim .lever-head .name{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sim-mist)}.sim .lever-head .name.dark{color:var(--sim-forest-80)}.sim .amount{display:flex;align-items:center;background:var(--sim-forest);border:1.5px solid var(--sim-forest-60);border-radius:11px;padding:0 12px;height:42px;min-width:118px;justify-content:flex-end;flex:none}.sim .amount input{font-family:inherit;font-size:19px;font-weight:800;color:var(--sim-white);background:transparent;border:none;text-align:right;width:80px;letter-spacing:-.01em}.sim .amount input:focus{outline:none}.sim .amount input::-webkit-outer-spin-button,.sim .amount input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.sim .amount input[type=number]{-moz-appearance:textfield;appearance:textfield}.sim .amount .cur{font-size:16px;font-weight:700;color:var(--sim-lime);margin-left:5px}.sim .amount:focus-within{border-color:var(--sim-lime);box-shadow:0 0 0 3px #dbff382e}.sim .amount.dark{background:var(--sim-white);border-color:var(--sim-sage)}.sim .amount.dark input,.sim .amount.dark .cur{color:var(--sim-forest)}.sim input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:34px;background:transparent;cursor:pointer}.sim input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:99px;background:linear-gradient(90deg,var(--sim-lime) var(--fill, 50%),var(--sim-forest-60) var(--fill, 50%))}.sim input[type=range]::-moz-range-track{height:6px;border-radius:99px;background:var(--sim-forest-60)}.sim input[type=range]::-moz-range-progress{height:6px;border-radius:99px;background:var(--sim-lime)}.sim input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:26px;height:26px;border-radius:50%;background:var(--sim-white);border:6px solid var(--sim-lime);margin-top:-10px;box-shadow:0 2px 8px #0006}.sim input[type=range]::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:var(--sim-white);border:6px solid var(--sim-lime);box-shadow:0 2px 8px #0006}.sim input[type=range]:focus{outline:none}.sim .bounds{display:flex;justify-content:space-between;font-size:11px;color:var(--sim-ash);margin-top:-2px}.sim .apport-split{margin-top:14px}.sim .stack{display:flex;height:9px;border-radius:99px;overflow:hidden;background:var(--sim-forest-70)}.sim .stack .d{background:var(--sim-mist)}.sim .stack .c{background:var(--sim-lime)}.sim .split-legend{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:var(--sim-mist)}.sim .split-legend b{color:var(--sim-white)}.sim .split-legend .dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;vertical-align:middle}.sim .dot.d{background:var(--sim-mist)}.sim .dot.c{background:var(--sim-lime)}.sim .reset{display:inline-flex;align-items:center;gap:7px;background:none;border:1.5px solid var(--sim-forest-60);color:var(--sim-lime);font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;padding:9px 16px;border-radius:99px;margin-top:20px}.sim .reset:hover{border-color:var(--sim-lime)}.sim .cee-head{display:flex;justify-content:space-between;align-items:center}.sim .cee-title{font-size:15px;font-weight:800;letter-spacing:-.01em}.sim .cee-title small{display:block;font-size:11px;font-weight:600;opacity:.65;margin-top:3px}.sim .switch{position:relative;width:50px;height:28px;flex:none}.sim .switch input{opacity:0;width:0;height:0}.sim .switch .slot{position:absolute;inset:0;background:var(--sim-sand);border-radius:99px;transition:.18s}.sim .switch .knob{position:absolute;top:3px;left:3px;width:22px;height:22px;background:var(--sim-white);border-radius:50%;transition:.18s;box-shadow:0 1px 3px #0000004d}.sim .switch input:checked+.slot{background:var(--sim-forest)}.sim .switch input:checked+.slot .knob{transform:translate(22px)}.sim .cee-body{margin-top:18px}.sim .cee-split{font-style:italic;font-family:Georgia,serif;font-size:14px;line-height:1.4;color:var(--sim-forest);margin-top:14px;padding-top:14px;border-top:1.5px dashed var(--sim-sand)}.sim .cee-range::-webkit-slider-runnable-track{background:linear-gradient(90deg,var(--sim-forest) var(--fill, 50%),var(--sim-sand) var(--fill, 50%))}.sim .cee-range::-webkit-slider-thumb{border-color:var(--sim-forest)}.sim .cee-range::-moz-range-thumb{border-color:var(--sim-forest)}.sim .cee-range::-moz-range-progress{background:var(--sim-forest)}.sim .cee-bounds{display:flex;justify-content:space-between;font-size:11px;color:var(--sim-ash-dark);margin-top:-2px}.sim .synth .row{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--sim-line-soft);font-size:14px}.sim .synth .row .k{opacity:.75}.sim .synth .row .v{font-weight:700}.sim .synth .row.cee .k,.sim .synth .row.cee .v{color:var(--sim-forest-80);opacity:1}.sim .pitch{font-style:italic;font-family:Georgia,serif;font-size:16px;line-height:1.45;color:var(--sim-forest);margin-top:16px;padding-top:16px;border-top:1.5px dashed var(--sim-sand)}.sim .pitch.tight{margin-top:12px;padding-top:12px;font-size:14px}.sim footer{text-align:center;color:var(--sim-ash-dark);font-size:11px;margin-top:26px}.sim .validate{display:block;width:100%;background:var(--sim-lime);color:var(--sim-forest);font-family:inherit;font-weight:800;font-size:16px;letter-spacing:-.01em;border:none;border-radius:16px;padding:18px;cursor:pointer;margin-top:6px}.sim .validate:hover{filter:brightness(1.04)}.sim .warnbox,.sim-overlay .warnbox{background:var(--sim-warn-bg);border:1px solid var(--sim-warn-border);border-radius:10px;padding:10px 12px;font-size:12.5px;color:var(--sim-warn-text);margin-top:14px;line-height:1.4}.sim-overlay{position:fixed;inset:0;background:#012316b8;z-index:50;overflow-y:auto;padding:24px 12px}.sim-overlay .recap{background:var(--sim-white);color:var(--sim-forest);max-width:760px;margin:0 auto;border-radius:18px;padding:30px 28px;font-feature-settings:"tnum" 1}.sim-overlay .reyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--sim-forest);opacity:.55}.sim-overlay h2{font-size:24px;font-weight:800;letter-spacing:-.02em;margin:2px 0}.sim-overlay h3{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--sim-forest);margin:24px 0 10px;padding-bottom:6px;border-bottom:2px solid var(--sim-lime)}.sim-overlay .recap-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:4px}.sim-overlay .rtoggle{display:inline-flex;background:var(--sim-cream);border-radius:99px;padding:3px;gap:2px}.sim-overlay .rtoggle button{font-family:inherit;font-size:12px;font-weight:700;border:none;background:transparent;color:var(--sim-forest);padding:7px 15px;border-radius:99px;cursor:pointer;text-transform:uppercase;letter-spacing:.04em}.sim-overlay .rtoggle button.on{background:var(--sim-forest);color:var(--sim-lime)}.sim-overlay .rrow{display:flex;justify-content:space-between;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--sim-cream);font-size:14px}.sim-overlay .rrow .k{color:var(--sim-forest-60)}.sim-overlay .rrow .v{font-weight:700}.sim-overlay .rrow.big .v{font-size:18px;font-weight:800}.sim-overlay .rrow.sub{padding:6px 0 6px 16px;border-bottom:1px dashed var(--sim-cream)}.sim-overlay .rrow.sub .k{font-size:13px;color:var(--sim-moss)}.sim-overlay .rrow.sub .v{font-weight:600}.sim-overlay .det{color:var(--sim-moss);font-size:12px}.sim-overlay .det.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11.5px;margin-top:2px}.sim-overlay .missing{color:var(--sim-warn-strong);font-weight:700}.sim-overlay .ech{margin-top:8px}.sim-overlay .ech table{width:100%;border-collapse:collapse;font-size:13px}.sim-overlay .ech th{text-align:left;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--sim-moss);font-weight:700;padding:8px 8px 8px 0;border-bottom:1.5px solid var(--sim-line)}.sim-overlay .ech th.right{text-align:right}.sim-overlay .ech td{padding:9px 8px 9px 0;border-bottom:1px solid var(--sim-cream);vertical-align:top}.sim-overlay .ech td.amt{text-align:right;font-weight:700;white-space:nowrap}.sim-overlay .ech .step{font-weight:700}.sim-overlay .rcheck{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;margin:10px 0 4px;cursor:pointer}.sim-overlay .rcheck input{width:16px;height:16px;accent-color:var(--sim-forest)}.sim-overlay .rcheck em{color:var(--sim-moss);font-style:italic;font-weight:500}.sim-overlay .rslider{background:var(--sim-paper);border:1px solid var(--sim-cream);border-radius:12px;padding:12px 14px;margin:8px 0}.sim-overlay .rslider-head{display:flex;justify-content:space-between;align-items:baseline;font-size:12.5px;font-weight:700}.sim-overlay .rslider-val{font-size:15px;font-weight:800}.sim-overlay .rslider input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:30px;background:transparent;cursor:pointer}.sim-overlay .rslider input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:99px;background:linear-gradient(90deg,var(--sim-forest) var(--fill, 50%),var(--sim-sand) var(--fill, 50%))}.sim-overlay .rslider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--sim-white);border:5px solid var(--sim-forest);margin-top:-8px;box-shadow:0 1px 4px #0000004d}.sim-overlay .rslider input[type=range]::-moz-range-track{height:6px;border-radius:99px;background:var(--sim-sand)}.sim-overlay .rslider input[type=range]::-moz-range-progress{height:6px;border-radius:99px;background:var(--sim-forest)}.sim-overlay .rslider input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--sim-white);border:5px solid var(--sim-forest)}.sim-overlay .rslider-bounds{display:flex;justify-content:space-between;font-size:11px;color:var(--sim-ash-dark);margin-top:-2px}.sim-overlay .rnote{font-size:12px;color:var(--sim-moss);line-height:1.45;margin:6px 0 8px}.sim-overlay .rplan{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}.sim-overlay .pf{flex:1;min-width:190px}.sim-overlay .pf label{display:block;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--sim-moss);margin-bottom:4px}.sim-overlay .pf select,.sim-overlay .pf input[type=date]{width:100%;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--sim-forest);background:var(--sim-white);border:1.5px solid var(--sim-sage);border-radius:10px;padding:8px 10px}.sim-overlay .pdates{background:var(--sim-paper);border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.5;color:var(--sim-forest-60);margin:8px 0 4px}.sim-overlay .fdate{font-size:10px;font-weight:700;color:var(--sim-ash-light);margin-bottom:2px}.sim-overlay .frise{display:flex;justify-content:space-between;align-items:flex-start;position:relative;margin:22px 0 6px;gap:4px}.sim-overlay .frise .fline{position:absolute;top:6px;left:8%;right:8%;height:2px;background:var(--sim-sand);z-index:0}.sim-overlay .fnode{position:relative;z-index:1;flex:1;text-align:center;min-width:0}.sim-overlay .fdot{width:14px;height:14px;border-radius:50%;background:var(--sim-lime);border:2px solid var(--sim-forest);margin:0 auto 8px}.sim-overlay .flabel{font-size:10px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--sim-forest-60);line-height:1.15}.sim-overlay .famt{font-size:12px;font-weight:800;color:var(--sim-forest);margin-top:3px}.sim-overlay .btn-quote{display:block;width:100%;background:var(--sim-lime);color:var(--sim-forest);font-family:inherit;font-weight:800;font-size:15px;border:none;border-radius:12px;padding:15px;cursor:pointer;margin-top:12px}.sim-overlay .btn-quote:disabled{opacity:.6;cursor:wait}.sim-overlay .quote-note{margin-top:10px;font-size:12px;color:var(--sim-moss);line-height:1.4}.sim-overlay .rrow a{color:var(--sim-forest);font-weight:800}.sim-overlay .sim-confirm{position:fixed;inset:0;background:#0123168c;display:flex;align-items:center;justify-content:center;padding:20px;z-index:50}.sim-overlay .sim-confirm-box{background:var(--sim-white);border-radius:16px;padding:24px;max-width:420px;width:100%;text-align:center;box-shadow:0 8px 40px #01231640}.sim-overlay .sim-confirm-title{font-weight:800;font-size:18px;color:var(--sim-forest);margin-bottom:10px}.sim-overlay .sim-confirm-box p{font-size:14px;color:var(--sim-forest-60);line-height:1.5;margin:0 0 12px}.sim-overlay .sim-confirm-box a{color:var(--sim-forest);font-weight:800}.sim-overlay .recap-actions{display:flex;gap:10px;margin-top:26px}.sim-overlay .recap-actions button{flex:1;font-family:inherit;font-weight:700;font-size:14px;border-radius:12px;padding:13px;cursor:pointer;border:none}.sim-overlay .btn-print{background:var(--sim-forest);color:var(--sim-lime)}.sim-overlay .btn-close{background:var(--sim-cream);color:var(--sim-forest)}@media print{body>*:not(.sim-overlay){display:none!important}.sim-overlay{position:static!important;background:var(--sim-white)!important;padding:0!important;overflow:visible!important}.sim-overlay .recap{max-width:100%!important;box-shadow:none!important;padding:0!important;border-radius:0}.sim-overlay .recap-actions,.sim-overlay .no-print{display:none!important}}.sim-overlay .quote-confirm{margin-top:12px;padding:12px 14px;border:1px solid var(--sim-line-strong);border-radius:12px;background:var(--sim-paper);color:var(--sim-forest);font-size:14px;line-height:1.45}.sim-overlay .quote-confirm-actions{display:flex;gap:10px;align-items:center}.sim-overlay .quote-confirm-actions .btn-quote{margin-top:0;flex:1}:root{--bg: #0f141a;--bg-deep: #0b0f14;--panel: #161e28;--panel-2: #1b2530;--line: #26313f;--line-soft: #1f2832;--text: #cbd5e0;--text-strong: #eef3f8;--muted: #8693a0;--bg-glow: #14202b;--signal: #34d6ae;--signal-dim: #1d6e5c;--warn: #e6a23c;--alert: #de5a4e;--steel: #88a0b4;--accent: #9d7cff;--tint: 12%;--display: "Chakra Petch", system-ui, sans-serif;--body: "IBM Plex Sans", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--fs-xs: 11px;--fs-sm: 12px;--fs-md: 13px;--fs-base: 14px;--fs-lg: 16px;--fs-xl: 18px;--fs-2xl: 26px;--fs-kpi: 34px;--fs-instrument: 40px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-tight: 1.1;--lh-snug: 1.35;--lh-normal: 1.5;--ls-display: .04em;--ls-caps: .16em;--ls-eyebrow: .22em;--sp-2: 2px;--sp-4: 4px;--sp-6: 6px;--sp-8: 8px;--sp-10: 10px;--sp-12: 12px;--sp-14: 14px;--sp-16: 16px;--sp-18: 18px;--sp-20: 20px;--sp-24: 24px;--sp-28: 28px;--sp-32: 32px;--radius-xs: 3px;--radius: 6px;--radius-lg: 10px;--radius-pill: 999px;--control-h: 34px;--control-h-sm: 28px;--panel-pad: var(--sp-18);--cell-pad-y: var(--sp-14);--cell-pad-x: var(--sp-16);--topbar-h: 56px;--shadow: 0 1px 0 rgba(255, 255, 255, .02) inset, 0 8px 24px rgba(0, 0, 0, .35);--dur: .12s}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:radial-gradient(1200px 600px at 75% -10%,var(--bg-glow) 0%,transparent 60%),var(--bg);color:var(--text);font-family:var(--body);font-size:var(--fs-base);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.display{font-family:var(--display);letter-spacing:.02em}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--display);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--muted)}.text-muted{color:var(--muted)}.text-xs{font-size:var(--fs-xs)}.text-sm{font-size:var(--fs-sm)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--signal);outline-offset:2px;border-radius:var(--radius-xs)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.shell{min-height:100%;display:grid;grid-template-rows:auto 1fr}.topbar{display:flex;align-items:center;gap:var(--sp-24);padding:var(--sp-14) var(--sp-24);border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--panel) 0%,var(--bg) 100%);position:sticky;top:0;z-index:10}.brand{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-4)}.brand .mark{font-family:var(--display);font-weight:var(--fw-bold);font-size:var(--fs-xl);color:var(--text-strong);letter-spacing:.04em}.brand .mark b{color:var(--signal);font-weight:var(--fw-bold)}.topbar>.mode{margin-left:var(--sp-8)}.nav{display:flex;gap:var(--sp-4);margin-left:auto}.nav a{font-family:var(--display);font-size:var(--fs-md);font-weight:var(--fw-semibold);letter-spacing:.04em;padding:var(--sp-8) var(--sp-14);border-radius:var(--radius);color:var(--muted);border:1px solid transparent}.nav a:hover{color:var(--text);background:var(--panel-2)}.nav a.active{color:var(--text-strong);border-color:var(--line);background:var(--panel-2)}.nav a.active:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--signal);margin-right:var(--sp-8);box-shadow:0 0 8px var(--signal);vertical-align:middle}.nav-group{position:relative}.nav-group-btn{font-family:var(--display);font-size:var(--fs-md);font-weight:var(--fw-semibold);letter-spacing:.04em;padding:var(--sp-8) var(--sp-12);border-radius:var(--radius);color:var(--muted);border:1px solid transparent;background:none;cursor:pointer;display:inline-flex;align-items:center;gap:var(--sp-6)}.nav-group-btn:hover{color:var(--text);background:var(--panel-2)}.nav-group-btn.active{color:var(--text-strong);border-color:var(--line);background:var(--panel-2)}.nav-group-btn .caret{font-size:var(--fs-xs);color:var(--muted);transition:transform var(--dur) ease}.nav-group-btn.open .caret{transform:rotate(180deg)}.nav-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:184px;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-6);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);z-index:20}.nav-group .nav-menu a{padding:var(--sp-8) var(--sp-12);border:1px solid transparent;border-radius:var(--radius);color:var(--text);background:none}.nav-group .nav-menu a:hover{color:var(--text-strong);background:var(--panel-2)}.nav-group .nav-menu a.active{color:var(--text-strong);background:var(--panel-2);border-color:var(--line)}.nav-group .nav-menu a.active:before{display:none}.gsearch{position:relative;width:320px;max-width:34vw}.gsearch-input{width:100%;background:var(--bg-deep);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);font-family:var(--body);font-size:var(--fs-md);padding:var(--sp-8) calc(var(--sp-32) + var(--sp-8)) var(--sp-8) var(--sp-12)}.gsearch-input:focus{border-color:var(--signal);outline:none}.gsearch-input::placeholder{color:var(--muted)}.gsearch-kbd{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted);border:1px solid var(--line);border-radius:var(--radius-xs);padding:1px var(--sp-4);pointer-events:none}.gsearch-pop{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--sp-6);z-index:50;max-height:64vh;overflow:auto}.gsearch-empty{padding:var(--sp-10) var(--sp-12);color:var(--muted);font-size:var(--fs-md)}.gsearch-hit{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"kind label" "kind sub";column-gap:var(--sp-10);width:100%;text-align:left;background:transparent;border:0;border-radius:var(--radius);padding:var(--sp-8) var(--sp-10);cursor:pointer}.gsearch-hit.hi{background:var(--panel-2)}.gsearch-kind{grid-area:kind;align-self:center;font-family:var(--display);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.06em;color:var(--bg-deep);border-radius:var(--radius-xs);padding:var(--sp-2) var(--sp-6)}.gsearch-kind.vehicle{background:var(--signal)}.gsearch-kind.client{background:var(--steel)}.gsearch-kind.deal{background:var(--warn)}.gsearch-kind.contract{background:var(--accent)}.gsearch-kind.company{background:var(--steel)}.gsearch-kind.lease{background:var(--signal-dim)}.gsearch-kind.invoice{background:var(--alert)}.gsearch-kind.quote{background:var(--accent)}.gsearch-kind.payment{background:var(--signal-dim)}.gsearch-kind.bank{background:var(--steel)}.gsearch-group+.gsearch-group{margin-top:var(--sp-4);border-top:1px solid var(--line-soft);padding-top:var(--sp-4)}.gsearch-group-title{display:flex;align-items:center;gap:var(--sp-6);padding:var(--sp-6) var(--sp-10) var(--sp-2);font-family:var(--display);font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted)}.gsearch-group-n{font-family:var(--mono);letter-spacing:0}.gsearch-label{grid-area:label;font-family:var(--mono);font-size:var(--fs-md);color:var(--text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gsearch-sub{grid-area:sub;font-size:var(--fs-xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{padding:var(--sp-28) var(--sp-24) calc(var(--sp-32) * 2);max-width:1180px;width:100%;margin:0 auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-16);margin-bottom:var(--sp-20)}.page-head h1{font-family:var(--display);font-weight:var(--fw-semibold);font-size:var(--fs-2xl);margin:var(--sp-4) 0 0;color:var(--text-strong);letter-spacing:.01em}.count-pill{font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted);border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--sp-4) var(--sp-12)}.head-actions{display:flex;align-items:center;gap:var(--sp-12)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.panel.panel-body{padding:var(--sp-16) var(--sp-18) var(--sp-18)}.panel.panel-body .section-title:first-child{margin-top:0}.hint{font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--muted);margin:0 0 var(--sp-12);max-width:64ch}.hint strong{color:var(--text);font-weight:var(--fw-semibold)}.detail-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--sp-18);align-items:start}.section-title{font-family:var(--display);font-size:var(--fs-md);font-weight:var(--fw-semibold);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);margin:var(--sp-24) 0 var(--sp-12)}details.section{margin:0}details.section>summary.section-title{cursor:pointer;list-style:none;display:flex;align-items:center;gap:var(--sp-8);-webkit-user-select:none;user-select:none}details.section>summary.section-title::-webkit-details-marker{display:none}details.section>summary.section-title:before{content:"▸";font-size:var(--fs-xs);color:var(--muted);transition:transform var(--dur) ease}details.section[open]>summary.section-title:before{transform:rotate(90deg)}details.section:first-of-type>summary.section-title{margin-top:0}details.section>summary.section-title:hover{color:var(--text)}.detail-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--sp-18);align-items:start}.detail-main{min-width:0}.detail-aside{display:grid;gap:var(--sp-16);align-content:start;min-width:0}.detail-layout.aside-first .detail-main{order:2}.stack>*+*{margin-top:var(--sp-16)}.stack-panel{margin-bottom:var(--sp-16)}.facts-tight{margin-bottom:var(--sp-12)}.stack-top{margin-top:var(--sp-12)}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--sp-4);margin-left:var(--sp-6);border-radius:var(--radius-pill);font-family:var(--mono);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:1;color:var(--bg-deep);background:var(--tone, var(--steel));vertical-align:middle}.nav a .nav-badge{margin-left:var(--sp-8)}.live-text{font-size:var(--fs-xs)}.user{position:relative}.user-btn{display:inline-flex;align-items:center;gap:var(--sp-8);padding:var(--sp-4) var(--sp-8) var(--sp-4) var(--sp-4);border:1px solid transparent;border-radius:var(--radius-pill);background:none;color:var(--text);cursor:pointer;font-family:var(--display);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.user-btn:hover,.user-btn[aria-expanded=true]{background:var(--panel-2);border-color:var(--line)}.user-avatar{width:26px;height:26px;border-radius:50%;object-fit:cover;display:inline-flex;align-items:center;justify-content:center}.user-initials{background:var(--steel);color:var(--bg-deep);font-family:var(--display);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.user-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:240px;display:flex;flex-direction:column;gap:var(--sp-10);padding:var(--sp-12);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);z-index:20}.user-full{font-family:var(--display);font-weight:var(--fw-semibold);color:var(--text-strong)}.user-email{font-size:var(--fs-xs);color:var(--muted)}.login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-20);padding:var(--sp-32);text-align:center;background:var(--bg);color:var(--text)}.login-title{font-family:var(--display);font-weight:var(--fw-bold);font-size:var(--fs-2xl);letter-spacing:.04em;color:var(--text-strong)}.login-title b{color:var(--signal)}.login-sub{margin:0;max-width:44ch;color:var(--muted);line-height:var(--lh-normal)}.confirm-inline{display:inline-flex;align-items:center;gap:var(--sp-8);flex-wrap:wrap}.confirm-inline .confirm-msg{font-family:var(--display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--warn)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-8);min-height:var(--control-h);padding:0 var(--sp-14);font-family:var(--display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);letter-spacing:var(--ls-display);border-radius:var(--radius);border:1px solid var(--line);background:var(--panel-2);color:var(--text-strong);cursor:pointer;text-decoration:none;white-space:nowrap;transition:border-color var(--dur) ease,background var(--dur) ease,color var(--dur) ease,opacity var(--dur) ease}.btn:hover:not(:disabled){border-color:var(--signal)}.btn:disabled{color:var(--muted);cursor:not-allowed;opacity:.75}.btn[aria-busy=true]{cursor:progress}.btn-primary{background:var(--signal);border-color:var(--signal);color:var(--bg-deep)}.btn-primary:hover:not(:disabled){opacity:.9}.btn-primary:disabled{background:var(--panel-2);border-color:var(--line);color:var(--muted)}.btn-ghost{background:transparent;color:var(--muted)}.btn-ghost:hover:not(:disabled){color:var(--text-strong);border-color:var(--steel)}.btn-danger{background:transparent;color:var(--alert)}.btn-danger:hover:not(:disabled){border-color:var(--alert);background:color-mix(in srgb,var(--alert) var(--tint),transparent)}.btn-sm{min-height:var(--control-h-sm);padding:0 var(--sp-10);font-size:var(--fs-xs)}.btn-sync:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--signal);box-shadow:0 0 8px var(--signal)}.btn-sync:disabled:before{background:var(--warn);box-shadow:none;animation:pulse 1s ease-in-out infinite}.btn-danger.btn-sync:before{background:var(--alert);box-shadow:0 0 8px var(--alert)}.btn-group{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-8)}.btn-group-end{justify-content:flex-end}.btn-group-sep{margin-left:auto}.confirm-inline .confirm-facts{font-family:var(--mono);color:var(--text)}.confirm-inline .confirm-real{color:var(--alert)}.fleet-toolbar{display:flex;flex-wrap:wrap;gap:var(--sp-10);align-items:center;margin-bottom:var(--sp-14)}.fleet-search,.fleet-filter{background:var(--bg-deep);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);font-size:var(--fs-md);padding:var(--sp-8) var(--sp-12)}.fleet-search{flex:1 1 240px;min-width:200px;letter-spacing:.02em}.fleet-search::placeholder{color:var(--muted)}.fleet-filter{font-family:var(--display);letter-spacing:.02em;cursor:pointer}.fleet-search:focus,.fleet-filter:focus{border-color:var(--signal);outline:none}.cform{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-12) var(--sp-16)}.copts{display:flex;flex-wrap:wrap;gap:var(--sp-10) var(--sp-18);margin-bottom:var(--sp-12)}.copt{display:inline-flex;align-items:center;gap:var(--sp-6);font-size:var(--fs-sm);color:var(--text)}.copt input{accent-color:var(--signal)}.field{display:flex;flex-direction:column;gap:var(--sp-6);min-width:0}.field-inline{flex-direction:row;align-items:center;gap:var(--sp-8)}.field-label{display:inline-flex;align-items:baseline;gap:var(--sp-4);font-size:var(--fs-xs);letter-spacing:.04em;color:var(--muted)}.field-req{color:var(--warn)}.field-control{display:flex;align-items:center;gap:var(--sp-8)}.field-suffix,.field-hint{font-size:var(--fs-xs);color:var(--muted)}.field-error{font-size:var(--fs-xs);color:var(--alert)}.input,.select{flex:1;min-width:0;width:100%;min-height:var(--control-h);background:var(--bg-deep);border:1px solid var(--line);border-radius:var(--radius);color:var(--text-strong);font-family:var(--body);font-size:var(--fs-md);padding:0 var(--sp-10);color-scheme:dark}.input.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.input::placeholder{color:var(--muted)}.input:focus,.select:focus{border-color:var(--signal);outline:none}.input:disabled,.select:disabled{color:var(--muted);opacity:.7}.select{font-family:var(--display);letter-spacing:.02em;cursor:pointer}.input-sm,.select-sm{min-height:var(--control-h-sm);font-size:var(--fs-sm)}.input-sm{width:9ch;flex:0 0 auto}.field[data-invalid] .input,.field[data-invalid] .select{border-color:var(--alert)}.form-bar{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;gap:var(--sp-12);margin-top:var(--sp-16);padding:var(--sp-10) var(--sp-14);background:color-mix(in srgb,var(--panel) 92%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.form-bar .form-dirty{font-family:var(--display);font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--warn)}.form-bar .form-bar-spacer{margin-left:auto}.action-hint{font-size:var(--fs-xs);color:var(--muted);line-height:1.4;max-width:52ch}.confirm-facts{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-10) var(--sp-14);padding:var(--sp-10) var(--sp-14);margin-bottom:var(--sp-14);background:color-mix(in srgb,var(--warn) var(--tint),transparent);border:1px solid color-mix(in srgb,var(--warn) 40%,var(--line));border-radius:var(--radius);font-size:var(--fs-md)}.confirm-facts .cf-text b{color:var(--text-strong)}.invoice-preview{align-items:flex-start;flex-direction:column}.invoice-preview .cf-text{display:grid;gap:var(--sp-6)}.preview-lines{margin:0;padding:0;list-style:none;display:grid;gap:var(--sp-4);font-size:var(--fs-sm)}.preview-lines li>span+span{margin-left:var(--sp-8)}.confirm-facts dl{display:grid;grid-template-columns:auto 1fr;gap:var(--sp-2) var(--sp-12);margin:0;font-size:var(--fs-sm)}.confirm-facts dt{color:var(--muted)}.confirm-facts dd{margin:0;color:var(--text-strong)}.checklist{list-style:none;margin:0 0 var(--sp-10);padding:0;display:grid;gap:var(--sp-4);font-size:var(--fs-sm)}.checklist li{display:flex;gap:var(--sp-8);align-items:baseline}.checklist .ck{font-family:var(--mono);font-weight:var(--fw-bold)}.checklist .ok .ck{color:var(--signal)}.checklist .ko .ck{color:var(--alert)}.checklist .na{color:var(--muted)}.form-required-list{font-size:var(--fs-xs);color:var(--warn)}.fleet{border-collapse:separate;border-spacing:0;width:100%}.fleet thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.fleet thead th.sortable:hover{color:var(--text)}.fleet thead th.sortable.active{color:var(--signal)}.sort-glyph{font-size:var(--fs-xs)}.fleet thead th{text-align:left;font-family:var(--display);font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);font-weight:var(--fw-semibold);padding:var(--sp-12) var(--sp-16);border-bottom:1px solid var(--line);white-space:nowrap;position:sticky;top:var(--topbar-h);background:var(--panel);z-index:1}.fleet thead th.num{text-align:right}.fleet tbody tr{cursor:pointer;transition:background var(--dur) ease}.fleet tbody tr:hover{background:var(--panel-2)}.fleet tbody td{padding:var(--sp-14) var(--sp-16);border-bottom:1px solid var(--line-soft);vertical-align:middle}.fleet tbody tr:last-child td{border-bottom:none}.vin{font-family:var(--mono);font-size:var(--fs-md);color:var(--text-strong);letter-spacing:.02em}.model{color:var(--text)}.model .make{color:var(--muted);font-size:var(--fs-sm)}.plate{font-family:var(--mono);font-size:var(--fs-sm);color:var(--text)}.plate.empty{color:var(--muted)}.num{text-align:right}.odo-cell{display:grid;gap:var(--sp-4);justify-items:start;min-width:110px}.odo-line{display:inline-flex;align-items:center;gap:var(--sp-6);font-family:var(--mono)}.odo-num{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-strong);font-variant-numeric:tabular-nums}.odo-num.none{color:var(--muted)}.odo-unit{font-size:var(--fs-xs);color:var(--muted)}.odo-fresh{width:7px;height:7px;border-radius:50%;background:var(--muted);align-self:center}.odo-fresh.fresh{background:var(--signal);box-shadow:0 0 8px var(--signal)}.odo-fresh.stale{background:var(--warn)}.odo-fresh.none{background:transparent;border:1px solid var(--line)}.odo-bar{width:100%;max-width:130px;height:4px;background:var(--bg-deep);border-radius:var(--radius-pill);overflow:hidden}.odo-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--signal-dim),var(--signal))}.table-scroll{width:100%}.fleet.static tbody tr{cursor:default}.fleet.static tbody tr:hover{background:transparent}.fleet tbody tr.clickable:focus-visible{outline:2px solid var(--signal);outline-offset:-2px}.th-sort{all:unset;display:inline-flex;align-items:center;gap:var(--sp-4);cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;-webkit-user-select:none;user-select:none}.th-sort:hover{color:var(--text)}th[aria-sort=ascending] .th-sort,th[aria-sort=descending] .th-sort{color:var(--signal)}.th-sort:focus-visible{outline:2px solid var(--signal);outline-offset:2px;border-radius:var(--radius-xs)}.fleet.dense tbody td{padding:var(--sp-8) var(--cell-pad-x)}.fleet tfoot td{padding:var(--sp-12) var(--cell-pad-x);border-top:1px solid var(--line);font-family:var(--mono);font-weight:var(--fw-semibold);color:var(--text-strong)}.chip-row{display:inline-flex;flex-wrap:wrap;gap:var(--sp-6);align-items:center}td .chip-row .chip+.chip{margin-left:0}.amount-pos{color:var(--signal)}.amount-neg,.amount-late{color:var(--alert)}.text-confident{color:var(--signal)}.mode{display:inline-flex;align-items:center;gap:var(--sp-6);font-family:var(--display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);letter-spacing:.03em;padding:var(--sp-4) var(--sp-10);border-radius:var(--radius-pill);white-space:nowrap;border:1px solid var(--tone, var(--line));color:var(--tone, var(--text));background:color-mix(in srgb,var(--tone, var(--line)) var(--tint),transparent)}.mode .dot{width:7px;height:7px;border-radius:50%;background:var(--tone, var(--muted))}.mode.pilot{--tone: var(--warn)}.mode.live{--tone: var(--signal)}.tabs{display:flex;flex-wrap:wrap;gap:var(--sp-6);margin-bottom:var(--sp-14)}.tab{display:inline-flex;align-items:center;gap:var(--sp-8);font-family:var(--display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);letter-spacing:.03em;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--sp-6) var(--sp-8) var(--sp-6) var(--sp-14);cursor:pointer;transition:border-color var(--dur) ease,color var(--dur) ease}.tab:hover{color:var(--text);border-color:var(--steel)}.tab.active{color:var(--text-strong);border-color:var(--signal)}.tab.active.muted{border-color:var(--steel)}.tab-count{font-family:var(--mono);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--muted);background:var(--bg-deep);border-radius:var(--radius-pill);padding:1px var(--sp-8);min-width:22px;text-align:center}.tab.active .tab-count{color:var(--bg-deep);background:var(--signal)}.tab.active.muted .tab-count{background:var(--steel)}.freshness{font-size:var(--fs-xs);color:var(--muted);display:inline-flex;align-items:center;gap:var(--sp-6);margin-top:var(--sp-2);font-family:var(--mono)}.freshness .dot{width:7px;height:7px;border-radius:50%;background:var(--muted)}.freshness.fresh .dot{background:var(--signal);box-shadow:0 0 8px var(--signal)}.freshness.stale .dot{background:var(--warn)}.status-dot{display:inline-block;width:11px;height:11px;border-radius:50%;vertical-align:middle;cursor:default;background:var(--tone, var(--muted))}.status-dot.glow{box-shadow:0 0 8px color-mix(in srgb,var(--tone, var(--muted)) 70%,transparent)}.status-dot.hollow{background:transparent;border:1px solid var(--line)}.chip{display:inline-flex;align-items:center;gap:var(--sp-6);font-family:var(--display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);letter-spacing:.03em;padding:var(--sp-4) var(--sp-10);border-radius:var(--radius-pill);border:1px solid var(--tone, var(--line));color:var(--tone, var(--text));background:color-mix(in srgb,var(--tone, var(--line)) var(--tint),transparent);white-space:nowrap}.chip .dot{width:7px;height:7px;border-radius:50%;background:var(--tone, var(--muted))}.live{display:inline-flex;align-items:center;gap:var(--sp-8);font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted)}.live .dot{width:8px;height:8px;border-radius:50%}.live.on .dot{background:var(--signal);box-shadow:0 0 8px var(--signal);animation:pulse 1.6s ease-in-out infinite}.live.off .dot{background:var(--warn)}.guest-state{font-family:var(--display);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.06em;text-transform:uppercase;padding:var(--sp-2) var(--sp-8);border-radius:var(--radius-pill);border:1px solid var(--line)}.guest-state.on{color:var(--warn);border-color:var(--warn)}.guest-state.off{color:var(--muted)}.chip{color:color-mix(in srgb,var(--tone, var(--text)) 60%,var(--text-strong))}.chip-sm{font-size:var(--fs-xs);padding:var(--sp-2) var(--sp-8);gap:var(--sp-6)}.chip-sm .dot{width:6px;height:6px}.chip.hollow{background:transparent;border-color:var(--line);color:var(--muted)}.chip.hollow .dot{background:transparent;border:1px solid var(--line)}td .chip+.chip{margin-left:var(--sp-6)}@keyframes pulse{50%{opacity:.3}}.pager{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-16);flex-wrap:wrap;margin-top:var(--sp-14);padding-top:var(--sp-14);border-top:1px solid var(--line-soft)}.pager-total{font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted)}.pager-loading{color:var(--signal)}.pager-ctrls{display:flex;align-items:center;gap:var(--sp-10)}.pager-pos{font-family:var(--mono);font-size:var(--fs-sm);color:var(--text);min-width:96px;text-align:center}.pager-size{flex:0 0 auto}.loading,.empty,.error-state{padding:var(--sp-32) var(--sp-16);text-align:center;color:var(--muted);font-family:var(--mono);font-size:var(--fs-md)}.loading.inline,.empty.inline{padding:var(--sp-8) 0;text-align:left}.error-state{color:var(--alert)}.empty-action,.error-state .btn{margin-top:var(--sp-12)}.callout{border:1px solid var(--line);border-left:3px solid var(--tone, var(--steel));border-radius:var(--radius);padding:var(--sp-10) var(--sp-12);margin-bottom:var(--sp-12);font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--text);background:color-mix(in srgb,var(--tone, var(--steel)) 8%,transparent)}.callout.info{--tone: var(--steel)}.callout.ok{--tone: var(--signal)}.callout.warn{--tone: var(--warn)}.callout.alert{--tone: var(--alert)}.notice-host{position:fixed;right:var(--sp-16);bottom:var(--sp-16);z-index:100;display:flex;flex-direction:column;gap:var(--sp-8);width:min(440px,calc(100vw - 32px))}.notice{display:flex;align-items:flex-start;gap:var(--sp-10);padding:var(--sp-10) var(--sp-12);background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--tone, var(--steel));border-radius:var(--radius);box-shadow:var(--shadow);font-family:var(--mono);font-size:var(--fs-sm);color:var(--text);animation:notice-in var(--dur) ease-out}.notice.ok{--tone: var(--signal)}.notice.error{--tone: var(--alert)}.notice.info{--tone: var(--steel)}.notice-text{flex:1;min-width:0;white-space:pre-line;overflow-wrap:anywhere}.notice-detail{display:block;color:var(--muted);margin-top:var(--sp-4)}.notice-close{all:unset;cursor:pointer;color:var(--muted);font-size:var(--fs-lg);line-height:1;padding:0 var(--sp-4)}.notice-close:hover,.notice-close:focus-visible{color:var(--text-strong)}@keyframes notice-in{0%{opacity:0;transform:translateY(4px)}}.vpicker{position:relative}.vpicker .fleet-search{width:100%}.vpicker-list{position:absolute;z-index:50;top:calc(100% + 4px);left:0;right:0;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.vpicker-item{display:flex;flex-direction:column;gap:var(--sp-2);width:100%;text-align:left;background:none;border:none;border-bottom:1px solid var(--line-soft);padding:var(--sp-8) var(--sp-12);cursor:pointer}.vpicker-item:last-child{border-bottom:none}.vpicker-item:hover{background:var(--panel)}.vpicker-meta{font-size:var(--fs-xs);color:var(--muted)}.vpicker-empty{padding:var(--sp-10) var(--sp-12);font-size:var(--fs-sm);color:var(--muted)}.vpicker-selected{display:flex;align-items:center;gap:var(--sp-10);flex-wrap:wrap}.stagefilter{position:relative}.stagefilter-btn{cursor:pointer}.stagefilter-pop{position:absolute;top:calc(100% + 6px);left:0;min-width:220px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--sp-8);z-index:40;max-height:60vh;overflow:auto}.stagefilter-actions{display:flex;gap:var(--sp-6);padding:var(--sp-2) var(--sp-2) var(--sp-8);border-bottom:1px solid var(--line-soft);margin-bottom:var(--sp-6)}.stagefilter-opt{display:flex;align-items:center;gap:var(--sp-8);padding:var(--sp-6) var(--sp-8);border-radius:var(--radius);font-size:var(--fs-md);color:var(--text);cursor:pointer}.stagefilter-opt:hover{background:var(--panel-2)}.stagefilter-opt input{accent-color:var(--signal)}.stagefilter-lost{color:var(--muted)}.picker{position:relative}.picker-list{position:absolute;z-index:50;top:calc(100% + 4px);left:0;right:0;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.picker-item{display:flex;flex-direction:column;gap:var(--sp-2);width:100%;text-align:left;background:none;border:none;border-bottom:1px solid var(--line-soft);padding:var(--sp-8) var(--sp-12);cursor:pointer;color:var(--text)}.picker-item:last-child{border-bottom:none}.picker-item:hover,.picker-item.active{background:var(--panel)}.picker-item:disabled{cursor:not-allowed;opacity:.6}.picker-label{font-family:var(--mono);font-size:var(--fs-md);color:var(--text-strong)}.picker-meta,.picker-empty{font-size:var(--fs-xs);color:var(--muted)}.picker-empty{padding:var(--sp-10) var(--sp-12);font-size:var(--fs-sm)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--sp-14);margin-bottom:var(--sp-18)}.kpi{display:block;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--sp-16) var(--sp-18);transition:border-color var(--dur) ease,transform var(--dur) ease}.kpi:hover{border-color:var(--tone, var(--signal));transform:translateY(-2px)}.kpi-val{font-family:var(--display);font-weight:var(--fw-semibold);font-size:var(--fs-kpi);line-height:1;color:var(--text-strong);margin:var(--sp-10) 0 var(--sp-4);font-variant-numeric:tabular-nums}.kpi-sub{font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted)}.kpi-bar{margin-top:var(--sp-12);height:4px;background:var(--bg-deep);border-radius:var(--radius-pill);overflow:hidden}.kpi-bar i{display:block;height:100%;background:var(--tone, var(--signal));box-shadow:0 0 8px color-mix(in srgb,var(--tone, var(--signal)) 60%,transparent);transition:width .4s ease}.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-18);align-items:start}.dash-panel{padding:var(--sp-18)}.health-line{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-12);padding:var(--sp-10) 0;border-top:1px solid var(--line-soft)}.health-line:first-of-type{border-top:none}.hl-label{font-family:var(--mono);font-size:var(--fs-sm);color:var(--text)}.hl-val{font-family:var(--display);font-weight:var(--fw-semibold);font-size:var(--fs-xl);color:var(--muted);font-variant-numeric:tabular-nums}.hl-val.active{color:var(--signal)}.hl-val.ok{color:var(--steel)}.hl-val.warn{color:var(--warn)}.hl-val.alert{color:var(--alert)}.see-all{float:right;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted);text-transform:none;letter-spacing:0}.see-all:hover{color:var(--signal)}.recent-op{display:grid;grid-template-columns:1fr auto auto;gap:var(--sp-12);align-items:center;padding:var(--sp-10) 0;border-top:1px solid var(--line-soft)}.recent-op .ro-kind{font-family:var(--display);font-size:var(--fs-md);color:var(--text)}.recent-op:hover .ro-kind{color:var(--text-strong)}.recent-op .ro-time{font-size:var(--fs-xs);color:var(--muted)}.work-panel{padding:var(--sp-16) var(--sp-18) var(--sp-8);margin-bottom:var(--sp-18)}.work-open{float:right;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted);text-transform:none;letter-spacing:0}.work-list{list-style:none;margin:0;padding:0}.work-line{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--sp-14);padding:var(--sp-10) 0;border-top:1px solid var(--line-soft);color:inherit}.work-list li:first-child .work-line{border-top:none}.work-line:hover .work-label{color:var(--text-strong)}.work-text{display:flex;flex-direction:column;gap:2px;min-width:0}.work-label{font-family:var(--display);font-size:var(--fs-md);color:var(--text)}.work-hint{font-size:var(--fs-xs);color:var(--muted)}.work-amount{font-size:var(--fs-sm);color:var(--muted)}.work-count{font-family:var(--display);font-weight:var(--fw-semibold);font-size:var(--fs-xl);min-width:2.2em;text-align:right;font-variant-numeric:tabular-nums;color:var(--tone, var(--steel))}.tone-alert{--tone: var(--alert)}.tone-warn{--tone: var(--warn)}.tone-signal{--tone: var(--signal)}.tone-steel,.tone-ok{--tone: var(--steel)}.work-line.tone-ok .work-label,.work-line.tone-ok .work-count{color:var(--muted)}.work-line.tone-ok .work-hint{display:none}.tab-count.tone-alert{background:var(--alert);color:var(--bg-deep)}.tab-count.tone-warn{background:var(--warn);color:var(--bg-deep)}.tab-count.tone-signal{background:var(--signal);color:var(--bg-deep)}.shortcuts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--sp-12);margin-bottom:var(--sp-18)}.shortcut{display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-12) var(--sp-14);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);color:inherit;transition:border-color var(--dur) ease}.shortcut:hover{border-color:var(--signal)}.shortcut-label{font-family:var(--display);font-weight:var(--fw-semibold);font-size:var(--fs-md);color:var(--text-strong)}.shortcut-hint{font-size:var(--fs-xs);color:var(--muted)}.related{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sp-12) var(--sp-14)}.related+.related{margin-top:var(--sp-10)}.related-head{display:flex;align-items:center;gap:var(--sp-8);margin-bottom:var(--sp-8)}.related-title{font-family:var(--display);font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);font-weight:var(--fw-semibold)}.related-open{margin-left:auto;font-size:var(--fs-xs)}.related-body{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-8) var(--sp-14);margin:0}.related-row dt{font-size:var(--fs-xs);letter-spacing:.04em;color:var(--muted)}.related-row dd{margin:var(--sp-2) 0 0;font-family:var(--mono);font-size:var(--fs-md);color:var(--text-strong)}.rail{display:flex;align-items:stretch;gap:0;width:100%}.rail .seg{flex:1;display:flex;flex-direction:column;gap:var(--sp-8);align-items:center;text-align:center;position:relative;padding-top:var(--sp-18)}.rail .seg .bar{height:6px;width:100%;background:var(--line);border-radius:var(--radius-xs);position:relative}.rail .seg.passed .bar{background:var(--signal-dim)}.rail .seg.current .bar{background:var(--tone, var(--signal));box-shadow:0 0 14px color-mix(in srgb,var(--tone, var(--signal)) 70%,transparent)}.rail .seg .tick{position:absolute;top:0;left:50%;transform:translate(-50%);width:9px;height:9px;border-radius:50%;background:var(--bg);border:2px solid var(--line)}.rail .seg.passed .tick{border-color:var(--signal-dim)}.rail .seg.current .tick{border-color:var(--tone, var(--signal));background:var(--tone, var(--signal));box-shadow:0 0 12px color-mix(in srgb,var(--tone, var(--signal)) 80%,transparent)}.rail .seg .label{font-family:var(--display);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.02em;color:var(--muted)}.rail .seg.current .label{color:var(--text-strong)}.facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-soft);border-radius:var(--radius);overflow:hidden}.fact{background:var(--panel);padding:var(--sp-14) var(--sp-16)}.fact .k{font-family:var(--display);font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);margin-bottom:var(--sp-6)}.fact .v{font-family:var(--mono);font-size:var(--fs-base);color:var(--text-strong)}.fact .v.empty{color:var(--muted)}.odo-instrument{padding:var(--sp-20)}.odo-instrument .big{font-family:var(--mono);font-size:var(--fs-instrument);font-weight:var(--fw-semibold);color:var(--text-strong);letter-spacing:.01em;line-height:1}.odo-instrument .big .unit{font-size:var(--fs-lg);color:var(--muted);margin-left:var(--sp-8)}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:grid;grid-template-columns:16px 1fr;gap:var(--sp-14);padding:0 0 var(--sp-18);position:relative}.timeline li:before{content:"";position:absolute;left:7px;top:16px;bottom:-2px;width:1px;background:var(--line)}.timeline li:last-child:before{display:none}.timeline .node{width:14px;height:14px;border-radius:50%;border:2px solid var(--tone, var(--signal));background:var(--bg);margin-top:var(--sp-2);z-index:1}.timeline .body .trans{font-family:var(--display);font-weight:var(--fw-semibold);color:var(--text-strong)}.timeline .body .trans .arrow{color:var(--muted);margin:0 var(--sp-8)}.timeline .body .meta{font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted);margin-top:var(--sp-2)}.odo-history{display:grid;gap:var(--sp-16)}.sparkline{width:100%;height:96px;display:block;border-bottom:1px solid var(--line-soft)}.odo-log{list-style:none;margin:0;padding:0;font-size:var(--fs-md);max-height:320px;overflow-y:auto}.odo-log li{display:grid;grid-template-columns:84px 1fr 96px 80px;align-items:baseline;gap:var(--sp-12);padding:var(--sp-6) var(--sp-4);border-bottom:1px solid var(--line-soft)}.odo-log li:last-child{border-bottom:none}.odo-log .when{color:var(--muted)}.odo-log .val{color:var(--text-strong);font-variant-numeric:tabular-nums}.odo-log .delta{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.odo-log .delta.up{color:var(--signal)}.odo-log .src{text-align:right;color:var(--muted);font-size:var(--fs-xs);letter-spacing:.04em}.telematics-controls .eyebrow{margin-bottom:var(--sp-14)}.ctl-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-12);padding:var(--sp-10) 0;border-top:1px solid var(--line-soft)}.ctl-row:first-of-type{border-top:none}.ctl-state{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-8) var(--sp-10)}.ctl-label{font-family:var(--display);font-size:var(--fs-sm);letter-spacing:.04em;color:var(--text-strong)}.ctl-meta{font-size:var(--fs-xs);color:var(--muted)}.ctl-note{margin-top:var(--sp-12);font-size:var(--fs-xs);color:var(--muted);letter-spacing:.02em}.odo-actions{display:flex;flex-wrap:wrap;gap:var(--sp-10)}.vehicle-transitions{margin-top:var(--sp-14)}.vehicle-transitions .input{width:260px}.rail-panel{padding:var(--sp-24) var(--sp-24) var(--sp-28)}.stack-top-lg{margin-top:var(--sp-18)}.odo-instrument .big{margin-top:var(--sp-10)}.odo-instrument .freshness,.odo-rate{margin-top:var(--sp-12)}.odo-actions-block{margin-top:var(--sp-14)}.pin-input{flex:0 0 auto;width:110px}.plate-edit .btn-group{margin-top:var(--sp-10)}.plate-input{font-size:var(--fs-lg);letter-spacing:.08em}.health-row{display:grid;grid-template-columns:1fr 1.4fr auto auto auto;gap:var(--sp-16);align-items:center;padding:var(--sp-14) var(--sp-16);border-bottom:1px solid var(--line-soft)}.health-row:last-child{border-bottom:none}.attempts{display:inline-flex;align-items:center;gap:var(--sp-8);font-family:var(--mono);font-size:var(--fs-md)}.attempts .meter{display:inline-flex;gap:var(--sp-2)}.attempts .meter i{width:5px;height:14px;border-radius:2px;background:var(--line);display:inline-block}.attempts .meter i.lit{background:var(--warn)}.attempts .meter i.hot{background:var(--alert)}.attempts .n{color:var(--text-strong);min-width:18px;text-align:right}.evt{font-family:var(--mono);font-size:var(--fs-sm);color:var(--text)}.op-list{display:flex;flex-direction:column;gap:1px;background:var(--line-soft);border-radius:var(--radius);overflow:hidden}.op{background:var(--panel);padding:var(--sp-14) var(--sp-16)}.op-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-12)}.op-kind{font-family:var(--display);font-weight:var(--fw-semibold);color:var(--text-strong)}.op-progress{display:flex;align-items:center;gap:var(--sp-12);margin-top:var(--sp-10)}.op-progress .bar{flex:1;height:8px;background:var(--bg-deep);border:1px solid var(--line);border-radius:var(--radius-pill);overflow:hidden}.op-progress .bar i{display:block;height:100%;background:var(--signal);box-shadow:0 0 10px var(--signal);transition:width .4s ease}.op-progress .mono{font-size:var(--fs-sm);color:var(--text)}.op-result{font-family:var(--mono);font-size:var(--fs-sm);color:var(--text);margin-top:var(--sp-8)}.op-result.alert{color:var(--alert)}.op-meta{font-size:var(--fs-xs);color:var(--muted);margin-top:var(--sp-8)}.op-head-right{display:flex;align-items:center;gap:var(--sp-10)}.op-cancel-err{font-size:var(--fs-xs);color:var(--alert)}.platforms{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-14);margin-bottom:var(--sp-8)}.platform{padding:var(--sp-18);display:flex;flex-direction:column;gap:var(--sp-14)}.platform-head{display:flex;flex-direction:column;gap:var(--sp-4)}.platform-name{font-family:var(--display);font-weight:var(--fw-bold);font-size:var(--fs-xl);color:var(--text-strong);letter-spacing:.02em}.platform-role{font-size:var(--fs-sm);color:var(--muted);line-height:var(--lh-snug)}.platform-actions{display:flex;flex-direction:column;gap:var(--sp-8)}.platform-actions .btn{justify-content:flex-start}.platform-status{margin-top:auto}.platform-status .op{background:var(--bg-deep);border-radius:var(--radius)}.platform-tier+.platform-tier{margin-top:var(--sp-12);padding-top:var(--sp-12);border-top:1px solid var(--line-soft)}.platform-tier-title{font-family:var(--display);font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--muted);margin-bottom:var(--sp-8)}.sync-action{display:grid;gap:var(--sp-4);align-content:start}.action-last{display:inline-flex;align-items:center;gap:var(--sp-6)}.health-actions{display:flex;gap:var(--sp-6);align-items:center;justify-content:flex-end;flex-wrap:wrap}.health-actions .input{width:220px}.evt-payload{margin-top:var(--sp-4)}.evt-payload summary{cursor:pointer;font-size:var(--fs-xs);color:var(--muted)}.evt-payload pre{margin:var(--sp-6) 0 0;padding:var(--sp-8);max-height:240px;overflow:auto;font-size:var(--fs-xs);background:var(--bg-deep);border:1px solid var(--line);border-radius:var(--radius-xs);white-space:pre-wrap}@media(max-width:1180px){.content{padding:var(--sp-20) var(--sp-16) calc(var(--sp-32) * 2)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.fleet thead th{position:static}.page-head,.head-actions,.ctl-row,.fleet-toolbar,.form-bar{flex-wrap:wrap}.kpi-grid{grid-template-columns:repeat(3,1fr)}.platforms{grid-template-columns:repeat(2,1fr)}.gsearch{max-width:28vw}}@media(max-width:1024px){.detail-grid,.detail-layout{grid-template-columns:1fr}.detail-layout.aside-first .detail-aside{order:-1}.dash-grid{grid-template-columns:1fr}.cform{grid-template-columns:1fr 1fr}}@media(max-width:860px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.platforms{grid-template-columns:1fr}.shortcuts{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.topbar{flex-wrap:wrap;gap:var(--sp-10) var(--sp-16);padding:var(--sp-12) var(--sp-16)}.gsearch{order:2;width:100%;max-width:none;flex-basis:100%}.nav{margin-left:0;flex-wrap:wrap;order:3;flex-basis:100%}.nav a,.nav-group-btn{padding:var(--sp-8) var(--sp-10)}.live{margin-left:auto}.live-text,.user-name{display:none}.rail .seg .label{font-size:var(--fs-xs)}.cform{grid-template-columns:1fr}.odo-log li{grid-template-columns:64px 1fr 72px}.odo-log .src{display:none}.work-line{grid-template-columns:1fr auto}.work-amount{display:none}}@media(max-width:560px){.kpi-grid,.shortcuts{grid-template-columns:1fr}.tabs{gap:var(--sp-4)}.content{padding:var(--sp-16) var(--sp-12) var(--sp-32)}}
