.viewport{background:#111;width:100%;height:100vh;position:relative;overflow:hidden}.viewport .room-top{z-index:120;color:#f5f0eb;align-items:center;gap:8px;font:13px/1.2 -apple-system,sans-serif;display:flex;position:absolute;top:10px;left:10px}.viewport .room-top-back{color:#f5f0eb;background:#211f26bf;border-radius:12px;place-items:center;width:36px;height:36px;text-decoration:none;display:grid}.viewport .room-top-title{opacity:.9;text-overflow:ellipsis;white-space:nowrap;max-width:min(50vw,280px);overflow:hidden}.viewport .room-top-mat{color:#f5f0eb;cursor:pointer;background:#211f26bf;border:0;border-radius:12px;place-items:center;width:36px;height:36px;padding:0;display:grid}.viewport .room-top-mat:hover,.viewport .room-top-mat.on{color:#ffe8c8;background:#373028eb}.orbit-hotkey-hud{z-index:124;pointer-events:none;flex-wrap:wrap;gap:6px;max-width:min(92vw,520px);font:11px/1.2 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;position:fixed;bottom:52px;left:12px}.orbit-hotkey-chip{color:#f5f0eb8c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#16141a9e;border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:6px;padding:5px 8px;transition:color .12s,background .12s,border-color .12s,box-shadow .12s;display:inline-flex}.orbit-hotkey-chip.on{color:#ffe8c8;background:#5a3a1ce0;border-color:#ffc87873;box-shadow:0 0 0 1px #ffb45040,0 0 14px #ff962838}.orbit-hotkey-key{letter-spacing:.02em;color:inherit;font-weight:650}.orbit-hotkey-label{opacity:.75}.orbit-hotkey-chip.on .orbit-hotkey-label{opacity:.95}button.orbit-hotkey-toggle{pointer-events:auto;cursor:pointer;font:inherit;appearance:none}button.orbit-hotkey-toggle:hover{color:#f5f0ebe0}.room-mode-toggles{z-index:125;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;top:10px;right:12px}.room-mode-toggles .rs-tool-tile{width:40px;height:40px}.room-mode-toggles .room-surface-pick{order:-4}.room-mode-toggles .room-world-snowfall{order:-3}.room-mode-toggles .room-world-gear{order:-1}.room-mode-toggles .room-view-bookmarks{order:2}.room-views-anchor{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.room-lens-mm{font-variant-numeric:tabular-nums;letter-spacing:-.02em;min-width:1.6em;font:700 11px/1 ui-monospace,Menlo,monospace;display:block}.room-lens-panel{-webkit-backdrop-filter:blur(10px)saturate(1.1);box-sizing:border-box;background:#0e0c128c;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:8px;width:min(220px,100vw - 24px);padding:10px;display:flex;box-shadow:0 8px 24px #00000047}.room-lens-panel-title{letter-spacing:.04em;text-transform:uppercase;color:#e8f0f6a6;font:600 11px/1 -apple-system,sans-serif}.room-lens-chips{grid-template-columns:1fr 1fr;gap:6px;display:grid}.room-lens-chips .rs-chip-lens{width:100%;min-width:0;padding:8px 6px;font:600 12px/1.2 -apple-system,sans-serif}.room-views-panel{-webkit-backdrop-filter:blur(10px)saturate(1.1);box-sizing:border-box;background:#0e0c128c;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:8px;width:min(260px,100vw - 24px);max-height:min(52vh,360px);padding:10px 10px 8px;display:flex;box-shadow:0 8px 24px #00000047}.room-views-save{align-items:stretch;gap:6px;display:flex}.room-views-input{min-width:0;height:32px;color:var(--rs-text-primary,#f4f1ea);font:inherit;background:#00000059;border:1px solid #ffffff24;border-radius:8px;outline:none;flex:auto;padding:0 10px;font-size:13px}.room-views-input:focus{border-color:#fab8668c}.room-views-input::placeholder{color:#ffffff59}.room-views-save-btn{height:32px;color:var(--rs-accent-soft,#f5c48a);font:inherit;cursor:pointer;background:#fab86647;border:none;border-radius:8px;flex:none;padding:0 10px;font-size:12px;font-weight:600}.room-views-save-btn:disabled{opacity:.4;cursor:default}.room-views-save-btn:not(:disabled):hover{background:#fab86666}.room-views-error{color:#ff8f8f;margin:0;font-size:11px}.room-views-list{flex-direction:column;gap:4px;max-height:min(36vh,240px);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.room-views-empty{color:#fff6;padding:8px 4px;font-size:12px}.room-views-item{align-items:center;gap:4px;display:flex}.room-views-goto{text-align:left;min-width:0;height:30px;color:var(--rs-text-primary,#f4f1ea);font:inherit;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#ffffff14;border:none;border-radius:8px;flex:auto;padding:0 10px;font-size:13px;overflow:hidden}.room-views-goto:hover{background:#ffffff24}.room-views-del{color:#ffffff73;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:0 0 28px;place-items:center;width:28px;height:28px;padding:0;display:grid}.room-views-del:hover{color:#ffb0b0;background:#ff50502e}.room-light-panel{-webkit-backdrop-filter:blur(10px)saturate(1.1);box-sizing:border-box;background:#0e0c1238;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;gap:8px;width:min(300px,100vw - 24px);max-height:min(78vh,640px);margin-top:0;padding:10px 12px 12px;display:flex;overflow:visible auto;box-shadow:0 8px 24px #0000002e}.room-settings-section{flex-direction:column;gap:7px;width:100%;display:flex}.room-settings-section+.room-settings-section{border-top:1px solid #ffffff12;padding-top:8px}.room-settings-heading{letter-spacing:.05em;text-transform:uppercase;color:#e8dcd09e;margin:0;font:650 10px/1 -apple-system,sans-serif}.room-settings-acc-head{cursor:pointer;width:100%;color:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;margin:0;padding:2px 0;display:flex}.room-settings-acc-head:hover .room-settings-heading{color:#e8dcd0eb}.room-settings-acc-chevron{color:#e8dcd073;flex:none;font-size:11px;line-height:1;transition:transform .15s;transform:rotate(-90deg)}.room-settings-acc.open .room-settings-acc-chevron{transform:rotate(0)}.room-settings-acc-body{flex-direction:column;gap:7px;width:100%;padding-top:4px;display:flex}.room-settings-lights{flex-direction:column;gap:7px;width:100%;display:flex}.room-ctrl{opacity:.55;flex-direction:column;align-items:stretch;gap:3px;width:100%;display:flex}.room-ctrl.on{opacity:1}.room-ctrl-head{flex-direction:column;align-items:stretch;gap:3px;width:100%;display:flex}.room-ctrl-title-row{justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:22px;display:flex}.room-ctrl-label{color:#e8eef4;width:100%;font:600 12px/1.2 -apple-system,BlinkMacSystemFont,sans-serif;display:block}.room-ctrl-title-row .room-ctrl-label{flex:auto;width:auto;min-width:0}.room-light-toggle{cursor:pointer;box-sizing:border-box;background:#ffffff24;border:0;border-radius:999px;flex:none;width:36px;height:20px;padding:0;position:relative}.room-light-toggle-knob{pointer-events:none;background:#d8d0c8;border-radius:50%;width:16px;height:16px;transition:transform .12s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000059}.room-light-toggle.on{background:#78aae68c}.room-ctrl:not(.exterior) .room-light-toggle.on{background:#d4a5748c}.room-light-toggle.on .room-light-toggle-knob{background:#f4f0ea;transform:translate(16px)}.room-light-toggle:focus-visible{outline-offset:2px;outline:1px solid #a0c8ff8c}.room-ctrl-meta{justify-content:space-between;align-items:center;gap:6px;width:100%;min-height:22px;display:flex}.room-ctrl-val{color:#a8c0d0;text-align:left;font-variant-numeric:tabular-nums;flex:none;font:600 11px/1 ui-monospace,SFMono-Regular,monospace}.room-sun-pose{gap:6px;display:flex}.room-sun-pose button{color:#d0c8c0;cursor:pointer;background:#28242c66;border:0;border-radius:8px;flex:1;height:28px;font:600 11px/1 -apple-system,sans-serif}.room-sun-pose button:hover{color:#f5ebe0;background:#3730288c}.room-sun-pose button.on{color:#ffa25a;background:#3a2a1c99;box-shadow:inset 0 0 0 1px #ffa25a66}.room-world-scroll-btn{color:#d0c8c0;cursor:pointer;background:#28242c66;border:0;border-radius:8px;height:28px;font:600 11px/1 -apple-system,sans-serif}.room-world-scroll-btn:hover{color:#f5ebe0}.room-world-scroll-btn.on{color:#e8f4ff;background:#2a3a4e99;box-shadow:inset 0 0 0 1px #a0c8ff59}.room-world-nudge{gap:4px;margin-left:auto;display:inline-flex}.room-world-nudge-btn{color:#e0d8ce;cursor:pointer;background:#28242c80;border:0;border-radius:6px;width:24px;height:24px;padding:0;font:700 12px/1 -apple-system,sans-serif}.room-world-nudge-btn:hover:not(:disabled){color:#fff8f0;background:#463e4ae6}.room-world-nudge-btn:disabled{opacity:.35;cursor:default}.room-light-row{opacity:.55;grid-template-columns:78px 1fr;align-items:center;gap:8px;display:grid}.room-light-row.on{opacity:1}.room-light-select{color:#e8f0f6;cursor:pointer;background:#0c1218d9;border:1px solid #a8c0d059;border-radius:6px;width:100%;min-width:0;margin:0;padding:4px 6px;font:600 12px/1.2 -apple-system,sans-serif}.room-light-select:focus-visible{outline-offset:1px;outline:2px solid #d4a574}.room-world-layout{flex-direction:column;gap:8px;display:flex}.room-world-layout-label{color:#e8f0f6;font:600 13px/1 -apple-system,sans-serif}.room-world-layout-val{color:#a8c0d0;text-align:right;font:600 12px/1 ui-monospace,monospace}.room-light-slider{color:#d4a574;cursor:pointer;pointer-events:auto;touch-action:none;box-sizing:border-box;appearance:none;background:0 0;border:0;border-radius:0;width:100%;min-width:0;max-width:100%;height:18px;margin:0;padding:0;display:block}.room-light-slider:focus{outline:none}.room-light-slider:focus-visible{outline-offset:1px;outline:1px solid #d4a57480}.room-light-slider::-webkit-slider-runnable-track{background:#ffffff29;border:0;border-radius:999px;width:100%;height:4px}.room-light-slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:currentColor;border:0;border-radius:50%;width:14px;height:14px;margin-top:-5px;box-shadow:0 0 0 1px #00000059}.room-light-slider::-moz-range-track{background:#ffffff29;border:0;border-radius:999px;width:100%;height:4px}.room-light-slider::-moz-range-thumb{cursor:pointer;background:currentColor;border:0;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 1px #00000059}.room-light-slider::-moz-range-progress{background:currentColor;border-radius:999px;height:4px}.room-ctrl.exterior .room-light-slider,.room-light-row.exterior .room-light-slider{color:#8eb6e8}.room-ctrl:not(.on) .room-light-slider,.room-light-row:not(.on) .room-light-slider{opacity:.55}.room-outside-section .room-outside-height{border-top:0;margin-top:0;padding-top:0}.room-outside-height{flex-direction:column;align-items:center;gap:8px;display:flex}.room-outside-height-label{color:#e8f0f6;align-self:flex-start;font:600 13px/1 -apple-system,sans-serif}.room-outside-height-slider{writing-mode:vertical-lr;accent-color:#8eb6e8;cursor:pointer;direction:rtl;width:32px;height:140px}.room-outside-height-val{color:#a8c0d0;font:600 12px/1 ui-monospace,monospace}.viewport .status{z-index:120;color:#f88;font:13px/1.3 sans-serif;position:fixed;top:12px;right:12px}#bar{display:none}#bar.traj-nav{z-index:130;color:#eee;gap:8px;font:14px/1.2 -apple-system,sans-serif;display:flex;position:fixed;bottom:148px;left:12px}#bar.traj-nav>:not(#mode-walk):not(#mode-orbit):not(#look-hold):not(#surface-pick):not(#view-wide):not(#save-view){display:none}#bar.traj-nav button{color:#eee;cursor:pointer;background:#2a2a2a;border:1px solid #555;border-radius:8px;place-items:center;width:36px;height:36px;padding:0;display:grid}#bar.traj-nav button.on{color:#111;background:#eee}#bar.legacy{z-index:130;color:#eee;gap:8px;font:14px/1.2 -apple-system,sans-serif;display:flex;position:fixed;bottom:12px;left:12px}#bar button{color:#eee;cursor:pointer;background:#2a2a2a;border:1px solid #555;border-radius:8px;place-items:center;width:36px;height:36px;padding:0;display:grid}#bar button svg{width:18px;height:18px;display:block}#bar button.on{color:#111;background:#eee}#play .icon-stop,#play.on .icon-play{display:none}#play.on .icon-stop{display:block}.slider{color:#eee;background:#2a2a2a;border:1px solid #555;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;display:flex}.slider svg{flex:none;width:16px;height:16px}.slider input{width:120px}#lamp input{accent-color:#ffb15a}#sun input{accent-color:#ffa25a}.sun-pose{background:#2a2a2a;border:1px solid #555;border-radius:8px;gap:4px;padding:4px;display:flex}.sun-pose[hidden]{display:none}.sun-pose button{color:#bbb;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:6px 8px;font:600 11px/1.2 system-ui,sans-serif}.sun-pose button.on{color:#ffa25a;background:#3a3a3a}#fly-speed input{accent-color:#ffe14a}#speed-modal{z-index:220;background:#000000c7;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}#speed-modal[hidden]{display:none}.speed-panel{color:#eee;background:#1c1c20;border:1px solid #555;border-radius:12px;width:min(92vw,700px);max-height:92vh;padding:14px 16px 16px;font:14px/1.35 -apple-system,sans-serif;overflow:auto;box-shadow:0 12px 40px #0000008c}.speed-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.speed-head-picks{flex-wrap:wrap;align-items:flex-end;gap:8px 12px;min-width:min(58%,360px);display:flex}.speed-head-pick{flex-direction:column;flex:140px;gap:3px;min-width:120px;display:flex}.speed-head-pick-lens{flex:0 100px;min-width:88px}.speed-head-pick-label{text-transform:uppercase;letter-spacing:.06em;color:#9f948c;font-size:10px}#speed-traj-pick,#speed-lens-pick{color:#fab866;background:#29262f;border:1px solid #ffffff24;border-radius:8px;width:100%;padding:7px 10px;font:13px/1.2 -apple-system,sans-serif}.speed-head h2{flex:1;margin:0;font-size:15px;font-weight:600}.speed-save-btn{color:#111;cursor:pointer;background:#ffe14a;border:1px solid #ffe14a;border-radius:8px;justify-content:center;align-items:center;gap:8px;height:32px;padding:0 14px;font-weight:600;line-height:1;display:inline-flex;width:auto!important;font-size:13px!important}.speed-save-btn:hover:not(:disabled){filter:brightness(1.05)}.speed-save-btn:disabled{cursor:wait}.speed-save-btn.is-busy{opacity:.9}.speed-save-btn.is-err{color:#fff;background:#ff6b6b;border-color:#ff6b6b}.speed-save-spin{border:2px solid #11111140;border-top-color:#111;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.65s linear infinite speed-save-spin;display:none}.speed-save-btn.is-busy .speed-save-spin{display:block}.speed-save-btn.is-err .speed-save-spin{display:none}@keyframes speed-save-spin{to{transform:rotate(360deg)}}.speed-live{align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.speed-live img{aspect-ratio:16/9;object-fit:contain;background:#0b0d12;border:2px solid #ffe14a;border-radius:8px;width:min(42vw,320px)}.speed-live-meta{color:#bbb;flex:1;min-width:0;font-size:12px}.speed-live-meta strong{color:#ffe14a;margin-bottom:4px;font-size:14px;display:block}.speed-legend{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.speed-legend button{color:#ccc;cursor:pointer;background:#2a2a2a;border:1px solid #555;border-radius:6px;align-items:center;gap:5px;width:auto;height:auto;padding:5px 10px;font-size:11px;display:inline-flex}.speed-legend button.on{color:#111}.speed-legend button[data-channel=speed].on{background:#ffe14a;border-color:#ffe14a}.speed-legend button[data-channel=pitch].on{background:#5ec8ff;border-color:#5ec8ff}.speed-legend button[data-channel=roll].on{background:#e878ff;border-color:#e878ff}.speed-legend button[data-channel=tiltV].on{background:#6ee7a8;border-color:#6ee7a8}.speed-legend button[data-channel=tiltH].on{background:#ff9a6e;border-color:#ff9a6e}.speed-legend button[data-channel=sun].on{background:#ffa25a;border-color:#ffa25a}.speed-legend button[data-channel=lamp].on{background:#ffb15a;border-color:#ffb15a}#speed-graph{cursor:crosshair;touch-action:none;background:#101012;border:1px solid #444;border-radius:8px;width:100%;height:240px;display:block}.speed-thumbs{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.speed-thumb{color:#999;text-align:center;flex:none;width:96px;font-size:10px}.speed-thumb img{aspect-ratio:16/9;object-fit:contain;background:#0b0d12;border:2px solid #3a3a3a;border-radius:6px;width:100%;margin-bottom:4px;display:block}.speed-thumb.on img{border-color:#ffe14a}.speed-note{color:#777;margin:10px 0 0;font-size:11px}#fly-record-hud{z-index:150;color:#ffe14a;pointer-events:none;background:#000000d1;border:1px solid #555;border-radius:10px;padding:10px 16px;font:600 15px/1.3 -apple-system,sans-serif;position:fixed;top:14px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #00000073}#fly-record-hud[hidden]{display:none}.mat-panel{z-index:140;color:#f0e6d8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#16120eeb;border-radius:12px;width:min(280px,100vw - 24px);max-height:min(420px,100vh - 120px);padding:12px 14px 14px;font:12px/1.35 system-ui,sans-serif;position:fixed;top:56px;right:12px;overflow:auto;box-shadow:0 8px 28px #00000073}.mat-panel-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.mat-panel-head h2{margin:0;font-size:13px;font-weight:600}.mat-panel-close{color:#cbb9a4;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:20px;line-height:1}.mat-field{gap:4px;margin-bottom:10px;display:grid}.mat-field span{color:#b9a894}.mat-field select,.mat-field input[type=color]{box-sizing:border-box;color:#f0e6d8;background:#1c1712;border:1px solid #3d342c;border-radius:6px;width:100%;padding:6px 8px}.mat-field input[type=range]{width:100%}.mat-reset{color:#d8c4a8;cursor:pointer;background:0 0;border:1px solid #4a3f34;border-radius:6px;width:100%;margin-top:4px;padding:7px 8px}.mat-reset:hover{background:#2a221c}.record-crop-root{z-index:40;pointer-events:none;position:absolute;inset:0}.record-crop-toolbar{z-index:42;pointer-events:auto;background:#0a0a0e8c;border:1px solid #ffffff1f;border-radius:10px;align-items:center;gap:6px;padding:6px 8px;display:flex;position:absolute;top:52px;left:50%;transform:translate(-50%)}.record-crop-toolbar button{appearance:none;color:#eee;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff24;border-radius:7px;padding:6px 10px;font:600 12px/1.2 ui-sans-serif,system-ui,sans-serif}.record-crop-toolbar button.on{background:#ff5a5a59;border-color:#ff8c8c8c}.record-crop-hint{color:#ffffff8c;white-space:nowrap;margin-left:4px;font:500 11px/1.2 ui-sans-serif,system-ui,sans-serif}.record-crop-box{box-sizing:border-box;pointer-events:none;touch-action:none;border:1.5px solid #ffffffeb;position:absolute;box-shadow:0 0 0 9999px #00000073}.record-crop-label{color:#fff;text-shadow:0 1px 2px #000000b3;pointer-events:none;z-index:1;font:600 11px/1 ui-sans-serif,system-ui,sans-serif;position:absolute;top:6px;left:8px}.record-crop-edge{pointer-events:auto;touch-action:none;cursor:move;z-index:2;position:absolute}.record-crop-edge.top{height:14px;top:-6px;left:10px;right:10px}.record-crop-edge.bottom{height:14px;bottom:-6px;left:10px;right:10px}.record-crop-edge.left{width:14px;top:10px;bottom:10px;left:-6px}.record-crop-edge.right{width:14px;top:10px;bottom:10px;right:-6px}.record-crop-handle{pointer-events:auto;touch-action:none;z-index:3;background:#e25555;border:2px solid #fff;border-radius:3px;width:16px;height:16px;padding:0;position:absolute}.record-crop-handle.nw{cursor:nwse-resize;top:-8px;left:-8px}.record-crop-handle.ne{cursor:nesw-resize;top:-8px;right:-8px}.record-crop-handle.sw{cursor:nesw-resize;bottom:-8px;left:-8px}.record-crop-handle.se{cursor:nwse-resize;bottom:-8px;right:-8px}.room-mode-toggles .room-record-frame{order:-5}#bar #record-crop.on{color:#ff6b6b}:root{--rs-bg:#17141a;--rs-surface:#211f26;--rs-surface-elevated:#2e2938;--rs-bottom-bar:#120f14;--rs-text-primary:#f5f0eb;--rs-text-secondary:#9f948c;--rs-accent:#f27347;--rs-accent-soft:#fab866;--rs-playhead:#fac273;--rs-lane:#29262f;--rs-playhead-width:2px;--rs-side-rail:78px;--rs-tool-tile:36px;--rs-tool-corner:12px;--rs-tape-block-h:56px}.rs-timeline{z-index:140;background:var(--rs-bottom-bar);color:var(--rs-text-primary);-webkit-user-select:none;user-select:none;--rs-timeline-lift:44px;border-top:1px solid #ffffff0f;font:12px/1.3 -apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;position:absolute;bottom:0;left:0;right:0}.rs-timeline.open{--rs-timeline-lift:140px}.rs-timeline.collapsed{-webkit-backdrop-filter:blur(10px);background:#120f14d1}.rs-timeline-body{border-top:1px solid #ffffff0d}.rs-timeline-body[hidden]{display:none!important}.rs-transport{justify-content:center;align-items:center;gap:0;min-height:40px;padding:4px 16px;display:flex;position:relative}.rs-transport-side{align-items:center;gap:6px;display:flex;position:absolute;left:12px}.rs-transport-time{font-variant-numeric:tabular-nums;color:var(--rs-text-secondary);font-size:11px;font-weight:500}.rs-transport-center{justify-content:center;align-items:center;gap:10px;display:flex}.rs-transport-play{color:var(--rs-accent-soft);cursor:pointer;background:0 0;border:none;place-items:center;width:32px;height:32px;padding:0;line-height:0;display:grid}.rs-transport-play:disabled{opacity:.35;cursor:default}.rs-transport-record{color:#ffffff59;cursor:pointer;background:0 0;border:none;place-items:center;width:32px;height:32px;padding:0;line-height:0;display:grid}.rs-transport-record.armed:not(:disabled){color:#ff5c5c}.rs-transport-record.path.armed:not(:disabled){color:#ff8a5c}.rs-transport-record.motion.armed:not(:disabled){color:#7ec8ff}.rs-transport-record.ground.armed:not(:disabled){color:#9ddea0}.rs-transport-record.on{color:#ff3b3b;filter:drop-shadow(0 0 6px #ff3c3c8c)}.rs-transport-record.ground.on{color:#6dcf72;filter:drop-shadow(0 0 6px #64c86e80)}.rs-transport-record:disabled{opacity:.35;cursor:default}.rs-transport-record-wrap{place-items:center;display:grid;position:relative}.rs-traj-record-pick{z-index:40;background:#0c0e12f0;border:1px solid #ffffff1f;border-radius:10px;flex-direction:column;gap:2px;min-width:180px;max-width:min(280px,70vw);max-height:220px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 10px);left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 10px 28px #00000073}.rs-traj-record-row{border-radius:7px;align-items:stretch;gap:2px;display:flex}.rs-traj-record-row:hover{background:#ffffff0f}.rs-traj-record-row.on{background:#ff5a4638}.rs-traj-record-item{color:#e8eef4;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:7px;flex:1;min-width:0;padding:8px 6px 8px 10px;font:500 12px/1.3 -apple-system,sans-serif}.rs-traj-record-row.on .rs-traj-record-item{color:#fff}.rs-traj-record-edit{color:#e8eef4b3;cursor:pointer;background:0 0;border:none;border-radius:7px;flex:0 0 30px;place-items:center;width:30px;padding:0;display:grid}.rs-traj-record-edit:hover{color:#fff;background:#ffffff1f}.rs-traj-record-go{color:#fff;cursor:pointer;background:#ff3c3c47;border:1px solid #ff5a4673;border-radius:7px;margin-top:4px;padding:9px 10px;font:600 12px/1.2 -apple-system,sans-serif}.rs-traj-record-go:hover:not(:disabled){background:#ff3c3c6b}.rs-traj-record-go:disabled{opacity:.35;cursor:default}.rs-traj-record-empty{color:#ffffff73;padding:8px 10px;font:500 12px/1.3 -apple-system,sans-serif}.rs-transport-actions{gap:6px;display:flex;position:absolute;right:12px}.rs-tool-tile{width:var(--rs-tool-tile);height:var(--rs-tool-tile);border-radius:var(--rs-tool-corner);color:var(--rs-text-secondary);cursor:pointer;background:#ffffff1a;border:none;place-items:center;padding:0;display:grid}.rs-tool-tile:hover{color:var(--rs-text-primary);background:#ffffff24}.rs-tool-tile.on{color:var(--rs-accent-soft);background:#fab86638}.rs-tool-tile.accent{color:var(--rs-accent-soft)}.rs-tape-wrap{background:var(--rs-surface);padding:0 0 8px}.rs-tape-ruler{pointer-events:none;height:18px;margin-bottom:4px;position:relative}.rs-tape-tick{font-variant-numeric:tabular-nums;color:var(--rs-text-secondary);white-space:nowrap;font-size:9px;font-weight:500;position:absolute;top:0;transform:translate(-50%)}.rs-tape-tick:before{content:"";background:#fff3;width:1px;height:6px;position:absolute;top:14px;left:50%;transform:translate(-50%)}.rs-trim{width:var(--rs-trim-w,14px);z-index:3;touch-action:none;cursor:ew-resize;background:#fffffff2;border-radius:4px;position:absolute;top:-3px;bottom:-3px;box-shadow:0 0 0 1px #00000059}.rs-trim:after{content:"";background:#5050508c;border-radius:1px;width:2px;position:absolute;top:22%;bottom:22%;left:50%;transform:translate(-50%)}.rs-trim-l{left:0}.rs-trim-r{right:0}.rs-tape-block.on{outline:2px solid var(--rs-accent);outline-offset:0}.rs-tape-clock{font-variant-numeric:tabular-nums;color:var(--rs-text-secondary);padding:4px 12px 2px;font-size:11px;font-weight:500}.rs-tape-viewport{height:calc(var(--rs-tape-block-h) + 12px + 22px);position:relative;overflow:hidden}.rs-tape-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-behavior:auto;touch-action:pan-x pinch-zoom;cursor:default;scrollbar-width:none;-ms-overflow-style:none;position:absolute;inset:0;overflow:auto hidden}.rs-tape-scroll::-webkit-scrollbar{width:0;height:0;display:none}.rs-tape-scroll-locked{overflow-x:hidden}.rs-tape-pad{box-sizing:border-box;min-height:100%;padding-top:4px}.rs-tape-inner{flex-direction:row;align-items:flex-start;display:flex}.rs-tape-track{flex:none;position:relative}.rs-tape-rail{flex:0 0 var(--rs-side-rail);box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:flex-end;gap:6px;padding-right:10px;display:flex}.rs-tape-lane{height:var(--rs-tape-block-h);min-width:120px;position:relative}.rs-tape-block{background:var(--rs-lane);box-sizing:border-box;touch-action:pan-x;cursor:default;border:1px solid #ffffff14;border-radius:6px;height:100%;position:absolute;top:0;overflow:hidden}.rs-tape-block-film{border-radius:inherit;flex-direction:row;display:flex;position:absolute;inset:0;overflow:hidden}.rs-tape-block-film img{object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;flex:1 0 52px;width:52px;min-width:40px;height:100%}.rs-tape-block-film.loading{background:linear-gradient(90deg,#2a3545 0%,#3d4f66 50%,#2a3545 100%) 0 0/200% 100%;animation:1.2s ease-in-out infinite rs-film-shimmer}@keyframes rs-film-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.rs-tape-block-meta{z-index:2;color:#fffffff5;text-shadow:0 1px 2px #000000e6;pointer-events:none;background:linear-gradient(#0000 0%,#000000b8 62%);flex-direction:column;justify-content:flex-end;gap:1px;padding:10px 6px 4px;display:flex;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.rs-tape-block-sub,.rs-tape-block-line{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.rs-tape-block-sub{font-size:11px;font-weight:700;line-height:1.15}.rs-tape-block-line{opacity:.88;font-size:10px;font-weight:500;line-height:1.15}.rs-tape-dur{z-index:2;font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 1px 2px #000000b3;pointer-events:none;font-size:9px;font-weight:600;position:absolute;top:2px;left:16px}.rs-clip-bar{background:var(--rs-bottom-bar);border-top:1px solid #ffffff0f;align-items:stretch;padding:4px 0 6px;display:flex}.rs-clip-bar-tools{flex:1;align-items:center;gap:2px;padding:0 6px;display:flex;overflow-x:auto}.rs-clip-traj-pick{min-width:140px;max-width:220px;height:32px;margin:0 6px 0 0}.rs-clip-tool{height:48px;color:var(--rs-text-primary);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:0 0 68px;justify-content:center;align-items:center;gap:4px;font:10px/1.1 -apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;display:flex}.rs-clip-tool.danger{color:#e07070}.rs-tape-plus{width:var(--rs-tape-block-h);height:var(--rs-tape-block-h);color:#111;cursor:pointer;z-index:4;background:#ebe6e0;border:none;border-radius:6px;place-items:center;padding:0;display:grid;position:absolute;top:0}.rs-box-edit{z-index:180;background:#0000008c;justify-content:center;align-items:flex-end;padding:12px;display:flex;position:fixed;inset:0}.rs-box-edit-panel{background:var(--rs-surface-elevated);border:1px solid #ffffff1a;border-radius:14px;width:min(92vw,420px);max-height:48vh;padding:12px;overflow:auto}.rs-box-edit-head{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.rs-playhead{width:var(--rs-playhead-width);margin-left:calc(var(--rs-playhead-width) / -2);background:var(--rs-playhead);pointer-events:none;z-index:2;position:absolute;top:0;bottom:8px;box-shadow:0 0 6px #fac2738c}.rs-subject-panel{right:12px;bottom:calc(var(--rs-timeline-lift,140px) + 8px);z-index:160;background:#211f26;border:1px solid #ffffff24;border-radius:12px;width:min(320px,100vw - 24px);max-height:min(56vh,440px);padding:12px;position:fixed;overflow:auto;box-shadow:0 12px 40px #0000008c}.rs-fly-list{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.rs-fly-row{background:#ffffff0d;border-radius:8px;align-items:center;gap:4px;padding:2px 2px 2px 8px;display:flex}.rs-fly-row.on{background:#fab86633}.rs-empty-fly{color:var(--rs-text-secondary);margin:0 0 8px;font-size:11px;line-height:1.35}.rs-fly-name{min-width:0;color:var(--rs-text-primary);text-align:left;font:inherit;cursor:text;background:0 0;border:none;flex:1;padding:6px 4px}.rs-fly-name-input{min-width:0;color:var(--rs-text-primary);text-align:left;font:inherit;background:#00000059;border:1px solid #ffffff38;border-radius:6px;outline:none;flex:1;padding:5px 6px}.rs-fly-lens{width:4.6rem;color:var(--rs-text-primary);cursor:pointer;background:#00000040;border:1px solid #ffffff1f;border-radius:8px;flex-shrink:0;padding:5px 4px;font-size:11px}.rs-drawer{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:150;background:#211f26f0;border:1px solid #ffffff14;border-radius:10px;width:240px;max-height:min(42vh,320px);padding:8px;position:absolute;bottom:calc(100% + 6px);right:10px;overflow:auto}.rs-drawer-title{text-transform:uppercase;letter-spacing:.06em;color:var(--rs-text-secondary);margin:4px 4px 6px;font-size:10px}.rs-drawer-row{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.rs-chip{color:var(--rs-text-primary);cursor:pointer;text-align:left;background:#ffffff14;border:none;border-radius:8px;padding:6px 10px;font-size:11px}.rs-chip.on{color:var(--rs-accent-soft);background:#fab86640}.rs-chip-lens{text-align:center;font-variant-numeric:tabular-nums;min-width:40px}.rs-subject-pick{background:var(--rs-lane);width:100%;color:var(--rs-text-primary);font:inherit;border:1px solid #ffffff1f;border-radius:8px;margin-bottom:8px;padding:6px 8px}.coupe-chat{z-index:130;color:#f5f0eb;background:#16141ae0;border-radius:16px;flex-direction:column;gap:8px;width:min(360px,100vw - 24px);padding:10px;font:13px/1.35 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;position:absolute;bottom:88px;right:12px}.coupe-chat-log{flex-direction:column;gap:6px;max-height:240px;display:flex;overflow:auto}.coupe-chat-line{white-space:pre-wrap;margin:0}.coupe-chat-line.user{opacity:.72}.coupe-chat form{gap:6px;display:flex}.coupe-chat input{color:inherit;background:#ffffff14;border:0;border-radius:10px;flex:1;padding:8px 10px}.coupe-chat button{color:inherit;cursor:pointer;background:#ffe8c829;border:0;border-radius:10px;padding:8px 12px}.coupe-chat-status{opacity:.65;font-size:12px}:root{color:#e8e4dc;--hub-line:#2a2622;--hub-panel:#161411;--hub-panel-2:#1c1915;--hub-gold:#c9a227;--hub-muted:#9a9288;--sb-size:6px;--sb-radius:99px;--sb-track:transparent;--sb-thumb:#c9a22759;--sb-thumb-hover:#c9a2278c;background:#0d0c0b;font-family:IBM Plex Sans,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}*{scrollbar-width:thin;scrollbar-color:var(--sb-thumb) var(--sb-track)}::-webkit-scrollbar{width:var(--sb-size);height:var(--sb-size)}::-webkit-scrollbar-track{background:var(--sb-track)}::-webkit-scrollbar-thumb{background:var(--sb-thumb);border-radius:var(--sb-radius);background-clip:padding-box;border:1px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--sb-thumb-hover);background-clip:padding-box}::-webkit-scrollbar-corner{background:0 0}a{color:var(--hub-gold);text-decoration:none}input,button{font:inherit;color:inherit;background:#1a1816;border:1px solid #3a3530;border-radius:8px;padding:.55rem .85rem}button{cursor:pointer;background:#2a241c}button:hover{background:#3a3228}button:disabled{opacity:.55;cursor:default}.err{color:#e07070;margin:0 0 1rem}.page{max-width:40rem;margin:0 auto;padding:2.5rem 1.25rem}.stack{gap:.75rem;display:grid}.row{border-bottom:1px solid var(--hub-line);justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;display:flex}.viewport{background:#000;width:100%;height:100%;position:relative}.viewport canvas{width:100%;height:100%;display:block}.hud{z-index:2;gap:.5rem;padding:.75rem;display:flex;position:absolute;top:0;left:0;right:0}.status{opacity:.8;font-size:13px;position:absolute;bottom:.75rem;left:.75rem}.room-load{z-index:80;pointer-events:none;background:#080706b8;place-items:center;display:grid;position:absolute;inset:0}.room-load-card{pointer-events:none;background:#161411;border:1px solid #2a2622;border-radius:12px;width:min(22rem,100% - 2rem);padding:1.1rem 1.25rem 1rem;box-shadow:0 12px 40px #00000073}.room-load-title{letter-spacing:.02em;margin-bottom:.75rem;font-size:.95rem;font-weight:600}.room-load-track{background:#2a2622;border-radius:99px;height:6px;overflow:hidden}.room-load-fill{background:linear-gradient(90deg, #8a7020, var(--hub-gold));border-radius:99px;height:100%;transition:width .15s ease-out}.room-load-meta{color:var(--hub-muted);justify-content:space-between;gap:.75rem;margin-top:.55rem;font-size:12px;display:flex}.room-load-label{text-overflow:ellipsis;white-space:nowrap;text-align:right;max-width:70%;overflow:hidden}.room-load-items{color:#6a635c;margin-top:.35rem;font-size:11px}.room-load-err{color:#e07070;margin-top:.5rem;font-size:12px}.hub{max-width:68rem;margin:0 auto;padding:2rem 1.25rem 3.5rem}.hub-top-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.hub-top-actions .hub-primary{color:#1a1408;border-radius:6px;align-items:center;padding:.45rem .9rem;font-weight:600;display:inline-flex}.hub-top{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.hub-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--hub-muted);margin:0 0 .25rem;font-size:.75rem}.hub h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:600}.hub h2{margin:0;font-size:1.15rem;font-weight:600}.hub-lead{color:var(--hub-muted);margin:.35rem 0 0;font-size:.95rem}.hub-section{margin-bottom:2.5rem}.hub-section-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.hub-primary{background:var(--hub-gold);color:#1a1408;border-color:#0000;font-weight:600}.hub-primary:hover{color:#1a1408;background:#dbb43a}.hub-ghost{border-color:var(--hub-line);color:var(--hub-muted);background:0 0}.hub-ghost:hover{color:#e8e4dc;border-color:#4a4540}.hub-back{border:none;margin-bottom:.75rem;padding-left:0}.hub-empty{text-align:center;border:1px dashed var(--hub-line);background:var(--hub-panel);color:var(--hub-muted);border-radius:12px;padding:2.5rem 1.5rem}.hub-empty p{margin:0 0 1rem}.hub-empty .hub-primary{color:#1a1408;border-radius:6px;align-items:center;margin-top:.25rem;padding:.55rem 1rem;font-weight:600;display:inline-flex}.hub-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;display:grid}.hub-card{background:var(--hub-panel);border:1px solid var(--hub-line);color:inherit;border-radius:12px;flex-direction:column;transition:border-color .15s,transform .15s;display:flex;position:relative;overflow:hidden}.hub-card:hover{color:inherit;border-color:#5a5040;transform:translateY(-2px)}.hub-card-main{color:inherit;flex-direction:column;flex:1;text-decoration:none;display:flex}.hub-card-main:hover{color:inherit}.hub-card-media{aspect-ratio:16/10;background:#0a0908;overflow:hidden}.hub-card-media img{object-fit:cover;width:100%;height:100%;display:block}.hub-card-fallback{background:radial-gradient(at 30% 40%,#3a3228 0%,#0000 55%),linear-gradient(145deg,#1a1814,#0d0c0b);width:100%;height:100%;min-height:4rem;display:block}.hub-card-body{gap:.25rem;padding:.85rem 5.5rem 1rem 1rem;display:grid}.hub-card-body strong{font-weight:600;line-height:1.25}.hub-card-actions{z-index:2;gap:.35rem;display:flex;position:absolute;bottom:.65rem;right:.55rem}.hub-card-action{border:1px solid var(--hub-line);color:#e8dcc8;cursor:pointer;width:34px;height:34px;font:inherit;background:#1c1814eb;border-radius:10px;place-items:center;padding:0;text-decoration:none;display:grid}.hub-card-action:hover:not(:disabled){color:#fff6e8;background:#2a241c;border-color:#7a6a52}.hub-card-action:disabled{opacity:.5;cursor:wait}.hub-card-del:hover:not(:disabled){color:#ffd4c8;background:#321c18;border-color:#a06050}.hub-meta{color:var(--hub-muted);font-size:.8rem}.hub-renders{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.hub-render-row{border:1px solid var(--hub-line,#2e2a26);background:var(--hub-panel-2,#1c1a18);border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.hub-render-meta{flex-direction:column;gap:.2rem;min-width:0;display:flex}.hub-render-meta strong{font-size:.95rem}.hub-render-play{flex-shrink:0;padding:.45rem .9rem;font-size:.85rem}.hub-player-backdrop{z-index:80;background:#080706c7;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.hub-player{background:#121110;border:1px solid #3a3530;border-radius:12px;gap:.75rem;width:min(920px,100%);padding:1rem;display:grid}.hub-player-top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.hub-player-top strong{display:block}.hub-player-video{background:#000;border-radius:8px;width:100%;max-height:min(70vh,720px)}.hub-create{grid-template-columns:minmax(240px,320px) 1fr;align-items:start;gap:1.5rem;display:grid}@media (width<=840px){.hub-create{grid-template-columns:1fr}}.hub-label{letter-spacing:.08em;text-transform:uppercase;color:var(--hub-muted);margin:0 0 .5rem;font-size:.75rem;display:block}.hub-tpl-list{gap:.5rem;margin-bottom:1.25rem;display:grid}.hub-tpl{text-align:left;background:var(--hub-panel);border:1px solid var(--hub-line);border-radius:10px;grid-template-columns:72px 1fr;align-items:center;gap:.75rem;width:100%;padding:.45rem;display:grid}.hub-tpl:hover{background:var(--hub-panel-2);border-color:#4a4540}.hub-tpl.is-on{border-color:var(--hub-gold);box-shadow:0 0 0 1px var(--hub-gold)}.hub-tpl-thumb{aspect-ratio:1;background:#0a0908;border-radius:6px;overflow:hidden}.hub-tpl-thumb img{object-fit:cover;width:100%;height:100%;display:block}.hub-tpl-text{gap:.15rem;min-width:0;display:grid}.hub-tpl-text strong{font-size:.95rem;font-weight:600}.hub-tpl-text em{color:var(--hub-muted);font-size:.8rem;font-style:normal;line-height:1.3}.hub-field{gap:.35rem;margin-bottom:1rem;display:grid}.hub-field input{background:var(--hub-panel);border-color:var(--hub-line);width:100%}.hub-create-go{width:100%;padding:.75rem 1rem}.hub-create-stage{min-width:0}.hub-stage-frame{aspect-ratio:16/10;border:1px solid var(--hub-line);background:#0a0908;border-radius:12px;position:relative;overflow:hidden}.hub-stage-canvas{width:100%;height:100%;display:block}.hub-stage-wait{color:var(--hub-muted);pointer-events:none;background:#0a09088c;place-items:center;font-size:.9rem;display:grid;position:absolute;inset:0}.hub-stage-cap{flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-top:.65rem;font-size:.85rem;display:flex}.hub-stage-cap strong{font-weight:600}.hub-stage-cap span{color:var(--hub-muted)}
