:root,body.theme-light{--bg-core: #f8fafc;--bg-surface: #ffffff;--bg-surface-elevated: #ffffff;--bg-glass: rgba(255, 255, 255, .88);--bg-glass-heavy: rgba(255, 255, 255, .96);--border-subtle: rgba(15, 23, 42, .08);--border-glass: rgba(15, 23, 42, .12);--border-accent: rgba(217, 119, 6, .45);--amber-primary: #d97706;--amber-glow: rgba(217, 119, 6, .18);--orange-homedepot: #ea580c;--orange-homedepot-bg: #fff7ed;--blue-amazon: #b45309;--blue-amazon-bg: #fef3c7;--emerald-ready: #059669;--emerald-ready-bg: #ecfdf5;--cyan-tech: #0284c7;--purple-magic: #7c3aed;--red-danger: #dc2626;--font-heading: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", monospace;--text-main: #0f172a;--text-muted: #475569;--text-dim: #94a3b8;--text-inverse: #ffffff;--note-wood: #fffbeb;--note-wood-border: #f59e0b;--note-metal: #f8fafc;--note-metal-border: #94a3b8;--note-amber: #fffbeb;--note-amber-border: #d97706;--note-emerald: #ecfdf5;--note-emerald-border: #10b981;--note-cyan: #f0f9ff;--note-cyan-border: #0ea5e9;--shadow-sm: 0 1px 3px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .04);--shadow-card: 0 10px 25px -5px rgba(15, 23, 42, .08), 0 8px 10px -6px rgba(15, 23, 42, .04), 0 0 1px rgba(15, 23, 42, .15);--shadow-hover: 0 20px 35px -5px rgba(15, 23, 42, .14), 0 0 20px rgba(217, 119, 6, .15);--shadow-modal: 0 25px 60px -15px rgba(15, 23, 42, .25), 0 0 1px rgba(15, 23, 42, .15);--grid-dot-primary: rgba(217, 119, 6, .22);--grid-dot-secondary: rgba(15, 23, 42, .08);--header-height: 64px;--shelf-height: 190px;--shelf-collapsed-height: 48px}body.theme-dark{--bg-core: #090d16;--bg-surface: #111827;--bg-surface-elevated: #1a2234;--bg-glass: rgba(17, 24, 39, .75);--bg-glass-heavy: rgba(13, 19, 32, .92);--border-subtle: rgba(255, 255, 255, .08);--border-glass: rgba(255, 255, 255, .12);--border-accent: rgba(245, 158, 11, .4);--text-main: #f3f4f6;--text-muted: #9ca3af;--text-dim: #6b7280;--text-inverse: #090d16;--grid-dot-primary: rgba(245, 158, 11, .12);--grid-dot-secondary: rgba(255, 255, 255, .04);--shadow-card: 0 10px 25px -5px rgba(0, 0, 0, .5), 0 8px 10px -6px rgba(0, 0, 0, .5);--shadow-hover: 0 20px 35px -5px rgba(0, 0, 0, .7), 0 0 25px rgba(245, 158, 11, .15);--shadow-modal: 0 25px 60px -15px rgba(0, 0, 0, .85)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{width:100%;height:100%;overflow:hidden;font-family:var(--font-body);background-color:var(--bg-core);color:var(--text-main);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;transition:background-color .25s ease,color .25s ease}input,textarea,select,button{font-family:inherit;-webkit-user-select:text;user-select:text}.app-root{display:flex;flex-direction:column;width:100vw;height:100vh;position:relative;overflow:hidden}.app-header{height:var(--header-height);background:var(--bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 20px;z-index:100;gap:16px;box-shadow:0 1px 4px #0f172a0a}.header-left,.header-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand{display:flex;align-items:center;gap:10px;cursor:pointer}.brand-icon{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#f59e0b,#d97706);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 2px 10px #f59e0b59}.brand-text{display:flex;flex-direction:column}.brand-title{font-family:var(--font-heading);font-size:1.15rem;font-weight:800;letter-spacing:-.02em;color:var(--text-main)}.brand-sub{font-size:.72rem;color:var(--text-muted);font-family:var(--font-mono);font-weight:600;letter-spacing:.02em}.view-toggle-group{display:flex;background:var(--bg-core);padding:3px;border-radius:9px;border:1px solid var(--border-subtle);margin-left:6px}.toggle-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;border:none;background:transparent;color:var(--text-muted);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.toggle-btn.active{background:#fff;color:var(--amber-primary);box-shadow:0 1px 4px #0f172a1a;font-weight:700}body.theme-dark .toggle-btn.active{background:var(--amber-primary);color:#111827}.header-center{display:flex;align-items:center;gap:12px;flex:1;max-width:680px;justify-content:center}.search-box{position:relative;display:flex;align-items:center;width:100%;max-width:380px}.search-icon{position:absolute;left:12px;color:var(--text-dim);pointer-events:none}.search-box input{width:100%;height:38px;padding:0 34px 0 38px;background:var(--bg-core);border:1px solid var(--border-subtle);border-radius:10px;color:var(--text-main);font-size:.85rem;outline:none;transition:all .2s ease}.search-box input:focus{border-color:var(--amber-primary);background:#fff;box-shadow:0 0 0 3px var(--amber-glow)}.clear-btn{position:absolute;right:8px;background:none;border:none;color:var(--text-dim);cursor:pointer;padding:4px}.filter-chips{display:flex;align-items:center;gap:6px}.filter-chip{padding:5px 11px;border-radius:20px;font-size:.78rem;font-weight:600;background:var(--bg-core);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;transition:all .15s ease}.filter-chip:hover{background:#fff;color:var(--text-main)}.filter-chip.active{background:#fffbeb;border-color:var(--amber-primary);color:var(--amber-primary)}body.theme-dark .filter-chip.active{background:#f59e0b2e;border-color:var(--amber-primary);color:var(--amber-primary)}.btn-primary{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-family:var(--font-heading);font-weight:700;font-size:.88rem;padding:8px 16px;border-radius:9px;border:none;cursor:pointer;box-shadow:0 2px 8px #f59e0b59;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 14px #f59e0b80}.btn-secondary{display:flex;align-items:center;gap:8px;background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-main);font-size:.84rem;font-weight:600;padding:8px 14px;border-radius:9px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.btn-secondary:hover{border-color:var(--amber-primary);color:var(--amber-primary)}.btn-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:9px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-muted);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.btn-icon:hover{color:var(--text-main);border-color:var(--amber-primary)}.btn-icon.danger:hover{color:var(--red-danger);border-color:var(--red-danger);background:#fef2f2}.viewport-container{flex:1;position:relative;overflow:hidden;display:flex;flex-direction:column}.whiteboard-canvas{position:absolute;top:0;left:0;width:100%;height:calc(100% - var(--shelf-height));overflow:hidden;cursor:grab;transition:height .3s ease}.whiteboard-canvas.shelf-collapsed{height:calc(100% - var(--shelf-collapsed-height))}.whiteboard-canvas:active{cursor:grabbing}.canvas-grid{position:absolute;width:12000px;height:12000px;top:-5000px;left:-5000px;background-color:var(--bg-core);background-image:radial-gradient(var(--grid-dot-primary) 1.5px,transparent 1.5px),radial-gradient(var(--grid-dot-secondary) 1.5px,transparent 1.5px);background-size:36px 36px,72px 72px;transform-origin:0 0;will-change:transform}.notes-container{position:absolute;width:100%;height:100%;pointer-events:none}.canvas-toolbar{position:absolute;bottom:24px;left:24px;background:var(--bg-glass-heavy);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:12px;padding:6px 10px;display:flex;align-items:center;gap:8px;z-index:50;box-shadow:var(--shadow-card)}.tool-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-main);font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.tool-btn:hover{background:#fffbeb;border-color:var(--amber-primary);color:var(--amber-primary)}.zoom-text{font-family:var(--font-mono);font-size:.8rem;font-weight:700;color:var(--text-muted);min-width:44px;text-align:center}.tool-divider{width:1px;height:20px;background:var(--border-subtle);margin:0 4px}.tool-btn.add-btn{background:var(--amber-primary);color:#fff;border:none}.ai-quick-banner{position:absolute;top:18px;left:50%;transform:translate(-50%);width:90%;max-width:720px;background:var(--bg-glass-heavy);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-accent);box-shadow:0 10px 30px #0f172a1a,0 0 15px #d977061a;border-radius:14px;padding:8px 14px;display:flex;align-items:center;gap:10px;z-index:60;transition:all .3s ease}.ai-sparkle-icon{font-size:1.25rem;color:var(--amber-primary)}.ai-quick-banner input{flex:1;background:transparent;border:none;outline:none;color:var(--text-main);font-size:.92rem;font-family:var(--font-body)}.ai-quick-banner input::placeholder{color:var(--text-dim)}.btn-ai-magic{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-weight:700;font-size:.84rem;border:none;border-radius:8px;padding:8px 16px;cursor:pointer;white-space:nowrap;box-shadow:0 2px 10px #f59e0b4d;transition:all .2s ease}.btn-ai-magic:hover{transform:scale(1.02);box-shadow:0 4px 16px #f59e0b73}.ai-quick-banner.ai-generating{border-color:var(--amber-primary);box-shadow:0 0 25px #d977064d,0 10px 30px #0f172a1f;animation:bannerPulse 1.8s infinite ease-in-out}@keyframes bannerPulse{0%,to{border-color:#d9770666;box-shadow:0 0 15px #d9770626}50%{border-color:#d97706e6;box-shadow:0 0 25px #d9770659}}.spinner-inline{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite;vertical-align:middle;margin-right:6px}.engine-toggle-pill{display:flex;background:var(--bg-core);padding:3px;border-radius:9px;border:1px solid var(--border-subtle);flex-shrink:0;gap:2px}.engine-pill-btn{border:none;background:transparent;padding:4px 10px;border-radius:6px;font-size:.76rem;font-weight:700;color:var(--text-muted);cursor:pointer;transition:all .15s ease;white-space:nowrap}.engine-pill-btn:hover{color:var(--text-main)}.engine-pill-btn.active{background:#fff;color:var(--amber-primary);box-shadow:0 1px 4px #0f172a14}body.theme-dark .engine-pill-btn.active{background:#f59e0b33;color:#f59e0b}.live-voice-hud{position:fixed;top:76px;left:50%;transform:translate(-50%);width:90%;max-width:680px;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:2px solid var(--amber-primary);box-shadow:0 20px 50px #0f172a2e,0 0 25px #d9770640;border-radius:16px;padding:12px 18px;display:flex;align-items:center;gap:14px;z-index:1000;animation:hudSlideDown .25s cubic-bezier(.16,1,.3,1)}body.theme-dark .live-voice-hud{background:#111827f2;border-color:#f59e0b;box-shadow:0 20px 50px #000c,0 0 25px #f59e0b40}@keyframes hudSlideDown{0%{opacity:0;transform:translate(-50%,-15px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}.hud-soundwave{display:flex;align-items:center;gap:3px;height:24px;flex-shrink:0}.hud-soundwave span{display:block;width:3.5px;background:var(--amber-primary);border-radius:2px;animation:waveBar 1.2s infinite ease-in-out}.hud-soundwave span:nth-child(1){height:8px;animation-delay:.1s}.hud-soundwave span:nth-child(2){height:18px;animation-delay:.2s}.hud-soundwave span:nth-child(3){height:24px;animation-delay:.3s}.hud-soundwave span:nth-child(4){height:14px;animation-delay:.4s}.hud-soundwave span:nth-child(5){height:10px;animation-delay:.5s}@keyframes waveBar{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1.2)}}.hud-content{flex:1;min-width:0}.hud-status{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--amber-primary);margin-bottom:2px}.hud-transcript{font-size:.95rem;font-weight:600;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.hud-btn-done{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;font-weight:700;font-size:.82rem;padding:6px 14px;border-radius:8px;cursor:pointer;transition:transform .15s ease}.hud-btn-done:hover{transform:scale(1.04)}.hud-btn-cancel{background:var(--bg-core);border:1px solid var(--border-subtle);color:var(--text-muted);width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.85rem;cursor:pointer}.hud-btn-cancel:hover{color:var(--text-main)}.sticky-note{position:absolute;width:280px;background:#fff;border-radius:14px;border:1px solid var(--border-glass);box-shadow:var(--shadow-card);padding:14px;cursor:move;pointer-events:auto;transition:box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),border-color .2s ease;will-change:transform,left,top}.sticky-note:hover{transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow-hover);z-index:20}.sticky-note.dragging{opacity:.9;box-shadow:0 25px 50px #0f172a40,0 0 30px var(--amber-glow);z-index:1000!important;cursor:grabbing}.sticky-note:before{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);width:50px;height:16px;background:#f59e0b33;border-radius:2px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 1px 2px #0f172a14}.sticky-note.color-amber{border-top:5px solid var(--amber-primary)}.sticky-note.color-orange{border-top:5px solid var(--orange-homedepot)}.sticky-note.color-emerald{border-top:5px solid var(--emerald-ready)}.sticky-note.color-cyan{border-top:5px solid var(--cyan-tech)}.sticky-note-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.sticky-bin-badge{display:inline-flex;align-items:center;gap:4px;background:#ecfdf5;border:1px solid #10b981;color:#059669;font-family:var(--font-mono);font-size:.72rem;font-weight:800;padding:3px 8px;border-radius:6px}.sticky-status-badge{font-size:.68rem;font-weight:700;text-transform:uppercase;padding:2px 7px;border-radius:4px;background:#f1f5f9;color:var(--text-muted)}.sticky-status-badge.today{background:#fffbeb;color:#d97706;border:1px solid #f59e0b}.sticky-image-wrap{width:100%;height:140px;border-radius:9px;overflow:hidden;background:#f1f5f9;margin-bottom:10px;position:relative;border:1px solid var(--border-subtle)}.sticky-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.sticky-note:hover .sticky-image{transform:scale(1.05)}.sticky-title{font-family:var(--font-heading);font-size:1.05rem;font-weight:800;line-height:1.3;margin-bottom:6px;color:var(--text-main)}.sticky-idea{font-size:.78rem;color:var(--text-muted);line-height:1.4;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sticky-footer{display:flex;flex-direction:column;gap:8px;padding-top:8px;border-top:1px solid var(--border-subtle)}.store-tags-row{display:flex;gap:6px;flex-wrap:wrap}.store-badge{font-size:.68rem;font-weight:700;padding:2px 6px;border-radius:4px}.store-badge.homedepot{background:#fff7ed;color:#c2410c;border:1px solid #ea580c}.store-badge.amazon{background:#fef3c7;color:#b45309;border:1px solid #d97706}.parts-progress-row{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;font-weight:600;color:var(--text-muted)}.parts-progress-bar{flex:1;height:6px;background:#e2e8f0;border-radius:3px;margin-left:8px;overflow:hidden}.parts-progress-fill{height:100%;background:linear-gradient(to right,#f59e0b,#10b981);border-radius:3px;transition:width .3s ease}.sticky-hint{font-size:.65rem;color:var(--text-dim);text-align:center;margin-top:4px;font-style:italic}.today-focus-shelf{position:absolute;bottom:0;left:0;width:100%;height:var(--shelf-height);background:var(--bg-glass-heavy);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:2px solid var(--amber-primary);box-shadow:0 -4px 30px #0f172a14;z-index:80;display:flex;flex-direction:column;transition:height .3s cubic-bezier(.4,0,.2,1)}.today-focus-shelf.collapsed{height:var(--shelf-collapsed-height)}.shelf-header{height:48px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-subtle);cursor:pointer}.shelf-title{display:flex;align-items:center;gap:10px}.pulse-dot{width:10px;height:10px;border-radius:50%;background:#10b981;box-shadow:0 0 10px #10b981;animation:pulse-ring 2s infinite}@keyframes pulse-ring{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1.1);box-shadow:0 0 0 8px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.shelf-title h4{font-family:var(--font-heading);font-size:.95rem;font-weight:800;letter-spacing:.04em;color:var(--text-main)}.shelf-subtitle{font-size:.75rem;color:var(--text-muted);margin-left:8px}.shelf-stats{display:flex;align-items:center;gap:12px}.today-counter{font-family:var(--font-mono);font-size:.78rem;font-weight:800;background:#fffbeb;color:#b45309;border:1px solid #f59e0b;padding:3px 10px;border-radius:12px}.btn-icon-sm{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem}.shelf-dropzone{flex:1;display:flex;align-items:center;gap:16px;padding:12px 20px;overflow-x:auto;overflow-y:hidden;transition:background-color .2s ease}.shelf-dropzone.dragover{background:#fffbeb;border:2px dashed var(--amber-primary)}.dropzone-empty-hint{width:100%;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:.85rem;font-weight:600;border:2px dashed #cbd5e1;border-radius:12px;height:100%}.today-mini-card{width:240px;min-width:240px;height:110px;background:#fff;border:1px solid var(--amber-primary);border-radius:10px;padding:10px;display:flex;gap:10px;cursor:pointer;box-shadow:var(--shadow-sm);transition:all .2s ease;position:relative}.today-mini-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #d9770633}.mini-card-thumb{width:65px;height:85px;border-radius:6px;object-fit:cover;background:#f1f5f9}.mini-card-content{flex:1;display:flex;flex-direction:column;justify-content:space-between}.mini-card-title{font-family:var(--font-heading);font-size:.88rem;font-weight:800;color:var(--text-main);line-height:1.2}.mini-card-bin{font-family:var(--font-mono);font-size:.68rem;font-weight:800;color:#059669}.mini-card-progress{font-size:.68rem;color:var(--text-muted)}.kanban-board{position:absolute;top:0;left:0;width:100%;height:calc(100% - var(--shelf-height));display:flex;gap:16px;padding:20px;overflow-x:auto;overflow-y:hidden;background:var(--bg-core)}.kanban-column{flex:0 0 300px;background:#fff;border:1px solid var(--border-subtle);border-radius:14px;display:flex;flex-direction:column;height:100%;box-shadow:var(--shadow-sm)}.column-header{padding:14px 16px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.col-title-wrap{display:flex;align-items:center;gap:8px}.col-title-wrap h3{font-family:var(--font-heading);font-size:.95rem;font-weight:800;color:var(--text-main)}.status-indicator{width:8px;height:8px;border-radius:50%}.status-backlog{background:#3b82f6}.status-ordered{background:#f97316}.status-ready{background:#10b981}.status-today{background:#d97706}.status-completed{background:#a855f7}.count-badge{font-family:var(--font-mono);font-size:.75rem;font-weight:700;background:#f1f5f9;padding:2px 7px;border-radius:10px;color:var(--text-muted)}.kanban-dropzone{flex:1;padding:12px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.kanban-dropzone.dragover{background:#fffbeb;border:2px dashed var(--amber-primary)}.kanban-card{background:#fff;border:1px solid var(--border-glass);border-radius:10px;padding:12px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.kanban-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);border-color:var(--amber-primary)}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172a73;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:200;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container.project-hub{width:100%;max-width:900px;max-height:92vh;background:#fff;border:1px solid var(--border-glass);border-radius:18px;box-shadow:var(--shadow-modal);display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:14px 20px;background:#f8fafc;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.modal-header-left,.modal-header-right{display:flex;align-items:center;gap:12px}.category-pill{font-size:.72rem;font-weight:700;text-transform:uppercase;background:#e2e8f0;padding:4px 9px;border-radius:6px;color:var(--text-main)}.bin-badge-editable{display:flex;align-items:center;gap:4px;background:#ecfdf5;border:1px solid #10b981;padding:3px 8px;border-radius:8px}.bin-input-pill{background:transparent;border:none;color:#059669;font-family:var(--font-mono);font-size:.78rem;font-weight:800;width:70px;outline:none}.status-dropdown{background:#fff;border:1px solid #cbd5e1;color:var(--text-main);padding:5px 10px;border-radius:8px;font-size:.78rem;font-weight:600;outline:none}.btn-today-toggle{background:#fffbeb;border:1px solid var(--amber-primary);color:#b45309;font-weight:700;font-size:.8rem;padding:6px 12px;border-radius:8px;cursor:pointer;transition:all .2s ease}.btn-today-toggle.active{background:var(--amber-primary);color:#fff}.project-hero{padding:20px;display:flex;gap:20px;background:#f8fafc;border-bottom:1px solid var(--border-subtle)}.hero-image-wrap{width:220px;height:150px;border-radius:12px;overflow:hidden;position:relative;flex-shrink:0;background:#e2e8f0;border:1px solid var(--border-subtle)}.hero-image{width:100%;height:100%;object-fit:cover}.image-loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:.75rem;font-weight:700;color:var(--amber-primary);padding:10px;text-align:center}.spinner{width:24px;height:24px;border:3px solid rgba(217,119,6,.2);border-top-color:var(--amber-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn-overlay-regen{position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:90%;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-accent);color:var(--amber-primary);font-size:.68rem;font-weight:700;padding:4px 8px;border-radius:6px;cursor:pointer;opacity:0;transition:opacity .2s ease;box-shadow:var(--shadow-sm)}.hero-image-wrap:hover .btn-overlay-regen{opacity:1}.hero-meta{flex:1;display:flex;flex-direction:column;gap:10px}.project-title-input{font-family:var(--font-heading);font-size:1.45rem;font-weight:800;color:var(--text-main);background:transparent;border:none;border-bottom:1px dashed transparent;outline:none;width:100%;transition:border-color .2s ease}.project-title-input:focus{border-bottom-color:var(--amber-primary)}.project-idea-input{font-family:var(--font-body);font-size:.88rem;color:var(--text-muted);background:transparent;border:none;outline:none;resize:none;width:100%;line-height:1.4}.bin-staging-banner{margin-top:auto;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;padding:8px 14px;display:flex;align-items:center;gap:12px}.staging-icon{font-size:1.2rem}.staging-text{font-size:.8rem;color:var(--text-main);flex:1}.staging-pill{font-size:.72rem;font-weight:800;color:#059669}.modal-tabs{display:flex;border-bottom:1px solid var(--border-subtle);background:#fff;padding:0 16px}.modal-tab{padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-weight:600;font-size:.85rem;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.modal-tab:hover{color:var(--text-main)}.modal-tab.active{color:var(--amber-primary);border-bottom-color:var(--amber-primary);font-weight:700}.modal-tab.ai-tab.active{color:#7c3aed;border-bottom-color:#7c3aed}.tab-badge{font-family:var(--font-mono);font-size:.72rem;background:#f1f5f9;padding:1px 6px;border-radius:10px}.tab-content{display:none;flex:1;padding:20px;overflow-y:auto;min-height:280px;max-height:420px;background:#fff}.tab-content.active{display:block}.parts-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.store-filter-buttons{display:flex;gap:8px}.store-btn{display:flex;align-items:center;gap:6px;padding:5px 12px;border-radius:8px;font-size:.78rem;font-weight:600;background:#f8fafc;border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer}.store-btn.active{background:#0f172a;color:#fff;border-color:#0f172a}.store-dot{width:8px;height:8px;border-radius:50%}.hd-dot{background:var(--orange-homedepot)}.amz-dot{background:var(--blue-amazon)}.parts-actions{display:flex;gap:8px}.btn-sm{padding:6px 12px;font-size:.78rem;font-weight:600;border-radius:7px;cursor:pointer;border:1px solid var(--border-subtle);background:#fff}.btn-ai{background:#f5f3ff;border-color:#c4b5fd;color:#6d28d9;font-weight:700}.btn-ai:hover{background:#ede9fe}.parts-list-container{border:1px solid var(--border-subtle);border-radius:10px;overflow:hidden;background:#fff}.parts-list-header{display:grid;grid-template-columns:70px 70px 110px 1fr 90px 90px 80px;padding:10px 14px;background:#f8fafc;border-bottom:1px solid var(--border-subtle);font-size:.72rem;font-weight:700;color:var(--text-muted);text-transform:uppercase}.parts-list-rows{max-height:230px;overflow-y:auto}.part-row{display:grid;grid-template-columns:70px 70px 110px 1fr 90px 90px 80px;align-items:center;padding:8px 14px;border-bottom:1px solid var(--border-subtle);font-size:.82rem;transition:background-color .15s ease}.part-row:hover{background:#f8fafc}.part-row.arrived-row{background:#f0fdf4}.col-check input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--amber-primary)}.col-check.arrived-check input[type=checkbox]{accent-color:var(--emerald-ready)}.part-name-input{background:transparent;border:none;color:var(--text-main);font-size:.82rem;width:100%;outline:none}.btn-find-link{font-size:.72rem;font-weight:700;color:var(--amber-primary);text-decoration:none;background:#fffbeb;border:1px solid rgba(217,119,6,.3);padding:3px 8px;border-radius:5px;display:inline-block;text-align:center}.bin-arrival-status-card{margin-top:14px;padding:12px;background:#f8fafc;border-radius:10px;border:1px solid var(--border-subtle)}.status-summary{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;color:var(--text-muted)}.progress-bar-bg{width:200px;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(to right,#f59e0b,#10b981);transition:width .3s ease}.all-arrived-callout{margin-top:10px;padding:10px 14px;border-radius:8px;background:#ecfdf5;border:1px solid #10b981;color:#065f46;font-size:.82rem;line-height:1.4;font-weight:600}.plan-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.plan-steps-list{display:flex;flex-direction:column;gap:10px}.plan-step-item{display:flex;gap:14px;padding:12px;background:#f8fafc;border:1px solid var(--border-subtle);border-radius:10px;align-items:flex-start;transition:all .2s ease}.plan-step-item.completed{border-color:#a7f3d0;background:#f0fdf4}.step-num-pill{width:26px;height:26px;border-radius:50%;background:#fffbeb;border:1px solid #f59e0b;color:var(--amber-primary);font-family:var(--font-mono);font-size:.8rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.step-body{flex:1}.step-title{font-weight:800;font-size:.92rem;color:var(--text-main);margin-bottom:4px}.step-desc{font-size:.8rem;color:var(--text-muted);line-height:1.4}.notes-textarea{width:100%;height:260px;background:#f8fafc;border:1px solid var(--border-subtle);border-radius:10px;padding:14px;color:var(--text-main);font-family:var(--font-mono);font-size:.84rem;line-height:1.6;outline:none;resize:vertical}.notes-textarea:focus{border-color:var(--amber-primary);background:#fff}.grok-assistant-container{display:flex;flex-direction:column;height:320px}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding-right:6px;margin-bottom:12px}.chat-bubble{max-width:85%;padding:10px 14px;border-radius:12px;font-size:.84rem;line-height:1.5}.chat-bubble.ai{align-self:flex-start;background:#f5f3ff;border:1px solid #ddd6fe;color:#3b0764}.chat-bubble.user{align-self:flex-end;background:#fef3c7;border:1px solid #fde68a;color:#78350f;font-weight:600}.chat-sender{font-size:.72rem;font-weight:800;color:#6d28d9;margin-bottom:4px}.chat-input-row{display:flex;gap:8px}.chat-input-row input{flex:1;background:#f8fafc;border:1px solid var(--border-subtle);border-radius:10px;padding:10px 14px;color:var(--text-main);font-size:.85rem;outline:none}.chat-input-row input:focus{border-color:#8b5cf6;background:#fff}.btn-ai-send{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;border:none;font-weight:700;padding:0 18px;border-radius:10px;cursor:pointer}.modal-footer{padding:12px 20px;background:#f8fafc;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.save-status{font-size:.75rem;color:var(--text-muted)}.bins-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:16px;max-height:450px;overflow-y:auto}.bin-card{background:#fff;border:1px solid var(--border-subtle);border-radius:12px;padding:14px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.bin-card:hover{border-color:var(--emerald-ready);transform:translateY(-2px);box-shadow:var(--shadow-card)}.bin-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.bin-name-title{font-family:var(--font-mono);font-size:1rem;font-weight:800;color:#059669}.bin-projects-list{font-size:.78rem;color:var(--text-muted);display:flex;flex-direction:column;gap:4px}.settings-modal{max-width:500px;background:#fff}.settings-body{padding:20px;display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.input-text{background:#f8fafc;border:1px solid var(--border-subtle);border-radius:8px;padding:9px 12px;color:var(--text-main);outline:none}.helper-text{font-size:.72rem;color:var(--text-muted)}.sync-badge-row{display:flex;align-items:center;gap:8px;font-size:.82rem;color:#059669;font-weight:700}.btn-voice-nav{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#f5f3ff,#fffbeb);border:1px solid #c4b5fd;color:#6d28d9;font-family:var(--font-heading);font-weight:700;font-size:.84rem;padding:7px 14px;border-radius:9px;cursor:pointer;transition:all .25s ease;box-shadow:var(--shadow-sm)}.btn-voice-nav:hover,.btn-voice-nav.active{background:linear-gradient(135deg,#7c3aed,#d97706);color:#fff;border-color:#6d28d9;transform:translateY(-1px)}.voice-wave-icon{display:flex;align-items:center;gap:2px;height:14px}.voice-wave-icon span{width:2.5px;height:8px;background:currentColor;border-radius:2px;animation:wave-bar 1.2s infinite ease-in-out}.voice-wave-icon span:nth-child(2){animation-delay:.2s;height:14px}.voice-wave-icon span:nth-child(3){animation-delay:.4s;height:10px}.voice-wave-icon span:nth-child(4){animation-delay:.1s;height:12px}@keyframes wave-bar{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.btn-mic-launcher{background:var(--bg-core);border:1px solid var(--border-subtle);color:var(--amber-primary);border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.btn-mic-launcher:hover,.btn-mic-launcher.recording{background:#fef2f2;border-color:#ef4444;color:#ef4444}.btn-mic-icon{background:#f8fafc;border:1px solid var(--border-subtle);color:var(--text-main);border-radius:8px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:all .2s ease}.btn-mic-icon:hover,.btn-mic-icon.recording{background:#fef2f2;border-color:#ef4444}.voice-drawer{position:fixed;bottom:calc(var(--shelf-height) + 16px);right:24px;width:380px;max-width:90vw;height:520px;max-height:70vh;background:var(--bg-glass-heavy);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid #c4b5fd;border-radius:18px;box-shadow:var(--shadow-modal);z-index:150;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .25s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.voice-drawer-header{padding:12px 16px;background:#f8fafc;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.voice-brand{display:flex;align-items:center;gap:12px}.voice-orb{width:34px;height:34px;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center}.orb-core{width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#f59e0b);box-shadow:0 0 12px #7c3aed66;transition:all .3s ease}.orb-ring{position:absolute;width:100%;height:100%;border-radius:50%;border:2px dashed rgba(124,58,237,.4);animation:orb-spin 8s linear infinite}@keyframes orb-spin{to{transform:rotate(360deg)}}.voice-orb.listening .orb-core{background:#ef4444;box-shadow:0 0 16px #ef4444cc;transform:scale(1.2)}.voice-orb.speaking .orb-core{background:#10b981;box-shadow:0 0 16px #10b981cc;animation:pulse-ring 1s infinite}.voice-drawer-title{font-family:var(--font-heading);font-size:.92rem;font-weight:800;color:var(--text-main)}.voice-drawer-sub{font-size:.72rem;color:var(--text-muted)}.voice-drawer-actions{display:flex;gap:6px}.voice-drawer-body{flex:1;padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;background:#fff}.voice-conversation-log{display:flex;flex-direction:column;gap:8px}.voice-msg{padding:9px 12px;border-radius:12px;font-size:.82rem;line-height:1.45}.voice-msg.ai{background:#f5f3ff;border:1px solid #ddd6fe;color:#3b0764}.voice-msg.user{background:#fffbeb;border:1px solid #fde68a;color:#78350f;align-self:flex-end}.voice-live-indicator{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#b91c1c;font-size:.78rem;font-weight:700}.sound-wave-bars{display:flex;align-items:center;gap:2.5px}.sound-wave-bars span{width:3px;height:12px;background:#dc2626;border-radius:2px;animation:wave-bar .8s infinite ease-in-out}.sound-wave-bars span:nth-child(2){animation-delay:.15s;height:18px}.sound-wave-bars span:nth-child(3){animation-delay:.3s;height:10px}.sound-wave-bars span:nth-child(4){animation-delay:.45s;height:16px}.sound-wave-bars span:nth-child(5){animation-delay:.2s;height:14px}.voice-actions-box{background:#f8fafc;border:1px solid var(--border-subtle);border-radius:10px;padding:10px}.actions-label{font-size:.7rem;font-weight:800;text-transform:uppercase;color:var(--amber-primary);margin-bottom:6px;display:block}.actions-chips{display:flex;flex-direction:column;gap:6px}.voice-action-chip{padding:7px 11px;background:#fff;border:1px solid var(--border-subtle);border-radius:7px;color:var(--text-main);font-size:.76rem;font-weight:600;text-align:left;cursor:pointer;transition:all .15s ease;box-shadow:0 1px 2px #0f172a0a}.voice-action-chip:hover{background:#fffbeb;border-color:var(--amber-primary);color:var(--amber-primary)}.voice-drawer-footer{padding:12px 16px;background:#f8fafc;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:10px}.btn-voice-mic-main{width:100%;padding:12px;border-radius:12px;border:none;background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;font-family:var(--font-heading);font-weight:700;font-size:.95rem;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;box-shadow:0 4px 15px #7c3aed4d;transition:all .2s ease}.btn-voice-mic-main:hover{transform:translateY(-1px);box-shadow:0 6px 20px #7c3aed73}.btn-voice-mic-main.recording{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 20px #dc262666}.voice-controls-row{display:flex;align-items:center;justify-content:space-between;font-size:.74rem;color:var(--text-muted)}.handsfree-toggle{display:flex;align-items:center;gap:6px;cursor:pointer}.btn-stop-audio{background:#fef2f2;border:1px solid #fca5a5;color:#b91c1c;padding:3px 8px;border-radius:6px;cursor:pointer;font-weight:600}.whiteboard-svg-layer{position:absolute;top:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:8}.whiteboard-svg-layer.drawing-active{pointer-events:auto;cursor:crosshair}.whiteboard-canvas.mode-pen,.whiteboard-canvas.mode-highlighter{cursor:crosshair!important}.whiteboard-canvas.mode-eraser{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23dc2626' stroke-width='2'%3E%3Cpath d='m7 21-4.3-4.3c-1-1-1-2.5 0-3.4l9.6-9.6c1-1 2.5-1 3.4 0l5.6 5.6c1 1 1 2.5 0 3.4L13 21'/%3E%3Cpath d='M22 21H7'/%3E%3C/svg%3E") 4 20,pointer!important}.whiteboard-canvas.mode-sticky{cursor:copy!important}.whiteboard-canvas.mode-text{cursor:text!important}.drawing-stroke{transition:opacity .15s ease;pointer-events:stroke}.drawing-stroke:hover{filter:drop-shadow(0 0 3px rgba(37,99,235,.4))}.drawing-stroke.eraser-target{opacity:.25;stroke:#ef4444!important}.whiteboard-tool-palette{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:5px;padding:6px 12px;background:#fffffff0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(203,213,225,.8);border-radius:9999px;box-shadow:0 12px 36px #0f172a1f,0 2px 6px #0f172a0a;z-index:100;-webkit-user-select:none;user-select:none;max-width:95vw;overflow-x:auto}body.theme-dark .whiteboard-tool-palette{background:#0f172aeb;border-color:#334155cc;box-shadow:0 12px 36px #00000080}.tool-group{display:flex;align-items:center;gap:4px}.tool-sep{width:1px;height:20px;background:#cbd5e1;margin:0 4px}body.theme-dark .tool-sep{background:#334155}.tool-palette-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:36px;padding:0 10px;border-radius:9999px;background:transparent;border:1px solid transparent;color:#475569;font-family:var(--font-sans);font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s ease}.tool-palette-btn:hover{background:#f1f5f9;color:#0f172a}.tool-palette-btn.active{background:#0f172a;color:#fff;box-shadow:0 2px 6px #0f172a29}body.theme-dark .tool-palette-btn{color:#94a3b8}body.theme-dark .tool-palette-btn:hover{background:#1e293b;color:#f8fafc}body.theme-dark .tool-palette-btn.active{background:#f8fafc;color:#0f172a}.tool-palette-btn.btn-sm{padding:0 8px;font-size:.78rem;min-width:32px}.tool-palette-btn.add-btn{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.tool-palette-btn.add-btn:hover{background:#10b981;color:#fff}.sticky-tool-wrapper{display:flex;align-items:center;gap:6px;padding:2px 6px;border-radius:9999px;background:#f1f5f9b3}.sticky-color-swatches{display:flex;align-items:center;gap:3px}.color-swatch-dot{width:15px;height:15px;border-radius:50%;border:1.5px solid rgba(0,0,0,.1);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;padding:0}.color-swatch-dot:hover{transform:scale(1.25)}.color-swatch-dot.active{transform:scale(1.2);box-shadow:0 0 0 2px #0f172a}.ink-color-picker{display:flex;align-items:center;gap:4px;padding:2px 6px;background:#f1f5f9b3;border-radius:9999px}body.theme-dark .ink-color-picker{background:#1e293bb3}.ink-color-dot{width:16px;height:16px;border-radius:50%;border:1.5px solid transparent;cursor:pointer;transition:transform .15s ease;padding:0}.ink-color-dot:hover{transform:scale(1.25)}.ink-color-dot.active{transform:scale(1.2);box-shadow:0 0 0 2px #2563eb}.sticky-note.quick-sticky{width:240px;min-height:210px;padding:12px 14px;border-radius:4px;display:flex;flex-direction:column;box-shadow:0 4px 14px #0f172a14,0 1px 3px #0f172a0f;border:1px solid rgba(0,0,0,.07);transition:transform .15s ease,box-shadow .15s ease}.sticky-note.quick-sticky:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 12px 28px #0f172a1f;z-index:40}.sticky-note.quick-sticky:before{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);width:64px;height:15px;background:#ffffffa6;border:1px solid rgba(0,0,0,.05);border-radius:2px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:0 1px 2px #0000000a}.sticky-note.color-yellow{background:#fef9c3!important;color:#713f12!important;border-top:none}.sticky-note.color-green{background:#dcfce7!important;color:#14532d!important;border-top:none}.sticky-note.color-blue{background:#e0f2fe!important;color:#0c4a6e!important;border-top:none}.sticky-note.color-pink{background:#fce7f3!important;color:#831843!important;border-top:none}.sticky-note.color-purple{background:#f3e8ff!important;color:#581c87!important;border-top:none}.sticky-note.color-orange{background:#ffedd5!important;color:#7c2d12!important;border-top:none}.sticky-note.color-white{background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1;border-top:none}.quick-sticky-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:4px;border-bottom:1px dashed rgba(0,0,0,.1)}.mini-color-row{display:flex;gap:3px}.mini-color-dot{width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,.15);cursor:pointer;padding:0;transition:transform .15s ease}.mini-color-dot:hover{transform:scale(1.3)}.quick-sticky-actions{display:flex;align-items:center;gap:4px}.btn-quick-ai-plan{display:inline-flex;align-items:center;gap:3px;background:#ffffffd9;border:1px solid rgba(0,0,0,.1);border-radius:9999px;padding:2px 7px;font-size:.68rem;font-weight:700;color:#78350f;cursor:pointer;transition:all .15s ease}.btn-quick-ai-plan:hover{background:#fef08a;transform:scale(1.05);border-color:#eab308}.btn-quick-delete{background:transparent;border:none;font-size:.8rem;color:#0006;cursor:pointer;padding:0 4px;border-radius:4px;transition:color .15s ease}.btn-quick-delete:hover{color:#dc2626;background:#ef44441a}.quick-sticky-title{width:100%;background:transparent;border:none;outline:none;font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:inherit;margin-bottom:6px;padding:2px 0}.quick-sticky-title::placeholder{color:#00000059;font-weight:500}.quick-sticky-body{width:100%;flex:1;background:transparent;border:none;outline:none;resize:none;font-family:var(--font-sans);font-size:.88rem;line-height:1.45;color:inherit;min-height:100px}.quick-sticky-body::placeholder{color:#00000059}.quick-sticky-footer{display:flex;align-items:center;justify-content:space-between;margin-top:8px;font-size:.68rem;color:#0006}.quick-drag-handle{cursor:move;font-size:.9rem;letter-spacing:1px}.whiteboard-text-item{position:absolute;padding:6px 12px;border-radius:8px;border:1px dashed transparent;background:transparent;cursor:move;transition:background .15s ease,border-color .15s ease;z-index:25}.whiteboard-text-item:hover{background:#ffffffd9;border-color:#94a3b880;box-shadow:0 4px 12px #0f172a0f}.whiteboard-text-inner{font-family:var(--font-display);font-size:1.35rem;font-weight:800;color:var(--text-main);outline:none;min-width:100px;white-space:pre-wrap}.whiteboard-text-del{position:absolute;top:-8px;right:-8px;background:#fff;border:1px solid #cbd5e1;border-radius:50%;width:18px;height:18px;display:none;align-items:center;justify-content:center;font-size:.68rem;color:#64748b;cursor:pointer;box-shadow:0 1px 3px #0000001a}.whiteboard-text-item:hover .whiteboard-text-del{display:flex}.whiteboard-text-del:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.hidden{display:none!important}@media(max-width:900px){.header-center{max-width:280px}.filter-chips{display:none}.ai-quick-banner{width:94%;top:10px}}@media(max-width:680px){.app-header{padding:0 12px}.brand-sub,.toggle-btn span{display:none}.project-hero{flex-direction:column}.hero-image-wrap{width:100%;height:180px}.parts-list-header,.part-row{grid-template-columns:50px 50px 1fr 60px}.col-store,.col-price,.col-actions{display:none}}
