@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-panel-content{width:min(430px,100%);display:grid;gap:18px}.auth-card{width: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}:root{--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)}.family-settings-card{width:100%;text-align:left;color:var(--theme-ink)}.family-settings-card:hover,.family-settings-card:focus-visible{border-color:var(--theme-primary);box-shadow:0 0 0 2px var(--theme-soft);outline:0}.family-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}.family-dialog{position:relative;width:min(560px,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}.family-dialog h2{font:700 31px Fraunces;margin:7px 0 20px}.family-dialog h3{font:600 19px Fraunces;margin:28px 0 10px}.family-dialog>label{display:grid;gap:7px;font-size:13px;font-weight:700}.family-dialog input{height:44px;border:1px solid var(--theme-line);border-radius:9px;padding:0 12px;background:#fff;color:#1d3028}.family-dialog input:disabled{background:var(--theme-bg);color:var(--theme-muted)}.family-dialog>.primary{margin-top:10px}.family-member-list{display:grid;gap:8px}.family-member-list>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:10px;border:1px solid var(--theme-line);border-radius:11px}.family-member-list .avatar{width:34px;height:34px}.family-member-list small{color:var(--theme-muted)}@media(max-width:600px){.family-dialog{padding:28px 20px}.family-member-list>div{grid-template-columns:auto 1fr}.family-member-list small{grid-column:2}}.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}.brand .brand-mark{background-image:url(/bee-chef.png);background-size:cover;background-position:center;border-radius:11px}.brand .brand-mark svg{display:none}.legal-link{justify-self:center;color:var(--theme-muted);font-size:12px;font-weight:700;text-decoration:none}.legal-link:hover{text-decoration:underline}.legal-page{min-height:100vh;padding:48px 20px;background:var(--theme-bg);display:grid;place-items:start center}.legal-card{width:min(760px,100%);background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:22px;padding:40px;box-shadow:0 20px 60px #28352e10}.legal-card>.brand{margin-bottom:36px}.legal-card h1{font:700 42px Fraunces;margin:8px 0 12px}.legal-lead{font-size:20px;line-height:1.6;color:var(--theme-ink)}.legal-card section{margin-top:28px;padding-top:24px;border-top:1px solid var(--theme-line)}.legal-card section h2{font:600 21px Fraunces;margin:0 0 10px}.legal-card section p,.legal-note{color:var(--theme-muted);line-height:1.7}.legal-note{margin-top:28px;padding:16px;border-radius:10px;background:var(--theme-soft);font-size:14px}.legal-back{text-decoration:none;margin-top:18px}.auth-card .divider,.auth-card .divider+.secondary.wide{display:none}.microsoft-button{width:100%;min-height:48px;margin-top:22px;border:1px solid #8a918d;border-radius:10px;background:#fff;color:#202b27;font-weight:700;display:flex;align-items:center;justify-content:center;gap:10px}.microsoft-button:hover{background:#f3f5f4;border-color:#515b56}.microsoft-button:disabled{opacity:.6;cursor:wait}@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}}@media(max-width:600px){.legal-card{padding:28px 22px}.legal-card h1{font-size:34px}.auth-panel-content{gap:16px}.legal-link{padding:0 12px 4px;text-align:center}}.week-title-row{display:flex;align-items:flex-end;gap:20px}.week-nav{display:flex;align-items:center;gap:7px;padding-bottom:4px}.week-nav .icon-action{width:42px;height:42px}.week-heading .actions a{text-decoration:none}.week-message{margin:-14px 0 18px}.real-week-grid{display:grid;grid-template-columns:repeat(7,minmax(210px,1fr));gap:12px;overflow-x:auto;padding-bottom:12px}.real-week-grid .day-card{min-width:210px}.planned-slot{min-height:154px}.slot-lock{border:0;background:none;color:var(--theme-primary);padding:2px;display:grid;place-items:center}.slot-actions{display:flex;gap:8px;margin-top:auto;padding-top:5px}.slot-actions button{border:0;background:var(--theme-soft);color:var(--theme-primary);border-radius:7px;padding:7px 9px;font-size:11px;font-weight:700}.slot-actions button:disabled{opacity:.45;cursor:not-allowed}.recipe-picker{position:relative;width:min(620px,calc(100% - 28px));max-height:min(760px,90vh);overflow:auto;background:var(--theme-paper);border-radius:22px;padding:32px;box-shadow:0 25px 90px #0004}.recipe-picker h2{font:700 32px Fraunces;margin:8px 0}.recipe-picker>p:not(.eyebrow){color:var(--theme-muted)}.picker-list{display:grid;gap:8px;max-height:390px;overflow:auto;margin-top:18px}.picker-list>button{border:1px solid var(--theme-line);background:var(--theme-paper);border-radius:12px;padding:14px;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:14px;color:var(--theme-ink)}.picker-list>button:hover{border-color:var(--theme-primary);background:var(--theme-soft)}.picker-list>button>span:first-child{display:grid;gap:4px}.picker-list small{color:var(--theme-muted);max-width:380px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-list>button>span:last-child{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px;color:var(--theme-muted)}@media(max-width:900px){.week-title-row{align-items:flex-start;flex-direction:column-reverse;gap:12px}.real-week-grid{grid-template-columns:repeat(7,minmax(240px,1fr))}}@media(max-width:600px){.week-heading .actions{display:grid}.recipe-picker{padding:26px 20px}.picker-list>button{align-items:flex-start;flex-direction:column}}.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}}.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}.serving-stepper{display:flex!important;grid-template-columns:none!important;gap:0!important;padding:0!important;border:1px solid var(--theme-line)!important;border-radius:9px;overflow:hidden;width:max-content}.serving-stepper button{width:30px;height:34px;border:0;background:var(--theme-paper);color:var(--theme-primary);display:grid;place-items:center}.serving-stepper button:disabled{opacity:.35;cursor:not-allowed}.serving-stepper input{width:45px;height:34px;border:0;border-left:1px solid var(--theme-line);border-right:1px solid var(--theme-line);background:var(--theme-paper);color:var(--theme-ink);text-align:center;font-weight:800;-moz-appearance:textfield}.serving-stepper input::-webkit-inner-spin-button,.serving-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.nutrition-strip .nutrition-per-serving{display:block;color:var(--theme-muted);margin-top:3px;white-space:nowrap}.instruction-serving-note{color:var(--theme-muted);font-size:12px;margin:-9px 0 22px;padding-bottom:12px;border-bottom:1px solid var(--theme-line)}.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}}.shopping-item-name{display:grid;gap:2px;flex:1}.shopping-item-name small{color:var(--theme-muted);font-size:12px}.shopping-state{padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.shopping-state.new{background:#d9efe0;color:#17623b}.shopping-state.old{background:#ece8e0;color:#82786b}.shopping-state.current{background:#e3eaf4;color:#3d5878}.shopping-old{opacity:.62}.shopping-old .shopping-item-name{text-decoration:line-through}.check-row input:checked~.shopping-item-name{text-decoration:line-through;color:#8a928c}.shopping-filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.shopping-filters label{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--theme-line);border-radius:10px;background:var(--theme-paper);font-size:13px;font-weight:700;cursor:pointer}.shopping-filters input{width:17px;height:17px;accent-color:var(--theme-accent)}.shopping-search{height:48px;display:flex;align-items:center;gap:10px;background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:12px;padding:0 14px;margin-bottom:14px;max-width:520px;color:var(--theme-muted)}.shopping-search input{border:0;outline:0;background:transparent;color:var(--theme-ink);width:100%;height:100%}.shopping-search input::-webkit-search-cancel-button{display:none}.shopping-search button{border:0;background:transparent;color:var(--theme-muted);display:grid;place-items:center;padding:5px}.shopping-search:focus-within{border-color:var(--theme-primary);box-shadow:0 0 0 3px var(--theme-soft)}.shopping-no-results{padding:32px;text-align:center;color:var(--theme-muted)}.shopping-controls{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.shopping-controls .shopping-filters{margin-bottom:0}.shopping-collapse-all{min-height:40px;white-space:nowrap}@media(max-width:600px){.shopping-controls{align-items:stretch;flex-direction:column}.shopping-collapse-all{width:100%}}.shopping-clear{color:#a23c2c;border-color:#deb9b1}.shopping-clear:hover{background:#fff1ed}.shopping-clear:disabled{opacity:.45;cursor:not-allowed}.shopping-check{display:flex;align-items:center;gap:12px;min-width:0;flex:1;cursor:pointer}.shopping-remove{width:36px;height:36px;flex:0 0 auto;border:0;border-radius:9px;background:transparent;color:var(--theme-muted);display:grid;place-items:center}.shopping-remove:hover,.shopping-remove:focus-visible{background:#f7e2dc;color:#9b3827;outline:none}.shopping-remove:focus-visible{box-shadow:0 0 0 3px var(--theme-soft)}.shopping-category{padding-top:0;padding-bottom:0}.shopping-category-toggle{width:100%;min-height:64px;padding:0;border:0;background:transparent;color:var(--theme-ink);display:flex;align-items:center;justify-content:space-between;text-align:left}.shopping-category-toggle h2{margin:0}.shopping-category-toggle svg{color:var(--theme-muted);transition:transform .18s ease}.shopping-category.collapsed .shopping-category-toggle svg{transform:rotate(-90deg)}.shopping-category-toggle:focus-visible{outline:3px solid var(--theme-soft);outline-offset:3px;border-radius:8px}.shopping-category>div:not([hidden]){padding-bottom:6px}.pantry-search{height:48px;display:flex;align-items:center;gap:10px;background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:12px;padding:0 14px;margin-bottom:22px;max-width:520px;color:var(--theme-muted)}.pantry-search input{border:0;outline:0;background:transparent;color:var(--theme-ink);width:100%;height:100%}.pantry-search button{border:0;background:transparent;color:var(--theme-muted);display:grid;place-items:center}.pantry-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}.pantry-dialog{position:relative;width:min(560px,100%);background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:22px;padding:34px;box-shadow:0 30px 90px #0d191566}.pantry-dialog h2{font:700 31px Fraunces;margin:7px 0 20px}.pantry-dialog>label,.pantry-form-row label{display:grid;gap:7px;font-size:13px;font-weight:700;margin-top:15px}.pantry-dialog input,.pantry-dialog select{height:44px;border:1px solid var(--theme-line);border-radius:9px;padding:0 12px;background:#fff;color:#1d3028}.pantry-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pantry-dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.pantry-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--theme-line)}.pantry-row.out{opacity:.62}.pantry-stock{width:26px;height:26px;border:1px solid var(--theme-line);border-radius:7px;background:var(--theme-bg);color:var(--theme-muted);display:grid;place-items:center;flex:0 0 auto}.pantry-stock.available{background:var(--theme-primary);border-color:var(--theme-primary);color:#fff}.pantry-name{display:grid;gap:3px;min-width:150px;flex:1}.pantry-name small{color:var(--theme-muted)}.pantry-status{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:5px 8px;white-space:nowrap}.pantry-status.available{background:#d9efe0;color:#17623b}.pantry-status.out{background:#ece8e0;color:#82786b}.quantity-control{display:flex;align-items:center;border:1px solid var(--theme-line);border-radius:10px;overflow:hidden;background:var(--theme-paper)}.quantity-control button{width:36px;height:38px;border:0;background:var(--theme-bg);color:var(--theme-primary);display:grid;place-items:center}.quantity-control input{width:72px;height:38px;border:0;border-left:1px solid var(--theme-line);text-align:right;padding:0 7px;background:var(--theme-paper);color:var(--theme-ink)}.quantity-control select{width:96px;height:38px;border:0;border-right:1px solid var(--theme-line);padding:0 5px;background:var(--theme-paper);color:var(--theme-ink)}.pantry-delete{width:38px;height:38px;border:0;border-radius:9px;background:transparent;color:var(--theme-muted);display:grid;place-items:center}.pantry-delete:hover,.pantry-delete:focus-visible{background:#f7e2dc;color:#9b3827}.pantry-group h2{margin-bottom:0}@media(max-width:760px){.pantry-row{display:grid;grid-template-columns:auto 1fr auto}.pantry-name{min-width:0}.pantry-status{display:none}.quantity-control{grid-column:2/4;width:max-content;max-width:100%}.pantry-delete{grid-column:3;grid-row:1}.pantry-form-row{grid-template-columns:1fr}.pantry-dialog{padding:28px 20px}}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-card{background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:15px;padding:22px}.admin-wide{grid-column:1/-1}.admin-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.admin-title>div{display:flex;align-items:center;gap:8px}.admin-title h2{font:600 22px Fraunces;margin:0}.admin-title span{font-size:11px;background:var(--theme-soft);padding:4px 7px;border-radius:999px}.admin-list,.admin-table,.family-admin-list{display:grid;gap:9px}.admin-user,.admin-account{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--theme-line);border-radius:11px}.admin-user>div:first-child,.admin-account>div:first-child{display:grid;gap:3px}.admin-user small,.admin-account small,.family-admin-list span{color:var(--theme-muted)}.admin-user>div:last-child{display:flex;gap:7px}.family-admin-list>div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--theme-line)}.admin-create{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-top:22px;padding-top:18px;border-top:1px solid var(--theme-line)}.admin-create h3{grid-column:1/-1;margin:0}.admin-create label{display:grid;gap:6px;font-size:12px;font-weight:700}.admin-create input,.admin-create select,.family-assignment select{height:42px;border:1px solid var(--theme-line);border-radius:9px;background:#fff;color:#1d3028;padding:0 10px}.approval-badge{font-size:10px;font-weight:800;text-transform:uppercase;padding:5px 8px;border-radius:999px}.approval-badge.approved{background:#d9efe0;color:#17623b}.approval-badge.pending{background:#fff0c9;color:#805e12}.approval-badge.rejected{background:#f5ddd7;color:#8b3225}.family-assignment{display:flex;gap:7px;align-items:center}.family-assignment select:first-child{min-width:150px}.family-assignment .secondary{min-height:42px}.admin-account{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(390px,auto)}@media(max-width:900px){.admin-grid{grid-template-columns:1fr}.admin-wide{grid-column:auto}.admin-account{grid-template-columns:1fr auto}.family-assignment{grid-column:1/-1}.admin-create{grid-template-columns:1fr}.admin-create h3{grid-column:auto}}@media(max-width:600px){.admin-user{align-items:stretch;display:grid}.admin-user>div:last-child{display:grid;grid-template-columns:1fr 1fr}.admin-account{grid-template-columns:1fr}.family-assignment{display:grid;grid-template-columns:1fr 1fr}.family-assignment button{grid-column:1/-1}.family-assignment select:first-child{min-width:0}}.admin-filters{display:grid;grid-template-columns:minmax(220px,1fr) 180px 220px;gap:9px;margin-bottom:14px}.admin-search{height:42px;display:flex;align-items:center;gap:8px;border:1px solid var(--theme-line);border-radius:9px;padding:0 11px;background:#fff;color:var(--theme-muted);margin-bottom:14px}.admin-search input{width:100%;height:100%;border:0;outline:0;background:transparent;color:var(--theme-ink)}.admin-filters .admin-search{margin-bottom:0}.admin-filters select{height:42px;border:1px solid var(--theme-line);border-radius:9px;background:#fff;color:#1d3028;padding:0 10px}@media(max-width:760px){.admin-filters{grid-template-columns:1fr}}.profile-menu-wrap{position:relative}.profile{padding:8px 10px;border-radius:10px}.profile:hover,.profile:focus-visible,.profile.open{background:var(--theme-soft);outline:0}.profile-chevron{transition:transform .18s ease}.profile.open .profile-chevron{transform:rotate(180deg)}.profile-menu{position:absolute;right:0;top:calc(100% + 9px);width:240px;padding:8px;background:var(--theme-paper);border:1px solid var(--theme-line);border-radius:13px;box-shadow:0 18px 48px #172c2429;display:grid;z-index:20}.profile-menu-heading{display:grid;gap:3px;padding:10px 11px 12px;border-bottom:1px solid var(--theme-line);margin-bottom:5px}.profile-menu-heading span{font-size:12px;color:var(--theme-muted)}.profile-menu>a,.profile-menu>button{border:0;background:transparent;color:var(--theme-ink);text-decoration:none;display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:8px;font-weight:650;text-align:left}.profile-menu>a:hover,.profile-menu>a:focus-visible,.profile-menu>button:hover,.profile-menu>button:focus-visible{background:var(--theme-soft);outline:0}.profile-menu>button:last-child{color:#9b3827}@media(max-width:600px){.profile-chevron{display:none}.profile-menu{position:fixed;right:14px;top:64px;width:min(280px,calc(100vw - 28px))}}.planned-recipe-link{border:0;background:transparent;color:inherit;padding:3px 0;text-align:left;display:grid;gap:6px;border-radius:7px}.planned-recipe-link strong{font-size:15px}.planned-recipe-link:hover strong{text-decoration:underline}.planned-recipe-link:focus-visible{outline:2px solid var(--theme-primary);outline-offset:3px}.auth-divider{display:flex;align-items:center;gap:12px;margin:24px 0 0;color:var(--theme-muted)}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--line)}.auth-email-form .primary{width:100%;margin-top:16px}.auth-email-form input{min-width:0;width:100%}.auth-footer{display:grid;gap:12px;text-align:center}.management-panel>.management-person{padding:17px 24px;border-bottom:1px solid var(--theme-line)}.management-panel>.management-person:last-child{border-bottom:0}.management-panel>.management-person>div{flex:1;min-width:0}.management-person>.approval-badge{width:auto;height:auto;display:inline-block;border-radius:999px;flex-shrink:0;font-size:10px!important}.management-family-list>.management-family-name{display:grid;grid-template-columns:minmax(150px,1fr) 110px 110px auto;padding:22px 24px;border-bottom:1px solid var(--theme-line);gap:16px;font-size:13px}.management-family-list>.management-family-name:last-child{border-bottom:0}.management-family-list>.management-family-name>span{font-size:12px;color:var(--theme-muted)}@media(max-width:600px){.management-family-list>.management-family-name{grid-template-columns:1fr auto;gap:10px}.management-family-list>.management-family-name>input{grid-column:1/-1}.management-person>.approval-badge{font-size:8px!important}}.management-app .management-editor{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.management-editor>div{flex:1;display:grid;gap:10px;min-width:200px}.management-editor>.danger-button{width:auto;min-width:130px;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-size:12px}.management-app .management-table-wrap{border:0;border-radius:0}.management-brand{text-decoration:none;color:#fff}.management-brand-mark{display:grid!important;place-items:center;width:38px;height:38px;border-radius:10px;background:#355dcc;font-size:20px;color:#fff}.management-header h1{font:600 16px DM Sans,sans-serif;margin:4px 0}.management-header .eyebrow{font-size:10px;margin:0;color:#8290a4}.management-overview-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;margin-bottom:24px}.management-panel-heading .eyebrow{font-size:10px;color:#8290a4;margin:0 0 6px}.management-count{display:inline-block;font:600 11px DM Sans,sans-serif;color:#697d9d;background:#eef2f8;padding:3px 7px;border-radius:5px;margin-left:6px}.management-brand .management-brand-mark{flex-shrink:0}.management-app .management-bar-row{display:grid;grid-template-columns:110px minmax(0,1fr) 25px;align-items:center;gap:12px}.management-app .management-bar-row>span{font-size:13px;color:var(--theme-ink);overflow-wrap:anywhere}.management-app .management-bar-row>div{height:8px;background:#edf1f7;border-radius:10px;overflow:hidden;margin:0}.management-bar-row>div i{display:block;height:100%;background:#5679df;border-radius:10px}.management-bar-row b{font-size:12px;color:var(--theme-muted);text-align:right}.management-recent-user{display:flex;align-items:center;gap:12px;padding:17px 24px;border-bottom:1px solid var(--theme-line)}.management-recent-user:last-child{border-bottom:0}.management-avatar{flex-shrink:0;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#edf2fc;color:#4d648b;font-size:12px;font-weight:600}.management-recent-user>div{display:grid;gap:4px;min-width:0;flex:1}.management-recent-user strong{font-size:13px;font-weight:600;overflow-wrap:anywhere}.management-recent-user small{font-size:11px;color:var(--theme-muted);overflow-wrap:anywhere}.management-pending>p,.management-panel>.muted{padding:20px 24px;margin:0;font-size:13px}.management-pending-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 24px;border-bottom:1px solid var(--theme-line)}.management-pending-row>div:first-child{display:grid;gap:5px;font-size:13px}.management-pending-row small{color:var(--theme-muted);font-size:12px}.management-pending-row>div:last-child{display:flex;gap:8px}.management-search{display:flex;align-items:center;gap:9px;border:1px solid var(--theme-line);padding:0 12px;border-radius:8px;height:40px;background:#fff;color:var(--theme-muted);min-width:180px}.management-search input{width:100%;min-width:0;height:100%;border:0;outline:none;background:transparent;color:var(--theme-ink);font-size:13px}.management-family-tools{display:flex;gap:10px;align-items:center}.management-create-form{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;padding:24px;background:#f8faff;border-bottom:1px solid var(--theme-line)}.management-create-form label{display:grid;gap:8px;flex:1;font-size:12px;font-weight:600;min-width:180px}.management-create-form input,.management-create-form select,.management-family-row input{height:40px;border:1px solid var(--theme-line);padding:0 12px;border-radius:8px;background:#fff;color:var(--theme-ink);min-width:0}.management-family-row{display:grid;grid-template-columns:minmax(150px,1fr) 110px 110px auto;align-items:center;gap:16px;padding:22px 24px;border-bottom:1px solid var(--theme-line);font-size:13px}.management-family-row:last-child{border-bottom:0}.management-family-row span{color:var(--theme-muted);font-size:12px}.management-family-row strong{overflow-wrap:anywhere}.management-user-editor{padding:22px;background:#f8faff;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.management-user-editor>div{flex:1;display:grid;gap:12px;font-size:12px}.management-user-editor>.danger-button{width:auto;min-width:130px;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-size:12px}.management-app .management-table td>strong,.management-app .management-table td>small{display:block}.management-table td>small{margin-top:5px;font-size:11px;color:var(--theme-muted)}.management-app .icon-button{display:grid;place-items:center;background:#f0f4fc;border:1px solid var(--theme-line);color:#355dcc;border-radius:6px;padding:7px;cursor:pointer}.management-panel .text-button{display:inline-flex;align-items:center;gap:5px}.management-table-wrap{border:0;border-radius:0}.management-stat.accent{border-top:3px solid #d4a849}@media(max-width:900px){.management-family-tools{flex-wrap:wrap;justify-content:flex-end}.management-overview-grid{grid-template-columns:1fr}.management-family-row{grid-template-columns:1fr auto;gap:10px}.management-family-row>button{grid-column:2;grid-row:1}.management-family-row input{grid-column:1/-1}.management-panel-heading{flex-wrap:wrap}.management-search{flex:1}}@media(max-width:600px){.management-pending-row{flex-wrap:wrap}.management-pending-row>div:last-child{flex-wrap:wrap}.management-family-tools{width:100%;justify-content:flex-start}.management-recent-user{padding:16px}.management-recent-user .approval-badge{font-size:8px}.management-bars{padding:18px}.management-app .management-bar-row{grid-template-columns:90px minmax(0,1fr) 20px;gap:8px}}.management-app{--theme-bg:#f4f6fa;--theme-paper:#fff;--theme-line:#e3e8ef;--theme-ink:#17263b;--theme-muted:#68788d;--theme-primary:#355dcc;--theme-soft:#edf2ff;--theme-hover:#244aaa;--green:#355dcc;--ink:#17263b;--paper:#fff;--line:#e3e8ef;--sage:#edf2ff;min-height:100vh;background:var(--theme-bg);color:var(--theme-ink);display:grid;grid-template-columns:240px minmax(0,1fr);font-family:DM Sans,sans-serif}.management-app button,.management-app input,.management-app select{font:inherit}.management-sidebar{position:sticky;top:0;height:100vh;background:#14243a;color:#fff;display:flex;flex-direction:column;padding:30px 18px;gap:32px}.management-brand{display:flex;align-items:center;gap:12px;padding:0 12px;font-weight:700;font-size:17px}.management-brand>span,.management-brand>div{display:grid;gap:4px}.management-brand small{font-size:11px;color:#93a6bf;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.management-brand>svg{padding:9px;box-sizing:content-box;background:#ffffff0d;border:1px solid #ffffff15;border-radius:12px;color:#9bb7ff}.management-nav{display:grid;gap:8px}.management-nav a,.management-nav button{width:100%;border:0;display:flex;align-items:center;gap:12px;padding:13px 14px;background:transparent;color:#b6c5d8;text-decoration:none;border-radius:9px;text-align:left;font-weight:600;font-size:14px}.management-nav a:hover,.management-nav button:hover{color:#fff;background:#ffffff0a}.management-nav a.active,.management-nav button.active{color:#fff;background:#355dcc}.management-nav .management-nav-count{margin-left:auto;min-width:23px;padding:2px 6px;border-radius:5px;background:#ffffff18;text-align:center;font-size:11px}.management-back{margin-top:auto;color:#b6c5d8;display:flex;align-items:center;gap:10px;text-decoration:none;padding:14px;border-top:1px solid #ffffff12;font-size:13px}.management-back:hover{color:#fff}.management-content{min-width:0}.management-header{height:80px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 38px;border-bottom:1px solid var(--theme-line);background:#fff}.management-header>div:first-child{font-size:14px;font-weight:600}.management-header-actions{display:flex;align-items:center;gap:12px}.management-header-actions select{border:1px solid var(--theme-line);padding:8px 10px;border-radius:8px;color:var(--theme-ink);background:#fff}.management-header-actions button{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:var(--theme-muted);font-size:13px}.management-header-actions button:hover{background:var(--theme-bg);color:var(--theme-ink)}.management-main{padding:34px 38px 60px;max-width:1500px;margin:0 auto}.management-page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px}.management-page-heading h1{font:700 30px/1.2 DM Sans,sans-serif;letter-spacing:-.04em;margin:0 0 8px}.management-page-heading p{margin:0;color:var(--theme-muted);font-size:14px;line-height:1.6}.management-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px}.management-stat{position:relative;background:#fff;border:1px solid var(--theme-line);border-radius:12px;padding:22px;display:grid;gap:12px}.management-stat>span{color:var(--theme-muted);font-size:13px;font-weight:500}.management-stat>strong{font-size:32px;line-height:1;letter-spacing:-.04em;font-weight:700}.management-stat>svg{position:absolute;top:20px;right:20px;color:#7184aa;width:20px;height:20px}.management-stat small{color:var(--theme-muted);font-size:12px}.management-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;margin-bottom:24px}.management-panel{background:#fff;border:1px solid var(--theme-line);border-radius:12px;overflow:hidden}.management-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:21px 24px;border-bottom:1px solid var(--theme-line)}.management-panel-heading h2{margin:0;font:600 16px DM Sans,sans-serif}.management-panel-heading a,.management-panel-heading button{border:0;background:transparent;padding:0;color:var(--theme-primary);font-size:12px;font-weight:600;text-decoration:none}.management-bars{padding:24px;display:grid;gap:22px}.management-bar-row>div:first-child,.management-bar-row>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;gap:12px;font-size:13px}.management-bar-row strong{font-weight:600}.management-bar-row span{color:var(--theme-muted);font-size:12px}.management-bar-track{height:8px;background:#edf1f7;border-radius:10px;overflow:hidden}.management-bar-track i,.management-bar-track>span{display:block;height:100%;background:#5679df;border-radius:10px;min-width:0}.management-activity{padding:0 24px}.management-activity-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 0;border-bottom:1px solid var(--theme-line)}.management-activity-row:last-child{border-bottom:0}.management-activity-row>div{display:grid;gap:5px;font-size:13px}.management-activity-row small,.management-activity-row>span{font-size:12px;color:var(--theme-muted)}.management-activity-row button{border:0;color:var(--theme-primary);background:transparent;font-weight:600;font-size:12px}.management-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.management-toolbar label{display:flex;align-items:center;gap:9px;flex:1;min-width:220px;background:#fff;border:1px solid var(--theme-line);border-radius:8px;padding:0 12px;color:var(--theme-muted);height:44px}.management-toolbar input{border:0;background:transparent;outline:0;width:100%;min-width:0;height:100%;color:var(--theme-ink)}.management-toolbar select{height:44px;border:1px solid var(--theme-line);border-radius:8px;background:#fff;color:var(--theme-ink);padding:0 12px;font-size:13px}.management-table-wrap{border:1px solid var(--theme-line);border-radius:12px;overflow:auto;background:#fff}.management-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.management-table th{padding:15px 20px;background:#f9fafc;border-bottom:1px solid var(--theme-line);color:#758299;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap}.management-table td{padding:18px 20px;border-bottom:1px solid var(--theme-line);vertical-align:middle}.management-table tbody>tr:last-child>td{border-bottom:0}.management-table tbody>tr:hover:not(.management-editor-row){background:#fafbfe}.management-person{display:flex;align-items:center;gap:12px;min-width:170px}.management-person>span{width:36px;height:36px;flex-shrink:0;background:#eef2fa;color:#4d648b;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700}.management-person>div{display:grid;gap:5px;min-width:0}.management-person strong{font-weight:600;overflow-wrap:anywhere}.management-person small{font-size:12px;color:var(--theme-muted);overflow-wrap:anywhere}.management-row-actions{display:flex;align-items:center;gap:8px}.management-row-actions button{white-space:nowrap;font-size:12px;min-height:34px}.management-row-actions .danger-button{width:34px;height:34px}.management-app .approval-badge{font-size:10px;display:inline-block;white-space:nowrap}.management-editor{padding:20px;background:#f8faff;display:grid;gap:16px}.management-editor .family-assignment{flex-wrap:wrap}.management-editor .family-assignment select{font-size:13px;max-width:100%;background:#fff;border-color:var(--theme-line)}.management-editor-row td{padding:0!important}.management-editor-actions{display:flex;gap:10px;flex-wrap:wrap}.management-editor-actions button{font-size:13px}.management-empty{padding:38px 24px;text-align:center;color:var(--theme-muted);font-size:13px;line-height:1.7}.management-family-form{padding:24px;display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:end;border:1px solid var(--theme-line);background:#fff;border-radius:12px;margin-bottom:22px}.management-family-form label{display:grid;gap:8px;font-size:13px;font-weight:600}.management-family-form input,.management-family-form select,.management-family-name input{height:44px;border:1px solid var(--theme-line);border-radius:8px;padding:0 12px;background:#fff;color:var(--theme-ink);min-width:0;width:100%}.management-family-name{display:flex;gap:8px;align-items:center}.management-family-name button{font-size:12px;white-space:nowrap}.management-app .primary,.management-app .secondary{font-size:13px;min-height:40px}.management-app .secondary{background:#fff;border-color:#d6dfed;color:#345582}.management-app .secondary:hover{background:#f1f5fc}.management-app .primary:disabled,.management-app .secondary:disabled{opacity:.5;cursor:not-allowed}.management-app .page-heading h1{font:700 30px DM Sans,sans-serif;letter-spacing:-.04em}.management-app .admin-card{margin-bottom:20px;padding:24px}.management-app .admin-name-form{margin-top:0}.management-app .form-message{margin:0 0 20px;color:#35527c;background:#edf3ff;border:1px solid #dae5fb;font-size:13px;line-height:1.6}.management-app :focus-visible{outline:3px solid #b4c7ff;outline-offset:3px}.management-app .admin-details-grid{margin:0;gap:26px}.management-app .admin-details-grid dt{font-size:12px}.management-app .admin-details-grid dd{font-size:14px;font-weight:500}@media(max-width:1100px){.management-app{grid-template-columns:200px minmax(0,1fr)}.management-sidebar{padding:24px 12px}.management-header{padding:0 24px}.management-main{padding:28px 24px 50px}.management-stat{padding:18px}.management-stat>svg{right:16px;top:16px}.management-table td,.management-table th{padding:15px}.management-family-form{grid-template-columns:1fr 1fr}.management-family-form>button{grid-column:1/-1;justify-self:start}}@media(max-width:760px){.management-app{display:block}.management-sidebar{position:relative;height:auto;padding:18px 20px;gap:18px}.management-brand{padding:0}.management-nav{display:flex;gap:8px}.management-nav a,.management-nav button{justify-content:center;padding:11px 12px;flex:1;width:auto;font-size:13px;gap:7px}.management-nav svg{width:17px;height:17px}.management-back{margin-top:0;border-top:0;padding:0;font-size:12px}.management-header{height:auto;min-height:65px;padding:14px 20px;flex-wrap:wrap}.management-header-actions{gap:6px}.management-header-actions select{max-width:100px;font-size:12px}.management-main{padding:26px 20px 40px}.management-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.management-stat{padding:18px}.management-grid{grid-template-columns:1fr;gap:18px}.management-page-heading{align-items:flex-start;gap:14px}.management-page-heading h1{font-size:26px}.management-toolbar{gap:8px}.management-toolbar label{flex-basis:100%}.management-toolbar select{flex:1;min-width:0}.management-table{min-width:720px}.management-family-form{grid-template-columns:1fr}.management-family-form>button{grid-column:auto}.management-app .page-heading h1{font-size:26px}}.family-admin-list>.family-admin-row{align-items:center;gap:10px;flex-wrap:wrap}.family-admin-row strong{overflow-wrap:anywhere}.admin-account>.admin-recipe-count{grid-column:1/-1}.admin-user>div:last-child{flex-wrap:wrap}.admin-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px}.admin-overview>div{display:grid;gap:8px;padding:20px;border:1px solid var(--theme-line);border-radius:14px;background:var(--theme-paper)}.admin-overview strong{font:600 30px Fraunces}.admin-overview span{color:var(--theme-muted);font-size:13px}.admin-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-details-grid>div{display:grid;gap:6px;min-width:0}.admin-details-grid dt{color:var(--theme-muted);font-size:13px}.admin-details-grid dd{margin:0;overflow-wrap:anywhere}.admin-name-form{display:grid;gap:12px;max-width:480px;margin-top:24px}.admin-name-form label{display:grid;gap:8px;font-size:13px;font-weight:700}.admin-name-form input,.admin-family-rename input{height:44px;padding:0 12px;border:1px solid var(--theme-line);border-radius:9px;background:var(--theme-paper);color:var(--theme-ink);min-width:0}.admin-name-form button{justify-self:start}.admin-family-rename{display:flex;gap:8px;align-items:center}.admin-family-rename input{width:100%;max-width:240px}.admin-account-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-account .admin-account-actions{grid-column:1/-1}.admin-recipe-count{font-size:13px;color:var(--theme-muted)}@media(max-width:600px){.admin-overview{gap:8px}.admin-overview>div{padding:12px}.admin-details-grid{grid-template-columns:1fr}.admin-family-rename{flex-wrap:wrap}.admin-family-rename input{max-width:none}}
