@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";:root{font-family:DM Sans,sans-serif;color:#18342a;background:#f6f3ec;font-synthesis:none;--ink:#18342a;--green:#1f563f;--cream:#f6f3ec;--paper:#fffdf8;--line:#dfded5;--sage:#dfe8dc;--coral:#e98064}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{cursor:pointer}.brand{display:flex;align-items:center;gap:10px;font-family:Fraunces,serif;font-size:20px;font-weight:700}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--green);color:#fff}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.auth-intro{background:var(--ink);color:#fff;padding:48px 8vw;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-intro:after{content:"";position:absolute;width:420px;height:420px;border:1px solid #ffffff18;border-radius:50%;right:-200px;bottom:-130px;box-shadow:0 0 0 70px #ffffff08,0 0 0 140px #ffffff05}.auth-intro .brand-mark{background:#e3b859;color:var(--ink)}.auth-intro h1{font:700 clamp(46px,5vw,76px)/1.02 "Fraunces";max-width:690px;margin:16px 0 24px}.auth-copy{max-width:590px;color:#d4dfd7;font-size:19px;line-height:1.7}.eyebrow,.overline{font-size:12px;font-weight:700;letter-spacing:.14em;color:#6c806f}.auth-intro .eyebrow{color:#e3b859}.auth-note{display:flex;align-items:center;gap:12px;color:#d4dfd7}.auth-panel{display:grid;place-items:center;padding:40px;background:#f6f3ec}.auth-card{width:min(430px,100%);background:var(--paper);border:1px solid var(--line);padding:42px;border-radius:24px;box-shadow:0 24px 70px #28352e12}.auth-card h2,.page-heading h1,.empty-page h1{font-family:Fraunces;font-size:34px;margin:8px 0}.muted,.auth-card p,.page-heading p,.empty-page>p{color:#718078;line-height:1.55}.auth-card label{display:grid;gap:8px;font-weight:600;font-size:14px;margin-top:20px}.auth-card input{height:48px;border:1px solid #ccd2ca;border-radius:10px;padding:0 14px;background:#fff}.auth-card input:focus{outline:3px solid #b8d3c1;border-color:var(--green)}.primary,.secondary{border-radius:10px;min-height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;border:1px solid var(--green)}.primary{background:var(--green);color:#fff}.primary:hover{background:#173f30}.secondary{background:transparent;color:var(--green)}.wide{width:100%;margin-top:24px}.link{border:0;background:none;color:var(--green);font-weight:700;padding:12px 0}.divider{display:flex;align-items:center;color:#98a099;margin:6px 0}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.divider span{padding:0 12px}.switch{text-align:center;font-size:14px}.form-message{background:var(--sage);padding:10px 12px;border-radius:8px}.app{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;background:#173b2d;color:#fff;padding:28px 20px;display:flex;flex-direction:column}.sidebar .brand{padding:0 8px 30px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{display:flex;align-items:center;gap:13px;color:#c8d5cf;text-decoration:none;padding:13px;border-radius:10px;font-weight:600}.sidebar nav a:hover,.sidebar nav a.active{background:#2a5141;color:#fff}.family-chip{display:flex;gap:10px;align-items:center;margin-top:auto;padding:14px 8px;border-top:1px solid #ffffff20}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e3b859;color:#173b2d;font-weight:700}.family-chip div:last-child{display:grid;font-size:13px}.family-chip span{color:#aebfb7;margin-top:2px}.signout{border:0;background:none;color:#b9c8c1;display:flex;align-items:center;gap:10px;padding:12px 8px}.content{grid-column:2;min-width:0}.topbar{height:72px;border-bottom:1px solid var(--line);background:#faf8f3;display:flex;justify-content:space-between;align-items:center;padding:0 4vw;position:sticky;top:0;z-index:5}.mobile-brand{display:none}.profile{border:0;background:none;display:flex;align-items:center;gap:8px;color:var(--ink)}.main{padding:42px 4vw 100px;max-width:1400px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px}.page-heading h1{font-size:42px}.page-heading p{margin:4px 0}.actions{display:flex;gap:10px}.week-summary{display:grid;grid-template-columns:repeat(3,1fr) 2fr;background:#e6ece2;border-radius:16px;padding:22px 26px;margin-bottom:24px;gap:18px}.week-summary>div{display:grid;border-right:1px solid #c8d2c5}.week-summary span{font-size:12px;color:#66756c;font-weight:600}.week-summary strong{font:600 28px Fraunces;margin-top:6px}.week-summary small{font:500 13px DM Sans;color:#718078}.week-summary p{font-size:12px;color:#6d786f;margin:auto}.day-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.day-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden}.day-card>header{display:flex;justify-content:space-between;padding:19px 20px;border-bottom:1px solid var(--line)}.day-card h2{font:600 20px Fraunces;margin:0}.day-card header span{font-size:12px;color:#7c857f}.day-card header button{border:0;background:none}.meal-slot{min-height:116px;padding:17px 20px;border-bottom:1px solid #ebe9e2;display:grid;align-content:start;gap:8px}.meal-label{display:flex;justify-content:space-between;color:#758078;font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:.08em}.meal-slot>strong{font-size:15px}.meal-slot small{display:flex;gap:5px;align-items:center;color:#778078}.meal-slot.empty{background:#faf9f5;place-items:center;align-content:center}.meal-slot.empty button{border:0;background:none;color:var(--green);display:flex;align-items:center;gap:5px;font-weight:700}.text-button{display:flex;align-items:center;margin:24px auto;border:0;background:none;color:var(--green);font-weight:700}.list-card{background:var(--paper);border:1px solid var(--line);border-radius:15px;margin-bottom:16px;padding:20px}.list-card h2{font:600 19px Fraunces;margin:0 0 12px}.list-card h2 span{font:500 12px DM Sans;color:#78817b;margin-left:8px}.check-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #eeeae2}.check-row input{position:absolute;opacity:0}.fake-check{width:22px;height:22px;border:1px solid #aab3ab;border-radius:6px;display:grid;place-items:center;color:transparent}.check-row input:checked+.fake-check{background:var(--green);color:#fff;border-color:var(--green)}.check-row input:checked~span:last-child{text-decoration:line-through;color:#8a928c}.empty-page{text-align:center;max-width:520px;margin:12vh auto}.empty-icon{width:68px;height:68px;border-radius:20px;background:var(--sage);display:grid;place-items:center;margin:0 auto 24px;color:var(--green)}.empty-page .primary{margin-top:16px}.settings-grid{display:grid;gap:12px;max-width:760px}.setting-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:14px}.setting-card h2{font-size:16px;margin:0}.setting-card p{color:#7a837d;margin:4px 0 0}.bottom-nav{display:none}.center-state{min-height:100vh;display:grid;place-items:center;color:var(--green)}@media(max-width:900px){.auth-page{grid-template-columns:1fr}.auth-intro{min-height:38vh;padding:30px}.auth-intro h1{font-size:42px}.auth-note{display:none}.auth-panel{padding:24px}.app{display:block}.sidebar{display:none}.content{grid-column:auto}.mobile-brand{display:block;font-family:Fraunces;font-size:18px}.topbar>div>strong{display:none}.main{padding:28px 18px 100px}.page-heading{align-items:flex-start}.page-heading h1{font-size:36px}.week-summary{grid-template-columns:repeat(3,1fr)}.week-summary p{grid-column:1/-1}.day-grid{grid-template-columns:1fr 1fr}.bottom-nav{position:fixed;display:flex;bottom:0;left:0;right:0;height:70px;background:#fff;border-top:1px solid var(--line);z-index:10;justify-content:space-around}.bottom-nav a{display:grid;place-items:center;align-content:center;gap:4px;text-decoration:none;color:#78827c;font-size:11px;min-width:60px}.bottom-nav a.active{color:var(--green);font-weight:700}}@media(max-width:600px){.auth-card{padding:28px 22px}.auth-intro{min-height:34vh}.auth-intro h1{font-size:35px}.auth-copy{font-size:15px}.page-heading{display:grid}.page-heading .actions{width:100%}.page-heading .actions button{flex:1}.week-summary{overflow:auto;grid-template-columns:repeat(3,minmax(120px,1fr));padding:18px}.week-summary p{display:none}.day-grid{grid-template-columns:1fr}.profile span{display:none}}:root{--theme-ink:#18342a;--theme-primary:#1f563f;--theme-hover:#173f30;--theme-bg:#f6f3ec;--theme-paper:#fffdf8;--theme-line:#dfded5;--theme-soft:#dfe8dc;--theme-muted:#718078;--theme-sidebar:#173b2d;--theme-sidebar-active:#2a5141;--theme-topbar:#faf8f3;--theme-summary:#e6ece2;--theme-accent:#e3b859}html[data-theme=terracotta]{--theme-ink:#442b25;--theme-primary:#a44832;--theme-hover:#843724;--theme-bg:#f8f1e9;--theme-paper:#fffaf4;--theme-line:#e4d7cb;--theme-soft:#f1ddd1;--theme-muted:#806f68;--theme-sidebar:#542f27;--theme-sidebar-active:#764437;--theme-topbar:#fbf5ee;--theme-summary:#f2e1d5;--theme-accent:#e9b45f}html[data-theme=ocean]{--theme-ink:#18313d;--theme-primary:#176b78;--theme-hover:#105762;--theme-bg:#eef5f5;--theme-paper:#fbfdfc;--theme-line:#d5e1e1;--theme-soft:#d7e9e9;--theme-muted:#687d82;--theme-sidebar:#153d49;--theme-sidebar-active:#245d69;--theme-topbar:#f4f9f8;--theme-summary:#dcecec;--theme-accent:#e5b85c}html{--ink:var(--theme-ink);--green:var(--theme-primary);--cream:var(--theme-bg);--paper:var(--theme-paper);--line:var(--theme-line);--sage:var(--theme-soft)}body{background:var(--theme-bg);color:var(--theme-ink);transition:background-color .18s ease,color .18s ease}.sidebar{background:var(--theme-sidebar)}.sidebar nav a:hover,.sidebar nav a.active{background:var(--theme-sidebar-active)}.topbar{background:var(--theme-topbar)}.week-summary{background:var(--theme-summary)}.primary:hover{background:var(--theme-hover)}.avatar,.auth-intro .brand-mark{background:var(--theme-accent)}.muted,.auth-card p,.page-heading p,.empty-page>p,.setting-card p{color:var(--theme-muted)}.setting-card.interactive{grid-template-columns:auto 1fr auto}.switch-control{width:50px;height:30px;border:0;border-radius:999px;padding:3px;background:#aeb8b2;display:flex;align-items:center;transition:background .18s ease}.switch-control span{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:transform .18s ease}.switch-control.on{background:var(--theme-primary)}.switch-control.on span{transform:translate(20px)}.language-select{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--theme-muted)}.language-select select{min-width:145px;height:42px;border:1px solid var(--line);border-radius:10px;padding:0 34px 0 12px;background:var(--paper);color:var(--theme-ink);font:600 14px DM Sans,sans-serif}.language-select.compact{justify-items:end;margin:0 0 20px}.language-select.compact span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.language-card{grid-template-columns:auto 1fr auto}@media(max-width:600px){.language-card{grid-template-columns:auto 1fr}.language-card .language-select{grid-column:1/-1}.language-card .language-select select{width:100%}.language-select.compact select{min-width:130px}}.theme-card{background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:14px;padding:20px}.theme-heading{display:flex;gap:18px;align-items:flex-start}.theme-heading h2{font-size:16px;margin:0}.theme-heading p{color:var(--theme-muted);margin:4px 0 0}.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.theme-option{min-height:86px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;text-align:left;border:1px solid var(--theme-line);background:var(--theme-paper);color:var(--theme-ink);border-radius:12px;padding:12px}.theme-option:hover,.theme-option.selected{border-color:var(--theme-primary);box-shadow:0 0 0 2px var(--theme-soft)}.theme-option>span:nth-child(2){display:grid;gap:3px}.theme-option small{color:var(--theme-muted);line-height:1.25}.theme-swatch{width:34px;height:46px;border-radius:8px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr}.theme-swatch i:first-child{grid-column:1/-1}.theme-swatch.forest i:nth-child(1){background:#173b2d}.theme-swatch.forest i:nth-child(2){background:#e3b859}.theme-swatch.forest i:nth-child(3){background:#dfe8dc}.theme-swatch.terracotta i:nth-child(1){background:#542f27}.theme-swatch.terracotta i:nth-child(2){background:#e9b45f}.theme-swatch.terracotta i:nth-child(3){background:#f1ddd1}.theme-swatch.ocean i:nth-child(1){background:#153d49}.theme-swatch.ocean i:nth-child(2){background:#e5b85c}.theme-swatch.ocean i:nth-child(3){background:#d7e9e9}@media(max-width:700px){.theme-options{grid-template-columns:1fr}.theme-option{min-height:70px}}.onboarding-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:var(--theme-bg)}.onboarding-card{width:min(620px,100%);background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:24px;padding:42px;box-shadow:0 24px 70px #28352e12;text-align:center}.onboarding-card>.brand-mark{margin:0 auto 20px}.onboarding-card h1{font:700 40px Fraunces;margin:8px 0 12px}.onboarding-card>p:not(.eyebrow):not(.form-message){color:var(--theme-muted);font-size:17px;line-height:1.6;max-width:500px;margin:0 auto}.onboarding-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0}.onboarding-summary div{display:grid;gap:5px;padding:16px 10px;border-radius:12px;background:var(--theme-soft)}.onboarding-summary span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--theme-muted);font-weight:700}.onboarding-card>.link{margin-top:8px}.onboarding-card .form-message{text-align:left}@media(max-width:600px){.onboarding-card{padding:30px 20px}.onboarding-card h1{font-size:34px}.onboarding-summary{grid-template-columns:1fr}.onboarding-summary div{grid-template-columns:1fr 1fr;text-align:left}}.approval-panel{display:grid;gap:18px}.approval-list{display:grid;gap:10px}.approval-request{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--theme-line);border-radius:12px;background:var(--theme-bg)}.approval-request>div:first-child{display:grid;gap:4px}.approval-request span{font-size:13px;color:var(--theme-muted)}.approval-request>div:last-child{display:flex;gap:8px}.approval-request .primary,.approval-request .secondary{min-height:38px}@media(max-width:600px){.approval-request{align-items:stretch;display:grid}.approval-request>div:last-child{display:grid;grid-template-columns:1fr 1fr}}.recipe-error{display:grid;gap:4px;padding:16px 18px;border:1px solid #d9a58f;background:#fff1e9;border-radius:12px;color:#7d3424;margin-bottom:16px}.recipe-toolbar{height:48px;display:flex;align-items:center;gap:10px;background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:12px;padding:0 15px;margin-bottom:22px;max-width:520px}.recipe-toolbar input{border:0;outline:0;background:transparent;color:var(--theme-ink);width:100%;height:100%}.recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.recipe-card{background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:16px;padding:20px;min-height:230px;display:flex;flex-direction:column;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.recipe-card:hover{transform:translateY(-2px);border-color:var(--theme-primary);box-shadow:0 12px 30px #25372e0d}.recipe-card-top{display:flex;justify-content:space-between;align-items:center}.recipe-card-top>span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--theme-muted)}.recipe-card-top button,.icon-action,.danger-button,.row-delete{border:0;background:transparent;color:var(--theme-primary);padding:6px;display:grid;place-items:center;border-radius:8px}.recipe-card h2{font:600 23px Fraunces;margin:18px 0 7px}.recipe-card p{color:var(--theme-muted);line-height:1.45;margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--theme-muted);font-size:12px;margin-top:auto}.recipe-meta span{display:flex;align-items:center;gap:5px}.tag-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.tag-row span{font-size:11px;background:var(--theme-soft);padding:5px 8px;border-radius:999px}.empty-page.compact{margin:8vh auto}.content-state{padding:60px;text-align:center;color:var(--theme-muted)}.back-button{border:0;background:transparent;color:var(--theme-primary);font-weight:700;display:inline-flex;align-items:center;gap:5px;padding:8px 0}.detail-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin:22px 0 28px}.detail-heading h1,.form-heading h1{font:700 42px Fraunces;margin:6px 0}.detail-heading p{color:var(--theme-muted);max-width:650px;line-height:1.6}.detail-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.icon-action{width:44px;height:44px;border:1px solid var(--theme-line)}.danger-button{color:#a23c2c;width:44px;height:44px;border:1px solid #deb9b1}.nutrition-strip{display:grid;grid-template-columns:repeat(6,1fr);background:var(--theme-summary);border-radius:14px;padding:18px}.nutrition-strip div{display:grid;gap:6px;padding:0 14px;border-right:1px solid var(--theme-line)}.nutrition-strip div:last-child{border:0}.nutrition-strip span{font-size:11px;color:var(--theme-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.nutrition-strip strong{font:600 21px Fraunces}.nutrition-strip small{font:500 11px DM Sans}.nutrition-note{font-size:11px;color:var(--theme-muted)}.detail-columns{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;margin-top:30px}.detail-columns>article,.allergen-box{background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:15px;padding:22px}.detail-columns h2{font:600 23px Fraunces;margin:0 0 17px}.ingredient-list,.instruction-list{margin:0;padding:0;list-style:none}.ingredient-list li{display:grid;grid-template-columns:100px 1fr;padding:11px 0;border-top:1px solid var(--theme-line)}.instruction-list{counter-reset:steps}.instruction-list li{counter-increment:steps;position:relative;padding:0 0 20px 42px;line-height:1.55}.instruction-list li:before{content:counter(steps);position:absolute;left:0;top:-3px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--theme-soft);font-weight:700}.allergen-box{margin-top:20px}.allergen-box .tag-row span{background:#fff0e7;color:#8a402d}.recipe-form{max-width:1050px}.form-heading{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:24px}.form-heading>.back-button{grid-column:1/-1}.form-section{background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:15px;padding:22px;margin-bottom:16px}.form-section h2{font:600 22px Fraunces;margin:0 0 18px}.section-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}.section-heading p{color:var(--theme-muted);margin:-12px 0 18px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.span-2{grid-column:1/-1}.recipe-form label{display:grid;gap:7px;font-size:13px;font-weight:700;color:var(--theme-ink)}.recipe-form input,.recipe-form textarea,.recipe-form select{width:100%;border:1px solid var(--theme-line);background:#fff;color:#1d3028;border-radius:9px;padding:11px 12px}.recipe-form input,.recipe-form select{height:44px}.recipe-form input:focus,.recipe-form textarea:focus,.recipe-form select:focus{outline:3px solid var(--theme-soft);border-color:var(--theme-primary)}.ingredient-editor{display:grid;gap:9px}.ingredient-row{display:grid;grid-template-columns:2fr 110px 110px 150px auto 38px;gap:9px;align-items:end;padding:11px;border-radius:11px;background:var(--theme-bg)}.optional-check{display:flex!important;align-items:center;gap:7px!important;height:44px}.optional-check input{width:18px;height:18px}.row-delete{height:44px;color:#a23c2c}.nutrition-inputs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.allergen-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.allergen-grid label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--theme-line);border-radius:9px;text-transform:capitalize}.allergen-grid input{width:17px;height:17px}.form-footer{display:flex;justify-content:flex-end;gap:10px;padding:10px 0 30px}@media(max-width:1100px){.recipe-grid{grid-template-columns:repeat(2,1fr)}.nutrition-strip{grid-template-columns:repeat(3,1fr);gap:16px}.nutrition-strip div:nth-child(3){border:0}.ingredient-row{grid-template-columns:2fr 100px 100px}.ingredient-row .optional-check,.ingredient-row .row-delete{align-self:end}.allergen-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.recipe-grid{grid-template-columns:1fr}.detail-heading,.section-heading{display:grid}.detail-actions{width:100%}.nutrition-strip{grid-template-columns:repeat(2,1fr)}.nutrition-strip div:nth-child(2),.nutrition-strip div:nth-child(4){border:0}.detail-columns,.form-heading{grid-template-columns:1fr}.form-heading>.primary{width:100%}.form-grid,.nutrition-inputs{grid-template-columns:1fr}.span-2{grid-column:auto}.ingredient-row{grid-template-columns:1.5fr 90px}.allergen-grid{grid-template-columns:repeat(2,1fr)}}.ai-button{min-height:44px;padding:0 16px;border:1px solid #7653a6;border-radius:10px;background:#f4effb;color:#654293;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}.ai-button:hover{background:#e9dff6}.empty-actions{display:flex;justify-content:center;gap:10px;margin-top:18px}.ai-overlay{position:fixed;inset:0;z-index:50;background:#14251f9e;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px}.ai-dialog{width:min(620px,100%);max-height:calc(100vh - 40px);overflow:auto;background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:22px;padding:34px;box-shadow:0 30px 90px #0d191566;position:relative}.dialog-close{position:absolute;right:18px;top:18px;border:0;background:var(--theme-bg);color:var(--theme-ink);width:38px;height:38px;border-radius:50%;display:grid;place-items:center}.ai-orb{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#7653a6,#b46d9f);margin-bottom:18px}.ai-dialog h2{font:700 32px Fraunces;margin:7px 0}.ai-dialog>p:not(.eyebrow):not(.ai-disclaimer){color:var(--theme-muted);line-height:1.55}.ai-dialog label{display:grid;gap:8px;font-size:13px;font-weight:700;margin-top:20px}.ai-dialog textarea{width:100%;border:1px solid var(--theme-line);border-radius:11px;padding:13px;background:#fff;color:#1d3028;resize:vertical;font:inherit}.ai-dialog textarea:focus{outline:3px solid #eadff5;border-color:#7653a6}.ai-suggestions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.ai-suggestions button{border:1px solid var(--theme-line);background:var(--theme-bg);color:var(--theme-ink);border-radius:999px;padding:7px 10px;font-size:11px}.ai-disclaimer{text-align:center;font-size:11px;color:var(--theme-muted);margin-bottom:0}.ai-dialog .recipe-error{margin:12px 0 0}.ai-dialog .recipe-error small{margin-top:4px}.ai-dialog .wide{background:#7653a6;border-color:#7653a6}.ai-dialog .wide:hover{background:#5f3f86}@media(max-width:600px){.empty-actions{display:grid}.ai-dialog{padding:28px 20px}.ai-dialog h2{font-size:28px}.page-heading>.actions{display:grid;grid-template-columns:1fr 1fr}.page-heading>.actions button{padding:0 10px}}
