*{box-sizing:border-box;margin:0;padding:0}html,body,#root{color:#e0e0e0;background:#1a1a2e;width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}.app-layout{flex-direction:column;height:100%;display:flex}.toolbar{background:#16213e;border-bottom:1px solid #0f3460;flex-shrink:0;align-items:center;gap:8px;height:48px;padding:8px 12px;display:flex}.toolbar-group{align-items:center;gap:4px;display:flex}.toolbar-divider{background:#0f3460;width:1px;height:24px;margin:0 8px}.toolbar button{color:#e0e0e0;cursor:pointer;background:#0f3460;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:6px 12px;font-size:13px;transition:all .15s;display:flex}.toolbar button:hover{background:#1a1a5e}.toolbar button.active{color:#fff;background:#533483;border-color:#7c6ff7}.canvas-area{flex:1;display:flex;overflow:hidden}.canvas-container{flex:1;position:relative}.canvas-container canvas{display:block}.side-panel{background:#16213e;border-left:1px solid #0f3460;flex-shrink:0;width:240px;overflow-y:auto}.side-panel-header{border-bottom:1px solid #0f3460;padding:12px;font-size:14px;font-weight:600}.furniture-item{cursor:pointer;border-bottom:1px solid #0f3460;align-items:center;gap:8px;padding:8px 12px;transition:background .15s;display:flex}.furniture-item:hover{background:#1a1a5e}.furniture-swatch{border-radius:3px;flex-shrink:0;width:32px;height:24px}.furniture-name{font-size:13px}.furniture-dimensions{color:#888;font-size:11px}.status-bar{color:#888;background:#16213e;border-top:1px solid #0f3460;flex-shrink:0;align-items:center;gap:16px;height:28px;padding:4px 12px;font-size:12px;display:flex}.status-bar label{cursor:pointer;align-items:center;gap:4px;display:flex}.view-toggle{align-items:center;margin-left:auto;display:flex}.view-toggle button{color:#e0e0e0;cursor:pointer;background:#0f3460;border:1px solid #0f3460;padding:4px 10px;font-size:12px;transition:all .15s}.view-toggle button:first-child{border-radius:4px 0 0 4px}.view-toggle button:last-child{border-radius:0 4px 4px 0}.view-toggle button.active{color:#fff;background:#533483;border-color:#7c6ff7}.plans-dropdown{position:relative}.plans-button{color:#e0e0e0;cursor:pointer;background:#0f3460;border:1px solid #0f3460;border-radius:4px;padding:6px 12px;font-size:13px}.plans-menu{z-index:100;background:#16213e;border:1px solid #0f3460;border-radius:4px;min-width:200px;margin-top:4px;position:absolute;top:100%;left:0}.plans-menu-item{cursor:pointer;border-bottom:1px solid #0f3460;padding:8px 12px;font-size:13px}.plans-menu-item:hover{background:#1a1a5e}.plans-menu-item .plan-name{font-weight:500}.plans-menu-item .plan-date{color:#888;font-size:11px}.plans-menu-item .plan-delete{float:right;color:#e74c3c;cursor:pointer;font-size:11px}.plans-menu-actions{border-bottom:1px solid #0f3460;padding:8px 12px}.plans-menu-actions button{color:#e0e0e0;cursor:pointer;background:#0f3460;border:none;border-radius:4px;padding:4px 8px;font-size:12px}.toggle-label{cursor:pointer;white-space:nowrap;align-items:center;gap:4px;font-size:13px;display:flex}.toggle-label input[type=checkbox]{cursor:pointer}.auth-screen{color:#ddd;background:#1e1e1e;justify-content:center;align-items:center;height:100vh;font-family:system-ui,sans-serif;display:flex}.auth-form{background:#2a2a2a;border-radius:10px;flex-direction:column;gap:12px;width:300px;padding:28px;display:flex}.auth-form h1{margin:0 0 8px;font-size:18px}.auth-form label{color:#aaa;flex-direction:column;gap:4px;font-size:12px;display:flex}.auth-form input{color:#eee;background:#1e1e1e;border:1px solid #444;border-radius:6px;padding:8px}.auth-form button{color:#fff;cursor:pointer;background:#3a7afe;border:none;border-radius:6px;padding:9px}.auth-form button:disabled{opacity:.6;cursor:default}.auth-error{color:#ff7676;font-size:12px}.auth-hint{color:#777;margin:0;font-size:11px}.render-panel{color:#ddd;background:#16213e;border-left:1px solid #0f3460;flex-direction:column;flex-shrink:0;gap:8px;width:280px;padding:12px;font-family:system-ui,sans-serif;font-size:13px;display:flex;overflow:hidden}.render-panel h3{margin:0;font-size:14px}.render-form{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.render-panel textarea{resize:vertical;color:#eee;min-height:6em;font:inherit;background:#1e1e1e;border:1px solid #444;border-radius:6px;padding:6px}.render-panel button{color:#fff;cursor:pointer;background:#3a7afe;border:none;border-radius:6px;padding:8px}.render-panel button:disabled{opacity:.55;cursor:default}.render-note{color:#888;font-size:11px}.render-error{color:#ff7676;white-space:pre-wrap;font-size:12px}.render-gallery{flex-direction:column;flex:auto;gap:8px;min-height:0;display:flex;overflow-y:auto}.render-gallery img{border-radius:6px;width:100%;display:block}.toolbar-project-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;max-width:220px;padding:0 4px;font-weight:600;overflow:hidden}.picker-screen{color:#e0e0e0;background:#1a1a2e;height:100%;overflow-y:auto}.picker-inner{max-width:720px;margin:0 auto;padding:40px 24px 80px}.picker-header{justify-content:space-between;align-items:baseline;margin-bottom:24px;display:flex}.picker-header h1{font-size:22px;font-weight:600}.picker-user{color:#9aa;align-items:center;gap:10px;font-size:13px;display:flex}.picker-user button{color:#cdd;cursor:pointer;font:inherit;background:#16213e;border:1px solid #0f3460;border-radius:6px;padding:5px 10px}.picker-new{gap:8px;margin-bottom:16px;display:flex}.picker-new input{color:#eee;font:inherit;background:#11162b;border:1px solid #2a3556;border-radius:8px;flex:1;padding:9px 12px}.picker-new button{color:#fff;cursor:pointer;font:inherit;background:#3a7afe;border:none;border-radius:8px;padding:9px 16px}.picker-new button:disabled{opacity:.5;cursor:default}.picker-error{color:#ff9aa6;white-space:pre-wrap;background:#3a1620;border:1px solid #6b2233;border-radius:8px;margin-bottom:12px;padding:8px 12px;font-size:13px}.project-list{flex-direction:column;gap:8px;list-style:none;display:flex}.project-empty{color:#889;padding:16px 4px;font-size:14px}.project-empty button{color:#cdd;cursor:pointer;font:inherit;background:#16213e;border:1px solid #0f3460;border-radius:6px;margin-left:6px;padding:3px 8px}.project-card{cursor:pointer;background:#16213e;border:1px solid #0f3460;border-radius:10px;align-items:center;gap:12px;padding:14px 16px;transition:border-color .12s,background .12s;display:flex}.project-card:hover{background:#1a2647;border-color:#3a7afe}.project-card-main{flex:1;min-width:0}.project-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.project-meta{color:#8895b5;margin-top:2px;font-size:12px}.project-actions{flex-shrink:0;gap:6px;display:flex}.project-actions button{color:#cdd;cursor:pointer;font:inherit;background:#11162b;border:1px solid #2a3556;border-radius:6px;padding:5px 10px;font-size:12px}.project-actions button:hover{border-color:#4a5a86}.project-actions button.danger:hover{color:#ff9aa6;border-color:#6b2233}.picker-firstrun{text-align:center;border:1px dashed #2a3556;border-radius:12px;margin-bottom:16px;padding:28px 16px}.picker-firstrun p{color:#9aa;margin-bottom:14px;font-size:14px}.picker-firstrun .cta{color:#fff;cursor:pointer;font:inherit;background:#3a7afe;border:none;border-radius:8px;padding:11px 20px;font-size:15px}.picker-firstrun .sub{color:#778;margin-top:12px;font-size:12px;display:block}.project-name-edit{color:#fff;background:#0b1020;border:1px solid #3a7afe;border-radius:6px;width:100%;padding:3px 8px;font-family:inherit;font-size:15px;font-weight:600}.modal-backdrop{z-index:100;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{color:#ddd;background:#16213e;border:1px solid #0f3460;border-radius:12px;width:360px;padding:20px}.modal h3{margin-bottom:8px;font-size:15px}.modal p{color:#9aa;margin-bottom:16px;font-size:13px}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.modal-actions button{color:#cdd;cursor:pointer;font:inherit;background:#11162b;border:1px solid #2a3556;border-radius:7px;padding:7px 14px}.modal-actions button.danger{color:#fff;background:#6b2233;border-color:#6b2233}.canvas-area{position:relative}.howitworks{color:#ddd;z-index:20;background:#16213ef5;border:1px solid #0f3460;border-radius:12px;max-width:320px;padding:14px 16px;font-size:13px;position:absolute;bottom:16px;left:16px;box-shadow:0 6px 24px #0006}.howitworks h4{color:#fff;margin-bottom:8px;font-size:13px}.howitworks ol{margin:0 0 12px 18px;padding:0}.howitworks li{margin-bottom:4px}.howitworks button{color:#fff;cursor:pointer;font:inherit;background:#3a7afe;border:none;border-radius:7px;padding:6px 12px}.toolbar-overflow{position:relative}.toolbar-overflow-menu{z-index:30;background:#16213e;border:1px solid #0f3460;border-radius:8px;flex-direction:column;gap:4px;min-width:170px;padding:6px;display:flex;position:absolute;top:110%;right:0;box-shadow:0 6px 24px #0006}.toolbar-overflow-menu button,.toolbar-overflow-menu label{text-align:left;white-space:nowrap;justify-content:flex-start;width:100%}.render-progress{background:#11162b;border-radius:3px;width:100%;height:6px;overflow:hidden}.render-progress>div{background:#3a7afe;height:100%;transition:width .3s}.github-btn{color:#fff;cursor:pointer;font:inherit;background:#24292f;border:1px solid #444c56;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 16px;font-size:15px;display:inline-flex}.github-btn:hover{background:#30363d}.auth-divider{color:#667;text-align:center;text-transform:uppercase;letter-spacing:1px;margin:14px 0 8px;font-size:11px}.auth-notice{color:#ffd9a6;background:#3a2a16;border:1px solid #6b5223;border-radius:8px;margin-bottom:12px;padding:8px 12px;font-size:13px}
