.mobile-controls{z-index:40;pointer-events:none;display:none;position:absolute;inset:0;overflow:hidden}.mobile-joystick{left:max(18px, env(safe-area-inset-left));bottom:max(18px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#1e293b7a;border:2px solid #ffffff59;border-radius:50%;justify-content:center;align-items:center;width:112px;height:112px;display:flex;position:absolute;box-shadow:0 5px 22px #00000026}.mobile-joystick-knob{pointer-events:none;will-change:transform;background:#ffffffe0;border:2px solid #ffffffbf;border-radius:50%;width:54px;height:54px;box-shadow:0 3px 15px #0000003b}@media (pointer:coarse){.mobile-controls{display:block}}@media (pointer:fine){.mobile-controls{display:none}}@media (width<=400px){.mobile-joystick{width:104px;height:104px;bottom:12px;left:12px}.mobile-joystick-knob{width:48px;height:48px}}:root{--viewer-glass:#3d5161db;--viewer-button:#ffffff14;--viewer-hover:#ffffff2b;--viewer-border:#ffffff26;--viewer-text:#f7f3ea;--viewer-muted:#d5dde0;--viewer-accent:#3d5161;--viewer-accent-hover:#526b7e;--viewer-blur:blur(18px) saturate(120%);--viewer-shadow:0 12px 32px #00000038}.design-tools[hidden],.camera-mode-controls[hidden],.apartment-viewer:not(.viewer-ui-ready) .mobile-controls,.apartment-viewer:not(.viewer-ui-ready) .object-toolbar{display:none!important}.design-tools .design-bar,.design-tools .design-panel,.design-tools .design-dialog,.design-tools .design-status,.design-tools .design-cart-toggle,.camera-mode-controls.camera-mode-controls button,.camera-mode-controls .camera-mode-status,.object-toolbar.object-toolbar,.apartment-viewer .modal .modal-content,.apartment-viewer .mobile-joystick{background:var(--viewer-glass);color:var(--viewer-text);border:1px solid var(--viewer-border);-webkit-backdrop-filter:var(--viewer-blur);backdrop-filter:var(--viewer-blur);box-shadow:var(--viewer-shadow)}.design-tools.design-tools{color:var(--viewer-text)}.design-tools.design-tools button,.design-tools .design-bar .design-icon-button,.object-toolbar.object-toolbar button,.apartment-viewer .modal .action-btn,.apartment-viewer .modal .close,.apartment-viewer .modal .model-card,.apartment-viewer .modal .texture-card{color:var(--viewer-text);background:var(--viewer-button);border-color:var(--viewer-border)}.design-tools.design-tools button:not(:disabled):hover,.design-tools .design-bar .design-icon-button:not(:disabled):hover,.design-tools .design-bar .design-icon-button:focus-visible,.camera-mode-controls.camera-mode-controls button:not(:disabled):hover,.object-toolbar.object-toolbar button:hover,.apartment-viewer .modal .action-btn:hover,.apartment-viewer .modal .close:hover{background:var(--viewer-hover)}.design-tools .design-bar .design-camera-button{background:#ffffff29;box-shadow:inset 0 1px #ffffff1a}.design-tools .design-caption,.design-tools .design-item-text small,.apartment-viewer .modal #modalDescription,.apartment-viewer .modal .model-product-details{color:var(--viewer-muted)}.design-tools .design-item,.design-tools .design-purchase-item{border-bottom-color:var(--viewer-border)}.design-tools .design-item-text button{background:0 0}.design-tools .design-thumbnail{background:var(--viewer-button);color:var(--viewer-muted)}.design-tools .design-thumbnail img{background:#ffffffeb}.design-tools.design-tools .design-buy,.apartment-viewer .modal .action-btn.primary{background:var(--viewer-accent);border-color:var(--viewer-accent-hover);color:#fff}.design-tools.design-tools .design-buy:hover,.apartment-viewer .modal .action-btn.primary:hover{background:var(--viewer-accent-hover)}.design-tools .design-product-link,.apartment-viewer .modal .back-btn{color:#f0dfc4}.design-tools .design-dialog input{color:var(--viewer-text);background:var(--viewer-button);border:1px solid var(--viewer-border);border-radius:10px}.design-tools .design-dialog::backdrop{background:#0c111a80}.design-tools .design-busy{color:var(--viewer-text);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#3d516161}.design-tools.design-tools button:focus-visible,.design-tools.design-tools a:focus-visible,.camera-mode-controls.camera-mode-controls button:focus-visible{outline-offset:2px;outline:2px solid #f0dfc4}.design-tools .design-bar .design-icon-button{min-height:36px}.design-tools .design-bar .design-camera-button{min-height:42px}.viewer-section .expand-viewer{background:var(--viewer-glass);border:1px solid var(--viewer-border);color:var(--viewer-text);-webkit-backdrop-filter:var(--viewer-blur);backdrop-filter:var(--viewer-blur);box-shadow:var(--viewer-shadow)}.viewer-section .expand-viewer:hover{background:#3d5161f7}.viewer-section:not(:has(.apartment-viewer.viewer-ui-ready)) .expand-viewer{visibility:hidden;pointer-events:none}.design-tools .design-bar .design-camera-button{color:#3d5161;background:#f7f3ea;border-color:#ffffffb3;box-shadow:0 2px 8px #101f2a26}.design-tools .design-bar .design-camera-button:not(:disabled):hover,.design-tools .design-bar .design-camera-button:focus-visible{background:#fff}.design-tools .design-bar,.design-tools .design-panel,.design-tools .design-dialog,.apartment-viewer .modal .modal-content{box-shadow:inset 0 1px 0 #ffffff26, var(--viewer-shadow);font-family:-apple-system, BlinkMacSystemFont, var(--font-main,sans-serif);background-image:linear-gradient(145deg,#ffffff12,#0000 55%);border-radius:22px}.design-tools.design-tools .design-buy{color:#3d5161;background:#f7f3ea;border-color:#ffffff80;border-radius:13px;font-weight:650}.design-tools.design-tools .design-buy:not(:disabled):hover{background:#fff}.apartment-viewer .modal .texture-control-btn,.apartment-viewer .modal .texture-reset-btn{background:var(--viewer-button);color:var(--viewer-text);border-color:var(--viewer-border)}.apartment-viewer .modal .texture-control-btn:hover,.apartment-viewer .modal .texture-reset-btn:hover{background:var(--viewer-hover)}.apartment-viewer .modal input[type=range]{accent-color:#f0dfc4}.apartment-viewer .design-tools .design-cart-toggle{background:var(--viewer-glass,#3d5161db);color:#f7f3ea;opacity:1;-webkit-backdrop-filter:blur(18px);border:1px solid #fff3;border-radius:10px;justify-content:center;align-items:center;min-height:42px;padding:10px 17px;font-size:13px;font-weight:700;display:inline-flex}.apartment-viewer .design-tools .design-cart-toggle:hover{background:#4e6577}@media (width>=701px){.apartment-viewer .design-tools .design-cart-toggle{inset:18px auto auto 18px}.apartment-viewer .design-tools .design-panel{top:72px;left:18px}}.furniture-fit-error{bottom:16px;z-index:3000;color:#8d2424;pointer-events:none;background:#fff3f1;border:1px solid #dd4545;border-radius:10px;padding:12px 16px;font-size:14px;position:absolute;inset-inline:16px}.camera-mode-controls{z-index:15;pointer-events:auto;flex-wrap:wrap;align-items:center;gap:6px;max-width:calc(100% - 130px);display:flex;position:absolute;top:72px;left:14px}.camera-mode-controls button{color:#fff5e3;min-height:40px;font:inherit;cursor:pointer;touch-action:manipulation;background:#103f48f5;border:1px solid #f4e7cf66;border-radius:10px;padding:8px 12px;font-size:13px}.camera-mode-controls button:disabled{opacity:.5;cursor:default}.camera-mode-controls button:focus-visible{outline-offset:2px;outline:2px solid #dba955}.camera-top-tools{gap:4px;display:flex}.camera-top-tools[hidden]{display:none!important}.camera-mode-status{color:#103f48;background:#f4efe7;border-radius:6px;flex-basis:100%;padding:3px 6px;font-size:11px}.camera-mode-status:empty{display:none}@media (width<=600px){.camera-mode-controls{gap:4px;max-width:calc(100% - 105px);top:72px;left:8px}.camera-mode-controls button{min-height:40px;padding:8px;font-size:12px}}.apartment-viewer .camera-mode-controls{justify-content:center;gap:6px;width:max-content;max-width:calc(100% - 24px);top:78px;left:50%;right:auto;transform:translate(-50%)}.apartment-viewer .camera-top-tools{justify-content:center}.apartment-viewer .camera-mode-status{text-align:center;white-space:normal;border-radius:12px;flex-basis:100%;max-width:340px;margin:0 auto;padding:6px 10px;font-size:11px;line-height:1.4}@media (width>=701px){.apartment-viewer .design-cart-toggle{top:190px}.apartment-viewer .design-panel{top:236px}}.design-tools{pointer-events:none;z-index:16;color:#103f48;font-family:inherit;position:absolute;inset:0}.design-tools button,.design-tools a,.design-tools input{font:inherit;font-size:12px}.design-tools button{color:#103f48;cursor:pointer;background:#fffaf1;border:1px solid #d3c7b5;border-radius:8px;min-height:36px;padding:9px 11px}.design-tools button:disabled{opacity:.45;cursor:default}.design-tools button:focus-visible,.design-tools a:focus-visible{outline-offset:2px;outline:2px solid #b78b4e}.design-bar{top:max(14px, env(safe-area-inset-top,0px));-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);pointer-events:auto;background:#fff6;border:1px solid #ffffffb3;border-radius:20px;grid-template-columns:36px 36px 42px 36px 36px;align-items:center;gap:5px;padding:5px;display:grid;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #1c28311f,inset 0 1px #ffffffb3}.design-bar .design-icon-button{color:#243d48;touch-action:manipulation;background:#fff9;border:1px solid #fff9;border-radius:13px;place-items:center;width:36px;height:36px;min-height:36px;padding:0;transition:background .16s,box-shadow .16s,transform .16s;display:grid}.design-icon-button svg{opacity:.72;width:18px;height:18px;transition:opacity .16s}.design-bar .design-camera-button{background:#fffc;border-radius:15px;width:42px;height:42px;box-shadow:0 3px 10px #243d4812}.design-camera-button svg{opacity:.85;width:22px;height:22px}.design-bar .design-icon-button:not(:disabled):hover,.design-bar .design-icon-button:focus-visible{background:#fff;box-shadow:0 3px 12px #243d481a}.design-icon-button:not(:disabled):hover svg,.design-icon-button:focus-visible svg{opacity:1}.design-bar .design-icon-button:not(:disabled):active{transform:scale(.94)}.design-bar .design-icon-button:disabled{opacity:.4}@media (prefers-reduced-motion:reduce){.design-bar .design-icon-button,.design-icon-button svg{transition:none}}@media (width<=360px){.design-bar{gap:3px;padding:5px}}.design-cart-toggle{pointer-events:auto;background:#f4e7cf;position:absolute;top:114px;left:12px}.design-panel{box-sizing:border-box;pointer-events:auto;background:#fffaf1f5;border:1px solid #d3c7b5;border-radius:14px;flex-direction:column;width:245px;max-height:520px;padding:12px;display:flex;position:absolute;top:160px;bottom:78px;left:12px;box-shadow:0 8px 25px #102b3520}.design-panel[hidden],.design-busy[hidden]{display:none}.design-panel-header,.design-dialog-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.design-panel-header button,.design-dialog-header button{padding:2px 9px;font-size:20px}.design-caption{color:#56666a;margin:6px 0;font-size:11px;line-height:1.5;display:block}.design-items{flex:1;min-height:0;overflow:auto}.design-item{border-bottom:1px solid #e7ddcf;align-items:center;gap:5px;padding:9px 0;display:flex}.design-thumbnail{color:#77858a;background:#eee4d5;border-radius:8px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:20px;display:grid;position:relative;overflow:hidden}.design-thumbnail img{object-fit:contain;background:#fffaf1;width:100%;height:100%;position:absolute}.design-item-text{flex:1;min-width:0}.design-item-text button{text-align:left;overflow-wrap:anywhere;background:0 0;border:0;min-height:24px;padding:0;display:block}.design-item-text small{color:#65777a;font-size:10px;display:block}.design-item>button{min-height:30px;padding:2px 6px;font-size:18px}.design-total{font-size:12px;line-height:1.4}.design-buy{color:#fffaf1;background:#103f48}.design-status{background:#fffaf1f5;border-radius:8px;max-width:min(420px,70%);padding:7px 10px;font-size:12px;position:absolute;bottom:68px;right:12px}.design-status:empty{display:none}.design-busy{pointer-events:auto;z-index:200;background:#f4efe7aa;place-items:center;font-weight:600;display:grid;position:absolute;inset:0}.design-dialog{color:#103f48;box-sizing:border-box;pointer-events:auto;background:#fffaf1;border:1px solid #c8b99f;border-radius:16px;width:min(480px,100vw - 40px);max-height:75vh;padding:20px;overflow:auto;box-shadow:0 20px 80px #0004}.design-dialog::backdrop{background:#102b3570}.design-dialog h2{margin:0;font-size:20px}.design-dialog h3{margin:18px 0 8px;font-size:15px}.design-dialog>.design-thumbnail{width:100%;height:160px;margin-top:16px}.design-dialog>button{margin:8px 0;display:block}.design-dialog p{font-size:13px;line-height:1.5}.design-dialog input{box-sizing:border-box;width:100%;margin:15px 0;padding:10px}.design-product-link{color:#165f73;margin:8px 0;text-decoration:underline;display:inline-block}.design-purchase-item{border-bottom:1px solid #e7ddcf;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:13px;display:flex}@media (width<=700px){.design-cart-toggle{inset:auto 12px 76px auto}.design-panel{width:auto;max-height:45vh;inset:auto 12px 122px}.design-bar{max-width:none}.design-status{max-width:calc(100% - 44px);bottom:118px;right:12px}.design-panel:not([hidden])~.design-status{display:none}.design-tools button{min-height:40px}}.design-share-url{box-sizing:border-box;width:100%;padding:.75rem}.design-share-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.design-share-body{overflow-wrap:anywhere;max-width:35rem}
