:root{--accent:#722f37;--accent-light:#8b3a44;--accent-bg:#fdf0f1;--bg:#faf8f5;--bg-warm:#f0ebe3;--surface:#fff;--border:#e8e0d8;--text-primary:#1a1208;--text-secondary:#6b6458;--text-muted:#9e9488;--status-young:#2980b9;--status-now:#27ae60;--status-peak:#e67e22;--radius:12px;--radius-sm:8px;--shadow:0 2px 8px #00000014;--shadow-md:0 4px 16px #0000001f;--bottom-nav-h:68px;--top-bar-h:56px;--safe-bottom:env(safe-area-inset-bottom,0px)}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body,#root{background:var(--bg);height:100%;color:var(--text-primary);overscroll-behavior:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#root{flex-direction:column;max-width:430px;min-height:100%;margin:0 auto;display:flex;position:relative;box-shadow:0 0 40px #00000026}button{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none}input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.screen{flex-direction:column;flex:1;height:100%;display:flex;overflow:hidden}.screen-content{-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--bottom-nav-h) + var(--safe-bottom) + 16px);flex:1;overflow-y:auto}.screen-content.no-nav{padding-bottom:16px}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius);text-align:center;width:100%;padding:15px 24px;font-size:16px;font-weight:600;transition:opacity .15s;display:block}.btn-primary:active{opacity:.85}.btn-primary:disabled{opacity:.45;pointer-events:none}.btn-secondary{width:100%;color:var(--accent);border-radius:var(--radius);text-align:center;border:1.5px solid var(--accent);background:0 0;padding:14px 24px;font-size:16px;font-weight:600;transition:background .15s;display:block}.btn-secondary:active{background:var(--accent-bg)}.btn-ghost{color:var(--accent);padding:8px 4px;font-size:15px;font-weight:500}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px;padding:16px}.field-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.field-input{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);outline:none;width:100%;padding:12px 14px;font-size:16px;transition:border-color .15s}.field-input:focus{border-color:var(--accent)}.field-group{margin-bottom:20px}.toast{bottom:calc(var(--bottom-nav-h) + 16px);color:#fff;z-index:9999;white-space:nowrap;box-shadow:var(--shadow-md);background:#1a1208;border-radius:24px;padding:12px 20px;font-size:14px;font-weight:500;animation:.2s toast-in;position:fixed;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.sheet-backdrop{z-index:800;background:#0006;animation:.2s fade-in;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.sheet{background:var(--surface);z-index:900;border-radius:20px 20px 0 0;width:100%;max-width:430px;max-height:80vh;padding:12px 20px 32px;animation:.25s sheet-up;position:fixed;bottom:0;left:50%;overflow-y:auto;transform:translate(-50%)}@keyframes sheet-up{0%{transform:translate(-50%)translateY(100%)}to{transform:translate(-50%)translateY(0)}}.sheet-handle{background:var(--border);border-radius:2px;width:36px;height:4px;margin:0 auto 16px}.sheet-title{text-align:center;margin-bottom:16px;font-size:16px;font-weight:700}.chip{border:1.5px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;border-radius:20px;align-items:center;gap:4px;padding:5px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.pill-tabs{gap:8px;padding:0 16px 12px;display:flex}.pill-tab{text-align:center;color:var(--text-secondary);border:1.5px solid var(--border);background:var(--surface);border-radius:20px;flex:1;padding:8px 12px;font-size:14px;font-weight:500;transition:all .15s}.pill-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.status-dot.too-young{background:var(--status-young)}.status-dot.drink-now{background:var(--status-now)}.status-dot.past-peak{background:var(--status-peak)}.stepper{border:1.5px solid var(--border);border-radius:var(--radius-sm);align-items:center;width:fit-content;display:flex;overflow:hidden}.stepper-btn{background:var(--bg);width:44px;height:44px;color:var(--accent);justify-content:center;align-items:center;font-size:20px;font-weight:600;display:flex}.stepper-btn:active{background:var(--bg-warm)}.stepper-val{text-align:center;border-left:1.5px solid var(--border);border-right:1.5px solid var(--border);width:48px;padding:10px 0;font-size:16px;font-weight:600}.segmented{border:1.5px solid var(--border);border-radius:var(--radius-sm);display:flex;overflow:hidden}.segmented-option{text-align:center;color:var(--text-secondary);border-right:1.5px solid var(--border);background:var(--bg);flex:1;padding:10px 8px;font-size:14px;font-weight:500;transition:all .15s}.segmented-option:last-child{border-right:none}.segmented-option.active{background:var(--accent);color:#fff}.toggle-row{justify-content:space-between;align-items:center;display:flex}.toggle{width:48px;height:28px;position:relative}.toggle input{opacity:0;width:0;height:0}.toggle-slider{background:var(--border);cursor:pointer;border-radius:14px;transition:background .2s;position:absolute;inset:0}.toggle-slider:before{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.toggle input:checked+.toggle-slider{background:var(--accent)}.toggle input:checked+.toggle-slider:before{transform:translate(20px)}.section-header{background:var(--bg);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;z-index:10;border-bottom:1px solid var(--border);padding:8px 16px 6px;font-size:12px;font-weight:700;position:sticky;top:0}.empty-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:48px 32px;display:flex}.empty-state-icon{opacity:.6;margin-bottom:16px;font-size:48px}.empty-state-title{color:var(--text-secondary);margin-bottom:8px;font-size:16px;font-weight:600}.empty-state-text{font-size:14px;line-height:1.5}.divider{background:var(--border);height:1px;margin:12px 0}
