:root{--ink:#211b17;--ink2:#302821;--paper:#d8cfb7;--cream:#eee7d5;--muted:#9f9582;--red:#7d2d32;--red2:#a74649;--gold:#b39153;--panel:#191715;--panel2:#24211e;--line:#443e37;--shadow:0 24px 70px #0008;--sans:"Yu Gothic UI","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;--serif:"Yu Mincho","Hiragino Mincho ProN",serif}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;background:#141210;color:#eee8da;font-family:var(--sans)}button,input,select{font:inherit}button{cursor:pointer}.start-shell{min-height:100vh;background:radial-gradient(circle at 76% 17%,#45352a55,transparent 35%),linear-gradient(145deg,#171411,#0e0d0c 72%);overflow:hidden}.brandbar{height:86px;padding:0 clamp(24px,5vw,84px);display:flex;align-items:center;border-bottom:1px solid #ffffff14;gap:14px}.brand-mark{width:43px;height:43px;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold);font:26px var(--serif);transform:rotate(45deg);background:#201b17;box-shadow:0 0 0 4px #141210,0 0 0 5px #5c4b31}.brand-mark::first-letter{transform:rotate(-45deg)}.brandbar>div:nth-child(2){display:flex;flex-direction:column}.brandbar b{font:600 19px var(--serif);letter-spacing:.14em}.brandbar span{font-size:9px;letter-spacing:.26em;color:#a59a85}.offline-badge{margin-left:auto!important;display:flex!important;flex-direction:row!important;align-items:center;gap:8px;border:1px solid #596652;padding:8px 12px;border-radius:30px;font-size:11px!important;letter-spacing:.1em!important;color:#bbc7b4!important}.offline-badge i{width:7px;height:7px;background:#91b281;border-radius:50%;box-shadow:0 0 8px #91b281}.hero{max-width:1440px;margin:auto;padding:70px clamp(26px,6vw,100px) 52px;display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:center}.eyebrow{font-size:10px!important;letter-spacing:.28em!important;color:var(--gold)!important;text-transform:uppercase}.hero h1{font:500 clamp(44px,5vw,76px)/1.16 var(--serif);letter-spacing:.05em;margin:20px 0 26px}.hero h1 em{font-style:normal;color:#d2b378;text-shadow:0 2px 20px #a25f2444}.lede{font:15px/2 var(--serif);color:#c6bdac;letter-spacing:.08em}.feature-row{display:flex;gap:22px;margin-top:35px;color:#aaa08e;font-size:11px;letter-spacing:.07em}.hero-map{position:relative;padding:16px;background:linear-gradient(145deg,#b9aa8e,#726451);box-shadow:0 35px 80px #000a;transform:rotate(1.2deg)}.hero-map::before{content:"";position:absolute;inset:7px;border:1px solid #2e241b88;pointer-events:none}.hero-map canvas{display:block;width:100%!important;height:auto!important;background:#c7bca2}.map-caption{position:absolute;bottom:-20px;left:42px;background:#181512;padding:10px 18px 11px;border-left:3px solid var(--red);box-shadow:0 8px 20px #0008;display:flex;flex-direction:column}.map-caption span{font-size:8px;letter-spacing:.24em;color:var(--gold)}.map-caption b{font:14px var(--serif);letter-spacing:.12em;margin-top:3px}.generator-card{max-width:1240px;margin:0 auto 60px;background:#211e1a;border:1px solid #4b4339;box-shadow:var(--shadow);position:relative}.generator-card::before{content:"";position:absolute;inset:8px;border:1px solid #ffffff08;pointer-events:none}.card-heading{padding:30px 40px 24px;display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #403a33}.card-heading span{font-size:9px;letter-spacing:.25em;color:var(--red2)}.card-heading h2{font:25px var(--serif);margin:7px 0 0;letter-spacing:.08em}.card-heading p{font-size:11px;color:#8f877b}.settings-grid{padding:30px 40px 20px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px 18px}.settings-grid label,.advanced label{display:flex;flex-direction:column;gap:8px}.settings-grid label>span,.advanced label>span,.stack>span{font-size:10px;color:#aaa08e;letter-spacing:.12em}.settings-grid select,.settings-grid input,.advanced select,.stack input,.stack select,.fields input,.fields select,.export-popover select{width:100%;height:42px;background:#171513;color:#eee5d6;border:1px solid #4a433a;padding:0 12px;outline:none}.settings-grid select:focus,.settings-grid input:focus{border-color:var(--gold)}.settings-grid select:disabled{color:#736c61}.seed-field{display:flex}.seed-field input{font-family:ui-monospace,monospace;letter-spacing:.06em}.seed-field button{width:44px;background:#302a24;color:var(--gold);border:1px solid #4a433a}.toggle-label{position:relative}.toggle-label input{display:none}.toggle-label i{width:54px;height:28px;border-radius:18px;background:#121110;border:1px solid #49423a;position:absolute;bottom:7px}.toggle-label i:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#756b5e;top:4px;left:5px;transition:.2s}.toggle-label input:checked+i{background:#51272a;border-color:#8f474b}.toggle-label input:checked+i:before{left:29px;background:#d0a96b}.toggle-label b{position:absolute;bottom:12px;left:66px;font-size:11px;font-weight:400;color:#d2cabc}.generator-card details{margin:0 40px;border-top:1px solid #37322d;padding:14px 0}.generator-card summary{font-size:11px;color:#b7ad9c;cursor:pointer}.advanced{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;padding:16px 0}.generate-row{padding:20px 40px 30px;display:flex;justify-content:space-between;align-items:center}.generate-row>div{display:flex;flex-direction:column;gap:7px}.generate-row small{color:#877e70}.generate-row span{font-size:11px;color:#bdb3a3}.primary{border:0;background:linear-gradient(135deg,#833238,#5e2429);color:white;min-width:230px;height:58px;padding:0 24px;display:flex;justify-content:space-between;align-items:center;font:600 16px var(--serif);letter-spacing:.1em;box-shadow:0 12px 30px #4d131977}.primary:hover{filter:brightness(1.12);transform:translateY(-1px)}.primary i{font-style:normal;font-size:22px;color:#e9c88e}.spinner{width:18px;height:18px;border:2px solid #ffffff55;border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.start-shell footer{max-width:1240px;margin:auto;padding:22px 0 32px;border-top:1px solid #ffffff0d;display:flex;justify-content:space-between;color:#5f5a52;font-size:9px;letter-spacing:.14em}@keyframes spin{to{transform:rotate(360deg)}}
.candidate-shell{min-height:100vh;background:radial-gradient(circle at 50% -10%,#4d3b2d55,transparent 40%),#141210;padding-bottom:60px}.brandbar.compact{height:72px;justify-content:space-between}.brand-center{display:flex;align-items:center;gap:15px}.brand-center .brand-mark{width:34px;height:34px;font-size:20px}.ghost,.secondary{background:transparent;border:1px solid #4a433b;color:#bfb5a5;padding:10px 14px}.ghost:hover,.secondary:hover{border-color:#9a8158;color:#fff}.seed-display{margin-left:0!important;align-items:end!important}.seed-display span{font-size:8px}.seed-display code{font-size:11px;color:#d0c7b6}.candidate-heading{max-width:1360px;margin:0 auto;padding:56px 34px 30px;display:flex;justify-content:space-between;align-items:end}.candidate-heading h1{font:38px var(--serif);letter-spacing:.1em;margin:8px 0 10px}.candidate-heading p{font-size:12px;color:#aaa194}.candidate-grid{max-width:1360px;margin:auto;padding:0 34px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.candidate-card{background:#211e1b;border:1px solid #443d35;box-shadow:0 16px 40px #0005;transition:.22s;overflow:hidden}.candidate-card:hover{transform:translateY(-5px);border-color:#816d4e;box-shadow:0 24px 55px #0008}.candidate-art{height:252px;background:#b5aa92;position:relative;overflow:hidden;padding:10px}.candidate-art canvas{width:100%!important;height:100%!important;object-fit:contain}.score{position:absolute;top:13px;left:13px;width:53px;height:53px;background:#181512e8;border:1px solid #81693f;display:flex;flex-direction:column;align-items:center;justify-content:center}.score b{font:23px var(--serif);color:#e2c98d;line-height:1}.score span{font-size:6px;letter-spacing:.15em;color:#a99365;margin-top:3px}.floor-count{position:absolute;top:15px;right:15px;background:#181512dc;padding:6px 9px;font-size:9px;letter-spacing:.12em}.candidate-info{padding:20px 20px 16px;display:flex;justify-content:space-between;align-items:center}.candidate-info span{font-size:9px;color:#9a835c;letter-spacing:.12em}.candidate-info h2{font:21px var(--serif);margin:5px 0 0;letter-spacing:.13em}.candidate-info dl{display:flex;gap:18px;margin:0}.candidate-info dl div{text-align:center}.candidate-info dt{font-size:8px;color:#776f64}.candidate-info dd{margin:4px 0 0;font:16px var(--serif)}.choose{width:100%;height:44px;background:#191715;color:#d5cbbb;border:0;border-top:1px solid #39332d;text-align:left;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.choose:hover{background:#6d2c30;color:#fff}.choose i{font-style:normal}.candidate-note{max-width:1292px;margin:30px auto 0;border:1px solid #38332e;padding:15px 20px;display:flex;gap:20px;align-items:center;color:#80786e;font-size:10px}.candidate-note b{color:#a28b60;font-size:9px;letter-spacing:.16em}
.editor-shell{height:100vh;display:grid;grid-template:68px 1fr / 72px 1fr 300px;background:#11100f;overflow:hidden}.editor-top{grid-column:1/-1;background:#1b1917;border-bottom:1px solid #423c35;display:flex;align-items:center;padding:0 22px;z-index:10}.editor-brand{display:flex;align-items:center;gap:14px;width:285px}.editor-brand .brand-mark{width:34px;height:34px;font-size:20px}.editor-brand>div:last-child{display:flex;flex-direction:column}.editor-brand b{font:15px var(--serif);letter-spacing:.13em}.editor-brand span{font-size:7px;letter-spacing:.18em;color:#766e62}.project-title{display:flex;align-items:center;gap:12px;border-left:1px solid #3d3832;padding-left:24px}.project-title span{font-size:8px;color:#7c7264;letter-spacing:.18em}.project-title input{background:transparent;border:0;border-bottom:1px solid transparent;color:#ded5c6;font:18px var(--serif);width:240px;padding:7px}.project-title input:focus{outline:0;border-color:#766043}.top-actions{margin-left:auto;display:flex;gap:8px}.top-actions button{height:36px;padding:0 15px;background:#25221f;color:#c9c0b1;border:1px solid #484139;font-size:11px}.top-actions .export{background:#742e33;border-color:#964248;color:#fff;min-width:116px}.left-tools{grid-row:2;background:#1a1816;border-right:1px solid #3a3530;padding:10px 7px;display:flex;flex-direction:column;gap:5px}.left-tools hr{border:0;border-top:1px solid #39342f;width:40px;margin:7px auto}.tool{height:55px;border:1px solid transparent;background:transparent;color:#827a6e;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.tool b{font-size:19px;font-weight:400}.tool span{font-size:8px}.tool:hover,.tool.active{color:#e2d6c5;background:#2a2521;border-color:#51473c}.tool.active{border-left:2px solid var(--red2)}.workspace{grid-column:2;grid-row:2;min-width:0;display:grid;grid-template-rows:54px 1fr 28px}.workspace-bar{background:#201d1a;border-bottom:1px solid #3b3630;display:flex;justify-content:space-between;min-width:0}.floor-tabs{display:flex;min-width:0;overflow:auto}.floor-tabs button{min-width:82px;border:0;border-right:1px solid #3c3731;background:#191715;color:#8e8578;position:relative}.floor-tabs button.active{background:#2b2723;color:#e7dfd1}.floor-tabs button.active:after{content:"";position:absolute;height:2px;background:#a43f44;left:0;right:0;bottom:0}.floor-tabs small{display:block;font-size:7px;color:#746c61;margin-top:3px}.workspace-actions{display:flex;align-items:center;gap:10px;padding-left:10px;flex:0 0 auto}.palette-switch{height:32px;display:flex;align-items:center;padding:2px;background:#171513;border:1px solid #403a34}.palette-switch>span{padding:0 7px;color:#81796e;font-size:8px;letter-spacing:.1em}.palette-switch button{height:26px;display:flex;align-items:center;gap:4px;padding:0 7px;border:1px solid transparent;background:transparent;color:#928a7e;font-size:9px}.palette-switch button:hover,.palette-switch button:focus-visible{border-color:#6a5e50;color:#e5dccf;outline:0}.palette-switch button.active{background:#5e2b2f;border-color:#8d464a;color:#fff}.palette-swatch{display:block;width:12px;height:8px;border:1px solid #0006;border-radius:1px}.palette-swatch.classic{background:linear-gradient(90deg,#ded2b5 0 33%,#9b713f 33% 66%,#843b3d 66%)}.palette-swatch.cold{background:linear-gradient(90deg,#d5dce0 0 33%,#788d98 33% 66%,#4f6472 66%)}.palette-swatch.faded{background:linear-gradient(90deg,#d8d0bd 0 33%,#aa9475 33% 66%,#7e6d65 66%)}.view-controls{display:flex;align-items:center;padding-right:11px}.view-controls button,.view-controls span{height:29px;min-width:31px;background:#181614;color:#9d9588;border:1px solid #403a34;display:grid;place-items:center;font-size:10px}.view-controls span{border-left:0;border-right:0;width:51px}.view-controls #fitView{margin-left:8px;width:auto;padding:0 10px}.canvas-stage{position:relative;overflow:auto;display:flex;align-items:center;justify-content:center;background-color:#24211e;background-image:linear-gradient(45deg,#272420 25%,transparent 25%),linear-gradient(-45deg,#272420 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#272420 75%),linear-gradient(-45deg,transparent 75%,#272420 75%);background-size:22px 22px;background-position:0 0,0 11px,11px -11px,-11px 0;padding:32px}.canvas-stage canvas{display:block;max-width:none;box-shadow:0 25px 60px #000b;border:1px solid #5d5345;touch-action:none}.canvas-legend{position:fixed;bottom:43px;left:96px;background:#171513e8;border:1px solid #423c34;padding:7px 12px;display:flex;gap:12px;font-size:7px;color:#8e8577}.canvas-legend span{display:flex;align-items:center;gap:4px}.canvas-legend i{width:6px;height:6px;border-radius:50%}.public{background:#b08f58}.private{background:#7f5d70}.service{background:#667762}.secret{background:#953e45}.statusbar{background:#191715;border-top:1px solid #37332e;display:flex;align-items:center;gap:24px;padding:0 12px;color:#746e65;font-size:8px}.statusbar span:first-child{color:#8fa384}.status-ok{display:inline-block;width:6px;height:6px;border-radius:50%;background:#78916f;margin-right:5px}.statusbar span:last-child{margin-left:auto}.inspector{grid-column:3;grid-row:2;background:#1b1917;border-left:1px solid #403a34;overflow:auto}.mode-switch{margin:14px;display:grid;grid-template-columns:1fr 1fr;background:#121110;border:1px solid #403a34;padding:3px}.mode-switch button{height:34px;border:0;background:transparent;color:#81796d;font-size:11px}.mode-switch button.active{background:#6f2d31;color:white;box-shadow:0 2px 8px #0006}.panel{border-top:1px solid #3a3530;padding:16px 15px}.panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;color:#c9c0b1;font-size:11px}.panel-title button{background:transparent;border:0;color:#968a78}.panel-title small{font-size:8px;color:#716a61}.project-panel>label{display:grid;grid-template-columns:42px 1fr;align-items:center;font-size:8px;color:#7c7469}.project-panel code{font-size:9px;color:#c3b9a9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.mini-grid label{font-size:9px;color:#aaa194}.empty-selection{text-align:center;padding:14px 8px 18px;color:#71695e}.empty-selection div{font-size:30px;color:#564c40}.empty-selection b{display:block;font:13px var(--serif);color:#a69d8f;margin:8px}.empty-selection p{font-size:9px;line-height:1.7}.wide{width:100%;height:37px;margin-top:7px;background:#292520;color:#c7bdad;border:1px solid #4b443c;font-size:10px;text-align:left;padding-left:12px}.wide:hover{border-color:#8b7351;color:#fff}.wide.subtle{color:#746d63}.history-panel>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:7px}.history-panel button{height:33px;background:#24211e;color:#948b7e;border:1px solid #423c35;font-size:9px}.object-head{display:flex;gap:10px;align-items:center;margin-bottom:14px}.object-icon{width:38px;height:38px;background:#342d26;border:1px solid #584b3b;display:grid;place-items:center;color:#b9975d}.object-head>div:last-child{display:flex;flex-direction:column}.object-head b{font:13px var(--serif)}.object-head span{font-size:8px;color:#80786e;margin-top:4px}.fields label{display:flex;flex-direction:column;gap:5px}.fields input,.fields select{height:32px}.stack{display:flex;flex-direction:column;gap:7px;margin-bottom:12px}.room-meta{display:flex;justify-content:space-between;align-items:center;color:#756e64;font-size:8px}.zone{padding:4px 6px;border:1px solid #555}.zone.public{color:#d0ae72}.zone.private{color:#bd8ca5}.zone.service{color:#9bb091}.toast{position:fixed;left:50%;bottom:45px;z-index:50;transform:translate(-50%,20px);background:#151311;border:1px solid #736043;color:#e3d8c7;padding:11px 18px;font-size:10px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}.export-popover{display:none;position:fixed;right:22px;top:61px;width:270px;background:#24201c;border:1px solid #5a4e40;box-shadow:0 20px 50px #000b;z-index:30;padding:18px}.export-popover.show{display:block}.export-popover>b{font:15px var(--serif);display:block;margin-bottom:14px}.export-popover label{display:flex;flex-direction:column;gap:5px;font-size:9px;color:#92887b;margin-bottom:10px}.export-popover select{height:34px}.export-popover button{width:100%;height:40px;background:#763037;color:#fff;border:0;margin-top:5px}.export-popover small{display:block;color:#6f685f;font-size:8px;margin-top:9px}.is-busy{cursor:progress}
.label-grid{display:grid;gap:8px;margin-top:14px}.label-grid label,.visibility-toggle{display:flex;align-items:center;gap:7px;color:#aaa194;font-size:9px}.visibility-toggle{margin:13px 0;padding:9px 10px;background:#24211e;border:1px solid #403a34}.furniture-palette{display:none;position:fixed;z-index:40;left:82px;top:82px;width:430px;max-height:calc(100vh - 105px);overflow:auto;background:#201d1a;border:1px solid #685941;box-shadow:0 24px 70px #000c;padding:18px}.furniture-palette.show{display:block}.palette-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #403930;padding-bottom:12px}.palette-head>div{display:flex;flex-direction:column}.palette-head span{font-size:7px;letter-spacing:.18em;color:#9e8458}.palette-head b{font:17px var(--serif);margin-top:4px}.palette-head button{border:0;background:transparent;color:#9f9587;font-size:22px}.furniture-palette>p{font-size:9px;color:#918779;line-height:1.7}.furniture-palette section{margin-top:15px}.furniture-palette h3{font-size:9px;color:#aa8f62;letter-spacing:.12em;margin:0 0 7px}.furniture-palette section>div{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.furniture-palette [data-furniture]{min-height:34px;background:#292520;color:#c8beae;border:1px solid #463f37;font-size:9px;padding:5px}.furniture-palette [data-furniture]:hover{background:#713036;border-color:#9e4a50;color:#fff}
.furniture-size-picker{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:10px;background:#171513;border:1px solid #403930;align-items:center}.furniture-size-picker>span{grid-column:1/-1;font-size:8px;letter-spacing:.12em;color:#aa8f62}.furniture-size-picker button{height:34px;background:#292520;color:#a89e8f;border:1px solid #463f37;font-size:9px}.furniture-size-picker button.active{background:#713036;border-color:#9e4a50;color:#fff}.furniture-size-picker small{font-size:7px;color:#caa}.size-field{grid-column:1/-1}
@media(max-width:1050px){.hero{grid-template-columns:1fr;padding-top:45px}.hero-copy{text-align:center}.feature-row{justify-content:center}.hero-map{max-width:720px;margin:auto}.settings-grid{grid-template-columns:repeat(2,1fr)}.candidate-grid{grid-template-columns:repeat(2,1fr)}.editor-shell{grid-template-columns:64px 1fr 260px}.editor-brand{width:220px}.project-title input{width:160px}.canvas-legend{display:none}}@media(max-width:720px){.brandbar{padding:0 18px}.hero{padding:34px 20px}.hero h1{font-size:39px}.lede br{display:none}.feature-row{flex-wrap:wrap}.generator-card{margin:0 15px 40px}.card-heading{padding:24px;display:block}.card-heading p{line-height:1.7}.settings-grid{grid-template-columns:1fr;padding:24px}.generate-row{padding:15px 24px 24px;display:block}.generate-row>div{margin-bottom:16px}.primary{width:100%}.start-shell footer{margin:0 20px}.candidate-grid{grid-template-columns:1fr;padding:0 18px}.candidate-heading{padding:35px 18px 22px}.candidate-heading p{max-width:310px}.editor-shell{min-width:980px}.candidate-art{height:270px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(min-width:1051px){body .settings-grid{grid-template-columns:repeat(5,1fr)}}
.is-busy button:disabled{cursor:progress;opacity:.72}.secondary .spinner{display:inline-block;width:13px;height:13px;margin-left:8px;vertical-align:-2px}
.statusbar .validation-fail{color:#d78080}.status-error{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b44549;margin-right:5px;box-shadow:0 0 6px #b44549}
.tool:disabled{cursor:not-allowed;opacity:.38;background:transparent!important;border-color:transparent!important;color:#827a6e!important}.panel-title button:disabled{cursor:not-allowed;opacity:.35}.locked-selection input:disabled,.locked-selection select:disabled{cursor:not-allowed;opacity:.48;color:#81796d}.lock-notice{margin:13px 0 0;padding:9px 10px;border:1px solid #68464a;background:#2b1c1e;color:#c9a5a5;font-size:9px;line-height:1.5}
.start-shell footer{align-items:center}.start-shell footer p{margin:0}.footer-credit{display:flex;align-items:center;gap:16px}.footer-credit a{color:#8d8578;text-decoration:none;border-bottom:1px solid #5e574d;padding-bottom:2px}.footer-credit a:hover,.footer-credit a:focus-visible{color:#d2b378;border-color:#b39153;outline:0}
.builder-choice-shell{min-height:100vh;display:flex;flex-direction:column}.builder-choice{width:min(980px,calc(100% - 40px));margin:auto;padding:80px 0 110px;text-align:center}.builder-choice h1{font:500 clamp(42px,6vw,72px)/1.2 var(--serif);letter-spacing:.08em;margin:18px 0}.builder-choice>p:not(.eyebrow){color:#a9a092;line-height:1.9}.builder-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:48px;text-align:left}.builder-cards button{min-height:150px;background:linear-gradient(145deg,#28231f,#1d1a17);border:1px solid #51473c;color:#ddd3c4;padding:28px;display:grid;grid-template-columns:62px 1fr 24px;align-items:center;gap:20px;box-shadow:0 18px 45px #0006}.builder-cards button:hover,.builder-cards button:focus-visible{border-color:#a88957;transform:translateY(-4px);outline:0}.builder-cards button>span{width:58px;height:58px;border:1px solid #795f3b;color:#d2b378;display:grid;place-items:center;font:30px var(--serif)}.builder-cards button div{display:flex;flex-direction:column;gap:9px}.builder-cards button b{font:21px var(--serif);letter-spacing:.08em}.builder-cards button small{color:#958b7d}.builder-cards button>i{font-style:normal;color:#d2b378;font-size:22px}.builder-cards button>i{font-style:normal;color:#d2b378;font-size:22px}.builder-back{margin-right:14px}.trial-shell .brandbar{gap:14px}.header-trial-cta{margin-left:auto;color:#d7c8ae;text-decoration:none;border:1px solid #66523a;padding:9px 13px;font-size:10px}.trial-note{max-width:1240px;margin:0 auto 60px;border:1px solid #4c443a;background:#1d1a17;padding:28px 34px;display:flex;align-items:center;justify-content:space-between}.trial-note>div{display:flex;flex-direction:column;gap:7px}.trial-note span,.trial-note div>span{font-size:8px;letter-spacing:.2em;color:#a88d5f}.trial-note b{font:19px var(--serif)}.trial-note p{margin:0;color:#8f867a;font-size:11px}.trial-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-width:230px;padding:13px 16px;background:#6c2b30;color:#fff;text-decoration:none;font:12px var(--serif)}.trial-cta.disabled{background:#2a2622;color:#81786c;border:1px solid #48413a}.trial-editor-cta b{font:12px var(--serif);display:block;margin-bottom:10px}.trial-editor-cta .trial-cta{min-width:0;width:100%;font-size:10px}.home-editor .floor-tabs button{min-width:90px}.zone.living{color:#d0ae72}.zone.utility{color:#9bb091}@media(max-width:720px){.builder-cards{grid-template-columns:1fr}.builder-choice{padding:45px 0 70px}.trial-note{margin:0 15px 40px;align-items:flex-start;gap:20px;flex-direction:column}.header-trial-cta{display:none}}
.error-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 0,#4d2d2d55,transparent 45%),#141210}.error-screen>div{width:min(520px,100%);padding:38px;background:#211e1b;border:1px solid #5a4540;text-align:center}.error-screen h1{font:30px var(--serif);letter-spacing:.08em}.error-screen p:not(.eyebrow){color:#a99f91;line-height:1.8}.error-screen button{width:100%;margin-top:10px}.error-screen .secondary{height:44px}
@media(max-width:900px){html,body,#app{max-width:100%;overflow-x:hidden}.editor-shell{min-width:0;width:100%;height:100dvh;grid-template:56px minmax(0,1fr) 205px / 52px minmax(0,1fr)}.editor-top{padding:0 9px;min-width:0;overflow:hidden}.editor-brand{width:auto;flex:0 0 auto}.editor-brand>div:last-child{display:none}.project-title{min-width:0;padding-left:9px;margin-left:8px}.project-title input{width:clamp(80px,24vw,170px);font-size:13px}.top-actions{gap:4px;min-width:0}.top-actions button{height:34px;padding:0 8px;font-size:9px}.top-actions .export{min-width:68px}.left-tools{grid-column:1;grid-row:2;padding:5px 4px;overflow-y:auto}.tool{height:48px}.tool span{font-size:7px}.workspace{grid-column:2;grid-row:2;grid-template-rows:45px minmax(0,1fr) 25px}.workspace-bar{min-width:0}.workspace-actions{gap:3px;padding-left:3px}.palette-switch>span,.palette-switch button{font-size:0}.palette-switch button{padding:0 4px}.view-controls #fitView{display:none}.canvas-stage{padding:10px}.statusbar{gap:10px;overflow:hidden;white-space:nowrap}.statusbar span:nth-child(3),.statusbar span:last-child{display:none}.inspector{grid-column:1/-1;grid-row:3;border-left:0;border-top:1px solid #54483d;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(245px,1fr);overflow-x:auto;overflow-y:hidden}.inspector>.panel,.inspector>.mode-switch{height:100%;overflow-y:auto;margin:0;border-top:0;border-right:1px solid #3a3530}.inspector>.mode-switch{display:none}.furniture-palette{left:0;top:auto;bottom:0;width:100%;max-height:72dvh;border-left:0;border-right:0;padding:16px}.furniture-palette section>div{grid-template-columns:repeat(3,1fr)}.export-popover{right:8px;top:52px;width:min(270px,calc(100% - 16px))}}
@media(max-width:540px){.candidate-heading{display:block}.candidate-heading .secondary{margin-top:16px;width:100%}.candidate-art{height:230px}.candidate-info{align-items:flex-start}.candidate-info dl{gap:9px}.candidate-info dd{font-size:13px}.project-title{display:none}.top-actions{margin-left:auto}.top-actions #backTop{font-size:0;width:32px;padding:0}.top-actions #backTop:after{content:"←";font-size:14px}.top-actions button{padding:0 6px}.editor-shell{grid-template-rows:56px minmax(0,1fr) 190px}.furniture-palette section>div{grid-template-columns:repeat(2,1fr)}.start-shell footer{align-items:flex-start;gap:12px;flex-direction:column}.footer-credit{flex-wrap:wrap}.error-screen>div{padding:26px 20px}}
