:root{-webkit-text-size-adjust:100%;color-scheme:light;--l:#f8f5ef;--d:#fff;--j:#e9efe4;--k:#27332a;--f:#626b60;--e:#e2e3d8;--g:#527653;--a:#385d3e;--b:#fff;--c:#dd9254;--i:#f3ece3;--m:#a62f27;--h:0 2px 8px #27332a08}:root.dark{color-scheme:dark;--l:#191d18;--d:#242b23;--j:#303b2b;--k:#f1f4ec;--f:#bbc5b5;--e:#46513f;--g:#b2cda1;--a:#b2cda1;--b:#192318;--c:#e7aa79;
--i:#302b25;--m:#ffb3ab}body{overflow-wrap:anywhere;min-height:100dvh;background:radial-gradient(ellipse at top right,var(--i),transparent 65%),var(--l);font:.9375rem/1.5 Inter,ui-rounded,SF Pro Rounded,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}h1{margin-bottom:12px;font-size:clamp(1.6rem,3vw,2.15rem);line-height:1.2;letter-spacing:-.04em}h2{font-size:1.1rem}
h3{font-size:1rem;margin:0 0 8px}input,select,textarea{font:inherit}button{min-height:48px;border-radius:12px;padding:10px 14px;color:var(--b)}button:disabled{background:var(--j);color:var(--f);cursor:not-allowed}.secondary{background:var(--d);color:var(--k);border-color:var(--e)}button:hover:not(:disabled){border-color:var(--g)}button[aria-pressed=true]{background:var(--j);
color:var(--k)}a{color:var(--a)}:focus-visible{outline:3px solid var(--g);outline-offset:3px}summary{min-height:44px;padding:10px 0;cursor:pointer;font-weight:600}[hidden]{display:none!important}.brand{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:calc(14px + env(safe-area-inset-top)) 16px 10px}.brand a{display:flex;gap:8px;align-items:center;
font-size:1.45rem;font-weight:700;color:var(--k);text-decoration:none;margin-right:auto}.brand img{border-radius:11px;width:40px;height:40px}.app-shell{max-width:1180px;padding:8px 16px calc(7.5rem + env(safe-area-inset-bottom));margin:auto}.icon{display:inline-block;width:24px;height:24px;flex:0 0 auto;background:currentColor;mask:var(--n) center/contain no-repeat;
-webkit-mask:var(--n) center/contain no-repeat}.icon-plan{--n:url(icons/plan.svg)}.icon-ideas{--n:url(icons/ideas.svg)}.icon-history{--n:url(icons/history.svg)}.icon-discover{--n:url(icons/discover.svg)}.icon-basket{--n:url(icons/basket.svg)}.icon-settings{--n:url(icons/settings.svg)}.icon-plate{--n:url(icons/plate.svg)}.icon-leaf{--n:url(icons/leaf.svg)}.icon-chevron{
--n:url(icons/chevron.svg)}.icon-bell{--n:url(icons/bell.svg)}.icon-button,.settings-trigger{display:flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:9px}.quick-add{font-size:0;width:44px;min-height:44px;padding:0}.quick-add:after{content:"+";font-size:1.5rem}#notices-open{position:relative}#notice-count{position:absolute;
top:-5px;right:-3px;border-radius:12px;background:var(--g);color:var(--b);font-size:.65rem;padding:1px 4px}.main-nav{position:fixed;bottom:calc(8px + env(safe-area-inset-bottom));left:12px;right:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px;background:color-mix(in srgb,var(--d) 96%,transparent);border:1px solid var(--e);
border-radius:22px;z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 30px #27332a12}.main-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 2px;min-width:0;min-height:56px;border:0;background:transparent;color:var(--k);font-size:.75rem}.main-nav button[aria-current]{
background:var(--g);color:var(--b)}.view-header{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:12px;margin-bottom:18px}.view-header p,.hint,small{color:var(--f)}.eyebrow{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--g);font-weight:750}.field{min-width:0;margin:0 0 12px}.field :is(input,select,textarea){
min-width:0;font-size:1rem;color:var(--k);background:var(--d);min-height:48px;border-radius:12px;max-width:100%}input[type=date]{appearance:none;min-inline-size:0;max-inline-size:100%;display:block;overflow:hidden}input::-webkit-date-and-time-value{min-width:0;text-align:inherit}.field select{min-height:3rem;height:auto;line-height:normal}.check-field{display:flex;
align-items:center;min-height:44px;gap:8px;margin:0}.check-field input{width:22px;height:22px;flex-shrink:0;accent-color:var(--g)}fieldset{border:1px solid var(--e);border-radius:12px;margin-bottom:16px}section,article,details,.dish-info,fieldset{min-width:0}.plan-header{align-items:center;margin-bottom:14px}.plan-header h1{margin:0}.week-menu.secondary{font-size:.85rem;
font-weight:400;padding:4px 0;border:0;background:transparent;color:var(--f)}summary::-webkit-details-marker{display:none}.week-secondary{display:grid;grid-template-columns:1fr 1fr}.plan-header .week-nav button{background:var(--d);color:var(--k)}.plan-header .week-nav button:last-child{background:var(--g);color:var(--b)}.planning-progress{display:flex;flex-wrap:wrap;
align-items:center;gap:7px 18px;margin-bottom:18px;font-size:.85rem}.planning-progress progress{position:absolute;width:1px;height:1px;clip-path:inset(50%)}.progress-segments{display:flex;flex:0 1 320px;gap:5px;height:11px}.progress-segments span{flex:1;background:var(--e);border-radius:6px}.filled{background:var(--g)!important}.week-layout,.week-days,.library-grid{
display:grid;gap:12px}.basket,.day-card,.dish-card,.season-card,.login-panel,.recipe-link{border:1px solid var(--e);border-radius:16px;background:var(--d);box-shadow:var(--h)}.basket{padding:12px 14px;background:linear-gradient(135deg,var(--j),var(--i))}.basket summary{display:flex;gap:10px;align-items:center;list-style:none;padding:0;font-size:.9rem}.basket
summary:after{content:"›";font-size:24px;margin-left:auto;color:var(--a)}.basket details[open]>summary:after{transform:rotate(90deg)}.basket summary small,.season-card,.matrix-heading{display:none}.basket-body{padding-top:12px}.basket-body>button{width:100%;border-style:dashed}.day-card{position:relative;padding:10px 12px}.day-card h2{display:flex;align-items:baseline;
flex-wrap:wrap;gap:5px;font-size:.95rem;margin:0 80px 8px 0;min-height:32px;padding-top:4px}.day-date{font-size:.78rem;font-weight:500}.day-card.today{border-color:var(--g)}.day-card.today h2{color:var(--a)}.dish-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;padding:14px;margin-bottom:12px}.dish-info{display:grid;align-content:center;gap:4px}
.dish-photo{position:relative;flex:0 0 64px;width:64px;height:64px;display:grid;place-items:center;background:var(--j);color:var(--g);border-radius:10px;overflow:hidden}.dish-photo img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.dish-photo.large{width:100%;height:180px;flex-basis:auto;margin-bottom:16px}.title-button{border:0;background:transparent;
color:var(--k);font-weight:700;padding:0;min-height:44px;min-width:44px;text-align:left}.pill,.meal-label{display:inline-block;width:fit-content;border-radius:6px;background:var(--j);padding:1px 7px;font-size:.75rem}.meal-label{background:var(--i)}.plan-entry{display:grid;grid-template-columns:86px minmax(0,1fr) 32px;gap:8px 10px;padding:0;border:0;box-shadow:none;
align-items:center;margin:0}.plan-entry+.plan-entry{margin-top:14px;padding-top:12px;border-top:1px solid var(--e)}.plan-entry .dish-photo{width:86px;height:72px}.plan-entry .dish-info{display:grid;justify-items:start;gap:3px}.plan-entry .title-button{line-height:1.25}.entry-more{padding:0;width:44px;justify-self:end;border:0!important;background:transparent!important;
color:var(--k)!important}.entry-action{grid-column:1/-1}.entry-action button,.meal-entries>button{width:100%;min-height:44px;background:transparent;color:var(--a);font-size:.85rem}.entry-action button{padding:6px 10px}.lunch{margin-bottom:10px}.lunch>summary{font-size:.72rem;font-weight:500;position:absolute;right:10px;top:4px;padding:10px 2px;color:var(--f)}
.lunch:not([open]){margin:0}.lunch .meal-entries{padding-bottom:10px}.dinner>h3{display:none}.meal-entries>button{border:1px dashed var(--e)}.empty{display:grid;justify-items:start;gap:8px;border:1px dashed var(--e);border-radius:16px;padding:22px;background:var(--d)}.library-grid>.dish-card{margin:0}.filters{display:grid;grid-template-columns:minmax(0,1fr) auto;
align-items:end;gap:12px;margin:18px 0}.empty p,.dish-info p,.card-body p,.filters .field{margin:0}#connection,#update-banner{padding:12px 14px;background:var(--j);border-radius:12px;margin-bottom:14px}#connection{border:1px solid var(--c)}#update-banner{display:flex;align-items:center;flex-wrap:wrap;gap:8px}dialog{width:min(620px,calc(100% - 24px));max-height:calc(100dvh
- 32px);padding:22px;border:1px solid var(--e);border-radius:24px;background:var(--d);color:var(--k);overflow-y:auto;overscroll-behavior:contain;transform:translateY(var(--sheet-drag-y,0))}dialog::backdrop{background:#19231888}.sheet-header{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:16px}.sheet-header h2{font-size:1.25rem;
margin:8px 0}.sheet-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}#sheet-error{color:var(--k)}.image-preview{max-width:100%;max-height:200px;object-fit:contain;border-radius:12px}.recipe-link{padding:16px;margin:12px 0}button.danger{color:var(--m)}.notice{padding:12px 0;border-bottom:1px solid var(--e)}.notice p{margin:5px 0}.notice time{font-size:.7rem;
color:var(--f)}.notice.unread{border-left:3px solid var(--g);padding-left:12px}.update-steps{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none;font-size:.8rem;color:var(--f)}.update-steps li{padding:8px;background:var(--j);border-radius:8px}.update-steps li.active{background:var(--g);color:var(--b)}#planly-status:not(:empty){position:fixed;z-index:30;
bottom:calc(92px + env(safe-area-inset-bottom));left:16px;right:16px;max-width:620px;margin:auto;padding:10px 14px;background:var(--k);color:var(--l);border-radius:14px;box-shadow:var(--h);font-size:.85rem;display:flex;align-items:center;justify-content:space-between;gap:12px}#planly-status button{background:transparent;color:inherit;border-color:currentColor;
white-space:nowrap}@media(min-width:900px){body{background:linear-gradient(90deg,var(--i) 210px,var(--l) 210px)}.brand{position:fixed;top:16px;left:0;width:210px;padding:22px;flex-wrap:wrap}.brand a{font-size:1.65rem}.brand img{width:48px;height:48px}.quick-add{display:none}#notices-open{position:fixed;bottom:88px;left:18px}.main-nav{inset:140px auto auto 12px;
width:186px;display:flex;flex-direction:column;box-shadow:none;background:none;border:0;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;gap:6px}.main-nav button{flex-direction:row;justify-content:start;padding:12px;gap:14px;font-size:.95rem;min-height:54px}.main-nav button[aria-current]{background:var(--j);color:var(--k)}.app-shell{margin-left:210px;
padding:28px 28px 48px}.week-layout{display:flex;flex-flow:row-reverse wrap;align-items:start;gap:18px}.week-aside{flex:1 1 210px}.basket{padding:16px}.basket summary{align-items:start}.basket summary strong{font-size:1.25rem;line-height:1.25}.basket-count,.basket summary small{display:block;font-size:.75rem;font-weight:400;margin-top:4px}.week-days{flex:999
1 580px;gap:0;border:1px solid var(--e);border-radius:18px;background:var(--d);overflow:hidden}.matrix-heading,.day-card{display:grid;grid-template-columns:66px minmax(0,1fr) minmax(0,1.5fr);gap:0}.matrix-heading{background:var(--i);font-weight:650;text-align:center;padding:12px 0}.day-card{border:0;border-bottom:1px solid var(--e);border-radius:0;padding:0;
box-shadow:none;background:transparent;min-height:84px}.day-card:last-child{border-bottom:0}.day-card h2{flex-direction:column;align-items:start;justify-content:center;gap:0;padding:10px 8px;margin:0}.day-date{font-size:.65rem;color:var(--f)}.lunch,.dinner{border:0;border-left:1px solid var(--e);padding:8px;margin:0}.lunch>summary{position:absolute;width:1px;
height:1px;overflow:hidden;clip-path:inset(50%);padding:0}.lunch>summary:focus-visible{position:static;width:auto;height:auto;clip-path:none}.lunch .meal-entries{padding:0}.plan-entry{grid-template-columns:72px minmax(0,1fr) 28px;gap:6px 8px}.plan-entry .dish-photo{width:72px;height:62px}.plan-entry:not(.basket-entry) .entry-action,.plan-entry .meal-label{display:none}
.meal-entries>button{border-color:transparent;min-height:62px}.basket-entry{grid-template-columns:48px minmax(0,1fr) 28px}.basket-entry .dish-photo{width:48px;height:48px}.season-card{display:block;background:var(--i);padding:16px;margin-top:16px}.season-card .icon{color:var(--c);vertical-align:middle}.season-card button{width:100%}.library-grid{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}
#planly-status:not(:empty){bottom:24px;left:238px}}@media(max-width:899px){.settings-trigger>span:last-child{display:none}.plan-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;text-align:center}.plan-header>div:first-child{grid-column:2;grid-row:1;min-width:0}.plan-header h1{font-size:1.4rem}.week-menu.secondary{font-size:.75rem}.week-nav{
display:contents}.week-nav>button{min-height:44px;padding:0}.week-nav>button:first-child{grid-column:1;grid-row:1}.week-nav>button:nth-child(2){grid-column:3;grid-row:1}.week-nav>button:last-child,.week-label{display:none}.progress-segments{flex-basis:100%}}@media(max-width:600px){dialog{margin:auto 0 0;width:100%;max-width:none;max-height:92dvh;padding-bottom:calc(22px
+ env(safe-area-inset-bottom));border-radius:24px 24px 0 0}dialog:before{content:"";display:block;width:40px;height:4px;border-radius:4px;background:var(--e);margin:-8px auto 12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.filter-extra>summary{list-style:none;border:1px
solid var(--e);border-radius:12px;padding:10px 14px;background:var(--d);min-height:48px}.filter-body{display:grid;gap:12px;padding-top:12px}.filter-extra[open]{grid-column:1/-1}.suggestions{list-style:none;padding:4px;margin:4px 0;background:var(--d);border:1px solid var(--e);border-radius:12px}.suggestions li{padding:12px;cursor:pointer}.suggestions li:hover,
.suggestions [aria-selected=true]{background:var(--j)}.card-body{grid-column:1/-1;display:grid;gap:10px}.card-body p:empty{display:none}.card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.card-actions button{min-height:44px;padding:8px;font-size:.82rem}.card-actions [data-action="history.edit"]{grid-column:1/-1}.card-actions:has([data-action="\
dish.favorite"]){grid-template-columns:44px 1fr 1fr}.option-list{display:grid;gap:0}.option-list button{text-align:left;border:0;border-bottom:1px solid var(--e);border-radius:0}.option-list [data-action="plan.edit"]{color:var(--a)}.discovery-start{display:grid;gap:16px;padding:18px;background:var(--j);border-radius:16px}.discovery-start p,.discovery-start h2{
margin:0}.discovery-start>.actions{display:grid;grid-template-columns:1fr 1fr}.discovery-start>.actions:first-of-type{grid-template-columns:1fr}#confirmation{width:min(400px,calc(100% - 32px));margin:auto;border-radius:20px}#confirmation:before{display:none}#confirmation .sheet-actions{display:grid;grid-template-columns:1fr 1fr}button[data-danger]{color:var(--m)}
