:root{--bg:#f4ede6;--surface:#fffaf4eb;--text-strong:#2d221b;--muted-strong:#6d5b4f;--muted:#7f6d61;--accent:#b65b3a;--accent-strong:#8f4328;--accent-soft:#f6d8c8;--sage-strong:#52644b;--line:#e2cdbfe6;--line-strong:#c7a895e6;--shadow:0 20px 40px #472c1f14, 0 6px 18px #472c1f0f;--font-body:"Avenir Next", "Segoe UI", "Trebuchet MS", sans-serif;--font-display:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;color:var(--text-strong);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(circle at 0 0,#b65b3a24,#0000 26%),radial-gradient(circle at 100% 100%,#6a7b6129,#0000 22%),linear-gradient(#f6efe7 0%,#f2e8de 100%);margin:0}body,button,input,textarea{font-family:var(--font-body)}button,input,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin:0}a{color:inherit}.welcome-shell,.app-shell{width:min(1180px,100% - 24px);margin:0 auto;padding:20px 0 40px;position:relative}.auth-shell{align-items:stretch}.verify-shell .welcome-story{background:radial-gradient(circle at 0 0,#6a7b611f,#0000 34%),linear-gradient(#fffaf4f5,#fff7eef5)}.app-shell:before,.app-shell:after{content:"";z-index:-1;filter:blur(24px);opacity:.55;border-radius:999px;position:fixed}.app-shell:before{background:#b65b3a2e;width:280px;height:280px;top:80px;right:-60px}.app-shell:after{background:#6a7b612e;width:220px;height:220px;top:360px;left:-80px}.welcome-shell{gap:18px;display:grid}.welcome-story,.onboarding-card,.topbar,.summary-card,.app-view,.side-panel,.meal-card,.shopping-group,.step-card,.review-card,.week-card,.swap-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.welcome-story,.onboarding-card,.topbar,.app-view,.week-card,.side-panel,.shopping-group,.step-card,.review-card{border-radius:28px}.welcome-story,.onboarding-card,.topbar,.app-view{padding:24px}.eyebrow,.summary-label,.review-section-title,.meal-day{color:var(--muted-strong);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.76rem}.welcome-story h1,.topbar h1{font-family:var(--font-display);letter-spacing:-.05em;margin:10px 0 12px;font-size:clamp(2.6rem,5vw,4.7rem);line-height:.96}.welcome-story h2,.onboarding-card h2,.view-header h2,.week-card h2,.side-panel h3,.review-card h3,.step-card h3,.shopping-group h3,.summary-card strong,.swap-card h4,.meal-card h3{color:var(--text-strong);margin:0}.welcome-story p,.onboarding-card p,.summary-card p,.topbar-copy,.view-subtitle,.meal-copy,.meal-explanation,.shopping-recipes,.detail-section p,.swap-card p,.empty-state,.review-card p{color:var(--muted)}.story-copy,.topbar-copy{max-width:42rem;font-size:1.05rem}.promise-grid{gap:12px;margin-top:24px;display:grid}.promise-grid article{background:linear-gradient(145deg,#ffffffe6,#f7eee3f2);border:1px solid #e8d7cacc;border-radius:22px;padding:18px}.promise-grid span{background:var(--accent-soft);width:38px;height:38px;color:var(--accent-strong);border-radius:12px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.promise-grid h2{margin:14px 0 8px}.onboarding-card{gap:20px;display:grid}.onboarding-header,.onboarding-footer,.view-header,.topbar-content,.meal-card-top,.swap-card-top,.shopping-group-header,.review-card-header,.step-progress,.side-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.step-dots{align-items:center;gap:8px;padding-top:4px;display:flex}.step-dot{background:#b65b3a2e;border-radius:999px;width:11px;height:11px}.step-dot.active{background:var(--accent);width:28px}.field-stack,.review-column,.shopping-items,.swap-list{gap:16px;display:grid}.onboarding-actions-left,.topbar-side,.topbar-actions{flex-wrap:wrap;gap:10px;display:flex}.field{gap:10px;display:grid}.field span{color:var(--text-strong);font-weight:600}.field input,.notes-area,.shopping-quantity{border:1px solid var(--line-strong);width:100%;min-height:48px;color:var(--text-strong);background:#ffffffdb;border-radius:16px;padding:14px 16px}.field input:focus,.notes-area:focus,.shopping-quantity:focus{border-color:var(--accent);outline:2px solid #b65b3a33}.field small{color:var(--muted)}.locked-choice,.inline-note{background:linear-gradient(145deg,#fffcf9fa,#faeae0c2);border:1px solid #e8d7cae6;border-radius:20px;padding:16px 18px}.locked-choice strong{color:var(--text-strong);display:block}.locked-choice p,.inline-note{color:var(--muted);margin:8px 0 0}.chip-row,.choice-row,.ingredient-chip-row{flex-wrap:wrap;gap:10px;display:flex}.chip,.tag-toggle,.ingredient-chip,.status-pill,.tab-button,.cook-meal-pill{border:1px solid #b65b3a2e;border-radius:999px}.chip,.tag-toggle,.cook-meal-pill,.tab-button{color:var(--text-strong);background:#ffffffd1;padding:10px 14px}.chip.active,.tag-toggle.active,.tab-button.active,.cook-meal-pill.active{background:var(--accent);border-color:var(--accent);color:#fff}.chip:disabled{opacity:.42;cursor:not-allowed;transform:none}.ingredient-chip,.status-pill{color:var(--sage-strong);background:#6a7b611a;align-items:center;padding:8px 12px;display:inline-flex}.account-pill{max-width:100%;min-height:46px;color:var(--sage-strong);overflow-wrap:anywhere;background:#6a7b6114;border:1px solid #6a7b6129;border-radius:999px;align-items:center;padding:10px 14px;font-size:.9rem;display:inline-flex}.account-pill-button{cursor:pointer;text-align:left;justify-content:space-between;gap:10px}.account-state{white-space:nowrap;border-radius:999px;align-items:center;padding:5px 10px;font-size:.76rem;font-weight:700;display:inline-flex}.account-state.verified{color:var(--sage-strong);background:#6a7b6129}.account-state.pending{color:var(--accent-strong);background:#b65b3a24}.sync-error{color:var(--accent-strong);background:#b65b3a14;border:1px solid #b65b3a38;border-radius:16px;margin:0;padding:12px 14px}.sync-success{color:var(--sage-strong);background:#6a7b6114;border:1px solid #6a7b6138;border-radius:16px;margin:0;padding:12px 14px}.primary-button,.secondary-button,.ghost-button{border:1px solid #0000;border-radius:16px;min-height:46px;padding:12px 16px;transition:transform .18s,background-color .18s,border-color .18s}.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.chip:hover,.tab-button:hover,.cook-meal-pill:hover,.tag-toggle:hover,.meal-card:hover{transform:translateY(-1px)}.primary-button{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff}.secondary-button{color:var(--accent-strong);background:#b65b3a1a;border-color:#b65b3a24}.ghost-button{color:var(--muted-strong);background:0 0;border-color:#6d5b4f2e}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.topbar{background:radial-gradient(circle at 100% 0,#b65b3a24,#0000 32%),linear-gradient(#fffaf4f5,#fff7eef5);padding:18px}.topbar-content,.topbar-side{flex-direction:column}.week-card{background:linear-gradient(145deg,#faeae0f2,#fffffff5);padding:18px}.week-card p:last-child{margin-top:8px}.summary-band{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:12px;display:grid}.summary-card{border-radius:22px;padding:18px}.summary-card-reminders{gap:8px;display:grid}.summary-card strong{margin:10px 0 8px;font-size:1.1rem;display:block}.summary-card-reminders p{line-height:1.35}.tab-row{z-index:5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fff8f2d1;border:1px solid #e8d7cacc;border-radius:24px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0;padding:10px;display:grid;position:sticky;top:12px}.workspace-shell{display:grid}.account-overlay{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1c140f47;place-items:end stretch;padding:14px;display:grid;position:fixed;inset:0}.account-panel{background:linear-gradient(#fffbf7fa,#f8f0e7fa);border:1px solid #e8d7cae6;border-radius:28px;gap:18px;width:min(100%,640px);max-height:min(88vh,860px);margin-left:auto;padding:20px;display:grid;overflow:auto;box-shadow:0 30px 80px #3c231442}.account-panel-header,.account-section-header{gap:6px;display:grid}.account-panel-header{grid-template-columns:1fr auto;align-items:start;gap:16px}.account-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.account-summary>div,.account-section{background:#ffffffc7;border:1px solid #e8d7cad1;border-radius:22px;padding:16px}.account-summary strong{color:var(--text-strong);margin-top:8px;display:block}.account-section{gap:14px;display:grid}.account-actions{flex-wrap:wrap;gap:10px;display:flex}.account-actions-end{justify-content:space-between}.check-row{color:var(--muted-strong);align-items:center;gap:10px;display:inline-flex}.check-row input{width:18px;height:18px;accent-color:var(--accent)}.app-view{gap:18px;display:grid}.view-header{flex-direction:column}.view-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.plan-layout,.cook-layout,.review-layout{gap:16px;display:grid}.meal-list{gap:14px;display:grid}.meal-card{cursor:pointer;border-radius:24px;padding:18px}.meal-card.active{background:linear-gradient(145deg,#fffcf9fa,#faeae0d9);border-color:#b65b3a70}.score-badge{min-width:48px;height:48px;color:var(--sage-strong);background:#6a7b6124;border-radius:18px;justify-content:center;align-items:center;padding:0 12px;font-weight:700;display:inline-flex}.meal-meta,.meal-actions,.timer-group,.step-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.meal-meta{color:var(--muted-strong);font-size:.92rem}.meal-explanation{margin:12px 0 16px}.side-panel,.step-card,.swap-card{padding:18px}.detail-section,.review-section,.tip-block{gap:10px;display:grid}.detail-section+.detail-section,.review-section+.review-section{margin-top:16px}.detail-list{color:var(--muted);gap:8px;margin:0;padding-left:18px;display:grid}.empty-state{background:#6a7b6114;border-radius:18px;margin:0;padding:16px}.shopping-grid{gap:14px;display:grid}.shopping-group{padding:18px}.shopping-group-header span{color:var(--muted-strong)}.shopping-item{background:#ffffffc2;border:1px solid #e8d7cae6;border-radius:20px;gap:10px;padding:14px;display:grid}.shopping-item.checked{opacity:.62}.shopping-check{color:var(--text-strong);align-items:center;gap:12px;font-weight:600;display:flex}.shopping-check input{width:18px;height:18px;accent-color:var(--accent)}.shopping-recipes{margin:0;font-size:.92rem}.cook-meal-strip{gap:10px;padding-bottom:6px;display:flex;overflow-x:auto}.cook-meal-pill{text-align:left;gap:4px;min-width:170px;display:grid}.cook-main{gap:16px;display:grid}.step-card{background:radial-gradient(circle at 100% 0,#b65b3a14,#0000 34%),linear-gradient(#fffcf9f5,#fff8f2f5);gap:18px;display:grid}.timer-pill{font-variant-numeric:tabular-nums;font-weight:700}.review-card{padding:18px}.review-layout{align-items:start}.notes-area{resize:vertical;min-height:140px}@media (width>=760px){.welcome-shell{grid-template-columns:1.1fr .9fr;align-items:start}.promise-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar-content{flex-direction:row;align-items:stretch}.topbar-side{align-items:flex-end;min-width:320px}.week-card{width:100%;max-width:320px}.summary-band{grid-template-columns:repeat(4,minmax(0,1fr))}.view-header{flex-direction:row;align-items:center}.plan-layout,.cook-layout,.review-layout{grid-template-columns:minmax(0,1.45fr) minmax(320px,.95fr);align-items:start}.shopping-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-overlay{place-items:center end}.account-panel{margin-right:12px}}@media (width<=759px){.welcome-shell,.app-shell{width:min(100% - 16px,720px);padding-top:12px}.welcome-story,.onboarding-card,.topbar,.app-view{padding:18px}.tab-row{top:8px}.tab-button{padding-inline:8px}.account-panel{border-radius:24px 24px 18px 18px;max-height:90vh}.account-summary,.account-panel-header{grid-template-columns:1fr}}
