:root{--bg:#0d1b2a;--header:#102236;--strip:#2a2206;--panel:#1e3c5ef5;--card:#1a3250;--card-hover:#213d60;--inset:#152b44;--border:#24476b;--track:#1c3552;--band:#3f6fa0;--ink:#eaf4ff;--ink-2:#a9c1db;--ink-3:#7d9cc0;--ink-4:#3d5a7a;--lime:#2fd06b;--lime-edge:#1f9a4e;--values:#ff4fa8;--values-light:#ff9fd0;--info:#1f8bff;--warn:#ff7a45;--danger:#ff4d6d;--amber:#ffb800;--hatch:repeating-linear-gradient(135deg, #ffb80014 0 6px, #ffb80005 6px 12px);--display:Fredoka, system-ui, sans-serif;--ui:Nunito, system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0}body{font:600 14px/1.45 var(--ui)}button,select,input{font:inherit}a{color:var(--info)}a:hover{color:var(--lime)}input[type=range]{accent-color:var(--values)}input[type=range].lime-range,input[type=checkbox]{accent-color:var(--lime)}::-webkit-scrollbar{background:0 0;width:10px;height:10px}::-webkit-scrollbar-track{background:0 0;margin:14px}::-webkit-scrollbar-thumb{background:padding-box padding-box;border:3px solid #0000;border-radius:999px}:hover::-webkit-scrollbar-thumb{background-color:#a9c1db47}.is-scrolling::-webkit-scrollbar-thumb{background-color:#c8dcf0b3}::-webkit-scrollbar-thumb:hover{background-color:#c8dcf0b3}::-webkit-scrollbar-thumb:active{background-color:#dcebfae6}::-webkit-scrollbar-corner{background:0 0}.muted{color:var(--ink-2)}.dim{color:var(--ink-3)}.small{font-size:12px}.strong{font-weight:700}.warn{color:var(--warn)}.num{font-family:var(--display)}.nowrap{white-space:nowrap}.ellipsis{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.grow{flex:1}.row-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.col{flex-direction:column;gap:10px;display:flex}.col.tight{gap:5px}.eyebrow{font:600 10px var(--display);color:var(--ink-3);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}.hatched{background:var(--hatch);border-top:1px dashed #a07c00}.swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px;display:inline-block}.go-btn,.stop-btn,.ghost-btn{cursor:pointer;font:600 13px var(--display);border-radius:10px;padding:5px 12px;transition:transform 60ms}.go-btn:active:not(:disabled),.stop-btn:active,.ghost-btn:active:not(:disabled){transform:translateY(2px)}.go-btn{background:var(--lime);border:none;border-bottom:4px solid var(--lime-edge);color:var(--bg)}.go-btn:hover:not(:disabled){background:#4ade80}.go-btn:disabled{opacity:.6;cursor:default}.go-btn:disabled[aria-busy=true]{opacity:1;cursor:progress}.dots{vertical-align:middle;gap:4px;margin-left:6px;display:inline-flex}.dots span{background:currentColor;border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite dot-bounce}.dots span:nth-child(2){animation-delay:.15s}.dots span:nth-child(3){animation-delay:.3s}@keyframes dot-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.caret{animation:none}.dots span{animation-name:dot-fade;animation-duration:2s}}@keyframes dot-fade{0%,to{opacity:.3}50%{opacity:1}}.go-btn.sm{border-bottom-width:3px;border-radius:6px;padding:2px 10px;font-size:12px}.stop-btn{background:var(--danger);color:#fff;border:none;border-bottom:4px solid #c2344f}.ghost-btn{border:2px solid var(--border);color:var(--ink);background:0 0;border-bottom-width:4px}.ghost-btn:hover:not(:disabled){border-color:var(--lime)}.ghost-btn:disabled{color:var(--ink-4);cursor:default}.ghost-btn.danger:hover{border-color:var(--danger);color:var(--danger)}.shell{position:fixed;inset:0;overflow:hidden}.viewport{transition:right .3s,bottom .3s,top .9s cubic-bezier(.2,.9,.3,1) .3s;position:absolute;top:74px;left:0}.pre-intro .viewport{top:0}.topbar{background:var(--header);border-bottom:2px solid var(--border);z-index:5;align-items:center;gap:18px;height:52px;padding:0 16px;display:flex;position:absolute;inset:0 0 auto}.brand{align-items:center;gap:8px;display:flex}.brand-mark{background:var(--lime);border-bottom:4px solid var(--lime-edge);width:32px;height:32px;color:var(--bg);font:700 19px/1 var(--display);border-radius:10px;justify-content:center;align-items:center;display:flex}.brand-name{font:700 22px/1 var(--display)}.brand-tag{font:700 11px/1 var(--display);color:var(--bg);background:var(--amber);letter-spacing:.06em;border-radius:999px;padding:4px 7px}.crumbs{white-space:nowrap;flex:1;align-items:center;gap:8px;min-width:0;font-size:13.5px;display:flex;overflow:hidden}.crumb{color:var(--ink);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.crumb.dimmed{color:var(--ink-2)}.crumb:hover{color:var(--lime)}.crumb-lot{text-overflow:ellipsis;min-width:0;font-weight:700;overflow:hidden}.sep{color:var(--ink-4)}.bar-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.seg{border:2px solid var(--border);border-radius:10px;display:flex;overflow:hidden}.seg button{cursor:pointer;color:var(--ink-2);background:0 0;border:none;padding:6px 10px;font-size:12.5px;font-weight:700}.seg .on-lime{background:var(--lime);color:var(--bg)}.seg .on-info{background:var(--info);color:var(--bg)}.strip{background:var(--strip);color:#ffd66b;z-index:5;border-bottom:1px solid var(--card-hover);white-space:nowrap;justify-content:center;align-items:center;height:22px;font-size:12px;font-weight:700;display:flex;position:absolute;top:52px;left:0;right:0;overflow:hidden}.info-toast{overflow-wrap:anywhere;background:var(--card);border:2px solid var(--lime);z-index:9;cursor:pointer;border-radius:12px;max-width:min(560px,90vw);padding:10px 14px;position:absolute;top:120px;left:50%;transform:translate(-50%)}.error-toast{border:1px solid var(--danger);z-index:9;background:#2a1512;border-radius:12px;padding:10px 14px;position:absolute;top:120px;left:50%;transform:translate(-50%)}.engine-pill{border:2px solid var(--border);color:var(--ink);font:600 12.5px var(--display);pointer-events:none;background:#13263a;border-radius:999px;padding:5px 14px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.pin-label{pointer-events:auto;cursor:pointer;white-space:nowrap;border:2px solid var(--border);color:var(--ink);font:700 12px/1.3 var(--ui);background:#13263a;border-radius:10px;padding:3px 9px;position:absolute;top:0;left:0;transform:translate(-50%,-100%);box-shadow:0 3px #00000059}.pin-label:hover{border-color:var(--lime);z-index:2}.pin-name{font-weight:700}.hood-label{pointer-events:none;white-space:nowrap;color:#13263a;font:700 12px/1 var(--display);letter-spacing:.06em;text-transform:uppercase;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 6px #ffffffe6;position:absolute;top:0;left:0}.pin-detail{color:var(--ink-2);font:500 11px/1.3 var(--display);display:none}.city-panel{background:var(--panel);border:2px solid var(--border);z-index:4;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:16px;flex-direction:column;width:330px;display:flex;position:absolute;top:90px;bottom:16px;left:16px;overflow:auto}.cp-hero{background:var(--lime);color:var(--bg);padding:14px 16px 12px}.cp-hero .h-title{font:700 22px/1.15 var(--display)}.cp-hero p{color:#0b3a1f;margin:4px 0 0;font-size:13px}.cp-head{border-bottom:2px solid var(--border);padding:12px 16px}.field{border:2px solid var(--border);background:var(--bg);width:100%;color:var(--ink);border-radius:10px;outline:none;padding:8px 10px}.field:focus{border-color:var(--lime)}.field-sm{background:var(--bg);color:var(--ink);border:2px solid var(--border);border-radius:8px;padding:5px 6px}.cp-grid{color:var(--ink-2);grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;font-size:12.5px;display:grid}.cp-grid label{flex-direction:column;gap:4px;display:flex}.cp-checks{flex-direction:column;gap:5px;margin-top:10px;font-size:12.5px;display:flex}.cp-checks label{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:4px;line-height:1.3;display:grid}.cp-checks input{margin:1px 0 0}.cp-legend{color:var(--ink-2);flex-wrap:wrap;gap:6px 10px;padding:10px 16px 6px;font-size:11.5px;display:flex}.cp-legend span{align-items:center;gap:5px;display:flex}.cp-legend i{border-radius:50%;width:9px;height:9px;display:inline-block}.cp-count{letter-spacing:.08em;white-space:normal;padding:0 16px 8px}.cp-cards{flex-direction:column;flex:1 0 auto;gap:6px;min-height:160px;padding:0 10px 12px;display:flex}.lot-card{text-align:left;background:var(--card);border:2px solid var(--border);color:var(--ink);cursor:pointer;border-bottom-width:4px;border-radius:11px;flex-direction:column;gap:3px;padding:9px 11px;display:flex}.lc-top{justify-content:space-between;gap:8px;display:flex}.lc-name{font:600 15px var(--display)}.lc-zone{font:600 11.5px var(--display);color:#fff;border-radius:999px;padding:1px 8px}.haz-pill{color:#ffb27a;background:#ff7a4529;border-radius:999px;align-self:flex-start;padding:1px 8px;font-size:11.5px;font-weight:700}.cp-foot{color:var(--ink-2);padding:8px 14px}.hint-pill{background:var(--panel);border:2px solid var(--border);color:var(--ink-2);z-index:3;white-space:nowrap;border-radius:999px;padding:7px 14px;font-size:12.5px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.hud{z-index:3;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:absolute;top:90px}.hud-row{pointer-events:auto;flex-wrap:wrap;gap:8px;display:flex}.gauge{background:var(--panel);border:2px solid var(--border);border-radius:12px;align-items:center;gap:10px;min-width:120px;padding:8px 12px;display:flex}.gauge.wide{min-width:150px}.gauge-tile{border-bottom:3px solid;border-radius:14px;flex-shrink:0;width:30px;height:30px}.gauge-tile.green{background:#2fd06b;border-color:#1f9a4e}.gauge-tile.blue{background:#1f8bff;border-color:#1669c4}.gauge-tile.pink{background:#ff4fa8;border-color:#c42f7f}.gauge-tile.teal{background:#13c2c2;border-color:#0e8f8f}.gauge-tile.amber{background:#ffb800;border-color:#c98f00}.gauge-val{font:600 22px/1.2 var(--display)}.gauge-text{font:600 15px/1.35 var(--display);white-space:nowrap}.hud-note{pointer-events:auto;background:var(--panel);border-radius:11px;align-self:flex-start;max-width:520px;padding:6px 10px;font-size:12.5px}.hud-note.lime{border:2px solid var(--lime);color:#b8f5cf}.hud-note.info{border:2px solid var(--info);color:#cfe5ff}.hud-note.shape{border:2px solid var(--border);color:var(--ink-2);font-size:11.5px}.hud-note.shape.prov-placeholder{background:var(--hatch), var(--panel);border:1px dashed #a07c00}.palette{background:var(--panel);border:2px solid var(--border);z-index:4;-webkit-user-select:none;user-select:none;border-radius:16px;gap:8px;padding:30px 10px 10px;display:flex;position:absolute;overflow:auto}.build-head{align-items:center;display:flex;position:absolute;top:6px;left:12px}.build-tag{font:700 11px var(--display);color:var(--bg);background:var(--lime);letter-spacing:.08em;border-radius:999px;padding:2px 9px}.pal-card{border:2px solid var(--border);background:var(--card);cursor:grab;touch-action:none;border-bottom-width:5px;border-radius:12px;flex-direction:column;flex-shrink:0;gap:4px;width:138px;padding:6px 6px 8px;transition:transform .12s;display:flex;position:relative}.pal-swatch{border-radius:11px;justify-content:center;align-items:flex-end;height:48px;padding-bottom:5px;display:flex}.pal-swatch div{border-radius:3px}.pal-name{font:600 14px/1.15 var(--display);padding:0 3px}.pal-meta{color:var(--ink-3);padding:0 3px;font-size:11.5px;font-weight:700;line-height:1.3}.pal-meta.warn{color:var(--warn)}.pal-count{background:var(--danger);color:#fff;min-width:20px;height:20px;font:700 12px/16px var(--display);text-align:center;border:2px solid #13263a;border-radius:11px;padding:0 5px;position:absolute;top:6px;right:6px}.inspector{background:var(--panel);border:3px solid var(--amber);z-index:4;border-radius:14px;width:260px;padding:10px 12px;position:absolute}.insp-title{align-items:center;gap:8px;margin-bottom:4px;display:flex}.insp-actions{gap:6px;margin-bottom:6px;display:flex}.insp-actions button{border-radius:8px;flex:1}.panel{background:var(--panel);border:2px solid var(--border);z-index:4;flex-direction:column;display:flex;position:absolute;overflow:hidden}.tabs{border-bottom:2px solid var(--border);background:#0d1b2a59;flex-wrap:wrap;gap:4px;padding:10px 12px;display:flex}.tabs button{border:none;border-bottom:3px solid var(--border);background:var(--card);color:var(--ink-2);cursor:pointer;font:600 13px var(--display);white-space:nowrap;border-radius:8px;padding:5px 11px}.tabs button.on{color:var(--bg)}.tabs .tab-compare.on{background:#2fd06b;border-color:#1f9a4e}.tabs .tab-next.on{background:#4dabf7;border-color:#1c7ed6}.tabs .tab-priorities.on{color:#fff;background:#ff4fa8;border-color:#c42f7f}.tabs .tab-households.on{background:#ff9f1c;border-color:#c77700}.tabs .tab-emissions.on{background:#13c2c2;border-color:#0e8f8f}.tabs .tab-backwards.on{color:#fff;background:#7b61ff;border-color:#5a43d1}.tabs .tab-unknowns.on{background:#ffb800;border-color:#c98f00}.panel-body{flex:1;padding:14px 16px 24px;overflow:auto}.compare-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));align-items:start;gap:18px 24px;display:grid}.h-lot{font:700 19px/1.2 var(--display)}.lot-meta{flex-wrap:wrap;align-items:center;gap:4px 6px;margin-top:3px;display:flex}.pub-badge{background:var(--danger);color:var(--bg);white-space:nowrap;border-radius:3px;padding:1px 7px;font-size:11px;font-weight:700}.note-box{color:#c9dcf0;border:1px dashed #a07c00;border-radius:10px;margin-top:8px;padding:6px 10px}.h-sec{font:700 17px var(--display);margin-top:4px}.h-tab{font:700 17px/1.25 var(--display)}.h-card{font:700 14px var(--display);margin-top:12px}.empty-box{border:1px dashed var(--ink-4);color:var(--ink-2);border-radius:11px;padding:12px}.zone-box{background:var(--inset);border:1px solid;border-radius:11px;flex-direction:column;gap:2px;padding:9px 11px;display:flex}.zone-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.zone-head strong{font:600 15px/1.25 var(--display)}.presets{flex-wrap:wrap;gap:4px;display:flex}.presets button{border:1px solid var(--values);color:var(--values-light);font:600 12.5px var(--display);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;padding:3px 10px}.presets button.on{background:var(--values);color:var(--bg)}.rank-row{background:var(--inset);border:1px solid #1f3a5a;border-radius:10px;grid-template-columns:26px 10px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:6px 8px;display:grid}.rank-row.mine{background:#2fd06b14;border-color:#2fd06b80}.medal{width:26px;height:26px;font:700 13px/26px var(--display);text-align:center;background:var(--card-hover);color:var(--ink-2);border-radius:50%}.medal.m0{color:var(--bg);background:#ffb800}.medal.m1{color:var(--bg);background:#c9d6e3}.medal.m2{color:#fff;background:#e0823d}.rank-label{min-width:0;font-size:13px}.rank-score{font:500 11.5px var(--display);color:var(--ink-2)}.yours{font:700 10px var(--display);color:var(--lime);text-transform:uppercase;letter-spacing:.08em}.flip-box{color:#ffd6e8;background:#ff4fa81a;border-radius:10px;padding:8px 10px;font-size:13px}.smaa-row{grid-template-columns:120px minmax(0,1fr) 62px;align-items:center;gap:8px;font-size:12px;display:grid}.smaa-bar{background:var(--track);border-radius:2px;height:12px;display:flex;overflow:hidden}.smaa-bar div{background:var(--values)}.smaa-first{text-align:right;font:500 11.5px var(--display);color:var(--ink-2)}.expl{background:var(--inset);border:2px solid var(--border);border-radius:11px;margin-top:8px;padding:10px 12px}.expl p{margin:6px 0;font-size:13px}.chip{background:var(--card-hover);border:2px solid var(--border);color:var(--ink-2);border-radius:999px;margin:0 3px 2px 0;padding:0 7px;font-size:11px;display:inline-block}.caret{vertical-align:text-bottom;background:var(--lime);width:2px;height:1em;margin-left:2px;animation:.8s step-end infinite caret-blink;display:inline-block}@keyframes caret-blink{50%{opacity:0}}.ask-row{align-items:stretch;gap:6px;display:flex}.ask-row .field{flex:1;min-width:0}.ask-row .go-btn{white-space:nowrap;min-width:88px}.ask-examples{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ask-example{font:inherit;text-align:left;background:var(--inset);border:2px solid var(--border);color:var(--ink-2);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:12px}.ask-example:hover{border-color:var(--lime);color:var(--ink)}.step-card{background:var(--inset);border:2px solid var(--border);border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.step-card.blocking{border-color:var(--lime)}.step-card p{margin:0}.step-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.step-title{font:700 15px var(--display)}.step-badge{background:var(--lime);color:var(--bg);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px}.step-facts,.step-qs{margin:0;padding-left:18px}.step-facts li,.step-qs li{margin:2px 0}.step-contact{overflow-wrap:anywhere}.step-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.step-actions a.go-btn{text-decoration:none;display:inline-block}.draft{flex-direction:column;gap:6px;display:flex}.draft-body{font:400 12.5px/1.45 var(--ui);resize:vertical;white-space:pre-wrap}.handout-q{margin:0 0 28px}.ai-search{border-bottom:2px solid var(--border);flex-direction:column;gap:6px;margin-bottom:10px;padding-bottom:10px;display:flex}.ai-read{background:var(--inset);border:2px solid var(--border);border-radius:11px;flex-direction:column;align-items:flex-start;gap:6px;padding:8px 10px;display:flex}.ghost-btn.sm{border-bottom-width:3px;border-radius:6px;padding:2px 10px;font-size:12px}.ctx-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;display:grid}.mbox{border-radius:10px;padding:6px 9px;font-size:12.5px}.mbox-head{justify-content:space-between;align-items:center;gap:6px;display:flex}.mbox-label{color:var(--ink-2);font-size:12.5px}.mbox-val{font:600 18px var(--display)}.prov-observed.mbox{border:1px solid var(--ink-2);background:#ffffff08}.prov-modeled.mbox{border:1px dashed #3f6690}.prov-assumption.mbox{border:2px solid var(--border)}.prov-placeholder.mbox,td.prov-placeholder,.card-box.prov-placeholder,.chart.prov-placeholder{background:var(--hatch);border:1px dashed #a07c00}.band-track{background:var(--track);border-radius:3px;height:6px;margin-top:4px;position:relative}.band{background:var(--band);border-radius:3px;position:absolute;top:0;bottom:0}.tick{background:var(--lime);width:2px;height:10px;position:absolute;top:-2px}.prov-tag{font:600 9.5px var(--display);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border-radius:2px;padding:0 5px}.prov-tag.prov-observed{background:var(--ink);color:var(--bg);border:1px solid var(--ink)}.prov-tag.prov-modeled{border:1px dashed var(--ink-2);color:var(--ink-2)}.prov-tag.prov-assumption{border:1px solid var(--ink-2);color:var(--ink-2)}.prov-tag.prov-placeholder{background:var(--amber);color:var(--bg);border:1px solid var(--amber)}.values-box{border:1px solid var(--values);background:#ff4fa814;border-radius:14px;flex-direction:column;gap:10px;max-width:560px;padding:12px 14px;display:flex}.h-values{font:700 17px var(--display);color:var(--values-light)}.values-box p{margin:0}.weight-row{grid-template-columns:minmax(0,1fr) 130px 40px;align-items:center;gap:10px;font-size:13px;display:grid}.weight-share{text-align:right;color:var(--values-light);font:600 12.5px var(--display)}.table-wrap{overflow-x:auto}.dtable{border-collapse:collapse;width:100%;font-size:12.5px}.dtable th{text-align:left;border:2px solid var(--border);background:var(--card);font:600 12.5px var(--display);padding:6px 8px}.dtable td{border:2px solid var(--border);vertical-align:top;padding:6px 8px}.dtable td.prov-placeholder{border:1px dashed #2c5178}.carbon-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px 24px;display:grid}.chart{background:#111820;border:1px dashed #2c5178;border-radius:11px;width:100%;max-width:560px;display:block}.year-row{align-items:center;gap:10px;margin-top:10px;font-size:12.5px;display:flex}.year-row input{flex:1}.read-row{align-items:center;gap:8px;font-size:12.5px;display:flex}.line-key{width:14px;height:3px}.wb-controls{color:var(--ink-2);flex-wrap:wrap;gap:12px 16px;margin:10px 0 12px;font-size:12.5px;display:flex}.wb-controls label{flex-direction:column;gap:4px;display:flex}.wb-controls .wide{min-width:220px}.num-in{width:80px}.wb-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;display:grid}.card-box{background:var(--inset);border:2px solid var(--border);border-radius:11px;padding:10px 12px}.card-box .h-card{margin-top:0}.big-num{font:700 24px var(--display);margin:4px 0}.unknowns{max-width:720px}.unk-row{margin:4px 0}.unknowns code{font-family:var(--display);color:var(--lime)}.columns{columns:4 110px;margin-top:6px}.memo-backdrop{z-index:20;background:#06090cbf;justify-content:center;align-items:flex-start;padding:40px 20px;display:flex;position:absolute;inset:0;overflow:auto}#lotline-memo{width:100%;max-width:860px;color:var(--bg);font:400 12.5px/1.5 var(--ui);background:#fff;border-radius:4px;padding:28px 32px;box-shadow:0 20px 60px #00000080}.memo-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.memo-title{font:700 22px/1.2 var(--display)}.memo-actions{gap:6px;display:flex}.memo-print{background:var(--bg);color:#fff;cursor:pointer;border:none;border-radius:3px;padding:6px 12px}.memo-close{color:var(--bg);cursor:pointer;background:0 0;border:1px solid #d5dce1;border-radius:3px;padding:6px 12px}.memo-disclaimer{border:1px solid var(--bg);padding:4px 8px}.memo-h{font:700 17px var(--display);margin:12px 0 6px}#lotline-memo table{border-collapse:collapse;width:100%;font-size:11.5px}#lotline-memo th,#lotline-memo td{text-align:left;border:1px solid #d5dce1;padding:4px 6px}#lotline-memo th{background:#eef2f4}@media print{body *{visibility:hidden!important}#lotline-memo,#lotline-memo *{visibility:visible!important}#lotline-memo{box-shadow:none!important;position:absolute!important;inset:0!important}.memo-actions{display:none!important}}.intro{z-index:30;background:#000;transition:background 1.6s;position:fixed;inset:0;overflow:hidden}.intro.intro-ready{background:0 0}.intro.intro-leaving{pointer-events:none}.intro-vignette{pointer-events:none;background:radial-gradient(75% 65% at 50% 45%,#0000 35%,#050c14d9 100%),linear-gradient(#0000 40%,#050c1459 62%,#050c14eb 100%);transition:opacity 1s;position:absolute;inset:0}.intro-content{text-align:center;flex-direction:column;align-items:center;gap:16px;width:min(760px,100% - 32px);transition:opacity .6s,transform .9s;display:flex;position:absolute;bottom:calc(56px + 6vh);left:50%;transform:translate(-50%)}.intro-name{font:700 clamp(64px, 12vw, 148px)/.9 var(--display);letter-spacing:-.02em;color:#fff;text-shadow:0 6px 40px #2fd06b73, 0 2px 0 var(--lime-edge);margin:0}.intro-name span{opacity:0;animation:.7s cubic-bezier(.2,1.4,.4,1) both intro-letter;display:inline-block}.intro-tagline{color:var(--ink);text-shadow:0 2px 12px #000c;opacity:0;max-width:620px;margin:0;font-size:clamp(15px,1.6vw,19px);animation:1s 1.1s both intro-fade}.intro-enter{border-bottom-width:5px;border-radius:16px;margin-top:4px;padding:12px 30px;font-size:20px;animation:.6s both intro-fade,2.2s ease-in-out .8s infinite intro-pulse}.intro-loading{flex-direction:column;align-items:center;gap:8px;margin-top:4px;display:flex}.intro-progress{background:#ffffff1a;border-radius:999px;width:240px;height:8px;overflow:hidden}.intro-progress>div{background:var(--lime);width:40%;height:100%;box-shadow:0 0 12px var(--lime);border-radius:999px;animation:1.1s ease-in-out infinite intro-slide}.intro-error{color:var(--danger);margin:0}.intro-disclaimer{text-align:center;color:var(--ink-2);margin:0;font-size:12px;transition:opacity .4s;position:absolute;bottom:18px;left:16px;right:16px}.intro-leaving .intro-content{opacity:0;transform:translate(-50%,40px)scale(.96)}.intro-leaving .intro-vignette,.intro-leaving .intro-disclaimer{opacity:0}@keyframes intro-letter{0%{opacity:0;transform:translateY(60px)scale(.6)rotate(-8deg)}to{opacity:1;transform:none}}@keyframes intro-fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes intro-pulse{0%,to{box-shadow:0 0 #2fd06b8c}50%{box-shadow:0 0 0 14px #2fd06b00}}@keyframes intro-slide{0%{transform:translate(-110%)}to{transform:translate(260%)}}.shell .topbar,.shell .strip,.shell .city-panel,.shell .hint-pill{transition:transform .9s cubic-bezier(.2,.9,.3,1) .5s,opacity .7s .5s}.pre-intro .topbar,.pre-intro .strip{opacity:0;transform:translateY(-100%)}.pre-intro .city-panel{opacity:0;transform:translate(-110%)}.pre-intro .hint-pill{opacity:0}.shell .viewport .pin-label{transition:opacity .8s 1.2s}.shell .viewport .hood-label{transition:opacity .6s}.viewport .hoods-hidden .hood-label{opacity:0}.pre-intro .viewport .hood-label,.pre-intro .viewport .pin-label,.pre-intro .viewport .engine-pill{opacity:0!important}.help-tip{vertical-align:2px;border:2px solid var(--border);background:var(--inset);width:17px;height:17px;color:var(--ink-2);font:700 10.5px/1 var(--display);cursor:pointer;text-transform:none;letter-spacing:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:6px;padding:0;display:inline-flex}.help-tip:hover,.help-tip.on{border-color:var(--lime);color:var(--lime)}.help-tip:focus-visible{outline:2px solid var(--lime);outline-offset:1px}.cp-hero .help-tip{color:#0b3a1f;background:#ffffff59;border-color:#0b3a1f}.help-pop{z-index:40;background:var(--card);width:min(280px,100vw - 24px);color:var(--ink);border:2px solid var(--lime);font:600 13px/1.45 var(--ui);border-bottom-width:4px;border-radius:12px;padding:10px 12px;position:fixed;box-shadow:0 10px 30px #00000073}.help-pop p{color:var(--ink-2);margin:4px 0 0}.help-pop-head{font:700 14px var(--display);justify-content:space-between;align-items:center;gap:8px;display:flex}.help-x{color:var(--ink-3);font:700 18px/1 var(--display);cursor:pointer;background:0 0;border:none;padding:0 2px}.help-x:hover{color:var(--ink)}.info-tip{vertical-align:2px;border:2px solid var(--border);background:var(--inset);width:17px;height:17px;color:var(--ink-2);cursor:pointer;text-transform:none;letter-spacing:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:6px;padding:0;font:italic 700 11px/1 Georgia,serif;display:inline-flex}.info-tip:hover,.info-tip.on{border-color:var(--info);color:var(--info)}.info-tip:focus-visible{outline:2px solid var(--info);outline-offset:1px}.info-pop{z-index:40;background:var(--card);width:min(380px,100vw - 24px);max-height:min(70vh,560px);color:var(--ink);text-align:left;text-transform:none;letter-spacing:0;border:2px solid var(--info);font:600 13px/1.45 var(--ui);border-bottom-width:4px;border-radius:12px;padding:10px 12px 12px;position:fixed;overflow-y:auto;box-shadow:0 10px 30px #00000073}.info-pop p{color:var(--ink-2);margin:4px 0 0}.info-pop .help-pop-head .grow{flex:1}.info-value{background:var(--inset);border-radius:8px;margin-top:6px;padding:6px 8px}.info-values{color:var(--values-light)!important}.info-sec{border-bottom:1px solid var(--border);font:700 10.5px var(--display);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-top:10px;padding-bottom:2px}.info-formula{background:var(--inset);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;margin-top:6px;padding:6px 8px;font:500 11.5px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;display:block}.info-input{border-bottom:1px dashed var(--border);padding:3px 0}.info-input summary{cursor:pointer;align-items:center;gap:6px;font-size:12.5px;list-style:none;display:flex}.info-input summary::-webkit-details-marker{display:none}.info-input summary .grow{flex:1}.info-input summary .num{white-space:nowrap}.info-source{margin-top:5px}.info-quote{border-left:3px solid var(--border);color:var(--ink-2);margin:4px 0 0;padding-left:8px;font-style:italic}.info-limits{border:1px solid var(--amber);border-radius:8px;padding:6px 8px;color:var(--ink-2)!important}.help-btn{width:32px;height:32px;font:700 15px/1 var(--display);border-radius:50%;flex-shrink:0;padding:0}.tour{z-index:30;position:fixed;inset:0}.tour-block{position:absolute;inset:0}.tour-dim{background:#06090c9e;position:absolute;inset:0}.tour-hole{border:3px solid var(--lime);pointer-events:none;border-radius:12px;transition:left .2s,top .2s,width .2s,height .2s;position:absolute;box-shadow:0 0 0 9999px #06090c9e}.tour-card{background:var(--panel);border:2px solid var(--lime);border-bottom-width:5px;border-radius:16px;width:min(340px,100vw - 24px);padding:14px 16px;position:absolute;box-shadow:0 16px 40px #00000080}.tour-title{font:700 20px/1.2 var(--display);margin-top:4px}.tour-card p{color:var(--ink-2);margin:6px 0 10px}.tour-dots{gap:5px;margin-bottom:10px;display:flex}.tour-dots span{background:var(--ink-4);border-radius:50%;width:7px;height:7px}.tour-dots span.on{background:var(--lime)}.tour-actions{align-items:center;gap:6px;display:flex}.tour-skip{color:var(--ink-3);cursor:pointer;font:600 12.5px var(--ui);background:0 0;border:none;padding:4px 0;text-decoration:underline}.tour-skip:hover{color:var(--ink)}@media (prefers-reduced-motion:reduce){.tour-hole{transition:none}}.cp-label{align-items:center;margin-bottom:6px;display:flex}.cp-head [data-tour=filters]>.cp-label{margin-top:2px}.hud-help{align-self:center}.back-btn{white-space:nowrap;flex-shrink:0}.tuck-btn{cursor:pointer;background:var(--card);color:var(--ink);border:2px solid var(--border);font:700 12.5px/1 var(--display);border-bottom-width:3px;border-radius:9px;flex-shrink:0;align-items:center;gap:6px;margin-left:auto;padding:3px 8px;display:inline-flex}.tuck-btn:hover{border-color:var(--lime)}.tuck-chev{font-size:15px;line-height:1;transition:transform .2s;display:inline-block}[aria-expanded=false]>.tuck-chev{transform:rotate(-90deg)}.cp-title{align-items:center;display:flex}.cp-hero .tuck-btn{color:var(--bg);background:#0b3a1f24;border-color:#0b3a1f59}.city-panel.tucked{bottom:auto}.hud-row>.tuck-btn{background:var(--panel);border-radius:12px;align-self:center;margin-left:0;padding:8px 10px}.build-head .tuck-btn{margin-left:6px;padding:1px 6px}.palette.tucked{padding:6px 10px}.palette.tucked .build-head{position:static}.tabs{align-items:flex-start}.tab-list{flex-wrap:wrap;flex:1;gap:4px;min-width:0;display:flex}.tabs .tuck-btn{background:var(--card);color:var(--ink);border:2px solid var(--border);border-bottom-width:3px;margin-left:auto;padding:3px 8px}.panel.tucked .tabs{border-bottom:none}.narrow .topbar{z-index:6;gap:8px;padding:0 10px}.narrow .brand-name,.narrow .brand-tag{display:none}.narrow .strip{white-space:normal;text-align:center;height:auto;min-height:22px;padding:2px 8px;font-size:10.5px;line-height:1.2}.tools-btn{white-space:nowrap;flex-shrink:0}.bar-menu{z-index:6;background:var(--card);border:2px solid var(--border);border-radius:14px;flex-direction:column;align-items:stretch;gap:6px;padding:10px;position:absolute;top:58px;right:8px;box-shadow:0 8px 24px #0006}.bar-menu .bar-actions{flex-direction:column;align-items:stretch}.narrow .city-panel{width:auto;max-height:56dvh;inset:auto 8px 8px}.narrow .city-panel.tucked{bottom:8px}.narrow .hint-pill{display:none}.narrow .gauge{gap:6px;min-width:0;padding:5px 8px}.narrow .gauge-tile{border-radius:8px;width:18px;height:18px}.narrow .gauge-val{font-size:16px}.narrow .gauge-text{white-space:normal;font-size:13px}.narrow .hud-note{max-width:100%}.narrow .tab-list{flex-wrap:nowrap;overflow-x:auto}.narrow .pal-card{width:112px}.narrow .pal-swatch{height:36px}.narrow .inspector{width:auto;right:8px}.narrow .compare-grid{grid-template-columns:minmax(0,1fr)}@media (hover:hover){.pin-label:hover .pin-detail{display:block}.lot-card:hover{border-color:var(--lime);background:var(--card-hover)}.pal-card:hover{border-color:var(--typ,var(--lime));transform:translateY(-3px)}}@media (pointer:coarse){button,a,input,select,label{touch-action:manipulation}input,select,textarea{font-size:16px}.viewport{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.pal-card{touch-action:pan-x}.help-tip{width:26px;height:26px;font-size:13px;position:relative}.help-tip:after{content:"";position:absolute;inset:-8px}.help-x{padding:6px 10px;font-size:22px}.help-btn{width:40px;height:40px}.tuck-btn{justify-content:center;min-width:42px;min-height:38px}.build-head .tuck-btn{min-height:30px}.go-btn,.ghost-btn,.stop-btn,.tabs button{min-height:40px}.seg button{min-height:36px;padding:6px 14px}input[type=checkbox]{width:20px;height:20px}.cp-checks label{grid-template-columns:26px minmax(0,1fr);padding:4px 0}input[type=range]{height:28px}.lot-card{padding:11px 12px}.pin-label{padding:6px 11px}}.narrow .memo-backdrop{padding:8px}.narrow #lotline-memo{padding:16px 18px}
