.ambience-icon-btn{position:relative;width:32px;height:32px;border-radius:50%;background:var(--cwc-surface);border:none;color:var(--cwc-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--cwc-shadow-pill);transition:transform .25s cubic-bezier(.16,1,.3,1),background-color .3s ease,color .3s ease,box-shadow .3s ease}.ambience-icon-btn:hover{transform:translateY(-2px) scale(1.08);color:var(--cwc-text-primary);background:var(--cwc-surface-subtle)}.ambience-icon-btn:active{transform:scale(.85)}.ambience-svg{position:relative;z-index:2;transition:transform .3s cubic-bezier(.16,1,.3,1)}.ambience-icon-btn.is-playing{background:linear-gradient(135deg,#bfdbfe,#ddd6fe 30%,#fbcfe8,#fed7aa);background-size:200% 200%;background-position:0% 50%;color:#1e1b4b;box-shadow:inset 0 1px 1.5px #fffffff2,0 4px 18px -2px #c4b5fd8c;animation:ambience-alive-breath 4s ease-in-out infinite alternate}[data-theme=dark] .ambience-icon-btn.is-playing{background:linear-gradient(135deg,#bfdbfe,#ddd6fe 30%,#fbcfe8,#fed7aa);background-size:200% 200%;background-position:0% 50%;color:#1e1b4b;box-shadow:inset 0 1px 1.5px #fffffff2,0 0 14px #c4b5fd80;animation:ambience-alive-breath 4s ease-in-out infinite alternate}@keyframes ambience-alive-breath{0%{transform:scale(1);opacity:.92}50%{transform:scale(1.04);opacity:1}to{transform:scale(1);opacity:.95}}.ambience-icon-btn.is-playing .ambience-svg{animation:music-note-sway 2.6s ease-in-out infinite alternate}@keyframes music-note-sway{0%{transform:translateY(0) rotate(-3deg)}to{transform:translateY(-1px) rotate(3deg)}}.ambience-inner-aura{position:absolute;inset:-3px;border-radius:50%;background:linear-gradient(135deg,#bfdbfe,#ddd6fe,#fbcfe8);filter:blur(8px);opacity:0;z-index:0;pointer-events:none;transition:opacity .4s ease}.ambience-icon-btn.is-playing .ambience-inner-aura{opacity:.5}.ambience-icon-btn.tap-bounce{animation:tap-spring .35s cubic-bezier(.16,1,.3,1)}@keyframes tap-spring{0%{transform:scale(.8)}50%{transform:scale(1.18)}to{transform:scale(1)}}.grocery-backdrop{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:160;opacity:0;pointer-events:none;transition:opacity .28s ease;display:flex;justify-content:center;align-items:flex-end}[data-theme=dark] .grocery-backdrop{background:#000000a6}.grocery-backdrop.active-open{opacity:1;pointer-events:auto}.grocery-sheet{width:100%;max-width:500px;max-height:85dvh;background:var(--cwc-surface);border-top-left-radius:var(--cwc-radius-xl);border-top-right-radius:var(--cwc-radius-xl);box-shadow:0 -8px 36px #00000029;border-top:1px solid var(--cwc-border);transform:translateY(105%);transition:transform .32s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;padding-bottom:20px}.grocery-sheet.active-open{transform:translateY(0)}[data-theme=dark] .grocery-sheet{background:#14161df5;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px)}.grocery-drag-handle{padding:10px 0 4px;display:flex;justify-content:center;cursor:pointer}.drag-pill{width:36px;height:4px;border-radius:var(--cwc-radius-full);background:#00000029}[data-theme=dark] .drag-pill{background:#fff3}.grocery-content{padding:4px 18px 10px;display:flex;flex-direction:column;gap:10px;max-height:70dvh}.grocery-header{display:flex;justify-content:space-between;align-items:center}.grocery-title-row{display:flex;align-items:center;gap:7px}.grocery-budget-banner{background:var(--cwc-surface-subtle);border-radius:var(--cwc-radius-md);padding:7px 12px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--cwc-shadow-xs);border:1px solid var(--cwc-border)}.budget-cost-wrap{display:flex;flex-direction:column;gap:1px}.budget-label{font-size:.66rem;font-weight:750;letter-spacing:-.01em;color:var(--cwc-text-secondary)}.budget-val{font-size:.88rem;font-weight:850;letter-spacing:-.02em;color:#10b981}.budget-savings-pill{padding:3px 8px;border-radius:var(--cwc-radius-full);background:#10b9811f;color:#047857;font-size:.66rem;font-weight:800;white-space:nowrap}[data-theme=dark] .budget-savings-pill{background:#10b98133;color:#34d399}.grocery-title{font-size:1rem;font-weight:800;letter-spacing:-.02em;color:var(--cwc-text-primary);margin:0}.grocery-count-pill{font-size:.68rem;font-weight:800;background:var(--cwc-pastel-sage);color:var(--cwc-pastel-sage-text);padding:1px 7px;border-radius:var(--cwc-radius-full)}.grocery-close-btn{background:var(--cwc-surface-subtle);border:1px solid var(--cwc-border);width:28px;height:28px;border-radius:50%;color:var(--cwc-text-secondary);font-size:.76rem;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--cwc-shadow-xs);transition:transform .2s ease}.grocery-close-btn:hover{transform:scale(1.08)}.grocery-items-stream{display:flex;flex-direction:column;gap:5px;overflow-y:auto;padding-right:2px;max-height:44dvh}.grocery-empty-msg{font-size:.8rem;color:var(--cwc-text-secondary);text-align:center;padding:20px 10px;line-height:1.35}.grocery-item-row{display:flex;justify-content:space-between;align-items:center;background:var(--cwc-surface-subtle);padding:7px 11px;border-radius:var(--cwc-radius-md);border:1px solid var(--cwc-border);box-shadow:var(--cwc-shadow-xs);gap:8px;transition:border-color .2s ease}.grocery-item-row.is-extra-item{background:linear-gradient(135deg,#eef2ffe6,#f5f3ffd9);border-left:3px solid #8b5cf6}[data-theme=dark] .grocery-item-row.is-extra-item{background:linear-gradient(135deg,#1e1b4b66,#2e106559);border-left:3px solid #a78bfa}.grocery-type-badge{font-size:.62rem;font-weight:800;padding:1px 6px;border-radius:var(--cwc-radius-full);margin-left:5px;white-space:nowrap}.badge-substitute{background:#d1fae5;color:#065f46}.badge-extra{background:#ede9fe;color:#5b21b6}[data-theme=dark] .badge-substitute{background:#10b98140;color:#6ee7b7}[data-theme=dark] .badge-extra{background:#8b5cf640;color:#c4b5fd}.grocery-item-label{display:flex;align-items:center;gap:8px;cursor:pointer;flex:1}.grocery-checkbox{width:16px;height:16px;cursor:pointer;accent-color:#10b981}.grocery-item-text{font-size:.82rem;font-weight:650;letter-spacing:-.01em;color:var(--cwc-text-primary);transition:opacity .2s,text-decoration .2s;display:flex;align-items:center;flex-wrap:wrap;gap:4px}.grocery-item-text.is-checked{opacity:.4;text-decoration:line-through}.grocery-del-btn{background:transparent;border:none;color:var(--cwc-text-subtle);font-size:.72rem;padding:3px;cursor:pointer}.grocery-del-btn:hover{color:#ef4444}.grocery-actions-row{display:flex;gap:6px;margin-top:4px}.grocery-clear-btn{background:var(--cwc-surface-subtle);border:1px solid var(--cwc-border);padding:8px 12px;border-radius:var(--cwc-radius-full);font-size:.76rem;font-weight:750;letter-spacing:-.01em;color:var(--cwc-text-secondary);cursor:pointer;min-height:36px;transition:background-color .2s ease}.grocery-clear-btn:hover{background:var(--cwc-surface);border-color:var(--cwc-border-hover)}.grocery-pantry-transfer-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:8px 12px;border-radius:var(--cwc-radius-full);font-size:.76rem;font-weight:750;letter-spacing:-.01em;cursor:pointer;box-shadow:0 2px 8px #10b98140;display:inline-flex;align-items:center;gap:4px;min-height:36px;transition:transform .2s ease}.grocery-pantry-transfer-btn:hover{transform:translateY(-.5px)}.grocery-copy-btn{background:var(--cwc-surface-subtle);color:var(--cwc-text-primary);border:1px solid var(--cwc-border);padding:8px 12px;border-radius:var(--cwc-radius-full);font-size:.76rem;font-weight:750;letter-spacing:-.01em;cursor:pointer;box-shadow:var(--cwc-shadow-xs);display:inline-flex;align-items:center;gap:4px;min-height:36px;transition:all .2s ease}.grocery-copy-btn:hover{background:var(--cwc-surface);border-color:var(--cwc-border-hover);transform:translateY(-.5px)}.grocery-wa-share-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;background:#25d366;color:#fff;border:none;padding:8px 14px;border-radius:var(--cwc-radius-full);font-size:.78rem;font-weight:750;letter-spacing:-.01em;cursor:pointer;box-shadow:0 2px 8px #25d36659;min-height:36px;transition:transform .2s cubic-bezier(.16,1,.3,1),opacity .2s ease}.grocery-wa-share-btn:hover{transform:translateY(-.5px);opacity:.94}.grocery-wa-share-btn:active{transform:scale(.98)}.pantry-drawer-backdrop{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:170;opacity:0;pointer-events:none;transition:opacity .28s ease;display:flex;justify-content:center;align-items:flex-end}.pantry-drawer-backdrop.active-open{opacity:1;pointer-events:auto}.pantry-drawer-card{width:100%;max-width:540px;max-height:85dvh;background:var(--cwc-surface);border-radius:var(--cwc-radius-xl) var(--cwc-radius-xl) 0 0;box-shadow:0 -8px 36px #00000029;border-top:1px solid var(--cwc-border);display:flex;flex-direction:column;overflow:hidden;transform:translateY(100%);transition:transform .32s cubic-bezier(.16,1,.3,1)}.pantry-drawer-backdrop.active-open .pantry-drawer-card{transform:translateY(0)}.pantry-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--cwc-surface-card);border-bottom:1px solid var(--cwc-border)}.pantry-drawer-title-row{display:flex;align-items:center;gap:7px}.pantry-drawer-close-btn{width:28px;height:28px;border-radius:50%;border:1px solid var(--cwc-border);background:var(--cwc-surface-subtle);color:var(--cwc-text-primary);font-size:.78rem;cursor:pointer;box-shadow:var(--cwc-shadow-xs);display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.pantry-drawer-close-btn:hover{transform:scale(1.08)}.pantry-subnav-row{display:flex;gap:5px;padding:6px 14px;background:var(--cwc-surface-subtle);border-bottom:1px solid var(--cwc-border-subtle)}.pantry-tab-btn{flex:1;padding:6px 10px;border-radius:var(--cwc-radius-full);border:1px solid transparent;background:transparent;color:var(--cwc-text-secondary);font-size:.75rem;font-weight:750;letter-spacing:-.01em;cursor:pointer;min-height:30px;box-sizing:border-box;transition:all .2s cubic-bezier(.16,1,.3,1)}.pantry-tab-btn.active{background:var(--cwc-surface);color:var(--cwc-text-primary);border-color:var(--cwc-border);box-shadow:var(--cwc-shadow-xs)}.pantry-drawer-body{flex:1;padding:12px 16px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.pantry-stock-section{display:flex;flex-direction:column;gap:6px}.pantry-section-title{font-size:.72rem;font-weight:850;color:var(--cwc-text-secondary);text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:5px}.pantry-stock-row{display:flex;align-items:center;justify-content:space-between;background:var(--cwc-surface-subtle);padding:6px 10px;border-radius:var(--cwc-radius-md);border:1px solid var(--cwc-border);box-shadow:var(--cwc-shadow-xs);gap:6px}.pantry-stock-meta{display:flex;align-items:center;gap:6px;flex:1}.pantry-stock-name{font-size:.8rem;font-weight:800;letter-spacing:-.01em;color:var(--cwc-text-primary)}.pantry-qty-controls{display:flex;align-items:center;gap:4px;background:var(--cwc-surface);border:1px solid var(--cwc-border);padding:2px 5px;border-radius:var(--cwc-radius-full);box-shadow:var(--cwc-shadow-xs)}.pantry-qty-step-btn{width:20px;height:20px;border-radius:50%;border:none;background:var(--cwc-surface-subtle);color:var(--cwc-text-primary);font-weight:800;font-size:.76rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.pantry-qty-step-btn:hover{transform:scale(1.1)}.pantry-qty-val{font-size:.74rem;font-weight:850;letter-spacing:-.01em;color:var(--cwc-text-primary);min-width:44px;text-align:center}.pantry-level-pills{display:flex;gap:3px}.pantry-level-btn{padding:2px 7px;border-radius:var(--cwc-radius-full);border:1px solid var(--cwc-border);background:var(--cwc-surface);color:var(--cwc-text-secondary);font-size:.65rem;font-weight:750;letter-spacing:-.01em;cursor:pointer;box-shadow:var(--cwc-shadow-xs);transition:all .18s ease}.pantry-level-btn.active-full{background:#10b981;color:#fff;border-color:#059669}.pantry-level-btn.active-low{background:#f59e0b;color:#fff;border-color:#d97706}.pantry-level-btn.active-out{background:#ef4444;color:#fff;border-color:#dc2626}.pantry-stock-del-btn{background:transparent;border:none;color:var(--cwc-text-subtle);font-size:.7rem;cursor:pointer;padding:2px 4px}.pantry-add-box{background:var(--cwc-surface-subtle);border-radius:var(--cwc-radius-md);border:1px solid var(--cwc-border);padding:10px 12px;display:flex;flex-direction:column;gap:6px;margin-top:4px}.pantry-input-field{height:32px;border-radius:var(--cwc-radius-full);border:1px solid var(--cwc-border);padding:0 10px;font-size:.76rem;letter-spacing:-.01em;background:var(--cwc-surface);color:var(--cwc-text-primary);outline:none;box-shadow:var(--cwc-shadow-xs)}.pantry-add-btn{height:32px;padding:0 14px;border-radius:var(--cwc-radius-full);border:none;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.75rem;font-weight:800;letter-spacing:-.01em;cursor:pointer;box-shadow:0 2px 8px #10b98140;transition:transform .18s ease}.pantry-add-btn:hover{transform:translateY(-.5px)}.allergy-toggle-list{display:flex;flex-direction:column;gap:6px}.allergy-toggle-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:var(--cwc-radius-md);border:1px solid var(--cwc-border);background:var(--cwc-surface-subtle);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease}.allergy-toggle-item.is-selected{background:#ef444414;border-color:#ef444466}.allergy-toggle-item.is-selected .allergy-switch-track{background:#ef4444}.allergy-switch-track{width:36px;height:20px;border-radius:var(--cwc-radius-full);background:var(--cwc-surface);border:1px solid var(--cwc-border);position:relative;transition:background .2s ease}.allergy-switch-thumb{width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;top:1px;left:1px;box-shadow:0 1px 3px #0003;transition:transform .2s cubic-bezier(.16,1,.3,1)}.allergy-toggle-item.is-selected .allergy-switch-thumb{transform:translate(16px)}.pantry-restock-alert-box{background:#ef44440f;border:1px solid rgba(239,68,68,.2);border-radius:var(--cwc-radius-md);padding:8px 10px;display:flex;flex-direction:column;gap:6px;animation:restock-fade-in .3s ease}[data-theme=dark] .pantry-restock-alert-box{background:#ef444429;border:1px solid rgba(239,68,68,.38)}.pantry-restock-header{display:flex;align-items:center;gap:6px}.restock-pulse-dot{font-size:.75rem;animation:pulse-dot 1.5s infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}@keyframes restock-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.pantry-restock-title{font-size:.76rem;font-weight:850;color:#ef4444;text-transform:uppercase;letter-spacing:.04em}.pantry-restock-chips{display:flex;flex-wrap:wrap;gap:6px}.restock-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:var(--cwc-radius-full);font-size:.72rem;font-weight:750}.restock-chip.chip-out{background:#fee2e2;color:#991b1b;border:1px solid #f87171}[data-theme=dark] .restock-chip.chip-out{background:#b91c1c66;color:#fca5a5;border:1px solid rgba(239,68,68,.5)}.restock-chip.chip-low{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}[data-theme=dark] .restock-chip.chip-low{background:#b4530966;color:#fde68a;border:1px solid rgba(245,158,11,.5)}.stock-status-badge{font-size:.65rem;font-weight:800;padding:2px 6px;border-radius:var(--cwc-radius-full);margin-left:6px;display:inline-flex;align-items:center;line-height:1.2}.stock-status-badge.badge-out{background:#fee2e2;color:#b91c1c}[data-theme=dark] .stock-status-badge.badge-out{background:#b91c1c59;color:#fca5a5}.stock-status-badge.badge-low{background:#fef3c7;color:#b45309}[data-theme=dark] .stock-status-badge.badge-low{background:#b4530959;color:#fde68a}.planner-backdrop{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:175;opacity:0;pointer-events:none;transition:opacity .28s ease;display:flex;justify-content:center;align-items:flex-end}.planner-backdrop.active-open{opacity:1;pointer-events:auto}.planner-sheet{width:100%;max-width:580px;max-height:88dvh;background:var(--cwc-surface);border-top-left-radius:28px;border-top-right-radius:28px;box-shadow:0 -12px 40px #0000002e;border:none;transform:translateY(105%);transition:transform .35s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;overflow:hidden}.planner-sheet.active-open{transform:translateY(0)}.planner-compile-btn:hover{transform:translateY(-1px)}.mode-pill-btn{padding:3px 8px;border-radius:var(--cwc-radius-full);border:1px solid var(--cwc-surface-subtle);background:var(--cwc-surface);color:var(--cwc-text-secondary);font-size:.68rem;font-weight:750;cursor:pointer;box-shadow:var(--cwc-shadow-pill);transition:all .2s ease}.mode-pill-btn.active{background:var(--cwc-text-primary);color:var(--cwc-surface);border-color:transparent}[data-theme=dark] .planner-sheet{background:#161922f5;box-shadow:0 -14px 44px #000000b3}.planner-drag-handle{padding:10px;display:flex;justify-content:center;cursor:pointer}.drag-pill{width:36px;height:4px;border-radius:var(--cwc-radius-full);background:var(--cwc-text-subtle);opacity:.4}.planner-content{padding:2px 18px 24px;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.planner-header{display:flex;justify-content:space-between;align-items:center}.planner-title-row{display:flex;flex-direction:column;gap:2px}.planner-badge{font-size:.65rem;font-weight:800;background:linear-gradient(135deg,#bfdbfe,#ddd6fe);color:#1e1b4b;padding:2px 8px;border-radius:var(--cwc-radius-full);align-self:flex-start}.planner-title{font-size:1.05rem;font-weight:850;color:var(--cwc-text-primary);margin:0}.planner-close-btn{background:var(--cwc-surface-subtle);border:none;width:30px;height:30px;border-radius:50%;color:var(--cwc-text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--cwc-shadow-pill)}.planner-day-tabs-row{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.day-tab-pill{padding:6px 12px;border-radius:var(--cwc-radius-full);border:none;background:var(--cwc-surface-subtle);color:var(--cwc-text-secondary);font-size:.76rem;font-weight:800;cursor:pointer;white-space:nowrap;transition:all .2s ease;box-shadow:var(--cwc-shadow-pill)}.day-tab-pill.active{background:var(--cwc-text-primary);color:var(--cwc-surface)}.day-meals-card{background:var(--cwc-surface-subtle);border-radius:var(--cwc-radius-lg);padding:14px 16px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--cwc-shadow-clean)}.meal-slot-row{display:flex;align-items:center;gap:10px;background:var(--cwc-surface);padding:8px 12px;border-radius:var(--cwc-radius-md);box-shadow:var(--cwc-shadow-pill)}.meal-slot-label{font-size:.74rem;font-weight:800;color:var(--cwc-text-primary);min-width:90px;display:flex;align-items:center;gap:4px}.meal-slot-select{flex:1;border:none;background:transparent;font-size:.8rem;font-weight:700;color:var(--cwc-text-primary);outline:none;cursor:pointer}.add-slot-btn{align-self:flex-start;background:transparent;border:1px dashed var(--cwc-text-subtle);padding:5px 12px;border-radius:var(--cwc-radius-full);color:var(--cwc-text-secondary);font-size:.72rem;font-weight:750;cursor:pointer;margin-top:2px}.add-slot-btn:hover{background:var(--cwc-surface);color:var(--cwc-text-primary)}.planner-actions-box{display:flex;flex-direction:column;gap:8px;margin-top:4px}.planner-smart-ai-btn{display:flex;align-items:center;justify-content:center;gap:6px;background:linear-gradient(135deg,#bfdbfe,#ddd6fe);color:#1e1b4b;border:none;padding:10px;border-radius:var(--cwc-radius-full);font-size:.82rem;font-weight:800;cursor:pointer;box-shadow:var(--cwc-shadow-pill);transition:transform .2s ease}.planner-export-trigger-btn{display:flex;align-items:center;justify-content:center;gap:6px;background:var(--cwc-surface-subtle);color:var(--cwc-text-primary);border:1px dashed var(--cwc-divider);padding:10px;border-radius:var(--cwc-radius-full);font-size:.8rem;font-weight:800;cursor:pointer;box-shadow:var(--cwc-shadow-pill);transition:transform .2s ease,background .2s ease}.planner-export-trigger-btn:hover{transform:translateY(-1px);background:var(--cwc-surface)}.planner-compile-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:12px 18px;border-radius:var(--cwc-radius-full);font-size:.84rem;font-weight:800;cursor:pointer;box-shadow:0 4px 16px #10b98159;transition:transform .2s ease}.preflight-modal-card{display:none;flex-direction:column;gap:12px;background:var(--cwc-surface);border-radius:var(--cwc-radius-lg);padding:16px 18px;box-shadow:var(--cwc-shadow-clean);margin-top:6px;border:1px solid rgba(16,185,129,.3)}.preflight-modal-card.active-open{display:flex}.preflight-item-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:var(--cwc-radius-md);background:var(--cwc-surface-subtle);gap:8px}.preflight-toggle-group{display:flex;gap:6px}.preflight-choice-btn{padding:4px 10px;border-radius:var(--cwc-radius-full);border:none;background:var(--cwc-surface);color:var(--cwc-text-secondary);font-size:.72rem;font-weight:750;cursor:pointer;box-shadow:var(--cwc-shadow-pill);transition:all .2s ease}.preflight-choice-btn.selected-skip{background:#10b981;color:#fff}.preflight-choice-btn.selected-buy{background:#ef4444;color:#fff}.leftover-modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal);opacity:0;pointer-events:none;background:#0f172a73;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:opacity .35s cubic-bezier(.16,1,.3,1);display:flex;justify-content:center;align-items:center;padding:20px;overflow:hidden}.leftover-modal-backdrop.active-open{opacity:1;pointer-events:auto}.leftover-modal-card{position:relative;width:100%;max-width:480px;background:var(--cwc-surface);border:1px solid rgba(255,255,255,.5);border-radius:var(--cwc-radius-lg);padding:24px 22px;box-shadow:0 20px 50px -10px #00000040;transform:scale(.94) translateY(10px);opacity:0;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .35s ease;max-height:85vh;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.leftover-modal-backdrop.active-open .leftover-modal-card{transform:scale(1) translateY(0);opacity:1}[data-theme=dark] .leftover-modal-card{background:#161923fa;border-color:#ffffff14}.leftover-modal-header{display:flex;align-items:center;justify-content:space-between}.leftover-header-title{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:850;color:var(--cwc-text-primary)}.leftover-close-btn{background:var(--cwc-surface-subtle);border:none;border-radius:50%;width:30px;height:30px;font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--cwc-text-secondary)}.leftover-subtitle{font-size:.78rem;color:var(--cwc-text-secondary);line-height:1.4;margin:0}.leftover-chips-grid{display:flex;flex-wrap:wrap;gap:8px}.leftover-select-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--cwc-surface-subtle);border:1px solid var(--cwc-border, rgba(0, 0, 0, .08));border-radius:var(--cwc-radius-full);font-size:.78rem;font-weight:750;color:var(--cwc-text-primary);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.leftover-select-chip.selected{background:var(--cwc-pastel-butter, #fef3c7);color:#78350f;border-color:#f59e0b66;box-shadow:0 4px 12px #f59e0b33}.leftover-generate-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border-radius:var(--cwc-radius-full);border:none;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.86rem;font-weight:800;cursor:pointer;box-shadow:0 4px 16px #10b9814d;transition:transform .2s ease}.leftover-generate-btn:hover{transform:translateY(-1px)}.leftover-recipe-result{background:var(--cwc-surface-subtle);border:1px solid var(--cwc-border, rgba(0, 0, 0, .08));border-radius:var(--cwc-radius-md);padding:16px;display:flex;flex-direction:column;gap:12px;animation:result-fade-up .3s ease}@keyframes result-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.result-recipe-title{font-size:1.15rem;font-weight:850;color:var(--cwc-text-primary);margin:0}.result-badges-row{display:flex;gap:8px;flex-wrap:wrap}.result-badge{font-size:.72rem;font-weight:750;padding:3px 9px;border-radius:var(--cwc-radius-full);background:var(--cwc-surface);color:var(--cwc-text-secondary)}.result-steps-list{display:flex;flex-direction:column;gap:8px;font-size:.8rem;color:var(--cwc-text-primary);line-height:1.45;margin:0;padding-left:18px}.result-tip-box{background:#fef3c780;border-left:3px solid #f59e0b;border-radius:0 var(--cwc-radius-sm) var(--cwc-radius-sm) 0;padding:8px 12px;font-size:.74rem;color:#78350f;line-height:1.35}[data-theme=dark] .result-tip-box{background:#78350f4d;color:#fde68a}.leftover-wa-send-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border-radius:var(--cwc-radius-full);border:none;background:#25d366;color:#fff;font-size:.86rem;font-weight:800;cursor:pointer;box-shadow:0 6px 20px #25d36659;transition:transform .2s ease}.leftover-wa-send-btn:hover{transform:translateY(-1px)}
