:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:#dce7e9;background:#152127;color-scheme:dark;font-size:13px}*{box-sizing:border-box}body{margin:0}header{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid #405159;background:#223239}header b{font-size:16px}header b span{font-weight:400;color:#9eafb4}header>div{display:flex;gap:12px;align-items:center}button,select,input{font:inherit;border:1px solid #52656c;border-radius:7px;color:inherit;background:#2c4049;padding:10px}button{cursor:pointer}button:hover{background:#3b555f}button:disabled{opacity:.4;cursor:default}select,input{width:100%}button.primary{background:#e0b476;color:#19262a;border:0;font-weight:700}main{display:grid;grid-template-columns:minmax(0,1fr)280px;height:calc(100dvh - 58px)}#workspace{min-width:0;display:flex;flex-direction:column}#views{position:relative;flex:1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:46% 54%;gap:3px;overflow:hidden}#render{position:absolute;width:100%;height:100%;inset:0;z-index:0}.pane{position:relative;border:1px solid #53636b;touch-action:none;outline:none;min-height:0}.pane:focus{border-color:#f1be75}.tag{position:absolute;inset:0 0 auto;background:#182a33b5;padding:10px;display:flex;align-items:center;gap:10px;font-weight:600;pointer-events:none}.tag small{font-weight:400;color:#bccbd1}.tag button{padding:4px 7px;margin-left:auto;pointer-events:auto}.hint{position:absolute;bottom:10px;width:100%;text-align:center;font-size:11px;text-shadow:0 1px 4px #000}#shot{grid-column:1/3;pointer-events:none}#shotEmpty{position:absolute;inset:0;display:grid;place-items:center;background:#152127e0;color:#a6b7bc}#shotEmpty[hidden]{display:none}footer{display:flex;justify-content:space-between;padding:12px;background:#223239}aside{overflow:auto;padding:20px;background:#1e2d33;border-left:1px solid #405159}aside section{padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid #3e4e55}h2{font-size:13px;margin:0 0 12px;font-weight:600;display:flex;justify-content:space-between}p{line-height:1.7;color:#9fb0b6;margin:8px 0}aside button,aside select{width:100%;margin-bottom:8px}label{display:block;margin:12px 0;color:#c4d2d7}input[type=range]{accent-color:#e0b476;padding:0;margin-top:10px}ul{list-style:none;padding:0;margin:0}li{display:flex;gap:9px;align-items:center;margin:10px 0;font-size:12px}li i{width:9px;height:9px;border-radius:50%;display:inline-block}li small{margin-left:auto;color:#a9b8bd}#lobby{position:fixed;inset:58px 0 0;display:grid;place-items:center;background:linear-gradient(120deg,#10242bf5,#1b323cdd);backdrop-filter:blur(12px);z-index:5}.card{width:min(470px,94vw);padding:32px 36px;background:#22363e;border:1px solid #526770;border-radius:15px;box-shadow:0 24px 100px #07121680}.card h1{font-size:32px;line-height:1.3;letter-spacing:-.7px;margin:14px 0}.eyebrow{font-size:10px;letter-spacing:3px;color:#e0b476}.card button{width:100%;margin-top:12px}.card small{font-size:11px;color:#9fb0b6}#lobby[hidden]{display:none}#notice{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);padding:12px 20px;background:#172b35;border:1px solid #e0b476;border-radius:8px;z-index:20;display:none;max-width:90vw}#notice.visible{display:block}pre{white-space:pre-wrap;font-size:10px;color:#9faeb4}.touch{display:none}#voiceBadge{color:#e0b476}#mic.on{background:#9b5347}@media(max-width:760px){header{padding:0 10px}header b{font-size:13px}header>div{gap:5px;font-size:10px}header button{padding:7px}main{grid-template-columns:1fr;height:auto}#workspace{height:75dvh}aside{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:15px}aside section{margin:0}.tag{font-size:11px;padding:7px}.tag small{display:none}.touch{position:absolute;bottom:36px;left:10px;display:grid;grid-template-columns:repeat(4,36px);gap:4px}.touch button{padding:9px}.hint{font-size:9px}.card{padding:24px}.card h1{font-size:27px}}

