:root{--bg:#000;--panel:#0c0c0c;--text:#fff;--muted:#8f8f8f;--line:#3a3a3a;--line-strong:#bdbdbd;--light:255, 247, 205;--lit:rgb(var(--light));--warn:#e9b38a;--fix:#f2917f;--gutter:clamp(16px, 3vw, 40px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{-webkit-font-smoothing:antialiased;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.4}a{color:inherit}button,input,select{font:inherit;color:inherit}h1{letter-spacing:-.01em;margin:0 0 24px;font-size:clamp(30px,3.4vw,44px);font-weight:400}h2{margin:0 0 16px;font-size:22px;font-weight:400}.muted{color:var(--muted)}.small{font-size:13px}.warn{color:var(--warn)}.loading{min-height:100vh}img{display:block}.img-wait{background:#111;width:100%;height:100%;display:block}.solid-btn,.outline-btn,.ghost-btn{border:1px solid var(--line-strong);cursor:pointer;white-space:nowrap;background:0 0;border-radius:2px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 20px;text-decoration:none;display:inline-flex}.solid-btn{background:var(--text);color:var(--bg);border-color:var(--text)}.solid-btn:disabled,.outline-btn:disabled{opacity:.4;cursor:default}.ghost-btn{border:0;min-height:0;padding:0}.ghost-btn svg{width:16px;height:16px}.wide{width:100%;min-height:48px;font-size:17px}.text-btn{cursor:pointer;color:var(--text);background:0 0;border:0;padding:0;text-decoration:none}.text-btn:hover{text-underline-offset:3px;text-decoration:underline}.text-btn.muted{color:var(--muted)}.text-btn.delete{color:var(--muted);font-size:13px}.text-btn:disabled{color:var(--muted);cursor:default;text-decoration:none}.icon-btn{width:36px;height:36px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:2px;place-items:center;padding:0;display:grid}.icon-btn:disabled{color:#4a4a4a;cursor:default}.icon-btn:not(:disabled):hover{background:#161616}.icon-btn svg{width:20px;height:20px}input:not([type=checkbox]),select{background:var(--bg);border:1px solid var(--line-strong);border-radius:2px;outline:none;min-width:0;padding:10px 14px}input:focus-visible,select:focus-visible,button:focus-visible,[role=button]:focus-visible,a:focus-visible{outline:1px solid var(--lit);outline-offset:2px}input[type=checkbox]{accent-color:var(--lit)}.editable{width:100%;margin-left:-6px;background:0 0!important;border-color:#0000!important;padding:2px 6px!important}.editable:hover,.editable:focus{border-color:var(--line)!important}.editable.h1{letter-spacing:-.01em;font-size:clamp(30px,3.4vw,44px)}input[aria-invalid=true],.editable[aria-invalid=true]{color:var(--fix);border-color:var(--fix)!important}.remove{width:28px;height:28px;color:var(--text);cursor:pointer;background:#0009;border:0;border-radius:2px;flex:none;font-size:18px;line-height:1}.remove:hover{background:#222}.drop{cursor:pointer}.notice{z-index:40;background:var(--bg);border:1px solid var(--line-strong);opacity:0;pointer-events:none;max-width:min(560px,100vw - 32px);margin:0;padding:12px 18px;transition:opacity .2s,transform .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);box-shadow:0 12px 40px #000000b3}.notice.is-shown{opacity:1;pointer-events:auto;cursor:default;transform:translate(-50%)}.dot{vertical-align:3px;border-radius:50%;flex:none;width:7px;height:7px;margin-left:8px;display:inline-block}.dot.is-fix{background:var(--fix)}.dot.is-check{background:var(--warn)}.issues{gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.issue{color:var(--muted);padding-left:16px;position:relative}.issue:before{content:"";border:1px solid var(--muted);box-sizing:border-box;border-radius:50%;width:7px;height:7px;position:absolute;top:.5em;left:0}.issue.is-fix{color:var(--fix)}.issue.is-fix:before{background:var(--fix);border-color:var(--fix)}.issue.is-check{color:var(--warn)}.issue.is-check:before{background:var(--warn);border-color:var(--warn)}.issue a{text-decoration:none}.issue a:hover{text-underline-offset:3px;text-decoration:underline}.is-flashed{animation:1.6s ease-out flash}@keyframes flash{0%,30%{box-shadow:inset 0 0 0 1px var(--lit);background:rgba(var(--light), .06)}to{box-shadow:none;background:0 0}}.checks-btn{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.checks-btn .dot{vertical-align:0;margin:0}.checks-btn.is-fix{color:var(--fix)}.checks-btn.is-check{color:var(--warn)}.check-group{border-top:1px solid var(--line);gap:12px;padding-top:18px;display:grid}.check-group h3{margin:0;font-size:17px;font-weight:400}.check-group .count{color:var(--muted);margin-left:6px;font-size:13px}.check-group .issues{gap:10px;font-size:14px}.check-group p{margin:0}.check-group .outline-btn{justify-self:start}.before-share{border:1px solid var(--line);gap:10px;padding:16px 18px;display:grid}.before-share p{margin:0}.before-share .text-btn{color:var(--muted);justify-self:start}.to-fix{align-self:flex-start}.grip{cursor:grab;color:#5c5c5c;border-radius:2px;flex:none;place-items:center;width:20px;height:28px;display:inline-grid}.grip:hover,.grip:focus-visible{color:var(--text)}.grip svg{fill:currentColor;width:10px;height:16px}.grip-space{width:20px}[draggable=true]{-webkit-user-drag:element}[data-over]{outline:1px dashed var(--lit);outline-offset:3px}.drop.is-over{outline:1px solid var(--lit);outline-offset:-1px}.big-drop,.cover-drop,.add-light,.film.add,.photo-drop{border:1px dashed var(--line-strong);color:var(--muted);text-align:center;justify-content:center;align-items:center;display:flex}.big-drop{min-height:360px;font-size:17px}.big-drop:hover,.cover-drop:hover,.add-light:hover,.film.add:hover,.photo-drop:hover{color:var(--text)}.projects-page{padding:0 var(--gutter) 64px;max-width:1500px;margin:0 auto}.top{align-items:center;height:96px;display:flex}.brand{letter-spacing:-.01em;font-size:26px;text-decoration:none}.top .how{margin-left:auto}.welcome{border-bottom:1px solid var(--line);margin-bottom:48px;padding:8px 0 56px}.welcome-hero{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(28px,4vw,64px);display:grid}.welcome-text h1{text-wrap:balance;margin-bottom:20px;font-size:clamp(34px,4.2vw,58px);line-height:1.05}.welcome-text>p:first-of-type{color:#d6d6d6;max-width:34em;margin:0 0 28px;font-size:18px;line-height:1.5}.welcome-buttons{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.welcome-text .small{max-width:34em;margin:0}.demo{margin:0}.room-lights{aspect-ratio:1200/799;background:#111;position:relative;overflow:hidden}.room-lights img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.room-light{mix-blend-mode:plus-lighter;transition:opacity .7s}.demo figcaption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-top:14px;display:flex}.demo figcaption p{margin:0}.demo-keys{flex-wrap:wrap;gap:8px;display:flex}.demo-keys button{border:1px solid var(--line);cursor:pointer;min-height:36px;color:var(--muted);background:0 0;border-radius:18px;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.demo-keys button:hover{border-color:var(--line-strong);color:var(--text)}.demo-keys button[aria-pressed=true]{border-color:var(--lit);color:var(--text)}.demo-dot{border:1px solid;border-radius:50%;width:9px;height:9px;transition:background .3s,box-shadow .3s}[aria-pressed=true] .demo-dot{background:var(--lit);border-color:var(--lit);box-shadow:0 0 10px rgba(var(--light), .8)}.welcome-steps-head{justify-content:space-between;align-items:baseline;gap:16px;margin:56px 0 20px;display:flex}.welcome-steps-head h2{margin:0}.welcome-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0;padding:0;list-style:none;display:grid}.step-picture{aspect-ratio:16/10;border:1px solid var(--line);background:#111;margin-bottom:16px;overflow:hidden}.step-picture>img{object-fit:cover;width:100%;height:100%}.step-renders{background:var(--bg);grid-template-columns:1fr 1fr;gap:2px;height:100%;display:grid}.step-renders>div{min-height:0;position:relative}.step-renders .room-lights{aspect-ratio:auto;height:100%}.step-renders span{background:#000000a6;padding:1px 6px;font-size:11px;position:absolute;bottom:5px;left:6px}.welcome-steps h3{align-items:baseline;gap:10px;margin:0 0 8px;font-size:17px;font-weight:400;display:flex}.step-number{color:var(--lit);font-size:13px}.welcome-steps p{margin:0;line-height:1.5}@media (width<=1100px){.welcome-hero{grid-template-columns:1fr}.welcome-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}.projects-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.projects-head h1{margin:0}.import{cursor:pointer}.project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:36px;display:grid}.project-new{aspect-ratio:16/10.5;border:1px dashed var(--line-strong);cursor:pointer;color:var(--muted);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:18px;display:flex}.project-new:hover{color:var(--text)}.plus{width:40px;height:40px;position:relative}.plus:before,.plus:after{content:"";background:currentColor;position:absolute;top:50%;left:50%}.plus:before{width:40px;height:1px;transform:translate(-50%,-50%)}.plus:after{width:1px;height:40px;transform:translate(-50%,-50%)}.project-card{border:1px solid var(--line);background:var(--panel)}.project-card .cover{aspect-ratio:16/8.5;cursor:pointer;background:#111;position:relative;overflow:hidden}.project-card .cover img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.project-card .cover:hover img{transform:scale(1.02)}.no-cover{color:var(--muted);place-items:center;display:grid;position:absolute;inset:0}.card-actions{opacity:0;background:linear-gradient(#0000008c,#0000);align-items:center;gap:12px;padding:14px 16px;transition:opacity .2s;display:flex;position:absolute;inset:0 0 auto}.project-card:hover .card-actions,.card-actions:focus-within{opacity:1}.card-actions .outline-btn{border-color:var(--text);background:#00000080;min-height:34px;padding:0 14px}.spacer{flex:1}.card-body{padding:18px 22px 20px}.card-body h2{margin:0 0 4px;font-size:20px}.card-body h2 a{text-decoration:none}.card-body p{align-items:baseline;gap:14px;margin:0;display:flex}.card-body .delete{opacity:0;margin-left:auto}.card-links{gap:16px;margin-left:auto;display:flex}.card-links .delete{margin-left:0}.project-card:hover .delete,.card-body .delete:focus{opacity:1}.title-input{width:100%;margin-bottom:6px;font-size:18px}.note{margin-top:28px}.modal-back,.panel-back{z-index:20;background:#000000b8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--bg);border:1px solid var(--line-strong);gap:22px;width:min(520px,100%);padding:34px 36px;display:grid}.modal h2{margin:0 0 4px;font-size:32px}.cover-drop{aspect-ratio:16/7;overflow:hidden}.cover-drop img{object-fit:cover;width:100%;height:100%}.modal-buttons{justify-content:flex-end;align-items:center;gap:28px;display:flex}.editor{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.side{border-right:1px solid var(--line-strong);height:100vh;padding:32px 28px;position:sticky;top:0;overflow-y:auto}.side-project{margin:34px 0 48px}.side-project img{aspect-ratio:16/7;object-fit:cover;width:100%;margin-bottom:12px}.side-project p{margin:0;font-size:18px}.sections{gap:4px;display:grid}.sections>a{color:var(--muted);border-left:3px solid #0000;padding:8px 0 8px 14px;font-size:19px;text-decoration:none}.sections>a:hover{color:var(--text)}.sections>a[aria-current=page]{color:var(--text);border-left-color:var(--lit)}.room-list{gap:2px;padding:2px 0 12px 30px;display:grid}.room-list a{color:var(--muted);padding:6px 0;text-decoration:none}.room-list a:hover{color:var(--text)}.room-list a[aria-current=page]{color:var(--lit)}.room-list .add-room{color:var(--muted);justify-self:start;padding:6px 0}.room-name-input{padding:6px 10px!important}.work{padding:0 var(--gutter) 80px;min-width:0}.work-top{justify-content:flex-end;align-items:center;gap:18px;min-height:96px;display:flex}.history{gap:2px;margin-left:-8px;margin-right:auto;display:flex}.cover-mock{aspect-ratio:16/9;text-align:center;color:#4f4a45;border:1px solid var(--line);background:#d8d1c8;place-items:center;max-width:1100px;display:grid;position:relative;overflow:hidden;container-type:inline-size}.cover-mock:before{content:"";z-index:1;background:#f0ece6a8;position:absolute;inset:0}.cover-mock-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.cover-mock-body{z-index:2;padding:0 4cqw 4cqw;position:relative}.cover-mock-title{letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:max(14px,3.2cqw);font-weight:700}.cover-mock-sub{letter-spacing:.02em;min-height:1.2em;margin:.3cqw 0 0;font-size:max(10px,1.2cqw);font-weight:300}.cover-mock-links{flex-wrap:wrap;justify-content:center;gap:1.5cqw 6cqw;margin-top:4.5cqw;display:flex}.cover-mock-links span{letter-spacing:.08em;text-transform:uppercase;border:1px solid;min-width:14.5cqw;padding:.9cqw 1.5cqw;font-size:max(8px,1cqw);font-weight:700}.cover-mock-logo{z-index:2;width:8cqw;height:auto;position:absolute;bottom:1.5cqw;left:2.8cqw}.cover-edit>.small{margin:10px 0 0}.cover-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:28px 36px;max-width:1100px;margin-top:32px;display:grid}.field{align-content:start;gap:8px;display:grid}.field>span{color:var(--muted);font-size:13px}.field .editable{border-radius:0;margin-left:0;font-size:19px;border-bottom:1px solid var(--line-strong)!important;padding:4px 0!important}.field .text-btn{justify-self:start}.pic-drop{aspect-ratio:16/9;border:1px dashed var(--line-strong);color:var(--muted);text-align:center;place-items:center;padding:0 16px;font-size:13px;display:grid;overflow:hidden}.pic-drop:hover{color:var(--text)}.pic-drop:has(img){border:1px solid var(--line);padding:0}.pic-drop img{object-fit:cover;width:100%;height:100%}.logo-drop:has(img){background:#e9e5df;padding:10%}.logo-drop img{object-fit:contain}.gallery .intro{max-width:640px;margin:0 0 26px}.gallery h1+.intro{margin-top:-12px}.room-tabs .count{color:var(--muted);vertical-align:2px;margin-left:6px;font-size:12px}.carousel{grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;display:grid}.arrow{cursor:pointer;height:64px;color:var(--text);background:0 0;border:0}.arrow:disabled{opacity:.2;cursor:default}.arrow svg{width:14px;height:28px}.carousel-frame{aspect-ratio:2.08;justify-content:center;align-items:center;display:flex;overflow:hidden}.carousel-frame img{max-width:100%;max-height:100%}.dots{justify-content:center;gap:4px;margin:18px 0 28px;display:flex}.dots button{cursor:pointer;background:0 0;border:0;place-items:center;width:22px;height:22px;padding:0;display:grid}.dots button:before{content:"";background:#555;border-radius:50%;width:10px;height:10px}.dots button[aria-current=true]:before{background:var(--lit)}.filmstrip{flex-wrap:wrap;gap:18px;display:flex}.film{aspect-ratio:16/10;cursor:grab;flex:none;width:190px;position:relative}.film:focus-visible{outline:1px solid var(--lit);outline-offset:3px}.film img{object-fit:cover;width:100%;height:100%}.film.is-shown{outline:2px solid var(--lit);outline-offset:2px}.film .remove{position:absolute;top:6px;right:6px}.film.add{cursor:pointer}.room-head,.area-head{align-items:center;gap:20px;display:flex}.room-head .editable{max-width:720px}.area-head{margin:0 0 18px}.room-head .delete,.area-head .delete{white-space:nowrap;margin-left:auto}.area-head .editable{max-width:320px;font-size:18px}.area-tabs,.room-tabs{border-bottom:1px solid var(--line-strong);flex-wrap:wrap;align-items:center;gap:32px;margin:18px 0 26px;display:flex}.area-tabs a,.room-tabs a{color:var(--muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 0 12px;font-size:18px;text-decoration:none}.area-tabs a[aria-current=page],.room-tabs a[aria-current=page]{color:var(--text);border-bottom-color:var(--lit)}.area-tabs .text-btn,.room-tabs .text-btn{color:var(--muted);padding:10px 0 12px;font-size:18px}.room-tabs .room-name-input,.mood>.room-name-input{width:220px}.renders{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:36px;display:grid}.render-rows{display:grid}.render-row{border-bottom:1px solid var(--line-strong);grid-template-columns:20px 200px 1fr auto;align-items:center;gap:18px;padding:14px 0;display:grid}.render-row .thumb{aspect-ratio:16/9;color:var(--muted);border:1px solid var(--line);background:#111;place-items:center;display:grid;overflow:hidden}.render-row .thumb img{object-fit:cover;width:100%;height:100%}.render-row .thumb.is-needed{border:1px dashed var(--fix);color:var(--fix);background:0 0;font-size:13px}.render-row .thumb.is-needed:hover{background:#f2917f0f}.row-body{gap:10px;min-width:0;display:grid}.row-title{justify-content:space-between;margin:0;font-size:20px;display:flex}.check{color:var(--text)}.row-name{border-radius:0;font-size:19px;border-bottom:1px solid var(--line-strong)!important}.row-extra{color:var(--muted);flex-wrap:wrap;gap:18px;display:flex}.segmented{border:1px solid var(--line-strong);border-radius:4px;justify-self:start;display:inline-flex;overflow:hidden}.segmented button{border:0;border-right:1px solid var(--line-strong);cursor:pointer;color:var(--muted);background:0 0;padding:7px 14px}.segmented button:last-child{border-right:0}.segmented button[aria-checked=true]{color:var(--lit);box-shadow:inset 0 0 0 1px var(--lit)}.add-light{gap:14px;min-height:84px;margin-top:22px;font-size:16px}.plus-sm{font-size:26px;font-weight:200}.render-rows>.muted{margin-top:18px}.name-light-btn{justify-self:start;margin-top:14px;font-size:13px}.name-light{gap:10px;margin-top:14px;display:flex}.name-light input{flex:1}.renders-foot .text-btn{text-underline-offset:3px;font-size:13px;text-decoration:underline}.render-preview .issues{margin-top:14px}.render-preview{position:sticky;top:24px}.render-preview img,.render-preview .placeholder{width:100%}.render-preview .placeholder{aspect-ratio:16/10;border:1px solid var(--line)}.status{color:var(--muted);align-items:center;gap:10px;margin:12px 0 0;display:flex}.status:before{content:"";background:#555;border-radius:50%;flex:none;width:10px;height:10px}.status.is-ok:before{background:var(--lit)}.status.is-error{color:var(--warn)}.status.is-error:before{background:var(--warn)}.switches{border-top:1px solid var(--line-strong);margin-top:56px;padding-top:32px}.switch-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:36px;display:grid}.switch-stage,.spec-stage-edit{-webkit-user-select:none;user-select:none;background:#111;width:100%;position:relative}.switch-stage img,.spec-stage-edit img{width:100%;height:100%}.switch-stage.is-placing{cursor:crosshair}.switch-dot{background:var(--lit);width:14px;height:14px;box-shadow:0 0 0 4px rgba(var(--light), .25), 0 0 14px rgba(var(--light), .8);pointer-events:none;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.switch-dot.is-moving{opacity:.4}.stage-hint{border:1px solid var(--line);pointer-events:none;background:#000000d1;padding:8px 12px;font-size:13px;position:absolute;top:16px;left:16px}.plates-panel{gap:26px;display:grid}.plate-card{border-bottom:1px solid var(--line-strong);gap:10px;padding-bottom:22px;display:grid}.plate-head{align-items:center;gap:8px;display:flex}.plate-head .editable{font-size:19px}.plate-links{align-items:center;gap:18px;display:flex}.place{color:var(--muted);align-items:center;gap:10px;display:inline-flex}.place.is-on{color:var(--lit)}.led{background:#555;border-radius:50%;width:11px;height:11px}.led.is-lit{background:var(--lit)}.plate-adds{flex-wrap:wrap;align-items:baseline;gap:6px 18px;display:flex}.add-plate{color:var(--muted);font-size:16px}.plates-panel>p.small{margin:-18px 0 0}.mini-plate{background:linear-gradient(#232323,#161616);border:1px solid #444;border-radius:6px;flex-wrap:wrap;gap:10px;padding:16px;display:flex}.mini-key{justify-items:center;gap:8px;width:66px;display:grid}.mini-switch{background:#1b1b1b;border:1px solid #555;border-radius:3px;width:52px;height:52px;box-shadow:inset 0 1px #333}.mini-key.local .mini-switch{border-radius:50%;width:44px;height:44px}.mini-key.master .mini-switch{background:#262626;border-color:#777}.plate-head .grip{margin-left:-4px}.area-tabs a{white-space:nowrap}.plate-keys{border:0;gap:4px;min-width:0;margin:0;padding:0;display:grid}.plate-keys legend{margin-bottom:6px;padding:0}.key-row{grid-template-columns:minmax(0,1fr) 118px;align-items:center;gap:10px;min-height:30px;display:grid}.key-row label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.key-row.is-off{color:var(--muted)}.key-row .key-label{border-radius:0;margin:0;font-size:13px;border-bottom:1px solid var(--line)!important}.plate-options{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 20px;display:flex}.plate-options select{padding:3px 8px}.mini-fader{background:linear-gradient(to top, var(--lit) 55%, #333 55%);border-radius:3px;width:6px;height:64px}.mini-label{text-align:center;color:#cfcfcf;overflow-wrap:anywhere;font-size:11px}.hint-line{margin:0 0 14px}.light-chips{flex-wrap:wrap;gap:8px;margin:0 0 12px;display:flex}.chip{border:1px solid var(--line);cursor:pointer;color:var(--muted);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:inline-flex}.chip:hover{color:var(--text);border-color:var(--line-strong)}.chip[aria-pressed=true]{color:var(--lit);border-color:var(--lit)}.chip.is-done{color:var(--text)}.chip.is-done[aria-pressed=true]{color:var(--lit)}.chip .count{color:var(--muted);font-size:12px}.spot-ring{cursor:pointer;border:1.5px dashed var(--lit);background:rgba(var(--light), .08);border-radius:50%;width:30px;height:30px;padding:0;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000080}.spot-ring:after{content:"";border:1px solid rgba(var(--light), .5);pointer-events:none;border-radius:50%;animation:2.4s ease-in-out infinite ring;position:absolute;inset:-6px}.spot-ring:hover,.spot-ring:focus-visible{background:rgba(var(--light), .3);border-style:solid}.spot-ring:hover:after{opacity:0;animation:none}@keyframes ring{0%,to{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}@media (prefers-reduced-motion:reduce){.spot-ring:after{opacity:.6;animation:none}}.spec>.issues{margin-top:16px}.spec-pictures{flex-wrap:wrap;gap:14px;margin:-6px 0 16px;display:flex}.spec-pic,.spec-pic>button:not(.remove){width:150px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;gap:6px;padding:0;font-size:13px;display:grid;position:relative}.spec-pic img,.spec-pic .img-wait{aspect-ratio:16/10;object-fit:cover;border:1px solid var(--line);width:150px;height:auto}.spec-pic.is-shown{color:var(--text)}.spec-pic.is-shown img{border-color:var(--lit)}.spec-pic.is-hidden img{opacity:.4}.spec-pic .remove{position:absolute;top:5px;right:5px}.spec-pic.add{border:1px dashed var(--line-strong);text-align:center;place-items:center;height:93.75px}.spec-pic.add:hover{color:var(--text)}.show-all-on{margin:-4px 0 14px;display:block}.spec-stage-edit{cursor:crosshair}.marker{cursor:grab;border:2px solid var(--text);touch-action:none;background:#00000059;border-radius:50%;width:22px;height:22px;padding:0;position:absolute;transform:translate(-50%,-50%)}.marker:after{content:"";border-radius:50%;position:absolute;inset:4px}.marker:hover:after,.marker.is-open:after{background:var(--lit)}.marker.is-open{border-color:var(--lit)}.marker-card{background:var(--bg);border:1px solid var(--line-strong);z-index:5;cursor:default;gap:14px;width:360px;padding:22px 24px;display:grid;position:absolute;box-shadow:0 20px 60px #0009}.marker-card label{color:var(--muted);gap:6px;font-size:13px;display:grid}.marker-card label input{color:var(--text);font-size:16px}.marker-card select{color:var(--text);width:100%}.card-hint{text-align:right;margin:-6px 0 0}.photo-drop{aspect-ratio:16/9;color:#555;border-color:var(--line);background:#fff;overflow:hidden}.photo-drop:not(:has(img)){color:var(--muted);background:0 0}.photo-drop img{object-fit:contain;max-width:100%;max-height:100%}.tags{flex-wrap:wrap;gap:8px;display:flex}.tag{border:1px solid var(--line-strong);cursor:pointer;background:0 0;padding:6px 12px;font-size:13px}.tag:hover{text-decoration:line-through}.tag-input{width:96px;font-size:13px;padding:6px 10px!important}.card-buttons{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.panel-back{place-items:stretch end;padding:0}.share-panel{background:var(--bg);border-left:1px solid var(--line-strong);flex-direction:column;gap:22px;width:min(520px,100vw);height:100%;padding:48px 44px;display:flex;position:relative;overflow-y:auto}.share-panel h2{margin:0 0 8px;font-size:32px}.share-note{border:1px solid var(--line);gap:6px;padding:16px 18px;display:grid}.share-note h3{margin:0;font-size:17px;font-weight:400}.share-note p{margin:0}.email-field input{padding:12px 14px;font-size:16px}.email-field small{font-size:13px}.share-panel .close{cursor:pointer;background:0 0;border:0;width:36px;height:36px;font-size:28px;position:absolute;top:20px;right:20px}.steps{border-bottom:1px solid var(--line-strong);gap:26px;margin:0;padding:0 0 26px;list-style:none;display:grid}.steps li{color:var(--muted);grid-template-columns:44px 1fr;align-items:center;gap:16px;font-size:19px;display:grid}.steps li.is-done,.steps li.is-now{color:var(--text)}.tick{border:1px solid #555;border-radius:50%;width:44px;height:44px;position:relative}.is-done .tick{border-color:var(--text)}.is-done .tick:after{content:"";border:solid var(--text);border-width:0 1.5px 1.5px 0;width:10px;height:17px;position:absolute;top:11px;left:15px;transform:rotate(40deg)}.is-now .tick{border-color:var(--lit);border-top-color:#0000;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.link-field{width:100%;font-size:16px;padding:14px 16px!important}.site-field{border-top:1px solid var(--line-strong);gap:10px;padding-top:22px;display:grid}.site-field h3{margin:0;font-size:19px;font-weight:400}.site-field p{margin:0}.site-input{align-items:baseline;gap:6px;min-width:0;display:flex}.site-input input{flex:1;min-width:0;font-size:16px;padding:10px 12px!important}.site-input span{white-space:nowrap;font-size:15px}.site-buttons{align-items:center;gap:18px;display:flex}.site-buttons:empty{display:none}.share-foot{flex-wrap:wrap;align-items:center;gap:22px;margin-top:auto;display:flex}.share-foot .outline-btn{margin-left:auto}@media (hover:none){.card-actions,.card-body .delete{opacity:1}}@media (width<=900px){.editor{grid-template-columns:1fr}.side{border-right:0;border-bottom:1px solid var(--line-strong);height:auto;padding:18px var(--gutter) 10px;position:static}.side-project{display:none}.sections{flex-wrap:wrap;gap:0 22px;margin-top:12px;display:flex}.sections>a{border-bottom:2px solid #0000;border-left:0;padding:8px 0;font-size:16px}.sections>a[aria-current=page]{border-bottom-color:var(--lit)}.room-list{flex-wrap:wrap;flex-basis:100%;order:1;gap:0 18px;padding:6px 0 0;display:flex}.work-top{flex-wrap:wrap;gap:14px;min-height:0;padding:14px 0 22px}.renders,.switch-layout{grid-template-columns:1fr}.render-preview{grid-row:1;position:static}.render-row{grid-template-columns:20px 120px 1fr auto;gap:12px}.marker-card{width:auto;max-height:calc(100svh - 32px);position:fixed;bottom:16px;overflow-y:auto;top:auto!important;left:16px!important;right:16px!important}}@media (width<=600px){:root{--gutter:16px}h1,.editable.h1{font-size:28px}.top{height:72px}.brand{font-size:22px}.project-grid{gap:24px}.welcome-text h1{font-size:32px}.welcome-text>p:first-of-type{font-size:16px}.welcome-steps{grid-template-columns:1fr;gap:32px}.work-top .outline-btn,.work-top .solid-btn{min-height:36px;padding:0 14px}.checks-btn{order:1}.stale{order:2;margin-left:auto}.room-head{flex-wrap:wrap;gap:4px 16px}.area-tabs,.room-tabs{gap:4px 22px}.area-tabs a,.room-tabs a,.area-tabs .text-btn,.room-tabs .text-btn{font-size:16px}.render-row{grid-template-columns:20px 112px minmax(0,1fr) auto;gap:10px 12px}.render-row .row-body{display:contents}.render-row>:is(.grip,.grip-space){grid-area:1/1}.render-row .thumb{grid-area:1/2}.render-row :is(.row-name,.row-title){grid-area:1/3;font-size:17px}.render-row .remove{grid-area:1/4}.render-row :is(.segmented,.row-extra,.row-body>.muted,.issues){grid-column:2/-1;margin:0}.segmented button{padding:7px 11px}.carousel{grid-template-columns:32px 1fr 32px;gap:2px}.film{width:calc(50% - 9px)}.cover-fields{grid-template-columns:1fr}.modal{padding:26px 20px}.share-panel{padding:40px 20px 24px}.steps li{font-size:16px}.spec-pic,.spec-pic>button:not(.remove),.spec-pic img,.spec-pic .img-wait{width:104px}.spec-pic.add{width:104px;height:65px}}
