@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-canvas:#f8f6f0;--color-surface:#fffefb;--color-surface-tint:#eef4f0;--color-surface-tint-strong:#e5eee9;--color-text:#1f2723;--color-text-strong:#263b35;--color-muted-strong:#52615b;--color-muted:#5f6c66;--color-muted-soft:#68766f;--color-muted-faint:#7b8882;--color-icon-muted:#8c9791;--color-brand:#195c4d;--color-brand-deep:#174f42;--color-brand-strong:#123f35;--color-brand-ink:#315049;--color-accent:#b53b24;--color-accent-strong:#a93922;--color-accent-bright:#c7522a;--color-accent-deep:#8a2e1d;--color-accent-pressed:#722416;--color-danger:#9a3020;--color-danger-border:#d8a69c;--color-danger-border-strong:#a95b4b;--color-danger-surface:#f8e4df;--color-danger-surface-soft:#fff3ef;--color-warning-strong:#69440f;--color-warning:#9f6b0b;--color-warning-accent:#d49a21;--color-warning-bright:#e3a729;--color-warning-border:#dec276;--color-warning-surface:#fff4dd;--color-info:#1f6f8b;--color-info-strong:#175468;--color-info-border:#8fb2c9;--color-info-surface:#e6f2f5;--color-success-border:#8ab8a6;--color-success-surface:#e4f3ec;--color-border-subtle:#dce3df;--color-border-soft:#d2ddd9;--color-border:#cbd6d0;--color-border-strong:#b9c4bf;--color-border-heavy:#9eaaa4;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--transition-control:.14s ease-out;--radius-control:.375rem;--radius-card:.5rem;--control-height:2.75rem;--content-width:72rem;--content-width-wide:90rem;--content-width-reading:48rem;--shadow-dialog:0 1rem 3rem #123f3533;color:var(--color-text);background:var(--color-canvas);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}.page-shell{box-sizing:border-box;width:min(100%, var(--content-width));padding:var(--space-5);margin-inline:auto}.page-shell--wide{width:min(100%, var(--content-width-wide))}.page-header{justify-content:space-between;gap:var(--space-5);align-items:end;margin-block-end:var(--space-6);display:flex}.page-header__copy{gap:var(--space-2);min-width:0;display:grid}.page-header__copy>*{margin:0}.page-header h1{overflow-wrap:anywhere;letter-spacing:0;white-space:normal;width:fit-content;min-width:0;max-width:100%;font-size:2.5rem;line-height:1.08}:is(h1,h2,h3)[tabindex="-1"]:focus{outline:none}.page-header__eyebrow,.page-header__meta{color:var(--color-muted);font-weight:750}.page-header__eyebrow{text-transform:uppercase;font-size:.85rem}.page-header__actions,.action-group,.dialog-actions{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.page-header__actions{justify-content:flex-end}.page-section{padding-block:var(--space-5);border-block-start:1px solid var(--color-border)}.icon-action{width:var(--control-height);min-width:var(--control-height);height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-brand-strong);place-items:center;display:inline-grid}.page-state{justify-content:space-between;gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:var(--space-5);align-items:center;display:flex}.page-state__copy{gap:var(--space-1);display:grid}.page-state__description{justify-items:start;gap:var(--space-1);color:var(--color-muted);display:grid}.page-state--error{border-color:var(--color-danger)}.page-state--info{border-color:var(--color-info)}.status-pill{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-canvas);width:fit-content;max-width:100%;min-height:1.75rem;padding:var(--space-1) var(--space-3);color:var(--color-text);gap:var(--space-1);align-items:center;font-size:.875rem;font-weight:750;line-height:1.2;display:inline-flex}.status-pill__icon{display:inline-flex}.status-pill__icon>svg{width:1em;height:1em}.status-pill--success{border-color:var(--color-success-border);background:var(--color-success-surface);color:var(--color-brand-deep)}.status-pill--warning{border-color:var(--color-warning-border);background:var(--color-warning-surface);color:var(--color-warning-strong)}.status-pill--danger{border-color:var(--color-danger-border);background:var(--color-danger-surface);color:var(--color-accent-deep)}.status-pill--info{border-color:var(--color-info-border);background:var(--color-info-surface);color:var(--color-info-strong)}.dialog-frame{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);width:min(100vw - 2rem,36rem);max-height:calc(100vh - 2rem);box-shadow:var(--shadow-dialog);padding:var(--space-5);gap:var(--space-5);display:grid;overflow:auto}.dialog-frame>.dialog-actions{flex-wrap:wrap;display:flex}.dialog-frame__header{gap:var(--space-2);display:grid}.dialog-frame__header>*{margin:0}.dialog-frame :is(button,a,input,select,textarea),.page-header__actions :is(button,a),.action-group :is(button,a),.page-state__action :is(button,a){min-height:var(--control-height)}.icon-action:focus-visible,.dialog-frame :is(button,a,input,select,textarea):focus-visible,.page-header__actions :is(button,a):focus-visible,.action-group :is(button,a):focus-visible,.page-state__action :is(button,a):focus-visible{outline:3px solid var(--color-info);outline-offset:2px}@media (width<=42rem){.page-shell{padding:var(--space-4)}.page-header h1{font-size:2rem}.page-header,.page-state{flex-direction:column;align-items:stretch}.page-header__actions,.action-group,.dialog-frame>.dialog-actions{grid-template-columns:1fr;display:grid}.page-header__actions>*,.action-group>*,.dialog-frame>.dialog-actions>*{width:100%}}.app-screen{min-width:0}.meal-planner{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 21rem;align-items:start;width:min(100%,90rem);min-width:0;margin:0 auto;display:grid}.meal-planner:not(:has(>.meal-slot-editor)){grid-template-columns:minmax(0,1fr)}.meal-planner>:not(.planner-workspace,.meal-slot-editor){grid-column:1/-1}.meal-planner-header{gap:var(--space-4);grid-template-columns:minmax(0,1fr);align-items:start;margin-block-end:0;display:grid}.meal-planner-header .page-header__copy h1,.meal-planner-header p,.meal-slot-editor h2,.meal-slot-editor p,.planner-live p{margin:0}.meal-planner-header .page-header__copy h1{color:var(--color-brand-strong);font-size:2rem;line-height:1.1}.meal-planner-header .page-header__actions{width:100%;display:block}.meal-plan-header-controls{gap:var(--space-3) var(--space-4);grid-template-columns:minmax(11rem,16rem) minmax(0,1fr);align-items:end;display:grid}.meal-plan-header-controls .week-controls{justify-content:flex-end}.meal-plan-week{color:var(--color-muted);margin-top:.35rem;font-weight:750}.meal-plan-heading{gap:.3rem;min-width:0;display:grid}.recurrence-status-control{flex-wrap:wrap;align-items:center;gap:.45rem;min-width:0;display:flex}.recurrence-status-control .status-pill{border-radius:var(--radius-control);padding:.22rem .65rem;font-size:.78rem;font-weight:850}.recurrence-active{background:var(--color-surface-tint-strong);color:var(--color-brand-deep)}.recurrence-stopped{background:var(--color-surface-tint);color:var(--color-muted-strong)}.recurrence-cleanup{background:var(--color-warning-surface);color:var(--color-warning-strong)}.recurrence-attention{background:var(--color-danger-surface);color:var(--color-accent-deep)}.recurrence-details-button{min-height:2rem;color:var(--color-brand);padding:.15rem var(--space-1);font:inherit;cursor:pointer;background:0 0;border:0;font-size:.82rem;font-weight:800;text-decoration:underline}.shopping-generation-dialog{width:min(100vw - 2rem,48rem)}.shopping-generation-dialog fieldset{border:0;min-width:0;margin:0;padding:0}.saved-shopping-lists{border-block:1px solid var(--color-border);gap:var(--space-3);padding-block:var(--space-4);display:grid}.saved-shopping-lists h2,.saved-shopping-lists p,.saved-shopping-lists ul{margin:0}.saved-shopping-lists h2{color:var(--color-brand-strong);font-size:1.2rem}.saved-shopping-lists ul{gap:var(--space-2);padding:0;list-style:none;display:grid}.saved-shopping-lists li,.saved-shopping-lists li>div{align-items:center;gap:.6rem;min-width:0;display:flex}.saved-shopping-lists li{justify-content:space-between}.saved-shopping-lists strong{overflow-wrap:anywhere}.saved-shopping-lists-empty.page-state,.shopping-list-empty.page-state{background:0 0;border:0;border-radius:0;align-items:start;padding:0}@media (width<=45rem){.saved-shopping-lists li{display:grid}.saved-shopping-lists li>div{flex-direction:column;align-items:flex-start}}.admin-panel{width:100%;min-width:0;margin-inline:auto}.admin-panel .page-header{margin-block-end:var(--space-5)}.admin-tabs{border-bottom:1px solid var(--color-border-strong);gap:.15rem;max-width:100%;display:flex;overflow-x:auto}.admin-tabs button{min-height:var(--control-height);padding:var(--space-3) var(--space-4) .6rem;color:var(--color-muted-strong);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:.25rem solid #0000;flex:none;font-weight:800}.admin-tabs button[aria-selected=true]{border-bottom-color:var(--color-brand);color:var(--color-brand-strong)}.admin-tabs button:focus-visible,.admin-panel input:focus-visible,.admin-panel textarea:focus-visible,.admin-panel button:focus-visible,.admin-role-dialog button:focus-visible,.admin-role-dialog textarea:focus-visible{outline:3px solid var(--color-info);outline-offset:2px}@media (width<=40rem){.admin-tabs{grid-template-columns:repeat(auto-fit,minmax(min(100%,7rem),1fr));gap:.2rem;display:grid;overflow-x:visible}.admin-tabs button{white-space:normal;min-width:0;padding:.65rem .45rem .55rem}}.admin-tab-panel{min-width:0}.admin-section{min-width:0;padding-block:var(--space-5)}.admin-section+.admin-section,.admin-user-result,.admin-audit-list>li{border-top:1px solid var(--color-border-soft)}.admin-section h2,.admin-section p{margin-top:0}.contact-admin-filters{gap:var(--space-2);flex-wrap:wrap;margin:1.25rem 0;display:flex}.contact-admin-filter{min-height:var(--control-height);padding:.55rem var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:700}.contact-admin-filter[aria-pressed=true]{border-color:var(--color-brand);background:var(--color-surface-tint);color:var(--color-brand-strong)}.contact-admin-notice,.contact-admin-error{margin:0 0 var(--space-4)}.contact-admin-error .field-error{margin-bottom:var(--space-3)}.contact-admin-workspace{grid-template-columns:minmax(17rem,.9fr) minmax(24rem,1.4fr);align-items:start;gap:1.25rem;display:grid}.contact-admin-list-region{min-width:0}.contact-admin-list{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);margin:0;padding:0;list-style:none;overflow:hidden}.contact-admin-list li+li{border-top:1px solid var(--color-border-soft)}.contact-admin-row{gap:var(--space-1);width:100%;padding:.9rem var(--space-4);background:var(--color-surface);color:var(--color-text);text-align:left;border:0;border-radius:0;display:grid}.contact-admin-row:hover,.contact-admin-row[aria-current=true]{background:var(--color-surface-tint)}.contact-admin-row:focus-visible{z-index:1;outline:3px solid var(--color-brand);outline-offset:-3px;position:relative}.contact-admin-row-heading,.contact-admin-detail-heading{justify-content:space-between;gap:var(--space-3);align-items:flex-start;display:flex}.contact-admin-row-heading strong,.contact-admin-email,.contact-admin-preview,.contact-admin-detail a,.contact-admin-message{overflow-wrap:anywhere}.contact-admin-email,.contact-admin-row time,.contact-admin-preview,.contact-admin-detail>time{color:var(--color-muted)}.contact-admin-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.contact-admin-load-more{width:100%;margin-top:var(--space-3)}.contact-admin-detail{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);min-width:0;padding:1.25rem}.contact-admin-detail h3{margin:0 0 var(--space-1)}.contact-admin-message{white-space:pre-wrap;margin:1.25rem 0}.contact-admin-status-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.contact-admin-status-actions button{width:auto}.status-pill.contact-new{background:var(--color-warning-surface);color:var(--color-warning-strong)}.status-pill.contact-in_progress{background:var(--color-info-surface);color:var(--color-info-strong)}.status-pill.contact-resolved{background:var(--color-surface-tint-strong);color:var(--color-brand)}@media (width<=52rem){.contact-admin-workspace{grid-template-columns:minmax(0,1fr)}}@media (width<=40rem){.contact-admin-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contact-admin-detail{padding:var(--space-4)}.contact-admin-status-actions{grid-template-columns:minmax(0,1fr);display:grid}.contact-admin-status-actions button{width:100%}}.admin-section-heading{gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:baseline;display:flex}.admin-section-heading>span,.admin-section>p,.admin-empty{color:var(--color-muted)}.tutorial-admin-filters{gap:var(--space-3);margin-block:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.tutorial-admin-filters label,.tutorial-editor-grid label,.tutorial-catalog-reason,.tutorial-editor .admin-reason-field{min-width:0;color:var(--color-text-strong);gap:.35rem;font-weight:800;display:grid}.tutorial-admin-filters input,.tutorial-admin-filters select,.tutorial-editor input,.tutorial-editor select,.tutorial-editor textarea,.tutorial-catalog-reason input{box-sizing:border-box;border:1px solid var(--color-border-heavy);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:.35rem;padding:.65rem}.tutorial-catalog-reason{width:min(100%,36rem);margin-block:var(--space-4)}.tutorial-admin-list,.tutorial-coverage-list{border-top:1px solid var(--color-border-soft);margin:0;padding:0;list-style:none}.tutorial-admin-list>li,.tutorial-coverage-list>li{border-bottom:1px solid var(--color-border-soft);padding-block:var(--space-3)}.tutorial-admin-row{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;display:grid}.tutorial-admin-row>div:first-child{gap:.15rem;display:grid}.tutorial-admin-row>div:first-child span{color:var(--color-muted)}.tutorial-admin-row strong,.tutorial-admin-row span{overflow-wrap:anywhere}.tutorial-admin-actions{flex-wrap:wrap;gap:.35rem;display:flex}.tutorial-admin-actions button{border:1px solid var(--color-border-heavy);background:var(--color-surface);width:2.5rem;height:2.5rem;color:var(--color-brand-deep);border-radius:.35rem;place-items:center;display:inline-grid}.tutorial-admin-actions .tutorial-review-enable-action{width:auto;padding-inline:.8rem;font-weight:800}.tutorial-admin-actions svg,.tutorial-administration .primary-action svg{width:1.15rem;height:1.15rem}.tutorial-admin-actions button:disabled{opacity:.38}.tutorial-admin-tabs{margin-top:var(--space-4)}.tutorial-tag-admin-grid{min-width:0}.tutorial-tag-admin-grid,.tutorial-suggestion-decision-panel{gap:var(--space-3);margin-block:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));align-items:end;display:grid}.tutorial-tag-admin-grid label,.tutorial-tag-merge-controls label,.tutorial-suggestion-decision-panel label{min-width:0;color:var(--color-text-strong);gap:.35rem;font-weight:800;display:grid}.tutorial-tag-admin-grid input,.tutorial-tag-admin-grid select,.tutorial-tag-admin-grid textarea,.tutorial-tag-merge-controls select,.tutorial-suggestion-decision-panel input,.tutorial-suggestion-decision-panel select,.tutorial-suggestion-decision-panel textarea{box-sizing:border-box;border:1px solid var(--color-border-heavy);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:.35rem;padding:.65rem}.tutorial-tag-admin-grid .admin-reason-field,.tutorial-suggestion-decision-panel .admin-reason-field{grid-column:1/-1}.tutorial-tag-admin-grid textarea,.tutorial-suggestion-decision-panel textarea{resize:vertical;min-height:5rem}.tutorial-tag-form-actions,.tutorial-tag-actions,.tutorial-tag-merge-controls,.tutorial-suggestion-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.tutorial-tag-table-wrapper{border:1px solid var(--color-border-soft);border-radius:.35rem;max-width:100%;overflow-x:auto}.tutorial-tag-table{border-collapse:collapse;background:var(--color-surface);width:100%;min-width:0}.tutorial-tag-table th,.tutorial-tag-table td{border-bottom:1px solid var(--color-border-soft);text-align:left;vertical-align:top;padding:.65rem}.tutorial-tag-table th{background:var(--color-canvas);color:var(--color-text-strong)}.tutorial-tag-table td{overflow-wrap:anywhere}.tutorial-tag-table .status-pill{white-space:nowrap}.tutorial-tag-action-dialog{z-index:40;gap:var(--space-3);border:1px solid var(--color-border-heavy);border-radius:var(--radius-card);background:var(--color-surface);width:min(100vw - 2rem,36rem);max-height:calc(100vh - 2rem);padding:var(--space-4);display:grid;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #12231d6b,0 1rem 2rem #12231d33}.tutorial-tag-action-dialog h3,.tutorial-tag-action-dialog p{margin:0}.tutorial-tag-action-dialog .admin-reason-field{color:var(--color-text-strong);gap:.35rem;font-weight:800;display:grid}.tutorial-tag-action-dialog textarea,.tutorial-tag-picker-search input{box-sizing:border-box;border:1px solid var(--color-border-heavy);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:.35rem;padding:.65rem}.tutorial-tag-action-dialog textarea{resize:vertical;min-height:5rem}.tutorial-tag-dialog-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.tutorial-tag-picker{border:1px solid var(--color-border-soft);min-width:0;padding:var(--space-3);border-radius:.35rem;gap:.65rem;margin:0;display:grid}.tutorial-tag-picker legend,.tutorial-tag-picker-search{color:var(--color-text-strong);font-weight:800}.tutorial-tag-picker-search{gap:.35rem;display:grid}.tutorial-tag-picker-results{border-block:1px solid var(--color-border-soft);gap:0;max-height:14rem;display:grid;overflow-y:auto}.tutorial-tag-picker-results label{border-bottom:1px solid var(--color-surface-tint-strong);padding:.55rem var(--space-1);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem;display:grid}.tutorial-tag-picker-results label:last-child{border-bottom:0}.tutorial-tag-picker-results input{width:1.15rem;height:1.15rem;margin:0}@media (width<=48rem){.tutorial-tag-table-wrapper{border:0;overflow-x:visible}.tutorial-tag-table{background:0 0;display:block}.tutorial-tag-table thead{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tutorial-tag-table tbody{gap:var(--space-3);display:grid}.tutorial-tag-table tr{border:1px solid var(--color-border-soft);background:var(--color-surface);border-radius:.35rem;gap:.45rem;padding:.65rem;display:grid}.tutorial-tag-table td{gap:var(--space-2);border-bottom:0;grid-template-columns:minmax(6rem,.4fr) minmax(0,1fr);padding:.15rem 0;display:grid}.tutorial-tag-table td:before{color:var(--color-muted);content:attr(data-label);font-weight:800}.tutorial-tag-table td[data-label=Actions]{grid-template-columns:1fr}.tutorial-tag-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tutorial-tag-dialog-actions{grid-template-columns:1fr;display:grid}.tutorial-tag-dialog-actions>button{width:100%}}.tutorial-suggestion-groups{border-top:1px solid var(--color-border-soft);margin:0;padding:0;list-style:none}.tutorial-suggestion-groups>li{border-bottom:1px solid var(--color-border-soft);padding-block:var(--space-3)}.tutorial-suggestion-group-row{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;display:grid}.tutorial-suggestion-group-row>div:first-child{gap:.15rem;display:grid}.tutorial-suggestion-group-row span,.tutorial-suggestion-example dd{color:var(--color-muted)}.tutorial-suggestion-examples{gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-soft);background:var(--color-surface);border-radius:.35rem;display:grid}.tutorial-suggestion-example{gap:var(--space-2);border-bottom:1px solid var(--color-border-soft);padding-bottom:var(--space-3);display:grid}.tutorial-suggestion-example label{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.6rem;font-weight:800;display:grid}.tutorial-suggestion-example dl{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));margin:0;display:grid}.tutorial-suggestion-example dt,.tutorial-suggestion-example dd{margin:0}.tutorial-suggestion-example dt{font-weight:800}.tutorial-coverage-list>li{justify-content:space-between;gap:var(--space-4);display:flex}.tutorial-editor{border-top:1px solid var(--color-border-strong)}.tutorial-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.tutorial-guidance-field{grid-column:1/-1}.tutorial-editor textarea{resize:vertical;min-height:6rem}.tutorial-admin-preview{margin-block:var(--space-4)}.tutorial-admin-preview iframe{aspect-ratio:16/9;border:1px solid var(--color-border-heavy);width:min(100%,36rem)}.tutorial-review-checks{gap:var(--space-4);margin-block:var(--space-4);border:0;flex-wrap:wrap;padding:0;display:flex}.tutorial-review-checks legend{margin-bottom:var(--space-2);color:var(--color-text-strong);font-weight:800}.tutorial-review-checks label{gap:var(--space-2);align-items:center;font-weight:700;display:flex}.tutorial-review-checks input{width:1.25rem;height:1.25rem}.tutorial-editor-actions{margin-top:var(--space-4);flex-wrap:wrap;gap:.65rem;display:flex}.tutorial-metrics{gap:.65rem var(--space-4);color:var(--color-muted-strong);flex-wrap:wrap;align-items:center;margin-top:.65rem;font-size:.9rem;display:flex}.tutorial-metrics dl{gap:var(--space-3);flex-wrap:wrap;margin:0;display:flex}.tutorial-metrics dl>div{gap:.3rem;display:flex}.tutorial-metrics dt{font-weight:800}.tutorial-metrics dd{margin:0}.tutorial-metrics ul{flex-wrap:wrap;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.monetization-administration{min-width:0}.monetization-metrics{gap:var(--space-5);margin-block:var(--space-4) 1.25rem;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.monetization-metrics h3,.monetization-table-wrap caption{color:var(--color-text-strong);text-align:left;margin:0 0 .55rem;font-size:1rem;font-weight:850}.monetization-metrics dl,.reported-ad-list dl{gap:.4rem;margin:0;display:grid}.monetization-metrics dl>div,.reported-ad-list dl>div{gap:var(--space-4);grid-template-columns:minmax(8rem,1fr) auto;display:grid}.monetization-metrics dt,.reported-ad-list dt{color:var(--color-muted-soft);font-weight:700}.monetization-metrics dd,.reported-ad-list dd{overflow-wrap:anywhere;margin:0;font-weight:850}.monetization-table-wrap{max-width:100%;margin-block:var(--space-4);overflow-x:auto}.monetization-table-wrap table{border-collapse:collapse;width:100%;min-width:35rem}.monetization-table-wrap th,.monetization-table-wrap td{border-bottom:1px solid var(--color-border-soft);padding:.55rem var(--space-3);text-align:left}.monetization-table-wrap thead th{color:var(--color-muted-strong);font-size:.88rem}.monetization-settings-form,.monetization-settings-form fieldset{gap:var(--space-3);display:grid}.monetization-settings-form{max-width:48rem}.monetization-settings-form fieldset{border:0;border-bottom:1px solid var(--color-border-soft);padding:0 0 var(--space-4);margin:0}.monetization-settings-form legend{color:var(--color-text-strong);margin-bottom:.45rem;padding:0;font-weight:850}.admin-setting-note{color:var(--color-muted-soft);margin:.15rem 0 0;font-size:.9rem}.admin-toggle{gap:var(--space-3);min-width:0;color:var(--color-text-strong);cursor:pointer;align-items:center;font-weight:750;display:flex}.admin-panel .admin-toggle input{border:1px solid var(--color-icon-muted);appearance:none;background:var(--color-surface-tint-strong);cursor:pointer;border-radius:999px;flex:none;width:2.8rem;height:1.5rem;margin:0}.admin-toggle input:before{background:var(--color-surface);content:"";border-radius:50%;width:1.05rem;height:1.05rem;margin:.16rem;transition:transform .12s;display:block;box-shadow:0 1px 2px #142d2547}.admin-toggle input:checked{border-color:var(--color-brand);background:var(--color-brand)}.admin-toggle input:checked:before{transform:translate(1.25rem)}.admin-toggle input:disabled{opacity:.58;cursor:not-allowed}.reported-ad-list{margin:0 0 var(--space-4);padding:0;list-style:none}.reported-ad-list>li{gap:var(--space-2);border-top:1px solid var(--color-border-soft);padding-block:.9rem;display:grid}.reported-ad-list>li>div{gap:var(--space-2) var(--space-4);flex-wrap:wrap;justify-content:space-between;display:flex}.reported-ad-list time,.reported-ad-list>li>p:last-child{color:var(--color-muted-soft);font-size:.9rem}.reported-ad-list>li>p{margin:0}.admin-settings-form,.admin-user-actions,.admin-trust-form,.admin-role-dialog form,.admin-number-grid{gap:var(--space-4);display:grid}.admin-number-row{gap:var(--space-4);grid-template-columns:minmax(9rem,10rem) minmax(0,1fr);align-items:center;display:grid}.admin-number-row label,.admin-reason-field,.admin-user-search label,.admin-trust-form label,.admin-role-dialog label{min-width:0;color:var(--color-text-strong);gap:.35rem;font-weight:800;display:grid}.admin-panel input,.admin-panel textarea,.admin-role-dialog textarea{box-sizing:border-box;border:1px solid var(--color-border-heavy);background:var(--color-surface);width:100%;min-width:0;padding:.7rem var(--space-3);color:var(--color-text);font:inherit;border-radius:.35rem}.admin-panel textarea,.admin-role-dialog textarea{resize:vertical;min-height:6rem}.admin-user-search{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:end;max-width:48rem;display:grid}.admin-user-result{gap:var(--space-5);grid-template-columns:minmax(15rem,.75fr) minmax(18rem,1.25fr);margin-top:1.25rem;padding-top:1.25rem;display:grid}.admin-user-summary>div{overflow-wrap:anywhere;display:grid}.admin-user-summary>div span{color:var(--color-muted)}.admin-user-summary dl{margin-block:var(--space-4) 0;gap:.4rem;display:grid}.admin-user-summary dl>div{grid-template-columns:4rem minmax(0,1fr);display:grid}.admin-user-summary dt{color:var(--color-muted-soft);font-weight:700}.admin-user-summary dd{margin:0;font-weight:800}.admin-audit-list{margin:var(--space-4) 0;padding:0;list-style:none}.admin-audit-list>li{gap:.55rem;min-width:0;padding-block:.85rem;display:grid}.admin-audit-heading{gap:var(--space-2) var(--space-4);flex-wrap:wrap;justify-content:space-between;min-width:0;display:flex}.admin-audit-list>li>p{overflow-wrap:anywhere;margin:0}.admin-audit-list time{color:var(--color-muted-soft);font-size:.9rem}.admin-audit-details{gap:.35rem var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;margin:0;display:grid}.admin-audit-details>div{gap:var(--space-2);grid-template-columns:minmax(6.5rem,auto) minmax(0,1fr);min-width:0;display:grid}.admin-audit-details dt,.admin-audit-detail-label{color:var(--color-muted-soft);font-weight:750}.admin-audit-details dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:700}.admin-audit-settings{min-width:0}.admin-audit-settings ul{gap:var(--space-1) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:.35rem 0 0;padding:0;list-style:none;display:grid}.admin-audit-settings li{overflow-wrap:anywhere;min-width:0}.admin-audit-detail-label{margin-right:var(--space-2)}.admin-role-dialog{width:min(100% - 2rem,34rem)}.moderation-workspace,.moderation-case{min-width:0}.moderation-workspace .admin-section-heading>div p,.moderation-case-heading p{color:var(--color-muted-soft);margin:0}.compact-action{width:auto;min-height:2.5rem;padding:.45rem var(--space-3)}.moderation-queue-tabs{max-width:100%;margin-block:var(--space-4);border-bottom:1px solid var(--color-border);display:flex;overflow-x:auto}.moderation-queue-tabs button{color:var(--color-muted-strong);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:.2rem solid #0000;flex:none;padding:.65rem .85rem;font-weight:800}.moderation-queue-tabs button[aria-selected=true]{border-bottom-color:var(--color-brand);color:var(--color-brand-strong)}.moderation-case-list,.moderation-report-history ol{margin:0;padding:0;list-style:none}.moderation-case-list>li{border-top:1px solid var(--color-border-soft)}.moderation-case-list>li:last-child{border-bottom:1px solid var(--color-border-soft)}.moderation-case-row{gap:var(--space-3);width:100%;min-width:0;color:var(--color-text-strong);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:.8rem .3rem;display:grid}.moderation-case-row:hover{background:var(--color-surface-tint)}.moderation-case-pills,.moderation-case-summary,.moderation-reconsideration-actions{flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0;display:flex}.moderation-case-metrics{min-width:8rem;color:var(--color-muted-soft);text-align:right;font-size:.9rem;display:grid}.moderation-pill{border:1px solid var(--color-border-strong);background:var(--color-surface-tint);width:fit-content;max-width:100%;padding:var(--space-1) .6rem;color:var(--color-text-strong);overflow-wrap:anywhere;border-radius:999px;align-items:center;font-size:.85rem;font-weight:800;display:inline-flex}.moderation-pill.category{background:var(--color-surface-tint);border-color:var(--color-border-strong)}.moderation-pill.availability.unavailable,.moderation-pill.availability.removed{background:var(--color-danger-surface-soft);border-color:var(--color-danger-border);color:var(--color-accent-deep)}.moderation-pill.availability.under_review{background:var(--color-warning-surface);border-color:var(--color-warning-border);color:var(--color-warning-strong)}.moderation-pill.availability.restored{background:var(--color-success-surface);border-color:var(--color-success-border);color:var(--color-brand)}.moderation-pill.changed{background:var(--color-warning-surface);border-color:var(--color-warning-border);color:var(--color-warning-strong)}.moderation-case-heading{gap:var(--space-4);min-width:0;margin-top:var(--space-4);justify-content:space-between;align-items:start;display:flex}.moderation-case-heading h2,.moderation-report-history h3,.moderation-decision-actions h3{margin:0}.moderation-case-summary{margin-block:var(--space-4) 1.25rem}.moderation-content-comparison{border-block:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.moderation-content-panel{min-width:0;padding:var(--space-4)}.moderation-content-panel+.moderation-content-panel{border-left:1px solid var(--color-border)}.moderation-content-panel h3{color:var(--color-brand-strong);margin:0 0 .8rem;font-size:1.1rem}.moderation-recipe-content,.moderation-review-content,.moderation-source,.moderation-source a{overflow-wrap:anywhere;min-width:0}.moderation-recipe-content h4,.moderation-recipe-content h5,.moderation-recipe-content p{margin-block:.55rem}.moderation-recipe-fields{gap:.35rem var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;margin:0;display:grid}.moderation-recipe-fields>div{min-width:0}.moderation-recipe-fields dt{color:var(--color-muted-soft);font-size:.8rem;font-weight:800}.moderation-recipe-fields dd{overflow-wrap:anywhere;min-width:0;margin:0}.moderation-structured-list{gap:.65rem;min-width:0;margin-block:.4rem .9rem;display:grid}.moderation-structured-list>li{border-left:.2rem solid var(--color-border);min-width:0;padding-left:var(--space-3)}.moderation-recipe-content h6{margin-block:0 .35rem;font-size:.9rem}.moderation-recipe-content .moderation-inline-values{flex-wrap:wrap;gap:.2rem .7rem;min-width:0;margin:0;padding:0;list-style:none;display:flex}.moderation-recipe-content>ul,.moderation-recipe-content>ol{padding-left:1.35rem}.preserve-whitespace{white-space:pre-wrap}.moderation-report-history,.moderation-decision-history,.moderation-pending-appeal,.moderation-decision-actions{padding-block:1.25rem}.moderation-decision-history,.moderation-pending-appeal{border-top:1px solid var(--color-border-soft)}.moderation-decision-history h3,.moderation-pending-appeal h3{margin-top:0}.moderation-decision-history ol{margin:0;padding:0;list-style:none}.moderation-decision-history li{gap:.4rem;padding-block:.65rem;display:grid}.moderation-decision-history p,.moderation-pending-appeal>p{overflow-wrap:anywhere;margin:0}.moderation-decision-actor{color:var(--color-muted)}.moderation-report-history li{border-top:1px solid var(--color-border-soft);gap:.65rem;min-width:0;padding-block:.9rem;display:grid}.moderation-report-heading{gap:var(--space-2) var(--space-4);flex-wrap:wrap;justify-content:space-between;display:flex}.moderation-report-heading time{color:var(--color-muted-soft);font-size:.9rem}.moderation-report-history dl{gap:.45rem var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;margin:0;display:grid}.moderation-report-history dl>div{gap:var(--space-2);grid-template-columns:7rem minmax(0,1fr);min-width:0;display:grid}.moderation-report-history dt{color:var(--color-muted-soft);font-weight:750}.moderation-report-history dd{overflow-wrap:anywhere;min-width:0;margin:0}.moderation-reporter-email{color:var(--color-muted);display:block}.moderation-report-explanation{overflow-wrap:anywhere;max-width:75ch;margin:0}.moderation-decision-actions{border-top:1px solid var(--color-border-soft)}.moderation-decision-actions>div{grid-template-columns:repeat(3,minmax(0,12rem));gap:.6rem;width:fit-content;max-width:100%;margin-top:.8rem;display:grid}.moderation-decision-actions button{border-radius:var(--radius-card);width:100%;min-width:0;padding:var(--space-2) var(--space-4);cursor:pointer;border:1px solid;font-weight:800}.moderation-decision-actions .danger-action{border-color:var(--color-accent-deep)}.moderation-decision-actions .danger-action:hover:not(:disabled){border-color:var(--color-accent-pressed);background:var(--color-accent-pressed)}.moderation-decision-actions .positive-action{border-color:var(--color-brand);background:var(--color-brand);color:var(--color-surface)}.moderation-decision-actions .positive-action:hover:not(:disabled){border-color:var(--color-brand-deep);background:var(--color-brand-deep)}.moderation-decision-actions button:disabled{opacity:.58;cursor:not-allowed}.moderation-reconsideration-actions{margin-top:var(--space-4)}.moderation-decision-dialog{width:min(100% - 2rem,38rem)}.moderation-decision-dialog form,.moderation-decision-dialog label{gap:.65rem;display:grid}.moderation-decision-dialog label{color:var(--color-text-strong);font-weight:800}.moderation-decision-dialog textarea{box-sizing:border-box;border:1px solid var(--color-border-heavy);width:100%;min-height:8rem;color:var(--color-text);font:inherit;resize:vertical;border-radius:.35rem;padding:.7rem}@media (width<=47.5rem){.admin-number-row,.admin-user-result,.admin-audit-details,.admin-audit-settings ul,.monetization-metrics,.tutorial-admin-filters,.tutorial-editor-grid{grid-template-columns:minmax(0,1fr)}.tutorial-admin-row{grid-template-columns:minmax(0,1fr) auto}.tutorial-admin-actions{grid-column:1/-1}.monetization-metrics dl>div,.reported-ad-list dl>div{grid-template-columns:minmax(0,1fr);gap:.1rem}.admin-number-row label{order:-1}.admin-user-search{grid-template-columns:minmax(0,1fr)}.admin-user-search .secondary-action,.admin-user-actions .secondary-action,.admin-settings-form .primary-action{width:100%}.moderation-case-row,.moderation-report-history dl,.moderation-report-history dl>div,.moderation-content-comparison,.moderation-recipe-fields{grid-template-columns:minmax(0,1fr)}.moderation-case-metrics{text-align:left}.moderation-content-panel{padding-inline:0}.moderation-content-panel+.moderation-content-panel{border-top:1px solid var(--color-border);border-left:0}.moderation-decision-actions>div{grid-template-columns:minmax(0,1fr);width:100%}.moderation-decision-actions button,.moderation-reconsideration-actions button{width:100%}}.shopping-day-options{grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;display:grid}.shopping-day-options label{min-width:0;min-height:var(--control-height);overflow-wrap:anywhere;align-items:center;gap:.4rem;font-size:.82rem;font-weight:750;display:flex}.shopping-day-options input,.shopping-check input{flex:none;width:1.25rem;height:1.25rem}.shopping-list-screen{gap:var(--space-4);width:min(100%,58rem);min-width:0;margin:0 auto;display:grid}.shopping-list-header{border-bottom:2px solid var(--color-brand-ink);margin-block-end:0;padding-bottom:.85rem}.shopping-list-header h1,.shopping-list-header p,.shopping-stale h2,.shopping-stale p,.shopping-warnings h2,.shopping-warnings ul,.shopping-live p{margin:0}.shopping-list-header h1{color:var(--color-brand-strong);overflow-wrap:anywhere;font-size:2rem;line-height:1.15}.shopping-list-header p{color:var(--color-muted);margin-top:.3rem;font-weight:750}.shopping-list-meta{gap:var(--space-2);flex-wrap:wrap;align-items:center;min-width:0;display:flex}.shopping-stale,.shopping-warnings{border-left:4px solid var(--color-accent-bright);background:var(--color-warning-surface);padding:.8rem var(--space-4);gap:.45rem;display:grid}.shopping-stale h2,.shopping-warnings h2{color:var(--color-accent-pressed);font-size:1.05rem}.shopping-stale.page-state,.shopping-warnings.page-state{border-top:0;border-bottom:0;border-right:0;border-radius:0;align-items:start}.shopping-warning-explanation{margin-left:var(--space-2);vertical-align:middle;background:0 0;border:0;padding:0;display:inline-flex}.shopping-stale button,.shopping-add button,.shopping-item-actions button,.shopping-edit button{min-height:var(--control-height);border:1px solid var(--color-brand-ink);border-radius:var(--radius-control);background:var(--color-surface-tint);color:var(--color-brand-strong);padding:var(--space-2) var(--space-3);font-weight:800}.shopping-stale button{background:var(--color-brand-deep);width:fit-content;color:var(--color-surface)}.shopping-live{min-height:1.5rem;color:var(--color-muted-strong);font-weight:750}.shopping-add,.shopping-edit{grid-template-columns:minmax(0,1fr) minmax(8rem,.55fr) auto;align-items:end;gap:.6rem;display:grid}.shopping-add label,.shopping-edit label{min-width:0;color:var(--color-text-strong);gap:.3rem;font-size:.82rem;font-weight:800;display:grid}.shopping-add input,.shopping-edit input{width:100%;min-width:0;min-height:var(--control-height);border:1px solid var(--color-border-heavy);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);padding:var(--space-2) .65rem}.shopping-items{margin:0;padding:0;list-style:none;display:grid}.shopping-items>li{border-top:1px solid var(--color-border-soft);min-width:0;padding:var(--space-3) 0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.6rem;display:grid}.shopping-check{min-width:0;min-height:var(--control-height);align-items:center;gap:.7rem;display:flex}.shopping-item-copy{overflow-wrap:anywhere;min-width:0;display:grid}.shopping-item-copy>span{color:var(--color-muted);font-size:.88rem}.is-checked .shopping-item-copy{color:var(--color-muted-soft);text-decoration:line-through}.quantity-change{border:1px solid var(--color-accent-bright);background:var(--color-warning-surface);color:var(--color-accent-pressed);padding:.2rem var(--space-2);white-space:nowrap;border-radius:999px;font-size:.75rem;font-weight:850}.shopping-item-actions{gap:.4rem;display:flex}.shopping-edit{margin-top:var(--space-1);grid-column:1/-1}.scope-selector,.default-diner-fields label,.slot-override-controls label,.slot-add-text label,.recipe-picker label,.slot-entry form label{color:var(--color-text-strong);gap:.3rem;font-size:.82rem;font-weight:800;display:grid}.scope-selector select,.default-diner-fields input,.slot-override-controls input,.slot-add-text input,.recipe-picker input,.slot-entry form input{min-width:0;min-height:var(--control-height);border:1px solid var(--color-border-heavy);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);padding:var(--space-2) .65rem}.week-controls{gap:var(--space-2);flex-wrap:wrap;display:flex}.plan-actions{position:relative}.plan-actions-menu{z-index:20;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);width:max-content;min-width:11rem;padding:.35rem;display:grid;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 .65rem 1.5rem #141f1b29}.plan-actions-menu button{text-align:left;background:0 0;border:0;width:100%}.week-controls button,.default-diner-fields button,.slot-override-controls button,.slot-add-text button,.meal-slot-editor>button,.recipe-picker>button,.dialog-actions button{min-height:var(--control-height);border:1px solid var(--color-brand-ink);border-radius:var(--radius-control);background:var(--color-surface-tint);color:var(--color-brand-strong);padding:var(--space-2) var(--space-3);cursor:pointer;font-weight:800}.week-controls button.create-shopping-list-action{border-color:var(--color-brand-deep);background:var(--color-brand-deep);color:var(--color-surface)}.week-controls button:disabled,.default-diner-fields button:disabled,.meal-slot-editor button:disabled,.dialog-actions button:disabled{opacity:.58;cursor:not-allowed}.planner-live{min-height:1.5rem;color:var(--color-muted-strong);font-weight:750}.planner-error{color:var(--color-accent-deep)}.default-diners{border-top:1px solid var(--color-border-soft);border-bottom:1px solid var(--color-border-soft);padding:.55rem 0}.default-diners summary{width:fit-content;color:var(--color-brand);cursor:pointer;font-weight:850}.default-diner-fields{margin-top:var(--space-3);grid-template-columns:repeat(4,minmax(7rem,1fr)) auto;align-items:end;gap:.65rem;display:grid}.planner-workspace,.weekly-grid-wrap{min-width:0}.weekly-grid-wrap{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);overflow-x:auto}.weekly-grid{border-collapse:collapse;table-layout:fixed;width:100%;min-width:52rem}.weekly-grid th,.weekly-grid td{border-right:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle);vertical-align:top;padding:0}.weekly-grid tr:last-child th,.weekly-grid tr:last-child td{border-bottom:0}.weekly-grid th:last-child,.weekly-grid td:last-child{border-right:0}.weekly-grid th{background:var(--color-surface-tint);width:7.25rem;height:3.4rem;color:var(--color-text-strong);text-align:left;padding:.55rem;font-size:.82rem}.weekly-grid thead th span{color:var(--color-muted-soft);font-size:.72rem;display:block}.weekly-grid tbody th{vertical-align:middle;width:6rem}.weekly-grid td{height:7.25rem}.meal-slot-button{background:var(--color-surface);width:100%;height:7.25rem;min-height:7.25rem;color:var(--color-text-strong);text-align:left;cursor:pointer;border:0;align-content:start;gap:.35rem;padding:.45rem;display:grid;overflow:hidden}.meal-slot-button:hover,.meal-slot-button:focus-visible{background:var(--color-surface-tint);outline-offset:-3px}.slot-diners{color:var(--color-muted);justify-self:end;font-size:.72rem;font-weight:850}.empty-slot{color:var(--color-muted-faint);font-size:.78rem;font-weight:750}.slot-entry-summary{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;font-weight:780;display:block;overflow:hidden}.slot-entry-summary>.status-pill{margin-top:.2rem;display:flex}.status-pill:where(:not([data-ui-status-pill])){border-radius:var(--radius-control);white-space:normal;width:fit-content;max-width:100%;margin-top:.2rem;padding:.15rem .4rem;font-size:.66rem;font-weight:850;display:block}.status-pill.unavailable{background:var(--color-danger-surface);color:var(--color-accent-deep)}.status-pill.warning{background:var(--color-warning-surface);color:var(--color-warning-strong)}.meal-slot-editor{border-left:3px solid var(--color-accent-bright);background:var(--color-surface);min-width:0;padding:var(--space-4);gap:.9rem;display:grid}.meal-slot-editor header{gap:.2rem var(--space-3);grid-template-columns:1fr auto;align-items:center;display:grid}.meal-slot-editor header p{color:var(--color-muted-soft);grid-column:1/-1;font-size:.8rem;font-weight:750}.meal-slot-editor h2{color:var(--color-brand-strong);font-size:1.25rem}.diner-count{color:var(--color-muted-strong);font-variant-numeric:tabular-nums;text-align:center;min-width:2ch;font-size:1.15rem;font-weight:850;line-height:1}.diner-count-control{box-sizing:border-box;border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-canvas);min-width:4.75rem;color:var(--color-muted-strong);letter-spacing:0;text-align:center;justify-items:center;gap:.15rem;padding:.4rem .55rem .35rem;display:grid}.diner-count-label{margin-bottom:.375rem;font-size:.68rem;font-weight:800;line-height:1}.diner-count-control button{min-height:var(--control-height);color:var(--color-brand);padding:.15rem var(--space-1) 0;cursor:pointer;background:0 0;border:0;font-size:.72rem;font-weight:850;line-height:1.1;text-decoration:underline}.diner-count-control button:disabled{opacity:.58;cursor:not-allowed}.slot-override-controls,.slot-add-text{gap:var(--space-2);display:grid}.slot-override-controls{grid-template-columns:1fr 1fr}.slot-override-controls label{grid-column:1/-1}.meal-entry-choice{border:0;gap:.45rem;min-width:0;margin:0;padding:0;display:grid}.meal-entry-choice legend{color:var(--color-text-strong);margin-bottom:.625rem;font-size:.9rem;font-weight:850}.meal-entry-choice>div{gap:.45rem var(--space-3);grid-template-columns:1fr 1fr;display:grid}.meal-entry-choice label{min-width:0;min-height:var(--control-height);color:var(--color-text-strong);align-items:center;gap:.4rem;font-size:.85rem;font-weight:800;display:flex}.meal-entry-choice input{width:1.1rem;height:1.1rem;accent-color:var(--color-brand);margin:0}.slot-entry-list,.recipe-picker-results{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.slot-entry{border-bottom:1px solid var(--color-border-subtle);gap:.4rem;min-width:0;padding:.45rem 0;display:grid}.slot-entry-unavailable-control,.slot-entry-unavailable-label{width:fit-content;max-width:100%;color:var(--color-text-strong);font:inherit;text-align:left;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:.4rem;padding:0;display:flex}.slot-entry-unavailable-control>:first-child,.slot-entry-unavailable-label>:first-child{overflow-wrap:anywhere;min-width:0}.slot-entry-unavailable-control{cursor:pointer}.slot-entry-unavailable-control .status-pill,.slot-entry-unavailable-label .status-pill{margin-top:0;display:inline-flex}.slot-entry-unavailable-control:hover>:first-child,.slot-entry-unavailable-control:focus-visible>:first-child{text-decoration:underline}.slot-entry-actions{flex-wrap:wrap;gap:.3rem;display:flex}.slot-entry-actions button{min-width:var(--control-height);min-height:var(--control-height);color:var(--color-brand);padding:var(--space-1) .45rem;cursor:pointer;background:0 0;border:0;font-size:.78rem;font-weight:800}.slot-entry-actions button:last-child{color:var(--color-accent-deep)}.slot-entry-move{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:end;width:100%;display:grid}.slot-entry-move label,.slot-entry-move select{width:100%;min-width:0}.slot-entry-move select{min-height:var(--control-height)}.recurrence-edit-prompt{width:min(34rem,100vw - 2rem)}.recurrence-edit-prompt .dialog-actions{flex-wrap:wrap}.recipe-picker{border-top:1px solid var(--color-border);gap:.6rem;min-width:0;padding-top:.8rem;display:grid}.recipe-picker-results li,.recipe-picker-results button{width:100%;min-width:0}.recipe-picker-results button{border:1px solid var(--color-border);background:var(--color-surface);min-height:3rem;color:var(--color-text-strong);padding:var(--space-2) .65rem;text-align:left;cursor:pointer;border-radius:5px;gap:.1rem;display:grid}.recipe-picker-results small{color:var(--color-muted-soft);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-day-tabs,.mobile-day-meals{display:grid}.mobile-day-tabs{overscroll-behavior-inline:contain;grid-auto-columns:minmax(4.5rem,1fr);grid-auto-flow:column;overflow-x:auto}.mobile-day-tabs button{border:0;border-bottom:3px solid var(--color-border);min-height:3.5rem;color:var(--color-muted-strong);background:0 0;padding:.35rem;font-weight:800;display:grid}.mobile-day-tabs button[aria-selected=true]{border-bottom-color:var(--color-accent-bright);color:var(--color-brand-strong)}.mobile-day-tabs button span{font-size:.72rem}.mobile-day-meals{gap:0}.mobile-meal-section{border-bottom:1px solid var(--color-border-soft);grid-template-columns:6.5rem 1fr;align-items:stretch;display:grid}.mobile-meal-section h3{padding:.9rem var(--space-2) .9rem 0;color:var(--color-text-strong);margin:0;font-size:.9rem}.mobile-meal-section .meal-slot-button{height:auto;min-height:5.25rem}.modal-backdrop{z-index:100;padding:var(--space-4);background:#141f1b94;place-items:center;display:grid;position:fixed;inset:0}.share-recipe-dialog{border-radius:var(--radius-card);background:var(--color-surface);gap:.85rem;width:min(100%,28rem);padding:1.25rem;display:grid;box-shadow:0 1rem 3rem #141f1b3d}.duplicate-meal-plan-dialog{border-radius:var(--radius-card);gap:var(--space-4);background:var(--color-surface);width:min(100%,30rem);max-height:calc(100dvh - 2rem);padding:1.25rem;display:grid;overflow:auto;box-shadow:0 1rem 3rem #141f1b3d}.recurrence-dialog{border-radius:var(--radius-card);gap:var(--space-4);background:var(--color-surface);width:min(100%,34rem);max-height:calc(100dvh - 2rem);padding:1.25rem;display:grid;overflow:auto;box-shadow:0 1rem 3rem #141f1b3d}.recurrence-dialog h2,.recurrence-dialog h3,.recurrence-dialog p,.recurrence-dialog ul,.recurrence-dialog fieldset,.recurrence-summary{margin:0}.recurrence-dialog h2{color:var(--color-brand-strong);font-size:1.35rem;line-height:1.25}.recurrence-dialog h3{color:var(--color-text-strong);font-size:1rem}.recurrence-dialog form,.recurrence-dialog label,.recurrence-preview,.recipe-action-choices,.stop-recurrence-choices,.modified-occurrence-warning{gap:.7rem;min-width:0;display:grid}.recurrence-dialog label{color:var(--color-text-strong);gap:.3rem;font-size:.9rem;font-weight:800}.recurrence-dialog input,.recurrence-dialog select{width:100%;min-width:0;min-height:var(--control-height);border:1px solid var(--color-border-heavy);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);padding:var(--space-2) .65rem;font:inherit}.recurrence-preview,.recurrence-summary{border-block:1px solid var(--color-border-soft);padding-block:var(--space-3)}.recurrence-horizon-status{color:var(--color-text-strong);overflow-wrap:anywhere;font-size:.9rem;font-weight:800}.recurrence-preview ul,.modified-occurrence-warning ul{padding-left:1.25rem}.recurrence-warning,.modified-occurrence-warning{border-left:4px solid var(--color-warning-accent);background:var(--color-warning-surface);color:var(--color-warning-strong);padding:.7rem .8rem}.recurrence-summary{gap:.45rem;display:grid}.recurrence-summary div{gap:var(--space-3);grid-template-columns:minmax(7.5rem,.8fr) minmax(0,1.2fr);display:grid}.recurrence-summary dt{color:var(--color-muted);font-weight:750}.recurrence-summary dd{overflow-wrap:anywhere;margin:0;font-weight:800}.recipe-action-choices,.stop-recurrence-choices{border:1px solid var(--color-border);border-radius:var(--radius-control);padding:.8rem}.recipe-action-choices>div{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;display:grid}.recipe-action-choices button[aria-pressed=true]{background:var(--color-brand-deep);color:var(--color-surface)}.recurrence-dialog>button,.recipe-action-choices button,.modified-occurrence-warning button{min-height:var(--control-height);border:1px solid var(--color-brand-ink);border-radius:var(--radius-control);background:var(--color-surface-tint);color:var(--color-brand-strong);padding:var(--space-2) var(--space-3);cursor:pointer;font-weight:800}.duplicate-meal-plan-dialog h2,.duplicate-meal-plan-dialog p,.duplicate-week-preview{margin:0}.duplicate-meal-plan-dialog h2{color:var(--color-brand-strong);font-size:1.35rem;line-height:1.25}.duplicate-meal-plan-dialog form,.duplicate-meal-plan-dialog label{gap:var(--space-3);min-width:0;display:grid}.duplicate-meal-plan-dialog label{color:var(--color-text-strong);gap:.3rem;font-size:.9rem;font-weight:800}.duplicate-meal-plan-dialog input{min-width:0;min-height:var(--control-height);border:1px solid var(--color-border-heavy);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);padding:var(--space-2) .65rem;font:inherit}.duplicate-week-preview{border-block:1px solid var(--color-border-soft);padding-block:var(--space-3);gap:var(--space-2);display:grid}.duplicate-week-preview div{gap:var(--space-3);grid-template-columns:minmax(7rem,.7fr) minmax(0,1.3fr);display:grid}.duplicate-week-preview dt{color:var(--color-muted);font-weight:750}.duplicate-week-preview dd{overflow-wrap:anywhere;margin:0;font-weight:800}.share-recipe-dialog h2,.share-recipe-dialog p{margin:0}.share-recipe-dialog h2{color:var(--color-brand-strong);font-size:1.35rem;line-height:1.25}.dialog-actions{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.dialog-actions button:first-child{background:var(--color-brand-deep);color:var(--color-surface)}@media (width<=45rem){.meal-planner{grid-template-columns:minmax(0,1fr)}.meal-planner>*{grid-column:1}.meal-planner-header .page-header__copy h1{font-size:1.65rem}.meal-plan-header-controls{grid-template-columns:minmax(0,1fr)}.scope-selector select{width:100%}.week-controls{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.week-controls button{min-width:0;padding-inline:var(--space-1);font-size:.78rem}.plan-actions,.plan-actions>button{width:100%}.plan-actions-menu{width:min(15rem,100vw - 2rem);left:auto;right:0}.duplicate-week-preview div{grid-template-columns:minmax(0,1fr);gap:.1rem}.recurrence-summary div,.recipe-action-choices>div{grid-template-columns:minmax(0,1fr)}.default-diner-fields{grid-template-columns:1fr 1fr}.default-diner-fields button{grid-column:1/-1}.meal-slot-editor{border-top:3px solid var(--color-accent-bright);border-left:0}.dialog-actions{grid-template-columns:1fr}.shopping-day-options{grid-template-columns:1fr 1fr}.shopping-list-header h1{font-size:1.65rem}.shopping-list-header .page-header__actions,.shopping-list-header .back-action{width:100%}.shopping-add,.shopping-edit{grid-template-columns:minmax(0,1fr)}.shopping-items>li{grid-template-columns:minmax(0,1fr) auto}.shopping-item-actions,.shopping-edit{grid-column:1/-1}.shopping-item-actions{grid-template-columns:1fr 1fr;display:grid}}@media (width<=23.75rem){.shopping-day-options,.shopping-item-actions,.shopping-items>li{grid-template-columns:minmax(0,1fr)}.quantity-change{width:fit-content}}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{min-height:3rem}#root{min-height:100vh}.app-shell{align-content:start;gap:var(--space-4);min-height:100vh;padding:max(var(--space-4), env(safe-area-inset-top)) var(--space-4) max(1.25rem, env(safe-area-inset-bottom));display:grid}.app-header{border-bottom:1px solid var(--color-border-soft);background:var(--color-surface);width:100%}.app-header-inner{width:min(100%, var(--content-width));min-height:4rem;padding:var(--space-2) var(--space-4);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.app-header-brand{min-height:var(--control-height);color:var(--color-brand-strong);padding:var(--space-1) var(--space-2);cursor:pointer;background:0 0;border:0;font-size:1.5rem;font-weight:900}.app-header-nav{align-self:stretch;gap:var(--space-1);align-items:center;display:flex}.app-header-nav button{min-height:var(--control-height);color:var(--color-muted-strong);padding:var(--space-2) var(--space-3);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;font-weight:800}.app-header-nav button[aria-current=page]{border-bottom-color:var(--color-accent-bright);color:var(--color-brand-strong)}.app-header-nav button:focus-visible,.app-header-nav button:hover{background:var(--color-surface-tint)}.app-header-account{position:relative}.app-header-actions{gap:var(--space-2);align-items:center;min-width:0;display:flex}.app-header-profile{width:var(--control-height);min-height:var(--control-height);background:var(--color-brand-strong);color:var(--color-surface);cursor:pointer;border:0;border-radius:50%;place-items:center;font-weight:900;display:grid}.app-header-menu{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);width:min(15rem,100vw - 2rem);display:grid;position:absolute;top:calc(100% + .45rem);right:0;overflow:hidden;box-shadow:0 .5rem 1.25rem #1f272324}.app-header-menu button{min-height:var(--control-height);border:0;border-bottom:1px solid var(--color-surface-tint-strong);color:var(--color-text-strong);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;padding:.65rem .85rem;font-weight:750;display:flex}.app-header-menu .app-header-sign-out{color:var(--color-accent-deep);border-bottom:0}.app-header-menu button:hover{background:var(--color-surface-tint)}.app-header-menu button:disabled{color:var(--color-muted-soft);cursor:not-allowed}.app-header-invitation-count{background:var(--color-accent-strong);min-width:1.55rem;min-height:1.55rem;color:var(--color-surface);border-radius:999px;place-items:center;padding:0 .35rem;font-size:.8rem;font-weight:900;display:grid}.app-header-notification-count{background:var(--color-info);min-width:1.55rem;min-height:1.55rem;color:var(--color-surface);border-radius:999px;place-items:center;padding:0 .35rem;font-size:.8rem;font-weight:900;display:grid}.app-header-menu-error{background:var(--color-danger-surface-soft);color:var(--color-accent-deep);padding:.65rem .85rem;font-size:.85rem;font-weight:750}.entry-screen,.sign-in-screen,.live-mode,.recipe-editor,.local-recipe-import,.add-recipe-screen,.photo-import-screen,.url-import-screen{width:min(100%,46rem);margin:0 auto}.url-import-screen{min-width:0;max-width:100%}.entry-screen,.sign-in-screen,.recipe-editor,.local-recipe-import,.add-recipe-screen,.photo-import-screen,.url-import-screen,.family-panel{gap:var(--space-4);display:grid}.add-recipe-screen .page-header,.photo-import-screen .page-header,.url-import-screen .page-header,.entry-screen .page-header{margin-block-end:0}.add-recipe-screen .page-header h1,.photo-import-screen .page-header h1,.url-import-screen .page-header h1,.entry-screen .page-header h1{font-size:2.75rem;line-height:1.05}.back-action{width:fit-content;min-height:var(--control-height);color:var(--color-brand);cursor:pointer;background:0 0;border:0;padding:.35rem 0;font-weight:800}.back-action:disabled{color:var(--color-icon-muted);cursor:not-allowed}.recipe-import-choices{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.recipe-import-choice{border:1px solid var(--color-border-heavy);border-radius:var(--radius-card);align-content:start;gap:var(--space-2);background:var(--color-surface);min-height:8.5rem;color:var(--color-brand-strong);padding:var(--space-4);text-align:left;cursor:pointer;display:grid}.recipe-import-choice svg{width:1.75rem;height:1.75rem;color:var(--color-accent)}.recipe-import-choice strong{font-size:1.2rem}.recipe-import-choice span{color:var(--color-muted-soft);font-size:.9rem;font-weight:750}.recipe-import-choice:disabled{border-color:var(--color-border-soft);background:var(--color-surface-tint);color:var(--color-muted-soft);cursor:not-allowed}.back-action:focus-visible,.recipe-import-choice:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}@media (width<=40rem){.recipe-import-choices{grid-template-columns:1fr}.recipe-import-choice{min-height:6.5rem}}.photo-import-form{gap:var(--space-4);display:grid}.url-import-form{gap:var(--space-4);overflow-wrap:anywhere;word-break:break-word;width:100%;min-width:0;max-width:100%;display:grid}.url-import-form .recipe-field,.url-import-form input{min-width:0;max-width:100%}.url-import-feedback{overflow-wrap:anywhere;word-break:break-word;align-content:start;min-width:0;max-width:100%;min-height:1.5rem;display:grid}.url-import-feedback .field-error,.url-import-feedback .entry-status,.url-import-feedback .url-status-empty{overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%}.url-status-empty{min-height:0}.url-import-submit{min-height:3.25rem}.photo-source-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.photo-source-action{border:1px solid var(--color-brand-ink);border-radius:var(--radius-card);background:var(--color-surface-tint);min-height:3.25rem;color:var(--color-brand-strong);text-align:center;cursor:pointer;place-items:center;padding:.65rem;font-weight:850;display:grid;position:relative}.photo-source-action.is-disabled{border-color:var(--color-border);background:var(--color-surface-tint);color:var(--color-muted-faint);cursor:not-allowed}.visually-hidden,.visually-hidden-file{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.photo-preview-group:focus-visible,.photo-preview-actions button:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.photo-source-action:has(.visually-hidden-file:focus-visible){outline:3px solid var(--color-info);outline-offset:3px}.photo-selection-heading{gap:var(--space-3);justify-content:space-between;align-items:end;min-height:2.2rem;display:flex}.photo-selection-heading span{color:var(--color-muted);text-align:right;font-size:.85rem;font-weight:800}.photo-preview-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.photo-preview-item{min-width:0}.photo-preview-group{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);grid-template-rows:6rem auto;grid-template-columns:6rem minmax(0,1fr);gap:.65rem;min-width:0;min-height:9rem;padding:.65rem;display:grid}.photo-preview-group img{border-radius:var(--radius-control);object-fit:cover;background:var(--color-surface-tint-strong);width:6rem;height:6rem}.photo-preview-details{align-content:center;gap:.2rem;min-width:0;display:grid}.photo-preview-details strong{color:var(--color-brand-strong);font-size:1rem}.photo-preview-details span{overflow-wrap:anywhere;color:var(--color-muted);font-size:.85rem;font-weight:750}.photo-preview-actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;min-width:0;display:grid}.photo-preview-actions button{min-width:0;min-height:var(--control-height);border:1px solid var(--color-border-heavy);border-radius:var(--radius-control);background:var(--color-canvas);color:var(--color-brand);cursor:pointer;padding:.45rem .3rem;font-size:.85rem;font-weight:850}.photo-preview-actions .photo-remove-action{border-color:var(--color-danger-border);background:var(--color-danger-surface-soft);color:var(--color-accent-deep)}.photo-preview-actions button:disabled{border-color:var(--color-border-soft);background:var(--color-surface-tint);color:var(--color-icon-muted);cursor:not-allowed}.photo-empty-state{min-height:.25rem}.photo-import-feedback{align-content:start;min-height:0;display:grid}.photo-status-empty{min-height:0}.photo-import-submit{min-height:3.25rem}@media (width>=40rem){.photo-preview-group{grid-template-rows:6rem;grid-template-columns:6rem minmax(0,1fr) 15rem;align-items:center;min-height:7.4rem}.photo-preview-actions{grid-column:auto}}.entry-header{padding-top:var(--space-2)}h1,h2,p,ul{margin:0}h1{color:var(--color-brand-strong);font-size:4.5rem;line-height:.9}h2{color:var(--color-brand-strong);font-size:1.35rem;line-height:1.2}.recipe-form,.auth-form,.recipe-editor-form{gap:.85rem;display:grid}.recipe-review-banner{border:1px solid var(--color-warning-accent);border-radius:var(--radius-card);background:var(--color-warning-surface);color:var(--color-warning-strong);padding:var(--space-3);gap:.55rem;display:grid}.recipe-review-photos{flex-wrap:wrap;gap:.45rem;padding:0;list-style:none;display:flex}.recipe-review-photos a{min-height:var(--control-height);border:1px solid var(--color-warning);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-warning-strong);align-items:center;padding:0 .7rem;font-weight:850;display:inline-flex}.recipe-source-link{width:fit-content;min-width:0;max-width:100%;color:var(--color-warning-strong);overflow-wrap:anywhere;gap:.1rem;font-weight:850;display:grid}.recipe-source-hostname{color:var(--color-muted-strong);font-size:.9rem;font-weight:700}.auth-form{width:min(100%,24rem)}.recipe-field,.auth-field{gap:.45rem;display:grid}.recipe-field label,.auth-field label{color:var(--color-text-strong);font-size:.95rem;font-weight:800}.recipe-field textarea,.recipe-field input,.auth-field input{border:1px solid var(--color-icon-muted);border-radius:var(--radius-card);background:var(--color-surface);width:100%;color:var(--color-text);padding:.9rem;box-shadow:0 1px #123f3514}.recipe-field textarea{resize:vertical;min-height:22rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.step-tutorial-tags-editor{gap:var(--space-3);border-top:1px solid var(--color-border-soft);padding-top:var(--space-4);display:grid}.step-tutorial-technique,.step-tutorial-tag-group p{color:var(--color-muted);margin:0;font-weight:700}.step-tutorial-tag-list{gap:var(--space-3);display:grid}.step-tutorial-tag-control{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);min-width:0;padding:.85rem;display:grid}.step-tutorial-tag-control--compact{gap:var(--space-2)}.step-tutorial-tag-control legend{color:var(--color-brand-strong);padding:0 var(--space-1);font-weight:900}.step-tutorial-compact-row{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;display:grid}.step-tutorial-step-summary{gap:var(--space-1);min-width:0;display:grid}.step-tutorial-step-title{color:var(--color-brand-strong);overflow-wrap:anywhere;font-weight:900}.step-tutorial-step-technique{color:var(--color-muted);overflow-wrap:anywhere;font-weight:700}.step-tutorial-count-pills{flex-wrap:wrap;gap:.4rem;min-width:0;display:flex}.step-tutorial-disclosure{white-space:nowrap;grid-area:1/2/span 2;width:auto;min-height:2.5rem}.step-tutorial-details{gap:var(--space-3);min-width:0;display:grid}.step-tutorial-search{color:var(--color-text-strong);gap:.4rem;font-weight:800;display:grid}.step-tutorial-search input{width:100%;min-height:var(--control-height);border:1px solid var(--color-icon-muted);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text);padding:var(--space-3)}.step-tutorial-suggestions,.step-tutorial-selected-tags,.step-tutorial-tag-group ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.step-tutorial-suggestions li,.step-tutorial-selected-tags li{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.step-tutorial-suggestions span:not(.status-pill){overflow-wrap:anywhere}.step-tutorial-tag-groups{gap:.7rem;display:grid}.step-tutorial-load-more{justify-self:start;width:auto}.step-tutorial-tag-group{gap:.4rem;min-width:0;display:grid}.step-tutorial-tag-group h3{color:var(--color-brand-strong);margin:0;font-size:1rem}.step-tutorial-selected-tags label,.step-tutorial-tag-group label{max-width:100%;color:var(--color-text-strong);align-items:center;gap:.45rem;font-weight:800;display:inline-flex}.step-tutorial-selected-tags input,.step-tutorial-tag-group input{flex:none;width:1.2rem;height:1.2rem}.step-tutorial-selected-tags span,.step-tutorial-tag-group span{overflow-wrap:anywhere}@media (width<=40rem){.step-tutorial-compact-row{grid-template-columns:minmax(0,1fr)}.step-tutorial-disclosure{grid-area:auto;width:100%}.step-tutorial-load-more{width:100%}}.auth-field input,.recipe-field input{min-height:3rem}.recipe-field textarea::placeholder{color:var(--color-muted-soft)}.recipe-field textarea:focus-visible,.recipe-field input:focus-visible,.auth-field input:focus-visible,.compact-form input:focus-visible,.recipe-visibility-field select:focus-visible,.primary-action:focus-visible,.secondary-action:focus-visible,.compact-action:focus-visible,.saved-recipe-open:focus-visible,.saved-recipe-delete:focus-visible,.visibility-pill:focus-visible,.visibility-choice:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.app-header-brand:focus-visible,.app-header-profile:focus-visible,.app-header-menu button:focus-visible{z-index:1;outline:3px solid var(--color-info);outline-offset:-3px;position:relative}.app-screen{margin:0 auto}.focused-screen{gap:var(--space-4);width:min(100%,46rem);margin:0 auto;display:grid}.account-screen h1,.account-screen p{margin:0}.account-screen .secondary-action{justify-self:start}.notification-center{gap:1.25rem}.notification-center h1,.notification-center h2,.notification-center p{margin:0}.notification-center-heading{justify-content:space-between;align-items:end;gap:var(--space-4);border-bottom:1px solid var(--color-border-soft);min-width:0;padding-bottom:var(--space-4);display:flex}.notification-center-heading>div{gap:.35rem;min-width:0;display:grid}.notification-center-heading h1{font-size:2rem}.notification-center-heading p,.notification-status,.notification-item time{color:var(--color-muted)}.notification-mark-all,.notification-actions .secondary-action{align-items:center;gap:.4rem;width:fit-content;min-width:0;display:inline-flex}.notification-list{margin:0;padding:0;list-style:none;display:grid}.notification-item{gap:var(--space-4);border-bottom:1px solid var(--color-border-soft);grid-template-columns:minmax(0,1fr) auto;min-width:0;padding:1.1rem 0;display:grid}.notification-item:first-child{border-top:1px solid var(--color-border-soft)}.notification-item.is-unread{border-left:4px solid var(--color-info);padding-left:.85rem}.notification-item-main,.notification-item-title,.notification-actions,.notification-state,.notification-empty{display:flex}.notification-item-main{flex-direction:column;gap:.4rem;min-width:0}.notification-item-main h2{font-size:1.1rem}.notification-item-main p{overflow-wrap:anywhere}.notification-item-title{flex-wrap:wrap;align-items:center;gap:.55rem}.notification-unread{background:var(--color-info-surface);color:var(--color-info-strong);padding:.18rem var(--space-2);border-radius:999px;font-size:.76rem;font-weight:850}.notification-status{font-weight:800}.notification-content-label{color:var(--color-text-strong);font-size:1.05rem;font-weight:900}.notification-item time{font-size:.82rem}.notification-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.55rem}.notification-actions .icon-action{width:2.75rem;min-height:var(--control-height);border:1px solid var(--color-brand-ink);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-brand-strong);cursor:pointer;place-items:center;display:grid}.notification-actions button:focus-visible,.notification-load-more:focus-visible,.notification-mark-all:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.notification-state,.notification-empty{align-items:center;gap:var(--space-3);padding-block:var(--space-4);flex-wrap:wrap}.notification-load-more{justify-self:start}@media (width<=40rem){.notification-center-heading,.notification-item{flex-direction:column;grid-template-columns:minmax(0,1fr);align-items:stretch}.notification-mark-all,.notification-load-more,.notification-actions .secondary-action{justify-content:center;width:100%}.notification-actions{justify-content:space-between}}.account-profile,.account-profile-form,.account-profile-field,.account-profile-heading{display:grid}.account-profile{width:min(100%,30rem);padding-block:var(--space-1);gap:.8rem}.account-profile-heading,.account-profile-form{gap:.7rem}.account-profile-heading h2{font-size:1.15rem}.account-email{color:var(--color-muted);overflow-wrap:anywhere;font-weight:750}.account-profile-field{gap:.4rem}.account-profile-field label{color:var(--color-text-strong);font-size:.95rem;font-weight:800}.account-profile-field input{border:1px solid var(--color-icon-muted);border-radius:var(--radius-card);background:var(--color-surface);width:100%;min-width:0;min-height:3rem;color:var(--color-text);padding:var(--space-3);box-shadow:0 1px #123f3514}.account-profile-field input:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.account-profile-guidance{color:var(--color-muted);font-size:.9rem;line-height:1.4}.account-profile .primary-action{width:auto;min-height:3rem;padding-inline:var(--space-4);justify-self:start}.account-privacy,.account-policy-list{display:grid}.account-privacy{border-top:1px solid var(--color-border-soft);width:100%;padding-block:1.25rem var(--space-1);gap:.9rem}.account-privacy h2{font-size:1.25rem}.account-privacy>p,.account-policy-row span{color:var(--color-muted)}.account-policy-list{border-block:1px solid var(--color-border-soft)}.account-policy-row{align-items:baseline;gap:.6rem var(--space-4);grid-template-columns:minmax(9rem,1fr) auto auto;padding-block:.8rem;display:grid}.account-policy-row+.account-policy-row{border-top:1px solid var(--color-border-subtle)}.account-policy-row a{width:fit-content;min-height:var(--control-height);color:var(--color-brand);align-items:center;font-weight:850;display:inline-flex}.account-privacy a[aria-disabled=true]{color:var(--color-muted-faint);cursor:not-allowed}.account-policy-row span{font-size:.88rem;font-weight:700}.account-unsaved-pill{background:var(--color-warning-surface);color:var(--color-warning-strong);border-radius:999px;padding:.2rem .55rem;font-size:.8rem;font-weight:850}@media (width<=36rem){.account-policy-row{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}}.account-membership,.account-membership-content,.account-membership-load-error,.account-membership-summary,.membership-plan-list,.membership-plan-copy,.membership-plan-action{display:grid}.account-membership{gap:var(--space-4);border-block:1px solid var(--color-border-soft);width:100%;padding-block:1.25rem}.account-membership-heading{justify-content:space-between;align-items:center;gap:var(--space-4);min-width:0;display:flex}.account-membership-heading h2{font-size:1.25rem}.membership-status{background:var(--color-surface-tint-strong);color:var(--color-brand-ink);border-radius:999px;flex:none;padding:.3rem .65rem;font-size:.82rem;font-weight:850}.membership-status-active,.membership-status-canceling{background:var(--color-surface-tint-strong);color:var(--color-brand)}.membership-status-grace{background:var(--color-warning-surface);color:var(--color-warning-strong)}.account-membership-content,.account-membership-summary,.account-membership-load-error{gap:.9rem}.account-membership-core,.account-membership-loading{color:var(--color-muted-strong);font-weight:700}.account-membership-load-error .secondary-action,.account-membership-summary .secondary-action{width:auto;min-height:var(--control-height);padding-inline:var(--space-4);justify-self:start}.membership-interval{border:0;justify-items:start;gap:.45rem;margin:0;padding:0;display:grid}.membership-interval legend{color:var(--color-text-strong);padding:0;font-size:.9rem;font-weight:800}.membership-segmented-control{border:1px solid var(--color-icon-muted);background:var(--color-surface);border-radius:7px;grid-template-columns:repeat(2,minmax(7rem,auto));display:inline-grid;overflow:hidden}.membership-segmented-control label{cursor:pointer;position:relative}.membership-segmented-control label+label{border-left:1px solid var(--color-icon-muted)}.membership-segmented-control input{opacity:0;width:1px;height:1px;position:absolute}.membership-segmented-control span{min-height:var(--control-height);color:var(--color-brand-ink);justify-content:center;align-items:center;gap:.35rem;padding:.55rem .8rem;font-weight:800;display:flex}.membership-segmented-control input:checked+span{background:var(--color-brand);color:var(--color-surface)}.membership-segmented-control input:focus-visible+span{z-index:1;outline:3px solid var(--color-info);outline-offset:-3px;position:relative}.membership-plan-list{border-top:1px solid var(--color-border-soft)}.membership-plan{align-items:center;gap:var(--space-4);border-bottom:1px solid var(--color-border-soft);padding-block:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(9.5rem,auto);display:grid}.membership-plan:first-child{grid-template-columns:1fr}.membership-plan-copy,.membership-plan-action{gap:.35rem}.membership-plan h3,.account-membership-summary h3{margin:0;font-size:1.05rem}.membership-plan p,.account-membership-summary p{margin:0;line-height:1.4}.membership-plan p:not(.membership-price),.account-membership-summary p:not(.membership-grace-notice){color:var(--color-muted-strong)}.membership-plan-action{justify-items:stretch}.membership-plan-action .primary-action{width:auto;min-height:var(--control-height);padding-inline:var(--space-4)}.membership-price{color:var(--color-text-strong);text-align:center;font-weight:850}.membership-savings{color:var(--color-brand);text-align:center;font-size:.8rem;font-weight:850}.membership-grace-notice{border-left:4px solid var(--color-warning-accent);background:var(--color-warning-surface);color:var(--color-warning-strong);padding:.7rem .8rem;font-weight:750}.family-seat-manager{border-top:1px solid var(--color-border-soft);min-width:0;padding-top:var(--space-4);gap:.9rem;display:grid}.family-seat-manager>p,.family-seat-heading h3{margin:0}.family-seat-manager>p:not(.field-error){color:var(--color-muted-strong)}.family-seat-heading{justify-content:space-between;align-items:baseline;gap:var(--space-4);min-width:0;display:flex}.family-seat-heading h3{font-size:1.05rem}.family-seat-heading span{color:var(--color-muted-strong);flex:none;font-size:.85rem;font-weight:800}.family-seat-list{border-top:1px solid var(--color-border-soft);margin:0;padding:0;list-style:none;display:grid}.family-seat-row{align-items:center;gap:var(--space-4);border-bottom:1px solid var(--color-border-soft);grid-template-columns:minmax(9rem,.75fr) minmax(15rem,1.25fr);min-width:0;padding-block:.85rem;display:grid}.family-seat-feedback{grid-column:1/-1;margin:0}.family-seat-label{gap:.15rem;min-width:0;display:grid}.family-seat-label span{overflow-wrap:anywhere;color:var(--color-muted-strong)}.family-seat-state{color:var(--color-muted-strong);justify-self:start;font-weight:750}.family-seat-state-fixed,.family-seat-state-cooling{border-radius:999px;padding:.3rem .65rem;font-size:.82rem}.family-seat-state-fixed{background:var(--color-surface-tint-strong);color:var(--color-brand)}.family-seat-state-cooling{background:var(--color-warning-surface);color:var(--color-warning-strong)}.family-seat-assignment{grid-template-columns:minmax(0,1fr) auto;gap:.6rem;min-width:0;display:grid}.family-seat-assignment select{width:100%;min-width:0;min-height:var(--control-height)}.family-seat-assignment .secondary-action,.family-seat-remove,.family-seat-manager>.secondary-action{width:auto;min-height:var(--control-height);padding-inline:.9rem}.family-seat-remove{justify-self:end}.family-seat-empty{border-left:3px solid var(--color-border-heavy);padding-left:var(--space-3)}.family-seat-removal-dialog{border-radius:var(--radius-card);background:var(--color-surface);gap:.9rem;width:min(100%,32rem);max-height:calc(100dvh - 2rem);padding:1.25rem;display:grid;overflow:auto;box-shadow:0 1rem 3rem #141f1b3d}.family-seat-removal-dialog h2,.family-seat-removal-dialog p{margin:0}.family-seat-removal-dialog h2{overflow-wrap:anywhere;font-size:1.25rem}.family-seat-removal-dialog button:focus-visible,.family-seat-assignment select:focus-visible,.family-seat-manager button:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}@media (width<=36rem){.membership-plan{grid-template-columns:1fr}.membership-plan-action{justify-items:start}.membership-price,.membership-savings{text-align:left}.membership-plan-action .primary-action{width:100%}.membership-segmented-control{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.family-seat-row,.family-seat-assignment{grid-template-columns:1fr}.family-seat-remove,.family-seat-assignment .secondary-action{justify-self:stretch;width:100%}}.field-error{color:var(--color-accent-deep);font-size:.95rem;font-weight:700}.primary-action,.secondary-action{border-radius:var(--radius-card);width:100%;font-weight:800}.primary-action{background:var(--color-accent-strong);color:var(--color-surface);cursor:pointer;border:0}.primary-action:active{transform:translateY(1px)}.primary-action:disabled{background:var(--color-border-strong);cursor:not-allowed}.entry-status{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);background:var(--color-surface-tint);color:var(--color-text-strong);padding:var(--space-3);font-weight:800}.import-options{gap:.6rem;display:grid}.secondary-action{border:1px solid var(--color-border-heavy);background:var(--color-surface-tint);color:var(--color-muted-strong);cursor:pointer}.family-panel,.local-recipe-import{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);background:var(--color-surface);padding:.85rem}.family-panel{width:min(100%,46rem);margin:0 auto}.local-recipe-import h2{font-size:1rem}.local-recipe-import p{color:var(--color-muted-strong);font-weight:750}.section-heading-row,.family-list li,.family-invitations li{justify-content:space-between;align-items:center;gap:.7rem;display:flex}.section-heading-row span,.family-list span{color:var(--color-muted);font-size:.85rem;font-weight:800}.compact-form{gap:.35rem;display:grid}.compact-form>div{grid-template-columns:minmax(0,1fr) auto;gap:.45rem;display:grid}.compact-form label,.recipe-visibility-field legend{color:var(--color-text-strong);font-size:.9rem;font-weight:850}.compact-form input,.recipe-visibility-field select{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);min-width:0;min-height:3rem;color:var(--color-text-strong);padding:.55rem .65rem}.family-list,.family-invitations ul{gap:.55rem;padding:0;list-style:none;display:grid}.family-list li{border-top:1px solid var(--color-surface-tint);align-items:start;padding-top:.65rem}.family-list li>div{gap:.1rem;min-width:7rem;display:grid}.family-invitations{gap:.45rem;display:grid}.family-invitations h3{color:var(--color-brand-strong);margin:0;font-size:.95rem}.family-card-list,.family-management-list{gap:var(--space-3);padding:0;list-style:none;display:grid}.family-card{border:1px solid var(--color-border);border-radius:var(--radius-card);min-width:0;padding:var(--space-4);background:var(--color-surface);gap:.9rem;display:grid}.family-card-header,.family-card-header-actions,.family-person-row,.family-person,.family-row-actions,.family-card-tools,.family-incoming-actions,.family-confirm{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.family-card-header,.family-person-row{justify-content:space-between}.family-card-header-actions{justify-content:flex-end}.family-card-header h3,.family-card-header p{margin:0}.family-card-header p,.family-person-role{color:var(--color-muted);font-size:.88rem;font-weight:750}.family-person-row{border-top:1px solid var(--color-surface-tint-strong);min-width:0;padding-top:var(--space-3)}.family-person{min-width:0}.family-person-email{overflow-wrap:anywhere;min-width:0;font-weight:800}.family-status{text-transform:capitalize;border-radius:999px;padding:.18rem .55rem;font-size:.75rem;font-weight:850}.family-status-active{background:var(--color-surface-tint-strong);color:var(--color-brand-deep)}.family-status-pending{background:var(--color-warning-surface);color:var(--color-warning-strong)}.family-status-deleted{background:var(--color-surface-tint);color:var(--color-muted)}.family-status-declined{background:var(--color-danger-surface);color:var(--color-accent-deep)}.family-status-accepted{background:var(--color-info-surface);color:var(--color-info-strong)}.family-deleted-toggle,.family-row-action{border:1px solid var(--color-border-heavy);background:var(--color-surface);color:var(--color-brand);cursor:pointer;border-radius:999px;padding:.3rem .7rem;font-size:.78rem;font-weight:800}.family-deleted-toggle[aria-pressed=true]{border-color:var(--color-brand);background:var(--color-surface-tint-strong)}.family-row-action.danger-text{border-color:var(--color-danger-border);color:var(--color-accent-deep)}.family-deleted-toggle:focus-visible,.family-row-action:focus-visible{outline:3px solid var(--color-warning-bright);outline-offset:2px}.text-action{color:var(--color-brand);cursor:pointer;background:0 0;border:0;padding:.35rem .2rem;font-weight:800}.text-action:focus-visible,.danger-action:focus-visible{outline:3px solid var(--color-warning-bright);outline-offset:2px}.danger-text{color:var(--color-accent-deep)}.danger-action{background:var(--color-accent-deep);color:var(--color-surface)}.family-invite-form{border-top:1px solid var(--color-surface-tint-strong);padding-top:.8rem}.family-leave-action{border-top:1px solid var(--color-surface-tint-strong);padding-top:.45rem}.family-card-status{margin:0}@media (width<=40rem){.family-card{padding:.8rem}.family-person-row{align-items:flex-start}.family-row-actions{width:100%}.family-invite-form>div{grid-template-columns:minmax(0,1fr)}}.families-screen,.notification-center,.account-screen{gap:var(--space-5);width:min(100%,64rem)}.family-panel{background:0 0;border:0;width:100%;max-width:none;padding:0}.family-detail-panel,.account-section,.account-access{gap:var(--space-4);min-width:0;display:grid}.family-create-form{max-width:38rem}.family-card-header>div:first-child,.family-person{flex-wrap:wrap;align-items:center;gap:.4rem .65rem;min-width:0;display:flex}.family-card-header h3{overflow-wrap:anywhere}.family-person{flex:22rem}.family-row-actions{flex:0 auto;margin-left:auto}.family-deleted-toggle,.family-row-action,.family-row-actions .text-action,.family-incoming-actions .text-action,.family-leave-action .text-action{min-height:var(--control-height)}.family-status,.membership-status,.family-seat-state,.account-unsaved-pill{border-radius:var(--radius-card);text-transform:capitalize}.notification-item-title .status-pill{flex:none}.notification-actions button,.notification-load-more,.notification-mark-all{min-height:var(--control-height)}.account-screen{align-content:start}.account-section,.account-access,.account-screen>.local-recipe-import{border:0;border-top:1px solid var(--color-border-soft);width:100%;max-width:none;padding:var(--space-5) 0 0;background:0 0;border-radius:0}.account-profile{width:100%}.account-profile-form{max-width:42rem}.account-form-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.account-policy-row{min-width:0}.account-policy-row a,.account-email{overflow-wrap:anywhere;min-width:0}.account-access{grid-template-columns:minmax(0,1fr) auto;align-items:center}.account-access h2,.account-access p{margin:0}.account-access>div{gap:.35rem;display:grid}.account-access>[role=status]{grid-column:1/-1}.family-seat-removal-dialog{width:min(100%,32rem)}@media (width<=40rem){.family-card-header,.family-person-row,.account-access{grid-template-columns:minmax(0,1fr)}.family-card-header-actions,.family-row-actions{justify-content:flex-start;width:100%;margin-left:0}.family-row-actions>button,.family-row-actions>.family-confirm,.family-incoming-actions>button{flex:8rem}.account-form-actions{flex-direction:column;align-items:stretch}.account-form-actions .primary-action,.account-access>.secondary-action{width:100%}}.recipe-visibility-field{gap:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:var(--space-3);flex-wrap:wrap;align-items:center;margin:0;display:flex}.recipe-visibility-field label{color:var(--color-text-strong);align-items:center;gap:.4rem;font-weight:800;display:inline-flex}.recipe-library{width:min(100%, var(--content-width));gap:var(--space-4);margin:0 auto;display:grid}.recipe-library-header{align-items:end;margin-block-end:0}.recipe-library-header h1{overflow-wrap:anywhere;min-width:0;font-size:2.25rem;line-height:1.05}.recipe-library-count{color:var(--color-muted);font-size:.9rem;font-weight:800}.recipe-library-add{min-height:3rem}.saved-recipe-search{gap:var(--space-1);width:100%}.saved-recipe-search input{width:100%;min-height:3rem}.recipe-library-filters{flex-wrap:wrap;gap:.45rem;display:flex}.recipe-library-filters button{min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text-strong);padding:0 var(--space-3);cursor:pointer;font-weight:850}.recipe-library-filters button[aria-pressed=true]{border-color:var(--color-brand-ink);background:var(--color-surface-tint)}.recipe-family-filter{min-width:min(100%,15rem);color:var(--color-muted);align-items:center;gap:.4rem;font-size:.85rem;font-weight:800;display:inline-flex}.recipe-family-filter select{min-width:0;min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font:inherit;padding-inline:.6rem}.recipe-library-grid{gap:var(--space-3);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}.saved-recipe-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.45rem;padding:.65rem;display:grid;position:relative}.saved-recipe-card--unavailable{border-color:var(--color-border-strong);background:var(--color-danger-surface-soft)}.recipe-import-card{min-height:100%;display:grid}.recipe-import-state{border-style:dashed;flex-direction:column;align-items:stretch;min-height:100%}.recipe-import-state .page-state__action{margin-block-start:auto}.recipe-import-card-copy{gap:var(--space-1);min-width:0;color:var(--color-brand-ink);overflow-wrap:anywhere;display:grid}.recipe-import-actions{flex-wrap:wrap;gap:.45rem;display:flex}.recipe-import-actions button{max-width:100%;min-height:var(--control-height);border:1px solid var(--color-border-heavy);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text-strong);cursor:pointer;flex:auto;padding:0 .7rem;font-weight:850}.recipe-import-actions button:disabled{border-color:var(--color-border);background:var(--color-surface-tint);color:var(--color-muted-soft);cursor:not-allowed;opacity:.75}.recipe-import-actions .primary-action:disabled{border-color:var(--color-border);background:var(--color-border-subtle);color:var(--color-muted-soft)}.recipe-import-actions .primary-action{background:var(--color-accent-strong);width:auto;color:var(--color-surface);border-color:#0000}.saved-recipe-open,.saved-recipe-delete,.saved-recipe-favorite,.visibility-pill{border-radius:var(--radius-card);color:var(--color-text-strong);cursor:pointer;border:1px solid #0000}.saved-recipe-open{min-width:0;padding:var(--space-1) .2rem;text-align:left;background:0 0;border-color:#0000;grid-area:1/1;align-self:stretch;justify-items:start;display:grid}.saved-recipe-favorite{border-color:var(--color-border-strong);background:var(--color-surface);width:3rem;height:3rem;color:var(--color-brand-ink);grid-area:1/2;place-items:center;padding:0;display:inline-grid}.saved-recipe-favorite svg{width:1.35rem;height:1.35rem}.saved-recipe-favorite[aria-pressed=true]{border-color:var(--color-accent-strong);color:var(--color-accent-strong)}.saved-recipe-favorite:disabled{cursor:not-allowed;opacity:.65}.saved-recipe-favorite.is-unavailable:disabled{border-color:var(--color-border-strong);background:var(--color-danger-surface-soft);color:var(--color-muted-soft);cursor:not-allowed;opacity:1}.saved-recipe-metadata{justify-items:start;gap:.2rem;min-width:0;display:grid}.saved-recipe-title{overflow-wrap:anywhere;max-width:100%;color:var(--color-text-strong);font-size:1.1rem;font-weight:900}.saved-recipe-title-row{flex-wrap:wrap;align-items:center;gap:.35rem;max-width:100%;display:flex}.saved-recipe-unavailable-pill{min-height:1.45rem;padding:0 .45rem;font-size:.72rem}.saved-recipe-card--unavailable .saved-recipe-date,.saved-recipe-card--unavailable .saved-recipe-rating,.saved-recipe-card--unavailable .tag-list{opacity:.78}.saved-recipe-open .saved-recipe-date{color:var(--color-muted);font-size:.85rem;font-weight:750}.saved-recipe-rating{max-width:100%;color:var(--color-muted);align-items:center;gap:.3rem;font-size:.82rem;font-weight:800;display:inline-flex}.saved-recipe-rating svg{width:1rem;height:1rem;color:var(--color-warning);flex:none}.saved-recipe-rating--empty,.saved-recipe-rating--empty svg{color:var(--color-icon-muted)}.saved-recipe-status{grid-column:1/-1;align-items:center;min-width:0;padding:0 .2rem;display:flex}.saved-recipe-open .tag-list{max-width:100%;color:inherit;flex-wrap:wrap;gap:.3rem;display:flex}.recipe-tag{overflow-wrap:anywhere;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas);max-width:100%;min-height:1.55rem;color:var(--color-brand-ink);padding:0 var(--space-2);align-items:center;font-size:.78rem;font-weight:850;display:inline-flex}.empty-search-state{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-muted-strong);padding:var(--space-3);font-weight:800}.saved-recipe-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:.35rem;min-width:0;display:flex}.visibility-pill{width:fit-content;max-width:100%;min-height:var(--control-height);overflow-wrap:anywhere;white-space:normal;flex:none;padding:0 .65rem;font-size:.85rem;font-weight:900}.visibility-private{border-color:var(--color-border-heavy);background:var(--color-surface-tint);color:var(--color-text-strong)}.visibility-family{border-color:var(--color-info-border);background:var(--color-surface-tint);color:var(--color-info-strong)}.visibility-public{border-color:var(--color-warning-accent);background:var(--color-warning-surface);color:var(--color-warning-strong)}.visibility-pill.is-static{cursor:default;align-items:center;display:inline-flex}.visibility-pill.is-unavailable{opacity:.82;border-style:dashed}.saved-recipe-delete{min-height:var(--control-height);border-color:var(--color-border);color:var(--color-muted-soft);background:0 0;padding:0 .65rem;font-size:.9rem;font-weight:800}.saved-recipe-delete:hover,.saved-recipe-delete:focus-visible{border-color:var(--color-danger-border);background:var(--color-danger-surface-soft);color:var(--color-accent-deep)}.saved-recipe-delete.is-confirming{border-color:var(--color-danger-border-strong);background:var(--color-danger-surface);color:var(--color-accent-deep)}.saved-recipe-visibility-menu{border-top:1px solid var(--color-surface-tint);padding-top:var(--space-2);flex-wrap:wrap;grid-column:1/-1;gap:.45rem;display:flex}@media (width>=48rem){.recipe-library-header h1{font-size:2.75rem}.saved-recipe-card{grid-template-rows:minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr) auto;min-height:11rem}.saved-recipe-actions{grid-template-columns:minmax(0,max-content) auto;justify-content:space-between;align-self:stretch;align-items:end;display:grid}}@media (width>=64rem){.recipe-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=80rem){.recipe-library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=47.999rem){.recipe-library-header .page-header__actions,.recipe-library-add{width:100%}.recipe-library-filters{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.recipe-library-filters button{min-width:0;padding-inline:.4rem}.recipe-family-filter{grid-column:1/-1;width:100%}.recipe-family-filter select{flex:1}.saved-recipe-card{min-height:0}.saved-recipe-delete,.visibility-pill{min-height:var(--control-height)}}.visibility-choice{min-height:var(--control-height);border-radius:var(--radius-card);cursor:pointer;border:1px solid;padding:0 .7rem;font-size:.85rem;font-weight:900}.visibility-choice[aria-pressed=true]{box-shadow:inset 0 0 0 2px}.live-mode{gap:var(--space-4);min-height:calc(100vh - 2.25rem);display:grid}.live-mode:not(:has(.live-step-panel)){min-height:0}.live-mode__cooking{min-width:0;min-height:inherit;gap:var(--space-4);grid-template-rows:auto minmax(0,1fr) auto;display:grid}@media (width>=48rem){.recipe-library{grid-template-columns:minmax(0,1fr);align-items:start;width:min(100%,82rem)}.shopping-list-screen{grid-template-columns:minmax(0,1fr);align-items:start;width:min(100%,78rem)}.meal-planner{grid-template-columns:minmax(0,1fr)}.live-mode{grid-template-columns:minmax(0,1fr);align-items:start}.live-mode__cooking{grid-column:1}}@media (width>=48rem) and (width<=63.999rem){.recipe-library-header{flex-direction:column;align-items:start}.recipe-library-header .page-header__actions,.recipe-library-add{width:100%}}@media (width>=80rem){.recipe-library,.shopping-list-screen,.live-mode{grid-template-columns:minmax(32rem,1fr)}.live-mode{gap:var(--space-4);width:100%;max-width:72rem}.meal-planner{grid-template-columns:minmax(32rem,1fr) 21rem}.meal-planner>.planner-workspace{grid-column:1}.meal-planner>.meal-slot-editor{grid-column:2}}.live-header{gap:var(--space-3);padding-top:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.live-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}@media (width<=79.999rem){.live-header{grid-template-columns:minmax(0,1fr)}.live-header h1{font-size:2.75rem;line-height:1.1}.live-header-actions{justify-content:flex-start}}@media (width<=40rem){.live-header h1{font-size:2rem}}.live-favorite-action{border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);width:3rem;height:3rem;color:var(--color-brand);cursor:pointer;flex:0 0 3rem;place-items:center;display:inline-grid}.live-favorite-action svg{width:1.35rem;height:1.35rem}.live-favorite-action[aria-pressed=true]{border-color:var(--color-accent-strong);color:var(--color-accent-strong);box-shadow:inset 0 0 0 1px}.live-favorite-action:disabled{opacity:.58;cursor:not-allowed}.live-step-count{color:var(--color-muted-strong);font-size:.95rem;font-weight:800}.live-header h1,.primary-instruction{overflow-wrap:anywhere}.exit-action{min-width:4.5rem;min-height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text-strong);cursor:pointer;font-weight:800}.compact-action{border-style:solid;width:auto;min-width:6rem;min-height:3rem;padding:0 .8rem}.editor-actions{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.running-timers{box-sizing:border-box;width:min(calc(100% - 2rem), var(--content-width));margin:max(var(--space-4), env(safe-area-inset-top)) auto 0;border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);padding:var(--space-3);gap:.55rem;display:grid;box-shadow:0 1px #123f3514}.running-timers h2{color:var(--color-text-strong);font-size:.95rem;font-weight:900}.running-timers ul{gap:.45rem;padding:0;list-style:none;display:grid}.running-timers li{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.55rem;display:grid}.running-timers button{min-height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface-tint);color:var(--color-text-strong);cursor:pointer;font-weight:900}.running-timers span{overflow-wrap:anywhere;min-width:0;color:var(--color-muted-strong);font-weight:800}.running-timers strong{color:var(--color-brand-strong);font-size:1.35rem;line-height:1}.timer-cancel-action{color:var(--color-accent-deep)}.recipe-overview{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);background:var(--color-surface-tint);padding:var(--space-3);gap:.85rem;display:grid}.serving-control{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.55rem;display:flex}.serving-control label{color:var(--color-text-strong);font-size:.95rem;font-weight:900}.serving-stepper{grid-template-columns:3rem 4rem 3rem;gap:.35rem;display:grid}.serving-stepper button,.serving-stepper input{border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);width:100%;min-height:3rem;color:var(--color-text-strong);text-align:center;font-weight:900}.serving-stepper button{cursor:pointer}.serving-stepper button:disabled{background:var(--color-border-soft);color:var(--color-muted-faint);cursor:not-allowed}.all-ingredients{gap:.45rem;display:grid}.section-toggle-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.55rem;display:flex}.section-toggle-header button{min-height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text-strong);cursor:pointer;padding:0 .7rem;font-size:.9rem;font-weight:900}.all-ingredients h2{color:var(--color-text-strong);font-size:.95rem;font-weight:900}.all-ingredients ul{gap:.35rem;padding-left:1.2rem;display:grid}.all-ingredients li{color:var(--color-text-strong);font-weight:800}.equivalent-measures-toggle{min-height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text-strong);cursor:pointer;justify-self:start;padding:0 .7rem;font-size:.9rem;font-weight:900}.ingredient-list{gap:.45rem;padding-left:1.2rem;display:grid}.ingredient-list>li{color:var(--color-text-strong);font-weight:800}.equivalent-measures{color:var(--color-muted-strong);gap:.2rem;margin-top:.2rem;padding-left:1.2rem;font-size:.92rem;display:grid}.equivalent-measures li{font-weight:750}.status-message{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.live-step-panel{gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:var(--space-4);align-self:start;display:grid;box-shadow:0 1px #123f3514}.empty-step-panel{color:var(--color-text-strong);align-self:center;font-size:1.35rem;font-weight:850}.pause-state{justify-self:start}.primary-instruction{color:var(--color-text);font-size:2rem;font-weight:900;line-height:1.12}.live-meta{gap:var(--space-2);flex-wrap:wrap;display:flex}.live-meta p{background:var(--color-surface-tint-strong);color:var(--color-text-strong);border-radius:999px;padding:.35rem .7rem;font-weight:800}.timer-action{min-height:var(--control-height);border:1px solid var(--color-danger-border-strong);border-radius:var(--radius-card);background:var(--color-accent-strong);color:var(--color-surface);cursor:pointer;justify-self:start;padding:0 .9rem;font-weight:900}.timer-action:disabled{border-color:var(--color-border-strong);background:var(--color-border-soft);color:var(--color-muted-strong);cursor:not-allowed}.chip-group,.cue-list{gap:.45rem;display:grid}.chip-group h2,.cue-list h2{color:var(--color-muted-strong);text-transform:uppercase;font-size:.82rem;font-weight:900}.chip-group>ul{flex-wrap:wrap;gap:.45rem;padding:0;list-style:none;display:flex}.chip-group>ul>li{border:1px solid var(--color-border);background:var(--color-canvas);border-radius:999px;padding:.45rem .7rem;font-weight:800}.ingredient-detail-group .ingredient-list{gap:.45rem;padding:0;list-style:none;display:grid}.ingredient-detail-group .ingredient-list>li{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas);padding:.55rem .7rem}.cue-list ul{gap:.35rem;padding-left:1.2rem;display:grid}.cue-list li{padding-left:.1rem}.step-help{border-top:1px solid var(--color-border-subtle);gap:.65rem;min-width:0;padding-top:.85rem;display:grid;container:step-help/inline-size}.step-help h2{color:var(--color-muted-strong);text-transform:uppercase;font-size:.82rem;font-weight:900}.step-help-controls{gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.step-help-controls button{width:auto;min-width:7.5rem;min-height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text-strong);cursor:pointer;flex:0 auto;padding:.55rem .8rem;font-size:.95rem;font-weight:800}.step-help-controls button[aria-pressed=true]{border-color:var(--color-info);background:var(--color-info-surface);color:var(--color-brand-strong)}.step-help-panel{min-width:0;color:var(--color-text-strong);gap:.4rem;font-weight:650;display:grid}.tutorial-choice-list{flex-wrap:wrap;align-items:stretch;gap:.45rem;min-width:0;display:flex}.tutorial-choice-list button{min-width:0;min-height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);max-width:100%;padding:.55rem var(--space-3);color:var(--color-text-strong);overflow-wrap:anywhere;font:inherit;flex:0 18rem;font-weight:800}.tutorial-choice-list button[aria-pressed=true]{border-color:var(--color-info);background:var(--color-info-surface)}.technique-tutorial,.technique-tutorial-main,.technique-tutorial-guidance,.technique-tutorial-interaction,.tutorial-feedback{gap:.65rem;min-width:0;display:grid}.technique-tutorial h3,.technique-tutorial h4,.technique-tutorial h5,.technique-tutorial p{overflow-wrap:anywhere;margin:0}.tutorial-player{width:100%;min-width:0;overflow:hidden}.tutorial-player-frame{aspect-ratio:16/9;background:var(--color-text);border:0;width:100%;display:block}.tutorial-feedback-actions,.tutorial-negative-reason-actions,.tutorial-player-actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;min-width:0;display:flex}.tutorial-feedback-actions button,.tutorial-negative-reason-actions button,.tutorial-player-actions button,.tutorial-player-actions a{min-height:var(--control-height);border:1px solid var(--color-border-heavy);border-radius:var(--radius-card);background:var(--color-surface);max-width:100%;color:var(--color-brand-deep);overflow-wrap:anywhere;font:inherit;padding:.55rem .8rem;font-weight:800}.tutorial-player-actions a{align-items:center;display:inline-flex}@container tutorial-dialog (width>=42rem){.technique-tutorial-main{gap:var(--space-4);grid-template-columns:minmax(12rem,.75fr) minmax(20rem,1.25fr);align-items:start}}@media (width<=30rem){.step-help-controls button,.tutorial-choice-list button,.tutorial-feedback-actions button,.tutorial-negative-reason-actions button,.tutorial-player-actions button,.tutorial-player-actions a{flex-basis:100%;width:100%}.tutorial-admin-row{grid-template-columns:minmax(0,1fr);align-items:start}.tutorial-admin-row .status-pill{justify-self:start}.tutorial-admin-actions{flex-wrap:wrap;grid-column:1}.tutorial-tag-admin-grid,.tutorial-suggestion-decision-panel,.tutorial-suggestion-group-row{grid-template-columns:1fr}.tutorial-tag-form-actions,.tutorial-tag-merge-controls,.tutorial-suggestion-actions{grid-template-columns:1fr;display:grid}.tutorial-tag-actions>button,.tutorial-tag-form-actions>button,.tutorial-tag-merge-controls>button,.tutorial-suggestion-actions>button,.tutorial-suggestion-group-row>button{width:100%}.tutorial-review-checks{display:grid}.tutorial-editor-actions>button{width:100%}}.live-controls{grid-template-columns:repeat(3,minmax(0,1fr));align-self:end;gap:.55rem;min-height:4rem;display:grid}.recipe-detail-header{margin-block-end:0}.recipe-detail-header .page-header__actions{max-width:30rem}.recipe-editor .page-header{margin-block-end:0}.tutorial-dialog{width:min(100vw - 2rem,56rem);container:tutorial-dialog/inline-size}@media (width<=40rem){.running-timers li{grid-template-columns:auto minmax(0,1fr) auto}.running-timers .timer-cancel-action{grid-column:1/-1;width:100%}.recipe-detail-header{align-items:start}.recipe-detail-header .page-header__actions{justify-content:flex-start;width:100%}}.live-controls button{border-radius:var(--radius-card);background:var(--color-accent-strong);width:100%;min-height:4rem;color:var(--color-surface);cursor:pointer;border:0;font-weight:800}.live-controls button:first-child{background:var(--color-surface-tint-strong);color:var(--color-text-strong)}.live-controls button:nth-child(2){border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-strong)}.live-controls button:disabled{background:var(--color-border-soft);color:var(--color-muted-faint);cursor:not-allowed}.exit-action:focus-visible,.live-favorite-action:focus-visible,.serving-stepper button:focus-visible,.serving-stepper input:focus-visible,.step-help-controls button:focus-visible,.live-controls button:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.recipe-page{gap:2.5rem;width:100%;min-width:0;display:grid}.recipe-reviews{border-top:1px solid var(--color-border);gap:var(--space-4);width:100%;min-width:0;padding:var(--space-5) 0 var(--space-6);display:grid}.recipe-reviews-header{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);flex-wrap:wrap;min-width:0;display:flex}.recipe-reviews-header h2,.recipe-review-editor h3,.recipe-reviews p{margin:0}.recipe-review-editor{gap:.65rem;min-width:0;max-width:48rem;display:grid}.recipe-review-editor textarea{resize:vertical;overflow-wrap:anywhere;width:100%;min-width:0;min-height:7rem}.recipe-review-rating-group{flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;display:flex}.review-star{border:1px solid var(--color-border-heavy);border-radius:var(--radius-card);background:var(--color-surface);width:3rem;height:3rem;color:var(--color-muted-strong);cursor:pointer;flex:0 0 3rem;place-items:center;display:inline-grid}.review-star svg{width:1.25rem;height:1.25rem}.review-star.is-selected{border-color:var(--color-accent-strong);color:var(--color-accent-strong)}.review-star[aria-checked=true]{outline:2px solid var(--color-text-strong);outline-offset:1px}.live-favorite-error{margin:var(--space-2) 0 0;color:var(--color-accent-deep);font-weight:750}.review-star:focus-visible,.recipe-reviews button:focus-visible,.recipe-review-editor textarea:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.review-rating-selection{min-width:9rem;color:var(--color-muted-strong);font-weight:750}.review-character-count{color:var(--color-muted-soft);font-size:.85rem}.recipe-review-editor-actions,.confirmation-actions{flex-wrap:wrap;gap:.65rem;display:flex}.recipe-review-editor-actions button,.confirmation-actions button{border:1px solid var(--color-brand-ink);border-radius:var(--radius-card);min-height:3rem;padding:var(--space-2) var(--space-4);cursor:pointer;font-weight:800}.recipe-review-editor-actions .danger-action{align-items:center;gap:.45rem;display:inline-flex}.recipe-review-editor-actions .danger-action svg{width:1.1rem;height:1.1rem}.recipe-review-list{min-width:0;margin:0;padding:0;list-style:none;display:grid}.recipe-review-row{border-top:1px solid var(--color-border-subtle);min-width:0;padding:var(--space-4) 0;gap:.45rem;display:grid}.recipe-review-row-heading{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.recipe-review-row p,.recipe-review-row strong{overflow-wrap:anywhere}.recipe-review-row time{color:var(--color-muted-soft);font-size:.85rem}.confirmation-dialog{border-radius:var(--radius-card);gap:var(--space-4);background:var(--color-surface);width:min(100%,28rem);max-height:calc(100dvh - 2rem);padding:1.25rem;display:grid;overflow:auto;box-shadow:0 1rem 3rem #141f1b3d}.owner-moderation-case{gap:1.25rem;width:min(100%,58rem);margin-inline:auto;display:grid}.owner-case-header{justify-content:space-between;align-items:start;gap:var(--space-4);border-bottom:1px solid var(--color-border-soft);min-width:0;padding-bottom:var(--space-4);display:flex}.owner-case-header h1,.owner-case-header p,.owner-case-section h2,.owner-case-section p,.owner-case-history p{overflow-wrap:anywhere;margin:0}.owner-case-header h1{font-size:2.75rem;line-height:1.05}.owner-case-kicker{color:var(--color-muted-soft);font-weight:800;margin-bottom:.35rem!important}.moderation-status-pill{border:1px solid var(--color-border);background:var(--color-surface-tint);color:var(--color-text-strong);border-radius:999px;flex:none;padding:.4rem .7rem;font-weight:850}.moderation-status-pill.is-removed,.moderation-status-pill.is-unavailable{border-color:var(--color-danger-border);background:var(--color-danger-surface);color:var(--color-accent-deep)}.moderation-status-pill.is-available{border-color:var(--color-success-border);background:var(--color-success-surface);color:var(--color-brand)}.owner-case-section{border-bottom:1px solid var(--color-border-soft);gap:.65rem;padding-bottom:1.25rem;display:grid}.owner-case-section h2{font-size:1.25rem}.owner-case-history{gap:var(--space-4);padding-left:var(--space-5);margin:0;display:grid}.owner-case-history li{padding-left:var(--space-1);gap:.35rem;display:grid}.owner-case-guidance,.owner-case-notice{border-left:4px solid var(--color-warning);background:var(--color-warning-surface);padding:.8rem var(--space-4);color:var(--color-warning-strong);margin:0;font-weight:750}.owner-case-actions,.owner-case-reload,.owner-case-form,.owner-revision-explanation{gap:.8rem;min-width:0;display:grid}.owner-case-actions{grid-template-columns:repeat(2,minmax(0,max-content))}.owner-case-reload{justify-items:start}.owner-case-reload .field-error{margin:0}.owner-case-form label,.owner-revision-explanation label{font-weight:800}.owner-case-form textarea,.owner-case-form select,.owner-revision-explanation textarea{width:100%;min-width:0}.owner-case-confirmation:focus-visible,.owner-moderation-case button:focus-visible,.owner-moderation-case textarea:focus-visible,.owner-moderation-case select:focus-visible,.owner-moderation-case input:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.owner-moderation-case .recipe-editor .live-header h1{font-size:2.5rem;line-height:1.08}.owner-revision-explanation textarea{resize:vertical;min-height:7rem}@media (width<=35rem){.owner-case-header h1,.owner-moderation-case .recipe-editor .live-header h1{font-size:2rem}.owner-case-header{align-items:start}.owner-case-actions{grid-template-columns:minmax(0,1fr)}.owner-case-actions button,.owner-case-reload button,.owner-case-form .editor-actions button,.owner-case-confirmation .editor-actions button{width:100%}}.report-content-dialog{border-radius:var(--radius-card);gap:var(--space-4);background:var(--color-surface);width:min(100%,34rem);max-height:calc(100dvh - 2rem);padding:1.25rem;display:grid;overflow:auto;box-shadow:0 1rem 3rem #141f1b3d}.report-content-dialog h2,.report-content-dialog p,.report-content-dialog fieldset{margin:0}.report-content-dialog form,.report-category-options,.report-target-preview{gap:var(--space-3);min-width:0;display:grid}.report-target-preview{border-left:3px solid var(--color-border-heavy);padding-left:var(--space-3)}.report-target-preview strong,.report-target-preview p{overflow-wrap:anywhere}.report-content-dialog fieldset{border:0;min-width:0;padding:0}.report-content-dialog legend,.report-content-dialog>form>label{margin-bottom:.55rem;font-weight:800}.report-category-options label{cursor:pointer;grid-template-columns:1.5rem minmax(0,1fr);align-items:start;gap:.55rem;display:grid}.report-category-options input{width:1.25rem;height:1.25rem;margin:.1rem 0 0}.report-content-dialog textarea{resize:vertical;width:100%;min-width:0;min-height:7rem}.report-character-count{color:var(--color-muted-soft);font-size:.85rem}.recipe-review-report-action{padding:var(--space-1) 0;color:var(--color-brand);cursor:pointer;background:0 0;border:0;justify-self:start;font-weight:800;text-decoration:underline}.live-header-actions .compact-action{justify-content:center;align-items:center;gap:.4rem;display:inline-flex}.live-header-actions .compact-action svg{width:1rem;height:1rem}.report-content-dialog button:focus-visible,.report-content-dialog input:focus-visible,.report-content-dialog textarea:focus-visible,.recipe-review-report-action:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}@media (width>=43.75rem){.app-shell{padding:var(--space-6)}.entry-screen{gap:1.25rem}.live-mode{min-height:calc(100vh - 4rem)}h1{font-size:6rem}.live-header h1{font-size:4.5rem}.primary-instruction{font-size:2.65rem}.live-step-panel{padding:1.25rem}.recipe-form{grid-template-columns:1fr auto;align-items:end}.recipe-field{grid-column:1/-1}.recipe-field textarea{min-height:24rem}.primary-action{justify-self:start;width:auto;min-width:12rem;padding:0 1.4rem}.import-options{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=45rem){.app-shell{padding-inline:var(--space-3);overflow-x:hidden}.app-header-inner{grid-template-columns:minmax(0,1fr) auto;padding-inline:0;display:grid}.app-header-nav{grid-area:2/1/auto/-1;justify-content:stretch}.app-header-nav button{flex:1}}.consent-page{width:min(100% - 2rem, var(--content-width));background:var(--color-canvas);min-width:0;min-height:100svh;padding:max(1.25rem, env(safe-area-inset-top)) var(--space-4) max(var(--space-5), env(safe-area-inset-bottom));gap:var(--space-6);grid-template-rows:auto 1fr auto;margin:0 auto;display:grid}.consent-page .public-site-main{place-items:center;min-width:0;display:grid}.consent-panel{gap:.8rem;width:min(100%,42rem);min-width:0;display:grid}.consent-panel>h1{overflow-wrap:anywhere;width:fit-content;max-width:14ch;font-size:4.5rem;line-height:.98}.consent-panel>p:not(.section-kicker,.policy-wordmark){max-width:40rem;color:var(--color-muted-strong)}.consent-panel form{gap:var(--space-4);min-width:0;margin-top:var(--space-3);display:grid}.consent-group{border:0;border-top:1px solid var(--color-border);gap:.8rem;min-width:0;margin:0;padding:1.15rem 0 .35rem;display:grid}.consent-group legend{padding:0 var(--space-2) 0 0;color:var(--color-text-strong);font-size:1.15rem;font-weight:900}.consent-group>p{max-width:38rem;color:var(--color-muted);line-height:1.5}.consent-group-optional{border-bottom:1px solid var(--color-border);padding-bottom:1.15rem}.consent-choice{min-width:0;min-height:var(--control-height);gap:var(--space-3);color:var(--color-text-strong);cursor:pointer;grid-template-columns:1.35rem minmax(0,1fr);align-items:center;padding-block:.35rem;font-weight:800;line-height:1.45;display:grid}.consent-choice input{width:1.35rem;height:1.35rem;accent-color:var(--color-brand);margin:0}.consent-choice span,.consent-choice a{overflow-wrap:anywhere;min-width:0}.consent-policy-control,.public-navigation-control{min-height:var(--control-height);color:var(--color-muted-soft);font:inherit;text-align:left;text-underline-offset:.18rem;cursor:not-allowed;background:0 0;border:0;padding:0;text-decoration:underline}.consent-choice a{color:var(--color-brand);text-underline-offset:.18rem}.consent-choice input:focus-visible,.consent-choice a:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.consent-panel .primary-action{justify-self:start;width:auto;min-width:10rem;padding-inline:1.25rem}.consent-panel>.text-action{justify-self:start}@media (width<=32rem){.consent-page .public-site-main{place-items:start stretch}.consent-panel .primary-action{width:100%}}.public-entry{background:var(--color-canvas);min-width:0;position:relative}.public-hero{isolation:isolate;width:100%;height:calc(100svh - 2rem);min-height:32rem;max-height:48rem;color:var(--color-surface);align-items:center;display:grid;position:relative;overflow:hidden}.public-site-header,.public-site-footer{gap:var(--space-3) var(--space-5);flex-wrap:wrap;justify-content:space-between;align-items:center;min-width:0;display:flex}.public-site-header{border-bottom:1px solid var(--color-border);padding-bottom:var(--space-4)}.public-site-navigation{flex-wrap:wrap;align-items:center;gap:.35rem 1.25rem;min-width:0;display:flex}.public-site-header a,.public-site-footer a,.policy-links a{min-height:var(--control-height);color:var(--color-brand);text-underline-offset:.2rem;font-weight:800}.public-site-header a,.public-site-footer a{align-items:center;display:inline-flex}.public-site-header a[aria-current=page],.public-site-footer a[aria-current=page]{color:var(--color-brand-strong);text-underline-offset:.35rem;text-decoration-thickness:.18rem}.public-wordmark,.public-footer-wordmark{font-size:1.5rem;text-decoration:none}.public-header-action{align-items:center;min-width:0;display:flex}.public-site-header-hero{z-index:1;inset:max(var(--space-4), env(safe-area-inset-top)) max(var(--space-4), calc((100% - 72rem) / 2));border-color:#fffefb8c;position:absolute;bottom:auto}.public-site-header-hero a,.public-site-header-hero a[aria-current=page]{color:var(--color-surface)}.public-hero-image,.public-hero-scrim{width:100%;height:100%;position:absolute;inset:0}.public-hero-image{z-index:-2;object-fit:cover;object-position:center 48%;max-width:100%;display:block}.public-hero-scrim{z-index:-1;background:#0e2b2394}.public-hero-content{gap:clamp(var(--space-5), 5vw, 5rem);grid-template-columns:minmax(0,35rem) minmax(18rem,24rem);align-items:end;width:min(100% - 2rem,72rem);margin:0 auto;display:grid}.public-hero-content>h1,.public-hero-content>h2,.public-hero-copy{grid-column:1}.public-hero-content>h1{color:var(--color-surface);font-size:7rem;line-height:.88}.public-hero-content>h2{color:var(--color-surface);margin-top:.4rem;font-size:2.8rem;line-height:1.05}.public-hero-copy{max-width:34rem;color:var(--color-surface-tint);margin-top:.8rem;font-size:1.2rem}.public-sign-in{border-left:3px solid var(--color-warning-bright);grid-area:1/2/span 3;align-self:end;padding-left:1.25rem}.public-auth-panel{gap:.7rem;display:grid}.public-auth-panel h2,.public-auth-panel p,.public-auth-panel label{color:var(--color-surface)}.public-auth-panel h2{font-size:1.5rem}.public-auth-panel .auth-form{width:100%}.public-auth-panel .primary-action{background:var(--color-accent-bright);min-height:3.25rem}.public-introduction,.public-features,.public-entry>.public-site-footer{width:min(100% - 2rem,72rem);margin-inline:auto}.public-introduction{gap:clamp(var(--space-5), 6vw, 6rem);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;padding-block:5rem;display:grid}.public-introduction h2{margin-top:.35rem;font-size:3.5rem}.public-introduction>p{color:var(--color-muted-strong);font-size:1.3rem}.section-kicker{color:var(--color-accent-strong);letter-spacing:0;text-transform:uppercase;font-size:.82rem;font-weight:900}.public-features{border-block:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.public-features article{min-width:0;padding:2.5rem}.public-features article:nth-child(odd){border-right:1px solid var(--color-border)}.public-features article:nth-child(-n+2){border-bottom:1px solid var(--color-border)}.public-features h2{font-size:2rem}.public-features p{color:var(--color-muted-strong);margin-top:.65rem}.public-entry>.public-site-footer{padding-block:2.25rem;font-weight:900}.policy-links{flex-wrap:wrap;gap:.55rem 1.25rem;min-width:0;display:flex}.policy-links a{align-items:center;display:inline-flex}.code-entry-page{width:min(100%,48rem);min-height:100svh;padding:max(var(--space-4), env(safe-area-inset-top)) var(--space-4) max(var(--space-4), env(safe-area-inset-bottom));gap:var(--space-6);grid-template-rows:auto 1fr auto;margin:0 auto;display:grid}.code-entry-page .public-site-main{min-width:0;display:grid}.code-entry-content{gap:var(--space-4);align-content:center;width:min(100%,30rem);margin:auto;display:grid}.code-entry-content h1{font-size:4.5rem;line-height:.98}.code-entry-content .auth-form{width:100%;margin-top:var(--space-2)}.code-entry-actions{gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.code-entry-actions .text-action:disabled{color:var(--color-muted-faint);cursor:not-allowed}.resend-status{min-height:1.5rem;color:var(--color-muted);font-size:.9rem}.policy-page{width:min(100% - 2rem,54rem);min-height:100svh;padding-block:max(var(--space-4), env(safe-area-inset-top)) max(var(--space-5), env(safe-area-inset-bottom));gap:clamp(var(--space-6), 5vw, var(--space-8));grid-template-rows:auto 1fr auto;margin:0 auto;display:grid}.policy-page article{gap:var(--space-4);display:grid}.policy-page article>h1{font-size:5rem;line-height:.95}.policy-summary{max-width:44rem;color:var(--color-muted-strong);font-size:1.15rem;line-height:1.6}.policy-metadata{gap:var(--space-4) var(--space-6);margin:var(--space-2) 0 var(--space-4);border-block:1px solid var(--color-border-soft);flex-wrap:wrap;padding-block:.8rem;display:flex}.policy-metadata div{gap:var(--space-2);grid-template-columns:auto auto;display:grid}.policy-metadata dt{color:var(--color-muted-soft);font-weight:750}.policy-metadata dd{margin:0;font-weight:850}.policy-page article section{max-width:46rem;padding-top:var(--space-3);gap:.65rem;display:grid}.policy-page article section p,.policy-page article section li{color:var(--color-text-strong);overflow-wrap:anywhere;line-height:1.65}.policy-page article section ul{margin-block:0;padding-left:1.35rem}.policy-page article li+li{margin-top:.35rem}.public-information-page{width:min(100% - 2rem,72rem);min-height:100svh;padding-block:max(var(--space-4), env(safe-area-inset-top)) max(var(--space-5), env(safe-area-inset-bottom));grid-template-rows:auto 1fr auto;gap:clamp(2.5rem,7vw,5rem);margin:0 auto;display:grid}.public-site-footer{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.about-content,.contact-content{align-content:start;min-width:0;display:grid}.about-content{gap:1.25rem;width:min(100%,50rem)}.about-content>h1,.contact-content>h1{font-size:5.75rem;line-height:.96}.contact-content>h1{font-size:4.75rem}.about-content>h1:focus-visible,.contact-content>h1:focus-visible,.contact-success h2:focus-visible{outline:3px solid var(--color-info);outline-offset:.35rem}.public-page-lede{max-width:45rem;color:var(--color-muted-strong);font-size:1.2rem;line-height:1.6}.about-content section{gap:var(--space-3);max-width:46rem;padding-top:var(--space-5);display:grid}.about-content section+section{margin-top:var(--space-3);border-top:1px solid var(--color-border-soft)}.about-content section h2,.contact-success h2{font-size:2.35rem}.about-content section p,.contact-success p{color:var(--color-text-strong);line-height:1.7}.about-content a{color:var(--color-brand);text-underline-offset:.2rem;font-weight:800}.contact-content{gap:var(--space-4);width:min(100%,38rem)}.contact-form{width:100%;margin-top:var(--space-3);gap:1.2rem;display:grid}.contact-form .auth-field{gap:.4rem}.contact-form input,.contact-form textarea{width:100%;max-width:100%}.contact-form textarea{resize:vertical;min-height:12rem}.contact-honeypot{display:none}.form-error-summary{border-left:4px solid var(--color-accent);padding:.8rem var(--space-4);background:var(--color-danger-surface-soft);color:var(--color-accent-pressed);font-weight:800}.contact-submit{width:100%;min-height:3.5rem}.contact-success{max-width:36rem;margin-top:var(--space-4);border-top:1px solid var(--color-border);padding-top:var(--space-6);gap:.8rem;display:grid}@media (width<=43.75rem){.consent-panel>h1{font-size:2.3rem}.public-hero{align-items:end;height:calc(100svh - 1.25rem);min-height:35rem;max-height:46rem}.public-hero-image{object-position:58% center}.public-hero-content{grid-template-columns:minmax(0,1fr);gap:0;width:min(100% - 1.5rem,34rem);padding-bottom:1.25rem}.public-hero-content>h1,.public-hero-content>h2,.public-hero-copy,.public-sign-in{grid-column:1}.public-hero-content>h1{font-size:5rem}.public-hero-content>h2{font-size:2rem}.public-sign-in{padding-left:var(--space-4);grid-row:auto;margin-top:1.1rem}.public-auth-panel{gap:.45rem}.public-auth-panel h2{font-size:1.2rem}.public-introduction{padding-block:var(--space-7);grid-template-columns:minmax(0,1fr)}.public-introduction h2{font-size:2.5rem}.public-introduction>p{font-size:1.1rem}.public-features{grid-template-columns:minmax(0,1fr)}.public-features article,.public-features article:nth-child(odd),.public-features article:nth-child(-n+2){border-right:0;border-bottom:1px solid var(--color-border)}.public-features article:last-child{border-bottom:0}.public-site-footer{flex-direction:column;align-items:flex-start}.policy-links{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.public-information-page{gap:var(--space-6);width:min(100% - 1.5rem,72rem)}.about-content>h1,.contact-content>h1{font-size:3.5rem}.policy-page article>h1,.code-entry-content h1{font-size:3rem}.about-content section h2,.contact-success h2{font-size:1.8rem}}@media (width<=23.75rem){.policy-links{grid-template-columns:minmax(0,1fr)}}@media (width<=23.75rem) and (height<=38.75rem){.public-hero{height:100svh;min-height:0;max-height:none}.public-site-header-hero{inset:max(var(--space-1), env(safe-area-inset-top)) var(--space-2) auto;gap:var(--space-1) var(--space-2);padding-bottom:.2rem}.public-site-header-hero .public-wordmark{font-size:1.25rem}.public-site-header-hero .public-site-navigation{gap:.2rem var(--space-2)}.public-site-header-hero a{min-height:var(--control-height);font-size:.78rem}.public-hero-content{width:calc(100% - 1rem);height:calc(100svh - 3.3125rem);padding-bottom:var(--space-1);align-content:start}.public-hero-content>h1{font-size:2.75rem;line-height:.9}.public-hero-content>h2{margin-top:.15rem;font-size:1.1rem;line-height:1.05}.public-hero-copy{margin-top:var(--space-1);font-size:.78rem;line-height:1.25}.public-sign-in{padding-left:var(--space-2);margin-top:.35rem}.public-auth-panel{gap:.2rem}.public-auth-panel h2{font-size:1rem}.public-auth-panel>p{font-size:.72rem;line-height:1.2}.public-auth-panel .auth-form{gap:var(--space-1)}.public-auth-panel .auth-field{gap:.1rem}.public-auth-panel .auth-field label{font-size:.75rem}.public-auth-panel .auth-field input{min-height:var(--control-height);padding:.55rem}.public-auth-panel .primary-action{min-height:var(--control-height)}}button,a,select,input[type=checkbox],input[type=radio]{transition:background-color var(--transition-control), border-color var(--transition-control), color var(--transition-control), box-shadow var(--transition-control), opacity var(--transition-control), transform var(--transition-control)}.primary-action:hover:not(:disabled),.timer-action:hover:not(:disabled),.live-controls button:last-child:hover:not(:disabled){background:var(--color-accent-deep)}.public-auth-panel .primary-action:hover:not(:disabled){background:var(--color-accent-strong)}.danger-action:hover:not(:disabled){background:var(--color-accent-pressed)}.dialog-actions button:first-child:hover:not(:disabled),.recipe-action-choices button[aria-pressed=true]:hover:not(:disabled){background:var(--color-brand-strong)}.week-controls button.create-shopping-list-action:hover:not(:disabled){border-color:var(--color-brand-strong);background:var(--color-brand-strong)}.week-controls button:hover:not(:disabled),.default-diner-fields button:hover:not(:disabled),.slot-override-controls button:hover:not(:disabled),.slot-add-text button:hover:not(:disabled),.meal-slot-editor>button:hover:not(:disabled),.recipe-picker>button:hover:not(:disabled),.dialog-actions button:hover:not(:disabled),.shopping-stale button:hover:not(:disabled),.shopping-add button:hover:not(:disabled),.shopping-item-actions button:hover:not(:disabled),.shopping-edit button:hover:not(:disabled),.recurrence-dialog>button:hover:not(:disabled),.recipe-action-choices button:hover:not(:disabled),.modified-occurrence-warning button:hover:not(:disabled),.secondary-action:hover:not(:disabled),.live-controls button:first-child:hover:not(:disabled){background:var(--color-surface-tint-strong)}.icon-action:hover:not(:disabled),.tutorial-admin-actions button:hover:not(:disabled),.recipe-picker-results button:hover:not(:disabled),.family-deleted-toggle:hover:not(:disabled),.family-row-action:hover:not(:disabled),.recipe-library-filters button:hover:not(:disabled),.recipe-import-actions button:hover:not(:disabled),.live-favorite-action:hover:not(:disabled),.exit-action:hover:not(:disabled),.serving-stepper button:hover:not(:disabled),.section-toggle-header button:hover:not(:disabled),.step-help-controls button:hover:not(:disabled),.tutorial-choice-list button:hover:not(:disabled),.tutorial-feedback-actions button:hover:not(:disabled),.tutorial-negative-reason-actions button:hover:not(:disabled),.tutorial-player-actions button:hover:not(:disabled),.live-controls button:nth-child(2):hover:not(:disabled),.recurrence-details-button:hover:not(:disabled),.admin-tabs button:hover:not(:disabled),.moderation-queue-tabs button:hover:not(:disabled),.plan-actions-menu button:hover:not(:disabled),.diner-count-control button:hover:not(:disabled),.slot-entry-actions button:hover:not(:disabled),.mobile-day-tabs button:hover:not(:disabled),.app-header-nav button:hover:not(:disabled),.app-header-menu button:hover:not(:disabled),.back-action:hover:not(:disabled),.text-action:hover:not(:disabled),.recipe-review-report-action:hover:not(:disabled),.photo-preview-actions button:hover:not(:disabled){background:var(--color-surface-tint)}.step-help-controls button[aria-pressed=true]:hover:not(:disabled),.tutorial-choice-list button[aria-pressed=true]:hover:not(:disabled){background:var(--color-info-surface)}.family-deleted-toggle[aria-pressed=true]:hover:not(:disabled){background:var(--color-surface-tint-strong)}.photo-preview-actions .photo-remove-action:hover:not(:disabled){background:var(--color-danger-surface)}.primary-action:active:not(:disabled),.secondary-action:active:not(:disabled),.danger-action:active:not(:disabled),.timer-action:active:not(:disabled),.live-controls button:active:not(:disabled),.week-controls button:active:not(:disabled),.dialog-actions button:active:not(:disabled),.shopping-add button:active:not(:disabled),.shopping-edit button:active:not(:disabled),.shopping-item-actions button:active:not(:disabled),.step-help-controls button:active:not(:disabled),.serving-stepper button:active:not(:disabled),.icon-action:active:not(:disabled){transform:translateY(1px)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
