@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700;9..144,800&family=Inter+Tight:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Instrument+Serif&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500&display=swap";:root{--obsidian: #0a0a0a;--mint: #00e5a0;--mint-strong: #00c98d;--on-mint: #06251a;--coral: #ff6b6b;--canvas: #f5f5f7;--surface: #ffffff;--surface-2: #fafbfc;--ink: #0a0e1a;--text-2: #5b6472;--text-muted: #9aa0ab;--success: #22c55e;--warning: #f59e0b;--error: #ef4444;--info: #4a90d9;--border: hsl(220 13% 88%);--border-subtle: hsl(220 13% 93%);--signal-glow: rgba(0, 229, 160, .12);--signal-border: rgba(0, 229, 160, .32);--r-sm: 4px;--r-md: 6px;--r-lg: 8px;--r-xl: 12px;--r-2xl: 16px;--r-3xl: 22px;--r-full: 9999px;--sh-sm: 0 1px 3px rgba(15, 30, 24, .06), 0 1px 2px rgba(15, 30, 24, .04);--sh-md: 0 4px 16px rgba(15, 30, 24, .08), 0 1px 3px rgba(15, 30, 24, .04);--sh-lg: 0 10px 25px rgba(15, 30, 24, .1), 0 4px 8px rgba(15, 30, 24, .06);--sh-xl: 0 20px 44px rgba(15, 30, 24, .14), 0 8px 16px rgba(15, 30, 24, .08);--sh-signal: 0 0 0 1px var(--signal-border), 0 4px 18px var(--signal-glow);--focus: 0 0 0 2px var(--surface), 0 0 0 4px rgba(0, 229, 160, .5);--font-display: "Fraunces", "Georgia", "Times New Roman", serif;--font-body: "Inter Tight", "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", "Menlo", monospace;--dur: .16s;font-family:var(--font-body);color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}[data-theme=dark]{--obsidian: #05070a;--canvas: #0a0c0f;--surface: #14181c;--surface-2: #1a1f24;--ink: #f2f5f4;--text-2: rgba(242, 245, 244, .64);--text-muted: rgba(242, 245, 244, .42);--on-mint: #05231a;--border: rgba(255, 255, 255, .09);--border-subtle: rgba(255, 255, 255, .05);--signal-glow: rgba(0, 229, 160, .16);--signal-border: rgba(0, 229, 160, .38);--sh-sm: 0 1px 3px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .4);--sh-md: 0 4px 16px rgba(0, 0, 0, .55), 0 1px 3px rgba(0, 0, 0, .4);--sh-lg: 0 10px 25px rgba(0, 0, 0, .6), 0 4px 8px rgba(0, 0, 0, .45);--sh-xl: 0 22px 48px rgba(0, 0, 0, .65), 0 8px 16px rgba(0, 0, 0, .5);--focus: 0 0 0 2px var(--canvas), 0 0 0 4px rgba(0, 229, 160, .55)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--canvas);color:var(--ink)}main{width:min(1200px,calc(100% - 40px));margin:0 auto;padding:24px 0 72px}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em;margin:0;color:var(--ink)}h1{font-size:clamp(2rem,4.4vw,3.2rem);line-height:1.04;letter-spacing:-.03em;font-weight:700}h2{font-size:1.5rem;line-height:1.2;margin-bottom:12px}h3{font-size:1.125rem;line-height:1.3}h4{font-family:var(--font-body);font-size:.82rem;font-weight:700;letter-spacing:.02em;margin:0 0 8px;color:var(--ink)}p{line-height:1.55;margin:0 0 10px}a{color:var(--mint-strong)}code{font-family:var(--font-mono);font-size:.85em;background:var(--signal-glow);color:var(--ink);padding:2px 6px;border-radius:var(--r-sm)}.eyebrow{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--mint-strong);margin:0 0 6px}.muted{color:var(--text-2);font-size:.9rem}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.app-header{position:sticky;top:0;z-index:20;-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);background:color-mix(in srgb,var(--canvas) 82%,transparent);border-bottom:1px solid var(--border-subtle)}.app-header-inner{width:min(1200px,calc(100% - 40px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:1.05rem;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:var(--r-lg);background:var(--obsidian);color:var(--mint);box-shadow:var(--sh-signal)}.brand small{display:block;font-family:var(--font-body);font-weight:600;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:stretch;margin-top:24px}.hero-copy{padding:28px;border-radius:var(--r-3xl);background:radial-gradient(120% 140% at 8% 0%,var(--signal-glow),transparent 46%),var(--surface);border:1px solid var(--border);box-shadow:var(--sh-sm);display:flex;flex-direction:column;justify-content:center}.hero-copy p.lead{max-width:60ch;color:var(--text-2);font-size:1.02rem;margin-top:14px}.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--sh-sm);padding:20px}.panel-stack{display:grid;gap:18px}.section-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.11em;font-weight:700;color:var(--text-muted);margin:0 0 4px}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);border-radius:var(--r-full);padding:6px 12px;font-size:.78rem;font-weight:600;cursor:pointer;transition:var(--dur);-webkit-user-select:none;user-select:none}.chip:hover{border-color:var(--signal-border);color:var(--ink)}.chip.active{background:var(--signal-glow);border-color:var(--signal-border);color:var(--ink)}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-full);padding:4px 10px;font-size:.72rem;font-weight:700;background:var(--signal-glow);color:var(--mint-strong);white-space:nowrap}.badge.gray{background:var(--border-subtle);color:var(--text-2)}.badge.ok{background:color-mix(in srgb,var(--success) 14%,transparent);color:color-mix(in srgb,var(--success) 45%,var(--ink))}.badge.info{background:color-mix(in srgb,var(--info) 14%,transparent);color:color-mix(in srgb,var(--info) 45%,var(--ink))}.badge.warn{background:color-mix(in srgb,var(--warning) 16%,transparent);color:color-mix(in srgb,var(--warning) 45%,var(--ink))}[data-theme=dark] .badge.ok{color:var(--success)}[data-theme=dark] .badge.info{color:color-mix(in srgb,var(--info) 70%,#fff)}[data-theme=dark] .badge.warn{color:color-mix(in srgb,var(--warning) 85%,#fff)}.dot{width:7px;height:7px;border-radius:var(--r-full);flex:none}.dot.on{background:var(--mint)}.dot.under{background:var(--warning)}.dot.over{background:var(--coral)}.dot.met{background:var(--success)}.dot.miss{background:var(--text-muted)}.macro-pills{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.macro-pills span{padding:4px 9px;border-radius:var(--r-full);background:var(--surface-2);border:1px solid var(--border-subtle);color:var(--text-2);font-size:.74rem;font-weight:600}.macro-pills span b{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink);font-weight:700}.btn{font-family:var(--font-body);border:1px solid transparent;border-radius:var(--r-lg);padding:10px 16px;font-weight:700;font-size:.86rem;cursor:pointer;transition:var(--dur);display:inline-flex;align-items:center;gap:8px;color:var(--ink);background:var(--surface-2);border-color:var(--border)}.btn:hover{border-color:var(--signal-border)}.btn:active{transform:scale(.97)}.btn.primary{background:var(--mint);color:var(--on-mint);border-color:transparent}.btn.primary:hover{filter:brightness(1.06);border-color:transparent;box-shadow:var(--sh-signal)}.btn.ghost{background:transparent;border-color:var(--border)}.btn.danger{background:color-mix(in srgb,var(--error) 12%,transparent);color:var(--error);border-color:transparent}.btn.small{padding:7px 12px;font-size:.78rem}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.icon-btn{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;transition:var(--dur)}.icon-btn:hover{border-color:var(--signal-border);color:var(--mint-strong)}.tabs-wrap{position:sticky;top:55px;z-index:15;margin:20px 0;padding:6px 0;background:linear-gradient(var(--canvas) 62%,transparent)}.tabs{display:flex;flex-wrap:nowrap;gap:4px;padding:6px;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:saturate(1.3) blur(8px);backdrop-filter:saturate(1.3) blur(8px);border:1px solid var(--border);border-radius:var(--r-full);box-shadow:var(--sh-sm);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{height:0}.tabs button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--text-2);border-radius:var(--r-full);padding:9px 14px;font-weight:700;font-size:.82rem;font-family:var(--font-body);cursor:pointer;transition:var(--dur);white-space:nowrap;flex:none}.tabs button svg{opacity:.7;transition:var(--dur)}.tabs button:hover{color:var(--ink);background:var(--surface-2)}.tabs button.active{background:var(--obsidian);color:#fff;box-shadow:var(--sh-sm)}.tabs button.active svg{opacity:1;color:var(--mint)}[data-theme=dark] .tabs button.active svg{color:var(--on-mint)}.ring-wrap{display:flex;align-items:center;justify-content:center}.ring{transform:rotate(-90deg)}.ring-track{fill:none;stroke:var(--border);opacity:.6}.ring-value{fill:none;stroke-linecap:round;transition:stroke-dashoffset .5s ease}.ring-center{text-align:center;line-height:1.05}.ring-center .big{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700;font-size:1.5rem;color:var(--ink)}.ring-center .sub{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:700}.summary-card{padding:22px;display:flex;flex-direction:column;gap:16px;border-radius:var(--r-3xl)}.summary-rings{position:relative;display:grid;place-items:center}.summary-rings .ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.kpi{border:1px solid var(--border);border-radius:var(--r-xl);padding:12px;background:var(--surface-2)}.kpi .label{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--text-muted)}.kpi .value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700;font-size:1.35rem;letter-spacing:-.02em;margin-top:2px}.kpi .value small{font-size:.7rem;color:var(--text-muted);font-weight:600}.macro-bars{display:grid;gap:9px}.macro-bar-row{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:10px;font-size:.78rem}.macro-bar-row .lbl{color:var(--text-2);font-weight:600}.macro-bar-row .val{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink)}.track{height:8px;border-radius:var(--r-full);background:var(--border-subtle);overflow:hidden}.track>span{display:block;height:100%;border-radius:var(--r-full);background:var(--mint);transition:width .45s ease}.track.over>span{background:var(--coral)}.track.protein>span{background:var(--info)}.track.carbs>span{background:var(--warning)}.track.fat>span{background:#c084fc}.track.fiber>span{background:var(--success)}.days{display:grid;gap:18px}.day-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-2xl);box-shadow:var(--sh-sm);padding:20px;transition:box-shadow var(--dur),transform var(--dur)}.day-card:hover{box-shadow:var(--sh-md);transform:translateY(-1px)}.day-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid var(--border-subtle);padding-bottom:14px}.day-head h3{font-size:1.4rem}.adherence{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.meal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.meal{min-width:0}.meal-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--text-muted);margin:0 0 8px}.swap-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-2);border-radius:var(--r-full);width:22px;height:22px;display:grid;place-items:center;cursor:pointer;font-size:.8rem;line-height:1;transition:var(--dur);flex:none}.swap-btn:hover{border-color:var(--signal-border);color:var(--mint-strong)}.recipe-mini{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--r-xl);padding:12px;height:100%}.recipe-topline{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.recipe-topline h4{font-size:.9rem;line-height:1.25}.prep-note{margin-top:14px;padding:11px 14px;border-radius:var(--r-lg);background:var(--signal-glow);border:1px solid var(--signal-border);color:var(--ink);font-size:.86rem;font-weight:500}.swap-panel{margin-top:12px;border:1px solid var(--signal-border);border-radius:var(--r-xl);background:var(--surface-2);padding:12px;display:grid;gap:8px}.swap-opt{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;transition:var(--dur);font:inherit}.swap-opt:hover{border-color:var(--signal-border)}.swap-opt.current{border-color:var(--signal-border);background:var(--signal-glow)}.swap-opt .k{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700;font-size:.82rem}.table-wrap{overflow-x:auto;border-radius:var(--r-xl);border:1px solid var(--border)}table{border-collapse:collapse;width:100%;background:var(--surface);min-width:640px}th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}thead th{background:var(--surface-2);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2)}tbody tr:last-child td{border-bottom:0}td.n,th.n{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}td .sub{color:var(--text-muted);font-size:.82rem}tr.checked td{opacity:.42;text-decoration:line-through}.row-check{width:18px;height:18px;accent-color:var(--mint-strong);cursor:pointer}.week-grid,.prep-grid,.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.week-box,.prep-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:16px}.week-box ul,.prep-block ul{padding-left:18px;margin:8px 0 0}.week-box li,.prep-block li{margin:7px 0;font-size:.88rem}.recipe-list{display:grid;gap:14px}.recipe-full{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-2xl);padding:20px;box-shadow:var(--sh-sm)}.recipe-full h4{margin-top:16px;text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;color:var(--text-muted)}.ingredients{columns:2;padding-left:18px;margin:0}.ingredients li{margin:4px 0;font-size:.88rem}ol.steps{padding-left:20px;margin:0}ol.steps li{margin:6px 0;line-height:1.5}.tip{background:color-mix(in srgb,var(--warning) 12%,transparent);border:1px solid color-mix(in srgb,var(--warning) 34%,transparent);padding:10px 12px;border-radius:var(--r-lg);color:var(--ink);font-size:.86rem}.product{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:14px;box-shadow:var(--sh-sm);display:flex;flex-direction:column;gap:8px;transition:box-shadow var(--dur),transform var(--dur)}.product:hover{box-shadow:var(--sh-md);transform:translateY(-1px)}.product-media{display:flex;gap:12px;align-items:flex-start}.product-thumb{width:56px;height:56px;border-radius:var(--r-lg);object-fit:cover;background:var(--surface-2);border:1px solid var(--border-subtle);flex:none}.product-thumb.ph{display:grid;place-items:center;color:var(--text-muted);font-size:1.2rem}.badge-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.nutri{font-weight:800;font-size:.72rem;padding:3px 8px;border-radius:var(--r-sm);color:#fff;text-transform:uppercase;letter-spacing:.04em}.nutri.a{background:#038141}.nutri.b{background:#85bb2f;color:#1a2e05}.nutri.c{background:#fecb02;color:#3a2f00}.nutri.d{background:#ee8100}.nutri.e{background:#e63e11}.nova{font-family:var(--font-mono);font-weight:700;font-size:.7rem;padding:3px 8px;border-radius:var(--r-sm);background:var(--border-subtle);color:var(--text-2)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}input,select{font:inherit;font-size:.9rem;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:10px 12px;transition:var(--dur);width:100%}input::placeholder{color:var(--text-muted)}input:focus-visible,select:focus-visible{outline:none;border-color:var(--signal-border);box-shadow:0 0 0 3px var(--signal-glow)}input[type=number]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}label.field{display:grid;gap:5px;font-size:.76rem;font-weight:600;color:var(--text-2)}.search-bar{display:flex;gap:10px;align-items:stretch}.search-bar input{flex:1}.search-results{display:grid;gap:10px;margin-top:14px}.search-result{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface)}.search-result img,.search-result .ph{width:52px;height:52px;border-radius:var(--r-lg);object-fit:cover;background:var(--surface-2);border:1px solid var(--border-subtle)}.search-result .ph{display:grid;place-items:center;color:var(--text-muted)}.result-name{font-weight:700;font-size:.92rem;line-height:1.2}.empty-state{text-align:center;padding:36px 20px;color:var(--text-2);border:1px dashed var(--border);border-radius:var(--r-xl);background:var(--surface-2)}.empty-state .em{font-size:1.8rem;display:block;margin-bottom:8px}.spinner{width:20px;height:20px;border-radius:var(--r-full);border:2.5px solid var(--border);border-top-color:var(--mint-strong);animation:spin .7s linear infinite;display:inline-block}.inline-note{display:flex;align-items:center;gap:8px;color:var(--text-2);font-size:.86rem;padding:10px 0}.error-note{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:12px 14px;border-radius:var(--r-lg);background:color-mix(in srgb,var(--error) 10%,transparent);border:1px solid color-mix(in srgb,var(--error) 30%,transparent);color:var(--ink);font-size:.88rem}.skeleton{background:linear-gradient(90deg,var(--border-subtle) 25%,var(--border) 37%,var(--border-subtle) 63%);background-size:400% 100%;animation:shimmer 1.3s ease infinite;border-radius:var(--r-lg)}.spark{width:100%;height:56px;display:block}.spark path.line{fill:none;stroke:var(--mint-strong);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.spark path.area{fill:var(--signal-glow);stroke:none}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.today-hero{display:grid;grid-template-columns:200px 1fr;gap:20px;align-items:center}.check-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);margin-bottom:10px}.check-row.done{background:var(--signal-glow);border-color:var(--signal-border)}.check-row .cbx{width:22px;height:22px;accent-color:var(--mint-strong);cursor:pointer;flex:none}.check-row .grow{flex:1;min-width:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.fade-in{animation:fade-in-up .3s ease-out both}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media (max-width: 980px){.hero{grid-template-columns:1fr}.meal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-hero{grid-template-columns:1fr}}@media (max-width: 620px){main{width:calc(100% - 24px);padding-top:16px}.hero-copy,.card,.day-card{padding:16px}.meal-grid{grid-template-columns:1fr}.day-head{flex-direction:column}.ingredients{columns:1}.kpi-grid{grid-template-columns:repeat(3,1fr)}.app-header-inner,main{width:calc(100% - 24px)}}@media print{.app-header,.tabs,.hero,.btn,.btn-row,.swap-btn,.icon-btn,.no-print{display:none!important}body{background:#fff}main{width:100%;padding:0}.card,.week-box,.prep-block,table{box-shadow:none;border-color:#ccc;break-inside:avoid}.print-only{display:block!important}}.print-only{display:none}.product-thumb,.product-media img{transition:transform var(--dur) ease}.product:hover .product-thumb{transform:scale(1.05)}.btn.primary{background-image:linear-gradient(180deg,color-mix(in srgb,var(--mint) 86%,#fff),var(--mint))}.hero-copy{position:relative;overflow:hidden}.hero-copy:after{content:"";position:absolute;right:-90px;bottom:-90px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,var(--signal-glow),transparent 70%);pointer-events:none}.hero-copy>*{position:relative}.brand-mark{transition:box-shadow .3s ease,transform .3s ease}.brand:hover .brand-mark{transform:translateY(-1px);box-shadow:0 0 0 1px var(--signal-border),0 6px 22px #00e5a04d}.product-grid .product{animation:fade-in-up .32s ease-out both}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px;border:3px solid var(--canvas)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (max-width: 620px){.tabs-wrap{top:52px}}:root{--canvas: #f3f7f3;--surface: rgba(255, 255, 255, .86);--surface-2: rgba(247, 250, 247, .92);--ink: #07130f;--text-2: #526057;--text-muted: #8a968f;--mint: #15e6a2;--mint-strong: #05b77f;--coral: #ff6f61;--obsidian: #07110d;--border: rgba(18, 47, 35, .11);--border-subtle: rgba(18, 47, 35, .07);--signal-glow: rgba(21, 230, 162, .14);--signal-border: rgba(5, 183, 127, .34);--sh-sm: 0 1px 2px rgba(15, 30, 24, .04), 0 10px 28px rgba(15, 30, 24, .05);--sh-md: 0 18px 45px rgba(15, 30, 24, .1), 0 2px 6px rgba(15, 30, 24, .05);--sh-lg: 0 30px 80px rgba(15, 30, 24, .14), 0 8px 24px rgba(15, 30, 24, .08);--sh-xl: 0 40px 110px rgba(15, 30, 24, .22), 0 12px 30px rgba(15, 30, 24, .12)}[data-theme=dark]{--canvas: #070a08;--surface: rgba(16, 22, 20, .82);--surface-2: rgba(22, 31, 28, .88);--ink: #effaf5;--text-2: rgba(239, 250, 245, .7);--text-muted: rgba(239, 250, 245, .46);--border: rgba(230, 255, 246, .1);--border-subtle: rgba(230, 255, 246, .06);--signal-glow: rgba(21, 230, 162, .19);--signal-border: rgba(21, 230, 162, .42)}body{min-height:100vh;background:radial-gradient(900px 520px at 4% -10%,rgba(21,230,162,.19),transparent 58%),radial-gradient(760px 520px at 96% 6%,rgba(255,111,97,.12),transparent 55%),linear-gradient(135deg,color-mix(in srgb,var(--canvas) 92%,#ffffff 8%),var(--canvas));overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background-image:linear-gradient(rgba(10,17,13,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(10,17,13,.035) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 82%);mask-image:linear-gradient(to bottom,black,transparent 82%)}[data-theme=dark] body:before{background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px)}.app-header{background:color-mix(in srgb,var(--canvas) 70%,transparent);border-bottom:1px solid var(--border-subtle);box-shadow:0 12px 36px #0f1e180d}.app-header-inner{min-height:64px}.header-actions{display:inline-flex;align-items:center;gap:10px}.brand{font-size:1.08rem}.brand-mark{width:38px;height:38px;border-radius:14px;background:radial-gradient(circle at 35% 22%,rgba(255,255,255,.18),transparent 34%),linear-gradient(145deg,#091410,#0f251d 60%,#07110d);color:var(--mint);position:relative;overflow:hidden}.brand-mark:after{content:"";position:absolute;inset:auto -20% -40% -20%;height:55%;background:radial-gradient(closest-side,rgba(21,230,162,.52),transparent);filter:blur(10px)}.status-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:var(--r-full);border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 82%,transparent);box-shadow:var(--sh-sm);color:var(--text-2);font-size:.75rem;font-weight:800;letter-spacing:.02em}.status-dot{display:inline-block;width:8px;height:8px;border-radius:var(--r-full);background:var(--mint);box-shadow:0 0 0 5px #15e6a21f,0 0 18px #15e6a28c;flex:none}.app-main{position:relative}.hero-premium{position:relative;grid-template-columns:minmax(0,1.08fr) minmax(320px,.62fr)}.hero-premium:before{content:"";position:absolute;inset:-24px -24px auto -24px;height:310px;z-index:-1;border-radius:42px;background:radial-gradient(350px 180px at 24% 20%,rgba(21,230,162,.26),transparent 68%),radial-gradient(330px 180px at 75% 5%,rgba(255,111,97,.14),transparent 68%);filter:blur(6px)}.hero-premium .hero-copy{position:relative;overflow:hidden;min-height:430px;padding:clamp(28px,4vw,52px);background:radial-gradient(520px 300px at 12% 0%,rgba(21,230,162,.22),transparent 62%),radial-gradient(360px 280px at 92% 12%,rgba(255,111,97,.16),transparent 66%),linear-gradient(142deg,#07110d,#0b1b15 56%,#10271f);color:#f5fff9;border:1px solid rgba(255,255,255,.09);box-shadow:var(--sh-xl)}.hero-premium .hero-copy:after{content:"";position:absolute;right:-90px;bottom:-120px;width:310px;height:310px;border-radius:50%;border:1px solid rgba(21,230,162,.18);box-shadow:inset 0 0 0 22px #ffffff06,inset 0 0 0 54px #15e6a20b}.hero-premium .hero-copy h1,.hero-premium .hero-copy .lead,.hero-premium .hero-copy .eyebrow{color:inherit;position:relative;z-index:1}.hero-premium .hero-copy h1{max-width:760px;font-size:clamp(2.35rem,5.4vw,5.15rem);letter-spacing:-.055em;line-height:.95}.hero-premium .hero-copy .lead{color:#f5fff9bd;font-size:clamp(1rem,1.4vw,1.18rem);max-width:69ch}.hero-kicker{position:relative;z-index:1;display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;padding:8px 12px;border-radius:var(--r-full);background:#ffffff0f;border:1px solid rgba(255,255,255,.09);color:#f5fff9c7;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.metric-strip{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:26px 0 20px}.metric-strip>div{padding:13px 14px;border-radius:18px;background:#ffffff13;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.metric-strip strong{display:block;font-family:var(--font-mono);font-size:1rem;color:#fff}.metric-strip span{display:block;margin-top:2px;color:#f5fff994;font-size:.72rem;font-weight:700}.hero-premium .hero-tags{position:relative;z-index:1}.hero-premium .hero-tags .chip{background:#ffffff13;border-color:#ffffff1a;color:#f5fff9c7}.hero-premium .hero-tags .chip.active{background:linear-gradient(135deg,#15e6a2f2,#91ffdad1);color:var(--on-mint);border-color:transparent}.premium-summary{position:relative;overflow:hidden;background:radial-gradient(220px 150px at 50% 0%,var(--signal-glow),transparent 78%),color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(18px) saturate(1.35);backdrop-filter:blur(18px) saturate(1.35);box-shadow:var(--sh-lg)}.premium-summary:before{content:"LIVE PLAN";position:absolute;top:16px;right:18px;font-family:var(--font-mono);font-size:.62rem;font-weight:800;letter-spacing:.14em;color:var(--text-muted)}.card,.day-card,.week-box,.prep-block,.recipe-full,.product{-webkit-backdrop-filter:blur(14px) saturate(1.18);backdrop-filter:blur(14px) saturate(1.18);box-shadow:var(--sh-sm)}.card:hover,.product:hover,.day-card:hover,.week-box:hover,.prep-block:hover,.recipe-full:hover{border-color:color-mix(in srgb,var(--signal-border) 72%,var(--border))}.btn{border-radius:14px;box-shadow:0 1px #ffffff73 inset}.btn.primary{background:radial-gradient(90px 60px at 25% 0%,rgba(255,255,255,.55),transparent 62%),linear-gradient(135deg,var(--mint),#8cffd9 74%);box-shadow:0 12px 26px #05b77f33,0 1px #ffffff85 inset}.icon-btn{background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tabs-wrap.nav-lift{top:64px;margin:24px 0;padding:10px 0 12px;background:linear-gradient(to bottom,color-mix(in srgb,var(--canvas) 92%,transparent),color-mix(in srgb,var(--canvas) 70%,transparent) 72%,transparent)}.tabs{gap:6px;padding:7px;border-radius:22px;background:color-mix(in srgb,var(--surface) 78%,transparent);box-shadow:var(--sh-md)}.tabs button{padding:10px 15px}.tabs button.active{background:radial-gradient(80px 50px at 30% 0%,rgba(255,255,255,.16),transparent 62%),var(--obsidian);box-shadow:0 12px 24px #07110d2e}.product,.recipe-mini,.search-result,.swap-opt,.check-row,.kpi{border-radius:18px}.product-thumb,.search-result img,.search-result .ph{border-radius:16px}.product{padding:16px}.table-wrap{box-shadow:var(--sh-sm);background:var(--surface)}thead th{color:var(--text-muted);background:color-mix(in srgb,var(--surface-2) 94%,transparent)}input,select{min-height:43px;background:color-mix(in srgb,var(--surface) 92%,transparent)}input:focus-visible,select:focus-visible,button:focus-visible{outline:none;box-shadow:var(--focus)}@media (max-width: 980px){.hero-premium{grid-template-columns:1fr}.hero-premium .hero-copy{min-height:auto}}@media (max-width: 720px){.status-pill{display:none}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-premium .hero-copy h1{font-size:clamp(2.1rem,12vw,3.2rem)}}@media (max-width: 520px){.metric-strip{grid-template-columns:1fr}.tabs button span{display:none}.tabs button{padding-inline:13px}}.hero{grid-template-columns:minmax(0,1fr) 360px}.hero-copy{min-height:0}.hero-kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;padding:7px 12px;border-radius:var(--r-full);background:var(--signal-glow);border:1px solid var(--signal-border);color:var(--mint-strong);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.hero-copy h1{margin:4px 0 0}.hero-copy .lead{max-width:56ch;color:var(--text-2);margin-top:14px}.summary-card{gap:14px}.summary-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.summary-body{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}.summary-body .summary-rings{flex:none}.ring-center .big{font-size:1.55rem}.ring-center .sub{font-size:.62rem}.ring-legend{list-style:none;margin:0;padding:0;display:grid;gap:11px;flex:1;min-width:132px}.ring-legend li{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:10px}.ring-legend .ldot{width:11px;height:11px;border-radius:var(--r-full);box-shadow:0 0 0 3px color-mix(in srgb,currentColor 0%,transparent)}.ring-legend .lname{font-weight:700;font-size:.88rem;color:var(--ink)}.ring-legend .lval{font-size:.92rem;font-weight:700;color:var(--ink);white-space:nowrap}.ring-legend .lval i{color:var(--text-muted);font-style:normal;font-weight:600;font-size:.8rem}.summary-days{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 8px 8px 14px;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface-2)}.summary-days label{font-weight:700;font-size:.84rem;color:var(--text-2)}.summary-days input{width:86px;text-align:center}.summary-days .days-static{font-family:var(--font-mono);font-weight:700;font-size:1.15rem;padding-right:8px}@media (max-width: 980px){.hero{grid-template-columns:1fr}}.scanner-video{width:100%;max-width:420px;border-radius:var(--r-xl);border:1px solid var(--signal-border);background:#000;display:block;margin-top:10px}.confidence-row{display:flex;align-items:center;gap:10px;margin:8px 0}.confidence-row .track{flex:1;max-width:220px;height:8px}.confidence-row .pct{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700;font-size:.84rem;color:var(--ink);white-space:nowrap}.lookup-result{margin-top:12px;border:1px solid var(--signal-border);border-radius:var(--r-xl);background:var(--surface-2);padding:14px}.lookup-alt{display:grid;gap:8px;margin-top:10px}.tabs button{border-radius:16px;padding:11px 14px}.tabs button.active{background:#07110d;color:#fff;box-shadow:0 10px 24px #00000024}[data-theme=dark] .tabs button.active{background:var(--mint);color:var(--on-mint)}.card{border-radius:22px}.product{border-radius:20px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.product:hover{transform:translateY(-2px);box-shadow:var(--sh-md);border-color:var(--signal-border)}body{background:radial-gradient(1200px 600px at 8% -10%,rgba(0,229,160,.1),transparent 60%),radial-gradient(900px 500px at 100% 0%,rgba(74,144,217,.08),transparent 55%),var(--canvas);background-attachment:fixed}[data-theme=dark] body{background:radial-gradient(1200px 600px at 8% -10%,rgba(0,229,160,.12),transparent 60%),radial-gradient(900px 500px at 100% 0%,rgba(74,144,217,.1),transparent 55%),var(--canvas)}::selection{background:color-mix(in oklab,var(--mint) 40%,transparent);color:var(--on-mint)}.hero{position:relative;isolation:isolate;overflow:hidden}.hero:before,.hero:after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(60px);opacity:.55;pointer-events:none;animation:enh-float 18s ease-in-out infinite}.hero:before{width:380px;height:380px;left:-80px;top:-100px;background:radial-gradient(circle at 30% 30%,var(--mint),transparent 65%)}.hero:after{width:320px;height:320px;right:-60px;bottom:-120px;background:radial-gradient(circle at 60% 40%,var(--info),transparent 65%);animation-delay:-6s;animation-duration:22s}[data-theme=dark] .hero:before{opacity:.35}[data-theme=dark] .hero:after{opacity:.28}@keyframes enh-float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(40px,-30px) scale(1.08)}66%{transform:translate(-30px,40px) scale(.94)}}@media (prefers-reduced-motion: reduce){.hero:before,.hero:after{animation:none}}.hero-kicker .status-dot{box-shadow:0 0 0 4px color-mix(in oklab,var(--mint) 22%,transparent);animation:enh-pulse 2.4s ease-in-out infinite}@keyframes enh-pulse{0%,to{box-shadow:0 0 color-mix(in oklab,var(--mint) 40%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in oklab,var(--mint) 0%,transparent)}}.hero h1{background:linear-gradient(180deg,var(--ink) 40%,color-mix(in oklab,var(--ink) 70%,var(--mint) 30%) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.summary-card{position:relative;transition:transform var(--dur) ease,box-shadow var(--dur) ease}.summary-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,color-mix(in oklab,var(--mint) 8%,transparent),transparent 40%);opacity:.9}.summary-card:hover{transform:translateY(-2px);box-shadow:var(--sh-lg)}.ring-center .big{letter-spacing:-.02em}.summary-rings svg .ring-value{transition:stroke-dashoffset .7s cubic-bezier(.2,.8,.2,1)}.chip{transition:transform var(--dur) ease,box-shadow var(--dur) ease,background var(--dur) ease}.chip:hover{transform:translateY(-1px)}.chip.active{background:linear-gradient(135deg,color-mix(in oklab,var(--mint) 18%,var(--surface)),var(--surface));border-color:var(--signal-border);box-shadow:var(--sh-signal)}.tabs{gap:4px;padding:6px;background:color-mix(in oklab,var(--surface) 82%,transparent);backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px);border-radius:var(--r-full);border:1px solid var(--border-subtle);box-shadow:var(--sh-sm)}.tabs button{position:relative;transition:color var(--dur) ease,background var(--dur) ease,transform var(--dur) ease}.tabs button:hover:not(.active){background:color-mix(in oklab,var(--mint) 6%,transparent);color:var(--ink)}.tabs button.active{background:linear-gradient(135deg,var(--mint),var(--mint-strong));color:var(--on-mint);box-shadow:0 6px 18px color-mix(in oklab,var(--mint) 45%,transparent)}.tabs button.active svg{color:var(--on-mint)}.card{transition:transform var(--dur) ease,box-shadow var(--dur) ease,border-color var(--dur) ease}.card:hover{border-color:color-mix(in oklab,var(--mint) 30%,var(--border))}.enh-toast-root{position:fixed;bottom:24px;right:24px;z-index:1000;display:flex;flex-direction:column;gap:10px;pointer-events:none;max-width:min(360px,calc(100vw - 32px))}.enh-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:color-mix(in oklab,var(--surface) 92%,transparent);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--sh-lg);color:var(--ink);font-size:.9rem;line-height:1.35;animation:enh-toast-in .26s cubic-bezier(.2,.8,.2,1)}.enh-toast[data-variant=success]{border-left:3px solid var(--mint)}.enh-toast[data-variant=info]{border-left:3px solid var(--info)}.enh-toast[data-variant=warn]{border-left:3px solid var(--warning)}.enh-toast .enh-toast-icon{flex:0 0 auto;width:22px;height:22px;display:grid;place-items:center;border-radius:var(--r-full);background:color-mix(in oklab,var(--mint) 18%,transparent);color:var(--mint-strong)}.enh-toast[data-variant=info] .enh-toast-icon{background:color-mix(in oklab,var(--info) 18%,transparent);color:var(--info)}.enh-toast[data-variant=warn] .enh-toast-icon{background:color-mix(in oklab,var(--warning) 18%,transparent);color:var(--warning)}.enh-toast .enh-toast-body{flex:1}.enh-toast .enh-toast-title{font-weight:600}.enh-toast .enh-toast-desc{color:var(--text-2);font-size:.82rem;margin-top:2px}@keyframes enh-toast-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.enh-cmd-hint{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:color-mix(in oklab,var(--surface-2) 90%,transparent);border:1px solid var(--border-subtle);border-radius:var(--r-md);font-family:var(--font-mono);font-size:.72rem;color:var(--text-2);cursor:pointer;transition:transform var(--dur) ease,border-color var(--dur) ease}.enh-cmd-hint:hover{border-color:var(--signal-border);transform:translateY(-1px)}.enh-cmd-hint kbd{font-family:inherit;background:transparent;border:none;padding:0}.enh-cmd-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;background:color-mix(in oklab,var(--obsidian) 55%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;place-items:start center;padding-top:12vh;animation:enh-fade-in .16s ease}@keyframes enh-fade-in{0%{opacity:0}to{opacity:1}}.enh-cmd-panel{width:min(560px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--border);border-radius:var(--r-2xl);box-shadow:var(--sh-xl);overflow:hidden;animation:enh-cmd-in .2s cubic-bezier(.2,.8,.2,1)}@keyframes enh-cmd-in{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.enh-cmd-input{width:100%;border:0;outline:0;padding:18px 20px;font-size:1rem;background:transparent;color:var(--ink);font-family:inherit;border-bottom:1px solid var(--border-subtle)}.enh-cmd-input::placeholder{color:var(--text-muted)}.enh-cmd-list{list-style:none;padding:8px;margin:0;max-height:60vh;overflow-y:auto}.enh-cmd-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--r-lg);cursor:pointer;color:var(--ink);font-size:.92rem}.enh-cmd-item[aria-selected=true],.enh-cmd-item:hover{background:color-mix(in oklab,var(--mint) 12%,transparent)}.enh-cmd-item .enh-cmd-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--r-md);background:color-mix(in oklab,var(--mint) 14%,transparent);color:var(--mint-strong)}.enh-cmd-item .enh-cmd-shortcut{margin-left:auto;font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted)}.enh-cmd-empty{padding:20px;text-align:center;color:var(--text-2);font-size:.88rem}.enh-cmd-foot{padding:10px 14px;border-top:1px solid var(--border-subtle);font-size:.72rem;color:var(--text-muted);display:flex;justify-content:space-between;gap:12px;font-family:var(--font-mono)}.enh-insight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:16px}.enh-stat{padding:18px;border-radius:var(--r-2xl);border:1px solid var(--border-subtle);background:linear-gradient(180deg,var(--surface) 60%,var(--surface-2));box-shadow:var(--sh-sm);position:relative;overflow:hidden;transition:transform var(--dur) ease,box-shadow var(--dur) ease}.enh-stat:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}.enh-stat:after{content:"";position:absolute;top:-30px;right:-30px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,color-mix(in oklab,var(--stat-tint, var(--mint)) 22%,transparent),transparent 70%);pointer-events:none}.enh-stat .enh-stat-label{display:flex;align-items:center;gap:8px;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2)}.enh-stat .enh-stat-icon{width:26px;height:26px;display:grid;place-items:center;border-radius:var(--r-md);background:color-mix(in oklab,var(--stat-tint, var(--mint)) 18%,transparent);color:var(--stat-tint, var(--mint-strong))}.enh-stat .enh-stat-value{font-family:var(--font-display);font-size:2rem;font-weight:700;letter-spacing:-.02em;margin-top:8px;color:var(--ink)}.enh-stat .enh-stat-value small{font-size:.9rem;color:var(--text-2);font-weight:500}.enh-stat .enh-stat-sub{margin-top:4px;font-size:.82rem;color:var(--text-2)}.enh-heatmap{display:grid;grid-template-columns:repeat(auto-fill,minmax(14px,1fr));gap:4px;margin-top:12px}.enh-heatmap .enh-cell{aspect-ratio:1;border-radius:4px;background:color-mix(in oklab,var(--mint) calc(var(--i, 0) * 25%),var(--surface-2));border:1px solid var(--border-subtle);transition:transform var(--dur) ease}.enh-heatmap .enh-cell:hover{transform:scale(1.15)}.enh-macro-donut{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.enh-macro-donut svg{flex:0 0 auto}.enh-macro-donut .enh-macro-legend{display:flex;flex-direction:column;gap:6px;font-size:.88rem}.enh-macro-donut .enh-macro-legend span{display:inline-flex;align-items:center;gap:8px}.enh-macro-donut .enh-macro-legend .dot{width:10px;height:10px;border-radius:50%}.enh-ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:16px}.enh-ach{position:relative;padding:18px;border-radius:var(--r-2xl);border:1px solid var(--border-subtle);background:var(--surface);overflow:hidden;transition:transform var(--dur) ease,box-shadow var(--dur) ease,border-color var(--dur) ease}.enh-ach.unlocked{border-color:var(--signal-border);box-shadow:0 8px 22px color-mix(in oklab,var(--mint) 22%,transparent)}.enh-ach.unlocked:hover{transform:translateY(-3px)}.enh-ach.locked{opacity:.68;filter:grayscale(.4)}.enh-ach .enh-ach-medal{width:42px;height:42px;border-radius:var(--r-full);display:grid;place-items:center;background:linear-gradient(135deg,var(--mint),var(--mint-strong));color:var(--on-mint);box-shadow:var(--sh-sm)}.enh-ach.locked .enh-ach-medal{background:color-mix(in oklab,var(--text-muted) 30%,var(--surface-2));color:var(--text-2);box-shadow:none}.enh-ach h4{margin:12px 0 4px;font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--ink)}.enh-ach p{margin:0;font-size:.85rem;color:var(--text-2)}.enh-ach .enh-ach-progress{height:6px;border-radius:var(--r-full);background:var(--surface-2);overflow:hidden;margin-top:12px}.enh-ach .enh-ach-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),var(--mint-strong));transition:width .6s cubic-bezier(.2,.8,.2,1)}.enh-ach .enh-ach-meta{margin-top:6px;font-size:.72rem;color:var(--text-muted);font-family:var(--font-mono)}.enh-ach-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.enh-ach-summary .enh-ach-ring{display:inline-flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--r-full);background:linear-gradient(135deg,color-mix(in oklab,var(--mint) 18%,var(--surface)),var(--surface));border:1px solid var(--signal-border);box-shadow:var(--sh-signal);font-family:var(--font-display);font-weight:600}.enh-ach-summary .enh-ach-ring b{font-size:1.4rem;color:var(--mint-strong)}.header-actions .enh-cmd-hint{margin-right:4px}.enh-skel{background:linear-gradient(90deg,var(--surface-2) 0%,color-mix(in oklab,var(--surface-2) 60%,var(--mint) 8%) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:enh-shimmer 1.4s linear infinite;border-radius:var(--r-md)}@keyframes enh-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:none;box-shadow:var(--focus)}.app-header .brand{transition:transform .22s cubic-bezier(.2,.8,.2,1)}.app-header .brand:hover{transform:translateY(-1px)}.app-header .brand-mark{transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .22s}.app-header .brand:hover .brand-mark{transform:rotate(-8deg) scale(1.06);box-shadow:0 6px 20px #00e5a047}.hero h1{background:linear-gradient(120deg,var(--ink) 0%,var(--ink) 55%,color-mix(in oklab,var(--mint-strong) 65%,var(--ink)) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}[data-theme=dark] .hero h1{background:linear-gradient(120deg,#f5f6f4,#f5f6f4 55%,color-mix(in oklab,var(--mint) 70%,#f5f6f4));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero .lead{font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.6;max-width:56ch}.hero .hero-kicker{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:600;color:var(--text-2)}.hero .chip{transition:transform .18s,background .18s,border-color .18s}.hero .chip:hover{transform:translateY(-1px);border-color:var(--signal-border)}.card{transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s cubic-bezier(.2,.8,.2,1),border-color .22s;will-change:transform}.summary-card:hover{transform:translateY(-2px);box-shadow:var(--sh-xl)}.btn{transition:transform .14s cubic-bezier(.2,.8,.2,1),box-shadow .16s,background .16s,border-color .16s}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn.primary:hover:not(:disabled){box-shadow:0 8px 22px #00e5a052}.tabs button{position:relative;transition:color .16s,background .16s}.tabs button:after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:2px;border-radius:2px;background:var(--mint);transform:scaleX(0);transform-origin:center;transition:transform .22s cubic-bezier(.2,.8,.2,1);opacity:0}.tabs button:hover:after{transform:scaleX(.55);opacity:.55}.tabs button.active:after{transform:scaleX(1);opacity:1}.onboard-card{margin:12px 0 18px;padding:18px 20px;border-radius:var(--r-2xl);background:linear-gradient(180deg,color-mix(in oklab,var(--mint) 6%,var(--surface)) 0%,var(--surface) 100%);border:1px solid var(--signal-border);box-shadow:var(--sh-md);position:relative;overflow:hidden;animation:onboard-in .38s cubic-bezier(.2,.8,.2,1)}.onboard-card.onboard-done{background:linear-gradient(180deg,color-mix(in oklab,var(--success) 8%,var(--surface)) 0%,var(--surface) 100%);border-color:color-mix(in oklab,var(--success) 40%,transparent)}.onboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.onboard-title{display:flex;gap:12px;align-items:center}.onboard-badge{width:34px;height:34px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--mint) 0%,var(--mint-strong) 100%);color:var(--on-mint);box-shadow:0 4px 12px #00e5a047}.onboard-done .onboard-badge{background:linear-gradient(135deg,var(--success) 0%,#16a34a 100%);color:#06251a}.onboard-toggle{align-self:flex-start}.onboard-progress{height:6px;width:100%;border-radius:999px;background:color-mix(in oklab,var(--border) 70%,transparent);overflow:hidden;margin-bottom:12px}.onboard-progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--mint) 0%,var(--info) 100%);border-radius:inherit;transition:width .48s cubic-bezier(.2,.8,.2,1)}.onboard-done .onboard-progress>span{background:linear-gradient(90deg,var(--success) 0%,#16a34a 100%)}.onboard-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}.onboard-steps li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-lg);background:var(--surface-2);border:1px solid var(--border-subtle);transition:transform .18s,border-color .18s,background .18s}.onboard-steps li:hover{transform:translate(2px);border-color:var(--signal-border)}.onboard-steps li.done{opacity:.72}.onboard-steps .step-mark{width:26px;height:26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.78rem;background:color-mix(in oklab,var(--info) 12%,var(--surface));color:var(--info);border:1px solid color-mix(in oklab,var(--info) 30%,transparent);flex:0 0 auto}.onboard-steps li.done .step-mark{background:color-mix(in oklab,var(--success) 20%,var(--surface));color:var(--success);border-color:color-mix(in oklab,var(--success) 40%,transparent)}.onboard-steps .step-body{flex:1;min-width:0}.onboard-steps .step-label{font-weight:600;font-size:.92rem}.onboard-steps .step-hint{color:var(--text-2);font-size:.8rem;line-height:1.4;margin-top:2px}.onboard-steps .step-cta{flex:0 0 auto}@keyframes onboard-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.sync-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 14px;border-radius:var(--r-lg);background:var(--surface-2);border:1px solid var(--border-subtle)}.sync-dot{width:8px;height:8px;border-radius:999px;background:var(--text-muted);box-shadow:0 0 0 3px color-mix(in oklab,var(--text-muted) 20%,transparent)}.sync-dot.ok{background:var(--success);box-shadow:0 0 0 3px color-mix(in oklab,var(--success) 25%,transparent);animation:sync-pulse 2.4s ease-in-out infinite}.sync-dot.err{background:var(--error);box-shadow:0 0 0 3px color-mix(in oklab,var(--error) 25%,transparent)}.sync-meta{font-size:.82rem;color:var(--text-2);display:flex;gap:8px;flex-wrap:wrap}.sync-meta b{color:var(--ink);font-weight:600}@keyframes sync-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in oklab,var(--success) 25%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in oklab,var(--success) 10%,transparent)}}.profile-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:var(--r-xl);background:var(--surface-2);border:1px solid var(--border-subtle);margin-top:8px}.avatar-circle{width:42px;height:42px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--mint) 0%,var(--info) 100%);color:var(--on-mint);font-weight:700;font-size:1rem}.profile-meta{flex:1;min-width:0}.profile-meta .name{font-weight:600;color:var(--ink)}.profile-meta .sub{font-size:.82rem;color:var(--text-2)}.google-btn{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:var(--r-lg);background:#fff;color:#202124;border:1px solid #dadce0;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:box-shadow .16s,transform .14s}.google-btn:hover{box-shadow:0 2px 8px #3c40433d;transform:translateY(-1px)}.google-g{width:18px;height:18px;flex:0 0 auto}.recipe-info-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid var(--border, rgba(0, 0, 0, .12));background:color-mix(in oklab,var(--info, #4a90d9) 6%,transparent);color:var(--fg, inherit);font-size:.78rem;line-height:1;cursor:pointer;transition:background .16s,transform .16s,border-color .16s}.recipe-info-btn:hover{background:color-mix(in oklab,var(--info, #4a90d9) 14%,transparent);border-color:color-mix(in oklab,var(--info, #4a90d9) 35%,var(--border, rgba(0, 0, 0, .12)));transform:translateY(-1px)}.recipe-info-btn.open{background:color-mix(in oklab,var(--info, #4a90d9) 20%,transparent);border-color:color-mix(in oklab,var(--info, #4a90d9) 45%,transparent)}.recipe-info-btn:focus-visible{outline:2px solid var(--info, #4a90d9);outline-offset:2px}.recipe-info-btn-label{font-weight:500}@media (max-width: 520px){.recipe-info-btn-label{display:none}}.recipe-details-panel{margin-top:10px;padding:14px 16px;border-radius:var(--r-lg, 14px);border:1px solid var(--border, rgba(0, 0, 0, .1));background:color-mix(in oklab,var(--card, #fff) 96%,var(--info, #4a90d9) 4%);box-shadow:0 4px 18px -12px #00000040;display:block}.recipe-details-panel.is-compact{padding:12px 14px}.recipe-details-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.recipe-details-head-left{display:flex;align-items:center;gap:10px;min-width:0}.recipe-details-thumb{width:46px;height:46px;border-radius:var(--r-md, 10px);object-fit:cover;flex:none}.recipe-details-title{display:block;font-size:1rem;line-height:1.2;margin-top:2px}.recipe-details-panel h4{margin-top:12px;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;opacity:.75}.hub-stack{display:flex;flex-direction:column;gap:14px}.hub-intro{padding:16px 18px;border-radius:var(--r-lg, 14px);border:1px solid var(--border, rgba(0, 0, 0, .1));background:linear-gradient(135deg,color-mix(in oklab,var(--info, #4a90d9) 8%,transparent),color-mix(in oklab,var(--mint, #00e5a0) 6%,transparent))}.hub-intro h2{margin:0 0 4px}.hub-intro p{margin:0;opacity:.85;font-size:.9rem}.hub-section{border:1px solid var(--border, rgba(0, 0, 0, .1));border-radius:var(--r-lg, 14px);background:var(--card, #fff);overflow:hidden;transition:box-shadow .2s,border-color .2s}.hub-section[open]{box-shadow:0 10px 32px -18px #00000059;border-color:color-mix(in oklab,var(--info, #4a90d9) 30%,var(--border, rgba(0, 0, 0, .1)))}.hub-section-summary{list-style:none;cursor:pointer;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;-webkit-user-select:none;user-select:none;transition:background .16s}.hub-section-summary::-webkit-details-marker{display:none}.hub-section-summary:hover{background:color-mix(in oklab,var(--info, #4a90d9) 5%,transparent)}.hub-section-summary:focus-visible{outline:2px solid var(--info, #4a90d9);outline-offset:-2px}.hub-summary-left{display:flex;align-items:center;gap:12px;min-width:0}.hub-summary-icon{width:36px;height:36px;border-radius:var(--r-md, 10px);display:inline-flex;align-items:center;justify-content:center;background:color-mix(in oklab,var(--info, #4a90d9) 12%,transparent);color:var(--info, #4a90d9);flex:none}.hub-summary-title{display:block;font-weight:600;font-size:1rem;line-height:1.15}.hub-summary-hint{display:block;font-size:.78rem;opacity:.7;margin-top:2px}.hub-summary-chevron{transition:transform .26s cubic-bezier(.2,.8,.2,1);opacity:.7;flex:none}.hub-section[open] .hub-summary-chevron{transform:rotate(180deg);opacity:1}.hub-section-body{padding:6px 14px 18px;border-top:1px solid color-mix(in oklab,var(--border, rgba(0, 0, 0, .1)) 65%,transparent);animation:hub-slide-in .24s cubic-bezier(.2,.8,.2,1)}@keyframes hub-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.hub-section-body{animation:none}.hub-summary-chevron{transition:none}}.must-urgent-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border, rgba(0, 0, 0, .12));background:transparent;font-size:.78rem;cursor:pointer;color:var(--fg, inherit);transition:background .16s,border-color .16s,color .16s}.must-urgent-toggle input{accent-color:var(--coral, #ff6b6b)}.must-urgent-toggle.on{background:color-mix(in oklab,var(--coral, #ff6b6b) 12%,transparent);border-color:color-mix(in oklab,var(--coral, #ff6b6b) 45%,transparent);color:var(--coral, #ff6b6b)}.must-urgent-help{margin:4px 0 0;font-size:.78rem;opacity:.72;line-height:1.35}.badge.urgent{background:color-mix(in oklab,var(--coral, #ff6b6b) 18%,transparent);color:var(--coral, #ff6b6b);border:1px solid color-mix(in oklab,var(--coral, #ff6b6b) 40%,transparent)}.recipe-mini .recipe-topline{gap:8px}.meal-recipe-actions{display:flex;align-items:center;gap:6px;margin-top:6px}.check-row .recipe-info-btn{margin-left:6px}.check-row-details{grid-column:1 / -1;margin-top:8px}:root{--v13-accent: #22c58a;--v13-accent-strong: #14b47a;--v13-accent-soft: #d9f5e7;--v13-violet: #7c5cff;--v13-violet-soft: #ece5ff;--v13-coral: #ff6b6b;--v13-coral-soft: #ffe1e1;--v13-amber: #f5b400;--v13-amber-soft: #fff2c9;--v13-sky: #3aa7ff;--v13-sky-soft: #d8ecff;--v13-grad-hero: linear-gradient(135deg, #eafff5 0%, #f4f0ff 45%, #fff6e5 100%);--v13-grad-brand: linear-gradient(135deg, var(--v13-accent) 0%, var(--v13-violet) 100%);--v13-grad-warm: linear-gradient(135deg, var(--v13-coral) 0%, var(--v13-amber) 100%);--v13-grad-cool: linear-gradient(135deg, var(--v13-sky) 0%, var(--v13-violet) 100%);--v13-shadow-sm: 0 1px 2px rgba(15, 23, 42, .05), 0 1px 4px rgba(15, 23, 42, .04);--v13-shadow-md: 0 8px 24px -12px rgba(15, 23, 42, .18), 0 2px 6px rgba(15, 23, 42, .05);--v13-shadow-lg: 0 24px 48px -20px rgba(15, 23, 42, .28), 0 6px 16px -8px rgba(15, 23, 42, .1);--v13-shadow-glow: 0 0 0 4px rgba(34, 197, 138, .14);--v13-ring-focus: 0 0 0 3px rgba(124, 92, 255, .28);--v13-ease-out: cubic-bezier(.22, 1, .36, 1);--v13-ease-spring: cubic-bezier(.34, 1.56, .64, 1)}:root.dark,.dark{--v13-accent-soft: rgba(34, 197, 138, .14);--v13-violet-soft: rgba(124, 92, 255, .18);--v13-coral-soft: rgba(255, 107, 107, .14);--v13-amber-soft: rgba(245, 180, 0, .14);--v13-sky-soft: rgba(58, 167, 255, .16);--v13-grad-hero: linear-gradient(135deg, #0e1a17 0%, #17132a 45%, #211a10 100%);--v13-shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--v13-shadow-md: 0 12px 28px -14px rgba(0, 0, 0, .55), 0 2px 6px rgba(0, 0, 0, .35);--v13-shadow-lg: 0 28px 56px -22px rgba(0, 0, 0, .65), 0 6px 20px -8px rgba(0, 0, 0, .4);--v13-shadow-glow: 0 0 0 4px rgba(34, 197, 138, .24)}::selection{background:color-mix(in oklab,var(--v13-accent) 30%,transparent);color:var(--ink, #0f172a)}html{scroll-behavior:smooth}body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.app-header{position:sticky;top:0;z-index:40;background:color-mix(in oklab,var(--surface, #ffffff) 82%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;background-image:linear-gradient(color-mix(in oklab,var(--surface, #fff) 82%,transparent),color-mix(in oklab,var(--surface, #fff) 82%,transparent)),var(--v13-grad-brand);background-origin:border-box;background-clip:padding-box,border-box;transition:box-shadow .3s var(--v13-ease-out)}.app-header:hover{box-shadow:var(--v13-shadow-md)}.brand{gap:10px;letter-spacing:-.01em;font-weight:700}.brand-mark{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--v13-grad-brand);color:#fff;box-shadow:0 6px 18px -8px color-mix(in oklab,var(--v13-accent) 65%,transparent);transition:transform .35s var(--v13-ease-spring)}.brand:hover .brand-mark{transform:rotate(-6deg) scale(1.06)}.status-pill{border-radius:999px;padding:4px 10px;background:var(--v13-accent-soft);color:var(--v13-accent-strong);font-weight:600;font-size:12px;transition:transform .2s var(--v13-ease-out)}.status-pill:hover{transform:translateY(-1px)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--v13-accent);box-shadow:0 0 0 4px color-mix(in oklab,var(--v13-accent) 25%,transparent);animation:v13-pulse 2.4s ease-in-out infinite}@keyframes v13-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in oklab,var(--v13-accent) 25%,transparent)}50%{box-shadow:0 0 0 7px color-mix(in oklab,var(--v13-accent) 8%,transparent)}}.icon-btn,.account-btn,.enh-cmd-hint{border-radius:12px;transition:transform .2s var(--v13-ease-out),background-color .2s var(--v13-ease-out),box-shadow .2s var(--v13-ease-out),color .2s var(--v13-ease-out)}.icon-btn:hover,.account-btn:hover,.enh-cmd-hint:hover{transform:translateY(-1px);background:color-mix(in oklab,var(--v13-violet) 12%,var(--surface, #fff));color:var(--v13-violet);box-shadow:var(--v13-shadow-sm)}.icon-btn:active,.account-btn:active{transform:translateY(0) scale(.98)}.hero{position:relative;overflow:hidden;border-radius:28px;padding:clamp(24px,4vw,44px);background:var(--v13-grad-hero);box-shadow:var(--v13-shadow-lg);isolation:isolate}.hero:before{content:"";position:absolute;inset:-40% -20% auto auto;width:60%;aspect-ratio:1;background:radial-gradient(closest-side,color-mix(in oklab,var(--v13-violet) 35%,transparent),transparent 70%);filter:blur(30px);z-index:-1;animation:v13-float 14s ease-in-out infinite}.hero:after{content:"";position:absolute;inset:auto auto -30% -20%;width:55%;aspect-ratio:1;background:radial-gradient(closest-side,color-mix(in oklab,var(--v13-accent) 40%,transparent),transparent 70%);filter:blur(30px);z-index:-1;animation:v13-float 18s ease-in-out -6s infinite reverse}@keyframes v13-float{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(-20px,25px,0) scale(1.08)}}.hero h1{font-family:var(--font-display, inherit);font-weight:800;letter-spacing:-.025em;line-height:1.05;font-size:clamp(28px,4.4vw,46px);background:linear-gradient(135deg,var(--ink, #0f172a) 0%,var(--v13-violet) 70%,var(--v13-accent-strong) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero .lead{color:color-mix(in oklab,var(--ink, #0f172a) 75%,transparent);max-width:60ch;font-size:clamp(15px,1.4vw,17px);line-height:1.6}.hero-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:color-mix(in oklab,var(--surface, #fff) 70%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:12.5px;font-weight:600;color:var(--v13-accent-strong);box-shadow:var(--v13-shadow-sm)}.chip{border-radius:999px;padding:6px 14px;border:1px solid color-mix(in oklab,var(--ink, #0f172a) 8%,transparent);background:color-mix(in oklab,var(--surface, #fff) 92%,transparent);font-weight:600;transition:transform .2s var(--v13-ease-out),box-shadow .2s var(--v13-ease-out),background .2s var(--v13-ease-out),border-color .2s var(--v13-ease-out),color .2s var(--v13-ease-out)}.chip:hover{transform:translateY(-2px);box-shadow:var(--v13-shadow-md);border-color:color-mix(in oklab,var(--v13-accent) 40%,transparent)}.chip.active{background:var(--v13-grad-brand);border-color:transparent;color:#fff;box-shadow:0 10px 24px -12px color-mix(in oklab,var(--v13-violet) 60%,transparent)}.card,.day-card,.kpi,.summary-card,.profile-card,.enh-stat,.product,.prep-block,.week-box,.meal,.recipe-mini,.recipe-full{border-radius:20px;background:var(--surface, #fff);border:1px solid color-mix(in oklab,var(--ink, #0f172a) 6%,transparent);box-shadow:var(--v13-shadow-sm);transition:transform .35s var(--v13-ease-out),box-shadow .35s var(--v13-ease-out),border-color .35s var(--v13-ease-out);will-change:transform}.card:hover,.day-card:hover,.kpi:hover,.enh-stat:hover,.product:hover,.prep-block:hover,.week-box:hover,.meal:hover,.recipe-mini:hover{transform:translateY(-3px);box-shadow:var(--v13-shadow-lg);border-color:color-mix(in oklab,var(--v13-violet) 22%,transparent)}.day-card,.kpi,.enh-stat,.summary-card{position:relative;overflow:hidden}.day-card:before,.kpi:before,.enh-stat:before,.summary-card:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--v13-grad-brand);opacity:0;transition:opacity .35s var(--v13-ease-out)}.day-card:hover:before,.kpi:hover:before,.enh-stat:hover:before,.summary-card:hover:before{opacity:1}.enh-stat-icon{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--v13-accent-soft);color:var(--v13-accent-strong);transition:transform .3s var(--v13-ease-spring),background .3s var(--v13-ease-out)}.enh-stat:hover .enh-stat-icon{transform:rotate(-6deg) scale(1.08)}.enh-stat:nth-child(4n+2) .enh-stat-icon{background:var(--v13-violet-soft);color:var(--v13-violet)}.enh-stat:nth-child(4n+3) .enh-stat-icon{background:var(--v13-coral-soft);color:var(--v13-coral)}.enh-stat:nth-child(4n+4) .enh-stat-icon{background:var(--v13-amber-soft);color:color-mix(in oklab,var(--v13-amber) 80%,#7a5a00)}.enh-stat:nth-child(4n+5) .enh-stat-icon{background:var(--v13-sky-soft);color:var(--v13-sky)}.btn{border-radius:14px;font-weight:600;transition:transform .2s var(--v13-ease-out),box-shadow .25s var(--v13-ease-out),background .25s var(--v13-ease-out),color .25s var(--v13-ease-out),border-color .25s var(--v13-ease-out)}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--v13-shadow-md)}.btn:active:not(:disabled){transform:translateY(0) scale(.985)}.btn.primary,.btn:where(.primary){background:var(--v13-grad-brand);color:#fff;border-color:transparent;box-shadow:0 12px 26px -14px color-mix(in oklab,var(--v13-violet) 65%,transparent)}.btn.primary:hover:not(:disabled){box-shadow:0 18px 34px -14px color-mix(in oklab,var(--v13-violet) 75%,transparent),var(--v13-shadow-glow);filter:saturate(1.08)}.btn.danger{color:var(--v13-coral)}.btn.danger:hover:not(:disabled){background:var(--v13-coral-soft);color:color-mix(in oklab,var(--v13-coral) 80%,#6a0000)}.btn.ghost:hover:not(:disabled){background:var(--v13-accent-soft);color:var(--v13-accent-strong)}.hub-section{border-radius:20px;overflow:hidden;background:var(--surface, #fff);border:1px solid color-mix(in oklab,var(--ink, #0f172a) 6%,transparent);box-shadow:var(--v13-shadow-sm);transition:box-shadow .3s var(--v13-ease-out),transform .3s var(--v13-ease-out)}.hub-section:hover{box-shadow:var(--v13-shadow-md)}.hub-section[open]{box-shadow:var(--v13-shadow-md);border-color:color-mix(in oklab,var(--v13-accent) 30%,transparent)}.hub-section-summary{cursor:pointer;padding:16px 18px;display:flex;align-items:center;gap:14px;transition:background .25s var(--v13-ease-out)}.hub-section-summary:hover{background:linear-gradient(90deg,color-mix(in oklab,var(--v13-accent) 8%,transparent),transparent 70%)}.hub-summary-icon{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--v13-accent-soft);color:var(--v13-accent-strong);transition:transform .3s var(--v13-ease-spring)}.hub-section:hover .hub-summary-icon{transform:rotate(-4deg) scale(1.06)}.hub-section:nth-of-type(2) .hub-summary-icon{background:var(--v13-violet-soft);color:var(--v13-violet)}.hub-section:nth-of-type(3) .hub-summary-icon{background:var(--v13-amber-soft);color:color-mix(in oklab,var(--v13-amber) 80%,#7a5a00)}.hub-summary-chevron{transition:transform .35s var(--v13-ease-spring)}.hub-section[open] .hub-summary-chevron{transform:rotate(180deg)}.hub-section-body{padding:4px 18px 20px;animation:v13-slide-in .35s var(--v13-ease-out)}@keyframes v13-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.tabs button,.tabs [role=tab]{position:relative;padding:10px 14px;border-radius:12px;transition:color .2s var(--v13-ease-out),background .2s var(--v13-ease-out)}.tabs button:after,.tabs [role=tab]:after{content:"";position:absolute;left:20%;right:20%;bottom:4px;height:2px;border-radius:2px;background:var(--v13-grad-brand);transform:scaleX(0);transform-origin:center;transition:transform .3s var(--v13-ease-out)}.tabs button:hover:after,.tabs [role=tab]:hover:after,.tabs button.active:after,.tabs [role=tab][aria-selected=true]:after{transform:scaleX(1)}.tabs button:hover,.tabs [role=tab]:hover{color:var(--v13-violet)}.tabs button.active,.tabs [role=tab][aria-selected=true]{color:var(--v13-accent-strong)}.ring-wrap{transition:transform .3s var(--v13-ease-spring)}.ring-wrap:hover{transform:scale(1.03)}.ring{filter:drop-shadow(0 4px 10px color-mix(in oklab,var(--v13-accent) 30%,transparent))}.enh-toast{border-radius:16px;box-shadow:var(--v13-shadow-lg);animation:v13-toast-in .35s var(--v13-ease-spring)}@keyframes v13-toast-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.enh-toast-icon{background:var(--v13-accent-soft);color:var(--v13-accent-strong)}.enh-toast[data-variant=info] .enh-toast-icon{background:var(--v13-sky-soft);color:var(--v13-sky)}.enh-toast[data-variant=warn] .enh-toast-icon{background:var(--v13-amber-soft);color:color-mix(in oklab,var(--v13-amber) 80%,#7a5a00)}.enh-cmd-panel{border-radius:20px;box-shadow:var(--v13-shadow-lg);animation:v13-toast-in .32s var(--v13-ease-spring);border:1px solid color-mix(in oklab,var(--v13-violet) 20%,transparent)}.enh-cmd-item{border-radius:10px;transition:background .2s var(--v13-ease-out),transform .2s var(--v13-ease-out)}.enh-cmd-item:hover,.enh-cmd-item[aria-selected=true]{background:var(--v13-violet-soft);transform:translate(2px)}.onboard-badge{transition:transform .35s var(--v13-ease-spring),background .3s var(--v13-ease-out)}.onboard-badge.done{background:var(--v13-grad-brand);color:#fff}.step-mark{transition:transform .3s var(--v13-ease-spring)}.onboard-toggle:hover .step-mark{transform:rotate(8deg) scale(1.1)}.recipe-info-btn-label,[class*=recipe-info] button,[data-recipe-info]{transition:color .2s var(--v13-ease-out),transform .2s var(--v13-ease-out)}.recipe-info-btn-label:hover{color:var(--v13-violet);transform:translateY(-1px)}.recipe-details-thumb{border-radius:14px;overflow:hidden;box-shadow:var(--v13-shadow-sm);transition:transform .4s var(--v13-ease-out)}.recipe-mini:hover .recipe-details-thumb{transform:scale(1.03)}:where(button,a,[role=button],input,select,textarea,[tabindex]):focus-visible{outline:none;box-shadow:var(--v13-ring-focus);border-radius:10px}input,select,textarea{border-radius:12px!important;transition:border-color .2s var(--v13-ease-out),box-shadow .2s var(--v13-ease-out)}input:focus,select:focus,textarea:focus{border-color:var(--v13-violet)!important}.must-urgent-toggle{border-radius:999px;padding:4px 12px;border:1px solid color-mix(in oklab,var(--v13-coral) 30%,transparent);background:color-mix(in oklab,var(--v13-coral-soft) 60%,transparent);color:color-mix(in oklab,var(--v13-coral) 80%,#6a0000);transition:all .25s var(--v13-ease-out)}.must-urgent-toggle:hover{transform:translateY(-1px);box-shadow:0 8px 20px -10px color-mix(in oklab,var(--v13-coral) 50%,transparent)}.must-urgent-toggle.on{background:var(--v13-grad-warm);color:#fff;border-color:transparent;animation:v13-urgent-pulse 2.4s ease-in-out infinite}@keyframes v13-urgent-pulse{0%,to{box-shadow:0 0 color-mix(in oklab,var(--v13-coral) 45%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in oklab,var(--v13-coral) 0%,transparent)}}.badge{border-radius:8px;font-weight:700;letter-spacing:.01em;transition:transform .2s var(--v13-ease-out)}.badge:hover{transform:translateY(-1px)}.sync-bar{border-radius:14px;background:linear-gradient(90deg,var(--v13-accent-soft),transparent);border:1px solid color-mix(in oklab,var(--v13-accent) 20%,transparent)}.meal-grid,.prep-grid,.product-grid,.enh-insight-grid,.enh-ach-grid,.week-grid,.form-grid{gap:clamp(14px,2vw,20px)}@media (max-width: 640px){.hero{padding:20px;border-radius:22px}.app-header-inner{flex-wrap:wrap;gap:8px}.header-actions{flex-wrap:wrap}.account-btn-label,.enh-cmd-hint kbd{display:none}.card,.day-card,.kpi,.meal,.product,.prep-block{border-radius:16px}}.app-main>*{animation:v13-view-in .4s var(--v13-ease-out) both}@keyframes v13-view-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.status-dot{animation:none}.hero:before,.hero:after{animation:none}}.dark .hero .lead{color:color-mix(in oklab,#ffffff 78%,transparent)}.dark .hero h1{background:linear-gradient(135deg,#fff,#d6c9ff 60%,#a6f2cf);-webkit-background-clip:text;background-clip:text;color:transparent}.dark .chip{background:color-mix(in oklab,#ffffff 6%,transparent);border-color:color-mix(in oklab,#ffffff 10%,transparent);color:color-mix(in oklab,#ffffff 88%,transparent)}.dark .card,.dark .day-card,.dark .kpi,.dark .summary-card,.dark .profile-card,.dark .enh-stat,.dark .product,.dark .prep-block,.dark .week-box,.dark .meal,.dark .recipe-mini,.dark .hub-section{background:color-mix(in oklab,#ffffff 4%,var(--surface, #0f172a));border-color:color-mix(in oklab,#ffffff 8%,transparent)}:root{--v14-display: "Instrument Serif", "Times New Roman", serif;--v14-body: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--v14-mono: "JetBrains Mono", ui-monospace, monospace;--v14-emerald: #10b981;--v14-emerald-2: #34d399;--v14-indigo: #6366f1;--v14-indigo-2: #8b5cf6;--v14-pink: #ec4899;--v14-orange: #f97316;--v14-amber: #fbbf24;--v14-cyan: #06b6d4;--v14-rose: #f43f5e;--v14-mesh: radial-gradient(at 12% 8%, #d1fae5 0%, transparent 42%), radial-gradient(at 88% 12%, #ede9fe 0%, transparent 45%), radial-gradient(at 22% 92%, #fce7f3 0%, transparent 48%), radial-gradient(at 78% 82%, #fef3c7 0%, transparent 42%), radial-gradient(at 50% 45%, #dbeafe 0%, transparent 60%);--v14-mesh-dark: radial-gradient(at 12% 8%, rgba(16,185,129,.16) 0%, transparent 42%), radial-gradient(at 88% 12%, rgba(139,92,246,.2) 0%, transparent 45%), radial-gradient(at 22% 92%, rgba(236,72,153,.16) 0%, transparent 48%), radial-gradient(at 78% 82%, rgba(251,191,36,.14) 0%, transparent 42%), radial-gradient(at 50% 45%, rgba(99,102,241,.14) 0%, transparent 60%);--v14-grad-brand: linear-gradient(120deg, var(--v14-emerald) 0%, var(--v14-indigo-2) 55%, var(--v14-pink) 100%);--v14-grad-sunset: linear-gradient(120deg, var(--v14-orange) 0%, var(--v14-pink) 55%, var(--v14-indigo) 100%);--v14-grad-forest: linear-gradient(135deg, #059669 0%, #10b981 50%, #6ee7b7 100%);--v14-grad-ocean: linear-gradient(135deg, #0891b2 0%, #6366f1 60%, #a855f7 100%);--v14-grad-candy: linear-gradient(135deg, #f472b6 0%, #fb923c 100%);--v14-sh-hover: 0 24px 60px -18px rgba(99, 102, 241, .28), 0 8px 20px -8px rgba(15, 23, 42, .1);--v14-sh-glow-emerald: 0 12px 30px -12px rgba(16, 185, 129, .55);--v14-sh-glow-indigo: 0 12px 30px -12px rgba(99, 102, 241, .55);--v14-sh-glow-pink: 0 12px 30px -12px rgba(236, 72, 153, .55);--v14-spring: cubic-bezier(.34, 1.56, .64, 1);--v14-smooth: cubic-bezier(.22, 1, .36, 1)}.dark{--v14-mesh: var(--v14-mesh-dark)}html,body{font-family:var(--v14-body);font-feature-settings:"ss01","cv11","kern"}h1,.hero h1,.hero-copy h1{font-family:var(--v14-display);font-weight:400!important;letter-spacing:-.02em!important;line-height:1.02!important;font-size:clamp(34px,5.4vw,60px)!important}h2{font-family:var(--v14-body);font-weight:700;letter-spacing:-.02em}h3,h4{letter-spacing:-.015em;font-weight:700}.brand{font-family:var(--v14-display);font-weight:400;font-size:20px;letter-spacing:-.01em}.eyebrow,.hero-kicker,.section-label{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:700}kbd,.enh-cmd-shortcut,.num,.kpi .value{font-family:var(--v14-mono);font-variant-numeric:tabular-nums}body{background:var(--v14-mesh) fixed!important;background-color:var(--canvas, #fafafa)!important}.dark body{background-color:#0a0e1a!important}.app-header{background:color-mix(in oklab,var(--surface, #ffffff) 70%,transparent)!important;-webkit-backdrop-filter:saturate(1.6) blur(20px);backdrop-filter:saturate(1.6) blur(20px);border-bottom:1px solid color-mix(in oklab,var(--v14-indigo) 12%,transparent)!important;background-image:none!important;position:relative}.app-header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--v14-grad-brand);opacity:.85;pointer-events:none}.brand-mark{background:var(--v14-grad-brand)!important;box-shadow:var(--v14-sh-glow-indigo)!important;width:36px!important;height:36px!important;border-radius:12px!important}.hero{background:var(--v14-mesh)!important;background-size:200% 200%;animation:v14-mesh-drift 24s ease-in-out infinite;border:1px solid color-mix(in oklab,var(--v14-indigo) 10%,transparent);padding:clamp(32px,5.5vw,64px)!important;border-radius:32px!important}@keyframes v14-mesh-drift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.hero h1{background:var(--v14-grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent!important;background-size:200% auto;animation:v14-shine 6s linear infinite}@keyframes v14-shine{to{background-position:200% center}}.hero .lead{font-size:clamp(16px,1.35vw,19px)!important;line-height:1.65!important;color:color-mix(in oklab,var(--ink, #0f172a) 78%,transparent)!important;max-width:62ch}.dark .hero .lead{color:color-mix(in oklab,#fff 82%,transparent)!important}.hero-kicker{background:color-mix(in oklab,#ffffff 78%,transparent)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--v14-indigo)!important;padding:8px 14px!important;box-shadow:0 8px 20px -12px #6366f166;border:1px solid color-mix(in oklab,var(--v14-indigo) 20%,transparent)}.dark .hero-kicker{background:color-mix(in oklab,#ffffff 8%,transparent)!important;color:#c7d2fe!important}.chip{border-radius:999px!important;padding:7px 15px!important;font-size:13px;font-weight:600;background:color-mix(in oklab,#ffffff 88%,transparent)!important;border:1px solid color-mix(in oklab,var(--v14-indigo) 12%,transparent)!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-tags .chip:nth-child(3n+1){color:var(--v14-emerald);border-color:color-mix(in oklab,var(--v14-emerald) 25%,transparent)}.hero-tags .chip:nth-child(3n+2){color:var(--v14-indigo);border-color:color-mix(in oklab,var(--v14-indigo) 25%,transparent)}.hero-tags .chip:nth-child(3n+3){color:var(--v14-pink);border-color:color-mix(in oklab,var(--v14-pink) 25%,transparent)}.chip:hover{transform:translateY(-2px) scale(1.03)!important;box-shadow:var(--v14-sh-hover)!important}.chip.active{background:var(--v14-grad-brand)!important;color:#fff!important;border-color:transparent!important;box-shadow:var(--v14-sh-glow-indigo)!important}.dark .chip{background:color-mix(in oklab,#ffffff 6%,transparent)!important}.card,.day-card,.kpi,.summary-card,.profile-card,.enh-stat,.product,.prep-block,.week-box,.meal,.recipe-mini,.recipe-full,.hub-section{border-radius:22px!important;background:color-mix(in oklab,#ffffff 96%,transparent)!important;border:1px solid color-mix(in oklab,var(--v14-indigo) 8%,transparent)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 4px #0f172a08,0 8px 24px -16px #6366f126!important}.dark .card,.dark .day-card,.dark .kpi,.dark .summary-card,.dark .profile-card,.dark .enh-stat,.dark .product,.dark .prep-block,.dark .week-box,.dark .meal,.dark .recipe-mini,.dark .recipe-full,.dark .hub-section{background:color-mix(in oklab,#ffffff 5%,#0f172a)!important;border-color:color-mix(in oklab,#ffffff 8%,transparent)!important}.card:hover,.day-card:hover,.kpi:hover,.enh-stat:hover,.product:hover,.prep-block:hover,.week-box:hover,.meal:hover,.recipe-mini:hover{transform:translateY(-4px)!important;box-shadow:var(--v14-sh-hover)!important;border-color:color-mix(in oklab,var(--v14-indigo) 30%,transparent)!important}.day-card:before,.kpi:before,.enh-stat:before,.summary-card:before{background:var(--v14-grad-brand)!important;height:4px!important;opacity:.85!important}.day-card:hover:before,.kpi:hover:before,.enh-stat:hover:before,.summary-card:hover:before{opacity:1!important;animation:v14-shine 3s linear infinite;background-size:200% auto!important}.day-card:nth-child(4n+1):before{background:var(--v14-grad-forest)!important}.day-card:nth-child(4n+2):before{background:var(--v14-grad-ocean)!important}.day-card:nth-child(4n+3):before{background:var(--v14-grad-sunset)!important}.day-card:nth-child(4n+4):before{background:var(--v14-grad-candy)!important}.enh-stat-icon{width:48px!important;height:48px!important;border-radius:14px!important;box-shadow:inset 0 1px #ffffff80}.enh-stat:nth-child(5n+1) .enh-stat-icon{background:var(--v14-grad-forest)!important;color:#fff!important}.enh-stat:nth-child(5n+2) .enh-stat-icon{background:var(--v14-grad-ocean)!important;color:#fff!important}.enh-stat:nth-child(5n+3) .enh-stat-icon{background:var(--v14-grad-sunset)!important;color:#fff!important}.enh-stat:nth-child(5n+4) .enh-stat-icon{background:var(--v14-grad-candy)!important;color:#fff!important}.enh-stat:nth-child(5n+5) .enh-stat-icon{background:var(--v14-grad-brand)!important;color:#fff!important}.enh-stat-value{font-size:clamp(24px,3vw,32px)!important;font-weight:800!important;letter-spacing:-.02em;background:var(--v14-grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}.btn{border-radius:14px!important;font-weight:700!important;letter-spacing:-.005em;padding:10px 18px!important}.btn.primary,.btn:where(.primary){background:var(--v14-grad-brand)!important;background-size:200% auto!important;color:#fff!important;border:none!important;box-shadow:var(--v14-sh-glow-indigo)!important;transition:background-position .6s var(--v14-smooth),transform .2s var(--v14-smooth),box-shadow .3s var(--v14-smooth)!important}.btn.primary:hover:not(:disabled){background-position:right center!important;transform:translateY(-2px)!important;box-shadow:var(--v14-sh-glow-pink)!important}.btn.ghost{background:color-mix(in oklab,var(--v14-indigo) 6%,transparent)!important;border:1px solid color-mix(in oklab,var(--v14-indigo) 15%,transparent)!important;color:var(--v14-indigo)!important}.btn.ghost:hover:not(:disabled){background:color-mix(in oklab,var(--v14-indigo) 12%,transparent)!important;transform:translateY(-2px)!important}.btn.danger{color:var(--v14-rose)!important}.btn.danger:hover:not(:disabled){background:color-mix(in oklab,var(--v14-rose) 12%,transparent)!important;color:var(--v14-rose)!important}.hub-section{padding:4px 6px 6px!important}.hub-section-summary{padding:18px 22px!important;border-radius:18px!important;gap:16px!important}.hub-summary-icon{width:46px!important;height:46px!important;border-radius:14px!important;color:#fff!important;background:var(--v14-grad-forest)!important;box-shadow:var(--v14-sh-glow-emerald)}.hub-section:nth-of-type(2) .hub-summary-icon{background:var(--v14-grad-ocean)!important;box-shadow:var(--v14-sh-glow-indigo)}.hub-section:nth-of-type(3) .hub-summary-icon{background:var(--v14-grad-sunset)!important;box-shadow:var(--v14-sh-glow-pink)}.hub-summary-title{font-size:18px!important;font-weight:700!important;letter-spacing:-.015em}.hub-summary-hint{color:color-mix(in oklab,var(--ink, #0f172a) 55%,transparent)}.hub-section[open]{border-color:color-mix(in oklab,var(--v14-indigo) 25%,transparent)!important;box-shadow:var(--v14-sh-glow-indigo)!important}.hub-section-body{padding:8px 22px 24px!important}.tabs{gap:6px!important;padding:6px!important;background:color-mix(in oklab,#ffffff 78%,transparent)!important;border-radius:18px!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid color-mix(in oklab,var(--v14-indigo) 10%,transparent)!important;box-shadow:0 4px 12px -4px #0f172a0f}.dark .tabs{background:color-mix(in oklab,#ffffff 5%,#0f172a)!important}.tabs button,.tabs [role=tab]{padding:10px 16px!important;border-radius:12px!important;font-weight:600!important;font-size:14px;background:transparent!important;color:color-mix(in oklab,var(--ink, #0f172a) 65%,transparent)!important}.tabs button:after,.tabs [role=tab]:after{display:none!important}.tabs button:hover,.tabs [role=tab]:hover{background:color-mix(in oklab,var(--v14-indigo) 8%,transparent)!important;color:var(--v14-indigo)!important;transform:translateY(-1px)}.tabs button.active,.tabs [role=tab][aria-selected=true]{background:var(--v14-grad-brand)!important;color:#fff!important;box-shadow:var(--v14-sh-glow-indigo)}.ring{filter:drop-shadow(0 8px 20px color-mix(in oklab,var(--v14-emerald) 45%,transparent)) drop-shadow(0 0 8px color-mix(in oklab,var(--v14-indigo) 25%,transparent))}.ring-value{font-family:var(--v14-mono);font-variant-numeric:tabular-nums;font-weight:700}.onboard-badge{border-radius:14px!important}.onboard-badge.done{background:var(--v14-grad-forest)!important;box-shadow:var(--v14-sh-glow-emerald)}.step-mark{font-weight:700}.enh-toast{border-radius:18px!important;border-left:4px solid var(--v14-emerald);background:color-mix(in oklab,#ffffff 96%,transparent)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.enh-toast[data-variant=info]{border-left-color:var(--v14-indigo)}.enh-toast[data-variant=warn]{border-left-color:var(--v14-amber)}.enh-toast-icon{border-radius:12px!important;color:#fff!important}.enh-toast[data-variant=success] .enh-toast-icon{background:var(--v14-grad-forest)!important}.enh-toast[data-variant=info] .enh-toast-icon{background:var(--v14-grad-ocean)!important}.enh-toast[data-variant=warn] .enh-toast-icon{background:linear-gradient(135deg,var(--v14-amber),var(--v14-orange))!important}.enh-cmd-panel{border-radius:24px!important;border:1px solid color-mix(in oklab,var(--v14-indigo) 30%,transparent)!important;box-shadow:0 40px 100px -30px #6366f180,0 0 0 1px #ffffff80 inset!important;background:color-mix(in oklab,#ffffff 96%,transparent)!important;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.dark .enh-cmd-panel{background:color-mix(in oklab,#ffffff 8%,#0f172a)!important}.enh-cmd-input{font-family:var(--v14-body)!important;font-size:16px!important}.enh-cmd-item[aria-selected=true]{background:var(--v14-grad-brand)!important;color:#fff!important}.enh-cmd-item[aria-selected=true] .enh-cmd-icon,.enh-cmd-item[aria-selected=true] .enh-cmd-shortcut{color:#fff!important}.must-urgent-toggle.on{background:var(--v14-grad-sunset)!important;box-shadow:var(--v14-sh-glow-pink)!important}.product-media,.product-thumb,.recipe-details-thumb{overflow:hidden;border-radius:16px!important}.product-media img,.product-thumb img,.recipe-details-thumb img{transition:transform .7s var(--v14-smooth),filter .4s var(--v14-smooth)}.product:hover .product-media img,.product:hover .product-thumb img,.recipe-mini:hover .recipe-details-thumb img,.recipe-full:hover .recipe-details-thumb img{transform:scale(1.08) rotate(-1deg);filter:saturate(1.15) brightness(1.03)}.badge{border-radius:10px!important;padding:4px 10px!important;font-weight:800!important;letter-spacing:.02em;text-transform:uppercase;font-size:11px;box-shadow:inset 0 -2px #00000014}.section-head,.section-label{color:var(--v14-indigo)}*{scrollbar-width:thin;scrollbar-color:var(--v14-indigo) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:color-mix(in oklab,var(--v14-indigo) 40%,transparent);border-radius:999px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:color-mix(in oklab,var(--v14-indigo) 65%,transparent);background-clip:padding-box}a:not(.btn):not(.chip){color:var(--v14-indigo);text-decoration:none;position:relative;transition:color .2s var(--v14-smooth)}a:not(.btn):not(.chip):hover{color:var(--v14-pink)}.kpi .value,.stat-row .value{font-family:var(--v14-mono);font-weight:800;font-size:clamp(22px,2.6vw,30px);letter-spacing:-.02em;background:var(--v14-grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}.meal{border-radius:20px!important;padding:16px!important;transition:transform .35s var(--v14-smooth),box-shadow .35s var(--v14-smooth),border-color .35s var(--v14-smooth)}.meal:hover{transform:translateY(-4px) scale(1.005)}.recipe-mini{padding:14px!important}.prep-block{position:relative;overflow:hidden}.prep-block:after{content:"";position:absolute;inset:auto -30% -60% auto;width:240px;height:240px;border-radius:50%;background:var(--v14-grad-candy);opacity:.1;filter:blur(30px);pointer-events:none;transition:opacity .4s var(--v14-smooth)}.prep-block:hover:after{opacity:.22}@media (max-width: 780px){.tabs{flex-wrap:wrap;padding:6px!important}.tabs button,.tabs [role=tab]{padding:8px 12px!important;font-size:13px}.hero{padding:24px!important;border-radius:24px!important}h1,.hero h1{font-size:clamp(28px,8vw,40px)!important}.hub-section-summary{padding:14px 16px!important}.hub-summary-icon{width:40px!important;height:40px!important}}@media (max-width: 480px){.card,.day-card,.kpi,.meal,.product,.prep-block,.week-box,.recipe-mini,.recipe-full,.hub-section{border-radius:16px!important}}@media (prefers-reduced-motion: reduce){.hero,.hero h1,.day-card:hover:before,.kpi:hover:before,.enh-stat:hover:before,.summary-card:hover:before{animation:none!important}.chip,.card,.day-card,.kpi,.enh-stat,.summary-card,.search-result img,.recipe-media img,.btn{transition-duration:.01ms!important;transform:none!important}}html,body,#root{max-width:100%;overflow-x:clip}.app-main,.hero,.hero-copy,.summary-card,.card,.swap-panel,.search-result{min-width:0}.hero{grid-template-columns:minmax(0,1fr) minmax(300px,380px)!important;max-width:100%}.hero-copy h1,.hero-copy .lead,.hero-kicker,.result-name,.cookpad-desc,.ring-legend .lname,.ring-legend .lval{overflow-wrap:anywhere}.summary-card{overflow:hidden}.summary-body{max-width:100%}.ring-legend{min-width:0;max-width:100%}.ring-legend li{min-width:0}.ring-legend .lval{white-space:normal;text-align:right}.cookpad-bulk-actions{align-items:center;flex-wrap:wrap}.cookpad-bulk-actions .muted{flex:1 1 260px;min-width:0}.cookpad-results .cookpad-result{grid-template-columns:auto 72px minmax(0,1fr) auto;align-items:center}.cookpad-select{display:inline-flex;align-items:center;justify-content:center}.cookpad-select input{width:18px;height:18px;accent-color:var(--mint)}.cookpad-result img,.search-result img{width:72px;height:72px;object-fit:cover;max-width:100%}.cookpad-desc{margin:4px 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 980px){.hero{grid-template-columns:1fr!important;padding:24px!important}.summary-card{width:100%}}@media (max-width: 680px){main.app-main,main{width:calc(100% - 20px)!important}.hero{padding:16px!important;border-radius:22px!important}.hero-copy h1{font-size:clamp(32px,12vw,46px)!important}.summary-body{justify-content:flex-start}.ring-legend{width:100%}.cookpad-results .cookpad-result,.search-result[style]{grid-template-columns:1fr!important}.cookpad-select{justify-content:flex-start}.cookpad-result img,.search-result img{width:100%;height:auto;max-height:220px}}.app-header{position:sticky;top:0;z-index:60;background:color-mix(in oklab,var(--card, #fff) 96%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.app-header-inner{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.header-tabs{display:flex;align-items:center;gap:4px;flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none;padding:4px 2px}.header-tabs::-webkit-scrollbar{display:none}.header-tabs>button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text-2, inherit);font-size:.88rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:background .16s,color .16s,border-color .16s,transform .16s}.header-tabs>button:hover{background:color-mix(in oklab,var(--info, #4a90d9) 8%,transparent);color:var(--text, inherit)}.header-tabs>button.active{background:var(--v14-grad-brand, linear-gradient(135deg, #10b981, #6366f1));color:#fff;border-color:transparent;box-shadow:0 6px 18px -8px #6366f173}.header-tabs>button.active svg{color:#fff}@media (max-width: 720px){.header-tabs>button{padding:7px 10px;font-size:.82rem}.header-tabs>button span{display:inline}}.chip-cloud{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start}.chip-cloud .chip{color:var(--text, inherit)!important;border-color:color-mix(in oklab,var(--text, #0f172a) 15%,transparent)!important;background:color-mix(in oklab,var(--card, #fff) 90%,transparent)!important}.chip-cloud .chip:hover{border-color:color-mix(in oklab,var(--info, #4a90d9) 45%,transparent)!important;color:var(--text, inherit)!important}.chip-cloud .chip.active{background:var(--v14-grad-brand, linear-gradient(135deg, #10b981, #6366f1))!important;color:#fff!important;border-color:transparent!important}.dark .chip-cloud .chip{color:#e2e8f0!important;border-color:color-mix(in oklab,#ffffff 18%,transparent)!important}.chip-cloud-legend{display:flex;align-items:center;gap:12px;font-size:.78rem;color:var(--text-muted, #64748b);margin-top:6px}.chip-cloud-legend .swatch{display:inline-block;width:12px;height:12px;border-radius:999px;margin-right:4px;vertical-align:-1px}.chip-cloud-legend .swatch.on{background:var(--v14-grad-brand, linear-gradient(135deg, #10b981, #6366f1))}.chip-cloud-legend .swatch.off{background:color-mix(in oklab,var(--card, #fff) 90%,transparent);border:1px solid color-mix(in oklab,var(--text, #0f172a) 25%,transparent)}.meal,.recipe-mini,.check-row,.meal-recipe-actions{min-width:0}.recipe-details-panel{max-width:100%;box-sizing:border-box;overflow:hidden;overflow-wrap:anywhere;word-break:break-word}.recipe-details-panel .recipe-details-head-left{flex-wrap:wrap}.recipe-details-panel .recipe-details-title{overflow-wrap:anywhere}.recipe-details-panel .ingredients,.recipe-details-panel .steps,.recipe-details-panel ul,.recipe-details-panel ol{padding-left:18px;margin:6px 0 0}.recipe-details-panel .ingredients li,.recipe-details-panel .steps li,.recipe-details-panel ul li,.recipe-details-panel ol li{overflow-wrap:anywhere}.recipe-details-panel img{max-width:100%;height:auto}.recipe-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:color-mix(in oklab,#0f172a 62%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px 16px;animation:recipeModalFade .16s ease-out}@keyframes recipeModalFade{0%{opacity:0}to{opacity:1}}.recipe-modal-window{position:relative;background:var(--card, #fff);color:var(--text, #0f172a);border-radius:20px;width:min(720px,100%);max-height:min(88vh,900px);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 60px -12px #0f172a73,0 8px 20px -8px #0f172a59;border:1px solid color-mix(in oklab,var(--text, #0f172a) 8%,transparent);animation:recipeModalPop .18s cubic-bezier(.22,1.2,.36,1)}@keyframes recipeModalPop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.recipe-modal-body{overflow-y:auto;overflow-x:hidden;padding:22px 24px 24px;-webkit-overflow-scrolling:touch}.recipe-modal-close{position:absolute;top:10px;right:10px;z-index:2;width:36px;height:36px;border-radius:999px;border:1px solid color-mix(in oklab,var(--text, #0f172a) 12%,transparent);background:color-mix(in oklab,var(--card, #fff) 90%,transparent);color:var(--text, #0f172a);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .14s,transform .14s}.recipe-modal-close:hover{background:color-mix(in oklab,var(--text, #0f172a) 8%,var(--card, #fff));transform:rotate(90deg)}.recipe-modal-close:focus-visible{outline:2px solid var(--info, #4a90d9);outline-offset:2px}.recipe-modal-body.recipe-details-panel{max-width:100%;width:100%;box-sizing:border-box}.recipe-modal-body .recipe-details-thumb{max-height:240px;width:auto}@media (max-width: 560px){.recipe-modal-overlay{padding:0}.recipe-modal-window{border-radius:0;max-height:100vh;height:100vh;width:100vw}}.cookpad-mode-toggle{display:inline-flex;gap:4px;padding:4px;background:color-mix(in oklab,var(--text, #0f172a) 5%,transparent);border-radius:999px;margin-top:6px}.cookpad-mode-toggle button{border:none;background:transparent;padding:6px 12px;border-radius:999px;font-size:.82rem;font-weight:600;cursor:pointer;color:var(--text-2, inherit);transition:background .14s,color .14s}.cookpad-mode-toggle button.active{background:var(--card, #fff);color:var(--text, #0f172a);box-shadow:0 1px 3px #0f172a1f}.cookpad-mode-toggle button:hover:not(.active){color:var(--text, inherit)}.badge.hu{background:color-mix(in oklab,#16a34a 18%,transparent);color:#14532d;border:1px solid color-mix(in oklab,#16a34a 30%,transparent)}.badge.src-huweb{background:color-mix(in oklab,#2563eb 14%,transparent);color:#1e3a8a;border:1px solid color-mix(in oklab,#2563eb 25%,transparent)}.badge.src-rapid{background:color-mix(in oklab,#a16207 14%,transparent);color:#713f12;border:1px solid color-mix(in oklab,#a16207 25%,transparent)}.header-tabs button.active{position:relative}.header-tabs button.active:after{content:"";position:absolute;left:20%;right:20%;bottom:-2px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--mint, #7bd3a1),var(--info, #6aa5ff));opacity:.9;animation:navPop .26s ease}@keyframes navPop{0%{transform:scaleX(.3);opacity:0}to{transform:scaleX(1);opacity:.9}}@media (prefers-reduced-motion: reduce){.header-tabs button.active:after{animation:none}}.hub-intro>h2{letter-spacing:-.01em}.hub-intro>p{max-width:62ch;color:var(--muted, #6b7280)}#hub-sec-account,#hub-sec-settings,#hub-sec-why{border-color:color-mix(in oklab,var(--border, #e5e7eb) 88%,var(--mint, #7bd3a1) 12%)}:root{--sp-ink: #0b1220;--sp-ink-soft: #1a2233;--sp-paper: #fbfaf6;--sp-cream: #f4efe4;--sp-mint: #22c39a;--sp-mint-deep: #0f8a68;--sp-lime: #b6f26a;--sp-coral: #ff6f61;--sp-plum: #6b4bff;--sp-sun: #ffb547;--sp-sky: #57b7ff;--sp-gradient-brand: linear-gradient(120deg, #22c39a 0%, #57b7ff 45%, #6b4bff 100%);--sp-gradient-warm: linear-gradient(120deg, #ffb547 0%, #ff6f61 55%, #6b4bff 110%);--sp-gradient-mint: linear-gradient(140deg, #22c39a 0%, #0f8a68 100%);--sp-shadow-soft: 0 1px 2px rgba(11, 18, 32, .06), 0 8px 24px -12px rgba(11, 18, 32, .12);--sp-shadow-lift: 0 2px 4px rgba(11, 18, 32, .06), 0 24px 48px -24px rgba(11, 18, 32, .28);--sp-shadow-glow: 0 0 0 1px rgba(34, 195, 154, .35), 0 12px 40px -16px rgba(34, 195, 154, .55)}.dark{--sp-paper: #0a0f1a;--sp-cream: #111726;--sp-shadow-soft: 0 1px 2px rgba(0, 0, 0, .5), 0 12px 32px -14px rgba(0, 0, 0, .55);--sp-shadow-lift: 0 4px 8px rgba(0, 0, 0, .4), 0 28px 60px -24px rgba(0, 0, 0, .7)}.app-header .brand{letter-spacing:-.02em;font-weight:700}.app-header .brand>span:last-child{background:var(--sp-gradient-brand);background-size:220% 220%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sp-shine 8s ease-in-out infinite}.app-header .brand .brand-mark{background:var(--sp-gradient-mint);color:#fff;box-shadow:var(--sp-shadow-glow);transition:transform .3s cubic-bezier(.2,.9,.2,1),box-shadow .3s ease}.app-header .brand:hover .brand-mark{transform:rotate(-6deg) scale(1.06)}@keyframes sp-shine{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.hero,.hero-shell,.today-hero{position:relative;isolation:isolate}.hero:before,.hero-shell:before,.today-hero:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;z-index:-1;background:radial-gradient(60% 80% at 15% 10%,rgba(34,195,154,.18),transparent 60%),radial-gradient(50% 70% at 85% 20%,rgba(107,75,255,.16),transparent 60%),radial-gradient(60% 80% at 50% 100%,rgba(255,181,71,.14),transparent 60%);filter:blur(2px);pointer-events:none}.card,.panel,.tile{transition:transform .32s cubic-bezier(.2,.9,.2,1),box-shadow .32s ease,border-color .2s ease}.card:hover,.panel:hover,.tile:hover{transform:translateY(-2px);box-shadow:var(--sp-shadow-lift)}.card:focus-within,.panel:focus-within{border-color:color-mix(in oklab,var(--sp-mint) 55%,transparent);box-shadow:var(--sp-shadow-glow)}.btn-primary,.primary-action,button.primary{background-image:var(--sp-gradient-brand);background-size:200% 200%;border:none;color:#fff;font-weight:600;letter-spacing:-.005em;box-shadow:0 8px 24px -10px #6b4bff8c;transition:background-position .5s ease,transform .2s ease,box-shadow .3s ease}.btn-primary:hover,.primary-action:hover,button.primary:hover{background-position:100% 50%;transform:translateY(-1px);box-shadow:0 14px 32px -12px #22c39a99}.btn-primary:active,.primary-action:active,button.primary:active{transform:translateY(0)}.header-tabs button{position:relative;transition:color .2s ease,background .2s ease}.header-tabs button:after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;border-radius:2px;background:var(--sp-gradient-brand);transform:scaleX(0);transform-origin:right center;transition:transform .26s cubic-bezier(.2,.9,.2,1)}.header-tabs button:hover:after,.header-tabs button.active:after{transform:scaleX(1);transform-origin:left center}.chip,.badge,.pill{transition:transform .18s ease,box-shadow .22s ease}.chip:hover,.badge:hover,.pill:hover{transform:translateY(-1px)}:focus-visible{outline:2px solid color-mix(in oklab,var(--sp-mint) 70%,transparent);outline-offset:3px;border-radius:8px}tr:hover,li.hover-row:hover{background-color:color-mix(in oklab,var(--sp-mint) 6%,transparent)}@media (prefers-reduced-motion: reduce){.app-header .brand>span:last-child{animation:none}.card,.panel,.tile,.btn-primary,.primary-action,.header-tabs button,.header-tabs button:after{transition:none!important}}.account-btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:var(--r-full);padding:5px 12px 5px 6px;font-size:.82rem;font-weight:600;cursor:pointer;transition:var(--dur)}.account-btn:hover{border-color:var(--signal-border);box-shadow:var(--sh-sm)}.account-btn>svg{margin-left:4px}.account-btn-avatar{width:22px;height:22px;border-radius:var(--r-full);object-fit:cover;display:block}.account-btn-label{line-height:1}@media (max-width: 560px){.account-btn-label{display:none}.account-btn{padding:6px}}.account-view{max-width:760px;margin:0 auto}.auth-hero{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;padding:32px 24px;background:radial-gradient(120% 120% at 50% 0%,var(--signal-glow),transparent 55%),var(--surface)}.auth-mark{width:52px;height:52px;border-radius:var(--r-2xl);margin-bottom:8px}.auth-hero .btn-row{justify-content:center;flex-wrap:wrap}.google-btn{display:inline-flex;align-items:center;gap:10px;background:#fff;color:#1f2328;border:1px solid var(--border);box-shadow:var(--sh-sm)}.google-btn:hover:not(:disabled){box-shadow:var(--sh-md)}.google-btn:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .google-btn{background:#fff;color:#1f2328}.auth-benefits{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px;text-align:left;width:min(440px,100%)}.auth-benefits li{display:flex;align-items:center;gap:10px;font-size:.9rem;color:var(--text-2)}.auth-benefits svg{color:var(--mint-strong);flex:0 0 auto}.profile-head{display:flex;align-items:center;gap:14px}.profile-avatar{width:56px;height:56px;border-radius:var(--r-full);object-fit:cover;flex:0 0 auto;border:2px solid var(--signal-border)}.profile-avatar.ph{display:grid;place-items:center;background:var(--signal-glow);color:var(--mint-strong)}.sync-status{list-style:none;padding:0;margin:12px 0 16px;display:grid;gap:8px}.sync-status li{display:flex;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle);font-size:.9rem}.sync-status .lname{color:var(--text-2)}.sync-status .lval{font-weight:600;font-family:var(--font-mono);font-size:.82rem}.sync-conflict{border-color:var(--signal-border);box-shadow:var(--sh-signal)}.sync-conflict .btn-row{flex-wrap:wrap}:root{--canvas: #faf6ef;--surface: #fffdf8;--surface-2: #f4eee2;--ink: #2a2018;--text-2: #6b5f52;--text-muted: #9c8f7f;--mint: #3f9a70;--mint-strong: #2e7d5b;--on-mint: #ffffff;--coral: #d16a43;--obsidian: #241c15;--success: #2f8f5f;--warning: #d9922b;--error: #d1503f;--info: #4b8f8a;--border: rgba(84, 62, 40, .14);--border-subtle: rgba(84, 62, 40, .08);--signal-glow: rgba(63, 154, 112, .14);--signal-border: rgba(46, 125, 91, .3);--sh-sm: 0 1px 2px rgba(60, 44, 28, .05), 0 1px 2px rgba(60, 44, 28, .04);--sh-md: 0 4px 14px rgba(60, 44, 28, .07), 0 1px 3px rgba(60, 44, 28, .05);--sh-lg: 0 10px 26px rgba(60, 44, 28, .09), 0 3px 8px rgba(60, 44, 28, .05);--sh-xl: 0 18px 42px rgba(60, 44, 28, .12), 0 6px 14px rgba(60, 44, 28, .07);--sh-signal: 0 0 0 1px var(--signal-border), 0 4px 18px var(--signal-glow);--focus: 0 0 0 2px var(--surface), 0 0 0 4px rgba(63, 154, 112, .48);--sp-ink: #2a2018;--sp-ink-soft: #4a3d2f;--sp-paper: #faf6ef;--sp-cream: #f4eee2;--sp-mint: #3f9a70;--sp-mint-deep: #2e7d5b;--sp-lime: #b7d98a;--sp-coral: #d16a43;--sp-plum: #b5643f;--sp-sun: #e0a44a;--sp-sky: #6aa88f;--sp-gradient-brand: linear-gradient(120deg, #3f9a70 0%, #2e7d5b 100%);--sp-gradient-warm: linear-gradient(120deg, #e0a44a 0%, #d16a43 100%);--sp-gradient-mint: linear-gradient(140deg, #3f9a70 0%, #2e7d5b 100%);--sp-shadow-soft: 0 1px 2px rgba(60, 44, 28, .06), 0 8px 22px -12px rgba(60, 44, 28, .14);--sp-shadow-lift: 0 2px 4px rgba(60, 44, 28, .06), 0 22px 44px -24px rgba(60, 44, 28, .24);--sp-shadow-glow: 0 0 0 1px rgba(63, 154, 112, .28), 0 10px 30px -16px rgba(63, 154, 112, .42)}:root[data-theme=dark],.dark{--canvas: #191410;--surface: #241c15;--surface-2: #2d241a;--ink: #f4ece1;--text-2: #c9bbaa;--text-muted: #9a8b79;--mint: #5fb98c;--mint-strong: #45a074;--on-mint: #10241b;--coral: #e0895f;--obsidian: #0f0b08;--success: #56b585;--warning: #e0a651;--error: #e0715c;--info: #6bb0aa;--border: rgba(240, 220, 195, .12);--border-subtle: rgba(240, 220, 195, .07);--signal-glow: rgba(95, 185, 140, .16);--signal-border: rgba(95, 185, 140, .34);--sp-ink: #f4ece1;--sp-ink-soft: #cdbfae;--sp-paper: #191410;--sp-cream: #241c15;--sp-mint: #5fb98c;--sp-mint-deep: #45a074;--sp-coral: #e0895f;--sp-plum: #d1855f;--sp-sky: #7fb8a3;--sp-gradient-brand: linear-gradient(120deg, #5fb98c 0%, #45a074 100%);--sp-gradient-mint: linear-gradient(140deg, #5fb98c 0%, #2e7d5b 100%)}.app-header .brand>span:last-child{background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;-webkit-text-fill-color:var(--ink)!important;color:var(--ink)!important;animation:none!important;letter-spacing:-.01em}.app-header .brand .brand-mark{background:var(--sp-gradient-mint);box-shadow:0 2px 8px -2px #2e7d5b80}.app-header .brand:hover .brand-mark{transform:rotate(-4deg) scale(1.04)}.app-header,.card,.summary-card,.day-card,.hub-section,.next-action-card,.profile-summary-card{-webkit-backdrop-filter:none;backdrop-filter:none}.hero h1,.hub-intro h2{font-family:var(--font-display);letter-spacing:-.01em}.hero:before,.hero:after{filter:saturate(.85) hue-rotate(-8deg)}.chip.active{background:color-mix(in srgb,var(--mint) 16%,var(--surface));border-color:var(--signal-border);color:var(--mint-strong)}.btn.primary,.btn-primary,.primary-action{background:var(--mint-strong);color:var(--on-mint);border-color:transparent}.btn.primary:hover,.primary-action:hover{background:var(--mint)}:root{--macrovia-cream: #fff8ed;--macrovia-oat: #f3eadb;--macrovia-sage: #e6efe3;--macrovia-herb: #28724f;--macrovia-herb-2: #3f9a70;--macrovia-paprika: #c55f37;--macrovia-tomato: #b84634;--macrovia-berry: #8f3c52;--macrovia-charcoal: #241a12;--macrovia-card-border: rgba(89, 63, 38, .12);--macrovia-soft-border: rgba(89, 63, 38, .08);--macrovia-food-glow: rgba(197, 95, 55, .13);--macrovia-green-glow: rgba(40, 114, 79, .13);--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 22px;--r-2xl: 28px;--r-3xl: 36px}body{background:radial-gradient(circle at 8% -4%,rgba(197,95,55,.1),transparent 30rem),radial-gradient(circle at 94% 2%,rgba(63,154,112,.12),transparent 34rem),linear-gradient(180deg,var(--macrovia-cream),var(--canvas) 38%,#f8f1e7 100%)}.app-header{background:color-mix(in srgb,var(--macrovia-cream) 88%,white 12%);border-bottom:1px solid var(--macrovia-soft-border);box-shadow:0 8px 24px #3121140d}.app-header-inner{padding-block:14px}.header-tabs{background:color-mix(in srgb,var(--surface) 82%,var(--macrovia-oat) 18%);border:1px solid var(--macrovia-soft-border);border-radius:999px;padding:5px;box-shadow:inset 0 1px #ffffffb3}.header-tabs button{border-radius:999px!important;min-height:38px}.header-tabs button.active{background:var(--macrovia-herb)!important;color:#fff!important;box-shadow:0 8px 18px #28724f2e}.account-btn,.enh-cmd-hint,.icon-btn{border-radius:999px!important;background:color-mix(in srgb,var(--surface) 88%,var(--macrovia-oat) 12%)!important;border-color:var(--macrovia-soft-border)!important}.app-main{width:min(1280px,calc(100% - 40px))}.hero{position:relative;grid-template-columns:minmax(0,1.08fr) minmax(330px,.72fr);overflow:hidden;min-height:420px;margin-top:16px;border:1px solid var(--macrovia-card-border);border-radius:38px;padding:clamp(22px,3vw,40px);background:linear-gradient(95deg,#241a12ed,#241a12d1 46%,#241a122e 72%,#241a120d),radial-gradient(circle at 82% 32%,rgba(255,255,255,.22) 0 9%,transparent 10%),radial-gradient(circle at 78% 34%,#d66b40 0 2.2%,transparent 2.4%),radial-gradient(circle at 86% 29%,#bd4431 0 2.1%,transparent 2.3%),radial-gradient(circle at 79% 43%,#6a9d55 0 4%,transparent 4.2%),radial-gradient(circle at 91% 48%,#e5b759 0 3.5%,transparent 3.7%),radial-gradient(circle at 72% 54%,#f2d9a2 0 7%,transparent 7.2%),radial-gradient(circle at 88% 62%,#2d7b52 0 6%,transparent 6.2%),linear-gradient(135deg,#15100c,#2a1d13 48%,#f1c47c);box-shadow:0 24px 60px #3c26142e}.hero:before{content:"";position:absolute;right:clamp(-90px,-5vw,-40px);top:clamp(24px,4vw,44px);width:min(49vw,540px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 50%,transparent 0 46%,rgba(24,18,13,.95) 47% 54%,transparent 55%),conic-gradient(from 35deg,#f17846,#e7cf93,#6d9e4a,#d84c35,#27533a,#f17846);opacity:.88;filter:saturate(1.05) contrast(1.02);pointer-events:none}.hero:after{content:"";position:absolute;inset:auto 34px 24px auto;width:min(36vw,390px);height:120px;border-radius:999px;background:radial-gradient(ellipse at center,rgba(0,0,0,.35),transparent 72%);filter:blur(10px);pointer-events:none}.hero-copy{position:relative;z-index:1;max-width:650px}.hero h1,.hero .lead,.hero-kicker{color:#fffaf1;text-shadow:0 1px 1px rgba(0,0,0,.24)}.hero h1{font-size:clamp(2.25rem,5.4vw,5rem);line-height:.96;letter-spacing:-.055em}.hero .lead{max-width:58ch;color:#fffaf1d6;font-size:clamp(1rem,1.3vw,1.15rem)}.hero-tags .chip{background:#fff8ed1a;color:#fff8ed;border-color:#fff8ed38;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hero-tags .chip.active{background:#fff8ed;color:var(--macrovia-herb)}.summary-card{position:relative;z-index:1;background:color-mix(in srgb,var(--surface) 90%,var(--macrovia-oat) 10%);border:1px solid rgba(255,248,237,.35);box-shadow:0 24px 48px #19110a2e}.card,.day-card,.hub-section,.next-action-card,.table-wrap{border:1px solid var(--macrovia-card-border)!important;border-radius:var(--r-2xl)!important;background:color-mix(in srgb,var(--surface) 94%,var(--macrovia-cream) 6%)!important;box-shadow:0 12px 32px #462e1912!important}.card:hover,.day-card:hover,.recipe-full:hover,.recipe-mini:hover{box-shadow:0 18px 44px #462e191a!important}.next-action-card{background:linear-gradient(130deg,color-mix(in srgb,var(--macrovia-sage) 70%,var(--surface) 30%),var(--surface))!important;border-color:color-mix(in srgb,var(--macrovia-herb) 24%,transparent)!important}.next-action-card .btn.primary,.btn.primary,.primary-action{background:var(--macrovia-herb)!important;color:#fff!important}.btn,.chip,.badge,.field input,.field select,.field textarea{border-radius:999px}.field textarea{border-radius:var(--r-xl)}.btn.ghost,.btn.small.ghost,.chip{background:color-mix(in srgb,var(--surface) 88%,var(--macrovia-oat) 12%);border-color:var(--macrovia-soft-border)}.btn:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:none;box-shadow:var(--focus)!important}.hub-intro{border-radius:34px;padding:clamp(22px,3vw,34px);background:radial-gradient(circle at 88% 22%,var(--macrovia-green-glow),transparent 18rem),linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--macrovia-oat) 50%,var(--surface) 50%));border:1px solid var(--macrovia-card-border);box-shadow:0 12px 30px #462e190f}.hub-intro h2{font-size:clamp(2rem,3.7vw,3.7rem);letter-spacing:-.05em}.hub-section-summary{padding:18px 20px!important;border-radius:var(--r-2xl)!important}.hub-section[open]>.hub-section-summary{border-bottom:1px solid var(--macrovia-soft-border);background:linear-gradient(90deg,color-mix(in srgb,var(--macrovia-sage) 44%,transparent),transparent)}.hub-summary-icon{background:color-mix(in srgb,var(--macrovia-sage) 82%,var(--surface) 18%)!important;color:var(--macrovia-herb)!important;border-radius:16px!important}.today-hero{align-items:center;background:linear-gradient(120deg,color-mix(in srgb,var(--macrovia-cream) 72%,var(--surface) 28%),var(--surface));border-radius:30px;border:1px solid var(--macrovia-soft-border);padding:clamp(16px,2vw,22px)}.check-row{border:1px solid var(--macrovia-soft-border)!important;border-radius:22px!important;padding:14px 16px!important;background:var(--surface)!important;transition:transform var(--dur),border-color var(--dur),background var(--dur)}.check-row:before{content:"";width:54px;height:54px;border-radius:18px;flex:0 0 54px;background:radial-gradient(circle at 66% 34%,rgba(255,255,255,.75) 0 14%,transparent 15%),linear-gradient(135deg,color-mix(in srgb,var(--macrovia-paprika) 80%,#fff 20%),color-mix(in srgb,var(--macrovia-herb) 72%,#fff 28%));box-shadow:inset 0 0 0 1px #ffffff57}.check-row:nth-of-type(2n):before{background:linear-gradient(135deg,#e9b45c,#3f9a70)}.check-row:nth-of-type(3n):before{background:linear-gradient(135deg,#c55f37,#f2d9a2)}.check-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--macrovia-herb) 25%,transparent)!important}.check-row.done{background:color-mix(in srgb,var(--macrovia-sage) 58%,var(--surface) 42%)!important}.cbx,.row-check{width:22px;height:22px;accent-color:var(--macrovia-herb)}.meal-grid{gap:14px!important}.meal{border-radius:24px!important;border:1px solid var(--macrovia-soft-border)!important;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--macrovia-cream) 60%,var(--surface) 40%))!important;overflow:hidden}.recipe-mini,.recipe-full{border-radius:24px!important;border:1px solid var(--macrovia-soft-border)!important;background:var(--surface)!important;overflow:hidden}.recipe-mini:before,.recipe-full:before{content:"";display:block;height:86px;margin:-14px -14px 14px;background:radial-gradient(circle at 16% 55%,#f3ce74 0 8%,transparent 8.5%),radial-gradient(circle at 38% 45%,#c55f37 0 7%,transparent 7.5%),radial-gradient(circle at 64% 35%,#2f7b55 0 8%,transparent 8.5%),radial-gradient(circle at 83% 62%,#f0e0b4 0 10%,transparent 10.5%),linear-gradient(135deg,#20160f,#5a2f1f 45%,#31593b);opacity:.96}.recipe-full:has(img):before{display:none}.recipe-full img{border-radius:22px!important;object-fit:cover}.recipe-list{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch}.recipe-full .recipe-topline{align-items:flex-start}.recipe-topline h3,.recipe-topline h4{font-family:var(--font-body);font-weight:800;letter-spacing:-.02em}.table-wrap table{border-collapse:separate;border-spacing:0 8px}.table-wrap thead th{color:var(--text-2);font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.table-wrap tbody tr{background:var(--surface);box-shadow:inset 0 0 0 1px var(--macrovia-soft-border)}.table-wrap tbody td:first-child{border-radius:16px 0 0 16px}.table-wrap tbody td:last-child{border-radius:0 16px 16px 0}.table-wrap tr.checked{opacity:.54}.stat-row{gap:12px!important}.kpi{background:color-mix(in srgb,var(--surface) 84%,var(--macrovia-oat) 16%)!important;border:1px solid var(--macrovia-soft-border)!important;border-radius:20px!important}.kpi .value{color:var(--macrovia-charcoal)}.badge.ok,.chip.active,.status-dot{background-color:color-mix(in srgb,var(--macrovia-herb) 14%,var(--surface))!important;color:var(--macrovia-herb)!important}.badge.gray{background:color-mix(in srgb,var(--macrovia-oat) 60%,var(--surface) 40%)!important;color:var(--text-2)!important}.prep-note,.inline-note{border-radius:20px!important;border:1px solid color-mix(in srgb,var(--macrovia-paprika) 18%,transparent)!important;background:color-mix(in srgb,var(--macrovia-paprika) 8%,var(--surface))!important}.fast-plan-card{background:radial-gradient(circle at 90% 8%,var(--macrovia-green-glow),transparent 16rem),var(--surface)!important}.form-grid{gap:14px!important}.field input,.field select,.field textarea{background:#fffefb!important;border-color:var(--macrovia-soft-border)!important}.profile-summary-card,.profile-domain-row{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--macrovia-sage) 28%,var(--surface) 72%))!important}@media (max-width: 980px){.app-main{width:min(100% - 24px,780px)}.hero{grid-template-columns:1fr;min-height:auto;padding-bottom:210px}.hero:before{width:300px;right:-70px;top:auto;bottom:-70px}.summary-card{max-width:none}.header-tabs{order:3;width:100%;overflow-x:auto;justify-content:flex-start}.app-header-inner{flex-wrap:wrap}.recipe-list{grid-template-columns:1fr!important}}@media (max-width: 640px){.app-main{width:min(100% - 16px,560px);padding-bottom:92px}.hero{border-radius:28px;padding:24px 24px 190px}.hero h1{font-size:clamp(2.15rem,13vw,3.25rem)}.card,.day-card,.hub-section,.next-action-card{border-radius:24px!important}.today-hero{grid-template-columns:1fr!important;text-align:left}.stat-row{grid-template-columns:1fr 1fr!important}.check-row{align-items:center}.check-row:before{width:44px;height:44px;flex-basis:44px}.table-wrap{overflow-x:auto}.header-actions{gap:6px}.account-btn-label,.enh-cmd-hint kbd{display:none}}@media (prefers-reduced-motion: reduce){.check-row,.card,.day-card,.recipe-full,.recipe-mini,.brand-mark{transition:none!important;animation:none!important}}:root{--np-black: #050606;--np-black-2: #090a09;--np-panel: #ffffff;--np-page: #f6f7f4;--np-soft: #f1f7ec;--np-soft-2: #eef8e7;--np-green: #75dc32;--np-green-2: #55c820;--np-green-3: #2f9f21;--np-blue: #2e8af7;--np-orange: #ff8a00;--np-red: #ff5b54;--np-text: #111313;--np-muted: #707680;--np-line: rgba(17, 19, 19, .08);--np-shadow: 0 18px 52px rgba(0, 0, 0, .08);--np-radius-page: 24px;--np-radius-card: 18px;--np-sidebar-w: 246px;--np-header-h: 76px;--canvas: var(--np-page);--surface: #fff;--surface-2: #f7f9f5;--ink: var(--np-text);--text-2: #616975;--text-muted: #8b929c;--mint: var(--np-green-2);--mint-strong: var(--np-green-3);--coral: var(--np-orange);--border: var(--np-line);--border-subtle: rgba(17, 19, 19, .055);--focus: 0 0 0 3px rgba(117, 220, 50, .32)}html,body,#root{min-height:100%}body{background:radial-gradient(circle at 84% 14%,rgba(117,220,50,.12),transparent 300px),linear-gradient(180deg,#0a0b0b 0 var(--np-header-h),var(--np-page) var(--np-header-h) 100%)!important;color:var(--np-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-header{position:sticky;top:0;z-index:50;height:var(--np-header-h);background:var(--np-black)!important;border:0!important;box-shadow:none!important}.app-header-inner{width:min(100%,1536px);height:var(--np-header-h);margin:0 auto;padding:0 32px!important;display:grid!important;grid-template-columns:var(--np-sidebar-w) minmax(240px,520px) 1fr;gap:28px;align-items:center}.brand{color:#fff!important;font-size:1.35rem!important;font-weight:860!important;letter-spacing:-.035em}.app-header .brand>span:last-child{color:#fff!important;-webkit-text-fill-color:#fff!important}.app-header .brand .brand-mark{width:31px;height:31px;border-radius:10px!important;background:linear-gradient(135deg,var(--np-green),var(--np-green-3))!important;color:var(--np-black)!important;box-shadow:0 0 0 1px #75dc3238,0 12px 26px #75dc3229!important}.header-actions{justify-self:stretch;display:flex!important;justify-content:flex-end;gap:14px!important}.enh-cmd-hint{order:-1;margin-right:auto;width:min(100%,520px);height:46px;padding:0 16px!important;border-radius:11px!important;justify-content:flex-start!important;gap:12px!important;background:#090a0a!important;color:#7f858d!important;border:1px solid rgba(255,255,255,.11)!important;box-shadow:inset 0 1px #ffffff09!important}.enh-cmd-hint span{display:inline!important;flex:1;text-align:left}.enh-cmd-hint kbd{margin-left:auto;min-width:28px;height:28px;display:grid;place-items:center;border-radius:8px;border:1px solid rgba(255,255,255,.09);background:#050606;color:#a9aeb5;font-family:inherit}.account-btn,.icon-btn{height:42px;background:transparent!important;border:0!important;color:#fff!important;box-shadow:none!important}.account-btn{padding:0 10px!important;gap:9px!important}.account-btn-avatar,.account-btn svg{width:36px!important;height:36px!important;border-radius:999px;background:#fff;color:var(--np-black);padding:7px}.account-btn-label{color:#fff;font-weight:750}.icon-btn{width:42px!important;border-radius:999px!important}.icon-btn:hover,.account-btn:hover{background:#ffffff14!important}.header-tabs{position:fixed;top:calc(var(--np-header-h) + 18px);left:max(16px,calc((100vw - 1490px)/2 + 24px));width:var(--np-sidebar-w);min-height:calc(100vh - var(--np-header-h) - 38px);z-index:25;display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;padding:26px 22px!important;border-radius:0 var(--np-radius-page) var(--np-radius-page) 0!important;background:#fffffff5!important;border:1px solid rgba(17,19,19,.07)!important;box-shadow:0 18px 55px #00000012!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.header-tabs button{width:100%;min-height:48px!important;justify-content:flex-start!important;gap:14px!important;padding:0 15px!important;border:0!important;border-radius:13px!important;background:transparent!important;color:#737985!important;font-weight:680!important}.header-tabs button svg{color:#818896}.header-tabs button.active{background:linear-gradient(90deg,#75dc3226,#75dc320d)!important;color:var(--np-green-3)!important;box-shadow:none!important}.header-tabs button.active svg{color:var(--np-green-3)}.header-tabs:before{content:"Prémium tagság\aHozd ki a legtöbbet az egészséges életmódból!\a\aTovábbi előnyök  →";white-space:pre-line;order:20;display:block;margin-top:auto;border-radius:14px;padding:18px 16px;background:linear-gradient(135deg,#00000094,#000000e6),url(/nutriplan-visuals/shopping-tip.jpg) center / cover;color:#fff;font-weight:760;line-height:1.55;font-size:.88rem;box-shadow:0 15px 34px #00000029}.header-tabs:after{content:"🔥  Streak                         12 nap\a● ● ● ● ● ● ○\aH    K   Sze  Cs   P   Szo   V";white-space:pre-line;order:21;margin-top:16px;border-radius:14px;padding:16px;background:#fff;color:#25282d;border:1px solid rgba(17,19,19,.07);box-shadow:0 10px 24px #0000000a;font-size:.86rem;line-height:1.8}.app-main{width:min(100% - 32px,1490px)!important;margin:0 auto!important;padding:0 0 34px calc(var(--np-sidebar-w) + 24px)!important}.app-main>.hero,.app-main>.hub-stack,.app-main>.panel-stack,.app-main>.view,.app-main>footer,.app-main>section.card{max-width:none}.app-main>.panel-stack,.app-main>.hub-stack,.app-main>.view{position:relative;min-height:calc(100vh - var(--np-header-h) - 34px);padding:28px 34px 34px!important;border-radius:0 0 var(--np-radius-page) var(--np-radius-page);background:#fff;border:1px solid rgba(17,19,19,.06);box-shadow:var(--np-shadow)}.app-main>footer{display:none}.app-route-today>.hero,.app-route-meals-hub>.hero,.app-route-recipes>.hero,.app-route-store-hub>.hero,.app-route-progress-hub>.hero,.app-route-profile-hub>.hero{display:none!important}.hero{min-height:580px!important;border-radius:0 0 28px 28px!important;margin:0!important;padding:clamp(34px,4.5vw,68px)!important;background:linear-gradient(90deg,#000000f2,#000000d9 45%,#0000002e),url(/nutriplan-visuals/hero-bowl.jpg) right center / min(62%,720px) auto no-repeat,#040505!important;box-shadow:none!important}.hero:before,.hero:after{display:none!important}.hero h1{max-width:640px;color:#fff!important;font-size:clamp(3.5rem,6vw,6.4rem)!important}.hero .lead{color:#ffffffd1!important;font-size:1.15rem!important}.hero-kicker{color:var(--np-green)!important;text-transform:uppercase;letter-spacing:.08em}.card,.day-card,.hub-section,.next-action-card,.table-wrap,.recipe-full,.recipe-mini,.search-result,.product,.week-box,.profile-summary-card,.profile-domain-row{border:1px solid rgba(17,19,19,.07)!important;border-radius:var(--np-radius-card)!important;background:#fff!important;box-shadow:0 8px 28px #00000009!important}.card:hover,.day-card:hover,.recipe-full:hover,.recipe-mini:hover,.search-result:hover,.product:hover{transform:translateY(-1px);box-shadow:0 15px 38px #00000013!important}h1,h2,h3,.hub-intro h2{color:var(--np-text);letter-spacing:-.04em}.section-label,.eyebrow{color:#767d86!important;letter-spacing:.01em;text-transform:none!important}.muted{color:var(--np-muted)!important}.btn.primary,.primary-action,.btn-primary{background:linear-gradient(180deg,var(--np-green),var(--np-green-2))!important;color:#0b1707!important;border:0!important;box-shadow:0 12px 24px #55c82033!important;font-weight:850!important}.btn.primary:hover,.primary-action:hover{filter:brightness(1.02);transform:translateY(-1px)}.btn,.chip,.badge,.icon-btn,.swap-btn,.field input,.field select,.field textarea,.search-bar input{border-radius:12px!important}.btn.ghost,.btn.small.ghost,.chip,.swap-btn{background:#fff!important;border:1px solid rgba(17,19,19,.08)!important;color:#505862!important}.chip.active,.badge.ok{background:#75dc3229!important;color:var(--np-green-3)!important;border-color:#75dc3247!important}.badge.gray{background:#f4f5f3!important;color:#68707a!important}.field input,.field select,.field textarea,.search-bar input{background:#fff!important;border:1px solid rgba(17,19,19,.085)!important;min-height:46px}.app-route-today>.panel-stack{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:18px!important}.app-route-today .panel-stack:before{content:"Szia! 👋\aÖrülünk, hogy itt vagy! Nézzük, hogyan teljesítesz ma. 🌿";white-space:pre-line;grid-column:1 / -1;font-weight:850;font-size:clamp(2rem,3vw,3.1rem);letter-spacing:-.055em;line-height:1.25;color:#111;padding:4px 2px 4px 4px}.app-route-today .panel-stack:after{content:"Heti előrehaladásod    78%   ·   Edzések 4/6   ·   Lépések 8 642   ·   Súly -1,2 kg";grid-column:1 / -1;min-height:92px;display:flex;align-items:center;padding:0 34px;border-radius:16px;background:linear-gradient(90deg,#000000e6,#000000d6),url(/nutriplan-visuals/shopping-tip.jpg) right center / auto 100% no-repeat;color:#fff;font-weight:800;letter-spacing:-.015em}.today-hero{background:#fff!important;border:0!important;padding:0!important}.app-route-today .panel-stack>.card:first-of-type{grid-column:span 1}.app-route-today .panel-stack>.card:nth-of-type(2){grid-column:span 1}.app-route-today .today-hero .big,.big.num{font-size:clamp(2rem,4vw,3rem)!important;color:#111!important}.check-row{position:relative;min-height:78px;padding:12px 16px 12px 92px!important;border-radius:14px!important;border-color:#11131311!important;background:#fff!important}.check-row:before{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:62px!important;height:52px!important;border-radius:12px!important;background:url(/nutriplan-visuals/pancake.jpg) center / cover no-repeat!important}.check-row:nth-of-type(2n):before{background-image:url(/nutriplan-visuals/chicken-bowl.jpg)!important}.check-row:nth-of-type(3n):before{background-image:url(/nutriplan-visuals/salmon-card.jpg)!important}.check-row:nth-of-type(4n):before{background-image:url(/nutriplan-visuals/berries.jpg)!important}.check-row.done{background:linear-gradient(90deg,#75dc3214,#fff 42%)!important}.cbx,.row-check{accent-color:var(--np-green-2)}.hub-stack{gap:18px!important}.hub-intro{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.hub-intro h2{margin:0!important;font-family:inherit!important;font-size:clamp(2rem,3vw,3rem)!important;line-height:1}.hub-intro p{margin-top:10px!important;max-width:760px;color:#77808a!important}.hub-section{overflow:hidden}.hub-section-summary{min-height:70px;background:#fff!important;border-radius:var(--np-radius-card)!important}.hub-section[open]>.hub-section-summary{background:linear-gradient(90deg,rgba(117,220,50,.1),transparent)!important}.hub-summary-icon{background:#75dc3229!important;color:var(--np-green-3)!important;border-radius:12px!important}.hub-section-body{padding:22px!important}.fast-plan-card,.app-route-meals-hub .hub-section:first-of-type .card:first-child{background:radial-gradient(circle at 95% 25%,rgba(117,220,50,.16),transparent 260px),#fff!important}.days,.week-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px!important}.day-card{position:relative;overflow:hidden}.day-card:before{content:"";display:block;height:98px;margin:-16px -16px 16px;background:url(/nutriplan-visuals/egg-toast.jpg) center / cover no-repeat}.day-card:nth-child(2n):before{background-image:url(/nutriplan-visuals/salmon-card.jpg)}.day-card:nth-child(3n):before{background-image:url(/nutriplan-visuals/chicken-bowl.jpg)}.day-card:nth-child(4n):before{background-image:url(/nutriplan-visuals/pancake2.jpg)}.meal-grid{grid-template-columns:1fr!important}.meal{border-radius:14px!important;background:#fff!important}.meal-label{color:var(--np-green-3)!important;font-weight:800!important}.prep-note,.inline-note,.tip{background:#75dc3217!important;border:1px solid rgba(117,220,50,.17)!important;color:#33512d!important}.app-route-recipes>.panel-stack:before{content:"Receptek 🌿򯻞zd fel az egészséges, tápláló recepteket az életmódodhoz igazítva.";white-space:pre-line;font-size:clamp(2rem,3vw,3rem);line-height:1.25;font-weight:860;letter-spacing:-.05em}.app-route-recipes .recipe-list{grid-template-columns:repeat(3,minmax(230px,1fr))!important;gap:18px!important}.recipe-full{position:relative;padding:0!important;overflow:hidden}.recipe-full:before{display:block!important;height:190px!important;margin:0!important;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.62)),url(/nutriplan-visuals/salmon-wide.jpg) center / cover no-repeat!important}.recipe-full:nth-child(2n):before{background-image:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.62)),url(/nutriplan-visuals/chicken-bowl.jpg)!important}.recipe-full:nth-child(3n):before{background-image:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.62)),url(/nutriplan-visuals/pancake.jpg)!important}.recipe-full:nth-child(4n):before{background-image:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.62)),url(/nutriplan-visuals/quinoa.jpg)!important}.recipe-full>*{margin-left:18px!important;margin-right:18px!important}.recipe-full>*:last-child{margin-bottom:18px!important}.recipe-full .recipe-topline{margin-top:16px!important}.recipe-full .recipe-topline h3{font-size:1.25rem!important}.recipe-full .ingredients,.recipe-full .steps{background:#fafafa;border-radius:14px;padding:14px}.recipe-mini:before{height:102px!important;background:url(/nutriplan-visuals/toast.jpg) center / cover no-repeat!important}.recipe-mini:nth-child(2n):before{background-image:url(/nutriplan-visuals/salmon-card.jpg)!important}.recipe-mini:nth-child(3n):before{background-image:url(/nutriplan-visuals/dahl.jpg)!important}details[open] .recipe-detail,.recipe-detail{border-radius:18px}details[open] .recipe-detail:before,.recipe-detail:before{content:"";display:block;height:210px;margin-bottom:18px;border-radius:16px;background:url(/nutriplan-visuals/recipe-detail-hero.jpg) center / cover no-repeat}.app-route-store-hub .hub-section:first-of-type .table-wrap,.app-route-store-hub table{background:#fff!important}.table-wrap table{border-collapse:separate!important;border-spacing:0 8px!important}.table-wrap thead th{color:#8a9099!important;font-size:.73rem!important;text-transform:none!important;letter-spacing:0!important}.table-wrap tbody tr{background:#fff!important;box-shadow:inset 0 0 0 1px #1113130f!important}.table-wrap tbody td{padding-top:14px!important;padding-bottom:14px!important}.table-wrap tbody td:first-child{border-radius:14px 0 0 14px!important}.table-wrap tbody td:last-child{border-radius:0 14px 14px 0!important}.app-route-store-hub .hub-section-body{position:relative}.app-route-store-hub .hub-section-body:after{content:"Smart tipp\aSpórolj még többet!\aVálts szezonális alapanyagokra a legjobb árakért.";white-space:pre-line;display:block;margin-top:18px;max-width:360px;min-height:125px;padding:22px;border-radius:16px;color:#fff;font-weight:800;background:linear-gradient(90deg,#000000e0,#00000080),url(/nutriplan-visuals/shopping-tip.jpg) right center / cover no-repeat}.app-route-progress-hub .hub-section-body,.app-route-progress-hub .panel-stack,.app-route-progress-hub .view{--chart-green: var(--np-green-2)}.enh-insight-grid,.grid.two,.stat-row{gap:16px!important}.enh-stat,.kpi{background:#fff!important;border:1px solid rgba(17,19,19,.07)!important;border-radius:16px!important;box-shadow:0 8px 24px #00000009!important}.kpi .value{color:#111!important;font-weight:870!important}.app-route-progress-hub .hub-section-body:after{content:"Havi haladási pontszám     89%    ·    Étrend 92%    Edzés 85%    Hidratálás 82%";display:flex;align-items:center;padding:0 28px;min-height:86px;margin-top:18px;border-radius:16px;background:linear-gradient(90deg,#000000e6,#000000b8),url(/nutriplan-visuals/progress-food.jpg) right center / auto 100% no-repeat;color:#fff;font-weight:850}.profile-summary-card{background:#fff!important}.profile-summary-card .avatar-circle{background:linear-gradient(135deg,#fff,#eaf5e4)!important;color:var(--np-green-3)!important}.profile-domains{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.app-route-profile-hub .hub-stack:after{content:"Tedd még hatékonyabbá az eredményeidet!\aSzemélyre szabott ajánlások és haladó elemzések várnak.\a\aPrémium felfedezése  →";white-space:pre-line;min-height:178px;border-radius:16px;padding:24px;color:#fff;font-weight:820;line-height:1.55;background:linear-gradient(90deg,#000000e0,#00000094),url(/nutriplan-visuals/profile-card-food.jpg) right center / auto 100% no-repeat}@media (max-width: 1100px){:root{--np-sidebar-w: 0px;--np-header-h: 68px}.app-header-inner{grid-template-columns:auto 1fr auto;padding:0 16px!important;gap:10px}.enh-cmd-hint{width:auto;min-width:0}.enh-cmd-hint span{display:none!important}.header-tabs{top:auto;left:12px;right:12px;bottom:12px;width:auto;min-height:0;height:62px;flex-direction:row;padding:8px!important;border-radius:20px!important;gap:4px}.header-tabs:before,.header-tabs:after{display:none}.header-tabs button{min-height:46px!important;justify-content:center!important;padding:0 8px!important;font-size:.72rem;gap:4px!important}.header-tabs button span{display:none}.app-main{width:min(100% - 16px,860px)!important;padding:0 0 92px!important}.app-main>.panel-stack,.app-main>.hub-stack,.app-main>.view{padding:20px 16px 22px!important;border-radius:0 0 22px 22px}.app-route-today>.panel-stack,.app-route-recipes .recipe-list{grid-template-columns:1fr!important}.app-route-today .panel-stack:after,.app-route-progress-hub .hub-section-body:after{overflow-x:auto;white-space:nowrap}.days,.week-grid{grid-template-columns:1fr!important}}@media (max-width: 640px){.brand{font-size:1.05rem!important}.app-header-inner{grid-template-columns:auto auto 1fr}.account-btn-label,.icon-btn{display:none!important}.hub-intro h2,.app-route-today .panel-stack:before,.app-route-recipes>.panel-stack:before{font-size:1.75rem!important}.stat-row{grid-template-columns:1fr!important}.check-row{padding-left:82px!important}.table-wrap{overflow-x:auto!important}.hero{min-height:520px!important;padding:28px!important;background-size:110% auto!important;background-position:78% 22%!important}.hero h1{font-size:3rem!important}}