[hidden]{display:none!important}.pad{display:flex;gap:6px}.pad button{flex:1}#takeName{margin-bottom:8px}#recStart{background:#724940}#recBadge{font-size:11px;color:#e0b476}.tag{flex-wrap:wrap}.tag button[aria-pressed=true]{border-color:#d7b27c;color:#f4cc92}#review{position:fixed;inset:0;z-index:30;background:#0b151de8;display:grid;place-items:center}.review-card{width:min(960px,95vw);padding:20px;background:#223239;border:1px solid #506871;border-radius:12px}.review-card video{width:100%;max-height:75vh;background:#000}.review-card button{margin-top:12px}.hint{pointer-events:none}#monitorView{color:#f3cb95}#recordInfo{font-variant-numeric:tabular-nums}output{float:right}#cameraSource{border-color:#b49364}

.key-guide{background:#16262d;padding:10px;border-radius:6px;line-height:1.9}.key-guide b{color:#efd09f}.pane.rig-keyboard{border:2px solid #e0b476}#rigKeyStatus{background:#152127d9;padding:8px 4px;bottom:0;margin:0;color:#f4cc92}

.rig-mouse{height:144px;border:1px solid #899b9d;border-radius:8px;margin:4px 0 12px;display:flex;flex-direction:column;justify-content:center;text-align:center;gap:14px;touch-action:none;user-select:none;cursor:grab;background:linear-gradient(90deg,transparent 49.7%,#92a6ac24 50%,transparent 50.3%),linear-gradient(transparent 49.7%,#92a6ac24 50%,transparent 50.3%),#233a43}.rig-mouse:focus{outline:2px solid #e0b476}.rig-mouse:active{cursor:grabbing}.rig-mouse b{color:#f4cc92}.rig-mouse span{font-size:11px;line-height:1.8;color:#c1d0d5;pointer-events:none}

.rig-mouse{position:relative;height:180px;overflow:hidden}.rig-mouse .stick{position:absolute;left:calc(50% - 9px);top:calc(50% - 9px);width:18px;height:18px;background:#e0b47688;border:1px solid #f2d5a7;border-radius:50%;transform:translate(var(--stick-x,0px),var(--stick-y,0px));pointer-events:none}.rig-mouse span,.rig-mouse b{position:relative;z-index:1}.rig-mouse span{background:#233a43b0}#crouch[aria-pressed=true]{background:#6a5031}

#limitPanel{padding:12px;background:#16262d;border:1px solid #576a70;border-radius:8px;margin:12px 0}#limitPanel summary{cursor:pointer;font-weight:600;color:#f4cc92}.limit-row{border-bottom:1px solid #3e4e55;padding:6px 0;margin-bottom:10px}.limit-toggle{display:flex;align-items:center;gap:8px}.limit-toggle input{width:16px;margin:0}.limit-row .pad label{flex:1;min-width:0;margin:0 0 8px;font-size:11px}.limit-row input[type=number]{padding:7px;min-width:0}.limit-row button{font-size:11px;padding:7px 3px}#limitStatus,#recordAvailability{color:#e8c994}

:root{background:#182820;color:#e9e7d8}header,footer{background:#22372d}aside{background:#23372d;border-color:#536448}header b span{color:#b8c2ad}.local-badge{font-size:10px;letter-spacing:1.5px;padding:5px 8px;border:1px solid #7f9168;border-radius:3px;color:#d0dba8}.reference-link{color:#dbc59a;text-decoration:none;font-size:12px}.scene-panel{padding:14px;background:#304736;border:1px solid #647650;border-radius:8px;margin-bottom:20px}.scene-panel h2{margin-top:0;color:#eddbb5}.scene-panel small{font-size:10px;font-weight:400;color:#bac7aa}.scene-panel select{margin-top:9px}.scene-panel p{color:#c2cbb9}.scene-panel button{width:100%;border-color:#9b956d}#lobby{background:radial-gradient(ellipse at 28% 30%,#466149f2,#142a21fc)}.card{background:#2c4133;border-color:#7e8962;box-shadow:0 24px 100px #071c1380}.card h1{font-family:Georgia,"Songti SC",serif;font-weight:500;font-size:36px;line-height:1.35}.eyebrow{color:#ddc298}button,select,input{background:#30483a;border-color:#627157}button:hover{background:#405b45}.tag{background:#1e3327cc}.hint{color:#e2e5d5}#shotEmpty{background:#16291ee8}button.primary{background:#dbc194;color:#243427}aside p{line-height:1.7}#status{color:#d1d9bb}@media(max-width:760px){.local-badge{display:none}.reference-link{font-size:10px}.scene-panel{grid-column:1/-1}.card h1{font-size:29px}}
