.h3d canvas{touch-action:pan-y;width:100%;height:100%;display:block;position:absolute;inset:0}.h3d.no-3d .rf-model,.h3d.no-3d .h3d-site,.h3d.no-3d .cl-model{display:none}.h3d-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:540px;margin-top:2rem;display:grid}.h3d-legend [data-k=bg]{--c:#8a5a35}.h3d-legend [data-k=san]{--c:#b07a4f}.h3d-legend [data-k=vent]{--c:#2fb57a}.h3d-legend [data-k=cw]{--c:#2f8cff}.h3d-legend [data-k=hw]{--c:#ff4d3d}.h3d-legend [data-k=sw]{--c:#12b5c9}.h3d-legend [data-k=gas]{--c:#f2b705}.h3d-legend button{min-width:0;font:500 .78rem var(--f-mono);color:#dbe4f3;text-align:left;background:#ffffff0a;border-radius:9px;align-items:center;gap:10px;padding:9px 12px;transition:opacity .4s,background-color .2s,box-shadow .2s;display:flex;box-shadow:inset 0 0 0 1px #ffffff1f}.h3d.is-live .h3d-legend button:not(.is-on){opacity:.4}.h3d-legend button:hover,.h3d-legend button[aria-pressed=true]{box-shadow:0 0 0 1px var(--c) inset;background:#ffffff17}.h3d-legend i{background:var(--c);width:10px;height:10px;box-shadow:0 0 10px var(--c);border-radius:50%;flex:none}.h3d-legend span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.h3d-legend b{color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-weight:500}.h3d-note{font:400 .6rem/1.4 var(--f-mono);letter-spacing:.06em;color:#7f93b5;margin-top:.7rem}.h3d-replay{color:#fff;font:600 .8rem var(--f-body);background:#001a4799;border-radius:999px;padding:8px 14px;position:absolute;bottom:12px;right:12px;box-shadow:inset 0 0 0 1px #ffffff40}.h3d-replay:hover{box-shadow:inset 0 0 0 1px #fff}.h3d--site{flex-direction:column;justify-content:flex-end;align-items:stretch}.h3d--site:before{background:linear-gradient(90deg,#00163cf5 0%,#00163cc7 32%,#00163c00 58%),linear-gradient(#00163c00 72%,#00163cd9)}.h3d--site .lead{max-width:34rem}.h3d-site{z-index:-2;position:absolute;inset:0}.h3d-site__tag{right:var(--gutter);font:500 .64rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:#9fb0cc;position:absolute;top:24px}.h3d-labs{pointer-events:none;position:absolute;inset:0;overflow:hidden}.h3d-lab{transition:opacity .35s;position:absolute;top:0;left:0}.h3d-lab>span{box-shadow:0 0 0 1px var(--c,#fff6) inset;font:600 .68rem var(--f-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;color:#fff;background:#001438d1;border-radius:6px;padding:5px 10px;display:block;transform:translate(-50%,calc(-100% - 10px))}.h3d-lab.is-cut{--c:var(--orange-l)}.h3d-lab.is-fill{--c:#6aa8ff}.h3d-count b{font:700 clamp(1.5rem,1rem + 1.2vw,2rem)/1 var(--f-display);font-variant-numeric:tabular-nums;color:#fff;font-stretch:106%}.h3d-count small{font:500 .8rem var(--f-mono);color:#dbe4f3;margin-left:.35rem}.h3d-count .is-cut b{color:var(--orange-l)}.h3d-count .is-fill b{color:#6aa8ff}.cl-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:24px;display:grid}.cl-side{gap:16px;min-width:0;display:grid}.cl-sys{gap:8px;display:grid}.cl-sys button{border-radius:var(--r);background:var(--bg);width:100%;box-shadow:0 0 0 1px var(--line-2) inset;text-align:left;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:2px 12px;padding:12px 16px;transition:box-shadow .2s;display:grid}.cl-sys button:hover{box-shadow:0 0 0 1px var(--line-3) inset}.cl-sys button[aria-pressed=true]{box-shadow:0 0 0 2px var(--navy) inset,var(--shadow)}.cl-sys i{background:var(--c);width:28px;height:28px;box-shadow:0 0 0 1px var(--line-2) inset;border-radius:6px;grid-row:span 2}.cl-sys b{font:700 1.06rem/1.3 var(--f-display);color:var(--navy);font-stretch:106%}.cl-sys small{color:var(--text-3);font-size:.82rem;line-height:1.4}.h3d.no-3d .cl-sys button{pointer-events:none}.cl-model{border-radius:var(--r-lg);height:640px;box-shadow:0 0 0 1px var(--line-2) inset;background:radial-gradient(70% 60% at 50% 38%,#f7f9fb,#d8e0ea 92%);position:relative;overflow:hidden}.cl-model .h3d-lab>span{text-transform:none;letter-spacing:.04em}.cl-model__tag{z-index:1;font:500 .64rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);position:absolute;top:14px;left:16px}.cl-sched{border-radius:var(--r);background:var(--bg);min-width:0;box-shadow:0 0 0 1px var(--line-2) inset;gap:10px;padding:20px 22px;display:grid}.cl-sched__k{font:500 .72rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.cl-sched table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.cl-sched td{border-bottom:1px solid var(--line-2);vertical-align:top;padding:10px 0}.cl-sched td:last-child{text-align:right;white-space:nowrap;font:600 .94rem/1.5 var(--f-mono);color:var(--text);padding-left:12px}.cl-sched tr:first-child td:last-child{color:var(--orange)}.cl-it{color:var(--navy);gap:1px;font-size:.94rem;font-weight:600;display:grid}.cl-it small{color:var(--text-3);font-size:.78rem;font-weight:400}.cl-sched p{color:var(--text-3);font-size:.8rem;line-height:1.5}@media (max-width:980px){.h3d .rf-split{row-gap:0}.h3d-copy{display:contents}.h3d .rf-model{order:1;margin-top:2rem}.h3d-legend,.h3d-note{order:2}.h3d .rf-model canvas{height:440px;position:relative}.h3d-site{z-index:0;height:380px;margin:24px calc(var(--gutter) * -1) 0;position:relative;inset:auto}.h3d--site:before{display:none}.h3d-count{margin-top:0}.cl-grid{grid-template-columns:minmax(0,1fr)}.cl-side{display:contents}.cl-model{order:1;height:460px}.cl-sched{order:2}}@media (max-width:620px){.h3d .rf-model canvas{height:340px}.cl-model{height:380px}.h3d-legend{grid-template-columns:minmax(0,1fr)}.h3d-count{grid-template-columns:1fr 1fr}.h3d-count>div:nth-child(odd){border-right:1px solid #ffffff1f}}@media (prefers-reduced-motion:reduce){.h3d-replay{display:none}}
