@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/dbbdd2d89d2ef0ef-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a06229eb79a83cfc-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c9e224327ce7933e-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d85064eaed4b8683-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/db234bd00cda6a96-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Press Start\ 2P Fallback;src:local("Arial");ascent-override:44.58%;descent-override:0.00%;line-gap-override:0.00%;size-adjust:224.32%}.__className_6d0c14{font-family:Press Start\ 2P,Press Start\ 2P Fallback;font-weight:400;font-style:normal}.__variable_6d0c14{--font-pixel-next:"Press Start 2P","Press Start 2P Fallback"}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-body-next:"Inter","Inter Fallback"}:root{--bg-dark:#1a1a2e;--bg-darker:#0f0f1a;--bg-panel:#16213e;--bg-panel-hover:#1c2d50;--bg-surface:#0a0a15;--color-primary:#f7d354;--color-primary-dim:#c4a430;--color-secondary:#5bc0eb;--color-accent:#ff6b6b;--color-success:#57cc99;--color-danger:#e63946;--color-purple:#9b5de5;--color-orange:#f77f00;--text-primary:#e8e8e8;--text-secondary:#8a8aaa;--text-muted:#5a5a7a;--border-color:#3a3a5c;--border-highlight:#5a5a8c;--pixel-border:3px solid var(--border-color);--pixel-border-highlight:3px solid var(--border-highlight);--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--font-pixel:var(--font-pixel-next,"Press Start 2P"),monospace;--font-body:var(--font-body-next,"Inter"),system-ui,sans-serif;--topbar-height:52px;--sidebar-width:260px;--drawer-width:340px;--shadow-pixel:4px 4px 0px rgba(0,0,0,0.5);--shadow-pixel-sm:2px 2px 0px rgba(0,0,0,0.4);--shadow-glow:0 0 12px rgba(247,211,84,0.3)}*,:after,:before{margin:0;padding:0;box-sizing:border-box}body,html{width:100%;height:100%;overflow:hidden;background:var(--bg-darker);color:var(--text-primary);font-family:var(--font-body);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.pixel-text{font-family:var(--font-pixel);font-size:10px;letter-spacing:.5px;text-transform:uppercase;line-height:1.6}#app{display:grid;grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:var(--topbar-height) 1fr;grid-template-areas:"topbar topbar" "sidebar canvas";width:100%;height:100%}#topbar{grid-area:topbar;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-lg);background:var(--bg-panel);border-bottom:var(--pixel-border);z-index:100}.topbar-left .logo{font-size:11px;color:var(--color-primary);text-shadow:2px 2px 0 rgba(0,0,0,.5)}.topbar-center{flex:1 1;display:flex;justify-content:center}.topbar-right{display:flex;gap:var(--space-sm)}.pixel-btn{font-family:var(--font-pixel);font-size:9px;padding:var(--space-sm) var(--space-md);background:var(--bg-panel);color:var(--text-primary);border:var(--pixel-border);cursor:pointer;transition:all .1s;text-transform:uppercase;white-space:nowrap;image-rendering:pixelated;box-shadow:var(--shadow-pixel-sm);position:relative}.pixel-btn:hover{background:var(--bg-panel-hover);border-color:var(--border-highlight);transform:translate(-1px,-1px);box-shadow:3px 3px 0 rgba(0,0,0,.5)}.pixel-btn:active{transform:translate(1px,1px);box-shadow:1px 1px 0 rgba(0,0,0,.5)}.pixel-btn-accent{background:var(--color-primary);color:var(--bg-darker);border-color:var(--color-primary-dim)}.pixel-btn-accent:hover{background:#ffe066;border-color:var(--color-primary);box-shadow:3px 3px 0 rgba(0,0,0,.5),0 0 16px rgba(247,211,84,.3)}.pixel-btn-danger{background:var(--color-danger);border-color:#b22b35}.pixel-btn-danger:hover{background:#ff4d5a;border-color:var(--color-danger)}.pixel-btn-sm{padding:var(--space-xs) var(--space-sm);font-size:8px}.pixel-btn-block{width:100%;text-align:center}.pixel-btn-ghost{background:transparent;border-color:transparent;box-shadow:none}.pixel-btn-ghost:hover{background:var(--bg-panel-hover);border-color:var(--border-color)}#sidebar{grid-area:sidebar;background:var(--bg-panel);border-right:var(--pixel-border);overflow-y:auto;display:flex;flex-direction:column;z-index:90}#sidebar::-webkit-scrollbar{width:6px}#sidebar::-webkit-scrollbar-track{background:var(--bg-darker)}#sidebar::-webkit-scrollbar-thumb{background:var(--border-color)}.sidebar-section{padding:var(--space-lg);border-bottom:var(--pixel-border)}.section-title{font-size:9px;color:var(--color-secondary);text-shadow:1px 1px 0 rgba(0,0,0,.5)}.room-list,.section-title{margin-bottom:var(--space-md)}.room-list{display:flex;flex-direction:column;gap:var(--space-xs)}.room-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:var(--bg-surface);border:2px solid transparent;cursor:pointer;transition:all .15s;font-family:var(--font-pixel);font-size:8px}.room-item:hover{background:var(--bg-panel-hover);border-color:var(--border-color)}.room-item.active{border-color:var(--color-primary);background:rgba(247,211,84,.08);box-shadow:inset 0 0 8px rgba(247,211,84,.1)}.room-item-name{color:var(--text-primary);overflow:hidden;text-overflow:ellipsis}.room-item-count{color:var(--text-muted);font-size:7px}.room-item-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.room-item:hover .room-item-actions{opacity:1}.room-item-btn{background:none;border:none;cursor:pointer;font-size:12px;padding:2px;line-height:1}.room-item-btn:hover{transform:scale(1.2)}.furniture-catalog{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-sm);gap:var(--space-sm)}.catalog-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-md) var(--space-sm);background:var(--bg-surface);border:2px solid var(--border-color);cursor:pointer;transition:all .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.catalog-item:hover{border-color:var(--color-primary);background:rgba(247,211,84,.06);transform:translate(-1px,-1px);box-shadow:2px 2px 0 rgba(0,0,0,.4)}.catalog-item:active{transform:translate(1px,1px);box-shadow:none}.catalog-item-icon{font-size:24px;image-rendering:pixelated}.catalog-item-label{font-size:7px;text-align:center}.catalog-item-label,.room-info{font-family:var(--font-pixel);color:var(--text-secondary)}.room-info{font-size:8px;line-height:2}.room-info-row{display:flex;justify-content:space-between}.room-info-value{color:var(--color-primary)}#canvas-container{grid-area:canvas;position:relative;overflow:hidden;background:var(--bg-darker)}#scene-canvas{display:block;width:100%;height:100%;image-rendering:pixelated}.empty-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:5}.empty-state-icon{font-size:64px;margin-bottom:var(--space-lg);animation:float 3s ease-in-out infinite}.empty-state .pixel-text{font-size:12px;color:var(--color-primary);text-shadow:2px 2px 0 rgba(0,0,0,.5);margin-bottom:var(--space-sm)}.empty-state-sub{color:var(--text-muted);font-size:13px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.furniture-bar{position:absolute;bottom:var(--space-lg);left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-sm) var(--space-lg);background:var(--bg-panel);border:var(--pixel-border);box-shadow:var(--shadow-pixel);z-index:10;animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateX(-50%) translateY(20px);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}.furniture-bar .pixel-text{color:var(--color-primary);font-size:9px}.furniture-bar-actions{display:flex;gap:var(--space-sm)}.storage-drawer{position:fixed;top:var(--topbar-height);right:calc(-1 * var(--drawer-width));width:var(--drawer-width);height:calc(100vh - var(--topbar-height));background:var(--bg-panel);border-left:var(--pixel-border);display:flex;flex-direction:column;z-index:200;transform:translateX(0);transition:transform .25s ease-out;box-shadow:-4px 0 16px rgba(0,0,0,.4)}.storage-drawer.open{transform:translateX(calc(-1 * var(--drawer-width)))}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg);border-bottom:var(--pixel-border)}.drawer-header .pixel-text{font-size:10px;color:var(--color-primary)}.drawer-content{flex:1 1;overflow-y:auto;padding:var(--space-lg)}.drawer-content::-webkit-scrollbar{width:6px}.drawer-content::-webkit-scrollbar-thumb{background:var(--border-color)}.drawer-footer{padding:var(--space-lg);border-top:var(--pixel-border)}.empty-storage{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl) 0}.empty-storage-icon{font-size:48px;margin-bottom:var(--space-md)}.empty-storage .pixel-text{font-size:10px;color:var(--text-muted);margin-bottom:var(--space-xs)}.empty-storage-sub{color:var(--text-muted);font-size:12px}.stored-items-list{display:flex;flex-direction:column;gap:var(--space-sm)}.stored-item{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:var(--bg-surface);border:2px solid var(--border-color);transition:all .15s;position:relative}.stored-item:hover{border-color:var(--border-highlight)}.stored-item-icon{font-size:20px;flex-shrink:0;margin-top:2px}.stored-item-info{flex:1 1;min-width:0}.stored-item-name{font-family:var(--font-pixel);font-size:8px;color:var(--text-primary);margin-bottom:2px;word-break:break-word}.stored-item-desc{font-size:11px;color:var(--text-secondary);margin-bottom:4px}.stored-item-meta{display:flex;gap:var(--space-sm);flex-wrap:wrap}.item-tag{font-size:6px;padding:2px 6px;background:rgba(91,192,235,.15);color:var(--color-secondary);border:1px solid rgba(91,192,235,.3)}.item-qty,.item-tag{font-family:var(--font-pixel)}.item-qty{font-size:7px;color:var(--color-success)}.stored-item-delete{position:absolute;top:4px;right:4px;background:none;border:none;cursor:pointer;font-size:12px;opacity:0;transition:opacity .15s;padding:2px}.stored-item:hover .stored-item-delete{opacity:1}.stored-item-delete:hover{transform:scale(1.2)}.category-badge{font-family:var(--font-pixel);font-size:6px;padding:2px 6px;border:1px solid}.category-badge.clothing{background:rgba(155,93,229,.15);color:var(--color-purple);border-color:rgba(155,93,229,.3)}.category-badge.documents{background:rgba(91,192,235,.15);color:var(--color-secondary);border-color:rgba(91,192,235,.3)}.category-badge.electronics{background:rgba(247,127,0,.15);color:var(--color-orange);border-color:rgba(247,127,0,.3)}.category-badge.tools{background:rgba(87,204,153,.15);color:var(--color-success);border-color:rgba(87,204,153,.3)}.category-badge.books{background:rgba(247,211,84,.15);color:var(--color-primary);border-color:rgba(247,211,84,.3)}.category-badge.kitchenware{background:rgba(255,107,107,.15);color:var(--color-accent);border-color:rgba(255,107,107,.3)}.category-badge.toys{background:rgba(155,93,229,.15);color:var(--color-purple);border-color:rgba(155,93,229,.3)}.category-badge.misc{background:rgba(138,138,170,.15);color:var(--text-secondary);border-color:rgba(138,138,170,.3)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:500;animation:fadeIn .15s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-panel);padding:var(--space-xl);width:90%;max-width:440px;box-shadow:var(--shadow-pixel);animation:modalIn .2s ease-out}@keyframes modalIn{0%{transform:scale(.9) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.pixel-border{border:var(--pixel-border);outline:2px solid var(--bg-darker);outline-offset:-1px}.modal-title{font-size:12px;color:var(--color-primary);margin-bottom:var(--space-xl);text-shadow:2px 2px 0 rgba(0,0,0,.5)}.modal-form{display:flex;flex-direction:column;gap:var(--space-lg)}.form-row{display:flex;gap:var(--space-md)}.form-row .pixel-label{flex:1 1}.modal-actions{display:flex;gap:var(--space-md);justify-content:flex-end;margin-top:var(--space-sm)}.pixel-label{display:flex;flex-direction:column;gap:var(--space-xs);font-family:var(--font-pixel);font-size:8px;color:var(--text-secondary)}.pixel-input{font-family:var(--font-body);font-size:14px;padding:var(--space-sm) var(--space-md);background:var(--bg-surface);color:var(--text-primary);border:2px solid var(--border-color);outline:none;transition:border-color .15s}.pixel-input:focus{border-color:var(--color-primary);box-shadow:0 0 8px rgba(247,211,84,.2)}.pixel-input::placeholder{color:var(--text-muted)}.pixel-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%238a8aaa' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px}.pixel-textarea{resize:vertical;min-height:50px}.pixel-color{width:40px;height:32px;border:2px solid var(--border-color);cursor:pointer;background:none;padding:0}.pixel-color::-webkit-color-swatch-wrapper{padding:2px}.pixel-color::-webkit-color-swatch{border:none}.color-picker-row{display:flex;align-items:center;gap:var(--space-md)}.color-label{font-family:var(--font-body);font-size:12px;color:var(--text-muted)}.search-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;z-index:600;animation:fadeIn .15s}.search-container{background:var(--bg-panel);width:90%;max-width:560px;box-shadow:var(--shadow-pixel)}.search-header{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:var(--pixel-border)}.search-icon{font-size:20px}.search-input{flex:1 1;border:none!important;background:transparent!important;font-size:16px;box-shadow:none!important}.search-results{max-height:400px;overflow-y:auto}.search-result{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);cursor:pointer;transition:background .1s;border-bottom:1px solid var(--bg-surface)}.search-result:hover{background:var(--bg-panel-hover)}.search-result-icon{font-size:18px;flex-shrink:0}.search-result-info{flex:1 1}.search-result-name{font-family:var(--font-pixel);font-size:9px;color:var(--text-primary);margin-bottom:2px}.search-result-path{font-size:11px;color:var(--text-muted)}.search-result-path span{color:var(--text-secondary)}.search-no-results{padding:var(--space-xl);text-align:center;color:var(--text-muted);font-family:var(--font-pixel);font-size:9px}.toast-container{position:fixed;bottom:var(--space-lg);right:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm);z-index:700;pointer-events:none}.toast{padding:var(--space-md) var(--space-lg);background:var(--bg-panel);border:var(--pixel-border);box-shadow:var(--shadow-pixel);font-family:var(--font-pixel);font-size:8px;color:var(--text-primary);animation:toastIn .2s ease-out;min-width:200px;display:flex;align-items:center;gap:var(--space-md)}.toast.toast-out{animation:toastOut .2s ease-in forwards}.toast-success{border-color:var(--color-success)}.toast-error{border-color:var(--color-danger)}.toast-info{border-color:var(--color-secondary)}@keyframes toastIn{0%{transform:translateX(100px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes toastOut{0%{transform:translateX(0);opacity:1}to{transform:translateX(100px);opacity:0}}#canvas-container:after{inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 0,rgba(0,0,0,.03) 4px);z-index:2}#canvas-container:after,.modal:before{content:"";position:absolute;pointer-events:none}.modal:before{top:-2px;left:-2px;right:-2px;bottom:-2px;border:2px solid var(--color-primary);opacity:.3}.modal{position:relative}.furniture-badge{position:absolute;background:var(--color-primary);color:var(--bg-darker);font-family:var(--font-pixel);font-size:8px;padding:2px 6px;border:2px solid var(--color-primary-dim);box-shadow:var(--shadow-pixel-sm);pointer-events:none;z-index:5;transform:translate(-50%,-100%);white-space:nowrap}@media (max-width:768px){#app{grid-template-columns:1fr;grid-template-areas:"topbar" "canvas"}#sidebar{position:fixed;left:-var(--sidebar-width);top:var(--topbar-height);height:calc(100vh - var(--topbar-height));z-index:150;transition:transform .25s ease-out}#sidebar.open{transform:translateX(var(--sidebar-width))}}.pixel-tooltip{position:absolute;background:var(--bg-darker);color:var(--text-primary);font-family:var(--font-pixel);font-size:7px;padding:var(--space-xs) var(--space-sm);border:2px solid var(--border-color);box-shadow:var(--shadow-pixel-sm);pointer-events:none;z-index:300;white-space:nowrap}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.loading-shimmer{background:linear-gradient(90deg,var(--bg-surface) 25%,var(--bg-panel-hover) 50%,var(--bg-surface) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.fade-enter{opacity:0;transition:opacity .2s}.fade-enter-active{opacity:1}