.app.container{max-width:var(--maxw-app)}.lead-link{white-space:nowrap}.app-note{margin-top:2em;max-width:var(--maxw);color:var(--color-muted);font-size:.85em}.views{position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;gap:.3em;margin:0 0 1.3em;padding:.5em 0;background:var(--color-page)}.view-tab{font-family:var(--font-display);font-size:.95rem;font-weight:500;padding:.45em 1.05em;border:none;border-radius:999px;background:transparent;color:var(--color-muted);cursor:pointer}.plan-layout{display:grid;grid-template-columns:1fr;gap:1.5em}.plan-main,.plan-aside{min-width:0}@media(min-width:1080px){.plan-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start}.plan-aside{position:sticky;top:4.2em;max-height:calc(100vh - 5em);overflow:auto}}.install-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5em;margin:0 0 1em;padding:.7em .9em;background:var(--color-brand-soft);border:1px solid var(--color-brand);border-radius:var(--radius);font-size:.9em}.install-actions{display:inline-flex;gap:.4em;flex-shrink:0}.tier{border:1px solid var(--color-border);border-radius:var(--radius);padding:.7em 1em 1em;margin:0 0 1.4em;background:var(--color-bg)}.tier legend{font-weight:600;padding:0 .4em}.tier-options{display:flex;gap:.5em;flex-wrap:wrap}.tier-option{display:inline-flex;align-items:center;gap:.35em;border:1px solid var(--color-border);border-radius:999px;padding:.4em 1em;cursor:pointer}.tier-option:hover{border-color:var(--color-brand)}.tier-option.is-selected{border-color:var(--color-brand);background:var(--accent-bg);font-weight:600}.days{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1.1em;align-items:start}.day{border:1px solid var(--color-border);border-radius:var(--radius);padding:.9em .95em 1em;background:var(--color-bg);box-shadow:var(--shadow-card)}.day-header{display:flex;align-items:center;gap:.5em;margin-bottom:.7em}.day-heading{display:flex;align-items:center;gap:.5em;flex:1 1 auto;min-width:0}.day-date-input{font-size:.95em;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.25em .45em;background:var(--color-bg)}.day-heading-text{font-family:var(--font-display);font-size:1.15em;font-weight:700}.balance{container-type:inline-size;container-name:balance;list-style:none;margin:0 0 .8em;padding:0;display:flex;flex-direction:column;gap:.45em}.balance-row{display:grid;grid-template-columns:var(--col-label-w) 1fr auto;align-items:center;gap:.6em;padding:.35em .6em;border-radius:var(--radius-sm)}.balance-row.status-under{background:var(--status-under-bg)}.balance-row.status-ok{background:var(--status-ok-bg)}.balance-row.status-over{background:var(--status-over-bg)}.balance-label{display:flex;align-items:center;gap:.4em;font-size:.88em;font-weight:500;white-space:nowrap}.balance-track{position:relative;height:12px;border-radius:999px;background:var(--color-bg);overflow:hidden}.balance-target{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--color-text) 8%,transparent);border-left:1px dashed color-mix(in srgb,var(--color-text) 28%,transparent);border-right:1px dashed color-mix(in srgb,var(--color-text) 28%,transparent)}.balance-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;transform-origin:left;animation:balance-grow .85s cubic-bezier(.22,1,.36,1) both}@keyframes balance-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.balance-value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:.8em;white-space:nowrap;text-align:right}.balance-now{font-size:1.3em;font-weight:700}.balance-range{color:var(--color-muted-strong);font-weight:500;font-family:var(--font-sans)}.balance-status{display:inline-block;font-size:.9em;font-weight:700;padding:.1em .55em;border-radius:999px;margin-left:.4em;color:var(--status-ink)}.status-under .balance-status{background:var(--status-under)}.status-ok .balance-status{background:var(--status-ok)}.status-over .balance-status{background:var(--status-over)}@media(prefers-reduced-motion:reduce){.balance-fill{animation:none}}@container balance (max-width: 420px){.balance-row{grid-template-columns:1fr auto;grid-template-areas:"label value" "track track";column-gap:.6em;row-gap:.4em}.balance-label{grid-area:label}.balance-value{grid-area:value}.balance-track{grid-area:track}}.subheading{font-family:var(--font-display);font-size:.86rem;font-weight:700;color:var(--color-brand)}.meal-section{margin-bottom:.6em}.meal-heading-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:.6em;margin:.5em 0 .3em}.meal-heading{margin:0}.meal-subtotal{font-size:.8em;color:var(--color-muted)}.meal-add{margin-top:.2em;border-style:dashed}.entries{list-style:none;margin:0 0 .3em;padding:0;display:flex;flex-direction:column;gap:.3em}.entry{display:flex;flex-direction:column;gap:.4em;padding:.45em .55em;background:var(--color-page);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.entry-main{display:flex;flex-wrap:wrap;align-items:center;gap:.4em}.entry-cat,.entry-dish,.entry-sv{font-size:.95rem;padding:.35em .45em;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)}.entry-cat{max-width:8em}.entry-dish{flex:1 1 8em;min-width:6em}.entry-sv{width:5em;font-variant-numeric:tabular-nums}.entry-recipe{display:flex;flex-wrap:wrap;align-items:center;gap:.3em .6em}.entry-recipe-input{flex:1 1 12em;min-width:8em;font-size:.85rem;padding:.3em .45em;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)}.entry-recipe-link{font-size:.82em;white-space:nowrap}.entry.entry-collapsed{flex-direction:row;align-items:center;padding-block:.1em}.entry.entry-editing{border-color:color-mix(in srgb,var(--color-brand) 40%,var(--color-border))}.entry-summary{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:.5em;min-height:44px;padding:.2em .1em;border:none;background:transparent;font:inherit;text-align:left;cursor:pointer}.entry-summary-dish{flex:1 1 auto;min-width:3.5em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.entry-summary-sv{flex:none;font-variant-numeric:tabular-nums;font-weight:600}.entry-summary-chevron{flex:none;color:var(--color-muted);font-size:1.2rem;line-height:1}.entry-close{align-self:flex-start}.entry-form{display:flex;flex-wrap:wrap;gap:.5em;align-items:flex-end;margin-top:.6em;padding:.7em;background:var(--color-surface);border-radius:var(--radius-sm)}.field{display:flex;flex-direction:column;gap:.2em;font-size:.8em}.field span{color:var(--color-muted)}.field select,.field input{font-size:1rem;padding:.45em .5em;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)}.field-sv input{width:5em}.field-dish{flex:1 1 10em}.field-dish input{width:100%}.field-recipe{flex:1 1 100%}.field-recipe input{width:100%}.entry-form .ingredients{flex:1 1 100%}.btn-add,.btn-add-day{font-size:1rem;padding:.55em 1.1em;border:1px solid var(--color-brand);border-radius:var(--radius-sm);background:var(--color-brand);color:var(--color-brand-ink);cursor:pointer}.btn-add:hover,.btn-add-day:hover{filter:brightness(1.06)}.btn-add-day:disabled{opacity:.5;cursor:not-allowed}.add-day{display:flex;align-items:center;flex-wrap:wrap;gap:.5em;margin-top:1.2em}.add-day-count{font-size:.85em;color:var(--color-muted)}.day-date-note{font-size:.82em;color:var(--color-muted)}.btn-quiet,.btn-danger{font-size:.85em;padding:.35em .7em;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-muted);cursor:pointer}.btn-quiet:hover{border-color:var(--color-muted);color:var(--color-text)}.btn-danger:hover{border-color:var(--status-over);color:var(--status-over)}.app-error button+button{margin-left:.5em}.examples{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:.2em 1em .9em;font-size:.9em}.examples-heading{margin:0}.examples-toggle{display:flex;align-items:center;gap:.4em;width:100%;padding:.6em 0;border:none;background:transparent;font-family:var(--font-display);font-size:1em;font-weight:700;color:var(--color-text);text-align:left;cursor:pointer}.examples-caret{color:var(--color-muted);font-size:.85em}.examples-cat{margin-top:.4em}.examples-cat-name{margin:.4em 0 .2em}.examples-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15em}.examples-list li{display:flex;justify-content:space-between;gap:.6em;padding:.15em 0;border-bottom:1px dashed var(--color-border)}.examples-dish{color:var(--color-text)}.examples-sv{flex-shrink:0;font-variant-numeric:tabular-nums;color:var(--color-muted)}.ingredients{padding-left:.2em}.ingredient-list{list-style:none;margin:0 0 .3em;padding:0;display:flex;flex-wrap:wrap;gap:.3em}.ingredient-item{display:inline-flex;align-items:center;gap:.2em;font-size:.85em;padding:.12em .25em .12em .6em;background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px}.btn-x{padding:0 .35em;line-height:1.4}.ingredient-form{display:flex;flex-wrap:wrap;gap:.3em;align-items:center}.ingredient-form input{font-size:.9rem;padding:.35em .45em;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)}.ingredient-name{flex:1 1 8em;min-width:6em}.ingredient-amount{width:4.5em}.ingredient-unit{width:5em}.ingredient-toggle{font-size:.8em}.ingredient-panel{display:flex;flex-direction:column;gap:.35em}.ingredient-section{margin:0;font-size:.85em;font-weight:600}.ingredient-hint{margin:0;font-size:.78em;color:var(--color-muted)}.shopping,.sync{max-width:var(--maxw);margin-inline:auto}.day-picker{border:1px solid var(--color-border);border-radius:var(--radius);padding:.6em .9em .9em;margin:0 0 1em;background:var(--color-bg)}.day-picker legend{font-size:.9em;color:var(--color-muted);padding:0 .4em}.day-picker-options{display:flex;flex-wrap:wrap;gap:.5em 1em}.day-pick{display:inline-flex;align-items:center;gap:.3em;cursor:pointer}.field-scale{margin-bottom:1em}.field-scale input{font-size:1rem;padding:.45em .5em;border:1px solid var(--color-border);border-radius:var(--radius-sm);width:6em}.shopping-list{list-style:none;margin:0 0 1.2em;padding:0;display:flex;flex-direction:column;gap:.3em}.shopping-item{display:flex;justify-content:space-between;gap:.5em;padding:.45em .7em;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.shopping-amount{font-variant-numeric:tabular-nums;color:var(--color-muted)}.md-export{margin-top:.5em}.md-head{display:flex;align-items:center;justify-content:space-between;gap:.5em;margin-bottom:.3em;font-size:.85em;color:var(--color-muted)}.md-note{margin:0 0 .3em;font-size:.8em;color:var(--status-over)}.md-text{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;padding:.6em;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);resize:vertical}.exports{display:flex;flex-direction:column;gap:1.2em;margin-top:1.2em}.export-group{display:flex;flex-direction:column;gap:.5em}.export-title{margin:0;font-size:.95rem;font-weight:700}.export-actions{display:flex;flex-wrap:wrap;gap:.5em}.export-note{margin:0;font-size:.78em;color:var(--color-muted)}.archive{max-width:var(--maxw);margin-inline:auto}.archive-list{list-style:none;margin:.8em 0 0;padding:0;display:flex;flex-direction:column;gap:.5em}.archive-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.4em .8em;padding:.6em .8em;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius)}.archive-header{display:flex;flex-direction:column;gap:.15em;min-width:0}.archive-day-label{font-weight:700}.archive-summary{font-size:.82em;color:var(--color-muted)}.archive-actions{display:flex;gap:.5em}.sync-caution{margin-top:0}.sync-code{display:flex;flex-direction:column;gap:.2em;margin:0 0 1em}.sync-code-label{font-size:.85em;color:var(--color-muted)}.sync-code-value{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.3rem;letter-spacing:.12em;padding:.35em .5em;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);user-select:all}.sync-actions{display:flex;flex-wrap:wrap;gap:.5em;margin-bottom:1em}.sync-existing{display:flex;flex-wrap:wrap;gap:.5em;align-items:flex-end;margin-top:1.2em}.sync-existing input{font-size:1rem;padding:.45em .5em;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.sync-status{margin:.5em 0 0;font-size:.9em;color:var(--status-ok)}.sync-status.is-error{color:var(--status-over)}.app-intro{margin-bottom:1.2em}.app-intro h1{margin:0 0 .15em;font-size:1.5rem;letter-spacing:.01em}.app-intro .lead{margin:0 0 1em;max-width:var(--maxw);color:var(--color-muted);font-size:.95em}.app-usage{margin-top:2.5em;padding-top:1.5em;border-top:1px solid var(--color-border)}.app-usage h2{font-size:1.15rem;margin:1.2em 0 .6em}.app-usage h2:first-child{margin-top:0}.app-usage ul{margin:0;padding-left:1.2em}.app-usage li{margin:.5em 0}.app-examples{list-style:none;padding-left:0}.app-examples li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4em .7em}.app-examples-note{color:var(--color-muted-strong);font-size:.95rem}
