.room3d{padding-top:36px;padding-bottom:65px}.room-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:25px}.room-heading>div>a{display:block;color:var(--muted);font-size:13px;margin-bottom:23px}.room-heading h1{font-size:clamp(35px,5vw,64px);line-height:1.06;margin:12px 0}.room-heading p{color:var(--muted);max-width:600px;line-height:1.7}.room-frame{border:1px solid #536467;border-radius:13px;overflow:hidden;background:#10222a;box-shadow:0 22px 60px #0005}.room-stage{position:relative;width:100%;height:clamp(300px,58vw,620px);overflow:hidden;touch-action:none;isolation:isolate}.room-stage:focus-visible{outline:3px solid var(--gold);outline-offset:-4px}.room-stage canvas{display:block;width:100%;height:100%}.room-stage canvas[hidden],.room3d [hidden]{display:none!important}.room-anchors{position:absolute;inset:0;pointer-events:none;overflow:hidden}.room-anchor{position:absolute;max-width:155px;white-space:normal;transform:translate(-50%,-50%);text-align:center;pointer-events:auto;border:1px solid #bca56f99;background:#10232de8;color:#f2e5c7;border-radius:5px;padding:8px 10px;font:500 12px/1.3 var(--sans);box-shadow:0 4px 12px #0004;text-decoration:none;min-height:36px;cursor:pointer}.room-item-label{background:#21443de8;border-color:#91c8b0aa;font-size:11px}.room-anchor:hover{background:#41655b;color:white}.room-crosshair{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#f2e5c7bb;pointer-events:none;font-size:22px;text-shadow:0 1px 4px #000}.room-render-status{position:absolute;right:13px;bottom:11px;font-size:10px;letter-spacing:.07em;background:#10222add;padding:6px 9px;border-radius:4px;color:#b4ceca;pointer-events:none}.room-pause{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background:#071820b5;backdrop-filter:blur(3px)}.room-pause strong{font:32px/1.2 var(--serif);color:#efe5cc;margin-top:15px}.room-pause p{font-size:14px;line-height:1.7;color:#d0d8ce;max-width:390px}.room-pause .button{margin-top:10px}.room-console{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:15px 18px;border-top:1px solid #52646677;background:#14282f}.room-console label{display:flex;gap:9px;align-items:center;font-size:11px;color:#b5c6bd}.room-console select{max-width:165px;background:#0c1d25;color:#f1e4c8;border:1px solid #63776d;padding:9px 7px;border-radius:5px}.room-console>button,.room-navigation button{min-height:44px;padding:8px 12px;border:1px solid #60766b;border-radius:5px;background:#1b353a;color:#e3e1cb;font:12px var(--sans);cursor:pointer}.room-console>button:hover,.room-navigation button:hover{background:#36554b}.room-console>span{font-size:10px;color:#aac3b7;margin-left:auto}.room-navigation{display:flex;align-items:flex-start;gap:28px;padding:25px 0 12px;flex-wrap:wrap}.room-navigation .eyebrow{font-size:9px;margin-bottom:10px;display:block}.room-look-controls,.room-walk-controls,.room-viewpoints>div{display:flex;gap:7px;flex-wrap:wrap}.room-look-controls button,.room-walk-controls button{width:46px;font-size:22px;touch-action:none;user-select:none;-webkit-user-select:none}.room-viewpoints{flex:1;min-width:220px}.room-help,.room-prototype-note{font-size:12px;color:var(--muted);line-height:1.8}.room-within-reach{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;border-top:1px solid var(--line);padding:32px 0;margin-top:24px}.room-within-reach h2{font:28px var(--serif);margin:10px 0 18px}.room-within-reach nav,.room-within-reach #room-objects{display:flex;gap:9px;flex-wrap:wrap}.room-within-reach a,.room-within-reach button{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:#12272c;color:#d8dac9;padding:12px 14px;text-align:left;text-decoration:none;border-radius:6px;font:13px var(--sans);min-height:44px;cursor:pointer}.room-within-reach small{font-size:10px;color:#9ab8a7}.room-cad,.room-brief{border-top:1px solid var(--line);padding:20px 0;color:var(--muted);font-size:13px;line-height:1.8}.room-cad summary,.room-brief summary{color:#d9dfc9;cursor:pointer;font-weight:600;min-height:32px}.room-cad form{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:15px 0}.room-cad label{display:flex;flex-direction:column;gap:7px;font-size:12px}.room-cad input{width:100%;min-width:0;padding:12px;border:1px solid #526a63;background:#10232a;color:#e6dfcc;border-radius:5px}.room-cad form button{align-self:end}.room-brief p{white-space:pre-wrap;overflow-wrap:anywhere}.room-notice{border-left:3px solid var(--gold);padding:14px 18px;background:#bca56f10;font-size:13px;color:#d2d2b9;line-height:1.7}.room-story-return{margin:20px 0}.room-prototype-note{max-width:850px;margin-top:26px}
@media(max-width:650px){.room3d{padding-top:25px}.room-heading{display:block}.room-heading>.button{margin-top:10px}.room-stage{height:390px}.room-console{padding:12px;gap:8px}.room-console>span{width:100%;margin:0}.room-console>button{font-size:11px;padding:8px 10px}.room-navigation{gap:22px}.room-within-reach{grid-template-columns:1fr;gap:30px}.room-cad form{grid-template-columns:1fr}.room-anchor{max-width:112px;font-size:10px;padding:6px 8px}.room-pause strong{font-size:28px}}

.room-speed{border-top:1px solid var(--line);padding:20px 0;color:var(--muted);font-size:13px;line-height:1.8}.room-speed summary{color:#d9dfc9;cursor:pointer;font-weight:600;min-height:32px}.room-speed p{max-width:850px}.room-speed-actions{display:flex;flex-wrap:wrap;gap:10px}.room-speed-actions button{min-height:44px}.room-speed-actions button:disabled{opacity:.5;cursor:default}.room-speed-banner{position:absolute;left:12px;top:12px;right:12px;width:fit-content;max-width:calc(100% - 24px);padding:8px 12px;border:1px solid #ccb474;background:#12272cf2;color:#f1e4c8;font-size:12px;pointer-events:none;z-index:2}

.room-asset-options{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:15px 0}.room-asset-options a{min-height:44px}.room-asset-options [aria-current="page"]{border-color:var(--gold);color:var(--gold)}

.room-object-row{display:flex;gap:.45rem;align-items:stretch}.room-object-row>[data-room-action="object"]{flex:1;min-width:0}.room-object-row>[data-room-action="lamp"]{width:auto;flex:0 0 auto;padding-inline:.8rem}.room-object-row>[data-room-action="lamp"][aria-pressed="true"]{border-color:#c3ad73;color:#f1dcaa}
