@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap";
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4f6667dd39116621-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07935285219a259d-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f58031ded4338640-s.2gwoz23eiro2t.woff2)format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/77814b00d5ca94a4-s.0i3h3th1vs4m7.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/605ce01b664af129-s.p.0zr6hhvz-h9nw.woff2)format("woff2");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}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.T19VSG_className{font-family:Geist,Geist Fallback;font-style:normal}.T19VSG_variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b0c6b664fd57c2c6-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6e342921ee4dcd9d-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bb852295097cd96-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9eb5a876700c0028-s.2jyz_zw3a8jit.woff2)format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2a04751c893bf294-s.30bdpjkrtcces.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07a39a8a4660cc7c-s.p.1v5bejj26fx9h.woff2)format("woff2");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}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}._8Li5zG_className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}._8Li5zG_variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f7f5f0;--card:#fffefa;--surface:#f1efe8;--surface-2:#e8e5dd;--ink:#292e29;--ink-soft:#475569;--muted:#777e74;--accent:#476b56;--accent-hover:#34533f;--accent-soft:#e9f1ec;--on-accent:#fff;--border:#e7e5dc;--border-strong:#d6d0c5;--link:#2563eb;--info-bg:#eff6ff;--info-border:#bfdbfe;--warn:#b45309;--warn-bg:#fffbeb;--warn-border:#f5d7a1;--danger:#a33a2b;--danger-bg:#f6e7e4}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#161917;--card:#1f2320;--surface:#272c28;--surface-2:#30362f;--ink:#e7e9e3;--ink-soft:#c9cec5;--muted:#a0a69c;--accent:#84b394;--accent-hover:#a2c9ae;--accent-soft:#263a2d;--on-accent:#10160f;--border:#353b35;--border-strong:#4a5249;--link:#8ab4ff;--info-bg:#1d2a3d;--info-border:#2f4a6e;--warn:#f2b45c;--warn-bg:#352a14;--warn-border:#6b5222;--danger:#f0958a;--danger-bg:#3a2220}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#161917;--card:#1f2320;--surface:#272c28;--surface-2:#30362f;--ink:#e7e9e3;--ink-soft:#c9cec5;--muted:#a0a69c;--accent:#84b394;--accent-hover:#a2c9ae;--accent-soft:#263a2d;--on-accent:#10160f;--border:#353b35;--border-strong:#4a5249;--link:#8ab4ff;--info-bg:#1d2a3d;--info-border:#2f4a6e;--warn:#f2b45c;--warn-bg:#352a14;--warn-border:#6b5222;--danger:#f0958a;--danger-bg:#3a2220}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--background);color:var(--ink);font-family:DM Sans,sans-serif}button,textarea{font:inherit}.memory-shell{width:min(720px,100%);margin:0 auto;padding:44px 24px 28px}.memory-header{align-items:center;gap:14px;margin-bottom:36px;display:flex}.memory-mark{background:var(--accent);width:48px;height:48px;color:var(--on-accent);border-radius:16px;place-items:center;font-family:Playfair Display,serif;font-size:28px;display:grid}.memory-header h1{margin:0;font-family:Playfair Display,serif;font-size:28px;font-weight:600}.memory-header p,.hint{color:var(--muted);font-size:13px;line-height:1.6}.memory-header p{margin:4px 0 0}.capture-card,.recent-card{border:1px solid var(--border);background:var(--card);border-radius:22px;padding:28px;box-shadow:0 8px 28px #292e2908}.section-label{color:var(--accent);letter-spacing:1.6px;font-size:10px;font-weight:700}.capture-card h2,.recent-card h2{margin:12px 0 0;font-family:Playfair Display,serif;font-size:25px;font-weight:500}.capture-card>.hint{margin:8px 0 20px}textarea{resize:vertical;border:1px solid var(--border);background:var(--card);width:100%;min-height:150px;color:var(--ink);border-radius:13px;outline:none;padding:16px;font-size:15px;line-height:1.7;display:block}textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}textarea::placeholder{color:var(--muted)}.capture-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.capture-footer .hint{margin:0}button{background:var(--accent);color:var(--on-accent);cursor:pointer;border:0;border-radius:11px;padding:12px 17px;font-size:13px;font-weight:600;transition:background .15s}button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{cursor:not-allowed;opacity:.45}.recent-card{margin-top:20px}.empty-state{text-align:center;flex-direction:column;align-items:center;padding:36px 12px 18px;display:flex}.empty-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border-radius:50%;place-items:center;font-size:24px;display:grid}.empty-state p{margin:14px 0 5px;font-size:14px;font-weight:600}.empty-state span{color:var(--muted);font-size:12px;line-height:1.6}.memory-footer{color:var(--muted);text-align:center;padding:24px 0 0;font-size:11px}@media (max-width:480px){.memory-shell{padding:28px 15px 24px}.capture-card,.recent-card{border-radius:18px;padding:21px}.capture-footer{flex-direction:column;align-items:flex-start}.capture-footer button{width:100%}}.capture-card form{margin:0}.thought-list{margin-top:22px}.thought-item{border-top:1px solid var(--border);padding:18px 0}.thought-item p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 10px;font-size:14px;line-height:1.7}.thought-item span{color:var(--muted);font-size:11px}.ai-summary{border-left:2px solid var(--accent);color:var(--muted);margin:12px 0;padding-left:12px;font-size:13px;line-height:1.6}.category-list{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.category-tag{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:4px 9px;font-size:11px}.review-filters{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.filter-active{background:var(--accent)}.filter-inactive{background:var(--surface-2);color:var(--ink)}.review-actions{margin-top:12px}.review-actions button{padding:8px 11px;font-size:11px}.people-page{width:min(100% - 32px,900px);color:var(--ink);margin:40px auto 64px}.people-page>h1{letter-spacing:-.04em;text-align:center;margin:0 0 8px;font-size:clamp(2rem,4vw,2.6rem);font-weight:750}.people-page>p{color:var(--muted);text-align:center;margin:0 auto 32px;font-size:1.05rem;line-height:1.6}.people-page section{background:var(--card);border:1px solid var(--surface-2);border-radius:18px;margin:24px 0;padding:28px;box-shadow:0 4px 16px #3329190a}.people-page h2{letter-spacing:-.02em;margin:0 0 20px;font-size:1.35rem;font-weight:700}.people-page h3{margin:24px 0 12px;font-size:1.05rem;font-weight:650}.people-page form{gap:18px;display:grid}.people-page label{color:var(--muted);gap:7px;font-size:.92rem;font-weight:600;display:grid}.people-page input,.people-page textarea,.people-page select{box-sizing:border-box;border:1px solid var(--border-strong);background:var(--card);width:100%;color:var(--ink);font:inherit;border-radius:10px;padding:11px 13px;font-weight:400;transition:border-color .15s,box-shadow .15s}.people-page input:focus,.people-page textarea:focus,.people-page select:focus{border-color:var(--muted);outline:none;box-shadow:0 0 0 3px #64748b26}.people-page textarea{resize:vertical}.people-page button{border:1px solid var(--border-strong);background:var(--surface-2);color:var(--ink);font:inherit;cursor:pointer;border-radius:10px;justify-self:start;padding:10px 16px;font-size:.92rem;font-weight:600;transition:background .15s,transform .15s}.people-page button:hover:not(:disabled){background:var(--border-strong)}.people-page button:active:not(:disabled){transform:translateY(1px)}.people-page button:disabled{opacity:.6;cursor:not-allowed}.people-page form button[type=submit]{background:var(--ink-soft);border-color:var(--ink-soft);color:var(--on-accent)}.people-page form button[type=submit]:hover:not(:disabled){background:var(--ink)}.people-page ul{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.people-page li{border:1px solid var(--surface-2);background:var(--card);overflow-wrap:anywhere;border-radius:14px;min-width:0;padding:20px}.people-page li strong{color:var(--ink);margin-bottom:6px;font-size:1.1rem;display:block}.people-page li p{color:var(--muted);margin:8px 0;line-height:1.5}.people-page li button{margin-top:10px;margin-right:4px}.people-page [role=status]{background:var(--surface);color:var(--ink);border-radius:10px;margin:16px 0 0;padding:12px 14px;line-height:1.5}@media (max-width:600px){.people-page{width:calc(100% - 24px);margin-top:24px}.people-page section{padding:20px 16px}.people-page li button{margin-top:8px}}.people-page fieldset{border:1px solid var(--surface-2);background:var(--card);border-radius:14px;min-width:0;margin:0;padding:20px}.people-page legend{color:var(--ink-soft);padding:0 8px;font-size:.95rem;font-weight:700}.people-page form>h3{border-bottom:1px solid var(--surface-2);color:var(--ink-soft);margin:14px 0 0;padding-bottom:10px;font-size:1.2rem}.people-page form>button[type=button]{background:var(--surface);border-style:dashed;border-color:var(--border-strong)}.people-page form>button[type=button]:hover:not(:disabled){background:var(--surface-2)}.people-page li a{color:var(--ink-soft);text-underline-offset:3px;font-weight:600}.people-page li a:hover{color:var(--ink)}.people-page li p{line-height:1.6}@media (min-width:700px){.people-page fieldset{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.people-page fieldset legend,.people-page fieldset button{grid-column:1/-1}}.recipe-page section{padding:22px 24px}.recipe-page h2{margin-bottom:12px}.recipe-page form{gap:12px}.recipe-page label{gap:4px;font-size:.85rem}.recipe-page input,.recipe-page textarea{border-radius:8px;padding:7px 10px;font-size:.92rem}.recipe-page textarea{field-sizing:content;min-height:0;max-height:18rem;line-height:1.45}.recipe-page .recipe-step textarea,.recipe-page textarea[rows="2"]{min-height:calc(2.9em + 16px)}.recipe-page button{border-radius:8px;padding:7px 12px;font-size:.88rem}.recipe-page .recipe-hint{color:var(--muted);margin:-4px 0 12px;font-size:.9rem}.recipe-page .recipe-inline{gap:8px;display:flex}.recipe-page .recipe-inline input{flex:1;min-width:0}.recipe-page .recipe-inline button{flex:none}.recipe-page .recipe-paste{margin-top:10px}.recipe-page .recipe-paste summary{cursor:pointer;color:var(--ink-soft);font-size:.9rem;font-weight:600}.recipe-page .recipe-paste[open]{gap:8px;display:grid}.recipe-page .recipe-paste textarea{margin-top:8px}.recipe-page .recipe-row-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.recipe-page form>h3{margin:8px 0 0;padding-bottom:6px;font-size:1.05rem}.recipe-page .recipe-ingredients{gap:6px;display:grid}.recipe-page .recipe-ingredient{grid-template-columns:5.5rem 6.5rem minmax(0,2fr) minmax(0,1.6fr) 2rem;align-items:center;gap:6px;display:grid}.recipe-page .recipe-ingredient-head span{color:var(--muted);font-size:.78rem;font-weight:600}.recipe-page .recipe-steps{gap:6px;margin:0;padding:0;list-style:none;display:grid}.recipe-page .recipe-step{background:0 0;border:0;border-radius:0;grid-template-columns:1.6rem minmax(0,1fr) 2rem;align-items:start;gap:6px;padding:0;display:grid}.recipe-page .recipe-step-number{color:var(--muted);text-align:right;padding-top:7px;font-weight:700}.recipe-page .recipe-remove{width:2rem;height:2rem;color:var(--muted);background:0 0;border-color:#0000;justify-self:center;padding:0;font-size:1.2rem;line-height:1}.recipe-page .recipe-remove:hover:not(:disabled){background:var(--surface);color:var(--danger)}.recipe-page .recipe-remove:disabled{visibility:hidden}.recipe-page [role=alert]{border:1px solid var(--warn-border);background:var(--warn-bg);border-radius:10px;margin-bottom:12px;padding:10px 14px;font-size:.9rem}.recipe-page [role=alert] p{margin:0 0 4px}.recipe-page [role=alert] ul{padding-left:18px;list-style:outside;display:block}.recipe-page [role=alert] li{background:0 0;border:0;padding:0}@media (max-width:640px){.recipe-page .recipe-inline{flex-direction:column}.recipe-page .recipe-ingredient{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 2rem}.recipe-page .recipe-ingredient-head{display:none}.recipe-page .recipe-ingredient input:nth-child(3),.recipe-page .recipe-ingredient input:nth-child(4){grid-column:1/3}.recipe-page .recipe-ingredient .recipe-remove{grid-area:1/3}.recipe-page .recipe-ingredient{border-bottom:1px solid var(--surface-2);padding-bottom:6px}}.recipe-page>h1{margin-bottom:16px}.recipe-page .recipe-back{text-align:left;margin:0 0 8px;font-size:.9rem}.recipe-page .recipe-back a,.recipe-page .recipe-source a,.recipe-page .recipe-related a{color:var(--ink-soft);text-underline-offset:3px;font-weight:600}.recipe-page .recipe-button{border:1px solid var(--border-strong);background:var(--surface-2);color:var(--ink);white-space:nowrap;border-radius:8px;padding:7px 12px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-block}.recipe-page .recipe-button-primary{border-color:var(--ink-soft);background:var(--ink-soft);color:var(--on-accent)}.recipe-page .recipe-row-2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;display:grid}.recipe-page fieldset.recipe-checks{background:0 0;border:0;flex-wrap:wrap;gap:4px 14px;padding:0;display:flex}.recipe-page fieldset.recipe-checks legend{width:100%;color:var(--muted);margin-bottom:4px;padding:0;font-size:.85rem;font-weight:600}.recipe-page .recipe-checks label{align-items:center;gap:6px;font-weight:500;display:flex}.recipe-page .recipe-checks input{width:auto}.recipe-page .recipe-section-row{align-items:center;gap:8px;margin-top:6px;display:flex}.recipe-page .recipe-section-row input{background:var(--card);border-style:dashed;flex:1;font-weight:700}.recipe-page .recipe-section-row button,.recipe-page .recipe-actions button{background:var(--surface);border-style:dashed;border-color:var(--border-strong)}.recipe-page .recipe-actions{flex-wrap:wrap;gap:8px;display:flex}.recipe-dashboard{width:min(100% - 32px,1100px)}.recipe-page .recipe-dashboard-head{justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px;display:flex}.recipe-page .recipe-dashboard-head h1{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,4vw,2.3rem)}.recipe-page .recipe-dashboard-head .recipe-hint{margin:2px 0 0}.recipe-page section.recipe-filters{margin:0 0 16px;padding:14px 16px}.recipe-page .recipe-filter-row{grid-template-columns:minmax(0,1fr) auto auto auto;gap:8px;display:grid}.recipe-page select{border-radius:8px;width:auto;padding:7px 10px;font-size:.92rem}.recipe-page .recipe-chips{flex-wrap:wrap;gap:6px;display:flex}.recipe-page .recipe-filter-chips{margin-top:10px}.recipe-page .recipe-chips>span{background:var(--surface);color:var(--muted);border-radius:999px;padding:3px 10px;font-size:.82rem}.recipe-page .recipe-chips button,.recipe-page .recipe-toggles button{background:var(--card);border-radius:999px;padding:4px 12px;font-size:.82rem}.recipe-page button.recipe-toggle-on{border-color:var(--ink-soft);background:var(--ink-soft);color:var(--on-accent)}.recipe-page button.recipe-toggle-on:hover:not(:disabled){background:var(--ink)}.recipe-page button.recipe-clear{background:0 0;border-color:#0000;text-decoration:underline}.recipe-page .recipe-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:10px;display:grid}.recipe-page .recipe-card{border:1px solid var(--surface-2);background:var(--card);border-radius:12px;flex-direction:column;justify-content:space-between;gap:8px;min-width:0;padding:12px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.recipe-page .recipe-card:hover{border-color:var(--border-strong);box-shadow:0 4px 12px #3329190f}.recipe-page .recipe-card-link{color:inherit;overflow-wrap:anywhere;gap:2px;text-decoration:none;display:grid}.recipe-page .recipe-card-link strong{color:var(--ink);font-size:.98rem;line-height:1.3}.recipe-page .recipe-card-source{color:var(--muted);font-size:.8rem}.recipe-page .recipe-card-foot{justify-content:space-between;align-items:center;gap:6px;display:flex}.recipe-page .recipe-card-badges{color:var(--muted);flex-wrap:wrap;gap:6px;font-size:.78rem;display:flex}.recipe-page .recipe-star{color:var(--muted);background:0 0;border-color:#0000;padding:0 4px;font-size:1.15rem;line-height:1}.recipe-page .recipe-star:hover:not(:disabled){color:var(--warn);background:0 0}.recipe-page .recipe-star-on{color:var(--warn)}.recipe-page section.recipe-view{padding:24px 28px}.recipe-page .recipe-view-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.recipe-page .recipe-view-head h1{letter-spacing:-.03em;margin:0;font-size:clamp(1.6rem,4vw,2.1rem);line-height:1.15}.recipe-page .recipe-source{margin:4px 0 10px}.recipe-page .recipe-toggles{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.recipe-page .recipe-view h2{margin:18px 0 8px;font-size:1.1rem}.recipe-page .recipe-view-columns{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:28px;display:grid}.recipe-page .recipe-view-group h4{color:var(--ink-soft);margin:12px 0 4px;font-size:.92rem}.recipe-page .recipe-view ul,.recipe-page .recipe-view ol{list-style:revert;margin:0;padding-left:20px;display:block}.recipe-page .recipe-view li{background:0 0;border:0;border-radius:0;padding:2px 0;line-height:1.5}.recipe-page .recipe-view ol li{padding:4px 0}.recipe-page .recipe-view ul.recipe-related{padding-left:0;list-style:none}.recipe-page .recipe-related li{align-items:center;gap:4px;display:flex}.recipe-page .recipe-view details{margin-top:18px}@media (max-width:700px){.recipe-page .recipe-filter-row{grid-template-columns:repeat(3,minmax(0,1fr))}.recipe-page .recipe-filter-row input[type=search]{grid-column:1/-1}.recipe-page .recipe-filter-row select{width:100%}.recipe-page .recipe-view-columns,.recipe-page .recipe-row-2{grid-template-columns:minmax(0,1fr);gap:10px}.recipe-page section.recipe-view{padding:18px 16px}}.recipe-page .recipe-card{padding-top:0;overflow:hidden}.recipe-page .recipe-card-photo{aspect-ratio:4/3;object-fit:cover;background:var(--surface);width:calc(100% + 28px);margin:0 -14px 8px;display:block}.recipe-page .recipe-card-photo-empty{aspect-ratio:4}.recipe-page .recipe-view-photo{object-fit:cover;border-radius:12px;width:100%;max-height:360px;margin:12px 0;display:block}.recipe-page .recipe-view li strong{font-size:inherit;margin:0;font-weight:650;display:inline}.view-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px 20px;margin:8px 0 4px;display:flex}.view-tabs button,button.quiet{color:var(--muted);background:0 0;border-radius:0;padding:4px 0;font-weight:500}.view-tabs button{border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 0;font-size:14px}.view-tabs button span{opacity:.7;margin-left:4px;font-size:12px}.view-tabs button[aria-pressed=true]{border-bottom-color:var(--ink);color:var(--ink);font-weight:600}.view-tabs.sub{border-bottom:0;margin-bottom:12px}.view-tabs button:hover:not(:disabled),button.quiet:hover:not(:disabled){color:var(--ink);background:0 0}button.quiet{text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:4px}.quiet-status{min-height:1.2em;color:var(--muted);margin:4px 0;font-size:13px}.task-row{border-bottom:1px solid var(--border);padding:10px 0}.task-line{align-items:flex-start;gap:12px;display:flex}.task-line input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);margin:2px 0 0}.task-text{flex-direction:column;flex:1;gap:2px;display:flex}.task-title{font-size:16px}.task-title.closed{color:var(--muted);text-decoration:line-through}.task-text small,.task-note,.task-choices small{color:var(--muted);font-size:13px}button.quiet.more{padding:0 4px;font-size:20px;line-height:1;text-decoration:none}.task-choices,.task-note{flex-wrap:wrap;align-items:center;gap:6px 16px;margin:8px 0 0 32px;display:flex}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-hover);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px}.tabs-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:0 12px;margin:8px 0 4px;display:flex}.tabs-bar .view-tabs{white-space:nowrap;border-bottom:0;flex-wrap:nowrap;flex:1 0 auto;margin:0}.icon-btn{color:var(--muted);background:0 0;border-radius:8px;place-items:center;padding:6px;display:inline-grid;position:relative}.icon-btn:hover:not(:disabled),.icon-btn[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.icon-btn[data-tip]:hover:after,.icon-btn[data-tip]:focus-visible:after{content:attr(data-tip);z-index:5;background:var(--ink);color:var(--on-accent);white-space:nowrap;pointer-events:none;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500;position:absolute;bottom:calc(100% + 6px);right:0}.shop-row{border-bottom:1px solid var(--border);padding:6px 0}.shop-line{align-items:center;gap:12px;min-height:36px;display:flex}.shop-line>input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);flex:none;margin:0}button.shop-name{min-width:0;color:var(--ink);text-align:left;cursor:text;background:0 0;border-radius:0;flex:1;padding:4px 0;font-size:17px;font-weight:400}button.shop-name:hover:not(:disabled){color:var(--accent-hover);background:0 0}button.shop-name.done{color:var(--muted);text-decoration:line-through}.shop-line form.rename{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.shop-line form.rename input{border:1px solid var(--border);background:var(--card);min-width:0;font:inherit;border-radius:8px;flex:1;padding:4px 8px;font-size:17px}.row-icons{flex:none;gap:2px;display:flex}.row-panel{color:var(--muted);margin:4px 0 8px 32px;font-size:14px}.row-panel[hidden]{display:none!important}.row-panel.fields{flex-wrap:wrap;gap:12px 20px;display:flex}.field{letter-spacing:.3px;flex-direction:column;gap:4px;font-size:12px;display:flex}.field select{border:1px solid var(--border);background:var(--card);min-width:160px;color:var(--ink);font:inherit;letter-spacing:0;border-radius:8px;padding:7px 10px;font-size:14px}.row-alert{color:var(--danger);margin:4px 0 0 32px;font-size:13px}.detail-lines{color:var(--muted);margin:6px 0;padding:0;font-size:14px;line-height:1.6;list-style:none}.home-links{gap:8px;margin-bottom:24px;display:flex;overflow-x:auto}.home-links a{border:1px solid var(--border);background:var(--card);color:var(--ink);white-space:nowrap;border-radius:999px;flex:none;padding:7px 14px;font-size:14px;font-weight:500}.home-links a:hover{border-color:var(--accent);color:var(--accent-hover);text-decoration:none}.home-links a.primary{border-color:var(--accent);color:var(--accent);font-weight:600}.tabs-bar button.quiet{flex:none;font-size:13px}a.nav-account{color:var(--muted);border-radius:8px;place-items:center;margin-left:auto;padding:6px;display:inline-grid;position:relative}a.nav-account:hover,a.nav-account[aria-current=page]{background:var(--surface-2);color:var(--ink);text-decoration:none}a.nav-account:hover:after,a.nav-account:focus-visible:after{content:attr(data-tip);z-index:5;background:var(--ink);color:var(--on-accent);white-space:nowrap;pointer-events:none;border-radius:6px;padding:4px 8px;font-size:12px;position:absolute;top:calc(100% + 6px);right:0}.thoughts-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.thoughts-head h1{margin:0;font-family:Playfair Display,serif;font-size:28px;font-weight:600}.quiet-input{border:1px solid var(--border);background:var(--card);width:100%;color:var(--ink);font:inherit;border-radius:10px;outline:none;padding:8px 12px;font-size:15px}.quiet-input:focus{border-color:var(--accent)}.thoughts-head .quiet-input{flex:0 280px}.quiet-select{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:14px}.chip-row{flex-wrap:wrap;gap:6px;margin:10px 0 6px;display:flex}.chip-row button{border:1px solid var(--border);color:var(--muted);background:0 0;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:500}.chip-row button span{opacity:.7;margin-left:4px}.chip-row button:hover:not(:disabled){color:var(--ink);background:0 0}.chip-row button[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}.thought-row{border-bottom:1px solid var(--border)}.thought-line{align-items:baseline;gap:12px;padding:10px 0;display:flex}button.thought-line{width:100%;color:var(--ink);text-align:left;background:0 0;border-radius:0;font-size:15px;font-weight:400}button.thought-line:hover:not(:disabled){color:var(--accent-hover);background:0 0}.thought-line .line-title{overflow-wrap:anywhere;flex:1;min-width:0}.thought-line small{color:var(--muted);flex:none;font-size:12px}.thought-open{padding:4px 0 16px}.thought-open .original{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 8px;line-height:1.6}.thought-meta{color:var(--muted);flex-wrap:wrap;gap:4px 12px;font-size:13px;display:flex}.connection-list{margin:12px 0 0;padding:0;list-style:none}.connection-list li{align-items:flex-start;gap:8px;min-height:34px;display:flex}.connection-list .kind{width:68px;color:var(--muted);flex:none;font-size:12px}.connection-list .what{overflow-wrap:anywhere;flex:1;min-width:0}.connection-list .what small{color:var(--muted);margin-left:6px}.thought-actions{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:10px;display:flex}.connect-panel{border:1px solid var(--border);background:var(--card);border-radius:12px;margin-top:8px;padding:12px}.connect-panel .view-tabs{margin-top:0}.target-results{margin:6px 0 0;padding:0;list-style:none}.target-results button{width:100%;color:var(--ink);text-align:left;background:0 0;border-radius:6px;padding:8px 4px;font-size:14px;font-weight:400;display:block}.target-results button:hover:not(:disabled){background:var(--surface-2)}.target-results small{color:var(--muted);margin-left:8px}.thoughts-more{justify-content:center;margin-top:12px;display:flex}@media (max-width:560px){.thoughts-head .quiet-input{flex-basis:100%}.thought-line small.when{display:none}}.thought-correct{flex-direction:column;gap:6px;margin:10px 0 4px;font-size:14px;display:flex}.correct-row{flex-wrap:wrap;align-items:center;gap:4px 12px;min-height:32px;display:flex}.correct-row .label{width:76px;color:var(--muted);font-size:12px}.correct-row .choices{flex-wrap:wrap;gap:4px 14px;display:flex}.correct-row .choices button[aria-pressed=true]{color:var(--ink);-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink);font-weight:600}.correct-row .became{color:var(--muted);flex-basis:100%;margin-left:88px;font-size:13px}.correct-row .cats{color:var(--ink)}.correct-row form.rename{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.correct-row form.rename input{border:1px solid var(--border);background:var(--card);min-width:0;font:inherit;border-radius:8px;flex:1;padding:4px 8px}.date-time{flex-wrap:wrap;gap:6px;display:inline-flex}.task-title,button.shop-name,.correct-row .became,.correct-row .cats{overflow-wrap:anywhere}.meal-line{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-height:40px;display:flex}.meal-line .day{color:var(--muted);flex:0 0 56px;font-size:13px}.meal-line .what{overflow-wrap:anywhere;flex:1;min-width:0}.meal-line .what small,.meal-line .note{color:var(--muted);font-size:12px}.meal-line.suggested .what,.meal-line.faded .what{color:var(--muted)}.meal-line .actions{gap:2px;display:flex}.meal-line .today{color:var(--ink);font-weight:600}.meal-picker{padding:8px 0 12px 66px}.meal-picker input{width:100%}.meal-picker button.quiet{text-align:left;display:block}.meal-section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-top:24px;display:flex}.recipe-categories{border:0;padding:0}.recipe-categories legend{width:100%;margin-bottom:4px}.meal-split{z-index:20;background:var(--background);grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid;position:fixed;inset:0}.meal-split-bar{border-bottom:1px solid var(--border);background:var(--card);grid-column:1/-1;align-items:center;gap:16px;padding:10px 16px;display:flex}.meal-split-bar .quiet-status{margin:0}.meal-split-pane{min-height:0;overflow-y:auto}.meal-split-plan{border-left:1px solid var(--border);padding:8px 20px 32px}.meal-split .people-page{width:calc(100% - 32px);margin:16px auto 32px}.meal-split .recipe-page .recipe-card{overflow:visible}.meal-split .recipe-page .recipe-card-photo{border-radius:12px 12px 0 0}.recipe-view-actions{align-items:center;gap:8px;display:inline-flex}.plan-on-day{display:inline-flex;position:relative}.plan-on-day-menu{z-index:30;border:1px solid var(--border);background:var(--card);border-radius:10px;flex-direction:column;max-height:360px;padding:6px;display:flex;position:fixed;overflow-y:auto;box-shadow:0 6px 20px #00000014}.plan-on-day-menu button[role=menuitem]{text-align:left;white-space:nowrap;text-overflow:ellipsis;max-width:100%;padding:6px 8px;overflow:hidden}.plan-on-day-other{border-top:1px solid var(--border);gap:6px;padding:6px 8px 2px;display:flex}@media (max-width:760px){.meal-split{display:block;position:static}.meal-split-plan{border-left:0;border-top:1px solid var(--border)}}.recipe-page .plan-on-day .icon-btn{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:4px;font-weight:500}.recipe-page .plan-on-day .icon-btn:hover:not(:disabled),.recipe-page .plan-on-day .icon-btn[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.recipe-page .plan-on-day-menu button,.recipe-page .recipe-back button.quiet{color:var(--ink);background:0 0;border:0;justify-self:stretch;padding:6px 8px;font-weight:500}.recipe-page .plan-on-day-menu button:hover:not(:disabled){background:var(--surface-2)}.recipe-page .plan-on-day-menu input{padding:4px 6px}.recipe-page .recipe-card-foot{position:relative}.recipe-page .recipe-card-foot .plan-on-day{margin-left:auto}.plan-on-day-other input{flex:1;min-width:0}.plan-on-day-other button{flex:none}.meal-split [draggable=true]{cursor:grab}.meal-drop-target{background:var(--accent-soft);outline:2px dashed var(--accent);outline-offset:-2px;border-radius:8px}.category-manager{border:1px solid var(--border);background:var(--card);border-radius:14px;margin:8px 0 16px;padding:12px 16px}.category-manager .label{color:var(--muted);font-size:12px}.category-manager ul{margin:4px 0 8px;padding:0;list-style:none}.category-manager li{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-height:34px;display:flex}.category-manager button.cat-name{color:var(--ink);text-align:left;cursor:text;background:0 0;border-radius:0;flex:1;padding:4px 0;font-size:15px;font-weight:400}.category-manager button.cat-name:hover:not(:disabled){color:var(--accent-hover);background:0 0}.category-manager li small{color:var(--muted);font-size:12px}.category-manager form.rename{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.category-manager form.rename input{border:1px solid var(--border);background:var(--card);min-width:0;font:inherit;border-radius:8px;flex:1;padding:4px 8px}.category-manager form.add{margin-top:8px}.recipe-page .icon-btn.recipe-delete{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:6px;font-weight:500}.recipe-page .icon-btn.recipe-delete:hover:not(:disabled){background:var(--danger-bg);color:var(--danger)}.recipe-page .icon-btn.recipe-print-btn{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:6px;font-weight:500}.recipe-page .icon-btn.recipe-print-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.recipe-print{display:none}@media print{@page{margin:.6in}html.printing-recipe body{background:#fff}html.printing-recipe body>:not(.recipe-print){display:none!important}html.printing-recipe .recipe-print{color:#111;font-size:11pt;line-height:1.4;display:block}.recipe-print header{border-bottom:1px solid var(--border-strong);margin-bottom:14pt;padding-bottom:8pt;overflow:hidden}.recipe-print header img{float:right;object-fit:cover;border-radius:6pt;width:1.8in;height:1.35in;margin:0 0 6pt 12pt}.recipe-print h1{margin:0 0 4pt;font-family:Playfair Display,serif;font-size:20pt;line-height:1.2}.recipe-print-source,.recipe-print-facts{color:var(--muted);margin:0 0 2pt;font-size:9.5pt}.recipe-print-description{margin:6pt 0 0;font-style:italic}.recipe-print h2{text-transform:uppercase;letter-spacing:.04em;margin:12pt 0 4pt;font-size:12pt}.recipe-print h4{margin:6pt 0 2pt;font-size:10.5pt}.recipe-print ul,.recipe-print ol{margin:0;padding-left:16pt}.recipe-print li{break-inside:avoid;margin-bottom:2pt}.recipe-print-ingredients ul{columns:2;column-gap:24pt}.recipe-print .recipe-view-group{break-inside:avoid-column}}.correct-row .choices a.quiet-link{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:4px;padding:4px 0;font-size:13px;font-weight:500}.correct-row .choices a.quiet-link[aria-current=true]{color:var(--ink);-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink);font-weight:600}dialog.overlay{border:1px solid var(--border);background:var(--card);width:min(560px,100% - 32px);max-height:calc(100dvh - 48px);color:var(--ink);border-radius:20px;padding:0;box-shadow:0 24px 60px #292e2930}dialog.overlay::backdrop{background:#292e2952}.overlay-panel{padding:22px 24px 24px}.overlay-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.overlay-head h2{margin:0;font-family:Playfair Display,serif;font-size:22px;font-weight:500}.overlay-form{gap:14px;display:grid}.overlay-form label{color:var(--muted);gap:6px;font-size:12px;font-weight:600;display:grid}.overlay-form input,.overlay-form select,.overlay-form textarea{border:1px solid var(--border);background:var(--card);width:100%;min-height:0;color:var(--ink);font:inherit;border-radius:10px;padding:10px 12px;font-size:15px;font-weight:400;line-height:1.5}.overlay-form input:focus,.overlay-form select:focus,.overlay-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.overlay-pair{grid-template-columns:1fr 1fr;gap:14px;display:grid}.overlay-actions{justify-content:flex-end;align-items:center;gap:18px;margin-top:4px;display:flex}@media (max-width:520px){.overlay-pair{grid-template-columns:1fr}.overlay-panel{padding:18px 16px 20px}}.people-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.people-head h1{margin:0}.people-search{border:1px solid var(--border);background:var(--card);width:100%;color:var(--ink);font:inherit;border-radius:10px;margin:12px 0 4px;padding:10px 12px;font-size:15px}.person-rows,.family-rows{margin:8px 0 0;padding:0;list-style:none}.person-row{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;padding:12px 0;display:flex}.person-main{flex-wrap:wrap;flex:1;align-items:baseline;gap:2px 12px;min-width:0;display:flex}.person-name{overflow-wrap:anywhere;font-size:16px;font-weight:600}.person-nick{color:var(--muted);font-weight:400}.person-main small{color:var(--muted);font-size:12px}.person-notes{color:var(--muted);overflow-wrap:anywhere;flex-basis:100%;margin:2px 0 0;font-size:13px;line-height:1.5}.person-actions{flex:none;gap:2px;display:flex}.family-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 0;display:flex}.family-kind{width:96px;color:var(--accent);flex:none;font-size:12px;font-weight:600}.family-what{overflow-wrap:anywhere;flex:1;gap:2px;min-width:0;display:grid}.family-what small{color:var(--muted);font-size:12px}.family-row.suggested .family-what{color:var(--muted)}.family-label{margin:20px 0 0}.family-form{margin-top:8px}button.family-add{align-items:center;gap:6px;margin-top:16px;text-decoration:none;display:inline-flex}@media (max-width:520px){.family-kind{width:76px}}.shop-row.adding,.saving-row{opacity:.55}.shop-row.adding .shop-name{flex:1;font-size:17px}.private-mark{vertical-align:-3px;color:var(--muted);margin-right:6px;display:inline-flex}.private-mark svg{width:15px;height:15px}.icon-btn[aria-pressed=true]{background:var(--surface-2);color:var(--accent)}.privacy-page section{margin:28px 0}.privacy-page h2{margin:0 0 8px;font-family:Playfair Display,serif;font-size:21px;font-weight:500}.privacy-page p,.privacy-page li,.privacy-page dd{line-height:1.6}.privacy-list dt{margin-top:12px;font-weight:600}.privacy-list dd{color:var(--muted);margin:2px 0 0}.groups-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.task-group{margin-top:22px}.task-group-head{align-items:center;gap:4px;display:flex}.task-group-head h3{flex:1;margin:0}.group-suggestions{margin:16px 0}.group-suggestion{border-bottom:1px solid var(--border);padding:12px 0}.group-suggestion-head{align-items:center;gap:10px;margin-bottom:6px;display:flex}.group-suggestion-head input{border:1px solid var(--border);background:var(--card);min-width:0;color:var(--ink);font:inherit;border-radius:9px;flex:1;padding:8px 10px;font-weight:600}.group-suggestion-head small{color:var(--muted)}label.group-task{align-items:center;gap:10px;padding:4px 0;font-size:15px;display:flex}label.group-task input{width:18px;height:18px;accent-color:var(--accent)}.people-suggested{margin:16px 0 8px}button.add-person{align-items:center;gap:4px;padding:0;font-size:12px;text-decoration:none;display:inline-flex}button.add-person svg{width:14px;height:14px}a.nav-feedback+a.nav-account{margin-left:0}.admin-section{margin:32px 0 4px;font-family:Playfair Display,serif;font-size:22px;font-weight:500}button.collection-open{width:100%;color:var(--ink);text-align:left;background:0 0;border-radius:0;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:0;font-weight:400;display:flex}button.collection-open:hover:not(:disabled){color:var(--accent-hover);background:0 0}button.collection-item{color:var(--ink);text-align:left;background:0 0;border-radius:0;padding:0;font-size:16px;font-weight:600}button.collection-item:hover:not(:disabled){color:var(--accent-hover);background:0 0}.collection-add{gap:8px;margin:12px 0;display:flex}.collection-add input{border:1px solid var(--border);background:var(--card);min-width:0;color:var(--ink);font:inherit;border-radius:10px;flex:1;padding:9px 11px;font-size:15px}.collection-add.log input[type=date]{flex:none}.collection-thoughts{flex-basis:100%;margin:6px 0 0;padding-left:14px;font-size:13px;line-height:1.6}.collection-log{margin:8px 0 0;padding:0;list-style:none}.collection-log li{border-bottom:1px solid var(--border);gap:14px;padding:9px 0;display:flex}.log-day{width:104px;color:var(--muted);flex:none;font-size:13px}.log-what{overflow-wrap:anywhere;flex:1;min-width:0}@media (max-width:520px){.collection-add.log{flex-wrap:wrap}.log-day{width:84px}}.collection-chips{flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0 12px;display:flex}.collection-chips button{border:1px solid var(--line,var(--border));background:var(--card);color:var(--ink);border-radius:999px;padding:4px 12px;font-size:.82rem;font-weight:500}.collection-chips button:hover:not(:disabled){background:var(--surface);color:var(--ink)}.collection-chips button[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.collection-chips button span{opacity:.7}.collection-chips button.chip-add{color:var(--muted);background:0 0;border-style:dashed}.collection-chips.small{margin:6px 0}.chip-new{flex-wrap:wrap;gap:6px;display:flex}.chip-new input{max-width:180px}.collection-chip-tools{margin:-6px 0 8px}.collection-add select{max-width:140px}.log-category{max-width:140px;margin-left:auto}.sort-by{align-items:center;gap:8px;margin:0 0 8px;font-size:14px;font-weight:600;display:flex}.sort-by select{width:auto;font-weight:400}.group-suggestion input.suggestion-categories{box-sizing:border-box;width:100%;margin:4px 0 8px}.category-collections{color:var(--muted);margin:0 0 12px;font-size:14px}.category-collections a{font-weight:600}.collection-home{margin-top:-4px}button.suggestion-name{color:var(--ink);text-align:left;background:0 0;border-radius:0;padding:0;font-size:15px;font-weight:600}button.suggestion-name:hover:not(:disabled){color:var(--accent-hover);background:0 0}.suggestion-row select{max-width:130px}.merge-person{margin-top:8px}.people-section{margin-top:20px}.people-section .person-rows{margin-top:6px}button.person-open{color:var(--ink);text-align:left;background:0 0;border-radius:0;padding:0}button.person-open:hover:not(:disabled){color:var(--accent-hover);background:0 0}.person-facts{grid-template-columns:max-content 1fr;gap:4px 12px;margin:0 0 8px;display:grid}.person-facts dt{color:var(--muted);font-size:14px}.person-facts dd{margin:0}.person-view-actions{justify-content:flex-start}.person-view-actions svg{width:14px;height:14px}.relationship-picker{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.relationship-picker .picker-label{width:100%;font-size:14px;font-weight:600}.relationship-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.relationship-chips li{background:var(--surface-strong,var(--surface-2));border-radius:999px;align-items:center;gap:4px;padding:4px 6px 4px 10px;font-size:14px;display:inline-flex}.relationship-chips button{color:var(--muted);background:0 0;border-radius:999px;padding:2px;display:inline-flex}.relationship-chips button svg{width:12px;height:12px}.new-type{flex-wrap:wrap;gap:6px;width:100%;display:flex}.new-type input{flex:160px}.people-chips{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.people-chips button{border:1px solid var(--border);background:var(--card);color:var(--ink);border-radius:999px;padding:4px 12px;font-size:.82rem;font-weight:500}.people-chips button:hover:not(:disabled){background:var(--surface);color:var(--ink)}.people-chips button[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.people-chips button span{opacity:.7}.correct-row .became{flex-wrap:wrap;gap:4px 14px;display:flex}.became-item{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.became-item input{width:16px;height:16px;margin:0}.became-item .is-done{text-decoration:line-through}.thought-open .original-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:600}.thought-open blockquote.original{border-left:3px solid var(--accent);background:var(--card);border-radius:0 8px 8px 0;margin:0 0 10px;padding:8px 12px}.thought-line .line-chevron{color:var(--muted);flex:none;font-size:12px}.thought-line[aria-expanded=true] .line-title{font-weight:600}.task-title.editable{cursor:text}.task-title.editable:hover{-webkit-text-decoration:underline dotted var(--muted);text-decoration:underline dotted var(--muted);text-underline-offset:3px}input.task-title-edit{border:0;border-bottom:1px solid var(--accent);width:100%;font:inherit;color:var(--ink);background:0 0;border-radius:0;margin:0 -4px;padding:0 4px}.correct-row .became .became-task{flex-basis:100%}.correct-row .became .became-task .task-row{color:var(--ink);font-size:15px}button.link-button{color:var(--accent);font:inherit;text-align:left;text-underline-offset:2px;background:0 0;border-radius:0;padding:0;text-decoration:underline}button.link-button:hover:not(:disabled){color:var(--accent-hover);background:0 0}.task-row.flash{background:var(--accent-soft);border-radius:8px;transition:background .6s}.theme-choice{flex-wrap:wrap;gap:6px;display:flex}.theme-choice button{border:1px solid var(--border-strong);background:var(--card);color:var(--ink);border-radius:999px;padding:6px 14px;font-size:14px}.theme-choice button[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.thought-line .became-badge{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:1px 8px}.needed-key svg{vertical-align:-2px;width:13px;height:13px}.just-marked{margin-top:12px}.just-marked summary{color:var(--muted);cursor:pointer}.pantry-group h3{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:16px 0 4px;font-size:13px;font-weight:600}.help-contents{color:var(--muted);margin:8px 0 20px;font-size:14px;line-height:1.8}.help-page section{scroll-margin-top:16px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skeleton{gap:14px;padding:6px 0;display:grid}.skeleton-lines{gap:10px}.skeleton-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.skeleton-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:6px 0;display:flex}.skeleton-card{border:1px solid var(--border);background:var(--card);border-radius:12px;gap:10px;padding:16px;display:grid}.skeleton-bar{background:var(--surface-2);border-radius:6px;height:14px;animation:1.4s ease-in-out infinite skeleton-pulse;display:block}.skeleton-bar.short{height:10px}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.skeleton-bar{animation:none}}.analog-head{color:var(--muted);gap:10px;margin:4px 0 -2px;display:flex}.analog-head span{justify-content:center;width:18px;display:inline-flex}.analog-head svg{width:16px;height:16px}.task-line input.written-box{accent-color:var(--muted)}.written-check{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin:12px 0;padding:12px 14px}.written-row{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;padding:8px 0;display:flex}.written-choices{flex-wrap:wrap;gap:4px 12px;display:flex}.planning-settings h2{margin-top:0}.setting-toggle{align-items:center;gap:8px;font-weight:600;display:inline-flex}.setting-line{flex-wrap:wrap;align-items:center;gap:4px 8px;margin:6px 0;display:flex}.setting-line .setting-toggle{min-width:90px}.tip[data-tip]{display:inline-flex;position:relative}.tip[data-tip]:hover:after,.tip[data-tip]:focus-within:after{content:attr(data-tip);z-index:5;background:var(--ink);color:var(--on-accent);white-space:nowrap;pointer-events:none;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500;position:absolute;bottom:calc(100% + 6px);left:0}.history-controls{flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:12px;display:flex}.history-range{align-items:center;gap:6px;font-size:14px;display:inline-flex}.history-controls input[type=search]{flex:180px}.history-controls .sort-by{margin:0}.meal-history .meal-line .day{flex-basis:112px}.pantry-add{flex-wrap:wrap;gap:8px;display:flex}.pantry-add input{flex:220px}.pantry-location{margin-top:20px}.pantry-location>h2{margin:0 0 4px;font-size:18px}.pantry-location>h2 small{color:var(--muted);font-size:13px;font-weight:500}select.pantry-move{max-width:120px;font-size:13px}.pantry-locations input{flex:1}.shopping-categories .category-line input:not([type=checkbox]){flex:1;min-width:0}.category-line .order-buttons{flex:0 0 64px;gap:2px;display:inline-flex}.category-line .not-food{color:var(--muted);white-space:nowrap;align-items:center;gap:4px;font-size:13px}.removed-categories{margin:8px 0}.sort-items{margin-top:32px}.sort-line select{flex:0 220px;max-width:50%}.sort-line.changed .what{color:var(--accent)}.meal-day+.meal-day{margin-top:6px}.plan-on-day-meal{margin-bottom:6px;font-size:13px;display:block}.theme-days{border-top:1px solid var(--border);margin:8px 0 12px}.theme-day{border-bottom:1px solid var(--border)}.theme-day-head{align-items:center;gap:12px;min-height:48px;display:flex}.theme-day-name{color:var(--muted);flex:0 0 96px;font-size:14px}.theme-day-what{flex-direction:column;flex:1;min-width:0;display:flex}.theme-day-what small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.theme-day.editing{padding-bottom:12px}.theme-day-edit{gap:10px;padding:4px 0 0 108px;display:grid}.theme-field{grid-template-columns:110px 1fr;align-items:start;gap:8px;display:grid}.theme-field>span{color:var(--muted);padding-top:6px;font-size:14px}.theme-field input,.theme-field select{width:100%;min-width:0}.theme-field .chip-row{margin:0}.theme-day-actions{justify-content:flex-end;display:flex}@media (max-width:640px){.theme-day-name{flex-basis:72px}.theme-day-edit{padding-left:0}.theme-field{grid-template-columns:1fr;gap:4px}.theme-field>span{padding-top:0}}.now-line{cursor:pointer;align-items:flex-start;gap:10px;margin:10px 0;display:flex}.now-line input{flex:none;margin-top:4px}.category-toggle{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.category-toggle:hover:not(:disabled){color:var(--ink);background:0 0}.category-toggle .chevron{font-size:.9em;transition:transform .15s;display:inline-block}.category-group.closed .chevron{transform:rotate(-90deg)}.category-count{background:var(--surface-2);color:var(--muted);letter-spacing:0;text-transform:none;border-radius:999px;padding:0 7px;font-size:12px;font-weight:500}.category-pick{max-width:9.5rem;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:2px 4px;font-size:12px}.category-pick:hover,.category-pick:focus-visible{border-color:var(--border);color:var(--ink)}dialog.overlay.wide{width:min(880px,100% - 32px);height:calc(100dvh - 48px)}dialog.overlay.wide .overlay-panel{max-height:100%;overflow-y:auto}@media (max-width:760px){dialog.overlay.wide{width:100%;max-width:100%;height:100dvh;max-height:100dvh;box-shadow:none;border:0;border-radius:0;margin:0}dialog.overlay.wide .overlay-panel{height:100%;padding:0 16px calc(24px + env(safe-area-inset-bottom))}dialog.overlay.wide .overlay-head{z-index:2;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;border-bottom:1px solid var(--border);background:var(--card);margin:0 -16px 12px;position:sticky;top:0}}.pantry-fab{z-index:20;border:1px solid var(--border-strong);background:var(--card);color:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:500;display:inline-flex;position:fixed;bottom:20px;right:20px;box-shadow:0 8px 24px #292e2926}.pantry-fab:hover:not(:disabled){background:var(--surface);color:var(--ink)}.pantry-fab svg{width:18px;height:18px}.meal-line .actions{align-items:center;gap:6px}.meal-line .actions .category-pick{field-sizing:content;margin-right:8px}.meal-line .actions>.quiet{margin-right:4px}.add-to-list{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 12px;display:flex}.add-to-list input{flex:220px;min-width:0}.add-to-list .quiet-status{flex-basis:100%;margin:0}@media (hover:none){.icon-btn[data-tip]:hover:not(:focus-visible):after,.tip[data-tip]:hover:not(:focus-within):after{content:none}.tip[data-tip]:focus-within:not(:has(:focus-visible)):after{content:none}}.overlay-panel:focus{outline:none}.meal-line{flex-wrap:wrap;row-gap:4px}.meal-line .what{flex:9em}.meal-line .actions{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}@media (max-width:640px){.meal-line:has(.actions select){padding:6px 0}.meal-line:has(.actions select) .actions{flex-basis:100%}}.theme-tag{border:0;border-bottom:1px dotted var(--border-strong);color:inherit;font:inherit;cursor:pointer;background:0 0;padding:0}.theme-tag:hover:not(:disabled){color:var(--ink);background:0 0}.theme-tag.changed{font-style:italic}.theme-swap{flex-wrap:wrap;align-items:center;gap:4px 10px;padding:4px 0 10px 66px;display:flex}@media (max-width:640px){.theme-swap{padding-left:0}}.meal-line>.item-edit{flex-basis:100%;margin:2px 0 10px 32px}@media (max-width:640px){.meal-line>.item-edit{margin-left:0}}.shop-quantity{color:var(--muted);font-size:13px;font-weight:400}.field .quantity-input{border:1px solid var(--border);background:var(--card);width:160px;color:var(--ink);font:inherit;border-radius:8px;padding:7px 10px;font-size:14px}.needed-amount{color:var(--ink-soft);font-size:14px}.amount-field{align-items:center;gap:6px;display:flex}.amount-step{border:1px solid var(--border);border-radius:8px;width:32px;height:32px;font-size:18px;line-height:1}.amount-count{min-width:2.2em;color:var(--ink);font-variant-numeric:tabular-nums;text-align:center;font-size:15px}.field .amount-unit{width:130px;margin-left:6px}.now-line{cursor:default}.now-title{border:0;border-bottom:1px dotted var(--border-strong);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;padding:0;font-weight:600}.now-title:hover:not(:disabled){color:var(--accent);background:0 0}.now-due{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;font-size:14px;display:flex}.shortcut-setup{margin-top:12px}.token-box{background:var(--surface-2);overflow-wrap:anywhere;border-radius:6px;max-width:100%;padding:6px 8px;font-size:12px;display:inline-block}.capture-page{padding-top:max(16px, env(safe-area-inset-top))}.capture-page-back{margin:0 0 12px}.capture-page label h2{margin-top:0}.capture-page .icon-btn.listening{color:var(--accent,#b4532a);border-color:currentColor}.copy-field{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;margin:6px 0 12px;display:grid}.copy-field code{background:var(--surface-2);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:8px;padding:8px 10px;font-size:13px;line-height:1.4;display:block}.copy-field-label{margin:12px 0 0;font-weight:600}.shortcut-note{background:var(--surface-2);border-radius:10px;margin:0 0 12px;padding:10px 12px}.shortcut-steps{margin:0 0 12px}.shortcut-steps summary{cursor:pointer;padding:6px 0;font-weight:600}.shortcut-steps ol{gap:12px;margin:8px 0 0;padding-left:22px;display:grid}.shortcut-add{background:var(--accent);color:#fff;border-radius:8px;margin:2px 0;padding:6px 12px;font-weight:600;text-decoration:none;display:inline-block}.shortcut-shots{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.shortcut-shots img{border:1px solid var(--border);border-radius:14px;width:min(150px,33% - 6px);height:auto}.shortcut-shots img:only-child{width:min(200px,60%)}.shortcut-tokens{margin:16px 0 4px;font-size:15px;font-weight:600}.shortcut-list-tip{margin:12px 0 0}.home-nudges{flex-wrap:wrap;gap:6px;margin:0 0 12px;display:flex}.home-nudges a{border:1px solid var(--border);background:var(--card);color:var(--ink);border-radius:999px;padding:4px 10px;font-size:13px;text-decoration:none}.home-nudges a:hover{border-color:var(--border-strong)}.repeat-choices .repeat-custom input[type=number]{width:3.5em}.repeat-days{gap:2px;display:inline-flex}.repeat-days button{min-width:2em}.repeat-days button[aria-pressed=true]{background:var(--accent);color:#fff}.pantry-ran-out{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;margin:0 0 12px;padding:6px 12px}.pantry-ran-out .meal-line{margin:0}.recipe-thought-notes{gap:8px;padding-left:18px;display:grid}@media screen{html.print-page body>:not(.recipe-print):not(.print-toolbar){display:none!important}html.print-page .recipe-print{color:#111;background:#fff;max-width:720px;margin:0 auto;padding:16px;display:block}html.print-page body{background:#fff}}.print-toolbar{align-items:center;gap:12px;max-width:720px;margin:0 auto;padding:12px 16px;display:flex}@media print{.print-toolbar{display:none!important}}.task-panel{border:1px solid var(--border);background:var(--card);border-radius:12px;margin:6px 0 4px 32px;padding:10px 12px}.task-panel-label{color:var(--muted);margin:0 0 6px;font-size:13px}.task-panel-label+.task-chips+.task-panel-label{margin-top:10px}.task-chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-chips button.chip{border:1px solid var(--border-strong,var(--border));background:var(--surface-2);color:var(--ink);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:500}.task-chips button.chip.primary{border-color:var(--accent);background:var(--accent);color:#fff}.task-chips input[type=date]{min-height:34px;padding:4px 8px}.task-group-pick{width:100%;color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.recipe-page .recipe-dashboard-head h1,.recipe-dashboard-actions .recipe-button{white-space:nowrap}.recipe-dashboard-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}@media (max-width:520px){.recipe-page .recipe-dashboard-head{align-items:center}.recipe-page .recipe-dashboard-head h1{font-size:1.5rem}.recipe-dashboard-actions{flex-wrap:nowrap;gap:6px}.recipe-dashboard-actions .recipe-button{padding:6px 10px;font-size:.82rem}.wide-only{display:none}}
