.control-intro h1{font-size:1.35rem}.control-intro p{color:var(--muted);font-size:.82rem;margin-top:6px}.control-tabs{display:flex;gap:4px;border:1px solid var(--line);background:#121a21;border-radius:9px;padding:4px;margin:22px 0}.control-tabs button{border:0;color:var(--muted);background:transparent;border-radius:6px;flex:1;padding:9px 4px;font-size:.84rem}.control-tabs button[aria-selected=true]{background:#2b4243;color:#d4fff2}.control-group[hidden]{display:none}.control-group{display:block}.control-group .control-section{margin-bottom:22px;padding-bottom:22px}.control select{width:100%;padding:10px}.control-title label{max-width:190px}.control-title{flex-wrap:nowrap}.number-wrap{padding:3px 6px}.number-wrap input{width:5.2ch}.control-intro+.control-tabs{position:sticky;top:0;z-index:3}.control.is-disabled{opacity:.4}.control input:disabled{cursor:default}.control small,.control-note{display:block;font-size:.76rem;color:var(--muted);line-height:1.5;margin-top:8px}.control-note.accent{padding:12px;border-radius:8px;color:#bddfd7;background:#1e3233}.control details{margin-top:18px}.control details summary{font-size:.85rem;color:var(--accent)}.control details[open] summary{margin-bottom:20px}.control-footer.secondary{margin-top:16px}.mini-label{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#8ea3b1;margin-bottom:16px}.view-switch{display:flex;align-items:center;gap:7px;margin:20px 25px 0}.view-switch button{padding:6px 12px;border:1px solid var(--line);background:#202b35;color:#becdd5;border-radius:30px;font-size:.78rem}.view-switch button[aria-pressed=true]{border-color:#75b8a9;background:#2b4543;color:#d1fff2}.view-switch .check-label{font-size:.78rem;margin-left:auto;color:var(--muted)}.fit-panel{margin-top:16px;padding:18px 22px;border:1px solid var(--line);border-radius:14px;background:#151e25}.fit-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.fit-metrics strong{font-size:1.45rem;font-weight:500;font-variant-numeric:tabular-nums;display:block}.fit-metrics span{font-size:.73rem;color:var(--muted)}#unlit-count{color:var(--amber)}.fit-panel p{font-size:.77rem;line-height:1.6;color:var(--muted);margin-top:12px}.fit-panel .cell-detail{padding:10px;background:#24332f;border-radius:6px;color:#c5e5d7}.speed-control{max-width:110px;min-width:80px!important}.light-controls{gap:20px}.lamp-stage canvas#lamp{background:#171e25}.lamp-stage #source-overlay{pointer-events:auto;cursor:crosshair}.lamp-stage{max-width:560px}.workspace{align-self:start}.status-stale{opacity:.6}.controls{min-width:0}.controls h2{font-size:.96rem}.preset-buttons{display:flex;gap:6px;margin:14px 0;flex-wrap:wrap}.preset-buttons button{font-size:.75rem;padding:6px 9px;background:#203135;border:1px solid #3b5556;border-radius:6px}.status-chip{display:inline-block;border-radius:5px;background:#2e3027;color:#dcc593;font-size:.7rem;padding:3px 6px;margin-top:10px}.material-result strong{font-size:.86rem}.file-pick{display:none}.light-controls select{max-width:175px}
@media(min-width:821px){.controls{max-height:calc(100vh - 82px);overflow-y:auto;position:sticky;top:0}.workspace{padding-top:25px}.studio{grid-template-columns:350px minmax(0,1fr)}}
@media(max-width:1000px) and (min-width:821px){.studio{grid-template-columns:305px minmax(0,1fr)}.fit-metrics{grid-template-columns:1fr 1fr}.view-switch{flex-wrap:wrap}.view-switch .check-label{margin-left:0}.controls{padding:23px 18px}}
@media(max-width:820px){.studio{display:flex;flex-direction:column}.workspace{order:0;width:100%;padding:20px 18px}.controls{order:1;display:block;border:0;border-top:1px solid var(--line);width:100%;padding:22px}.control-group{display:grid;grid-template-columns:1fr 1fr;gap:24px}.control-footer{margin-top:20px}.control-intro+.control-tabs{position:static}.lamp-stage{max-width:460px}}
@media(max-width:520px){.project{max-width:115px;font-size:.6rem}.control-group{display:block}.control-group .control-section{margin-bottom:24px}.view-switch{margin:16px 16px 0;flex-wrap:wrap}.view-switch .check-label{font-size:.72rem}.fit-metrics{grid-template-columns:1fr 1fr;gap:16px}.fit-panel{padding:17px}.light-controls{grid-template-columns:1fr 1fr}.light-controls .speed-control{max-width:none}.light-controls>div:first-child{grid-column:1/-1;display:flex}.light-controls select{margin:0;max-width:170px}.controls .control-title label{max-width:none}.workspace{padding:12px 10px}.view-switch button{padding:6px 9px}.control-title label{font-size:.85rem}.model-tag{font-size:.65rem}}

/* The workbench uses the window; the lamp keeps its physical aspect ratio. */
.studio{max-width:none;width:100%}.workspace{align-self:stretch}.preview-actions{display:flex;gap:8px;flex-wrap:wrap}.lamp-viewport{position:relative;min-width:0;display:flex;align-items:center;justify-content:center}.lamp-stage{max-width:none;margin:0 auto}.fullscreen-exit[hidden]{display:none}.fullscreen-exit{position:absolute;right:max(16px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));z-index:12;background:#15232be8;border-color:#90decf}.render-status{max-width:90%;white-space:normal;text-align:center}.status-stale{opacity:1}
@media(min-width:821px){
 body{height:100dvh;overflow:hidden}.topbar{height:70px}.studio{height:calc(100dvh - 70px);grid-template-columns:clamp(290px,24vw,370px) minmax(0,1fr);min-height:0}.controls{position:static;max-height:none;height:100%;overflow-y:auto;min-height:0;overscroll-behavior:contain}.workspace{height:100%;overflow-y:auto;min-height:0;padding:20px;overscroll-behavior:contain}.preview-panel{height:calc(100dvh - 110px);min-height:640px;display:flex;flex-direction:column}.preview-heading{padding-top:16px}.view-switch{margin-top:12px}.view-grid{flex:1;min-height:0;margin-top:8px}.live-view{min-height:0;min-width:0;display:flex;flex-direction:column}.lamp-viewport{flex:1;min-height:0;container-type:size}.lamp-stage{width:min(100cqw,100cqh);flex:none}.view-caption{flex:none;margin:4px 0 6px}.preview-toolbar{padding-top:6px;padding-bottom:12px}.light-controls{padding-top:12px;padding-bottom:12px}.reference-view{min-height:0;overflow-y:auto}.reference-image{max-height:calc(100dvh - 360px);width:100%;min-height:0}.reference-image img{height:100%;object-fit:contain;max-height:calc(100dvh - 360px)}
}
@media(max-width:820px){body{height:auto;overflow:auto}.studio{height:auto}.workspace{height:auto;overflow:visible}.controls{height:auto;overflow:visible}.lamp-stage{width:100%;max-width:none}.lamp-viewport{width:100%}.preview-actions{flex:1;justify-content:flex-end}.light-controls{flex-wrap:wrap}.preview-toolbar{flex-wrap:wrap}}
@media(max-width:520px){.topbar{padding:14px 12px;gap:8px}.brand{font-size:.95rem;gap:6px}.brand svg{width:24px}.project{font-size:.55rem;max-width:82px}.preview-actions{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr)}.preview-actions .pin-button{width:auto;font-size:.8rem}.preview-toolbar .small-button{padding:8px}.light-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.brightness-control{min-width:0}.light-controls>div:first-child{min-width:0}.controls{padding:18px 14px}.control-title{gap:6px}.number-wrap{flex:none}.control-title label{min-width:0}.view-switch .check-label{margin-left:0}.preview-heading h2{font-size:1rem}.model-tag{white-space:normal}.view-caption{flex-wrap:wrap}.view-grid.comparing{grid-template-columns:1fr}}
body.lamp-expanded{overflow:hidden!important}.lamp-viewport.is-fullscreen,.lamp-viewport:fullscreen{position:fixed;inset:0;z-index:1000;width:100vw;height:100dvh;max-width:none;background:#171e25;padding:0;container-type:normal;display:flex;align-items:center;justify-content:center}.lamp-viewport.is-fullscreen .lamp-stage,.lamp-viewport:fullscreen .lamp-stage{width:min(100vw,100dvh);height:min(100vw,100dvh);max-width:none;max-height:none;margin:0;flex:none}.lamp-viewport:fullscreen::backdrop{background:#171e25}

@media(max-width:520px){.project{max-width:108px;font-size:.52rem;letter-spacing:.02em;overflow-wrap:anywhere;line-height:1.3}.preview-toolbar{display:grid;grid-template-columns:minmax(0,1fr)}.preview-actions{width:100%;flex:none;min-width:0}.preview-actions .pin-button{white-space:normal}.play-controls{min-width:0}.play-controls select{width:100%;min-width:0}}

.render-status{position:static;inset:auto;transform:none;max-width:45%;white-space:normal;text-align:right;font-size:.75rem;padding:6px 10px;line-height:1.3;flex:0 1 auto}.render-status::before{content:'◌';display:inline-block;margin-right:7px;animation:loading-spin 1s linear infinite}.is-calculating .topbar .project{display:none}.topbar{position:relative}.lamp-viewport.is-fullscreen .render-status{position:absolute;left:16px;top:12px;text-align:left;max-width:calc(100% - 170px);z-index:12}.lamp-viewport.is-fullscreen.is-calculating{padding-top:52px}.lamp-viewport.is-fullscreen.is-calculating .lamp-stage{width:min(100vw,calc(100dvh - 52px));height:min(100vw,calc(100dvh - 52px))}@keyframes loading-spin{to{transform:rotate(360deg)}}@media(max-width:820px){.topbar{position:sticky;top:0;z-index:30;background:var(--bg)}}@media(prefers-reduced-motion:reduce){.render-status::before{animation:none}}

.fit-comparison{margin-top:16px}#package-comparison-results{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}#package-comparison-results button{white-space:normal;text-align:left;font-size:.76rem}

#power-readout{margin:0 0 16px;padding:12px;background:#1c2d30;border:1px solid #385353;border-radius:8px}.power-limited{color:var(--amber)!important}

@media(max-width:600px){.lamp-viewport.is-fullscreen.is-calculating{padding-top:64px}.lamp-viewport.is-fullscreen.is-calculating .lamp-stage{width:min(100vw,calc(100dvh - 64px));height:min(100vw,calc(100dvh - 64px))}}
