:root{--color-canvas:#f7f4ed;--color-surface:#fffdf8;--color-ink:#1f2922;--color-muted:#68716a;--color-primary:#2f5d42;--color-primary-soft:#6f967c;--color-primary-tint:#e6efe8;--color-accent:#efb66c;--color-accent-strong:#a95324;--color-accent-tint:#fae7cf;--color-border:#e4dfd4;--color-border-strong:#cfc8ba;--color-focus:#286a9d;--content-width:68rem;--shadow-card:0 1rem 2.5rem #2a302a12;color:var(--color-ink);background:var(--color-canvas);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--color-canvas);min-width:20rem}body{min-width:20rem;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{background:radial-gradient(circle at 94% 8%, #efc07133, transparent 28rem), var(--color-canvas);min-height:100svh}.fatal-error-page{background:var(--color-canvas);place-items:center;min-height:100svh;padding:1rem;display:grid}.fatal-error-card{border:1px solid var(--color-border);background:var(--color-surface);width:min(100%,34rem);box-shadow:var(--shadow-card);border-radius:1.4rem;padding:1.5rem}.fatal-error-card h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,8vw,3rem);line-height:1.05}.fatal-error-card>p:not(.eyebrow){color:var(--color-muted);line-height:1.55}.fatal-error-actions{gap:.75rem;margin-top:1.25rem;display:grid}.fatal-error-actions .primary-action{margin:0}.fatal-error-home{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.fatal-error-reference{margin-bottom:0;font-size:.72rem}.network-status-banner{z-index:20;color:#fff;text-align:center;background:#7b371f;margin:0;padding:.7rem 1rem;font-size:.8rem;font-weight:750;line-height:1.4;position:sticky;top:0}.app-header{width:min(100% - 2rem, var(--content-width));margin:0 auto;padding:1.25rem 0}.app-header-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.account-controls{align-items:center;gap:.6rem;min-width:0;display:flex}.account-controls span{max-width:13rem;color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;display:none;overflow:hidden}.account-controls button,.text-button{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:2.75rem;color:var(--color-ink);font:inherit;cursor:pointer;border-radius:.75rem;padding:.55rem .75rem;font-size:.78rem;font-weight:800}.header-error{color:#9b3224;text-align:right;margin:.55rem 0 0;font-size:.78rem}.brand{color:var(--color-ink);letter-spacing:-.025em;align-items:center;gap:.7rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-button{min-height:2.75rem;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.brand-mark{background:var(--color-primary);color:#fff;border-radius:.8rem;place-items:center;width:2.75rem;height:2.75rem;font-size:1.15rem;font-weight:900;display:grid;box-shadow:0 .45rem 1rem #2a4d382e}.page-content{width:min(100% - 2rem, var(--content-width));margin:0 auto;padding:1.5rem 0 3rem}.hero{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.75rem;gap:1.5rem;padding:2rem 1.25rem;display:grid;overflow:hidden}.eyebrow{color:var(--color-primary);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem;font-weight:800}.hero h1{max-width:14ch;color:var(--color-ink);letter-spacing:-.055em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,10vw,4.6rem);font-weight:600;line-height:.98}.hero-copy{max-width:39rem;color:var(--color-muted);margin:1rem 0 0;font-size:1rem;line-height:1.65}.serving-time-card{background:var(--color-primary);color:#fff;border-radius:1.25rem;align-content:center;min-height:11rem;padding:1.5rem;display:grid;position:relative;overflow:hidden}.serving-time-card:after{content:"";border:1.5rem solid #ffffff14;border-radius:50%;width:10rem;height:10rem;position:absolute;bottom:-4.5rem;right:-2.5rem}.serving-time-label,.serving-time-value,.serving-time-note{z-index:1;margin:0;position:relative}.serving-time-label{color:#ffffffbd;letter-spacing:.09em;text-transform:uppercase;font-size:.78rem;font-weight:700}.serving-time-value{margin-top:.25rem;font-family:Georgia,Times New Roman,serif;font-size:2.8rem;line-height:1}.serving-time-note{color:#ffffffb8;max-width:16rem;margin-top:.7rem;font-size:.84rem;line-height:1.45}.primary-action{background:var(--color-accent);color:#2d170c;width:100%;min-height:3.6rem;font:inherit;cursor:pointer;border:0;border-radius:1rem;justify-content:center;align-items:center;margin-top:1.5rem;padding:.9rem 1.25rem;font-weight:800;transition:transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 .6rem 1.2rem #d9703438}.primary-action:hover{transform:translateY(-2px);box-shadow:0 .8rem 1.5rem #d9703447}button:disabled{cursor:wait;opacity:.65;transform:none}.auth-page{gap:1.5rem;width:min(100% - 2rem,62rem);margin:0 auto;padding:1.5rem 0 4rem;display:grid}.auth-page-single{width:min(100% - 2rem,34rem)}.auth-introduction{align-self:center;padding:1rem 0}.auth-introduction h1,.auth-card h1{color:var(--color-ink);letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.1rem,9vw,3.8rem);font-weight:600;line-height:1.05}.auth-introduction>p:last-child,.auth-card>p{color:var(--color-muted);margin:1rem 0 0;line-height:1.6}.auth-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.4rem;padding:1.25rem}.auth-tabs{background:var(--color-primary-tint);border-radius:.9rem;grid-template-columns:1fr 1fr;gap:.35rem;padding:.35rem;display:grid}.auth-tabs button{min-height:2.8rem;color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.65rem;padding:.6rem;font-size:.82rem;font-weight:800}.auth-tabs button.is-active{background:var(--color-surface);color:var(--color-primary);box-shadow:0 .25rem .8rem #2a302a14}.auth-card-heading{margin:1.4rem 0}.auth-card-heading h2,.loading-card h1{color:var(--color-ink);margin:0;font-size:1.35rem}.auth-card-heading p,.loading-card p{color:var(--color-muted);margin:.4rem 0 0;font-size:.86rem;line-height:1.5}.auth-form{gap:1rem;display:grid}.auth-form .primary-action{width:100%;margin-top:.25rem}.auth-link-action{min-height:2.75rem;color:var(--color-primary);font:inherit;cursor:pointer;text-underline-offset:.2rem;background:0 0;border:0;justify-self:end;padding:.45rem 0;font-size:.8rem;font-weight:800;text-decoration:underline}.auth-secondary-action{width:100%}.auth-recovery-form{margin-top:1.25rem}.auth-recovery-form>p{color:var(--color-muted);margin:0;font-size:.84rem;line-height:1.5}.auth-feedback,.configuration-note,.save-error,.library-feedback{border-radius:.8rem;margin:0;padding:.8rem .9rem;font-size:.82rem;line-height:1.45}.auth-feedback.is-error,.save-error,.library-feedback.is-error{color:#8f2e20;background:#fff0ec}.auth-feedback.is-success,.configuration-note{background:var(--color-primary-tint);color:var(--color-primary)}.loading-card{text-align:center;justify-items:center;gap:.65rem;padding:2.5rem 1.25rem;display:grid}.loading-spinner{border:.22rem solid var(--color-primary-soft);border-top-color:#0000;border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite loading-spin;display:inline-block}@keyframes loading-spin{to{transform:rotate(360deg)}}.section{margin-top:2.5rem}.section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.section-heading h2{color:var(--color-ink);letter-spacing:-.025em;margin:0;font-size:1.25rem}.section-heading p{color:var(--color-muted);margin:0;font-size:.84rem}.action-grid{gap:.8rem;display:grid}.action-card{border:1px solid var(--color-border);background:var(--color-surface);min-height:5.25rem;color:var(--color-ink);font:inherit;text-align:left;cursor:pointer;border-radius:1.1rem;grid-template-columns:auto 1fr auto;align-items:center;gap:.9rem;padding:1rem;transition:border-color .16s,transform .16s;display:grid}.action-card:hover{border-color:var(--color-primary-soft);transform:translateY(-2px)}.action-icon{background:var(--color-primary-tint);width:2.7rem;height:2.7rem;color:var(--color-primary);border-radius:.85rem;place-items:center;font-size:1.15rem;font-weight:800;display:grid}.action-copy strong,.action-copy span{display:block}.action-copy strong{font-size:.95rem}.action-copy span{color:var(--color-muted);margin-top:.18rem;font-size:.78rem;line-height:1.35}.action-arrow{color:var(--color-primary);font-size:1.2rem}.empty-state{border:1px dashed var(--color-border-strong);text-align:center;background:#ffffff80;border-radius:1.2rem;padding:2rem 1.25rem}.empty-state-badge{background:var(--color-accent-tint);width:3rem;height:3rem;color:var(--color-accent-strong);border-radius:50%;place-items:center;font-weight:800;display:inline-grid}.empty-state h3{color:var(--color-ink);margin:.9rem 0 .35rem;font-size:1rem}.empty-state p{max-width:31rem;color:var(--color-muted);margin:0 auto;font-size:.86rem;line-height:1.55}.status-message{min-height:1.5rem;color:var(--color-muted);text-align:center;margin:1.25rem 0 0;font-size:.84rem}.flow-page{width:min(100% - 2rem,46rem);margin:0 auto;padding:1rem 0 4rem}.flow-page-wide{width:min(100% - 2rem, var(--content-width))}.flow-progress{grid-template-columns:repeat(3,1fr);margin:0 0 2.5rem;padding:0;list-style:none;display:grid}.flow-progress li{color:var(--color-muted);text-align:center;justify-items:center;gap:.45rem;display:grid;position:relative}.flow-progress li:before{z-index:0;background:var(--color-border);content:"";width:100%;height:2px;position:absolute;top:1rem;right:50%}.flow-progress li:first-child:before{display:none}.flow-progress li>span{z-index:1;border:2px solid var(--color-border-strong);background:var(--color-canvas);border-radius:50%;place-items:center;width:2rem;height:2rem;font-size:.78rem;font-weight:800;display:grid}.flow-progress li.is-current,.flow-progress li.is-complete{color:var(--color-primary)}.flow-progress li.is-current>span,.flow-progress li.is-complete>span{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.flow-progress li.is-complete:before,.flow-progress li.is-current:before{background:var(--color-primary)}.flow-progress small{font-size:.7rem;font-weight:700}.flow-heading{margin-bottom:1.75rem}.flow-heading h1{color:var(--color-ink);letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,8vw,3.3rem);font-weight:600;line-height:1.05}.flow-heading>p:last-child{max-width:38rem;color:var(--color-muted);margin:.75rem 0 0;line-height:1.55}.meal-form,.review-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.4rem;padding:1.25rem}.meal-form{gap:1.35rem;display:grid}.form-field{gap:.45rem;display:grid}.form-field label,.serving-time-fieldset legend{color:var(--color-ink);font-size:.88rem;font-weight:800}.form-field input{border:1px solid var(--color-border-strong);width:100%;min-height:3.25rem;color:var(--color-ink);background:#fff;border-radius:.8rem;padding:.72rem .85rem}.form-field input:hover{border-color:var(--color-primary-soft)}.form-field input[aria-invalid=true]{border-color:#b44331}.field-help,.field-error{margin:0;font-size:.78rem;line-height:1.4}.field-help{color:var(--color-muted)}.field-error,.flow-error{color:#9b3224;font-weight:700}.serving-time-fieldset{border:2px solid var(--color-primary-soft);background:var(--color-primary-tint);border-radius:1rem;margin:0;padding:1.15rem}.serving-time-fieldset legend{color:var(--color-primary);padding:0 .45rem;font-size:1rem}.serving-time-fieldset>p:first-of-type{color:var(--color-muted);margin:0 0 1rem;font-size:.8rem;line-height:1.45}.date-time-grid{gap:.9rem;display:grid}.flow-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:.75rem;margin-top:1rem;display:grid}.flow-primary{width:100%;min-width:0;margin:0}.secondary-button{border:1px solid var(--color-border-strong);min-height:3.6rem;color:var(--color-ink);font:inherit;cursor:pointer;background:0 0;border-radius:1rem;padding:.9rem 1.1rem;font-weight:800}.secondary-button:hover{border-color:var(--color-primary);background:var(--color-primary-tint)}.selected-dishes{border:2px solid var(--color-primary-soft);background:var(--color-primary-tint);border-radius:1.1rem;margin-bottom:2rem;padding:1.1rem}.selection-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.selection-heading h2,.catalogue-section h2,.review-card h2{color:var(--color-ink);letter-spacing:-.02em;margin:0;font-size:1.15rem}.selection-heading>span{background:var(--color-primary);color:#fff;border-radius:2rem;place-items:center;min-width:2rem;height:2rem;font-size:.82rem;font-weight:800;display:grid}.selection-empty{color:var(--color-muted);margin:.85rem 0 0;font-size:.85rem}.selected-dish-list{gap:.5rem;margin:.85rem 0 0;padding:0;list-style:none;display:grid}.selected-dish-list li{background:var(--color-surface);border-radius:.7rem;justify-content:space-between;align-items:center;gap:1rem;min-height:2.75rem;padding:.45rem .55rem .45rem .8rem;font-size:.88rem;font-weight:700;display:flex}.selected-dish-list button{color:#9b3224;min-height:2.25rem;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.55rem;padding:.35rem .65rem;font-size:.76rem;font-weight:800}.catalogue-section>h2{margin-bottom:1rem}.recipe-grid{gap:.8rem;display:grid}.recipe-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:1rem;gap:1rem;padding:1.1rem;display:grid}.recipe-card h3{color:var(--color-ink);margin:0;font-size:1rem}.recipe-card p{color:var(--color-muted);margin:.4rem 0 0;font-size:.8rem;line-height:1.45}.recipe-card dl{gap:1.25rem;margin:0;display:flex}.recipe-card dl>div{gap:.12rem;display:grid}.recipe-card dt{color:var(--color-muted);text-transform:uppercase;font-size:.68rem;font-weight:700}.recipe-card dd{color:var(--color-ink);margin:0;font-size:.82rem;font-weight:800}.add-dish-button,.dish-added-button{min-height:2.9rem;font:inherit;border-radius:.75rem;font-size:.84rem;font-weight:800}.add-dish-button{background:var(--color-primary);color:#fff;cursor:pointer;border:0}.dish-added-button{border:1px solid var(--color-primary-soft);background:var(--color-primary-tint);color:var(--color-primary)}.flow-error{text-align:right;margin:1rem 0 0;font-size:.84rem}.review-card h2{border-bottom:1px solid var(--color-border);padding-bottom:1rem}.meal-summary-list{gap:1rem;margin:1.25rem 0 0;display:grid}.meal-summary-list>div{gap:.3rem;display:grid}.meal-summary-list dt{color:var(--color-muted);letter-spacing:.07em;text-transform:uppercase;font-size:.7rem;font-weight:800}.meal-summary-list dd{color:var(--color-ink);margin:0;font-size:1rem;font-weight:800}.summary-serving-time{background:var(--color-primary);border-radius:.85rem;padding:1rem}.summary-serving-time dt,.summary-serving-time dd{color:#fff}.summary-serving-time dt{opacity:.72}.review-dishes{margin-top:1.5rem}.review-dishes h3{color:var(--color-ink);margin:0 0 .75rem;font-size:.88rem}.review-dishes ol{counter-reset:dishes;gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.review-dishes li{min-height:3rem;color:var(--color-ink);counter-increment:dishes;grid-template-columns:auto 1fr;align-items:center;column-gap:.7rem;font-size:.88rem;font-weight:700;display:grid}.review-dishes li:before{background:var(--color-accent-tint);width:1.8rem;height:1.8rem;color:var(--color-accent-strong);content:counter(dishes);border-radius:50%;grid-row:span 2;place-items:center;font-size:.72rem;font-weight:900;display:grid}.review-dishes small{color:var(--color-muted);font-size:.72rem;font-weight:500}.ready-message{border:1px solid var(--color-primary-soft);background:var(--color-primary-tint);color:var(--color-primary);border-radius:.9rem;gap:.35rem;margin-top:1rem;padding:1rem;display:grid}.ready-message span{font-size:.8rem;line-height:1.45}.planning-page,.plan-problem-page{text-align:center;align-content:center;justify-items:center;width:min(100% - 2rem,42rem);min-height:calc(100svh - 8rem);margin:0 auto;padding:2rem 0 5rem;display:grid}.planning-page h1,.plan-problem-card h1,.plan-hero h1{color:var(--color-ink);letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:600;line-height:1.05}.planning-page h1,.plan-problem-card h1{font-size:clamp(2rem,8vw,3.5rem)}.planning-page>p:not(.eyebrow,.planning-status){max-width:34rem;color:var(--color-muted);margin:1rem 0 0;line-height:1.6}.planning-indicator{align-items:center;gap:.45rem;min-height:4rem;margin-bottom:1.25rem;display:flex}.planning-indicator span{background:var(--color-primary);border-radius:50%;width:.75rem;height:.75rem;animation:.9s ease-in-out infinite alternate planning-pulse}.planning-indicator span:nth-child(2){animation-delay:.16s}.planning-indicator span:nth-child(3){animation-delay:.32s}.planning-status{color:var(--color-primary);margin:1.5rem 0 0;font-size:.86rem;font-weight:800}.meal-plan-page{width:min(100% - 2rem,54rem);margin:0 auto;padding:1rem 0 5rem}.plan-hero{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.5rem;padding:1.4rem}.plan-hero h1{font-size:clamp(2.35rem,10vw,4.25rem)}.plan-ready-time{color:var(--color-primary);margin:.55rem 0 0;font-size:clamp(1.2rem,5vw,1.7rem);font-weight:850}.plan-status-badge{background:var(--color-primary-tint);min-height:2rem;color:var(--color-primary);text-transform:uppercase;border-radius:3rem;align-items:center;margin-top:1rem;padding:.35rem .7rem;font-size:.76rem;font-weight:850;display:inline-flex}.plan-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:1.5rem 0 0;display:grid}.plan-summary-grid>div{background:var(--color-primary-tint);border-radius:.9rem;align-content:center;gap:.25rem;min-height:5rem;padding:.8rem;display:grid}.plan-summary-grid dt{color:var(--color-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.66rem;font-weight:800}.plan-summary-grid dd{color:var(--color-ink);margin:0;font-size:1.15rem;font-weight:850}.plan-date{color:var(--color-muted);margin:1rem 0 0;font-size:.83rem}.timeline-section{margin-top:2.5rem}.timeline-heading{gap:1rem;margin-bottom:1.25rem;display:grid}.timeline-heading h2{color:var(--color-ink);letter-spacing:-.035em;margin:0;font-size:clamp(1.5rem,6vw,2rem)}.timeline-legend{color:var(--color-muted);flex-wrap:wrap;gap:.65rem 1rem;font-size:.74rem;font-weight:700;display:flex}.timeline-legend span{align-items:center;gap:.4rem;display:inline-flex}.legend-dot{border-radius:50%;width:.6rem;height:.6rem}.active-dot{background:var(--color-accent-strong)}.passive-dot{background:var(--color-primary-soft)}.meal-timeline{margin:0;padding:0;list-style:none;display:grid}.timeline-item{grid-template-columns:3.8rem 1rem minmax(0,1fr);align-items:start;gap:.55rem;display:grid}.timeline-item time{color:var(--color-ink);padding-top:1.1rem;font-size:.8rem;font-weight:850}.timeline-marker{align-self:stretch;position:relative}.timeline-marker:before{z-index:1;border:3px solid var(--color-canvas);background:var(--color-accent-strong);width:.65rem;height:.65rem;box-shadow:0 0 0 2px var(--color-accent-strong);content:"";border-radius:50%;position:absolute;top:1.4rem;left:.2rem}.timeline-marker:after{background:var(--color-border-strong);content:"";width:2px;position:absolute;top:1.4rem;bottom:-1.4rem;left:.48rem}.timeline-item:last-child .timeline-marker:after{display:none}.timeline-item-passive .timeline-marker:before{background:var(--color-primary-soft);box-shadow:0 0 0 2px var(--color-primary-soft)}.timeline-item article{border:1px solid var(--color-border);background:var(--color-surface);border-radius:1rem;margin-bottom:.8rem;padding:1rem}.timeline-item-passive article{background:#e6efe88c}.timeline-card-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.timeline-card-heading>span:first-child{color:var(--color-primary);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:850}.task-type{border-radius:2rem;padding:.22rem .5rem;font-size:.64rem;font-weight:850}.task-type-active{background:var(--color-accent-tint);color:var(--color-accent-strong)}.task-type-passive{background:var(--color-primary-tint);color:var(--color-primary)}.timeline-item h3{color:var(--color-ink);margin:.55rem 0 0;font-size:1rem}.timeline-item article>p{color:var(--color-muted);margin:.35rem 0 0;font-size:.82rem;line-height:1.5}.timeline-meta{color:var(--color-muted);flex-wrap:wrap;gap:.4rem .85rem;margin-top:.75rem;font-size:.7rem;font-weight:700;display:flex}.plan-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:.75rem;margin-top:1.25rem;display:grid}.start-cooking-message{margin-top:1.5rem}.plan-problem-card{background:var(--color-surface);width:100%;box-shadow:var(--shadow-card);border:1px solid #e3b8a9;border-radius:1.5rem;padding:1.5rem}.plan-problem-copy{color:var(--color-muted);margin-top:1.25rem;line-height:1.6}.plan-problem-copy p{margin:.65rem 0 0}.earliest-serving{background:var(--color-primary-tint);color:var(--color-primary);border-radius:.8rem;padding:.8rem}.conflict-summary{text-align:left;background:#fff3ed;border-radius:.9rem;margin-top:1.25rem;padding:1rem}.conflict-summary h2{color:var(--color-ink);margin:0;font-size:.95rem}.conflict-summary ul{gap:.45rem;margin:.65rem 0 0;padding-left:1.2rem;font-size:.8rem;display:grid}.cooking-mode-page,.cooking-complete-page{width:min(100% - 1.25rem,72rem);margin:0 auto;padding:0 0 3rem}.cooking-status-header{background:var(--color-primary);box-shadow:var(--shadow-card);color:#fff;border-radius:1.35rem;gap:1rem;padding:1.2rem;display:grid}.cooking-status-header .eyebrow{color:#ffffffad;margin-bottom:.4rem}.cooking-status-header h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,8vw,2.8rem);line-height:1}.cooking-status-header p{color:#ffffffc7;margin:.65rem 0 0;font-size:.82rem}.cooking-clocks{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.cooking-clocks>div{background:#ffffff14;border:1px solid #ffffff26;border-radius:.8rem;gap:.25rem;padding:.8rem;display:grid}.cooking-clocks span{color:#ffffffa6;text-transform:uppercase;font-size:.68rem;font-weight:750}.cooking-clocks strong{font-variant-numeric:tabular-nums;font-size:clamp(.92rem,4vw,1.25rem)}.cooking-status-row{color:#ffffffc2;border-top:1px solid #ffffff26;flex-wrap:wrap;align-items:center;gap:.7rem;padding-top:.85rem;font-size:.76rem;display:flex}.cooking-status-row .text-button{color:#fff;min-height:2.5rem;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff73;border-radius:.65rem;margin-left:auto;padding:.5rem .7rem;font-weight:750}.pace-badge,.action-state{border-radius:4rem;align-items:center;min-height:1.8rem;padding:.3rem .65rem;font-size:.68rem;font-weight:850;display:inline-flex}.pace-badge{color:var(--color-primary);background:#dcecdf}.pace-slightly-behind{color:#863716;background:#ffe0d0}.pace-adjusting{color:#744800;background:#fff0cf}.pace-recovered{color:var(--color-primary);background:#dcecdf}.pace-delayed,.pace-action-needed{color:#863716;background:#ffe0d0}.recovery-summary{background:#f1f8f2;border:1px solid #b8d3bd;border-radius:1rem;gap:.85rem;margin-top:.8rem;padding:1rem;display:grid}.recovery-summary-warning{background:#fff3ed;border-color:#e2a78d}.recovery-summary .eyebrow{margin-bottom:.25rem}.recovery-summary h2,.recovery-summary p{margin:0}.recovery-summary h2{color:var(--color-ink);font-size:1.05rem}.recovery-summary p:not(.eyebrow){color:var(--color-muted);margin-top:.35rem;font-size:.8rem;line-height:1.45}.recovery-summary ul{color:var(--color-ink);gap:.35rem;margin:0;padding-left:1.2rem;font-size:.78rem;display:grid}.paused-banner{border:2px solid var(--color-accent);background:#fff7ee;border-radius:1rem;gap:.8rem;margin-top:.8rem;padding:1rem;display:grid}.paused-banner div{gap:.2rem;display:grid}.paused-banner span{color:var(--color-muted);font-size:.8rem}.cooking-sync-banner{background:#f1f8f2;border:1px solid #b8d3bd;border-radius:1rem;gap:.8rem;margin-top:.8rem;padding:1rem;display:grid}.cooking-sync-error{background:#fff3ed;border-color:#e2a78d}.cooking-sync-banner div{gap:.2rem;display:grid}.cooking-sync-banner span{color:var(--color-muted);font-size:.8rem}.compact-action{min-height:3rem;margin:0}.cooking-layout{gap:1rem;margin-top:1rem;display:grid}.current-action-section,.timer-section,.next-actions-section{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.2rem;padding:1rem}.section-heading-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.section-heading-row .eyebrow{margin-bottom:.25rem}.section-heading-row h2,.timer-section h2,.next-actions-section h2{color:var(--color-ink);margin:0;font-size:1.1rem}.action-state{background:var(--color-primary-tint);color:var(--color-primary)}.state-in-progress{color:#7c4809;background:#fff0d8}.state-delayed{color:#8b3515;background:#ffe1d3}.current-action-card{background:#fbfaf6;border-radius:1rem;margin-top:.9rem;padding:1.1rem}.current-action-topline{color:var(--color-primary);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:.6rem;font-size:.72rem;font-weight:850;display:flex}.current-action-card h3{color:var(--color-ink);margin:1rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,7vw,2.25rem);line-height:1.05}.current-instruction{color:var(--color-ink);margin:.8rem 0 0;font-size:clamp(1rem,4vw,1.18rem);line-height:1.55}.continuation-note,.delay-notice{background:var(--color-primary-tint);color:var(--color-primary);border-radius:.75rem;margin:.85rem 0 0;padding:.75rem;font-size:.78rem;line-height:1.45}.delay-notice{color:#783414;background:#fff0e7}.current-action-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:1rem 0 0;display:grid}.current-action-meta>div{border:1px solid var(--color-border);background:#fff;border-radius:.7rem;padding:.65rem}.current-action-meta>div:last-child{grid-column:1/-1}.current-action-meta dt{color:var(--color-muted);text-transform:uppercase;font-size:.64rem;font-weight:800}.current-action-meta dd{color:var(--color-ink);margin:.25rem 0 0;font-size:.82rem;font-weight:750}.cooking-controls{border:0;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0 0;padding:0;display:grid}.cooking-controls button,.action-panel button,.quick-delay-actions button{border:1px solid var(--color-border);min-height:3rem;color:var(--color-ink);font:inherit;cursor:pointer;background:#fff;border-radius:.75rem;padding:.7rem .45rem;font-size:.78rem;font-weight:800}.cooking-controls .done-button{background:var(--color-accent);color:#2d170c;text-transform:uppercase;border:0;grid-column:1/-1;min-height:4.2rem;font-size:1.1rem}.cooking-controls:disabled{opacity:.45}.action-panel{border:1px solid var(--color-border);background:#fff;border-radius:.85rem;margin-top:.8rem;padding:1rem}.condition-decision{border:2px solid var(--color-accent);background:#fffaf4;border-radius:.85rem;margin-top:.8rem;padding:1rem}.condition-decision h4,.condition-decision p{margin:0}.condition-decision h4{margin-top:.25rem}.condition-decision>p:last-of-type{color:var(--color-muted);margin-top:.45rem;line-height:1.5}.action-panel h4,.action-panel p{margin:0}.action-panel p{color:var(--color-muted);margin-top:.45rem;font-size:.8rem;line-height:1.5}.quick-delay-actions,.panel-actions,.custom-delay-row{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.8rem;display:grid}.action-panel label{color:var(--color-ink);margin-top:.8rem;font-size:.75rem;font-weight:750;display:block}.custom-delay-row{grid-template-columns:1fr auto}.custom-delay-row input{border:1px solid var(--color-border);min-width:0;min-height:3rem;font:inherit;border-radius:.75rem;padding:.7rem}.action-panel>.text-button{margin-top:.5rem}.panel-actions{grid-template-columns:1fr 1.25fr}.action-panel .danger-button{color:#812a19;background:#fff0eb;border-color:#b44b36}.action-panel .redo-button{border-color:var(--color-primary);background:var(--color-primary-tint);color:var(--color-primary)}.skip-critical{background:#fff7f3;border:2px solid #b44b36}.repeated-instruction{font-weight:700;color:var(--color-ink)!important;font-size:1rem!important}.guidance-pause-row{margin-top:.8rem}.guidance-pause-row .secondary-button{width:100%}.cooking-sidebar{align-content:start;gap:1rem;display:grid}.timer-section .section-heading-row>span{background:var(--color-primary-tint);width:1.8rem;height:1.8rem;color:var(--color-primary);border-radius:50%;place-items:center;font-size:.74rem;font-weight:850;display:grid}.timer-list,.next-action-list{gap:.55rem;margin:.8rem 0 0;padding:0;list-style:none;display:grid}.timer-list li,.next-action-list li{background:var(--color-primary-tint);border-radius:.75rem;grid-template-columns:1fr auto;align-items:center;gap:.75rem;padding:.75rem;display:grid}.timer-list div,.next-action-list div{gap:.15rem;display:grid}.timer-list span,.next-action-list span,.empty-guidance{color:var(--color-muted);font-size:.74rem}.timer-list time{color:var(--color-primary);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:900}.next-actions-section .eyebrow{margin-bottom:.25rem}.next-action-list li{background:#fbfaf6;grid-template-columns:3.8rem 1fr}.next-action-list time{color:var(--color-accent-strong);font-size:.8rem;font-weight:850}.empty-guidance{margin:.8rem 0 0;line-height:1.45}.cooking-complete-page{place-items:center;min-height:calc(100svh - 7rem);display:grid}.cooking-complete-card{border:1px solid var(--color-border);background:var(--color-surface);width:min(100%,35rem);box-shadow:var(--shadow-card);text-align:center;border-radius:1.5rem;padding:1.5rem}.complete-mark{background:var(--color-primary);color:#fff;border-radius:50%;place-items:center;width:4rem;height:4rem;margin:0 auto 1rem;font-size:2rem;display:grid}.cooking-complete-card h1{color:var(--color-ink);margin:0;font-family:Georgia,Times New Roman,serif}.cooking-complete-card>p:not(.eyebrow){color:var(--color-muted);line-height:1.55}.completion-summary{grid-template-columns:repeat(2,1fr);gap:.5rem;margin:1.25rem 0 0;display:grid}.completion-summary>div{background:var(--color-primary-tint);border-radius:.8rem;padding:.8rem}.completion-summary dt{color:var(--color-muted);font-size:.7rem;font-weight:750}.completion-summary dd{color:var(--color-primary);margin:.25rem 0 0;font-size:1.3rem;font-weight:900}@keyframes planning-pulse{0%{opacity:.35;transform:translateY(0)}to{opacity:1;transform:translateY(-.45rem)}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.import-heading h1{max-width:18ch}.import-layout{align-items:start;gap:1rem;display:grid}.import-form textarea{resize:vertical;border:1px solid var(--color-border-strong);width:100%;min-height:22rem;color:var(--color-ink);background:#fff;border-radius:.8rem;padding:.9rem;line-height:1.5}.import-form textarea[aria-invalid=true]{border-color:#b44331}.local-conversion-note{background:var(--color-primary-tint);border-radius:.85rem;gap:.25rem;padding:.9rem;display:grid}.local-conversion-note strong{color:var(--color-primary);font-size:.82rem}.local-conversion-note span,.fixture-panel>p{color:var(--color-muted);font-size:.78rem;line-height:1.5}.fixture-panel{border:1px solid var(--color-border);background:#ffffff7a;border-radius:1.25rem;padding:1.25rem}.fixture-panel h2,.review-section h2{color:var(--color-ink);margin:0;font-size:1.15rem}.fixture-panel>p{margin:.45rem 0 1rem}.fixture-list{gap:.65rem;display:grid}.fixture-list button{border:1px solid var(--color-border);background:var(--color-surface);min-height:4.5rem;color:var(--color-ink);font:inherit;text-align:left;cursor:pointer;border-radius:.85rem;gap:.2rem;padding:.85rem;display:grid}.fixture-list button:hover{border-color:var(--color-primary-soft)}.fixture-list span{color:var(--color-muted);font-size:.74rem;line-height:1.35}.conversion-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center;border-radius:1.5rem;justify-items:center;padding:3rem 1.25rem;display:grid}.conversion-card h1{max-width:19ch;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,7vw,2.7rem);line-height:1.1}.conversion-card>p:last-of-type{max-width:31rem;color:var(--color-muted);line-height:1.55}.conversion-spinner,.conversion-mark{border-radius:50%;place-items:center;width:3.5rem;height:3.5rem;margin-bottom:1.25rem;display:grid}.conversion-spinner{border:.4rem solid var(--color-primary-tint);border-top-color:var(--color-primary);animation:.9s linear infinite conversion-spin}.conversion-mark-error{color:#9b3224;background:#f8dfda;font-size:1.5rem;font-weight:900}@keyframes conversion-spin{to{transform:rotate(360deg)}}.readiness-card{border:2px solid var(--color-accent);background:var(--color-accent-tint);border-radius:1.3rem;align-items:center;gap:1rem;margin-bottom:1rem;padding:1.25rem;display:grid}.readiness-card.is-ready{border-color:var(--color-primary-soft);background:var(--color-primary-tint)}.readiness-score{background:var(--color-surface);width:5.25rem;height:5.25rem;color:var(--color-accent-strong);text-align:center;border-radius:50%;place-content:center;display:grid}.is-ready .readiness-score{color:var(--color-primary)}.readiness-score strong,.readiness-score span{display:block}.readiness-score strong{font-size:1.25rem}.readiness-score span{color:var(--color-muted);text-transform:uppercase;font-size:.68rem;font-weight:700}.readiness-kicker{color:var(--color-accent-strong);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .25rem;font-size:.75rem;font-weight:850}.is-ready .readiness-kicker{color:var(--color-primary)}.readiness-card h2{margin:0;font-size:1.2rem}.readiness-card p:last-child{color:var(--color-muted);margin:.35rem 0 0;font-size:.78rem;line-height:1.45}.readiness-explanation{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.25rem}.readiness-explanation summary{cursor:pointer;min-height:3rem;padding:.85rem 1rem;font-weight:750}.readiness-explanation-content{gap:1rem;padding:0 1rem 1rem;display:grid}.readiness-explanation-content h2{margin:0 0 .65rem;font-size:1rem}.readiness-category-list,.readiness-deduction-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.readiness-category-list li,.readiness-deduction-list li{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.readiness-category-list strong,.readiness-deduction-list strong{font-variant-numeric:tabular-nums;flex:none}.readiness-deduction-list strong{color:var(--color-accent-strong)}.review-section{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.25rem;margin-top:1rem;padding:1.25rem}.review-section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.review-section-heading .eyebrow{margin-bottom:.25rem}.review-section-heading>span{background:var(--color-accent-tint);min-width:2rem;height:2rem;color:var(--color-accent-strong);border-radius:50%;place-items:center;font-size:.8rem;font-weight:900;display:grid}.issue-list,.ingredient-review-list,.step-review-list{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.issue-list li{background:#fbf5e8;border-radius:.85rem;gap:.75rem;padding:.85rem;display:grid}.issue-list p{color:var(--color-ink);margin:.4rem 0 0;font-size:.82rem;line-height:1.45}.issue-list button{border:1px solid var(--color-primary-soft);min-height:2.75rem;color:var(--color-primary);font:inherit;cursor:pointer;background:#fff;border-radius:.7rem;padding:.55rem .8rem;font-size:.78rem;font-weight:800}.issue-guidance{color:var(--color-muted);font-size:.72rem;font-weight:750}.status-pill{background:var(--color-primary-tint);width:-moz-fit-content;width:fit-content;color:var(--color-primary);letter-spacing:.03em;text-transform:capitalize;border-radius:999px;padding:.28rem .55rem;font-size:.66rem;font-weight:850;display:inline-flex}.status-missing,.status-requires-confirmation{background:var(--color-accent-tint);color:var(--color-accent-strong)}.status-known,.status-ready{background:var(--color-primary-tint);color:var(--color-primary)}.review-fields,.step-edit-grid{gap:.9rem;display:grid}.ingredient-review-list li{border-top:1px solid var(--color-border);grid-template-columns:6.5rem minmax(0,1fr);align-items:center;gap:.35rem .75rem;padding:.7rem 0;display:grid}.ingredient-review-list li:first-child{border-top:0}.ingredient-review-list .status-pill{grid-column:2}.ingredient-quantity-control{grid-row:span 2;align-items:center;gap:.35rem;display:flex}.ingredient-quantity-control input{border:1px solid var(--color-border-strong);border-radius:.65rem;width:3.8rem;min-height:2.75rem;padding:.4rem}.ingredient-quantity-control input[aria-invalid=true]{border-color:var(--color-accent-strong)}.ingredient-quantity-control span{color:var(--color-muted);font-size:.7rem}.ingredient-quantity-qualitative{min-height:2.75rem}.ingredient-quantity-qualitative span{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:2.5rem;color:var(--color-text);border-radius:.65rem;align-items:center;padding:.4rem .65rem;font-size:.85rem;font-weight:700;display:inline-flex}.ingredient-confirm-button{grid-column:2;justify-self:start;min-height:2.75rem;padding:.55rem .8rem}.step-review-list>li{border-top:1px solid var(--color-border);grid-template-columns:2rem minmax(0,1fr);gap:.75rem;padding:1rem 0;display:grid}.step-review-list>li:first-child{border-top:0}.step-number{background:var(--color-primary);color:#fff;border-radius:50%;place-items:center;width:2rem;height:2rem;font-size:.75rem;font-weight:850;display:grid}.step-review-content>p{margin:0 0 .8rem;line-height:1.5}.compact-field input{min-height:2.85rem}.step-metadata{flex-wrap:wrap;gap:.35rem;margin-top:.75rem;display:flex}.step-metadata span{color:var(--color-muted);background:#f1eee7;border-radius:999px;padding:.25rem .5rem;font-size:.66rem}.completion-conditions{border-left:3px solid var(--color-primary-soft);background:var(--color-primary-tint);color:var(--color-ink);border-radius:.35rem;margin-top:.75rem;padding:.75rem;font-size:.75rem}.completion-conditions ul{margin:.35rem 0 0;padding-left:1.1rem}.kitchen-capacity-note{border:1px solid var(--color-border);background:#f8f7f3;border-radius:.9rem;gap:.25rem;padding:1rem;display:grid}.kitchen-capacity-note span{color:var(--color-muted);font-size:.78rem;line-height:1.5}.review-empty{color:var(--color-muted);font-size:.82rem}.structural-issues-section{background:#fff9f7;border-color:#d69a8e}.structural-issues-intro{color:var(--color-muted);margin:-.25rem 0 .9rem;font-size:.8rem;line-height:1.5}.structural-issue-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.structural-issue-list li{background:#fbeae6;border:1px solid #efd1ca;border-radius:.85rem;padding:.85rem}.structural-issue-list p{color:#772b20;margin:.45rem 0 0;font-size:.82rem;line-height:1.45}.status-warning,.status-error{color:#772b20;background:#f7d9d1}.validation-alert{color:#772b20;background:#fbeae6;border:1px solid #d69a8e;border-radius:.9rem;margin-top:1rem;padding:1rem;font-size:.8rem}.validation-alert ul{margin:.5rem 0 0;padding-left:1.2rem}.raw-source-panel{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.9rem;margin-top:1rem}.raw-source-panel summary{min-height:3.25rem;color:var(--color-primary);cursor:pointer;padding:.9rem 1rem;font-weight:800}.raw-source-panel pre{color:var(--color-muted);white-space:pre-wrap;margin:0;padding:0 1rem 1rem;font-family:inherit;font-size:.76rem;line-height:1.5;overflow:auto}.review-save-panel{background:var(--color-primary);color:#fff;border-radius:1.1rem;gap:1rem;margin-top:1rem;padding:1.25rem;display:grid}.review-save-panel>div:first-child{gap:.25rem;display:grid}.review-save-panel>div:first-child span{color:#ffffffbf;font-size:.78rem}.review-save-panel .secondary-button{color:#fff;border-color:#ffffff8c}.review-save-panel .save-error{color:#8f2e20;background:#fff0ec;grid-column:1/-1}.library-heading{gap:1rem;margin-bottom:1rem;display:grid}.library-heading .flow-heading{margin-bottom:0}.library-import-button{margin:0}.my-recipes-grid{gap:1rem;display:grid}.library-feedback{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-muted);text-align:center;justify-items:center;gap:.75rem;margin-bottom:1rem;display:grid}.library-feedback p{margin:0}.my-recipe-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.2rem;padding:1.25rem}.my-recipe-card-heading{justify-content:space-between;align-items:center;display:flex}.my-recipe-card-heading>strong{color:var(--color-primary)}.my-recipe-card h2{margin:.8rem 0;font-family:Georgia,Times New Roman,serif;font-size:1.45rem}.my-recipe-card dl{grid-template-columns:repeat(3,1fr);gap:.4rem;margin:0 0 1rem;display:grid}.my-recipe-card dl div{background:var(--color-primary-tint);border-radius:.7rem;padding:.6rem}.my-recipe-card dt{color:var(--color-muted);font-size:.64rem;font-weight:750}.my-recipe-card dd{margin:.2rem 0 0;font-size:.78rem;font-weight:800}.my-recipe-card .secondary-button{width:100%}.recipe-card-actions{gap:.55rem;display:grid}.destructive-text-button{color:#9b3224;background:0 0;border-color:#0000;width:100%}.destructive-text-button:hover{background:#fff0ec;border-color:#d8a297}.persistence-note{color:var(--text-muted);margin-top:.65rem;line-height:1.4;display:block}.persistence-banner,.plan-snapshot-note,.success-message{border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);background:color-mix(in srgb, var(--accent-soft) 68%, white);color:var(--text-strong);border-radius:.85rem;margin:1rem 0 0;padding:.85rem 1rem}.kitchen-capacities{border:0;margin:0;padding:0}.kitchen-capacities legend{color:var(--text-strong);margin-bottom:.35rem;font-weight:750}.kitchen-capacity-grid{gap:.85rem;margin-top:1rem;display:grid}.recent-meal-list{gap:.75rem;display:grid}.recent-meal-list button{border:1px solid var(--border);background:var(--surface);width:100%;min-height:4.5rem;color:var(--text-strong);text-align:left;border-radius:.9rem;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.recent-meal-list button:hover{border-color:var(--accent)}.recent-meal-list span:first-child{gap:.2rem;display:grid}.recent-meal-list small{color:var(--text-muted)}.system-recipe-details{border-top:1px solid var(--color-border);padding-top:.85rem}.system-recipe-details summary{cursor:pointer;min-height:2.75rem;padding-block:.65rem;font-weight:750}.system-recipe-details h3{margin:.85rem 0 .35rem;font-size:.95rem}.system-recipe-details ul,.system-recipe-details ol{margin:0;padding-left:1.25rem}.system-recipe-details li+li{margin-top:.3rem}@media (min-width:42rem){.kitchen-capacity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-controls span{display:block}.auth-page{grid-template-columns:minmax(0,1fr) minmax(19rem,.75fr);align-items:center;padding-top:3rem}.auth-page-single{display:block}.auth-card{padding:1.6rem}.import-layout{grid-template-columns:minmax(0,1.6fr) minmax(15rem,.7fr)}.readiness-card{grid-template-columns:auto 1fr;padding:1.5rem}.issue-list li{grid-template-columns:1fr auto;align-items:center}.review-fields,.step-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-save-panel,.library-heading{grid-template-columns:1fr auto;align-items:center}.my-recipes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-header{padding-top:1.6rem}.page-content{padding-top:2.25rem}.hero{grid-template-columns:minmax(0,1.35fr) minmax(16rem,.65fr);align-items:stretch;padding:2.5rem}.primary-action{width:auto;min-width:12rem}.action-grid{grid-template-columns:repeat(3,1fr)}.action-card{grid-template-columns:auto 1fr;align-content:start}.action-arrow{display:none}.flow-page{padding-top:2rem}.meal-form,.review-card{padding:1.75rem}.date-time-grid{grid-template-columns:1fr .7fr}.flow-progress small{font-size:.78rem}.recipe-grid{grid-template-columns:repeat(2,1fr)}.meal-summary-list{grid-template-columns:.55fr 1.8fr .55fr;align-items:stretch}.meal-summary-list>div{align-content:center}.plan-hero{padding:2rem}.plan-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.timeline-heading{grid-template-columns:1fr auto;align-items:end}.timeline-item{grid-template-columns:4.5rem 1.2rem minmax(0,1fr);gap:.85rem}.timeline-item article{padding:1.15rem 1.25rem}.plan-problem-card{padding:2rem}.cooking-mode-page,.cooking-complete-page{width:min(100% - 2rem,72rem)}.cooking-status-header{grid-template-columns:1fr auto;padding:1.5rem}.cooking-status-row{grid-column:1/-1}.paused-banner{grid-template-columns:1fr auto;align-items:center}.recovery-summary{grid-template-columns:minmax(0,1.4fr) minmax(14rem,.6fr);align-items:center;padding:1.15rem 1.25rem}.current-action-section,.timer-section,.next-actions-section{padding:1.25rem}.current-action-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.current-action-meta>div:last-child{grid-column:auto}.cooking-controls{grid-template-columns:repeat(5,1fr)}.completion-summary{grid-template-columns:repeat(4,1fr)}}@media (min-width:62rem){.recipe-grid{grid-template-columns:repeat(3,1fr)}.cooking-layout{grid-template-columns:minmax(0,1.65fr) minmax(18rem,.75fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.admin-layout{gap:1rem;width:min(100% - 2rem,76rem);margin:0 auto;padding:0 0 3rem;display:grid}.admin-sidebar,.admin-workspace,.admin-detail,.admin-message{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.25rem}.admin-sidebar{padding:1rem}.admin-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:1rem;display:grid}.admin-sidebar button,.admin-table button,.admin-detail-heading button,.admin-search button{border:1px solid var(--color-border-strong);min-height:2.75rem;color:var(--color-ink);cursor:pointer;background:#fff;border-radius:.75rem;font-weight:700}.admin-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}.admin-filter-row label{min-width:0;color:var(--color-muted);gap:.35rem;font-size:.8rem;font-weight:700;display:grid}.admin-filter-row select{border:1px solid var(--color-border-strong);background:#fff;border-radius:.7rem;width:100%;min-height:2.75rem}.admin-sidebar button.active{border-color:var(--color-primary);background:var(--color-primary-tint);color:var(--color-primary)}.admin-workspace,.admin-message{min-width:0;padding:1.25rem}.admin-message{width:min(100% - 2rem,36rem);margin:2rem auto}.admin-message .primary-action{margin-top:1rem;text-decoration:none;display:inline-flex}.admin-page-heading h1,.admin-message h1,.admin-detail h2{margin:0;font-family:Georgia,Times New Roman,serif}.admin-page-heading>p:last-child{max-width:46rem;color:var(--color-muted);line-height:1.55}.admin-notice{background:var(--color-primary-tint);border-radius:.8rem;padding:.9rem 1rem;line-height:1.45}.admin-notice.error{color:#742f1b;background:#f8dfd8}.admin-search{gap:.4rem;margin:1.25rem 0;display:grid}.admin-search>div{gap:.5rem;display:flex}.admin-search input,.admin-form input,.admin-form select,.admin-form textarea{border:1px solid var(--color-border-strong);width:100%;min-height:2.75rem;color:var(--color-ink);background:#fff;border-radius:.7rem;padding:.65rem .75rem}.admin-search input{min-width:0}.admin-search button{flex:none;padding:.5rem 1rem}.admin-table-wrap{border:1px solid var(--color-border);border-radius:.9rem;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:40rem}.admin-table th,.admin-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:.8rem}.admin-table th{background:var(--color-primary-tint);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}.admin-table small{overflow-wrap:anywhere;max-width:15rem;color:var(--color-muted);margin-top:.25rem;display:block}.admin-detail{margin-top:1rem;padding:1rem;scroll-margin-top:1rem}.admin-detail:focus{outline:3px solid var(--color-focus);outline-offset:3px}.admin-detail-heading{justify-content:space-between;align-items:start;gap:1rem;display:flex}.admin-key-values,.admin-card-list{gap:.75rem;margin:1rem 0 0;display:grid}.admin-key-values>div{border:1px solid var(--color-border);background:#fff;border-radius:.75rem;min-width:0;padding:.85rem}.admin-key-values dt{color:var(--color-muted);letter-spacing:.03em;text-transform:uppercase;font-size:.75rem;font-weight:750}.admin-key-values dd{overflow-wrap:anywhere;margin:.35rem 0 0}.admin-key-values .admin-key-values{margin-top:.5rem}.admin-form{gap:.85rem;margin-top:1rem;display:grid}.admin-form label{color:var(--color-muted);gap:.35rem;font-size:.85rem;font-weight:700;display:grid}.admin-form textarea{resize:vertical}.admin-form .primary-action{margin:0}@media (min-width:48rem){.admin-layout{grid-template-columns:13rem minmax(0,1fr);align-items:start}.admin-sidebar{position:sticky;top:1rem}.admin-sidebar nav{grid-template-columns:1fr}.admin-form,.admin-key-values{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form-wide,.admin-form .primary-action{grid-column:1/-1}}
