*{box-sizing:border-box}body{margin:0;background:#101413;color:#eef2ef;font:14px/1.5 Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{color:inherit;background:#202825;border:1px solid #3b4641;border-radius:7px;padding:10px 12px;cursor:pointer;transition:background .15s}button:hover{background:#33433b}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid #98edd2}header{height:88px;display:flex;align-items:center;padding:18px 28px;gap:28px;border-bottom:1px solid #303b35}header img{width:115px;height:48px;object-fit:contain}.studio-title{font-size:20px;letter-spacing:2px;border-left:1px solid #405047;padding-left:28px}.studio-title b{color:#9af1d0}.studio-title span{display:block;font-size:11px;letter-spacing:.4px;color:#a3b0a8}.badge{font-size:9px;letter-spacing:1.4px;background:#263a31;color:#b5eed5;padding:6px 9px;border-radius:4px}.back{margin-left:auto;color:#b9c6bd;font-size:12px;text-decoration:none}.studio{display:grid;grid-template-columns:268px minmax(320px,1fr) 265px;min-height:calc(100dvh - 88px)}.panel{padding:26px 20px;background:#151b18}.library{border-right:1px solid #303b35}.inspector{border-left:1px solid #303b35}.section-label{color:#9ead9f;font-size:9px;letter-spacing:1.4px;font-weight:bold}.section-label #count{float:right;color:#9af1d0;letter-spacing:0}h1{font-size:25px;line-height:1.15;font-weight:500;letter-spacing:-.7px;margin:17px 0 12px}h2{font-size:23px;line-height:1.25;letter-spacing:-.5px;font-weight:500;margin:18px 0 12px}.muted{color:#a5b1a8;font-size:12px;line-height:1.65}.space{margin:26px 0 12px}.room-settings{margin-top:20px;border-block:1px solid #303b35;padding:13px 0}.room-settings summary{cursor:pointer;font-size:12px}.room-settings summary span{display:block;color:#9af1d0;margin-top:4px}.room-settings button{width:100%;font-size:11px}.three-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:20px 0 10px}label{font-size:10px;color:#b6c1b9}input[type=number],select{width:100%;min-width:0;background:#0d1310;border:1px solid #3e4c43;border-radius:5px;color:#e5f4e9;padding:10px 6px;margin-top:7px}input[type=color]{width:100%;height:38px;border:1px solid #3e4c43;background:#0d1310;margin-top:6px;border-radius:5px}.catalog{display:grid;gap:8px}.catalog button{display:flex;align-items:center;text-align:left;gap:10px;background:#1d2621;padding:12px 10px}.catalog button:hover{border-color:#97dfbe}.catalog b{display:block;font-size:12px;font-weight:500}.catalog small{display:block;font-size:10px;color:#99aa9f;margin-top:4px}.catalog i{margin-left:auto;color:#9af1d0;font-size:20px;font-style:normal}.piece-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #45584c;border-radius:4px;color:#b3d4c1;font-size:18px;letter-spacing:-3px}.screen-icon{color:#81ddce;font-size:27px;letter-spacing:0}.object-list{max-height:185px;overflow:auto;display:grid;gap:5px}.object-list button{text-align:left;font-size:11px;padding:7px 9px;background:transparent;border-color:transparent}.object-list button.selected{border-color:#84d7b5;background:#223b2e;color:#ceffe6}.object-list button span{float:right;color:#9bad9e;font-size:10px}.library-bottom{display:flex;gap:8px;margin-top:15px}.library-bottom button{font-size:10px;flex:1}.quiet{background:transparent}.workspace{min-width:0;display:flex;flex-direction:column;background:#0c110f}.viewport-bar{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;font-size:9px;letter-spacing:1.2px}.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#a5edcd;margin-right:6px}.view-buttons{display:flex;gap:4px;letter-spacing:0}.view-buttons button{font-size:10px;padding:6px 9px;background:transparent;border-color:transparent}.view-buttons button.active{background:#2d4035;color:#b8f5d8}#viewport{position:relative;min-height:460px;height:calc(100dvh - 240px);max-height:920px;flex:1;overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.canvas-label{position:absolute;left:22px;top:18px;pointer-events:none}.canvas-label span{font-size:9px;letter-spacing:2px;color:#a9b6ac}.canvas-label strong{display:block;font-size:25px;font-weight:400;margin-top:4px;color:#dde8e0}.zoom-controls{position:absolute;right:15px;top:18px;display:grid;gap:6px}.zoom-controls button{width:32px;height:32px;padding:3px;font-size:20px;background:#18241ddd}.view-help{position:absolute;bottom:20px;left:20px;right:20px;text-align:center;color:#b1bfb4;font-size:10px;pointer-events:none}.workspace-footer{display:flex;align-items:center;gap:12px;padding:14px 20px;border-top:1px solid #29362e;flex-wrap:wrap}.workspace-footer button{font-size:11px;padding:5px 10px}.snap{display:flex;align-items:center;gap:6px;font-size:10px}.snap input{accent-color:#9af1d0}#save-state{font-size:9px;color:#92a499;margin-left:auto}.disclaimer{padding:0 20px 14px;color:#94a49a;font-size:10px;line-height:1.5}.field-note{font-size:10px;color:#9bac9e}.full-label{display:block;margin:16px 0}.full-label[hidden]{display:none}.pair{display:flex;gap:7px;margin:12px 0}.pair button{flex:1;padding:9px 5px;font-size:11px}.export-box{border-top:1px solid #34463a;margin-top:30px;padding-top:22px}.export-box>button{width:100%;font-size:11px}.primary{background:#b7f6d8;border-color:#b7f6d8;color:#12241b;font-weight:bold}.primary:hover{background:#d9ffe9}.quote{border-color:#577563;background:transparent}.small{font-size:10px}#status{font-size:11px;color:#b8f5d8;min-height:30px}button[aria-pressed=true]{border-color:#a2e9c6} @media(min-width:1450px){.studio{grid-template-columns:290px minmax(320px,1fr) 290px}.panel{padding:30px 25px}}
@media(max-width:1050px){.studio{grid-template-columns:235px minmax(320px,1fr)}.inspector{grid-column:1/-1;border-left:0;border-top:1px solid #303b35;display:grid;grid-template-columns:1fr 1fr;gap:20px}.inspector>.section-label{grid-column:1/-1}.export-box{margin:0;padding:0;border:0}.inspector #status{grid-column:1/-1}#viewport{height:560px;min-height:400px}.badge{display:none}}
@media(max-width:650px){header{height:75px;padding:12px 16px;gap:14px}header img{width:85px;height:40px}.studio-title{font-size:16px;padding-left:14px}.studio-title span{font-size:9px}.back{font-size:0}.back:after{content:'↗';font-size:20px}.studio{display:flex;flex-direction:column}.workspace{order:0}.library{order:1;border-top:1px solid #303b35;border-right:0}.inspector{order:2;display:block}#viewport{height:410px;min-height:350px;flex:auto}.viewport-bar{height:48px;padding:0 14px;letter-spacing:.5px;font-size:8px}.canvas-label strong{font-size:20px}.view-help{bottom:10px;font-size:9px}.workspace-footer{padding:10px 12px;gap:8px}#save-state{width:100%;margin:0}.panel{padding:22px 18px}.catalog{grid-template-columns:1fr 1fr;gap:7px}.catalog button{padding:10px 7px;gap:7px}.catalog small{font-size:9px}.piece-icon{width:27px;height:30px;font-size:15px}.catalog i{display:none}.object-list{max-height:145px}.export-box{border-top:1px solid #303b35;margin-top:25px;padding-top:24px}.inspector>.section-label{margin-bottom:15px}.three-fields{gap:12px}h1{font-size:24px} .disclaimer{font-size:9px;padding:0 12px 12px}}

.movement-bar{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:8px 20px;background:#19221d;border-block:1px solid #34463a}.movement-bar label{display:flex;align-items:center;gap:8px;font-size:11px}.movement-bar select{width:auto;max-width:220px;margin:0;padding:7px}.movement-bar>span{font-size:10px;color:#becbbf}.axis-x{color:#ff9f98}.axis-y{color:#b2f2b4}.axis-z{color:#a2c7ff}.nudge{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.nudge button{font-size:11px;padding:7px}.nudge button:nth-child(-n+2){color:#ffb9b3}.nudge button:nth-child(n+3):nth-child(-n+4){color:#b2f2b4}.nudge button:nth-child(n+5){color:#a2c7ff}.full-label input[type=range]{display:block;width:100%;accent-color:#b7f6d8;margin-top:10px}.full-label output{float:right;color:#caffdf}.library-format{margin:0 0 12px}.library-format select{font-size:11px}#dock-module{width:100%;font-size:11px}#module-controls[hidden],#light-controls[hidden]{display:none}@media(max-width:650px){.movement-bar{padding:8px 12px;display:block}.movement-bar>span{display:block;margin-top:5px}.movement-bar select{max-width:235px}.catalog button:last-child{grid-column:1/-1}}

.workspace{align-self:start;width:100%;position:sticky;top:0}.workspace #viewport{height:calc(100dvh - 320px);min-height:360px;flex:none}@media(max-width:650px){.workspace{position:static}.workspace #viewport{height:410px}}

#structure-controls[hidden],#truss-orientation-buttons[hidden]{display:none}.view-buttons{flex-wrap:wrap}.viewport-bar{height:auto;min-height:58px;gap:10px;padding-block:8px}.view-buttons button{padding:6px}.movement-bar select:disabled{opacity:1;color:#b7f6d8}#rotate-structure{width:100%}@media(max-width:650px){.viewport-bar{align-items:flex-start;flex-direction:column}.catalog button:last-child{grid-column:auto}}
@media(max-width:1050px){.workspace{position:static}}

#start-live{white-space:nowrap;font-size:12px;padding:9px 16px;margin-left:auto}#start-live[hidden],#live-controls[hidden]{display:none}#live-controls{padding:15px 22px;display:flex;gap:20px;justify-content:space-between;align-items:center;background:#080b13;border-bottom:1px solid #2e3547}#live-controls b{letter-spacing:2px;font-size:11px;color:#d5ecff}#live-controls i{display:inline-block;width:7px;height:7px;background:#8ee6cf;border-radius:50%;margin-right:8px}#live-notice{display:block;color:#8f9dae;font-size:10px;margin-top:5px}.live-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.live-actions button{font-size:11px;background:#18202f;border-color:#344358}.live-actions label{display:flex;align-items:center;gap:8px}.live-actions input{width:75px;accent-color:#9ae5d4}.live-mode .library,.live-mode .inspector,.live-mode .movement-bar,.live-mode .workspace-footer,.live-mode .disclaimer,.live-mode .canvas-label,.live-mode .view-help,.live-mode .viewport-bar{display:none}.live-mode .studio{display:block}.live-mode .workspace{position:static}.live-mode .workspace #viewport{height:calc(100dvh - 164px);max-height:none;min-height:380px}.live-mode header{height:75px;background:#060810}.live-mode .badge{display:none}.live-mode canvas{cursor:grab}@media(max-width:650px){#live-controls{padding:12px;display:block}.live-actions{margin-top:10px}.live-mode .workspace #viewport{height:calc(100dvh - 215px)}#start-live{margin-left:0}.viewport-bar{flex-wrap:wrap}.movement-bar{flex-wrap:wrap}}

.mobile-only{display:none!important}
@media(max-width:650px){
 body:not(.live-mode) header{height:62px;padding:8px 12px}body:not(.live-mode) header img{height:36px;width:80px}.studio-title{font-size:14px}.studio-title span{font-size:8px}
 .mobile-only:not([hidden]){display:block!important}#mobile-insert{display:flex!important;gap:6px;overflow-x:auto;padding:8px 10px;background:#17221c;scrollbar-width:thin}#mobile-insert button{white-space:nowrap;min-height:42px;padding:9px 12px;font-size:12px;flex:none}
 .viewport-bar{padding:7px 10px;display:flex;flex-direction:row;align-items:center;gap:6px}.viewport-bar>div:first-child{display:none}.view-buttons{flex:1;justify-content:flex-end;gap:0}.view-buttons button{min-height:40px;padding:5px;font-size:10px}#start-live{padding:8px 10px;min-height:40px;font-size:11px}.movement-bar,.workspace-footer{display:none}.mobile-options-open .movement-bar{display:flex;flex-wrap:wrap}.mobile-options-open .movement-bar>span{display:none}.mobile-options-open .workspace-footer{display:flex}.workspace #viewport{height:calc(100dvh - 310px);min-height:240px;max-height:660px}.canvas-label{left:12px;top:12px}.canvas-label strong{font-size:17px}.view-help{display:none}.zoom-controls button{width:40px;height:40px}.zoom-controls{right:10px;top:10px}
 #mobile-edit{padding:8px 10px calc(9px + env(safe-area-inset-bottom));background:#19221d;border-top:1px solid #405448}#mobile-selected{font-size:12px;color:#cbf5dc;margin-bottom:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-actions{display:flex;gap:6px;overflow-x:auto}.mobile-actions button{flex:none;white-space:nowrap;min-height:44px;font-size:12px;padding:8px 12px}.mobile-actions button[aria-pressed=true]{background:#335c48}#mobile-edit p{margin:6px 0 0;color:#a6b6ab;font-size:10px;line-height:1.4}
 .library.panel,.inspector.panel{display:none}.mobile-library-open .library.panel,.mobile-details-open .inspector.panel{display:block;position:fixed;z-index:60;left:0;right:0;bottom:0;max-height:65dvh;overflow:auto;overscroll-behavior:contain;border-radius:18px 18px 0 0;border:1px solid #557060;padding:12px 16px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -18px 60px #0009}.mobile-close{position:sticky;top:0;width:100%;z-index:3;background:#284d3a;margin-bottom:14px;font-size:14px;min-height:44px}.panel input,.panel select{font-size:16px;min-height:44px}.mobile-details-open .inspector>.section-label{margin-top:14px}.mobile-details-open #selection-empty{display:block}.mobile-details-open #selection-empty[hidden]{display:none}.disclaimer{display:none}
 #mobile-context:not([hidden]){position:fixed;z-index:70;bottom:0;left:0;right:0;background:#1d3025;border:1px solid #6b8d77;border-radius:16px 16px 0 0;padding:18px 12px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -15px 50px #000a}#mobile-context b{display:block;margin-bottom:12px}
 .live-mode #mobile-insert,.live-mode #mobile-edit,.live-mode #mobile-context,.live-mode .mobile-close{display:none!important}.live-mode .library.panel,.live-mode .inspector.panel{display:none!important}
}
/* Integrated brand and tactile controls */
header{gap:12px;background:linear-gradient(125deg,#15241e,#0c1312)}header img{width:145px;height:62px}.studio-title{border:0;padding-left:0;font-weight:700;letter-spacing:1px}.studio-title small{display:block;font-size:10px;letter-spacing:2px;color:#a7d9c4;margin-bottom:2px}.scene-brand{position:absolute;bottom:45px;left:18px;width:92px;height:45px;object-fit:contain;opacity:.65;pointer-events:none}.live-mode .scene-brand{bottom:38px;opacity:.7}
button{background:linear-gradient(180deg,#344b40,#1c2b24);border-color:#577c66;box-shadow:inset 0 1px 0 #ffffff20,0 3px 0 #08160f,0 5px 10px #0004;transform:translateY(0)}button:hover{filter:brightness(1.13)}button:active{transform:translateY(2px);box-shadow:inset 0 1px 3px #0005,0 1px 0 #08160f}button.primary{background:linear-gradient(180deg,#a5ffdc,#54cba5);border-color:#a5f8d4;color:#102b21}.view-buttons button.active,.mobile-actions button[aria-pressed=true]{background:linear-gradient(180deg,#427a60,#24503d)}.catalog button{background:linear-gradient(160deg,#304c3d,#1b2c22)}button:disabled{filter:none;box-shadow:none}
@media(max-width:650px){header img,body:not(.live-mode) header img{width:112px;height:49px}body:not(.live-mode) header{height:72px;gap:9px}.studio-title{font-size:16px;padding-left:0}.studio-title small{font-size:8px;letter-spacing:1px}.studio-title span{font-size:8px}.workspace #viewport{height:calc(100dvh - 335px)}.scene-brand{width:74px;height:36px;bottom:12px;left:12px}.mobile-only.mobile-quick:not([hidden]){display:grid!important;grid-template-columns:1fr 1fr;gap:10px;padding:15px 12px 22px;background:#14241c;border-top:1px solid #395a46}.mobile-quick button{min-height:46px;font-size:12px}.mobile-quick button:first-child{grid-column:1/-1}.live-mode .mobile-only.mobile-quick:not([hidden]){display:none!important}.live-mode .scene-brand{bottom:42px}.mobile-actions{padding-bottom:6px}#mobile-insert{padding-bottom:12px}}
.brief-panel{margin:14px 20px;padding:14px 18px;background:linear-gradient(120deg,#233d30,#15251d);border:1px solid #648f78;border-radius:12px}.brief-panel summary{cursor:pointer;color:#c7ffe5;font-size:16px;font-weight:bold}.brief-panel p{font-size:12px;color:#b3cabc;max-width:900px}.brief-panel textarea{display:block;width:100%;max-width:900px;resize:vertical;background:#101d16;color:#effff5;border:1px solid #678874;border-radius:8px;padding:12px;font:16px/1.5 Arial;margin:8px 0 12px}.brief-actions{display:flex;gap:10px;flex-wrap:wrap}#brief-result{color:#dcffe8;font-size:14px}#brief-apply[hidden]{display:none}.live-mode .brief-panel{display:none}@media(max-width:650px){.brief-panel{margin:10px;padding:12px}.brief-panel summary{font-size:14px}.brief-actions button{min-height:44px}}
#quote-dialog{width:min(540px,94vw);max-height:90dvh;overflow:auto;background:#18291f;color:#effff4;border:1px solid #81b89c;border-radius:16px;padding:22px}#quote-dialog::backdrop{background:#000a}#quote-preview{width:100%;max-height:40dvh;object-fit:contain;background:#0b1510;border-radius:8px}#quote-dialog button,#quote-chat{display:block;width:100%;margin:10px 0;min-height:44px}#quote-chat{color:#baffdb;text-align:center;padding:10px}#quote-dialog p{font-size:13px;line-height:1.5}#quote-preview[hidden]{display:none}@media(max-width:650px){body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}#mobile-quote{position:fixed;z-index:80;bottom:calc(12px + env(safe-area-inset-bottom));left:12px;width:calc(100% - 24px);min-height:50px;font-size:14px;box-shadow:0 4px 24px #0009;background:linear-gradient(#83f5b9,#34ba7d);color:#08261a}}

.design-entry,.venue-panel{margin:20px 24px;padding:24px;background:linear-gradient(130deg,#20362b,#111c18);border:1px solid #45694f;border-radius:18px}.entry-heading{display:flex;gap:20px;justify-content:space-between;align-items:center}.entry-heading h1{font-size:clamp(24px,3vw,38px);margin:9px 0}.entry-heading p,.venue-panel p{color:#c1cfc5;font-size:14px;line-height:1.6}.entry-heading small{color:#b7ef89;letter-spacing:2px}.entry-heading button{flex-shrink:0}#preset-gallery summary,.venue-panel summary{cursor:pointer;font-weight:700;padding:12px 0}#preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:15px}.preset-card{padding:12px;text-align:left;display:flex;flex-direction:column;gap:10px;white-space:normal}.preset-card svg{width:100%;height:auto}.preset-card small{font-size:10px;letter-spacing:1.6px;color:#b5e9a0}.preset-card strong{font-size:18px}.preset-card span{color:#c2cfc5;font-size:13px;line-height:1.5;min-height:40px}.preset-card b{color:#c5ff98;font-size:13px}.preset-card:hover{border-color:#c5ff98;transform:translateY(-2px)}#preset-dialog{width:min(520px,90vw);background:#17231d;color:#edf6ef;border:1px solid #75957e;border-radius:18px;padding:24px}#preset-dialog p{line-height:1.5}#preset-dialog svg{width:100%}dialog::backdrop{background:#030906bd}#venue-adjust{display:flex;flex-wrap:wrap;align-items:center;gap:20px}#venue-adjust[hidden]{display:none}#venue-adjust label{display:grid;gap:8px}#venue-adjust p{width:100%}.live-mode .design-entry,.live-mode .venue-panel{display:none}
@media(max-width:650px){.design-entry,.venue-panel{margin:12px;padding:16px}.entry-heading{display:block}.entry-heading button{width:100%;margin:10px 0}#preset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.preset-card{padding:8px;gap:7px}.preset-card strong{font-size:14px}.preset-card span{font-size:12px;min-height:72px}.preset-card small{font-size:9px}.venue-panel input[type=file]{max-width:100%}#venue-adjust label{width:100%}}

#change-design{border-color:#a8da86;color:#ddffc7}.viewport-bar{flex-wrap:wrap}.live-mode #change-design{display:none}@media(max-width:650px){#change-design{display:block;flex:1;min-height:42px}.live-actions{flex-wrap:wrap}#live-change-design{min-height:40px}}

.tech-library summary,.furniture-library summary{font-size:13px;font-weight:700;cursor:pointer;padding:16px 0;color:#d4efc9}.furniture-library{margin:12px 0;border-top:1px solid #3d5547;border-bottom:1px solid #3d5547}.furniture-library .catalog{margin-bottom:14px}.furniture-library>button{width:100%;margin-bottom:16px}#furniture-confirm{max-width:460px;width:90vw;background:#17231d;color:#edf6ef;border:1px solid #75957e;border-radius:18px;padding:24px}#furniture-confirm p{line-height:1.6}

/* Approved 3D brand, integrated into the dark page without a rectangular backing. */
img[src*="logo-bob-3d-alfa.png"]{mix-blend-mode:normal;object-fit:contain;height:auto;background:transparent}

/* Clear disclosure buttons retain native keyboard and open/close behavior. */
summary.entry-toggle{list-style:none!important;display:block!important;position:relative;padding:16px 48px 16px 20px!important;border:1px solid #70dcb3!important;border-radius:13px;background:linear-gradient(145deg,#b4ffe0,#55bd95)!important;color:#102c23!important;box-shadow:0 4px 0 #235c47,0 8px 20px #0005;cursor:pointer;font-weight:800;min-height:58px;box-sizing:border-box;margin:8px 0 18px!important}
summary.entry-toggle::-webkit-details-marker{display:none}summary.entry-toggle::after{content:'＋';position:absolute;right:18px;top:17px;font-size:22px}details[open]>summary.entry-toggle::after{content:'−'}summary.entry-toggle span{display:block;font-size:12px;font-weight:500;margin-top:5px}summary.entry-toggle:focus-visible,#joystick-pad:focus-visible{outline:3px solid #fff;outline-offset:4px}
#move-joystick{position:absolute;left:16px;top:50%;transform:translateY(-50%);z-index:8;display:grid;justify-items:center;gap:6px;background:#0b1c22dc;border:1px solid #8deac66b;padding:12px;border-radius:20px;box-shadow:0 6px 22px #0007;color:#d4ffe9;user-select:none}#move-joystick[hidden]{display:none!important}#joystick-plane{font-size:12px;font-weight:800}#move-joystick small{font-size:10px}#joystick-pad{width:112px;height:112px;border-radius:50%;position:relative;touch-action:none;padding:0;border:2px solid #7ae5b9;background:radial-gradient(circle,#153f34,#071a16);box-shadow:inset 0 3px 12px #0009,0 2px 0 #38765c;color:#a8e7cb;cursor:grab}#joystick-pad:active{cursor:grabbing} .joystick-cross{font-size:90px;line-height:100px;opacity:.3}#joystick-knob{position:absolute;left:34px;top:34px;width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#edfff7,#7df4c2 55%,#328c66);box-shadow:0 5px 10px #0009;border:1px solid #d0ffeb;pointer-events:none}.live-mode #move-joystick{display:none!important}#desktop-move[aria-pressed=true]{background:#a2f7d2;color:#103124}
@media(max-width:650px){#desktop-move{display:none}#move-joystick{left:8px;padding:8px}#joystick-pad{width:96px;height:96px}#joystick-knob{left:26px;top:26px}.joystick-cross{font-size:78px;line-height:86px}summary.entry-toggle{font-size:15px}}
/* Furniture catalogue: an accessible, paged drawer above the editor. */
#catalog-dialog{width:min(1050px,94vw);max-width:1050px;max-height:90dvh;padding:24px;background:#141c19;color:#eef5ef;border:1px solid #4a6456;border-radius:20px;overflow:auto;box-shadow:0 24px 100px #000a}
#catalog-dialog::backdrop{background:#07100bd9;backdrop-filter:blur(6px)}
.catalog-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.catalog-header h2{font-size:30px;margin:8px 0}.catalog-header small{letter-spacing:.15em;color:#90c4a5}.catalog-header button{flex-shrink:0}
.catalog-intro,.catalog-footnote{font-size:13px;line-height:1.6;color:#acbcb1;max-width:800px}.catalog-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:22px 0 12px}.catalog-filters label{display:grid;gap:6px;font-size:12px;color:#c1d4c6}.catalog-filters input,.catalog-filters select{width:100%;min-width:0;min-height:44px;background:#25362c;color:#fff;border:1px solid #506359;border-radius:9px;padding:10px}
#catalog-results{color:#aee7bf;font-size:12px;min-height:20px}#catalog-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.furniture-card{background:#202c25;border:1px solid #354c3d;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.furniture-card>img{display:block;width:100%;height:170px;object-fit:contain;background:#fff}.furniture-card>div{padding:14px;display:flex;flex-direction:column;flex:1}.furniture-card small{font-size:10px;letter-spacing:.08em;color:#a6bbae}.furniture-card h3{font-size:16px;line-height:1.3;margin:9px 0}.furniture-card p{font-size:12px;margin:3px 0;color:#d7e4db}.furniture-card .dimension-note{color:#9caf9f;font-size:11px;line-height:1.45;margin-bottom:14px}.furniture-card button{margin-top:auto;width:100%;min-height:44px;background:linear-gradient(#476a52,#2b4836);border:1px solid #689577;box-shadow:0 3px 0 #142c1c;color:#effff3;border-radius:9px;padding:10px;font-size:12px;font-weight:650}.catalog-paging{display:flex;align-items:center;justify-content:center;gap:20px;margin:24px 0}.catalog-paging span{font-size:12px}.catalog-paging button{min-height:44px}.furniture-library>.primary{width:100%;margin:8px 0 14px}.furniture-card button:hover{filter:brightness(1.2)}
@media(max-width:650px){#catalog-dialog{width:calc(100vw - 16px);padding:16px;max-height:94dvh;border-radius:16px}.catalog-header h2{font-size:23px}.catalog-header small{font-size:9px}.catalog-filters{grid-template-columns:1fr 1fr;gap:10px}.catalog-filters label:first-child{grid-column:1/-1}#catalog-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.furniture-card>img{height:120px}.furniture-card>div{padding:10px}.furniture-card h3{font-size:14px}.furniture-card small{font-size:9px}.catalog-paging{gap:10px}.catalog-paging button{font-size:12px}.catalog-intro{font-size:12px}}
#open-furniture-catalog{background:linear-gradient(145deg,#b2ffe1,#51cda2);color:#10362a;border-color:#84e6bb;box-shadow:0 4px 0 #255b44;font-weight:750}

#quote[hidden],#quote-dialog [hidden]{display:none!important}#quote-dialog{width:min(700px,94vw)}#quote-summary table{width:100%;border-collapse:collapse;font-size:12px;margin:16px 0}#quote-summary th,#quote-summary td{padding:10px 6px;border-bottom:1px solid #365543;text-align:left}#quote-summary th:last-child,#quote-summary td:last-child{text-align:right;white-space:nowrap}.quote-total{display:block;font-size:23px;color:#a3f3c0;padding:10px 0}.quote-badge{font-weight:750;letter-spacing:.06em;color:#f4d8a5}.quote-pending,.quote-terms{color:#d6c3a4}#quote-preview{max-height:28dvh}#quote-feedback{padding:12px;background:#223d2c;border-radius:10px}@media(max-width:650px){#quote-dialog{padding:16px}#quote-summary td,#quote-summary th{padding:9px 3px;font-size:11px}.quote-total{font-size:21px}}
