.ec-design .booth-studio{--cream:var(--ec-paper);--cream-deep:var(--ec-cream);--forest:var(--ec-forest);--forest-deep:var(--ec-forest-deep);--terracotta:var(--ec-terra);--charcoal:var(--ec-ink);--charcoal-soft:var(--ec-muted);--rule:var(--ec-line)}.ec-design .booth-studio .app{background:var(--ec-cream)}.ec-design .booth-studio .panel{background:var(--ec-paper)}.ec-design .booth-studio .section-title{font-family:var(--ec-font);font-weight:700;letter-spacing:-.03em}.ec-design .tool-header,.ec-design .dv-hero,.ec-design .bs-hero{background:var(--ec-paper)}.ec-design .tool-title,.ec-design .dv-hero h1,.ec-design .bs-hero h1{font-family:var(--ec-font);font-weight:700;letter-spacing:-.065em}.ec-design :where(.tool-title,.dv-hero h1) em{color:inherit;font-family:inherit;font-style:normal}.ec-design :where(.dv-panel,.sidebar,.panel,.card){border-color:var(--ec-line)}.ec-design :where(.dv-panel,.sidebar-section,.panel-inner){border-radius:.9rem}.ec-design :where(.dv-button,.preset-btn,.action-btn,.view-tabs button,.tool-bar button){border-radius:999px;font-family:var(--ec-font);font-weight:700}.ec-design :where(.dv-section-label,.section-label,.field-label,.bs-eyebrow,.tool-meta){font-family:var(--ec-font);font-weight:800;letter-spacing:.1em}.ec-design{--cream: var(--ec-paper);--cream-deep: var(--ec-cream);--cream-dark: #e7dfd2;--forest: var(--ec-forest);--forest-deep: var(--ec-forest-deep);--terracotta: var(--ec-terra);--charcoal: var(--ec-ink);--charcoal-soft: var(--ec-muted);--rule: var(--ec-line)}.ec-design .container{width:min(100%,1200px);margin-inline:auto;padding-inline:var(--ec-page-pad)}.ec-design :where(h1,h2,h3,h4,p,button,input,select,textarea,a){font-family:var(--ec-font)}.bs-hero{background:var(--cream);border-bottom:1px solid var(--rule);padding:11px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}.bs-hero-title{display:flex;align-items:baseline;gap:10px}.bs-eyebrow{font-family:JetBrains Mono,monospace;font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--ec-label);flex-shrink:0}.bs-hero h1{font-family:Fraunces,serif;font-weight:500;font-size:20px;margin:0;color:var(--charcoal);white-space:nowrap}.bs-hero .tagline{font-family:"Instrument Serif",serif;font-style:italic;color:var(--charcoal-soft);font-size:14px}.bs-hero .crumb{font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--charcoal-soft);flex-shrink:0}.bs-hero .crumb a{color:var(--charcoal-soft);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s}.bs-hero .crumb a:hover{border-color:var(--terracotta)}.bs-hero .crumb .sep{margin:0 6px;opacity:.5}.tool-bar{background:var(--cream-deep);border-bottom:1px solid var(--rule);padding:12px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}.tool-bar .left-group,.tool-bar .right-group{display:flex;gap:10px;align-items:center}.tool-bar .meta{font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--charcoal-soft);margin-right:8px}.booth-studio button,.booth-studio .btn{font-family:Figtree,sans-serif;font-size:13px;font-weight:500;border:1px solid var(--rule);background:var(--cream);color:var(--charcoal);border-radius:2px;padding:8px 14px;cursor:pointer;transition:all .15s;letter-spacing:.01em}.booth-studio button:hover,.booth-studio .btn:hover{background:var(--cream-deep);border-color:var(--charcoal-soft)}.booth-studio button.primary,.booth-studio .btn.primary{background:var(--forest);color:var(--cream);border-color:var(--forest)}.booth-studio button.primary:hover{background:var(--forest-deep);border-color:var(--forest-deep)}.booth-studio button.danger{color:var(--danger);border-color:var(--rule);background:transparent}.booth-studio button.danger:hover{background:#a8472a0f;border-color:var(--danger)}.booth-studio select,.booth-studio input[type=text],.booth-studio input[type=number],.booth-studio input[type=email]{font-family:Figtree,sans-serif;font-size:13px;border:1px solid var(--rule);background:var(--cream);color:var(--charcoal);border-radius:2px;padding:8px 10px;width:100%;min-width:0;transition:border-color .15s}.booth-studio select:focus,.booth-studio input:focus{outline:none;border-color:var(--terracotta)}.booth-studio input[type=color]{border:1px solid var(--rule);border-radius:2px;padding:2px;height:34px;width:100%;background:var(--cream);cursor:pointer}.booth-studio input[type=file]{font-family:Figtree,sans-serif;font-size:12px;color:var(--charcoal-soft);width:100%}.booth-studio input[type=file]::file-selector-button{font-family:Figtree,sans-serif;font-size:12px;background:var(--cream);border:1px solid var(--rule);border-radius:2px;padding:6px 10px;margin-right:10px;cursor:pointer;color:var(--charcoal)}.booth-studio input[type=file]::file-selector-button:hover{background:var(--cream-deep)}.booth-studio input[type=checkbox]{accent-color:var(--forest);width:14px;height:14px}.booth-studio .check input{width:auto}.app{display:grid;grid-template-columns:320px minmax(0,1fr) 360px;height:calc(100vh - 210px);min-height:600px;overflow:hidden;background:var(--cream)}.panel{overflow-y:auto;background:var(--cream)}.panel.left{border-right:1px solid var(--rule)}.panel.right{border-left:1px solid var(--rule)}.panel-inner{padding:24px 22px}.section{margin-bottom:28px}.section:last-child{margin-bottom:0}.section-title{font-family:Fraunces,serif;font-weight:500;font-size:17px;color:var(--charcoal);margin:0 0 14px;letter-spacing:-.005em;display:flex;align-items:baseline;gap:8px}.section-title:before{content:"§";font-family:Fraunces,serif;color:var(--terracotta);font-size:15px;font-style:italic;font-weight:400}.field{margin-bottom:12px}.field label{display:block;font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--charcoal-soft);margin-bottom:6px;font-weight:500}.row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.check{display:flex;align-items:center;justify-content:space-between;margin:8px 0;font-family:Figtree,sans-serif;font-size:13px;color:var(--charcoal)}.hint{font-family:"Instrument Serif",serif;font-style:italic;font-size:13px;line-height:1.45;color:var(--charcoal-soft);margin:8px 0 0}.small{font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--charcoal-soft)}.footer-note{font-family:"Instrument Serif",serif;font-style:italic;font-size:12px;color:var(--charcoal-soft);margin-top:10px}.library{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:4px}.library button{padding:8px 10px;text-align:left;font-size:12px}.scene-list{display:grid;gap:6px;margin-top:8px}.scene-item{border:1px solid var(--rule);background:var(--cream);padding:9px 12px;text-align:left;font-family:Figtree,sans-serif;font-size:13px;width:100%}.scene-item.active{border-color:var(--forest);background:var(--cream-deep);color:var(--forest);font-weight:500}.templates{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:14px}.templates button{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.05em}.facade-box{background:var(--cream-deep);border:1px solid var(--rule);border-radius:2px;padding:14px;margin-top:12px}.facade-box label{font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--charcoal-soft);display:block;margin-bottom:8px}.center{position:relative;background:#faf6ee;min-width:0;overflow:hidden}.view-tabs{position:absolute;top:18px;left:18px;z-index:2;display:flex;background:var(--cream);border:1px solid var(--rule);border-radius:2px;padding:3px;box-shadow:0 4px 16px #2a28240f}.view-tabs button{border:0;background:transparent;padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--charcoal-soft);border-radius:2px}.view-tabs button.active{background:var(--forest);color:var(--cream)}#viewport{position:absolute;inset:0;width:100%;height:100%;display:block;overflow:hidden}#viewport canvas{width:100%!important;height:100%!important;display:block}.canvas-empty{position:absolute;inset:0;display:none;place-items:center;pointer-events:none;z-index:1}.canvas-empty.visible{display:grid}.canvas-empty p{font-family:"Instrument Serif",serif;font-style:italic;font-size:18px;color:var(--charcoal-soft);max-width:340px;text-align:center}.empty-state{position:absolute;inset:0;display:none;place-items:center;color:var(--charcoal-soft);font-family:"Instrument Serif",serif;font-style:italic}.pill{background:#f5efe4f2;padding:4px 8px;border-radius:2px;border:1px solid var(--rule);font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--charcoal);white-space:nowrap;pointer-events:none}.dimlabel{position:absolute;z-index:2;transform:translate(-50%,-50%)}.storage-note{font-family:"Instrument Serif",serif;font-style:italic;font-size:12px;color:var(--charcoal-soft);padding:10px 0 0;border-top:1px dashed var(--rule);margin-top:14px}.mobile-gate{display:none;padding:48px 24px 80px;background:var(--cream);min-height:60vh}.mobile-gate .card{max-width:480px;margin:0 auto;background:var(--cream-deep);border:1px solid var(--rule);padding:32px 28px;border-radius:2px}.mobile-gate .gate-tag{font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--charcoal-soft);margin-bottom:10px}.mobile-gate .gate-tag:before{content:"§ ";color:var(--terracotta)}.mobile-gate h2{font-family:Fraunces,serif;font-weight:400;font-size:28px;line-height:1.1;margin:0 0 12px;color:var(--charcoal)}.mobile-gate p{font-family:Figtree,sans-serif;font-size:14px;line-height:1.55;color:var(--charcoal-soft);margin:0 0 20px}.mobile-gate .gate-form{display:flex;flex-direction:column;gap:10px}.mobile-gate input[type=email]{width:100%;padding:11px 12px}.mobile-gate button{padding:11px 14px;width:100%}.mobile-gate .gate-sent{display:none;font-family:"Instrument Serif",serif;font-style:italic;font-size:14px;color:var(--forest);margin-top:12px}.mobile-gate .gate-sent.visible{display:block}@media (max-width: 899px){.bs-hero{padding:10px 20px;flex-wrap:wrap;gap:8px}.bs-hero-title{flex-wrap:wrap}.bs-hero .tagline,.tool-bar,.app{display:none}.mobile-gate{display:block}}
