.fit-page{--fit-car:#52798a;--fit-zone:#98703e;--fit-good:#346447;--fit-bad:#ad3325;--fit-floor:#faf9f6;--fit-wall:#e5ddd3}.fit-space-setup{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start;gap:24px;margin-bottom:24px;padding:0 0 24px;display:grid}.fit-space-setup h2{margin-bottom:10px;font-size:17px}.fit-space-setup .segments{display:inline-flex}.fit-space-setup .segments button{min-height:44px;font-size:14px}.fit-preset-field label{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}.fit-preset-field select{background:var(--card);border:1px solid var(--control-border);border-radius:10px;width:100%;min-height:44px;padding:10px 32px 10px 12px;font-size:14px}.fit-preset-field .fit-helper{max-width:65ch}.fit-shape-note{color:var(--muted);max-width:75ch;padding:0 20px 14px;font-size:12px}@media (width<=760px){.fit-space-setup{grid-template-columns:1fr;gap:16px;margin-bottom:20px;padding-bottom:20px}.fit-space-setup .segments{width:100%}.fit-space-setup .segments button{flex:1}.fit-preset-field select{font-size:16px}.fit-shape-note{padding:0 12px 12px}}.fit-heading{padding:26px 0 28px}.fit-heading h1{font-family:var(--brand-display);font-style:var(--brand-style);font-weight:var(--brand-weight);text-transform:uppercase;font-size:clamp(36px,4.4vw,56px);line-height:1.08}.fit-heading p{max-width:70ch;color:var(--muted);margin-top:12px;font-size:17px}.fit-car-bar{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding-block:16px 20px;display:flex}.fit-car-photo{flex:0 0 112px;width:112px}.fit-car-photo img{object-fit:contain;background:#fff;border-radius:8px;width:100%;height:76px;display:block}.fit-car-identity{flex:1;min-width:0}.fit-car-identity h2{letter-spacing:-.025em;font-size:22px}.fit-car-identity p{color:var(--muted);margin-top:3px;font-size:13px}.fit-car-identity #fit-car-dimensions{font-variant-numeric:tabular-nums}.fit-car-actions{flex:none;justify-items:center;gap:6px;display:grid}.fit-car-actions a{align-items:center;min-height:32px;font-size:13px;display:flex}.fit-configuration{align-items:center;gap:14px;padding-block:18px 24px;display:flex}.fit-configuration label{color:var(--muted);flex:none;font-size:13px}.fit-configuration select{border:1px solid var(--control-border);background:var(--card);border-radius:10px;width:100%;min-width:0;max-width:650px;min-height:44px;padding:10px 34px 10px 12px;font-size:13px}.fit-configuration select:disabled{opacity:1;color:var(--muted);background:var(--surface);border-color:var(--line)}.fit-workspace{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:36px;display:grid}.fit-visual-column{min-width:0}.fit-visual{border:1px solid var(--line);background:var(--card);border-radius:16px;overflow:hidden}.fit-viewbar{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 0;display:flex}.fit-viewbar>.segments{margin:0}.fit-viewbar>span{color:var(--muted);font-size:12px}.fit-viewbar .segments button{min-height:40px;padding:8px 12px;font-size:13px}.fit-stage{min-width:0;height:500px;position:relative}.fit-stage>div{width:100%;height:100%}.fit-stage svg{width:100%;height:100%;font-family:Archivo,sans-serif;display:block}.fit-stage #fit-stage-message{max-width:440px;height:auto;color:var(--muted);text-align:center;pointer-events:none;place-content:center;margin:auto;padding:24px;display:grid;position:absolute;inset:0}.fit-stage #fit-plan:not([hidden])~#fit-stage-message{background:var(--card);height:auto;padding:8px 16px;font-size:12px;top:auto}.fit-legend{color:var(--muted);flex-wrap:wrap;gap:12px 18px;padding:0 20px 18px;font-size:12px;display:flex}.fit-legend>span{align-items:center;gap:7px;display:inline-flex}.fit-legend i{border:1px solid var(--fit-car);background:color-mix(in srgb,var(--fit-car) 15%,transparent);width:13px;height:13px;display:inline-block}.fit-legend .fit-key-access{background:color-mix(in srgb,var(--fit-zone) 13%,transparent);border:1px dashed var(--fit-zone)}.fit-legend .fit-key-mirror{border:1px dashed var(--fit-car);background:0 0}.fit-plan-floor{fill:var(--fit-floor);stroke:var(--line);stroke-width:1px}.fit-plan-wall{fill:var(--fit-wall);stroke:var(--control-border);stroke-width:1px}.fit-plan-boundary{fill:none;stroke:var(--control-border);stroke-width:5px;stroke-linecap:square}.fit-plan-threshold{stroke:var(--control-border);stroke-width:1.5px;stroke-dasharray:5 4}.fit-plan-car{fill:color-mix(in srgb,var(--fit-car) 23%,var(--fit-floor));stroke:var(--fit-car);stroke-width:1.8px}.fit-plan-glass{fill:color-mix(in srgb,var(--fit-car) 16%,var(--fit-floor));stroke:var(--fit-car);stroke-width:1px;opacity:.7}.fit-plan-collision{stroke:var(--fit-bad);fill:color-mix(in srgb,var(--fit-bad) 14%,var(--fit-floor))}.fit-plan-direction{fill:none;stroke:var(--fit-car);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.fit-plan-zone{fill:color-mix(in srgb,var(--fit-zone) 12%,transparent);stroke:var(--fit-zone);stroke-width:1px;stroke-dasharray:4 3}.fit-plan-zone-blocked{fill:color-mix(in srgb,var(--fit-bad) 10%,transparent);stroke:var(--fit-bad)}.fit-plan-mirrors{fill:none;stroke:var(--fit-car);stroke-width:1px;stroke-dasharray:5 4}.fit-dimension line{stroke:var(--muted);stroke-width:1px}.fit-dimension text{fill:var(--ink);paint-order:stroke;stroke:var(--fit-floor);stroke-width:5px;stroke-linejoin:round;font-variant-numeric:tabular-nums;font-size:16px}.fit-dimension.is-blocked text{fill:var(--fit-bad)}.fit-plan-caption{fill:var(--muted);font-size:15px}#fit-3d-tools{justify-content:space-between;align-items:center;gap:12px;padding:0 20px 12px;display:flex}#fit-3d-tools p{color:var(--muted);font-size:12px}#fit-3d-tools button{flex:none;font-size:12px}#fit-three{touch-action:none;outline-offset:-4px}.fit-controls{min-width:0}.fit-controls-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.fit-controls h2,.fit-results h2,.fit-clearances h2,.fit-guide h2{letter-spacing:-.025em;font-size:22px}.fit-controls .segments button{min-height:38px;font-size:13px}.fit-controls #fit-save-status{margin-block:10px 20px}.fit-controls fieldset{border:0;min-width:0;margin:0 0 24px;padding:0}.fit-controls legend{margin-bottom:12px;padding:0;font-size:17px;font-weight:650}.fit-fields{grid-template-columns:1fr 1fr;gap:14px 12px;display:grid}.fit-field{min-width:0}.fit-field-wide{grid-column:1/-1}.fit-field label,.fit-picker>label{margin-bottom:6px;font-size:13px;display:block}.fit-number{border:1px solid var(--control-border);background:var(--card);border-radius:10px;align-items:center;min-height:44px;display:flex;overflow:hidden}.fit-number:focus-within{outline:3px solid var(--accent);outline-offset:3px}.fit-number input{font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;width:100%;min-width:0;padding:10px 4px 10px 12px}.fit-number input:focus-visible{outline:none}.fit-number:has(input[aria-invalid=true]){border-color:var(--fit-bad)}.fit-number>span{color:var(--muted);flex:none;padding-right:12px;font-size:12px}.fit-helper{color:var(--muted);margin-top:8px;font-size:12px;line-height:1.6}.fit-small-disclosure{color:var(--muted);margin-top:10px;font-size:12px}.fit-small-disclosure summary{min-height:36px;padding-block:8px}.fit-small-disclosure .fit-number{max-width:180px}.fit-range-label{justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.fit-range-label output{white-space:nowrap;color:var(--ink);font-variant-numeric:tabular-nums}.fit-controls input[type=range]{width:100%;min-height:36px;accent-color:var(--accent);cursor:pointer;margin:4px 0 0;display:block}.fit-range-ends{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:12px;display:flex}.fit-range-ends button{min-height:32px;padding:2px 10px;font-size:12px}.fit-check{cursor:pointer;align-items:center;gap:9px;min-height:44px;margin-top:7px;font-size:13px;display:flex}.fit-check input{accent-color:var(--accent);width:17px;height:17px}.fit-controls>#fit-reset{color:var(--muted);font-size:13px}.fit-results{margin-top:24px}.fit-results h2{margin-bottom:12px}.fit-result-row{border-bottom:1px solid var(--line);gap:12px;padding:13px 0;display:flex}.fit-result-row>svg{stroke-width:1.5px;width:23px;height:23px;margin-top:2px}.fit-result-row h3{color:var(--muted);font-size:13px;font-weight:500}.fit-result-row p{margin-top:2px;font-size:16px;font-weight:600;line-height:1.5}.fit-result-row small{color:var(--muted);font-size:12px}.fit-result-row.is-pass>svg{color:var(--fit-good)}.fit-result-row.is-fail>svg,.is-blocked dd{color:var(--fit-bad)}.fit-result-row.is-unknown>svg{color:var(--fit-zone)}.fit-qualification,.fit-missing{color:var(--muted);margin-top:14px;font-size:12px}.fit-invalid{color:var(--fit-bad);padding:14px 0}.fit-invalid h3{font-size:16px}.fit-invalid p{margin-top:6px;font-size:13px}.fit-clearances{margin-top:28px}.fit-clearances dl{grid-template-columns:1fr 1fr;gap:0 28px;margin:12px 0 0;display:grid}.fit-clearances dl>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:14px;padding-block:10px;font-size:13px;display:flex}.fit-clearances dt{color:var(--muted)}.fit-clearances dd{font-variant-numeric:tabular-nums;text-align:right;margin:0;font-weight:600}.fit-picker{padding:20px 0 0}.fit-picker-heading{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.fit-picker h2{font-size:22px}.fit-picker input[type=search]{border:1px solid var(--control-border);background:var(--card);border-radius:10px;width:100%;min-height:46px;padding:10px 14px}.fit-picker #fit-search-count{color:var(--muted);margin-top:8px;font-size:12px}.fit-picker ul{grid-template-columns:1fr 1fr;gap:0 20px;max-height:320px;margin:12px 0 0;padding:0;list-style:none;display:grid;overflow:auto}.fit-picker li{border-bottom:1px solid var(--line)}.fit-picker li button{text-align:left;border-radius:6px;gap:4px;width:100%;min-height:64px;padding:10px 8px;display:grid}.fit-picker li button:hover{background:var(--surface)}.fit-picker li strong{font-size:14px}.fit-picker li span{color:var(--muted);font-size:12px}.fit-guide{max-width:780px;margin-block:40px 28px}.fit-guide ol{color:var(--muted);margin-block:14px;padding-left:22px;font-size:14px}.fit-guide li{margin-top:10px;padding-left:5px}.fit-guide>p{color:var(--muted);font-size:12px}html[data-theme=dark] .fit-page{--fit-car:#91b9ca;--fit-zone:#dbb988;--fit-good:#9bc8ad;--fit-bad:#ffad9a;--fit-floor:#292825;--fit-wall:#49433d}@media (width<=1050px){.fit-workspace{grid-template-columns:minmax(0,1fr) 300px;gap:24px}.fit-viewbar{flex-wrap:wrap}.fit-stage{height:440px}.fit-clearances dl{gap:0 16px}.fit-clearances dl>div{flex-wrap:wrap;gap:4px}.fit-clearances dd{margin-left:auto}}@media (width<=760px){.fit-heading{padding-top:14px;padding-bottom:18px}.fit-heading p{font-size:15px}.fit-car-bar{flex-wrap:wrap;gap:12px}.fit-car-photo{flex-basis:86px;width:86px}.fit-car-photo img{height:64px}.fit-car-identity h2{font-size:19px}.fit-car-actions{justify-content:space-between;width:100%;display:flex}.fit-car-actions button{font-size:13px}.fit-configuration{padding-block:16px 20px;display:block}.fit-configuration label{margin-bottom:6px;display:block}.fit-configuration select{max-width:100%;font-size:12px}.fit-workspace{flex-direction:column;gap:28px;display:flex}.fit-visual-column{display:contents}.fit-visual{order:0;width:100%}.fit-controls{order:2;width:100%}.fit-results{order:1;width:100%;margin-top:0}.fit-clearances{order:3;width:100%;margin-top:0}.fit-stage{height:360px}.fit-viewbar{gap:8px;padding:12px 12px 0}.fit-viewbar>span{margin-left:auto;font-size:11px}.fit-viewbar .segments button{min-height:40px;padding-inline:10px;font-size:12px}.fit-legend{gap:8px 12px;padding:0 12px 14px;font-size:11px}.fit-controls{padding-top:0}.fit-fields{gap:12px 14px}.fit-field-wide{grid-column:auto}.fit-controls fieldset{margin-bottom:22px}.fit-controls .fit-field-wide .fit-number{max-width:180px}.fit-picker ul{grid-template-columns:1fr}.fit-guide{margin-top:32px}.fit-guide h2{font-size:21px}#fit-3d-tools{flex-direction:column;align-items:flex-start;gap:4px;padding:0 12px 12px}.fit-dimension text{font-size:26px}.fit-plan-caption{font-size:24px}}@media (prefers-reduced-motion:reduce){.fit-page *{scroll-behavior:auto}}@media (width<=760px) and (height>=800px){.fit-visual{top:calc(var(--shell-header-height,100px) + 8px);z-index:2;position:sticky}.fit-stage{height:280px}.fit-controls :is(input,button,summary){scroll-margin-top:440px}.fit-visual:focus-within{z-index:3}}@media (width<=760px){.fit-number input,.fit-picker input[type=search]{font-size:16px}}
