:root{color-scheme:dark;--font-display: 'Fraunces', Georgia, serif;--display-weight: 500;--font-logo: 'Caveat', cursive;--font-body: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif;--bg: #14100d;--s1: #1b1611;--s2: #241d16;--s3: #2e251c;--line: #382d22;--line-strong: #4a3c2d;--cream: #f3e9d9;--dim: #cbbfa9;--muted: #a39682;--placeholder: #7f725f;--acc: #e8a93c;--acc-hover: #f1bc5d;--on-acc: #1a120a;--acc-text: #e8a93c;--acc-tint: rgba(232, 169, 60, 0.15);--acc-tint-soft: rgba(232, 169, 60, 0.09);--acc-border: rgba(232, 169, 60, 0.34);--star: #e8a93c;--ember: #d9542c;--ember-tint: rgba(217, 84, 44, 0.14);--ember-text: #f0a184;--ok: #8fbf7a;--ok-tint: rgba(143, 191, 122, 0.12);--ok-text: #b4d8a3;--ok-border: rgba(143, 191, 122, 0.3);--ember-border: rgba(217, 84, 44, 0.34);--on-ok: #12210b;--chip-diet: #8bbf6b;--chip-diet-bg: rgba(139, 191, 107, 0.14);--chip-starter: #7fbf9e;--chip-starter-bg: rgba(127, 191, 158, 0.14);--chip-side: #7fa8d9;--chip-side-bg: rgba(127, 168, 217, 0.14);--chip-dessert: #e08fb0;--chip-dessert-bg: rgba(224, 143, 176, 0.14);--chip-snack: #c9a36a;--chip-snack-bg: rgba(201, 163, 106, 0.14);--chip-drink: #9c93e0;--chip-drink-bg: rgba(156, 147, 224, 0.14);--field-bg: rgba(243, 233, 217, 0.05);--field-border: rgba(243, 233, 217, 0.16);--field-border-hover: rgba(243, 233, 217, 0.34);--outline-border: rgba(243, 233, 217, 0.28);--hover-bg: rgba(243, 233, 217, 0.06);--chip-bg: rgba(243, 233, 217, 0.09);--check-border: rgba(243, 233, 217, 0.4);--glass: rgba(27, 22, 17, 0.82);--glass-border: rgba(243, 233, 217, 0.18);--nav-glass: rgba(36, 29, 22, 0.9);--scrim: rgba(10, 7, 5, 0.78);--shadow-pop: 0 24px 50px rgba(0, 0, 0, 0.5);--shadow-card: none;--shadow-color: rgba(0, 0, 0, 0.4);--shadow-color-strong: rgba(0, 0, 0, 0.5);--radius-xl: 24px;--radius-lg: 18px;--radius-md: 14px;--radius-sm: 10px;--focus-ring: 0 0 0 4px var(--acc-tint);--ease-standard: cubic-bezier(0.32, 0.72, 0, 1);--ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);--duration-base: 0.3s;--duration-fast: 0.08s}@font-face{font-family:"Caveat";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/caveat-latin.woff2?v=1") format("woff2")}@font-face{font-family:"Fraunces";font-style:normal;font-weight:400 600;font-display:swap;src:url("/assets/fonts/fraunces-latin.woff2?v=1") format("woff2")}@font-face{font-family:"Manrope";font-style:normal;font-weight:400 800;font-display:swap;src:url("/assets/fonts/manrope-latin.woff2?v=1") format("woff2")}*{box-sizing:border-box}html,body{overflow-x:clip}::-moz-selection{background:var(--acc);color:var(--on-acc)}::selection{background:var(--acc);color:var(--on-acc)}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--cream);-webkit-font-smoothing:antialiased;line-height:1.55;font-size:16px}body.modal-open{overflow:hidden}a{color:var(--acc-text);text-decoration:none;text-underline-offset:2px}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.tag-chip:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight);line-height:1.12;letter-spacing:0;margin:0 0 10px;color:var(--cream);text-wrap:balance}h1{font-size:clamp(2.1rem,3.8vw,2.9rem);margin-bottom:20px;letter-spacing:-0.015em}h2{font-size:1.6rem;margin-bottom:20px;letter-spacing:-0.01em}h3{font-size:1.2rem}body{overflow-wrap:break-word}h1,h2,h3,h4,.tag,.tag-chip,.item-name,.menu-item-title,.ing-name,.step-text,.cook-step-text,.cook-ingredient-name,.cook-timer-label,.cook-entry-note,.cook-card-body h3,.cook-card-note,.cook-log-dialog-head p,.invite-item-name{overflow-wrap:anywhere}.muted{color:var(--muted)}.label-optional{font-weight:500;color:var(--muted)}.icon{width:1em;height:1em;flex-shrink:0}.container{max-width:1440px;margin:0 auto;padding:0 40px}main.container{padding-top:40px;padding-bottom:70px;min-height:60vh}@media(max-width: 1024px){.container{padding:0 24px}main.container{padding-top:28px}}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;white-space:nowrap}.brand:hover{text-decoration:none}.brand-copy{display:flex;align-items:center}.brand-tagline{display:none}.brand-name{display:inline-flex;align-items:baseline;gap:7px;font-family:var(--font-logo);font-weight:700;font-size:2rem;line-height:1.1;color:var(--cream)}.brand-name .accent{font-weight:inherit;color:var(--acc-text)}.brand-en{position:relative;display:inline-block;font-size:.66em;line-height:1;top:-0.19em;padding-bottom:3px;margin:0 0 0 .1em}.brand-en::after{content:"";position:absolute;left:1px;right:0;bottom:2px;height:2px;border-radius:2px;background:currentColor}.brand-mark{position:relative;width:38px;height:38px;border-radius:11px;background:var(--acc);color:var(--on-acc);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform var(--duration-base) var(--ease-spring),background var(--duration-base) var(--ease-standard)}.brand-mark .icon{width:22px;height:22px}.brand:hover .brand-mark{transform:rotate(-8deg) scale(1.06);background:var(--acc-hover)}.beta-pill{position:absolute;top:-7px;left:-8px;padding:2px 7px;border-radius:9999px;background:var(--s2);border:1px solid var(--line-strong);color:var(--muted);font-size:9px;line-height:14px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;pointer-events:none}@media(max-width: 380px){.brand{gap:9px}.brand-mark{width:34px;height:34px;border-radius:10px}.brand-name{font-size:1.7rem;gap:6px}}.site-header{position:sticky;top:0;z-index:25;padding:16px 0;background:var(--nav-glass);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}@media(max-width: 1024px){.header-inner{justify-content:flex-start}}.site-nav{display:flex;gap:4px}.site-nav-link{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;font-weight:600;font-size:.92rem;color:var(--muted);white-space:nowrap;transition:color var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard)}.site-nav-link .icon{width:18px;height:18px}.site-nav-link:hover{color:var(--cream);background:var(--hover-bg);text-decoration:none}.site-nav-link.active{color:var(--acc-text);background:var(--acc-tint)}@media(max-width: 1024px){.site-nav{display:none}.site-header{padding:12px 0}}.site-footer{border-top:1px solid var(--line)}@media(max-width: 1024px){.site-footer{padding-bottom:calc(106px + env(safe-area-inset-bottom))}}@media(max-width: 480px){.site-footer{padding-bottom:calc(96px + env(safe-area-inset-bottom))}}.footer-inner{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:24px;padding-top:40px;padding-bottom:14px}@media(max-width: 1024px){.footer-inner{flex-direction:column;align-items:flex-start;text-align:left}}.footer-start{display:flex;flex-direction:column;gap:8px}.footer-note{font-size:.86rem;color:var(--muted);max-width:44ch;margin:6px 0 0}.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px}.footer-links a{color:var(--muted);font-size:.9rem;font-weight:600;text-decoration:none;transition:color var(--duration-base) var(--ease-standard)}.footer-links a:hover{color:var(--cream);text-decoration:none}.footer-feedback .icon{width:18px;height:18px}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;padding-top:0;padding-bottom:32px}.footer-copyright{text-align:left;font-size:.78rem;color:var(--muted);margin:0}.footer-copyright a{color:inherit;text-decoration:underline}.footer-copyright a:hover{color:var(--acc-text)}.footer-legal{display:flex;flex-wrap:wrap;gap:4px 20px}.footer-legal a{color:var(--muted);font-size:.78rem;text-decoration:none;transition:color var(--duration-base) var(--ease-standard)}.footer-legal a:hover{color:var(--cream);text-decoration:underline}.quicklink-bar{display:none}.quicklink-bar-group{display:contents}.quicklink-copy{display:none}.quicklink-chip{display:contents}.quicklink-label{display:none;font-size:.95rem;font-weight:600}.quicklink-icon{display:flex;align-items:center;justify-content:center}.quicklink-icon .icon{width:100%;height:100%}@media(max-width: 1024px){.quicklink-bar{display:block;position:fixed;bottom:calc(16px + env(safe-area-inset-bottom));left:24px;right:24px;z-index:30}}@media(max-width: 1024px)and (max-width: 380px){.quicklink-bar{left:16px;right:16px}}@media(max-width: 1024px){.quicklink-import{order:0}.quicklink-add{order:1}.quicklink-center{order:2}.quicklink-menus{order:3}.quicklink-profile{order:4}.quicklink-bar-grid{position:relative;display:flex;height:72px;gap:0;padding:0 10px;align-items:center;justify-content:space-between;background:var(--nav-glass);backdrop-filter:blur(18px);border:1px solid var(--line-strong);border-radius:999px;box-shadow:0 18px 40px var(--shadow-color-strong);max-width:none;margin:0;width:100%}.quicklink-add{margin-right:34px}.quicklink-menus{margin-left:34px}.quicklink{flex:1 1 0;min-width:0;display:flex;justify-content:center;align-items:center;padding:8px 4px;color:var(--muted)}.quicklink:hover{text-decoration:none;color:var(--cream)}.quicklink-chip{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:9px;padding:11px 13px;border-radius:999px;transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.quicklink-icon{width:24px;height:24px}.quicklink-avatar{border-radius:50%;overflow:hidden}.quicklink-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.quicklink-label{display:block}.quicklink.active .quicklink-chip{background:var(--acc-tint);color:var(--acc-text);animation:quicklink-pop var(--duration-base) var(--ease-standard)}.quicklink-center{position:absolute;left:50%;top:14px;transform:translate(-50%, -50%);width:60px;height:60px;flex:none;padding:0;display:flex;align-items:center;justify-content:center}.quicklink-center .quicklink-chip{width:100%;height:100%;padding:0;border-radius:50%;background:var(--acc);color:var(--on-acc);box-shadow:0 10px 22px rgba(232,169,60,.28),0 0 0 6px var(--bg);transition:box-shadow var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard)}.quicklink-center:hover{color:var(--on-acc)}.quicklink-center:hover .quicklink-chip{background:var(--acc-hover)}.quicklink-center .quicklink-icon{width:26px;height:26px}.quicklink-center .quicklink-label{display:none}.quicklink-center.active .quicklink-chip{background:var(--acc);color:var(--on-acc);box-shadow:0 10px 26px rgba(232,169,60,.36),0 0 0 6px var(--bg),0 0 0 8px var(--acc-border);animation:none}}@keyframes quicklink-pop{0%{transform:scale(0.55);opacity:0}65%{transform:scale(1.12);opacity:1}100%{transform:scale(1)}}@media(max-width: 640px){.quicklink-label{display:none}.quicklink-chip{padding:11px}}@media(max-width: 480px){.quicklink-bar-grid{height:66px}.quicklink-center{width:54px;height:54px}.quicklink-add{margin-right:30px}.quicklink-menus{margin-left:30px}}button,.button-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:rgba(0,0,0,0);color:var(--cream);border:1px solid var(--outline-border);padding:11px 22px;border-radius:999px;font-family:inherit;font-size:.94rem;font-weight:700;line-height:1.3;cursor:pointer;text-decoration:none;transition:background var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}button:hover,.button-link:hover{border-color:var(--acc);color:var(--acc-text);text-decoration:none}button:active,.button-link:active{transform:scale(0.97);transition-duration:var(--duration-fast)}button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-primary{background:var(--acc);color:var(--on-acc);border-color:var(--acc)}.button-primary:hover{background:var(--acc-hover);border-color:var(--acc-hover);color:var(--on-acc)}.button-link.danger,button.danger{background:rgba(0,0,0,0);color:var(--ember-text);border-color:rgba(0,0,0,0)}.button-link.danger:hover,button.danger:hover{background:var(--ember-tint);border-color:rgba(0,0,0,0);color:var(--ember-text);text-decoration:none}form{display:flex;flex-direction:column;gap:16px}label{display:block;font-weight:700;font-size:.84rem;color:var(--dim)}.field-group{display:flex;flex-direction:column;gap:6px}.field-group p{margin:0}.field-group-link{display:grid;grid-template-columns:minmax(0, 1fr) auto;-moz-column-gap:12px;column-gap:12px;row-gap:6px}.field-group-link>label{grid-column:1;grid-row:1;align-self:baseline}.field-group-link>.field-label-link{grid-column:2;grid-row:1;align-self:baseline}.field-group-link>input{grid-column:1/-1;grid-row:2}.field-label-link{font-size:.82rem;font-weight:600;color:var(--muted);text-decoration:none}.field-label-link:hover{color:var(--acc-text);text-decoration:underline}input[type=text],input[type=url],input[type=number],input[type=date],input[type=search],input[type=password],input[type=email],textarea,select{box-sizing:border-box;max-width:100%;padding:12px 15px;border:1px solid var(--field-border);border-radius:var(--radius-sm);font-size:.96rem;line-height:1.4;background:var(--field-bg);color:var(--cream);font-family:inherit;transition:border-color var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard)}input::-moz-placeholder, textarea::-moz-placeholder{color:var(--placeholder)}input::placeholder,textarea::placeholder{color:var(--placeholder)}input[type=date]::-webkit-calendar-picker-indicator{opacity:.55}input:hover,textarea:hover,select:hover{border-color:var(--field-border-hover)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--acc);box-shadow:var(--focus-ring);background:var(--hover-bg)}textarea{resize:vertical}select{width:100%;-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:40px;background-repeat:no-repeat;background-position:right 14px center;background-size:15px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a39682' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");cursor:pointer}.checkbox-row{display:flex;align-items:center;gap:8px;font-weight:400}.checkbox-row input{width:auto}.newsletter-optin{align-items:flex-start;color:var(--dim);font-size:.9rem;line-height:1.45}.newsletter-optin input{flex-shrink:0;margin-top:2px}.newsletter-optin small{display:block;margin-top:2px;font-size:.82rem}.checkbox-grid{display:flex;flex-wrap:wrap;gap:8px 20px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--acc);cursor:pointer}form button,form .button-link{margin-top:0;align-self:flex-start}.form-row{display:flex;gap:16px;flex-wrap:wrap}.form-row>.field-group{flex:1 1 160px;min-width:0}input[type=file]{color:var(--muted);font-family:inherit;font-size:.86rem}input[type=file]::file-selector-button{margin-right:12px;padding:7px 16px;background:rgba(0,0,0,0);color:var(--cream);border:1px solid var(--outline-border);border-radius:999px;font-family:inherit;font-size:.86rem;font-weight:700;cursor:pointer;transition:border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}input[type=file]::file-selector-button:hover{border-color:var(--acc);color:var(--acc-text)}.recipe-image-preview{position:relative;width:100%;max-width:320px;height:180px;border-radius:var(--radius-md);overflow:hidden;background:var(--s3)}.recipe-image-preview img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.recipe-form{gap:22px}.form-panel{display:flex;flex-direction:column;gap:16px;min-width:0;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:22px 24px}.form-panel-title{margin:0;font-size:1.25rem}@media(max-width: 380px){.form-panel{padding:18px 16px}}.custom-select{position:relative;width:100%}.custom-select select{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;opacity:0;pointer-events:none}.custom-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-top:0;padding:12px 15px;border:1px solid var(--field-border);border-radius:var(--radius-sm);background:var(--field-bg);color:var(--cream);font-family:inherit;font-weight:400;font-size:.96rem;line-height:1.4;text-align:left;cursor:pointer;transition:border-color var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard)}.custom-select-trigger:hover{border-color:var(--field-border-hover);color:var(--cream)}.custom-select-trigger:active{transform:none}.custom-select.open .custom-select-trigger{border-color:var(--acc);box-shadow:var(--focus-ring)}.custom-select-trigger:focus-visible{outline:none;border-color:var(--acc);box-shadow:var(--focus-ring)}.custom-select-trigger:disabled{opacity:.6;cursor:not-allowed}.custom-select-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-trigger .icon-chevron-down{color:var(--muted);width:16px;height:16px;flex-shrink:0;transition:transform var(--duration-base) var(--ease-standard)}.custom-select.open .icon-chevron-down{transform:rotate(180deg)}.custom-select-panel{list-style:none;margin:0;padding:6px;position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:20;max-height:260px;overflow-y:auto;background:var(--s2);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px) scale(0.98);transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard),visibility 0s linear var(--duration-base)}.custom-select.open .custom-select-panel{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}.custom-select-option{padding:9px 12px;border-radius:var(--radius-sm);cursor:pointer;font-size:.95rem;color:var(--dim);transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.custom-select-option.is-active{background:var(--hover-bg);color:var(--cream)}.custom-select-option.is-selected{font-weight:700;color:var(--acc-text)}.custom-select-option.is-selected.is-active{background:var(--acc-tint)}.custom-select-option.is-disabled{color:var(--line-strong);cursor:not-allowed}.custom-select-option.is-separator{margin-top:4px;padding-top:10px;border-top:1px solid var(--line);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);cursor:default;pointer-events:none}.custom-select-option.is-filtered-out{display:none}.custom-select-search-row{position:sticky;top:-6px;z-index:1;margin:-6px -6px 6px;padding:6px 6px 10px;background:var(--s2);border-bottom:1px solid var(--line-strong)}.custom-select-search-input{width:100%;height:36px;padding:0 10px;border:1px solid var(--field-border);border-radius:var(--radius-sm);background:var(--field-bg);color:var(--cream);font-family:inherit;font-size:.9rem}.custom-select-search-input:focus{border-color:var(--acc);outline:none}.custom-select-empty{display:none;padding:14px 12px;text-align:center;color:var(--muted);font-size:.9rem}.custom-select-empty.is-visible{display:block}.flatpickr-wrapper{position:relative;display:block;width:100%}.flatpickr-wrapper input{width:100%}input.date-picker-input{cursor:pointer;caret-color:rgba(0,0,0,0);padding-right:40px;background-repeat:no-repeat;background-position:right 14px center;background-size:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a39682' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12'/%3E%3Cpath d='M16 3v4'/%3E%3Cpath d='M8 3v4'/%3E%3Cpath d='M4 11h16'/%3E%3Cpath d='M11 15h1'/%3E%3Cpath d='M12 15v3'/%3E%3C/svg%3E")}.flatpickr-calendar{display:none;position:absolute;z-index:40;width:300px;padding:16px;background:var(--s2);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);font-size:.9rem;opacity:0;transform:translateY(-4px) scale(0.98);transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}.flatpickr-calendar.open{display:block;opacity:1;transform:none}.flatpickr-months{display:flex;align-items:center;gap:8px;margin-bottom:12px}.flatpickr-month{flex:1;display:flex}.flatpickr-current-month{flex:1;display:flex;align-items:center;gap:6px}.flatpickr-prev-month,.flatpickr-next-month{display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border-radius:999px;color:var(--muted);cursor:pointer;transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.flatpickr-prev-month:hover,.flatpickr-next-month:hover{background:var(--hover-bg);color:var(--acc-text)}.flatpickr-prev-month svg,.flatpickr-next-month svg{width:14px;height:14px;fill:currentColor}.flatpickr-monthDropdown-months{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:rgba(0,0,0,0);font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.05rem;color:var(--cream);cursor:pointer;padding:4px 2px;min-width:0}.numInputWrapper{position:relative;display:inline-flex;width:4.2rem;flex-shrink:0}.numInputWrapper .numInput{width:100%;border:none;background:rgba(0,0,0,0);font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.05rem;color:var(--cream);padding:4px 2px}.numInputWrapper .arrowUp,.numInputWrapper .arrowDown{display:none}.flatpickr-weekdays{display:flex;margin-bottom:4px}.flatpickr-weekdaycontainer{display:flex;flex:1}.flatpickr-weekday{flex:1;text-align:center;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--muted)}.dayContainer{display:flex;flex-wrap:wrap}.flatpickr-day{display:flex;align-items:center;justify-content:center;width:14.2857%;aspect-ratio:1;max-width:38px;border-radius:999px;color:var(--cream);cursor:pointer;font-variant-numeric:tabular-nums;transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.flatpickr-day:hover{background:var(--hover-bg)}.flatpickr-day.today{box-shadow:inset 0 0 0 1px var(--acc)}.flatpickr-day.selected{background:var(--acc);color:var(--on-acc);font-weight:700}.flatpickr-day.selected:hover{background:var(--acc-hover)}.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay{color:var(--placeholder)}.flatpickr-day.flatpickr-disabled{color:var(--line-strong);cursor:not-allowed}.flatpickr-day.flatpickr-disabled:hover{background:none}.chip{display:inline-flex;align-items:center;gap:6px;background:var(--chip-bg);color:var(--dim);padding:5px 12px;border-radius:999px;font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.chip .icon{width:14px;height:14px}.chip-time,.chip-servings{color:var(--dim);border-color:rgba(0,0,0,0);background:var(--chip-bg)}.chip-course{color:var(--acc-text);border-color:rgba(0,0,0,0);background:var(--acc-tint)}.chip-diet{color:var(--chip-diet);border-color:rgba(0,0,0,0);background:var(--chip-diet-bg)}.chip-source{text-transform:capitalize}.chip-link{transition:color var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard)}.chip-link:hover{color:var(--cream);background:var(--hover-bg);text-decoration:none}.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.chip-floating{position:absolute;top:12px;left:12px;background:rgba(16,12,9,.7);backdrop-filter:blur(8px);color:#f3e9d9}.chip-floating-right{left:auto;right:12px;background:var(--acc);color:var(--on-acc);backdrop-filter:none}.source-badge,.course-badge,.diet-badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 10px;font-size:.74rem;font-weight:700}.source-badge{text-transform:capitalize;background:var(--chip-bg);color:var(--dim)}.course-badge{color:var(--acc-text);border-color:rgba(0,0,0,0);background:var(--acc-tint)}.diet-badge{color:var(--chip-diet);border-color:rgba(0,0,0,0);background:var(--chip-diet-bg)}.course-badge.course-starter,.chip-course.course-starter{color:var(--chip-starter);border-color:rgba(0,0,0,0);background:var(--chip-starter-bg)}.course-badge.course-side,.chip-course.course-side{color:var(--chip-side);border-color:rgba(0,0,0,0);background:var(--chip-side-bg)}.course-badge.course-dessert,.chip-course.course-dessert{color:var(--chip-dessert);border-color:rgba(0,0,0,0);background:var(--chip-dessert-bg)}.course-badge.course-snack,.chip-course.course-snack{color:var(--chip-snack);border-color:rgba(0,0,0,0);background:var(--chip-snack-bg)}.course-badge.course-drink,.chip-course.course-drink{color:var(--chip-drink);border-color:rgba(0,0,0,0);background:var(--chip-drink-bg)}.course-badge.course-breakfast,.chip-course.course-breakfast{color:var(--ember-text);border-color:rgba(0,0,0,0);background:var(--ember-tint)}.tag-list{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.tag{display:inline-flex;align-items:center;background:var(--chip-bg);color:var(--dim);padding:4px 12px;border-radius:999px;font-size:.78rem;font-weight:600}.tag-chip-row{display:flex;gap:8px;flex-wrap:nowrap;margin-bottom:26px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(90deg, #000 0%, #000 92%, transparent 100%);mask-image:linear-gradient(90deg, #000 0%, #000 92%, transparent 100%)}.tag-chip-row::-webkit-scrollbar{display:none}@media(hover: hover)and (pointer: fine){.tag-chip-row{cursor:grab}.tag-chip-row.is-dragging{cursor:grabbing}.tag-chip-row.is-dragging .tag-chip{cursor:grabbing}}.tag-chip{flex-shrink:0;white-space:nowrap;background:rgba(0,0,0,0);border:1px solid var(--outline-border);color:var(--dim);padding:7px 14px;border-radius:999px;font-weight:600;font-size:.84rem;transition:background var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.tag-chip:hover{border-color:var(--acc);color:var(--acc-text);text-decoration:none}.tag-chip.active{background:var(--acc-tint);border-color:var(--acc);color:var(--acc-text)}.pick-chips{display:flex;flex-wrap:wrap;gap:8px}.pick-chip{display:inline-block;margin:0;cursor:pointer}.pick-chip input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.pick-chip span{display:inline-flex;align-items:center;gap:7px;padding:7px 13px 7px 9px;background:var(--chip-bg);color:var(--dim);border:1px solid var(--line);border-radius:999px;font-size:.86rem;font-weight:600;transition:border-color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.pick-chip .icon{width:20px;height:20px;flex-shrink:0}.pick-chip:hover span{border-color:var(--acc-border);color:var(--cream)}.pick-chip input:checked+span{background:var(--acc-tint);border-color:var(--acc);color:var(--acc-text)}.pick-chip input:focus-visible+span{outline:2px solid var(--acc);outline-offset:2px}.star-rating{display:inline-flex;gap:1px}.star-rating .star{display:inline-flex}.star-rating .icon{width:1.68rem;height:1.68rem}.star-rating .star-filled{color:var(--star)}.star-rating .star-empty{color:var(--line-strong)}.card-rating{margin-top:10px}.rating-input-row{display:flex;flex-direction:row;align-items:center;gap:14px}.rating-input{display:inline-flex;gap:4px;flex-direction:row-reverse}.rating-input input{position:absolute;opacity:0;width:0;height:0}.rating-input label{margin:0;cursor:pointer;color:var(--line-strong);width:1.6rem;height:1.6rem;transition:color var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-spring)}.rating-input label .icon{width:100%;height:100%}.rating-input label:hover,.rating-input label:hover~label,.rating-input input:checked~label{color:var(--star)}.rating-input label:hover{transform:scale(1.15)}.rating-clear{align-self:center;font-size:.82rem;font-weight:600;color:var(--muted);background:none;border:none;padding:0;cursor:pointer;transition:color var(--duration-base) var(--ease-standard)}.rating-clear:hover{color:var(--cream);text-decoration:underline}.flash{background:var(--ok-tint);border:1px solid var(--ok-border);color:var(--ok-text);padding:13px 18px;border-radius:var(--radius-md);margin-bottom:20px;font-weight:600;font-size:.92rem}.flash.error{background:var(--ember-tint);border-color:var(--ember-border);color:var(--ember-text)}.pagination{display:flex;justify-content:center;gap:8px;margin-top:40px;flex-wrap:wrap}.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 6px;border-radius:999px;font-weight:700;font-size:.9rem;color:var(--dim);border:1px solid var(--line-strong);transition:background var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.pagination a:hover{border-color:var(--acc);color:var(--acc-text);text-decoration:none}.pagination .current{background:var(--acc);border-color:var(--acc);color:var(--on-acc)}.pagination .ellipsis{border-color:rgba(0,0,0,0);color:var(--muted)}.ingredient-list{list-style:none;padding:0;margin:0}.ingredient-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;line-height:1.2;border-bottom:1px solid var(--line)}.ingredient-list li:first-child{padding-top:0}.ingredient-list li:last-child{border-bottom:none}.ing-name{font-weight:500;text-transform:capitalize}.qty-pill{background:var(--acc-tint);color:var(--acc-text);font-weight:700;font-size:.78rem;padding:4px 10px;border-radius:999px;font-variant-numeric:tabular-nums;flex:0 0 auto;max-width:70%;overflow-wrap:anywhere}.ingredient-edit-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.ingredient-list-row{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--field-bg);border:1px solid var(--line-strong);border-radius:var(--radius-sm);cursor:pointer;max-height:60px;overflow:hidden;transition:transform var(--duration-base) var(--ease-standard),opacity var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),max-height var(--duration-base) var(--ease-standard) .08s,padding var(--duration-base) var(--ease-standard) .08s,margin var(--duration-base) var(--ease-standard) .08s}.ingredient-list-row:hover{border-color:var(--acc)}.ingredient-list-row.removing{transform:scale(0.9);opacity:0;max-height:0;padding-top:0;padding-bottom:0;margin:0;border-width:0}.ingredient-list-qty{background:var(--acc-tint);color:var(--acc-text);font-weight:700;font-size:.78rem;padding:3px 10px;border-radius:999px;font-variant-numeric:tabular-nums;flex-shrink:0}.ingredient-list-name{flex:1;min-width:0}.ingredient-empty-note{margin:0}.remove-ingredient-item{background:rgba(0,0,0,0);color:var(--muted);padding:4px;margin:0;width:28px;height:28px;justify-content:center;flex-shrink:0;transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.remove-ingredient-item .icon{width:16px;height:16px}.remove-ingredient-item:hover{background:var(--ember-tint);color:var(--ember-text);border-color:rgba(0,0,0,0)}@keyframes ingredient-modal-in{from{opacity:0;transform:translateY(12px) scale(0.96)}to{opacity:1;transform:none}}@keyframes ingredient-modal-backdrop-in{from{opacity:0}to{opacity:1}}.ingredient-modal{border:none;border-radius:var(--radius-xl);padding:28px;max-width:480px;width:calc(100% - 48px);background:var(--s2);color:var(--cream);border:1px solid var(--line-strong);box-shadow:var(--shadow-pop);animation:ingredient-modal-in var(--duration-base) var(--ease-standard)}.ingredient-modal::backdrop{background:var(--scrim);backdrop-filter:blur(10px);animation:ingredient-modal-backdrop-in var(--duration-base) var(--ease-standard)}.ingredient-modal h2{margin:0 0 4px}.ingredient-modal-fields{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.ingredient-modal-fields>div{display:flex;flex-direction:column;gap:6px;flex:1 1 100px;min-width:0}.ingredient-modal-fields>div:last-child{flex:2 1 160px}.ingredient-modal-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:16px}.ingredient-modal-actions button{margin-top:0}.ingredient-modal #modal-added-list{margin-top:18px;padding-top:18px;border-top:1px solid var(--line-strong);max-height:220px;overflow-y:auto}.ingredient-modal #modal-added-list:empty{display:none;border-top:none;margin-top:0;padding-top:0}.duplicate-import-preview{display:flex;align-items:center;gap:12px;margin:8px 0;padding:12px;border-radius:var(--radius-sm);background:var(--field-bg)}.duplicate-import-preview img{width:56px;height:56px;border-radius:var(--radius-sm);-o-object-fit:cover;object-fit:cover;flex-shrink:0}.duplicate-import-preview div{display:flex;flex-direction:column;gap:2px}@keyframes menu-modal-in{from{opacity:0;transform:translateY(12px) scale(0.97)}to{opacity:1;transform:none}}@keyframes menu-modal-backdrop-in{from{opacity:0}to{opacity:1}}.menu-modal{border:none;border-radius:var(--radius-xl);padding:28px;max-width:640px;width:calc(100% - 48px);background:var(--s2);color:var(--cream);border:1px solid var(--line-strong);box-shadow:var(--shadow-pop);animation:menu-modal-in var(--duration-base) var(--ease-standard)}.menu-modal::backdrop{background:var(--scrim);backdrop-filter:blur(10px);animation:menu-modal-backdrop-in var(--duration-base) var(--ease-standard)}.menu-modal h2{margin:0 0 4px}.menu-modal-body{max-height:60vh;overflow-y:auto;margin-top:16px;padding-right:4px;display:flex;flex-direction:column;gap:20px}.menu-modal-day h3{display:flex;align-items:baseline;gap:8px;margin:0 0 8px;font-size:1rem}.menu-modal-day-date{font-size:.85rem;font-weight:400;color:var(--muted)}.menu-modal-day-items{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:2px}.menu-modal-day-items li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 4px;border-bottom:1px solid var(--line-strong)}.menu-modal-day-items li:last-child{border-bottom:none}.menu-modal-item-title{min-width:0;font-size:1.05rem;font-weight:600;line-height:1.3;color:var(--cream)}.menu-modal-item-course{font-size:.78rem;font-weight:400;color:var(--muted)}.menu-modal-item-edit{flex-shrink:0;padding:6px 8px;margin:0}.menu-modal-item-edit .icon{width:16px;height:16px}.menu-modal-day-items li.is-replacing .menu-modal-item-title{color:var(--muted);text-decoration:line-through}.menu-modal-day-add{display:flex;gap:10px;align-items:center}.menu-modal-day-add[hidden],.menu-modal-day-add [hidden]{display:none}.menu-modal-day-add .custom-select{flex:1 1 auto;min-width:0}.menu-modal-day-add button{margin-top:0;flex-shrink:0}.menu-modal-day-add [data-picker-cancel]{padding:10px}.menu-modal-notice{margin:16px 0 0}.menu-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line-strong)}.menu-modal-actions button{margin-top:0}.menu-card-carousel{position:absolute;inset:0;background:var(--s3)}.menu-card-carousel-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;opacity:0;transition:opacity .4s var(--ease-standard)}.menu-card-carousel-slide.active{opacity:1}.menu-card-carousel-slide img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.menu-card-carousel .placeholder-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:34px;height:34px;padding:0;border-radius:50%;border:none;background:rgba(34,24,18,.45);color:#fff;display:flex;align-items:center;justify-content:center;transition:background var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}.carousel-arrow:hover{background:rgba(34,24,18,.7);transform:translateY(-50%) scale(1.08)}.carousel-arrow:active{transform:translateY(-50%) scale(0.95);transition-duration:var(--duration-fast)}.carousel-arrow .icon{width:18px;height:18px}.carousel-prev{left:10px}.carousel-next{right:10px}.carousel-dots{position:absolute;bottom:10px;left:0;right:0;z-index:2;display:flex;justify-content:center;gap:6px}.carousel-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.55);transition:background var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}.carousel-dot.active{background:#fff;transform:scale(1.3)}.recipe-page{display:flex;flex-direction:column}.recipe-browser{display:flex;flex-direction:column;gap:24px}.filters{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px 24px;margin-bottom:24px}.filters-form{flex-direction:row;flex-wrap:nowrap;align-items:flex-end;gap:28px}.filter-group{display:flex;flex-direction:column;gap:6px;margin:0;min-width:0;flex:1 1 260px}.filter-group[hidden]{display:none}.filter-group label{margin-top:0}.filter-group-sort select{width:100%}.filter-group-source select{width:100%}.filter-group-dropdown{position:relative}.filter-group-actions{flex:0 0 auto;flex-direction:row;gap:10px;align-self:flex-end;margin-left:auto}.filter-group-actions button,.filter-group-actions .button-link{margin-top:0}.filter-dropdown-toggle{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-top:0;padding:12px 15px;border:1px solid var(--field-border);border-radius:var(--radius-sm);background:var(--field-bg);color:var(--cream);font-weight:400;font-size:.96rem;text-align:left}.filter-dropdown-toggle:hover{border-color:var(--field-border-hover);color:var(--cream)}.filter-dropdown-toggle:focus-visible{outline:none;border-color:var(--acc);box-shadow:var(--focus-ring)}.filter-dropdown-toggle .icon-chevron-down{color:var(--muted);width:16px;height:16px;flex-shrink:0;transition:transform var(--duration-base) var(--ease-standard)}.filters-mobile-toggle{display:none}.filters-mobile-bar{display:none}.filter-group-dropdown.open .icon-chevron-down{transform:rotate(180deg)}.filter-count{background:var(--acc-tint);color:var(--acc-text);border-radius:999px;font-size:.74rem;font-weight:700;padding:1px 8px;line-height:1.5}.filter-dropdown-panel{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:15;background:var(--s2);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:14px;width:100%;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px) scale(0.98);transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard),visibility 0s linear var(--duration-base)}.filter-group-dropdown.open .filter-dropdown-panel{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}.ingredient-chip-picker{display:flex;flex-wrap:wrap;gap:8px;max-height:220px;overflow-y:auto;padding:2px;scrollbar-color:var(--line-strong) rgba(0,0,0,0);scrollbar-width:thin}.ingredient-chip-picker::-webkit-scrollbar{width:8px}.ingredient-chip-picker::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}.ingredient-chip{display:inline-flex;align-items:center;font-weight:600;font-size:.84rem;text-transform:capitalize;background:rgba(0,0,0,0);border:1px solid var(--outline-border);color:var(--dim);padding:7px 14px;border-radius:999px;cursor:pointer;margin:0;transition:background var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.ingredient-chip input{position:absolute;opacity:0;width:0;height:0}.ingredient-chip:has(input:checked){background:var(--acc-tint);border-color:var(--acc);color:var(--acc-text)}.ingredient-chip:hover{border-color:var(--acc)}.ingredient-chip:has(input:focus-visible){border-color:var(--acc);box-shadow:var(--focus-ring)}@media(max-width: 1024px){.filters-form{flex-direction:column;align-items:stretch;gap:16px;flex-wrap:nowrap}.filter-group{flex-basis:auto}.filter-group-actions{align-self:stretch;margin-left:0}.filter-dropdown-toggle{width:100%;min-width:0}.filters{order:-1;position:relative;background:none;border:none;box-shadow:none;padding:0;margin-bottom:24px}.filters-mobile-bar{display:flex;align-items:center;gap:10px}.filters-mobile-toggle{display:flex;flex:1;width:auto;min-width:0;height:46px}.filters-mobile-toggle .icon-filter{width:18px;height:18px;color:var(--muted)}.filters-mobile-toggle span{display:inline-flex;align-items:center;gap:8px}.filters.open .filters-mobile-toggle .icon-chevron-down{transform:rotate(180deg)}.filters-mobile-bar .sort-dropdown-toggle{width:46px;flex-shrink:0}.filters-panel{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:20;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px 24px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px);transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard),visibility 0s linear var(--duration-base)}.filters.open .filters-panel{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}}.filters-form .filter-dropdown-toggle,.filters-form .custom-select-trigger{height:46px;padding-block:0;line-height:1.3}.filter-group-dropdown.open .filter-dropdown-toggle{border-color:var(--acc);box-shadow:var(--focus-ring)}.account-menu{position:relative}.account-menu-toggle{display:inline-flex;align-items:center;gap:10px;width:auto;padding:5px 12px 5px 5px;background:rgba(0,0,0,0);border:1px solid var(--line-strong);border-radius:999px}.account-menu-toggle:hover{border-color:var(--acc);color:var(--cream)}.account-menu-toggle .icon-chevron-down{width:16px;height:16px;color:var(--muted);transition:transform var(--duration-base) var(--ease-standard)}.account-menu.open .account-menu-toggle .icon-chevron-down{transform:rotate(180deg)}.account-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;overflow:hidden;background:var(--s3);color:var(--acc-text);display:flex;align-items:center;justify-content:center}.account-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.account-avatar .icon{width:18px;height:18px}.account-name{font-weight:600;font-size:.9rem;color:var(--cream);max-width:140px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}@media(max-width: 1160px){.account-menu-toggle{padding-right:8px}.account-name{display:none}}.account-menu-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:40;display:flex;flex-direction:column;gap:2px;background:var(--s2);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:6px;width:210px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px) scale(0.98);will-change:opacity,transform;transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard),visibility 0s linear var(--duration-base)}.account-menu.open .account-menu-panel{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}@keyframes account-menu-item-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.account-menu.open .account-menu-panel>*{animation:account-menu-item-in .35s var(--ease-standard) backwards;will-change:opacity,transform}.account-menu.open .account-menu-panel>:nth-child(1){animation-delay:80ms}.account-menu.open .account-menu-panel>:nth-child(2){animation-delay:140ms}.account-menu.open .account-menu-panel>:nth-child(3){animation-delay:200ms}.account-menu.open .account-menu-panel>:nth-child(4){animation-delay:260ms}.account-menu.open .account-menu-panel>:nth-child(5){animation-delay:320ms}.account-menu.open .account-menu-panel>:nth-child(6){animation-delay:380ms}.account-menu.open .account-menu-panel>:nth-child(7){animation-delay:440ms}.account-menu.open .account-menu-panel>:nth-child(8){animation-delay:500ms}.account-menu.open .account-menu-panel>:nth-child(9){animation-delay:560ms}.account-menu.open .account-menu-panel>:nth-child(10){animation-delay:620ms}.account-menu.open .account-menu-panel>:nth-child(11){animation-delay:680ms}.account-menu.open .account-menu-panel>:nth-child(12){animation-delay:740ms}.account-menu.open .account-menu-panel>:nth-child(13){animation-delay:800ms}.account-menu.open .account-menu-panel>:nth-child(14){animation-delay:860ms}.account-menu.open .account-menu-panel>:nth-child(15){animation-delay:920ms}.account-menu.open .account-menu-panel>:nth-child(16){animation-delay:980ms}.account-menu.open .account-menu-panel>:nth-child(17){animation-delay:1040ms}.account-menu.open .account-menu-panel>:nth-child(18){animation-delay:1100ms}.account-menu.open .account-menu-panel>:nth-child(19){animation-delay:1160ms}.account-menu.open .account-menu-panel>:nth-child(20){animation-delay:1220ms}.account-menu-link{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;padding:10px 12px;border-radius:9px;color:var(--dim);font-weight:600;font-size:.9rem;background:none;border:none;text-align:left;cursor:pointer;transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.account-menu-link:hover{background:var(--hover-bg);color:var(--cream);text-decoration:none}.account-menu-link .icon{width:18px;height:18px;color:var(--muted);flex-shrink:0}.account-menu-logout,.account-menu-logout .icon{color:var(--ember-text)}.account-menu-logout:hover{color:var(--ember-text);background:var(--ember-tint)}.account-menu-panel form{margin:0}.header-mobile-logout{display:none;margin:0;flex-shrink:0}.header-mobile-logout button{display:flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;border-color:var(--line-strong);color:var(--ember-text);font-weight:600;font-size:.9rem;white-space:nowrap}.header-mobile-logout button:hover{border-color:var(--ember);color:var(--ember-text)}.header-mobile-logout .icon{width:20px;height:20px;flex-shrink:0}@media(max-width: 1024px){.account-menu{display:none}.header-mobile-logout{display:block;margin-left:auto}}@media(max-width: 460px){.header-mobile-logout button{width:40px;padding:0}.header-mobile-logout-label{display:none}}.header-end{display:flex;align-items:center;gap:12px}@media(max-width: 1024px){.header-end{margin-left:auto}}.header-bell{position:relative;flex-shrink:0;width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-strong);color:var(--dim);transition:border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.header-bell .icon{width:20px;height:20px}.header-bell:hover{border-color:var(--acc);color:var(--acc-text);text-decoration:none}.notify-badge{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--acc);color:var(--on-acc);font-size:.7rem;font-weight:800;line-height:19px;text-align:center;box-shadow:0 0 0 2px var(--bg)}.notify-badge[hidden]{display:none}.notify-badge-inline{position:static;margin-left:auto;box-shadow:none}.quicklink-chip{position:relative}.notify-badge-tab{top:2px;right:0}.panel-help{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}.panel-help-toggle{position:relative;display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,0);color:var(--muted)}.panel-help-toggle::before{content:"";position:absolute;inset:-8px}.panel-help-toggle:hover{border:0;background:rgba(0,0,0,0);color:var(--acc-text)}.panel-help-toggle .icon{width:22px;height:22px}.panel-help-panel{position:absolute;top:calc(100% + 8px);left:0;z-index:40;width:min(260px,100vw - 32px);background:var(--s2);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:12px 14px;font-family:var(--font-body);font-size:.85rem;font-weight:400;line-height:1.5;color:var(--dim);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px) scale(0.98);transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard),visibility 0s linear var(--duration-base)}.panel-help.open .panel-help-panel{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}.cook-dialog{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;background:var(--bg);color:var(--cream);overflow:hidden}.cook-dialog[open]{display:flex}.cook-dialog,.cook-dialog *{touch-action:manipulation}.cook-dialog::backdrop{background:var(--scrim)}.cook-shell{display:flex;flex-direction:column;width:100%;height:100%;height:100dvh;min-width:0;min-height:0}.cook-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));border-bottom:1px solid var(--line)}.cook-bar-text{flex:1;min-width:0}.cook-title{margin:0;font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.1rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cook-progress-label{margin:2px 0 0;font-size:.82rem;color:var(--muted);font-weight:600}.cook-wake[hidden]{display:none}.cook-icon-btn{flex-shrink:0;width:44px;height:44px;padding:0;margin:0;border-radius:50%;border-color:rgba(0,0,0,0);background:var(--field-bg)}.cook-icon-btn .icon{width:22px;height:22px}@media(max-width: 899px){.cook-dialog.ingredients-open .cook-close{visibility:hidden}}[data-cook-ingredients-toggle] .icon-x{display:none}[data-cook-ingredients-toggle][aria-expanded=true] .icon-x{display:block}[data-cook-ingredients-toggle][aria-expanded=true] .icon-list-check{display:none}.cook-progress{height:4px;background:var(--line)}.cook-progress span{display:block;height:100%;width:0;background:var(--acc);transition:width var(--duration-base) var(--ease-standard)}.cook-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0, 1fr);grid-template-rows:minmax(0, 1fr);position:relative}.cook-body>*{min-width:0}@media(min-width: 900px){.cook-body.has-ingredients{grid-template-columns:minmax(0, 1fr) 360px}}.cook-step{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:24px 20px;display:flex;flex-direction:column;gap:18px;width:100%;max-width:46rem;margin-inline:auto}.cook-step::before,.cook-step::after{content:"";flex:1 1 0;min-height:0;margin:-9px 0}.cook-step.is-changing{animation:cook-step-in .24s var(--ease-standard)}@keyframes cook-step-in{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}.cook-step-number{margin:0;font-family:var(--font-display);font-weight:var(--display-weight);font-size:1rem;letter-spacing:.08em;text-transform:uppercase;color:var(--acc-text)}.cook-step-text{margin:0;font-size:clamp(1.4rem,1rem + 2vw,2.3rem);line-height:1.35;font-weight:500;color:var(--cream)}.cook-step-timers{display:flex;flex-wrap:wrap;gap:10px}.cook-step-timers:empty{display:none}.cook-timer-chip{min-height:44px;padding:8px 18px;border-color:var(--acc-border);background:var(--acc-tint-soft);color:var(--acc-text)}.cook-ingredients{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:20px;background:var(--s1);border-left:1px solid var(--line)}.cook-ingredients[hidden]{display:none}@media(max-width: 899px){.cook-ingredients{position:absolute;top:0;right:0;bottom:0;z-index:2;width:100%;max-width:94%;border-left:1px solid var(--line-strong);box-shadow:-16px 0 32px var(--shadow-color)}}.cook-ingredients-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;margin-bottom:18px}.cook-ingredients-head h2{margin:0;font-size:1.25rem}.cook-ingredient-list{list-style:none;margin:0;padding:0}.cook-ingredient-list li{border-bottom:1px solid var(--line)}.cook-ingredient-list li:last-child{border-bottom:0}.cook-ingredient{display:flex;align-items:baseline;gap:12px;padding:12px 0;cursor:pointer;min-height:48px}.cook-ingredient input{flex-shrink:0;width:20px;height:20px;margin:0;align-self:center;accent-color:var(--acc)}.cook-ingredient-qty{flex:0 0 auto;min-width:4.5em;max-width:45%;overflow-wrap:anywhere;font-weight:700;color:var(--acc-text)}.cook-ingredient-name{flex:1;min-width:0;font-weight:500;text-transform:capitalize}.cook-ingredient.is-ticked .cook-ingredient-qty,.cook-ingredient.is-ticked .cook-ingredient-name{text-decoration:line-through;color:var(--muted)}.cook-timers{display:flex;flex-wrap:wrap;gap:10px;padding:10px 16px;border-top:1px solid var(--line);background:var(--s1)}.cook-timers[hidden]{display:none}.cook-timer{display:flex;align-items:center;gap:6px;flex:1 1 260px;min-width:0;padding:6px 8px 6px 16px;background:var(--s2);border:1px solid var(--line-strong);border-radius:var(--radius-md)}.cook-timer-text{flex:1;min-width:0;display:flex;flex-direction:column}.cook-timer-label{font-size:.78rem;color:var(--muted);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cook-timer-time{font-family:var(--font-display);font-size:1.6rem;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--cream)}.cook-timer .cook-icon-btn{width:40px;height:40px}.cook-timer [data-t-toggle] .icon-player-play{display:none}.cook-timer.is-paused [data-t-toggle] .icon-player-play{display:block}.cook-timer.is-paused [data-t-toggle] .icon-player-pause{display:none}.cook-timer.is-paused .cook-timer-time{color:var(--muted)}.cook-timer.is-done{border-color:var(--acc);background:var(--acc-tint)}.cook-timer.is-done .cook-timer-time{color:var(--acc-text);font-size:1.3rem}@media(prefers-reduced-motion: no-preference){.cook-timer.is-done{animation:cook-timer-alarm 1s ease-in-out infinite}}@keyframes cook-timer-alarm{50%{background:var(--acc-tint-soft)}}.cook-nav{display:grid;grid-template-columns:1fr 1.6fr;gap:12px;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}.cook-nav button{min-height:56px;margin:0;font-size:1.05rem}.cook-next .icon-check{display:none}.cook-next[data-last] .icon-check{display:block}.cook-next[data-last] .icon-arrow-right{display:none}@media(max-width: 380px){.cook-nav{grid-template-columns:1fr 1.3fr}.cook-nav button{padding-inline:14px}}.recipe-row{margin-top:40px}.recipe-row-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.recipe-row-head h2{flex:1;min-width:0;margin:0;font-size:clamp(1.25rem,1rem + 1vw,1.6rem)}.recipe-row-tools{display:flex;align-items:center;gap:8px;flex-shrink:0}.recipe-row-all{margin:0;padding:7px 14px;font-size:.84rem}.recipe-row-arrow{flex-shrink:0;width:36px;height:36px;padding:0;margin:0;border-radius:50%}.recipe-row-arrow .icon{width:18px;height:18px}.recipe-row-arrow[hidden]{display:none}.recipe-row-track{display:flex;align-items:stretch;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 4px 8px;margin-inline:-4px;scroll-padding-inline:4px}.recipe-row-track::-webkit-scrollbar{display:none}.recipe-row-track img{-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.recipe-row-track.is-dragging{scroll-snap-type:none;cursor:grabbing;-webkit-user-select:none;-moz-user-select:none;user-select:none}.recipe-row-track.is-settling{scroll-snap-type:none}@media(hover: hover)and (pointer: fine){.recipe-row-track{cursor:grab}.recipe-row-track.is-dragging .recipe-card{cursor:grabbing}}.recipe-row-item{flex:0 0 min(280px,78vw);min-width:0;scroll-snap-align:start;display:flex}.recipe-row-item>.recipe-card{flex:1;min-width:0}@media(hover: hover){.recipe-row-item>.recipe-card:hover{box-shadow:0 4px 10px var(--shadow-color)}}.chip-shared{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:9999px;font-size:.72rem;font-weight:700;background:var(--acc-tint);color:var(--acc-text);max-width:100%;overflow-wrap:anywhere}.chip-shared .icon{width:12px;height:12px;flex-shrink:0}.recipe-row-dots{display:flex;justify-content:flex-end;align-items:center;gap:2px;min-height:24px;margin-top:2px}.recipe-row-dots[hidden]{display:none}.recipe-row-dot{position:relative;flex-shrink:0;width:24px;height:24px;padding:0;margin:0;border:0;background:rgba(0,0,0,0);border-radius:9999px}.recipe-row-dot::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:8px;height:8px;border-radius:9999px;background:var(--line-strong);transition:width var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard)}.recipe-row-dot:hover::after{background:var(--muted)}.recipe-row-dot[aria-current=true]::after{width:22px;background:var(--acc)}.recipe-card-reason{margin:auto 0 0;padding-top:6px;font-size:.8rem;font-weight:600;color:var(--acc-text);overflow-wrap:anywhere}.home-actions{display:flex;flex-wrap:wrap;gap:12px;margin:40px 0 8px}.home-actions>.button-link{margin:0}.home-customise-list{list-style:none;margin:18px 0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:50vh;overflow-y:auto}.home-customise-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:6px 8px 6px 12px;background:var(--field-bg);border:1px solid var(--line);border-radius:var(--radius-sm)}.home-customise-row .checkbox-row{flex:1;min-width:0;margin:0;overflow-wrap:anywhere}.home-customise-move{display:inline-flex;gap:4px;flex-shrink:0}.home-customise-move[hidden]{display:none}.home-customise-btn{width:34px;height:34px;padding:0;margin:0;border-radius:50%;border-color:rgba(0,0,0,0)}.home-customise-btn .icon{width:16px;height:16px}.home-customise-btn[data-move=up] .icon{transform:rotate(180deg)}@media(max-width: 899px){.recipe-row-arrow{display:none}}.home-customise{max-width:620px}.cook-log{margin-top:44px;padding-top:28px;border-top:1px solid var(--line)}.cook-log-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.cook-log-head-text{flex:1 1 260px;min-width:0}.cook-log-head h2{margin:0 0 4px}.cook-log-head p{margin:0}.cook-entries{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.cook-entry{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:18px 20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px 20px}.cook-entry-main{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:10px}.cook-entry-date{display:flex;align-items:center;gap:8px;margin:0;font-weight:700;color:var(--cream)}.cook-entry-date .icon{width:18px;height:18px;color:var(--acc-text)}.cook-entry-note{margin:0;color:var(--dim);line-height:1.55}.cook-entry-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:6px}.cook-entry-actions form{margin:0}.cook-entry-actions .button-link{padding:8px 14px;font-size:.86rem}.cook-entry-actions .icon{width:16px;height:16px}.cook-photos{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.cook-photos li{width:108px;height:108px}.cook-photos a{display:block;width:100%;height:100%;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--line);transition:border-color var(--duration-base) var(--ease-standard)}.cook-photos a:hover{border-color:var(--acc)}.cook-photos img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.cook-log-dialog{max-width:560px}@media(max-width: 380px){.cook-log-dialog{padding:20px;width:calc(100% - 32px)}}.cook-log-form{gap:18px}.cook-log-dialog-head h2{margin:0 0 4px}.cook-log-dialog-head p{margin:0}.cook-log-form input[type=date],.cook-log-form input.date-picker-input{align-self:stretch;width:100%;min-width:0}.cook-log-form textarea{width:100%}.cook-log-form .flash{margin:0}.cook-log-form .flash[hidden]{display:none}.cook-log-hint{margin:0;font-size:.84rem}.cook-log-hint:empty{display:none}.cook-log-actions{display:flex;flex-wrap:wrap;gap:10px}.cook-log-actions button{align-self:auto}.cook-log-back[hidden]{display:none}.cook-log-form input[type=file]{width:100%}.cook-photo-previews{list-style:none;margin:0 0 4px;padding:6px 6px 0 0;display:flex;flex-wrap:wrap;gap:12px}.cook-photo-previews[hidden]{display:none}.cook-photo-preview{position:relative;width:84px;height:84px}.cook-photo-preview img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line-strong)}.cook-photo-remove{position:absolute;top:-8px;right:-8px;width:28px;height:28px;padding:0;border-radius:50%;background:var(--s3);border:1px solid var(--line-strong);color:var(--cream)}.cook-photo-remove .icon{width:14px;height:14px}.cook-logged{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;font-weight:700;color:var(--ok-text)}.cook-logged .icon{width:14px;height:14px}.cook-lightbox{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:none;background:rgba(0,0,0,0);color:var(--cream)}.cook-lightbox[open]{display:flex;align-items:center;justify-content:center}.cook-lightbox::backdrop{background:var(--scrim);backdrop-filter:blur(10px)}.cook-lightbox-figure{margin:0;max-width:calc(100% - 32px);display:flex;flex-direction:column;align-items:center;gap:12px}.cook-lightbox-figure img{display:block;max-width:100%;max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);border-radius:var(--radius-md)}.cook-lightbox-figure figcaption{font-size:.9rem;color:var(--dim);text-align:center;overflow-wrap:anywhere}.cook-lightbox-btn{position:absolute;width:44px;height:44px;padding:0;border-radius:50%;background:var(--glass);border:1px solid var(--glass-border);color:var(--cream)}.cook-lightbox-btn[hidden]{display:none}.cook-lightbox-btn .icon{width:22px;height:22px}.cook-lightbox-close{top:16px;right:16px}.cook-lightbox-prev{left:12px;top:50%;transform:translateY(-50%)}.cook-lightbox-next{right:12px;top:50%;transform:translateY(-50%)}.cook-lightbox-prev:active,.cook-lightbox-next:active{transform:translateY(-50%) scale(0.97)}.cooked-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px}.cooked-head-text{flex:1 1 260px;min-width:0}.cooked-head h1{margin:0 0 6px}.cooked-head p{margin:0}.cooked-filter{display:flex;flex-wrap:wrap;gap:8px}.cooked-filter a{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:1px solid var(--line-strong);font-size:.9rem;font-weight:700;color:var(--dim);transition:background var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.cooked-filter a .icon{width:16px;height:16px}.cooked-filter a:hover{border-color:var(--acc);color:var(--acc-text);text-decoration:none}.cooked-filter a.active{background:var(--acc);border-color:var(--acc);color:var(--on-acc)}.cooked-month+.cooked-month{margin-top:36px}.cooked-month h2{margin:0 0 16px;font-size:1.1rem;color:var(--dim)}.cook-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:20px}@media(max-width: 640px){.cook-grid{grid-template-columns:repeat(2, minmax(0, 1fr));gap:14px}}@media(max-width: 380px){.cook-grid{grid-template-columns:minmax(0, 1fr)}}.cook-card{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:0;display:flex;flex-direction:column;min-width:0;overflow:hidden;color:var(--cream);transition:transform var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard)}.cook-card:hover{text-decoration:none}@media(hover: hover){.cook-card:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:0 14px 30px var(--shadow-color)}}.cook-card-image{position:relative;aspect-ratio:4/3;background:var(--s3);display:flex;align-items:center;justify-content:center;overflow:hidden}.cook-card-image img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.cook-card-count .icon{width:13px;height:13px}.cook-card-body{padding:14px 16px 16px;min-width:0}.cook-card-body h3{margin:0 0 4px;font-size:1.1rem}.cook-card-date{margin:0;font-size:.84rem;font-weight:700;color:var(--muted)}.cook-card-note{margin:8px 0 0;font-size:.86rem;line-height:1.45;color:var(--dim)}.cooked-empty{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:460px;margin:40px auto;text-align:center}.cooked-empty h2{margin:0}.cooked-empty p{margin:0}.cooked-empty-icon{display:flex;color:var(--acc-text)}.cooked-empty-icon .icon{width:44px;height:44px}.hero{display:grid;grid-template-columns:2fr 1.1fr;align-items:end;gap:24px;margin-bottom:22px;order:-2}@media(max-width: 1024px){.hero{grid-template-columns:1fr;align-items:start}}.hero-greeting{margin:0;color:var(--acc-text);font-weight:700;font-size:.9rem}.hero-text h1{margin:2px 0 0;font-size:clamp(2.3rem,4.4vw + .4rem,3.6rem);letter-spacing:-0.02em}.hero-search{flex-direction:row;gap:10px;margin-top:0;position:relative}.hero-search>.icon-search{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted);width:18px;height:18px;pointer-events:none}.hero-search input{flex:1;min-width:0;padding-left:42px;height:46px;border-radius:999px}.hero-search button{margin-top:0;height:46px}@media(max-width: 430px){.hero-search button{width:46px;padding:0}}.hero-search button .icon{width:18px;height:18px}@media(max-width: 430px){.hero-search .button-text{display:none}}.featured-section{display:grid;grid-template-columns:2fr 1.1fr;gap:24px;margin-bottom:28px;align-items:stretch}@media(max-width: 1024px){.featured-section{grid-template-columns:1fr}}.featured-section>*{min-width:0}.featured-recipe{display:grid;grid-template-columns:1.1fr 1fr;min-height:450px;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;color:var(--cream);box-shadow:var(--shadow-card);transition:transform var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard);will-change:transform}@media(max-width: 1024px){.featured-recipe{grid-template-columns:1fr;min-height:0}}.featured-recipe>*{min-width:0}.featured-recipe:hover{text-decoration:none}@media(hover: hover){.featured-recipe:hover{transform:translateY(-3px);border-color:var(--line-strong);box-shadow:0 18px 38px var(--shadow-color)}}.featured-recipe-image{position:relative;overflow:hidden;min-height:300px;background:var(--s3);will-change:transform}@media(max-width: 1024px){.featured-recipe-image{width:100%;aspect-ratio:16/9;min-height:200px;max-height:400px}}.featured-recipe-image img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;will-change:transform}.featured-recipe-image .placeholder-image{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--muted)}.featured-recipe-body{padding:50px 36px;display:flex;flex-direction:column;justify-content:center;gap:12px;overflow-wrap:break-word}@media(max-width: 1024px){.featured-recipe-body{padding:16px}}.featured-recipe-body h2{color:var(--cream);font-size:clamp(1.7rem,2.2vw + .6rem,2.3rem);margin:0}.featured-recipe-teaser{color:var(--dim);margin:0;max-width:42ch}@media(max-width: 1024px){.featured-recipe-teaser{max-width:none}}.featured-secondary{display:flex;flex-direction:column;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;color:var(--cream);box-shadow:var(--shadow-card);transition:transform var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard);will-change:transform}.featured-secondary:hover{text-decoration:none}@media(hover: hover){.featured-secondary:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:0 16px 34px var(--shadow-color)}}.featured-secondary-image{position:relative;overflow:hidden;flex:1;min-height:150px;background:var(--s3);will-change:transform}@media(max-width: 1024px){.featured-secondary-image{flex:none;width:100%;aspect-ratio:16/9;min-height:200px;max-height:400px}}.featured-secondary-image img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;will-change:transform}.featured-secondary-image .placeholder-image{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.featured-secondary-body{padding:20px 22px;overflow-wrap:break-word}@media(max-width: 1024px){.featured-secondary-body{padding:16px}}.featured-secondary-body h3{margin:0 0 8px;font-size:1.4rem}@media(max-width: 460px){.featured-recipe-image,.featured-secondary-image{max-height:300px}}.recipe-browser-header{display:flex;justify-content:flex-end;margin-bottom:4px}@media(max-width: 1024px){.recipe-browser-header{display:none}}.sort-dropdown-toggle{width:46px;height:46px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%}.sort-dropdown-toggle .icon{width:18px;height:18px}.sort-dropdown-panel{left:auto;right:0;width:200px;padding:6px}.sort-option-list{list-style:none;margin:0;padding:0}.sort-option{display:block;padding:9px 12px;border-radius:var(--radius-sm);color:var(--dim);font-size:.9rem;font-weight:600;transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.sort-option:hover{background:var(--hover-bg);color:var(--cream);text-decoration:none}.sort-option.active{font-weight:700;color:var(--acc-text)}.recipe-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:22px;align-content:start}@media(max-width: 1200px){.recipe-grid{grid-template-columns:repeat(3, 1fr)}}@media(max-width: 800px){.recipe-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 460px){.recipe-grid{grid-template-columns:1fr}}.recipe-card{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:0;overflow:hidden;color:var(--cream);transition:transform var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard);will-change:transform;display:flex;flex-direction:column}.recipe-card:hover{text-decoration:none}@media(hover: hover){.recipe-card:hover{transform:translateY(-6px);border-color:var(--line-strong);box-shadow:0 18px 36px var(--shadow-color)}}.recipe-card-image{position:relative;aspect-ratio:4/3;background:var(--s3);display:flex;align-items:center;justify-content:center;overflow:hidden;will-change:transform}@media(max-width: 1024px){.recipe-card-image{width:100%;aspect-ratio:16/9;min-height:200px;max-height:300px}}.recipe-card-image img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;will-change:transform}.placeholder-image{color:var(--muted);opacity:.6}.placeholder-image .icon{width:2.5rem;height:2.5rem}.placeholder-image.large .icon{width:4.5rem;height:4.5rem}.recipe-card-body{padding:16px;flex:1;display:flex;flex-direction:column;min-height:0}.recipe-card-body h3{margin:0 0 10px;font-size:1.25rem}.recipe-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:.82rem;color:var(--muted);align-items:center;font-weight:600;margin-bottom:8px}.recipe-meta-on-dark{color:var(--dim)}.recipe-meta span{display:inline-flex;align-items:center;gap:4px}.recipe-meta .icon{width:.95em;height:.95em}.recipe-card-description{margin:8px 0 0;font-size:.85rem;color:var(--muted);line-height:1.45}.recipe-description{color:var(--muted);margin:4px 0 0}.recipe-back-link{margin-top:0;margin-bottom:18px;padding:8px 16px;font-size:.86rem}.recipe-hero{display:grid;grid-template-columns:1fr 1.1fr;gap:0;margin-bottom:34px;align-items:stretch;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-xl)}@media(max-width: 1024px){.recipe-hero{grid-template-columns:1fr}}.recipe-hero>*{min-width:0}.recipe-hero-image{position:relative;border-radius:var(--radius-xl) 0 0 var(--radius-xl);overflow:hidden;background:var(--s3);display:flex;align-items:center;justify-content:center;min-height:500px}@media(max-width: 1024px){.recipe-hero-image{border-radius:var(--radius-xl) var(--radius-xl) 0 0;aspect-ratio:4/3;min-height:0;max-height:400px;width:100%}}.recipe-hero-image img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.recipe-hero-panel{padding:40px;display:flex;flex-direction:column;justify-content:center}@media(max-width: 1024px){.recipe-hero-panel{padding:22px}}.recipe-hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}@media(max-width: 1024px){.recipe-hero-top{flex-direction:column-reverse;align-items:flex-start;gap:6px}}.recipe-hero-top h1{flex:1;font-size:clamp(1.8rem,2.4vw + .8rem,2.7rem);margin:0}.related-recipes{margin-top:40px}.related-recipes h2{margin:0 0 18px}.recipe-rate-form{margin:8px 0 20px}.menu-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;background:var(--acc-tint-soft);border:1px solid var(--acc-border);border-radius:var(--radius-md);padding:18px 22px;margin-top:22px}.menu-cta-text{display:flex;flex-direction:column;gap:2px;flex:1 1 100%}.menu-cta-text strong{font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.05rem}.menu-cta-text span{font-size:.9rem;color:var(--muted)}.add-to-menu-form{flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px;margin:0;min-width:0;max-width:100%}.add-to-menu-form button{margin-top:0}.add-to-menu-form>*{min-width:0}.recipe-manage{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:44px;padding-top:20px;border-top:1px solid var(--line)}.recipe-manage a,.recipe-manage button,.recipe-manage form{margin-top:0}@media(max-width: 380px){.recipe-manage .button-link{padding:10px 12px}}.recipe-detail-body{display:grid;grid-template-columns:280px 1fr 280px;gap:36px}@media(max-width: 1100px){.recipe-detail-body{grid-template-columns:260px 1fr}}@media(max-width: 1024px){.recipe-detail-body{grid-template-columns:1fr}}.recipe-detail-body>*{min-width:0}.side-panel{display:flex;flex-direction:column;gap:20px;align-self:start}@media(max-width: 1100px){.side-panel{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}.side-panel>*{flex:1 1 260px}}.price-panel{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:22px}.price-amount{font-family:var(--font-display);font-size:2.2rem;font-weight:var(--display-weight);margin:6px 0;color:var(--cream)}.shop-select-form{flex-direction:row;align-items:center;gap:8px;margin:4px 0 0}.shop-select-form label{margin:0;font-weight:500;color:var(--muted)}.shop-select-form .custom-select-trigger{padding:6px 10px;font-size:.85rem}.shop-select-form .custom-select-trigger .icon-chevron-down{width:13px;height:13px}.ingredients-panel{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:22px;align-self:start}.instructions-panel{max-width:70ch;padding-top:22px}.instructions-text{white-space:pre-line}.step-list{list-style:none;counter-reset:step;padding:0;margin:0}.step-list li{counter-increment:step;display:flex;gap:16px;padding:0 0 22px;position:relative}.step-list li::before{content:counter(step);flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--acc);color:var(--on-acc);font-family:var(--font-display);font-weight:var(--display-weight);display:flex;align-items:center;justify-content:center;font-size:.95rem}.step-list li:not(:last-child)::after{content:"";position:absolute;left:16px;top:32px;bottom:4px;width:1px;background:var(--line-strong)}.step-list li .step-text{padding-top:4px}.nutrition-panel{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:22px}.nutrition-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:10px;margin-top:10px}.nutrition-stat{background:var(--field-bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 10px;text-align:center}.nutrition-stat strong{display:block;font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.4rem;color:var(--cream)}.nutrition-stat span{font-size:.75rem;color:var(--muted);font-weight:600}.nutrition-note{font-size:.78rem;color:var(--muted);margin:10px 0 0}.nutrition-subhead{display:block;font-weight:500;font-size:.8rem;color:var(--muted)}.ingredients-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;margin-bottom:18px}.ingredients-head h2{margin:0}.scaler-wrap{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;max-width:100%;margin-left:auto}.scaler-wrap[hidden]{display:none}@media(min-width: 1025px){.ingredients-head{flex-direction:column;align-items:flex-start}}.scaler{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--field-bg);border:1px solid var(--field-border);border-radius:9999px}.scaler-btn{width:32px;height:32px;padding:0;margin:0;border-radius:50%;border-color:rgba(0,0,0,0)}.scaler-btn .icon{width:16px;height:16px}.scaler-value{min-width:6.4em;padding-inline:4px;text-align:center;font-size:.88rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.scaler-reset{flex-shrink:0;width:32px;height:32px;padding:0;margin:0;border-radius:50%;border-color:rgba(0,0,0,0);color:var(--muted)}.scaler-reset .icon{width:16px;height:16px}.scaler-reset[hidden]{display:inline-flex;visibility:hidden}.scaler-note{margin:12px 0 0;font-size:.8rem}.scaler-note[hidden],.price-scaled[hidden]{display:none}.price-scaled{margin:0 0 6px;font-size:.82rem}.recipe-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px;margin-top:20px}.recipe-actions>*{margin:0}.scaler-wrap--inline{margin-left:0}@media(max-width: 640px){.recipe-actions>.scaler-wrap--inline{flex:1 1 100%;position:relative}.recipe-actions>.scaler-wrap--inline:not([hidden]){display:flex}.scaler-wrap--inline .scaler{flex:1;min-width:0}.scaler-wrap--inline .scaler-value{flex:1}.scaler-wrap--inline .scaler-reset{position:absolute;top:50%;right:46px;width:28px;height:28px;margin-top:-14px}}.scaler-wrap--inline .scaler-reset{order:2}.scaler-wrap--inline .scaler-reset[hidden]{display:none}.cook-open[hidden]{display:none}.new-menu-bar{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px 24px;margin-bottom:24px}.menu-needs-recipes{display:flex;align-items:center;gap:20px;flex-wrap:wrap;background:var(--acc-tint-soft);border-color:var(--acc-border)}.menu-needs-recipes-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:12px;background:var(--acc-tint);color:var(--acc-text)}.menu-needs-recipes-icon .icon{width:24px;height:24px}.menu-needs-recipes-text{flex:1 1 320px;min-width:0}.menu-needs-recipes-text h2{margin:0 0 4px;font-size:1.3rem}.menu-needs-recipes-text p{margin:0;color:var(--dim);max-width:60ch}.menu-needs-recipes-actions{display:flex;flex-wrap:wrap;gap:10px}.new-menu-form{flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:16px}.new-menu-form .filter-group{flex:1 1 260px}.new-menu-form button{margin-top:0;margin-left:auto;align-self:flex-end}.menu-kind-toggle{display:inline-flex;padding:3px;border-radius:999px;background:var(--s1);border:1px solid var(--line);flex-shrink:0}.menu-kind-option{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;font-weight:600;font-size:.88rem;color:var(--muted);cursor:pointer;transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.menu-kind-option span{display:flex;align-items:center;gap:4px}.menu-kind-option .icon{width:15px;height:15px}.menu-kind-option input{position:absolute;opacity:0;width:0;height:0}.menu-kind-option:has(input:checked){background:var(--acc-tint);color:var(--acc-text)}.menu-kind-badge{display:inline-flex;align-items:center;gap:5px;margin-bottom:12px;background:var(--acc-tint);color:var(--acc-text);padding:4px 12px;border-radius:999px;font-size:.74rem;font-weight:700}.menu-kind-badge .icon{width:12px;height:12px}.menu-cards{display:flex;flex-direction:column;gap:20px}.menu-card{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:0;overflow:hidden;scroll-margin-top:90px}.menu-card-layout{display:grid;grid-template-columns:30% 1fr}.menu-card-layout>*{min-width:0}.menu-card-image-panel{position:relative;min-height:160px}.menu-card-body{padding:24px}@media(max-width: 1024px){.menu-card-layout{grid-template-columns:1fr}.menu-card-image-panel{height:220px}}.menu-card-header{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:18px;margin-bottom:18px}.menu-card-header h2{margin:0;font-size:1.6rem}.menu-card-meta{display:block;margin-top:4px;font-size:.85rem;font-weight:400}.menu-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%}@media(max-width: 480px){.menu-card-actions .action-label{display:none}}.menu-card-toggle{margin-left:auto}.menu-card-actions form{display:inline}.menu-card-actions a,.menu-card-actions button{margin-top:0;color:var(--dim)}@media(max-width: 480px){.menu-card-actions a,.menu-card-actions button{padding:8px 10px}}.menu-card-actions a:hover,.menu-card-actions button:hover{color:var(--acc-text)}.menu-card-actions .icon{width:18px;height:18px}.open-menu-modal{margin:18px 0 0}.menu-card-days{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--duration-base) var(--ease-standard)}.menu-card-days.open{grid-template-rows:1fr;margin-bottom:18px}.menu-card-days-inner{overflow:hidden;min-height:0}.menu-card-toggle .icon{transition:transform .45s var(--ease-spring)}.menu-card-toggle[aria-expanded=true] .icon{transform:rotate(180deg)}.menu-card-actions .menu-card-toggle{color:var(--acc-text)}.add-menu-item-form{flex-direction:row;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.add-menu-item-form button{margin-top:0}.add-menu-item-form>*{min-width:0}.add-menu-item-form .custom-select{flex:1 1 180px}.menu-card-items{list-style:none;padding:0;margin:0}.menu-item{position:relative;display:flex;flex-direction:column;gap:6px;padding:12px 68px 12px 4px;border-bottom:1px solid var(--line)}.menu-item:last-child{border-bottom:none}.menu-item form{margin:0}.menu-item-top{display:flex;align-items:center;gap:10px}.cooked-checkbox{display:flex;margin:0;cursor:pointer;transition:transform var(--duration-base) var(--ease-standard)}.cooked-checkbox:hover{transform:scale(1.1)}.cooked-checkbox input{width:19px;height:19px;accent-color:var(--acc);cursor:pointer}.menu-item-day{font-size:.82rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}.menu-item-title{display:block;font-weight:600;color:var(--cream)}.menu-item.cooked .menu-item-title{color:var(--muted)}.menu-item.cooked .menu-item-day{color:var(--line-strong)}.menu-item-actions{position:absolute;top:8px;right:4px;display:flex;gap:4px}.menu-item-actions button{padding:6px}.menu-item-actions .icon{width:18px;height:18px}.menu-page-layout{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start;padding-top:28px}@media(max-width: 1024px){.menu-page-layout{grid-template-columns:1fr}}.menu-cards-column>h2,.archived-sidebar>h2{margin:0 0 14px;font-size:1.05rem}.archived-sidebar{position:sticky;top:90px}.archived-menu-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.archived-menu-item{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:14px 16px;padding-right:40px;filter:grayscale(0.6);opacity:.75}.archived-menu-info{display:flex;flex-direction:column;gap:2px}.archived-menu-meta{display:block;margin-top:2px;font-size:.8rem;font-weight:400}.archived-menu-actions{display:flex;gap:8px;flex-wrap:wrap}.archived-menu-actions form{display:inline}.archived-menu-actions button{margin-top:0;color:var(--dim)}.archived-menu-actions button:hover{color:var(--acc-text)}.archived-menu-actions .icon{width:16px;height:16px}.archived-menu-delete-form{position:absolute;top:10px;right:10px}.archived-menu-delete-form button{padding:4px}.archived-menu-delete-form .icon{width:16px;height:16px}.archived-older-toggle{margin-top:14px}.archived-older-toggle summary{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--muted);cursor:pointer;font-size:.88rem;list-style:none}.archived-older-toggle summary::-webkit-details-marker{display:none}.archived-older-toggle summary .icon{width:14px;height:14px;transition:transform var(--duration-base) var(--ease-standard)}.archived-older-toggle[open] summary .icon{transform:rotate(180deg)}.archived-older-toggle .archived-menu-list{margin-top:12px}.menu-card.current-week{background:var(--s2);border-color:var(--acc-border)}.menu-card.current-week .menu-item{border-bottom-color:var(--line-strong)}.menu-card.current-week .menu-item.cooked .menu-item-title{color:var(--muted)}.current-week-badge{display:inline-block;margin-bottom:12px;background:var(--acc);color:var(--on-acc);padding:4px 12px;border-radius:999px;font-size:.74rem;font-weight:700}.shopping-list-page{max-width:640px;margin:0 auto}.shopping-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;flex-wrap:wrap;gap:10px}.shopping-list-header h1{display:flex;align-items:center}.shopping-list-actions{display:flex;flex-wrap:wrap;gap:10px}.shopping-list-actions .button-link{margin:0}.shopping-list-actions .label-short{display:none}@media(max-width: 480px){.shopping-list-actions .label-long{display:none}.shopping-list-actions .label-short{display:inline}.shopping-list-actions .button-link{padding:10px 16px}}@media(max-width: 380px){.shopping-list-actions .button-link{padding:10px 12px}}.shopping-list{list-style:none;padding:0}.shopping-list-item{position:relative;display:flex;flex-direction:column;gap:2px;padding:12px 16px;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:8px;transition:background var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard)}.shopping-list-item:hover{border-color:var(--acc-border)}.shopping-list-item label{display:flex;align-items:flex-start;gap:12px;font-weight:500;margin:0;cursor:pointer}.shopping-list-item .item-name{min-width:0;text-transform:capitalize;line-height:1.3;transition:color var(--duration-base) var(--ease-standard)}.shopping-list-item.checked{background:rgba(0,0,0,0)}.shopping-list-item.checked .item-name,.shopping-list-item.checked .item-qty{color:var(--muted)}.item-qty{background:var(--acc-tint);color:var(--acc-text);font-weight:700;font-size:.78rem;padding:3px 10px;border-radius:999px;font-variant-numeric:tabular-nums;max-width:65%;margin-left:auto;border-radius:14px;text-align:right;transition:color var(--duration-base) var(--ease-standard)}.shopping-check{margin:0}.item-recipes{font-size:.8rem;padding-left:30px;color:var(--muted)}.item-note{font-size:.85rem;padding-left:30px}.shopping-list-item{padding-right:44px}.shopping-list-item.is-manual{padding-right:78px}.shopping-list-item-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px}.shopping-list-item-actions .button-link,.remove-shopping-extra-form button{padding:6px;margin:0}.shopping-list-item-actions .icon,.remove-shopping-extra-form .icon{width:16px;height:16px}.remove-shopping-extra-form{margin:0}.shopping-list-shop-select{display:flex;align-items:center;gap:10px;margin:-6px 0 18px;flex-wrap:wrap}.shopping-list-shop-select label{margin:0;font-size:.9rem;color:var(--muted);display:flex;align-items:center}.add-shopping-item-form{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 22px;padding-bottom:18px;border-bottom:1px solid var(--line)}.add-shopping-item-form input[name=name]{flex:2 1 200px;margin:0}.add-shopping-item-form input[name=note]{flex:1 1 140px;margin:0}.add-shopping-item-form button{margin-top:0;flex-shrink:0}.shopping-section-title{display:flex;align-items:center;gap:10px;margin:28px 0 12px;font-size:1.35rem}.shopping-section-title:first-of-type{margin-top:0}.shopping-section-count{min-width:26px;padding:0 9px;border-radius:999px;background:var(--acc-tint);color:var(--acc-text);font-family:var(--font-body);font-size:.78rem;font-weight:700;line-height:24px;text-align:center}.shopping-section-note{margin:-6px 0 14px;font-size:.9rem}.shopping-list-pantry .shopping-list-item{padding-top:10px;padding-bottom:10px}.shopping-aisle-title{display:flex;align-items:center;gap:10px;margin:22px 0 10px;font-family:var(--font-body);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.shopping-aisle-title:first-of-type{margin-top:4px}.shopping-list-aisle{margin-bottom:0}.shopping-section-toggle-all{margin-left:auto;padding:0;border:none;background:none;display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-weight:700;font-size:.78rem;text-transform:none;letter-spacing:normal;cursor:pointer;transition:color var(--duration-base) var(--ease-standard)}.shopping-section-toggle-all:hover{color:var(--acc-text);text-decoration:underline}.shopping-section-toggle-all .icon{width:13px;height:13px}.import-panels{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width: 1024px){.import-panels{grid-template-columns:1fr}}.import-panels>*{min-width:0}.import-panel{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:22px}.import-panel button[disabled]{background:var(--s3);border-color:rgba(0,0,0,0);color:var(--muted)}.import-panel-wide{grid-column:1/-1}.import-panel-wide h2{margin-top:0}.import-panel-panel{display:contents}.import-tabs{display:none}@media(max-width: 1024px){.import-tabs{display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:20px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(90deg, #000 0%, #000 92%, transparent 100%);mask-image:linear-gradient(90deg, #000 0%, #000 92%, transparent 100%)}.import-tabs::-webkit-scrollbar{display:none}}@media(max-width: 1024px)and (hover: hover)and (pointer: fine){.import-tabs{cursor:grab}.import-tabs.is-dragging{cursor:grabbing}.import-tabs.is-dragging .import-tab{cursor:grabbing}}@media(max-width: 1024px){.import-tab{flex-shrink:0;white-space:nowrap;background:rgba(0,0,0,0);border:1px solid var(--outline-border);color:var(--dim);padding:9px 16px;border-radius:999px;font-weight:700;font-size:.88rem;transition:background var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.import-tab:hover{border-color:var(--acc);color:var(--acc-text)}.import-tab.is-active{background:var(--acc-tint);border-color:var(--acc);color:var(--acc-text)}.import-panel:not(.is-open){display:none}}.import-tools{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:8px}@media(max-width: 1024px){.import-tools{grid-template-columns:1fr}}.import-tools>*{min-width:0}.import-tools h3{margin:0 0 6px;font-size:1.05rem}.import-tools p{margin:0 0 12px}.import-tools-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.import-tools-actions>*{margin:0}.import-tools details{margin-top:4px}.import-tools summary{cursor:pointer;font-weight:700;color:var(--dim)}.import-tools details p{margin-top:10px}.bookmarklet-link{cursor:grab}@media not all and (hover: hover)and (pointer: fine){.bookmarklet-link{display:none}}[data-install-app][hidden]{display:none}.import-tools form{gap:10px}.import-media-hint{margin:0;font-size:.84rem}.import-media-hint:empty{display:none}.import-text-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.copy-prompt-button.copied{background:var(--ok);border-color:var(--ok);color:var(--on-ok)}.copy-prompt-button.copy-failed{background:var(--ember);border-color:var(--ember);color:var(--cream)}.auth-body{margin:0;min-height:100vh;background:linear-gradient(180deg, rgba(14, 10, 8, 0.66), rgba(14, 10, 8, 0.82)),url("images/optimized/onboarding/pexels-shojol-36130538.jpg") center 62%/cover no-repeat,var(--bg);display:flex;align-items:center;justify-content:center}.auth-page{width:100%;padding:24px}.auth-card{padding:36px 32px;background:var(--glass);backdrop-filter:blur(22px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-pop);max-width:400px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.auth-brand{justify-content:center;margin-bottom:4px}.auth-card form{gap:16px}.auth-card h1,.auth-card h2{text-align:center;margin:0;font-size:1.6rem}.auth-card p{margin:0}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.auth-divider::before,.auth-divider::after{content:"";flex:1;height:1px;background:var(--line-strong)}.auth-google-button{width:100%;justify-content:center}.auth-legal-note{text-align:center;font-size:.82rem;color:var(--muted);margin:0}.auth-legal-note a{color:var(--dim)}.auth-footer-note{text-align:center;font-size:.85rem;color:var(--muted);margin:0}.auth-card form>button{align-self:stretch}.invite-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.invite-item{position:relative;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:14px 16px;padding-right:40px}.invite-item-info{display:flex;flex-direction:column;gap:2px}.invite-delete-form{position:absolute;top:10px;right:10px}.invite-delete-form button{padding:4px}.invite-delete-form .icon{width:16px;height:16px}.invite-link-field{width:100%;margin-top:4px;font-family:monospace;font-size:.8rem;color:var(--muted);background:var(--field-bg);cursor:text}.invite-requests{margin-bottom:32px}.invite-requests h2{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:1.05rem}.invite-requests-count{background:var(--acc);color:var(--on-acc);border-radius:999px;font-size:.75rem;font-weight:700;padding:2px 8px;line-height:1.4}.invite-requests-sync-note{margin:-6px 0 12px;font-size:.82rem}.invite-request{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-right:16px;transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-standard)}.invite-request.is-resolved{opacity:0;transform:translateX(8px);pointer-events:none}.invite-request-actions{display:flex;gap:8px;flex-wrap:wrap}.invite-request-actions form{margin:0}.account-page{max-width:1060px;margin:0 auto}.account-settings{display:grid;grid-template-columns:1fr 1.6fr;gap:24px;align-items:start}.account-column-main{order:2}.account-column-side{order:1}.account-column-main,.account-column-side{display:flex;flex-direction:column;min-width:0}@media(max-width: 760px){.account-settings{display:flex;flex-direction:column}.account-column-main,.account-column-side{order:0;width:100%}}.account-settings-card{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px 24px;min-width:0;margin-bottom:20px}.account-settings-card>.button-link,.account-settings-card>button{margin:0 10px 10px 0}.account-settings-card h2{margin-top:0}.account-settings-card form{margin-top:14px}.account-settings-card form:first-of-type{margin-top:14px}.account-settings-avatar-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.account-avatar-large{width:72px;height:72px}.account-avatar-large .icon{width:32px;height:32px}.account-settings-avatar-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start;min-width:0}.account-settings-avatar-actions form{margin:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:100%}.account-settings-avatar-actions input[type=file]{min-width:0;max-width:100%}.mail-status p{margin:0 0 14px}.mail-facts{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:6px}.mail-facts .muted{display:inline-block;min-width:110px}.mail-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;color:var(--dim)}.account-settings-card code{padding:2px 6px;border-radius:6px;background:var(--chip-bg);color:var(--cream);font-size:.86em}.mail-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.mail-log-row{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.mail-log-row:last-child{border-bottom:none}.mail-log-row .chip{flex-shrink:0;margin-top:2px}.mail-log-main{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:.92rem}.mail-log-main .muted{font-size:.82rem}.mail-log-error{color:var(--ember-text);font-size:.82rem;overflow-wrap:anywhere}.notification-prefs{display:flex;flex-direction:column;gap:12px;margin-bottom:4px}.notification-prefs .checkbox-row{color:var(--dim)}.account-settings-card:target{border-color:var(--acc-border)}.notifications-page{max-width:760px}.notifications-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.notifications-head h1{margin:0}.notifications-head form{margin:0}.notification-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.notification-item{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);transition:border-color var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard)}.notification-item:hover{border-color:var(--line-strong)}.notification-item.is-unread{background:var(--s2);border-color:var(--acc-border)}.notification-link{display:flex;align-items:center;gap:14px;padding:16px 18px;color:var(--cream)}.notification-link:hover{text-decoration:none}.notification-icon{width:40px;height:40px;border-radius:12px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--acc-tint);color:var(--acc-text)}.notification-icon .icon{width:20px;height:20px}.notification-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.notification-text{font-weight:600;overflow-wrap:anywhere}.notification-item:not(.is-unread) .notification-text{font-weight:500;color:var(--dim)}.notification-time{font-size:.82rem}.notification-dot{width:10px;height:10px;border-radius:50%;background:var(--acc);flex-shrink:0}.notifications-foot{margin-top:18px;font-size:.86rem}.notifications-empty{text-align:center;padding:56px 24px;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg)}.notifications-empty h2{margin:14px 0 6px}.notifications-empty p{margin:0}.notifications-empty-icon{width:56px;height:56px;border-radius:16px;margin:0 auto;display:inline-flex;align-items:center;justify-content:center;background:var(--acc-tint);color:var(--acc-text)}.notifications-empty-icon .icon{width:28px;height:28px}.friends-page{max-width:760px}.friends-intro{margin:-8px 0 22px}.friend-add-form{display:flex;flex-direction:column;gap:14px}.friend-add-heading{margin:22px 0 0;font-family:var(--font-body);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.friend-add-heading:first-of-type{margin-top:14px}.friend-search-form{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:center;margin-top:10px}.friend-search-form .field-group{flex:1 1 200px;min-width:0}.friend-search-form input{margin:0}.friend-search-form button{flex-shrink:0;margin:0}.friend-search-note{margin:12px 0 0}.friend-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.friend-search-results{margin:20px 0 28px}.friend-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.friend-row:last-child{border-bottom:none;padding-bottom:0}.friend-row:first-child{padding-top:0}.friend-avatar{width:44px;height:44px;border-radius:50%;flex-shrink:0;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:var(--s3);color:var(--acc-text)}.friend-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.friend-avatar .icon{width:22px;height:22px}.friend-info{display:flex;flex-direction:column;min-width:0;flex:1 1 160px}.friend-info strong{overflow-wrap:anywhere}.friend-info .muted{font-size:.86rem}.friend-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.friend-actions form{margin:0}.friend-actions button{padding:8px 16px;font-size:.86rem}.friend-status{font-size:.84rem}.notification-actions{display:flex;gap:8px;padding:0 18px 16px 72px}.notification-actions form{margin:0}.notification-actions button{padding:8px 16px;font-size:.86rem}@media(max-width: 480px){.notification-actions{padding-left:18px}}.account-settings-card .friend-actions form,.account-settings-card .friend-actions form:first-of-type{margin:0}.email-status{margin:18px 0 0;padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--s1)}.email-status p{margin:0;color:var(--dim);line-height:1.55}.email-status-pending{border-color:var(--acc-border);background:var(--acc-tint-soft)}.email-status-ok{display:flex;align-items:center;gap:8px;color:var(--ok-text);border-color:rgba(0,0,0,0);background:var(--ok-tint)}.email-status-ok .icon{width:18px;height:18px;flex-shrink:0}.email-status-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.email-status-actions form{margin:0}.email-status-actions button{padding:8px 16px;font-size:.86rem}.verify-banner{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px}.verify-banner form{margin:0}.verify-banner .link-button{background:none;border:none;padding:0;color:var(--acc-text);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.verify-page{max-width:560px}.verify-page form{margin:22px 0 14px}.verify-note{font-size:.9rem}.verify-banner{background:var(--acc-tint-soft);border-color:var(--acc-border);color:var(--dim)}.verify-banner strong{color:var(--cream)}.theme-options{display:grid;grid-template-columns:repeat(auto-fit, minmax(130px, 1fr));gap:12px;margin-bottom:16px}.theme-option{display:flex;flex-direction:column;gap:10px;min-width:0;padding:10px;border-radius:var(--radius-md);border:1px solid var(--line-strong);cursor:pointer;color:var(--dim);transition:border-color var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.theme-option:hover{border-color:var(--acc-border)}.theme-option input{position:absolute;opacity:0;width:0;height:0}.theme-option:has(input:checked){border-color:var(--acc);background:var(--acc-tint-soft);color:var(--cream)}.theme-option:has(input:focus-visible){box-shadow:var(--focus-ring)}.theme-option-label{display:flex;align-items:center;gap:6px;font-weight:700;font-size:.9rem}.theme-option-label .icon{width:16px;height:16px;flex-shrink:0}.theme-swatch{position:relative;display:block;height:68px;border-radius:8px;overflow:hidden;border:1px solid var(--line-strong)}.theme-option-dark .theme-swatch{background:linear-gradient(#e8a93c, #e8a93c) 10px 10px/22% 6px no-repeat,linear-gradient(#f3e9d9, #f3e9d9) 10px 24px/46% 5px no-repeat,linear-gradient(#241d16, #241d16) 10px 36px/calc(50% - 14px) 22px no-repeat,linear-gradient(#241d16, #241d16) calc(100% - 10px) 36px/calc(50% - 14px) 22px no-repeat,#14100d}.theme-option-light .theme-swatch{background:linear-gradient(#e8a93c, #e8a93c) 10px 10px/22% 6px no-repeat,linear-gradient(#2b2118, #2b2118) 10px 24px/46% 5px no-repeat,linear-gradient(#ffffff, #ffffff) 10px 36px/calc(50% - 14px) 22px no-repeat,linear-gradient(#ffffff, #ffffff) calc(100% - 10px) 36px/calc(50% - 14px) 22px no-repeat,#f6f0e4}.theme-option-system .theme-swatch::before,.theme-option-system .theme-swatch::after{content:"";position:absolute;inset:0}.theme-option-system .theme-swatch::before{background:linear-gradient(#e8a93c, #e8a93c) 10px 10px/22% 6px no-repeat,linear-gradient(#f3e9d9, #f3e9d9) 10px 24px/46% 5px no-repeat,linear-gradient(#241d16, #241d16) 10px 36px/calc(50% - 14px) 22px no-repeat,linear-gradient(#241d16, #241d16) calc(100% - 10px) 36px/calc(50% - 14px) 22px no-repeat,#14100d;clip-path:polygon(0 0, 58% 0, 42% 100%, 0 100%)}.theme-option-system .theme-swatch::after{background:linear-gradient(#e8a93c, #e8a93c) 10px 10px/22% 6px no-repeat,linear-gradient(#2b2118, #2b2118) 10px 24px/46% 5px no-repeat,linear-gradient(#ffffff, #ffffff) 10px 36px/calc(50% - 14px) 22px no-repeat,linear-gradient(#ffffff, #ffffff) calc(100% - 10px) 36px/calc(50% - 14px) 22px no-repeat,#f6f0e4;clip-path:polygon(58% 0, 100% 0, 100% 100%, 42% 100%)}.not-found-page{display:flex;justify-content:center;padding:60px 0}.not-found-panel{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:48px 40px;max-width:560px;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.not-found-icon{color:var(--muted);opacity:.6}.not-found-icon .icon{width:64px;height:64px}.not-found-panel h1{margin:0}.not-found-icon{color:var(--acc-text);opacity:.8}.not-found-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}.onboarding-panel{grid-column:1/-1;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:0;margin-top:20px;display:flex;overflow:hidden}@media(max-width: 1024px){.onboarding-panel{flex-direction:column}}.onboarding-content{width:50%;padding:48px 40px;position:relative;display:flex;flex-direction:column;justify-content:center}@media(max-width: 1024px){.onboarding-content{width:100%;padding-left:16px;padding-right:16px}}.onboarding-image{position:relative;width:50%;background:var(--s3);display:flex;align-items:center;justify-content:center;min-height:500px}@media(max-width: 1024px){.onboarding-image{width:100%;min-height:400px}}@media(max-width: 460px){.onboarding-image{min-height:300px}}.onboarding-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s var(--ease-standard)}.onboarding-slide.active{opacity:1}.onboarding-slide img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.onboarding-image-mark{width:120px;height:120px;border-radius:32px;background:var(--acc);color:var(--on-acc);display:flex;align-items:center;justify-content:center}.onboarding-image-mark .icon{width:72px;height:72px}.onboarding-icon{position:absolute;top:24px;right:24px;color:var(--acc-text);opacity:.7}.onboarding-icon .icon{width:40px;height:40px}.onboarding-panel h2{margin:0;padding-right:48px}.onboarding-steps{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:10px;text-align:left}.onboarding-steps li{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--dim);line-height:1.3}.onboarding-steps .icon{width:20px;height:20px;color:var(--acc-text);flex-shrink:0}.onboarding-actions{display:flex;gap:10px;margin-top:8px;flex-wrap:wrap}@media(max-width: 460px){.onboarding-actions{flex-direction:column}}.onboarding-actions .button-link{white-space:nowrap}.admin-onboarding-toggle{text-align:center;margin:12px 0 0;font-size:.85rem}.faq-page h1{margin-bottom:6px}.faq-page>.muted{margin:0 0 24px}.faq-accordion{display:flex;flex-direction:column;gap:10px}.faq-item{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:0;overflow:hidden}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.1rem;cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary .icon{width:18px;height:18px;color:var(--muted);flex-shrink:0;transition:transform var(--duration-base) var(--ease-standard)}.faq-item[open] summary .icon{transform:rotate(180deg)}.faq-answer{padding:0 22px 20px;color:var(--muted)}.faq-answer p{margin:0;line-height:1.6}.lp-body{--lp-ease: cubic-bezier(0.32, 0.72, 0, 1);--lp-ring: 0 0 0 2px var(--bg), 0 0 0 4px var(--acc);background:var(--bg);color:var(--cream);font-family:var(--font-body);font-size:16px;line-height:24px;overflow-x:clip}.lp-body *,.lp-body *::before,.lp-body *::after{box-sizing:border-box}.lp{max-width:100dvw;overflow-x:clip}.lp-wrap{width:100%;max-width:1200px;margin-inline:auto;padding-inline:40px}@media(max-width: 768px){.lp-wrap{padding-inline:24px}}.lp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.lp-muted{color:var(--muted)}.lp .icon,.lp-nav .icon,.lp-footer .icon{width:1em;height:1em}.lp-skip{position:fixed;left:16px;top:-64px;z-index:100;padding:8px 16px;border-radius:8px;background:var(--acc);color:var(--on-acc);font-weight:700;font-size:14px;line-height:20px;transition:top 300ms var(--lp-ease)}.lp-skip:focus{top:16px}#import,#features,#how,#faq,#request{scroll-margin-top:89px}@media(max-width: 860px){#import,#features,#how,#faq,#request{scroll-margin-top:81px}}.lp h1,.lp h2,.lp h3{font-family:var(--font-display);font-weight:var(--display-weight);margin:0;color:var(--cream);text-wrap:balance;letter-spacing:-0.015em}.lp h3{letter-spacing:-0.005em}.lp-hero-title{max-width:720px;font-size:44px;line-height:1.02}@media(min-width: 769px){.lp-hero-title{font-size:56px}}@media(min-width: 1180px){.lp-hero-title{font-size:72px}}.lp-h2{max-width:680px;font-size:36px;line-height:1.05}@media(min-width: 769px){.lp-h2{font-size:48px}}.lp-h3{font-size:24px;line-height:32px}.lp-hero-sub,.lp-lede{max-width:620px;margin:0;color:var(--dim);font-size:18px;line-height:28px;text-wrap:pretty}.lp p{text-wrap:pretty}.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:9999px;border:1px solid rgba(0,0,0,0);font-family:inherit;font-size:16px;line-height:24px;font-weight:700;text-decoration:none;cursor:pointer;transition:background 500ms var(--lp-ease),border-color 500ms var(--lp-ease),color 500ms var(--lp-ease),transform 500ms var(--lp-ease),box-shadow 300ms var(--lp-ease),opacity 300ms var(--lp-ease)}.lp-btn-primary{background:var(--acc);color:var(--on-acc)}.lp-btn-primary:hover{background:var(--acc-hover);color:var(--on-acc);border-color:rgba(0,0,0,0);transform:translateY(-2px);text-decoration:none}.lp-btn:active{transform:scale(0.98);transition-duration:100ms}.lp-btn:focus-visible,.lp-nav a:focus-visible,.lp-footer a:focus-visible,.lp-faq summary:focus-visible,.lp-burger:focus-visible{outline:none;box-shadow:var(--lp-ring)}.lp-btn-secondary{background:rgba(0,0,0,0);color:var(--cream);border-color:var(--outline-border)}.lp-btn-secondary:hover{border-color:var(--acc);color:var(--acc-text);transform:translateY(-2px);text-decoration:none}.lp-btn-sm{padding:8px 16px;font-size:14px;line-height:20px}.lp-btn.is-loading{opacity:.7;cursor:progress;pointer-events:none}.lp-form{display:flex;flex-direction:column;gap:8px;margin:0}.lp-form-fields{display:flex;flex-direction:column;gap:12px}.lp-field{display:flex;flex-direction:column;gap:6px;min-width:0}.lp-form label{font-size:13px;line-height:20px;font-weight:700;color:var(--dim)}.lp-form label span{font-weight:500;color:var(--muted)}.lp-form input[type=email],.lp-form input[type=text]{width:100%;padding:13px 16px;border-radius:12px;border:1px solid var(--field-border);background:var(--field-bg);color:var(--cream);font-family:inherit;font-size:16px;line-height:24px;transition:border-color 300ms var(--lp-ease),box-shadow 300ms var(--lp-ease),background 300ms var(--lp-ease)}.lp-form input::-moz-placeholder{color:var(--placeholder)}.lp-form input::placeholder{color:var(--placeholder)}.lp-form input:hover{border-color:var(--field-border-hover)}.lp-form input:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 4px var(--acc-tint);background:var(--hover-bg)}.lp-form input[aria-invalid=true]{border-color:var(--ember)}.lp-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.lp-proof .icon{flex-shrink:0;margin-top:3px}.lp-form-status{min-height:0;margin:0;font-size:14px;line-height:20px}.lp-form-status:empty{display:none}.lp-form-status.is-ok{color:var(--ok-text);font-weight:700}.lp-form-status.is-error{color:var(--ember-text);font-weight:700}.lp-assure{margin:0;font-size:13px;line-height:20px;color:var(--muted)}.lp-proof{display:flex;align-items:flex-start;gap:8px;margin:20px 0 0;font-size:14px;line-height:20px;font-weight:700;color:var(--acc-text)}.lp-glass{padding:28px;border-radius:24px;background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:blur(22px);box-shadow:var(--shadow-pop);display:flex;flex-direction:column;gap:16px}.lp-glass-title{font-size:24px !important;line-height:32px !important}.lp-glass .lp-btn{width:100%}.lp-glass .lp-assure{text-align:center}.lp-nav-wrap{position:fixed;top:0;left:0;right:0;z-index:50;pointer-events:none}.lp-nav{pointer-events:auto;position:relative;z-index:45;width:100%;padding:16px 0;background:var(--nav-glass);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.lp-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1440px;margin-inline:auto;padding-inline:40px}@media(max-width: 1024px){.lp-nav-inner{padding-inline:24px}}.lp-nav-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--cream);border-radius:9999px;flex-shrink:0;white-space:nowrap}.lp-nav-brand:hover{text-decoration:none}.lp-nav-brand:hover .brand-mark{transform:rotate(-8deg) scale(1.06);background:var(--acc-hover)}.lp-nav .brand-mark .icon,.lp-footer .brand-mark .icon{width:22px;height:22px}.lp-nav-brand .brand-name{font-size:2rem;line-height:1.1}.lp-nav-links{display:flex;align-items:center;gap:4px}.lp-nav-links a{padding:10px 16px;border-radius:9999px;font-size:14.7px;line-height:20px;font-weight:600;color:var(--muted);text-decoration:none;transition:color 300ms var(--lp-ease),background 300ms var(--lp-ease)}.lp-nav-links a:hover{color:var(--cream);background:var(--hover-bg)}.lp-nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.lp-burger{display:none;position:relative;width:40px;height:40px;border-radius:9999px;border:none;background:rgba(0,0,0,0);padding:0;cursor:pointer}.lp-burger:hover{background:var(--hover-bg)}.lp-burger span{position:absolute;left:12px;right:12px;height:2px;border-radius:2px;background:var(--cream);transition:transform 700ms var(--lp-ease),top 700ms var(--lp-ease)}.lp-burger span:nth-child(1){top:15px}.lp-burger span:nth-child(2){top:23px}.lp-burger[aria-expanded=true] span:nth-child(1){top:19px;transform:rotate(45deg)}.lp-burger[aria-expanded=true] span:nth-child(2){top:19px;transform:rotate(-45deg)}@media(max-width: 860px){.lp-nav{padding:12px 0}.lp-nav-links{display:none}.lp-burger{display:block}.lp-nav-actions{margin-left:auto}}@media(max-width: 560px){.lp-nav-actions{display:none}.lp-burger{margin-left:auto}.lp-nav-brand .brand-name{font-size:1.7rem}}.lp-menu{position:fixed;inset:0;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;background:rgba(14,10,8,.86);backdrop-filter:blur(64px);pointer-events:auto;visibility:hidden;opacity:0;transition:opacity 700ms var(--lp-ease),visibility 0s linear 700ms}.lp-menu.is-open{visibility:visible;opacity:1;transition-delay:0s}.lp-menu a:not(.lp-btn){font-family:var(--font-display);font-size:36px;line-height:40px;font-weight:var(--display-weight);color:var(--cream);text-decoration:none}.lp-menu a.lp-menu-login{display:inline-flex;align-items:center;gap:12px;color:var(--acc-text)}.lp-menu a.lp-menu-login .icon{width:.8em;height:.8em}.lp-menu>*{transform:translateY(48px);opacity:0;transition:transform 700ms var(--lp-ease),opacity 700ms var(--lp-ease);transition-delay:0ms}.lp-menu.is-open>*{transform:none;opacity:1;transition-delay:calc(100ms + var(--i, 0)*50ms)}.lp-hero{position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;display:flex;align-items:center;padding-block:160px 180px;overflow:hidden}.lp-hero-bg,.lp-final-bg{position:absolute;inset:0;z-index:-1}.lp-hero-bg picture,.lp-final-bg picture{display:block;width:100%;height:100%}.lp-hero-bg img,.lp-final-bg img,.lp-hero-video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 55%;object-position:center 55%;display:block}.lp-hero-video{position:absolute;inset:0}@media(max-width: 960px){.lp-hero-video{display:none}}.lp-hero-bg::after{content:"";position:absolute;inset:0;bottom:-1px;background:linear-gradient(90deg, rgba(14, 10, 8, 0.82) 0%, rgba(14, 10, 8, 0.32) 52%, rgba(14, 10, 8, 0.05) 100%),linear-gradient(180deg, rgba(14, 10, 8, 0.05) 0%, rgba(14, 10, 8, 0.08) 34%, rgba(14, 10, 8, 0.58) 76%, var(--bg) 100%)}.lp-hero-grid{display:grid;grid-template-columns:minmax(0, 1.25fr) minmax(0, 0.75fr);gap:64px;align-items:center}.lp-hero-copy{min-width:0}.lp-hero-copy .lp-hero-sub{margin-top:24px}.lp-hero .lp-glass{animation:lp-arrive 1000ms var(--lp-ease) 200ms backwards}.lp-hero-copy>:not(.lp-hero-title){animation:lp-arrive 1000ms var(--lp-ease) backwards}.lp-hero-marquee{position:absolute;left:0;right:0;bottom:0;padding:20px 0 32px;z-index:1}@media(max-width: 960px){.lp-hero{padding-block:128px 140px}.lp-hero-grid{grid-template-columns:minmax(0, 1fr);gap:32px}.lp-hero{align-items:flex-start}.lp-hero-copy{margin-top:16vh}.lp-hero-bg::after{background:linear-gradient(180deg, rgba(14, 10, 8, 0.06) 0%, rgba(14, 10, 8, 0.12) 14%, rgba(14, 10, 8, 0.82) 22%, rgba(14, 10, 8, 0.9) 42%, rgba(14, 10, 8, 0.86) 70%, var(--bg) 100%)}}@keyframes lp-arrive{from{opacity:0;transform:translateY(32px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}.lp-section{padding-block:112px}@media(max-width: 768px){.lp-section{padding-block:64px}}.lp-section-head{margin-bottom:48px}.lp-problem{padding-top:112px;padding-bottom:80px}@media(max-width: 768px){.lp-problem{padding-top:72px;padding-bottom:56px}}.lp-problem-grid{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);gap:32px 64px;align-items:start}.lp-problem-grid>:first-child{grid-row:span 2}.lp-problem-grid .lp-lede{margin-top:24px}@media(max-width: 860px){.lp-problem-grid{grid-template-columns:minmax(0, 1fr)}.lp-problem-grid>:first-child{grid-row:auto}}.lp-scatter{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.lp-scatter>*{padding:8px 16px;border-radius:9999px;border:1px solid var(--outline-border);font-size:14px;line-height:20px;font-weight:600;color:var(--dim)}.lp-solution{display:flex;gap:16px;align-items:flex-start;padding:24px;border-radius:16px;background:var(--acc-tint-soft);border:1px solid var(--acc-border)}.lp-solution p{margin:0;font-size:18px;line-height:28px;color:var(--dim)}.lp-solution p strong{color:var(--cream)}.lp-solution-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--acc);color:var(--on-acc);font-size:22px}.lp-tagline{padding-block:96px}.lp-tagline-text{max-width:820px;margin:0;font-family:var(--font-display);font-weight:var(--display-weight);font-size:36px;line-height:1.1;letter-spacing:-0.015em;color:var(--cream)}@media(min-width: 769px){.lp-tagline-text{font-size:56px}}.lp-tagline-grid{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 400px);align-items:center}.lp-tagline-text{position:relative;z-index:2}.lp-tagline-photo{display:block;margin-left:-120px;aspect-ratio:4/5;overflow:hidden;border-radius:24px;background:var(--s3);-webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 38%);mask-image:linear-gradient(90deg, transparent 0%, #000 38%)}.lp-tagline-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}@media(max-width: 860px){.lp-tagline-grid{grid-template-columns:minmax(0, 1fr);gap:32px}.lp-tagline-photo{margin-left:0;aspect-ratio:4/3;-webkit-mask-image:none;mask-image:none}}.lp-word{opacity:.45;transition:opacity 700ms var(--lp-ease)}.lp-word.is-lit{opacity:1}.lp-url{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:9999px;background:var(--field-bg);border:1px solid var(--field-border);font-size:14px;line-height:20px;color:var(--muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lp-import-grid{display:none}@media(min-width: 901px){.lp-import-grid{display:grid;grid-template-columns:minmax(0, 1.15fr) minmax(0, 0.85fr);gap:56px;align-items:center}}.lp-import-copy{display:flex;flex-direction:column;gap:20px}.lp-import-sources{display:flex;flex-wrap:wrap;gap:8px}@media(min-width: 901px){.lp-import-sources{margin-bottom:30px}}.lp-import-stack{display:flex;flex-direction:column;gap:56px}@media(min-width: 901px){.lp-import-stack{display:none}}.lp-import-stack-item{display:flex;flex-direction:column;gap:16px}.lp-import-chip{align-self:flex-start;padding:8px 18px;border-radius:9999px;background:var(--acc-tint);color:var(--acc-text);font-size:13px;line-height:20px;font-weight:700}.lp-source-btn{padding:10px 18px;border-radius:9999px;border:1px solid var(--outline-border);background:rgba(0,0,0,0);color:var(--dim);font:inherit;font-size:14px;line-height:20px;font-weight:700;cursor:pointer;transition:background 300ms var(--lp-ease),color 300ms var(--lp-ease),border-color 300ms var(--lp-ease),transform 300ms var(--lp-ease)}.lp-source-btn:hover{border-color:var(--acc);color:var(--cream)}.lp-source-btn:focus-visible{outline:none;box-shadow:var(--lp-ring)}.lp-source-btn.is-on{background:var(--acc);border-color:var(--acc);color:var(--on-acc)}.lp-import-stage{position:relative;min-height:340px}.lp-import-card{background:var(--s1);border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:var(--shadow-pop);display:none;overflow:hidden}.lp-import-card.is-on{display:block}.lp-import-photo{display:block;margin-top:14px;width:100%;height:clamp(110px,22vh,200px);border-radius:14px;overflow:hidden;background:var(--s3)}@media(min-width: 901px){.lp-import-photo{height:clamp(200px,30vh,280px)}}.lp-import-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.lp-import-recipe-body{display:flex;flex-direction:column;gap:10px;min-width:0;margin-top:16px}.lp-import-recipe-body h3{margin:0;font-size:22px;line-height:26px}.lp-import-facts{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:13px;line-height:18px;color:var(--muted)}.lp-import-facts span{display:inline-flex;align-items:center;gap:4px}.lp-import-facts .icon{width:14px;height:14px;flex-shrink:0}.lp-import-facts .star-rating{display:inline-flex;gap:1px}.lp-import-facts .star{width:13px;height:13px}.lp-import-equip{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.lp-import-equip li{display:inline-flex;align-items:center;gap:5px;padding:4px 10px 4px 8px;border-radius:9999px;background:var(--chip-bg);font-size:12px;line-height:16px;font-weight:600;color:var(--dim)}.lp-import-equip .icon-equipment{width:15px;height:15px;color:var(--acc-text);flex-shrink:0}.lp-import-ing{gap:6px}.lp-import-ing li{padding:4px 12px;font-size:13px;line-height:18px;border-radius:9999px}[data-import-desc],[data-import-heading]{transition:opacity 220ms var(--lp-ease)}[data-import-desc].is-fading,[data-import-heading].is-fading{opacity:0}.lp-import-caret{display:inline-block;width:2px;height:15px;background:var(--acc);margin-left:1px}.lp-motion .lp-import-stage-wrap{height:calc(var(--n, 4)*93vh)}.lp-motion .lp-import-stage{position:sticky;top:calc(50vh - 270px);min-height:0;height:540px}@media(min-width: 901px){.lp-motion .lp-import-copy{position:sticky;top:calc(50vh - 270px);height:540px;justify-content:center;align-self:start}}.lp-motion .lp-import-stage .lp-import-card{display:block;position:absolute;inset:0;opacity:0;transform:translateX(48px) scale(0.98);pointer-events:none;transition:opacity 520ms var(--lp-ease),transform 560ms var(--lp-ease)}.lp-motion .lp-import-stage .lp-import-card.is-on{opacity:1;transform:none;pointer-events:auto}.lp-motion .lp-import-stage .lp-import-card.is-prev{opacity:0;transform:translateX(-48px) scale(0.98)}.lp-motion .lp-import-stage .lp-import-card.is-on>*{animation:lp-arrive 520ms var(--lp-ease) backwards}.lp-motion .lp-import-stage .lp-import-card.is-on .lp-import-ing li{animation:lp-arrive 420ms var(--lp-ease) calc(160ms + var(--n)*70ms) backwards}.lp-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:24px}@media(max-width: 860px){.lp-steps{grid-template-columns:minmax(0, 1fr)}}.lp-steps li{padding:28px;border-radius:24px;border:1px solid var(--line);background:var(--s1)}.lp-steps h3{margin:20px 0 8px;font-size:24px;line-height:28px}.lp-steps p{margin:0;color:var(--muted)}.lp-step-no{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:9999px;background:var(--acc-tint);color:var(--acc-text);font-family:var(--font-display);font-weight:var(--display-weight);font-size:20px}.lp-pass{padding-block:16px 64px;overflow:hidden}.lp-pass-head{display:flex;flex-direction:column;gap:8px;margin-bottom:32px}.lp-pass-row{width:100%;overflow:hidden;margin-bottom:16px;-webkit-mask-image:linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);mask-image:linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%)}.lp-pass-row:last-of-type{margin-bottom:0}.lp-pass-track{display:flex;width:-moz-max-content;width:max-content;animation:lp-pass-scroll 70s linear infinite}.lp-pass-row[data-pass-row="1"] .lp-pass-track{animation-direction:reverse;animation-duration:62s}.lp-pass-set{display:flex;gap:20px;padding:0 20px 0 0;margin:0;list-style:none;flex-shrink:0}.lp-pass-card{width:280px;flex-shrink:0}@media(hover: hover){.lp-pass-row .recipe-card:hover{transform:none;border-color:var(--line);box-shadow:none}}@keyframes lp-pass-scroll{to{transform:translateX(-33.3333333333%)}}@media(prefers-reduced-motion: reduce){.lp-pass-track{animation:none;width:auto;flex-wrap:wrap}.lp-pass-set[aria-hidden=true]{display:none}.lp-pass-set{flex-wrap:wrap;padding-right:0}.lp-pass-row{-webkit-mask-image:none;mask-image:none;overflow:visible}}.lp-faq-wrap{max-width:880px}.lp-faq{display:flex;flex-direction:column;gap:10px}.lp-faq details{background:var(--s1);border:1px solid var(--line);border-radius:16px;transition:border-color 300ms var(--lp-ease)}.lp-faq details:hover,.lp-faq details[open]{border-color:var(--line-strong)}.lp-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-radius:16px;font-family:var(--font-display);font-size:20px;line-height:28px;font-weight:var(--display-weight);cursor:pointer;list-style:none;transition:color 300ms var(--lp-ease)}@media(max-width: 380px){.lp-faq summary{font-size:16px;line-height:22px}}.lp-faq details:hover summary{color:var(--acc-text)}.lp-faq summary::-webkit-details-marker{display:none}.lp-faq summary .icon{width:20px;height:20px;flex-shrink:0;color:var(--muted);transition:transform 700ms var(--lp-ease),color 300ms var(--lp-ease)}.lp-faq details[open] summary .icon{transform:rotate(180deg)}.lp-faq details:hover summary .icon{color:var(--acc-text)}.lp-faq-panel{display:block !important;overflow:hidden;max-height:0;transition:max-height 380ms var(--lp-ease)}.lp-faq details[open] .lp-faq-panel{max-height:300px}.lp-faq-panel p{margin:0;padding:0 24px 24px;color:var(--muted)}.lp-final{position:relative;isolation:isolate;overflow:hidden;padding-block:128px}@media(max-width: 768px){.lp-final{padding-block:64px}}.lp-final-bg img{-o-object-position:center 45%;object-position:center 45%}.lp-final-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, var(--bg) 0%, rgba(14, 10, 8, 0.62) 30%, rgba(14, 10, 8, 0.78) 100%)}.lp-final-inner{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 440px);gap:64px;align-items:center}@media(max-width: 860px){.lp-final-inner{grid-template-columns:minmax(0, 1fr);gap:32px}}.lp-final-sub{margin:16px 0 0;font-size:18px;line-height:28px;color:var(--dim)}.lp-footer{border-top:1px solid var(--line);color:var(--muted);padding-block:48px 32px}.lp-footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}.lp-footer-links{display:flex;flex-wrap:wrap;gap:0 24px}.lp-footer-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:14px;line-height:20px;font-weight:600;text-decoration:none;border-radius:6px;transition:color 300ms var(--lp-ease)}.lp-footer-links a:hover{color:var(--cream)}.lp-footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;margin-top:32px}.lp-copyright{margin:0;font-size:12px;line-height:16px;color:var(--muted)}.lp-copyright a{color:inherit;text-decoration:underline}.lp-copyright a:hover{color:var(--acc-text)}.lp-legal-links{display:flex;flex-wrap:wrap;gap:0 20px}.lp-legal-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:12px;line-height:16px;text-decoration:none;border-radius:4px;transition:color 300ms var(--lp-ease)}.lp-legal-links a:hover{color:var(--cream);text-decoration:underline}.lp-legal-links a:focus-visible{outline:none;box-shadow:var(--lp-ring)}.lp-motion .lp-reveal{opacity:0;transform:translateY(64px);filter:blur(12px);transition:opacity 900ms var(--lp-ease),transform 900ms var(--lp-ease),filter 900ms var(--lp-ease);transition-delay:calc(var(--i, 0)*100ms)}.lp-motion .lp-reveal.is-in{opacity:1;transform:none;filter:none}.lp-motion .lp-faq details.lp-reveal{transition:opacity 900ms var(--lp-ease),transform 900ms var(--lp-ease),filter 900ms var(--lp-ease),border-color 300ms var(--lp-ease)}html.lp-motion{scroll-behavior:smooth}@media(prefers-reduced-motion: reduce){.lp-body *,.lp-body *::before,.lp-body *::after{transition-duration:.01ms !important;animation-duration:.01ms !important}.lp-word{opacity:1}html{scroll-behavior:auto}}@media print{.lp-nav-wrap,.lp-menu{display:none}.lp-motion .lp-reveal{opacity:1;transform:none;filter:none}}.lp-marquee{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg, transparent 0, #000 10%, #000 90%, transparent 100%);mask-image:linear-gradient(90deg, transparent 0, #000 10%, #000 90%, transparent 100%)}.lp-marquee-track{display:flex;width:-moz-max-content;width:max-content;animation:lp-marquee 38s linear infinite}.lp-marquee:hover .lp-marquee-track{animation-play-state:paused}.lp-marquee-set{display:flex;align-items:center;gap:64px;padding:8px 64px 8px 0;margin:0;list-style:none;flex-shrink:0}.lp-marquee-set li{display:flex;align-items:center;gap:12px;color:var(--dim);font-size:20px;line-height:28px;font-weight:700;white-space:nowrap}.lp-marquee-set .lp-logo,.lp-marquee-set .icon{width:30px;height:30px;flex-shrink:0}.lp-marquee-set .lp-logo{fill:currentColor}@keyframes lp-marquee{to{transform:translateX(-16.6666666667%)}}@media(prefers-reduced-motion: reduce){.lp-marquee-track{animation:none;width:auto;flex-wrap:wrap;justify-content:center}.lp-marquee-set[aria-hidden=true]{display:none}.lp-marquee-set{flex-wrap:wrap;justify-content:center;gap:24px 40px;padding-right:0}.lp-marquee{-webkit-mask-image:none;mask-image:none}}.lp-marquee-label{margin:0 0 12px;text-align:center;font-size:13px;line-height:20px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-shadow:0 1px 3px rgba(0,0,0,.5)}.lp-hero-marquee .lp-marquee-set li{text-shadow:0 1px 3px rgba(0,0,0,.5)}.lp-showcase .lp-section-head{margin-bottom:48px}.lp-showcase .lp-section-head .lp-lede{margin-top:16px}.lp-feature{display:grid;grid-template-columns:minmax(0, 0.9fr) minmax(0, 1.1fr);gap:64px;align-items:center;padding-block:40px}@media(max-width: 860px){.lp-feature{grid-template-columns:minmax(0, 1fr);gap:24px;padding-block:32px}}.lp-showcase .lp-section-head+.lp-feature{padding-top:0}.lp-feature-flip .lp-feature-copy{order:2}@media(max-width: 860px){.lp-feature-flip .lp-feature-copy{order:0}}.lp-feature-copy{min-width:0}.lp-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:9999px;background:var(--acc-tint);color:var(--acc-text);font-size:13px;line-height:20px;font-weight:700}.lp-feature-copy .lp-h3{margin:16px 0 12px;font-size:30px;line-height:1.1}@media(min-width: 769px){.lp-feature-copy .lp-h3{font-size:40px}}.lp-checks{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px}.lp-checks li{display:flex;align-items:flex-start;gap:12px;color:var(--dim);font-size:16px;line-height:24px}.lp-checks .icon{flex-shrink:0;margin-top:4px;color:var(--acc-text)}.lp-mock{display:flex;justify-content:center;min-width:0;padding-block:24px;perspective:1800px;pointer-events:none}.lp-mock-frame{width:100%;transform:rotateY(-14deg) rotateX(6deg) rotateZ(1.5deg);transform-origin:60% 50%;transition:transform 900ms var(--lp-ease);box-shadow:-32px 44px 80px var(--shadow-color-strong),0 0 0 1px rgba(243,233,217,.04)}.lp-feature-flip .lp-mock-frame{transform:rotateY(14deg) rotateX(6deg) rotateZ(-1.5deg);transform-origin:40% 50%;box-shadow:32px 44px 80px var(--shadow-color-strong),0 0 0 1px rgba(243,233,217,.04)}@media(hover: hover){.lp-feature:hover .lp-mock-frame{transform:rotateY(-7deg) rotateX(3deg) rotateZ(0.5deg)}.lp-feature-flip:hover .lp-mock-frame{transform:rotateY(7deg) rotateX(3deg) rotateZ(-0.5deg)}}@media(max-width: 860px){.lp-mock-frame,.lp-feature-flip .lp-mock-frame{transform:rotateY(-8deg) rotateX(4deg) rotateZ(1deg);transform-origin:center;box-shadow:-18px 28px 50px var(--shadow-color-strong)}.lp-feature-flip .lp-mock-frame{transform:rotateY(8deg) rotateX(4deg) rotateZ(-1deg);box-shadow:18px 28px 50px var(--shadow-color-strong)}}.lp-mock-window{max-width:580px;border-radius:16px;border:1px solid var(--line-strong);background:var(--bg);overflow:hidden}.lp-mock-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--s2);border-bottom:1px solid var(--line)}.lp-mock-bar i{flex-shrink:0;width:10px;height:10px;border-radius:50%;background:var(--line-strong)}.lp-mock-url{display:flex;align-items:center;gap:6px;flex:1;min-width:0;margin-left:10px;padding:4px 12px;border-radius:9999px;background:var(--field-bg);color:var(--muted);font-size:12px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-mock-url .icon{flex-shrink:0}.lp-mock-view{position:relative;height:var(--h, 400px);overflow:hidden;-webkit-mask-image:linear-gradient(180deg, #000 88%, transparent 100%);mask-image:linear-gradient(180deg, #000 88%, transparent 100%)}@media(max-width: 560px){.lp-mock-view{height:calc(var(--h, 400px)*.85)}}.lp-mock-scroll{padding:16px}.lp-motion .lp-mock-scroll{will-change:transform;animation:lp-mock-drift var(--dur, 18s) ease-in-out infinite alternate;animation-play-state:paused}.lp-motion .lp-feature.is-in .lp-mock-scroll{animation-play-state:running}@keyframes lp-mock-drift{from{transform:translateY(0)}to{transform:translateY(calc(var(--shift, 200px) * -1))}}.lp-mock-search{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:9999px;background:var(--field-bg);border:1px solid var(--field-border);color:var(--placeholder);font-size:14px;line-height:20px}.lp-mock-chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}.lp-mock-chips span{padding:4px 12px;border-radius:9999px;border:1px solid var(--outline-border);color:var(--dim);font-size:12px;line-height:16px;font-weight:700}.lp-mock-chips .is-on{background:var(--acc-tint);border-color:var(--acc);color:var(--acc-text)}.lp-mock-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px}.lp-mock-grid .recipe-card-body{padding:12px}.lp-mock-grid .recipe-card-body h3{margin:0 0 6px;font-size:1rem;line-height:1.2}.lp-mock-grid .recipe-meta{margin-bottom:6px;font-size:.74rem}.lp-mock-grid .chip-floating{top:8px;left:8px}.lp-mock-phone{width:280px;max-width:100%;aspect-ratio:9/18;border-radius:40px;border:7px solid var(--line-strong);background:var(--bg);overflow:hidden}.lp-cook{display:flex;flex-direction:column;height:100%}.lp-cook-bar{display:flex;align-items:center;gap:8px;padding:28px 12px 10px;border-bottom:1px solid var(--line)}.lp-cook-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--field-bg);color:var(--cream);font-size:16px}.lp-cook-title{flex:1;min-width:0;font-family:var(--font-display);font-weight:var(--display-weight);font-size:14px;line-height:18px;text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lp-cook-progress{height:4px;background:var(--line)}.lp-cook-progress span{display:block;height:100%;width:33%;background:var(--acc)}.lp-motion .lp-cook-progress span{animation:lp-cook-progress 12s linear infinite;animation-play-state:paused}.lp-cook-steps{position:relative;flex:1;min-height:0}.lp-cook-step{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:20px 18px;opacity:0}.lp-cook-step[style*="--k:0"]{opacity:1}.lp-motion .lp-cook-step{animation:lp-cook-step 12s ease-in-out infinite both;animation-delay:calc(var(--k)*4s);animation-play-state:paused}.lp-cook-num{margin:0;font-family:var(--font-display);font-weight:var(--display-weight);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--acc-text)}.lp-cook-text{margin:0;font-size:19px;line-height:1.3;font-weight:500;color:var(--cream);text-wrap:pretty}.lp-cook-timer{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:9999px;background:var(--acc-tint);border:1px solid var(--acc-border);color:var(--acc-text);font-size:13px;line-height:16px;font-weight:700}.lp-cook-nav{display:flex;gap:10px;padding:12px 14px 20px;border-top:1px solid var(--line)}.lp-cook-nav span{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px;border-radius:9999px;font-size:14px;line-height:20px;font-weight:700}.lp-cook-back{border:1px solid var(--outline-border);color:var(--cream)}.lp-cook-next{background:var(--acc);color:var(--on-acc)}.lp-motion .lp-feature.is-in .lp-cook-step,.lp-motion .lp-feature.is-in .lp-cook-progress span{animation-play-state:running}@keyframes lp-cook-step{0%{opacity:0;transform:translateX(16px)}4%,29%{opacity:1;transform:none}33%,100%{opacity:0;transform:translateX(-16px)}}@keyframes lp-cook-progress{0%,32%{width:33%}33%,65%{width:50%}66%,100%{width:66%}}.lp-feature-flip .lp-mock-phone{transform-origin:40% 50%}.lp-shop-title{margin:0 0 12px;font-family:var(--font-display);font-weight:var(--display-weight);font-size:22px;line-height:28px;color:var(--cream)}.lp-shop-section{margin:16px 0 6px;font-size:12px;line-height:16px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.lp-shop-rows{list-style:none;margin:0;padding:0;display:grid;gap:6px}.lp-shop-rows li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--s1);border:1px solid var(--line);font-size:15px;line-height:20px}.lp-shop-box{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border-radius:6px;border:1.5px solid var(--check-border);color:rgba(0,0,0,0);font-size:14px}.lp-shop-name{flex:1;min-width:0;font-weight:600;color:var(--cream);text-decoration:line-through;text-decoration-color:rgba(0,0,0,0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lp-shop-rows b{flex-shrink:0;padding:2px 10px;border-radius:9999px;background:var(--acc-tint);color:var(--acc-text);font-size:12px;line-height:16px;font-variant-numeric:tabular-nums}.lp-shop-rows small{flex-shrink:0;font-size:12px;color:var(--muted)}@media(max-width: 480px){.lp-shop-rows small{display:none}}.lp-motion .lp-shop-rows li{animation:lp-shop-row 14s ease-in-out infinite;animation-delay:calc(var(--k)*1.1s);animation-play-state:paused}.lp-motion .lp-shop-rows .lp-shop-box{animation:lp-shop-box 14s ease-in-out infinite;animation-delay:calc(var(--k)*1.1s);animation-play-state:paused}.lp-motion .lp-shop-rows .lp-shop-name{animation:lp-shop-name 14s ease-in-out infinite;animation-delay:calc(var(--k)*1.1s);animation-play-state:paused}.lp-motion .lp-feature.is-in .lp-shop-rows li,.lp-motion .lp-feature.is-in .lp-shop-box,.lp-motion .lp-feature.is-in .lp-shop-name{animation-play-state:running}@keyframes lp-shop-row{0%,8%{opacity:1}14%,86%{opacity:.55}94%,100%{opacity:1}}@keyframes lp-shop-box{0%,8%{background:rgba(0,0,0,0);border-color:var(--check-border);color:rgba(0,0,0,0)}14%,86%{background:var(--acc);border-color:var(--acc);color:var(--on-acc)}94%,100%{background:rgba(0,0,0,0);border-color:var(--check-border);color:rgba(0,0,0,0)}}@keyframes lp-shop-name{0%,8%{text-decoration-color:rgba(0,0,0,0);color:var(--cream)}14%,86%{text-decoration-color:var(--muted);color:var(--muted)}94%,100%{text-decoration-color:rgba(0,0,0,0);color:var(--cream)}}.lp-log-month{margin:0 0 12px;font-family:var(--font-display);font-weight:var(--display-weight);font-size:18px;line-height:24px;color:var(--dim)}.lp-log-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px}.lp-log-card{display:flex;flex-direction:column;min-width:0;border-radius:16px;border:1px solid var(--line);background:var(--s1);overflow:hidden}.lp-log-photo{position:relative;aspect-ratio:4/3;background:var(--s3);overflow:hidden}.lp-log-photo img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.lp-log-body{padding:10px 12px 12px;min-width:0}.lp-log-title{margin:0;font-family:var(--font-display);font-weight:var(--display-weight);font-size:15px;line-height:20px;color:var(--cream)}.lp-log-date{margin:2px 0 0;font-size:12px;line-height:16px;font-weight:700;color:var(--muted)}.lp-log-note{margin:6px 0 0;font-size:13px;line-height:18px;color:var(--dim)}.lp-log-grid>li:nth-child(even){margin-top:28px}.lp-more{list-style:none;margin:64px 0 0;padding:0;display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:16px}@media(max-width: 860px){.lp-more{grid-template-columns:repeat(2, minmax(0, 1fr));margin-top:40px}}@media(max-width: 560px){.lp-more{grid-template-columns:minmax(0, 1fr)}}.lp-more li{padding:24px;border-radius:16px;border:1px solid var(--line);background:var(--s1)}.lp-more-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:16px;border-radius:12px;background:var(--acc-tint);color:var(--acc-text);font-size:22px}.lp-more h3{margin:0 0 6px;font-size:20px;line-height:28px}.lp-more p{margin:0;color:var(--muted);font-size:15px;line-height:22px}@media print{.lp-mock{display:none}}.shared-banner{display:flex;flex-wrap:wrap;align-items:center;gap:14px 16px;background:var(--acc-tint-soft);border:1px solid var(--acc-border);border-radius:var(--radius-md);padding:16px 20px;margin:4px 0 24px}.shared-banner-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--acc-tint);color:var(--acc-text)}.shared-banner-icon .icon{width:20px;height:20px}.shared-banner-text{display:flex;flex-direction:column;gap:2px;flex:1 1 180px;min-width:0}.shared-banner-text strong{font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.05rem}.shared-banner-text span{font-size:.9rem;color:var(--muted)}.shared-banner-actions{display:flex;flex-wrap:wrap;gap:8px}.shared-banner-actions form{margin:0}.newsletter-banner-form{flex-direction:row;flex-wrap:wrap;gap:8px}.newsletter-banner-form button{margin-top:0}.shared-banner-actions button,.shared-banner-actions a{margin-top:0}.share-dialog form{display:flex;flex-direction:column;gap:14px;margin-top:14px}.share-dialog .ingredient-modal-actions{margin-top:4px}.share-kinds{border:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.share-kinds legend{padding:0;margin-bottom:8px;font-size:.86rem;font-weight:700;color:var(--dim)}.share-or{margin:-4px 0;text-align:center;font-size:.86rem}.share-dialog .field-hint{font-size:.82rem}.share-current{margin:0;font-size:.86rem}.shared-menu-page{max-width:820px}.shared-menu-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 18px;margin-bottom:24px}.shared-menu-head h1{margin:0;flex:1 1 100%}.shared-menu-head p{margin:0}.shared-menu-head .button-link{margin-left:auto}.shared-menu-day{margin-bottom:26px}.shared-menu-day h2{font-size:1.15rem;margin:0 0 10px;display:flex;align-items:baseline;gap:10px}.shared-menu-date{font-family:var(--font-body);font-size:.86rem;font-weight:500}.shared-menu-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));gap:12px}.shared-menu-item a{display:flex;align-items:center;gap:14px;padding:10px;height:100%;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-md);color:inherit;text-decoration:none;transition:border-color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard)}.shared-menu-item a:hover{border-color:var(--acc-border);background:var(--s2)}.shared-menu-thumb{width:64px;height:64px;flex-shrink:0;border-radius:var(--radius-sm);overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:var(--s3);color:var(--muted)}.shared-menu-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.shared-menu-thumb .icon{width:26px;height:26px}.shared-menu-item-text{display:flex;flex-direction:column;gap:2px;min-width:0}.shared-menu-item-text strong{font-family:var(--font-display);font-weight:var(--display-weight);overflow-wrap:anywhere}.shared-menu-item-text .muted{font-size:.84rem}@media print{.shared-banner{display:none}}.equipment-row{margin:0 0 28px;padding:18px 20px;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-md)}.equipment-row h2{margin:0 0 12px;font-size:1.05rem}.equipment-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:14px 12px}.equipment-item{margin:0;display:flex}.equipment-plain,.equipment-link{display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;background:var(--chip-bg);color:var(--cream);border:1px solid rgba(0,0,0,0);border-radius:999px;font-size:.88rem;font-weight:600;line-height:1.2}.equipment-plain .icon,.equipment-link .icon{width:22px;height:22px;flex-shrink:0;color:var(--acc-text)}.equipment-link{text-decoration:none;transition:border-color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard)}.equipment-link:hover{border-color:var(--acc-border);background:var(--hover-bg);text-decoration:none}.equipment-find{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;font-weight:700;color:var(--acc-text)}.equipment-find .icon{width:13px;height:13px}.equipment-disclosure{margin:12px 0 0;font-size:.8rem}.equipment-alt{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 8px;outline:1px dashed var(--line);outline-offset:4px;border-radius:999px}.equipment-or{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--dim)}.equipment-field .equipment-hint{margin:2px 0 10px;font-size:.88rem}.equipment-suggest-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0 0 14px}.equipment-suggest-row .button-link{margin-top:0}.equipment-suggest-note{font-size:.86rem}.equipment-groups{border-top:1px solid var(--line)}.equipment-group{border-bottom:1px solid var(--line)}.equipment-group-title{margin:0;font-family:var(--font-body);font-size:inherit}.equipment-group-toggle{display:flex;align-items:center;gap:10px;width:100%;margin:0;padding:14px 2px;background:none;border:none;border-radius:var(--radius-sm);color:var(--dim);text-align:left;cursor:pointer;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;transition:color var(--duration-base) var(--ease-standard)}.equipment-group-toggle:hover{color:var(--cream)}.equipment-group-toggle:active{transform:none}.equipment-group-name{flex:1 1 auto;min-width:0}.equipment-group-count{padding:2px 10px;border-radius:999px;background:var(--acc-tint);color:var(--acc-text);font-size:.74rem;letter-spacing:0;text-transform:none}.equipment-group-count[hidden]{display:none}.equipment-group-toggle .icon{width:18px;height:18px;flex-shrink:0;transition:transform var(--duration-base) var(--ease-standard)}.equipment-group.is-open .equipment-group-toggle .icon{transform:rotate(180deg)}.equipment-group-panel{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows var(--duration-base) var(--ease-standard),visibility 0s linear var(--duration-base)}.equipment-group.is-open .equipment-group-panel{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows var(--duration-base) var(--ease-standard)}.equipment-group-inner{min-height:0;overflow:hidden}.equipment-group-inner>.pick-chips{padding:2px 0 16px}.admin-equipment-status{margin:0 0 20px;padding:12px 16px;border-radius:var(--radius-md);background:var(--s1);border:1px solid var(--line);font-size:.92rem}.admin-equipment-status.is-on{border-color:var(--acc-border);background:var(--acc-tint-soft)}.admin-equipment-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0 0 24px}.admin-equipment-tools form{margin:0}.admin-equipment-item{margin:0 0 12px;padding:14px 16px;background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-md)}.admin-equipment-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.admin-equipment-head .icon{width:26px;height:26px;color:var(--acc-text);flex-shrink:0}.admin-equipment-head strong{font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.05rem}.admin-equipment-head .muted{font-size:.84rem}.admin-equipment-links{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.admin-equipment-link{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:8px 12px;background:var(--chip-bg);border-radius:var(--radius-sm);font-size:.86rem}.admin-equipment-link .link-url{flex:1 1 220px;min-width:0;overflow-wrap:anywhere;color:var(--dim)}.admin-equipment-link form{margin:0;display:inline}.admin-equipment-link.is-off{opacity:.6}.admin-equipment-add{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;margin:12px 0 0}.admin-equipment-add input{flex:1 1 140px;min-width:0;margin:0}.admin-equipment-add input[name=url]{flex:2 1 260px}.admin-equipment-add button{margin-top:0}@media print{.equipment-disclosure,.equipment-find,.equipment-row .panel-help{display:none}.equipment-row{border:none;padding:0}}.legal-page{max-width:760px}.legal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.legal-tabs a{padding:8px 16px;border-radius:999px;font-size:.86rem;font-weight:600;color:var(--muted);text-decoration:none;border:1px solid var(--line);transition:color var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard)}.legal-tabs a:hover{color:var(--cream);border-color:var(--line-strong)}.legal-tabs a.active{color:var(--acc-text);border-color:var(--acc-border);background:var(--acc-tint-soft)}.legal-page h1{margin:0 0 6px}.legal-updated{margin:0 0 18px;font-size:.86rem}.legal-intro{margin:0 0 24px;font-size:1.08rem;color:var(--dim)}.legal-toc{background:var(--s1);border:1px solid var(--line);border-radius:var(--radius-md);padding:18px 22px;margin-bottom:32px}.legal-toc strong{display:block;margin-bottom:8px;font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.05rem}.legal-toc ol{margin:0;padding-left:1.3em;-moz-columns:2;columns:2;-moz-column-gap:32px;column-gap:32px}.legal-toc li{padding:3px 0;-moz-column-break-inside:avoid;break-inside:avoid;font-size:.92rem}.legal-toc a{color:var(--dim);text-decoration:none}.legal-toc a:hover{color:var(--acc-text);text-decoration:underline}@media(max-width: 640px){.legal-toc ol{-moz-columns:1;columns:1}}.legal-summary{background:var(--acc-tint-soft);border:1px solid var(--acc-border);border-radius:var(--radius-md);padding:18px 22px;margin-bottom:8px}.legal-summary strong{font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.1rem}.legal-summary ul{margin:10px 0 0;padding-left:1.2em}.legal-summary li{margin:4px 0}.legal-body h2{margin:40px 0 10px;font-size:1.4rem;scroll-margin-top:90px}.legal-body h3{margin:22px 0 8px;font-size:1.05rem}.legal-body p,.legal-body li{line-height:1.7;color:var(--dim)}.legal-body p{margin:0 0 14px}.legal-body ul{margin:0 0 16px;padding-left:1.3em}.legal-body li{margin:6px 0}.legal-body strong{color:var(--cream);font-weight:700}.legal-body a{color:var(--acc-text)}.legal-body code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.88em;padding:1px 6px;border-radius:6px;background:var(--chip-bg);color:var(--cream)}.legal-table-wrap{overflow-x:auto;margin:0 0 16px;border:1px solid var(--line);border-radius:var(--radius-md)}.legal-table{width:100%;min-width:620px;border-collapse:collapse;font-size:.9rem}.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--line);line-height:1.55;color:var(--dim)}.legal-table th{color:var(--cream);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;background:var(--s1)}.legal-table tr:last-child td{border-bottom:none}@media(max-width: 640px){.legal-table-wrap{border:none;overflow:visible}.legal-table{min-width:0}.legal-table thead{display:none}.legal-table,.legal-table tbody,.legal-table tr,.legal-table td{display:block;width:100%}.legal-table tr{border:1px solid var(--line);border-radius:var(--radius-md);margin-bottom:12px;padding:6px 0;background:var(--s1)}.legal-table td{border-bottom:none;padding:8px 16px}.legal-table td::before{content:attr(data-label);display:block;margin-bottom:2px;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}}@media print{.legal-tabs,.legal-toc{display:none}}.newsletter-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:16px}.newsletter-actions form,.account-settings-card .newsletter-actions form:first-of-type{margin:0}.newsletter-actions button,.newsletter-actions .button-link{margin:0}.newsletter-editor textarea{width:100%;min-height:320px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.85rem;line-height:1.5}.newsletter-preview{width:100%;height:720px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--bg)}.newsletter-list{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:10px}.newsletter-list li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0}.newsletter-list a{min-width:0;font-weight:700;overflow-wrap:anywhere}.newsletter-send{display:flex;flex-direction:column;gap:12px;margin:32px 0;padding:16px;background:var(--acc-tint-soft);border:1px solid var(--acc-border);border-radius:var(--radius-md)}.newsletter-send p{margin:0}.newsletter-progress{font-weight:700;color:var(--acc-text)}.newsletter-progress[hidden]{display:none}@media(max-width: 640px){.recipe-manage>button,.recipe-manage>.button-link,.recipe-manage>.button-primary,.recipe-manage>form,.cook-entry-actions>button,.cook-entry-actions>.button-link,.cook-entry-actions>.button-primary,.cook-entry-actions>form,.cook-log-actions>button,.cook-log-actions>.button-link,.cook-log-actions>.button-primary,.cook-log-actions>form,.shopping-list-actions>button,.shopping-list-actions>.button-link,.shopping-list-actions>.button-primary,.shopping-list-actions>form,.home-actions>button,.home-actions>.button-link,.home-actions>.button-primary,.home-actions>form,.import-text-actions>button,.import-text-actions>.button-link,.import-text-actions>.button-primary,.import-text-actions>form,.menu-modal-actions>button,.menu-modal-actions>.button-link,.menu-modal-actions>.button-primary,.menu-modal-actions>form,.ingredient-modal-actions>button,.ingredient-modal-actions>.button-link,.ingredient-modal-actions>.button-primary,.ingredient-modal-actions>form,.shared-banner-actions>button,.shared-banner-actions>.button-link,.shared-banner-actions>.button-primary,.shared-banner-actions>form,.email-status-actions>button,.email-status-actions>.button-link,.email-status-actions>.button-primary,.email-status-actions>form,.friend-actions>button,.friend-actions>.button-link,.friend-actions>.button-primary,.friend-actions>form,.notification-actions>button,.notification-actions>.button-link,.notification-actions>.button-primary,.notification-actions>form,.not-found-actions>button,.not-found-actions>.button-link,.not-found-actions>.button-primary,.not-found-actions>form,.menu-needs-recipes-actions>button,.menu-needs-recipes-actions>.button-link,.menu-needs-recipes-actions>.button-primary,.menu-needs-recipes-actions>form,.invite-request-actions>button,.invite-request-actions>.button-link,.invite-request-actions>.button-primary,.invite-request-actions>form,.archived-menu-actions>button,.archived-menu-actions>.button-link,.archived-menu-actions>.button-primary,.archived-menu-actions>form,.equipment-suggest-row>button,.equipment-suggest-row>.button-link,.equipment-suggest-row>.button-primary,.equipment-suggest-row>form,.newsletter-actions>button,.newsletter-actions>.button-link,.newsletter-actions>.button-primary,.newsletter-actions>form,.import-tools-actions>button,.import-tools-actions>.button-link,.import-tools-actions>.button-primary,.import-tools-actions>form,.recipe-actions>button,.recipe-actions>.button-link,.recipe-actions>.button-primary,.recipe-actions>form{flex:1 1 auto}.recipe-manage>form>button,.recipe-manage>form>.button-link,.cook-entry-actions>form>button,.cook-entry-actions>form>.button-link,.cook-log-actions>form>button,.cook-log-actions>form>.button-link,.shopping-list-actions>form>button,.shopping-list-actions>form>.button-link,.home-actions>form>button,.home-actions>form>.button-link,.import-text-actions>form>button,.import-text-actions>form>.button-link,.menu-modal-actions>form>button,.menu-modal-actions>form>.button-link,.ingredient-modal-actions>form>button,.ingredient-modal-actions>form>.button-link,.shared-banner-actions>form>button,.shared-banner-actions>form>.button-link,.email-status-actions>form>button,.email-status-actions>form>.button-link,.friend-actions>form>button,.friend-actions>form>.button-link,.notification-actions>form>button,.notification-actions>form>.button-link,.not-found-actions>form>button,.not-found-actions>form>.button-link,.menu-needs-recipes-actions>form>button,.menu-needs-recipes-actions>form>.button-link,.invite-request-actions>form>button,.invite-request-actions>form>.button-link,.archived-menu-actions>form>button,.archived-menu-actions>form>.button-link,.equipment-suggest-row>form>button,.equipment-suggest-row>form>.button-link,.newsletter-actions>form>button,.newsletter-actions>form>.button-link,.import-tools-actions>form>button,.import-tools-actions>form>.button-link,.recipe-actions>form>button,.recipe-actions>form>.button-link{align-self:stretch;width:100%}.cook-log-head>.button-primary{flex:1 1 auto}.new-menu-form>button,.add-to-menu-form>button,.add-shopping-item-form>button,.friend-search-form>button,.newsletter-banner-form>button{flex:1 1 auto}form:not(.rating-input-row):not(.hero-search)>button,form:not(.hero-search)>.button-link{align-self:stretch}.field-group>button,.field-group>.button-link{align-self:stretch}.newsletter-send>.button-primary{align-self:stretch}.account-settings-avatar-actions{flex:1 1 100%;align-items:stretch}.account-settings-avatar-actions form>input[type=file],.account-settings-avatar-actions form>button{flex:1 1 100%}.filter-group-actions{flex-direction:column;align-items:stretch;gap:10px}.filter-group-actions>button,.filter-group-actions>.button-link{flex:0 0 auto;width:100%;white-space:nowrap}.account-settings-card>.button-link,.account-settings-card>.button-primary,.menu-card-days-inner>.button-primary,.menu-card-days-inner>.button-link{display:flex;width:100%}.footer-feedback{align-self:stretch}}@keyframes motion-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes motion-pop{0%{transform:scale(1)}40%{transform:scale(1.3)}100%{transform:scale(1)}}@keyframes motion-star{0%{transform:scale(1) rotate(0)}45%{transform:scale(1.42) rotate(-9deg)}100%{transform:scale(1) rotate(0)}}@keyframes motion-wobble{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}@keyframes motion-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes motion-steam{0%{opacity:0;transform:translateY(2px) scaleY(0.6)}30%{opacity:.85}100%{opacity:0;transform:translateY(-16px) scaleY(1.15)}}@keyframes motion-ripple{from{box-shadow:0 0 0 0 rgba(232,169,60,.45)}to{box-shadow:0 0 0 12px rgba(232,169,60,0)}}img.img-fade{opacity:0}.recipe-card-image img,.featured-recipe-image img,.featured-secondary-image img,.recipe-hero-image img,.menu-card-carousel-slide img{transition:opacity .5s var(--ease-standard),transform .6s var(--ease-standard)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease-standard),transform .6s var(--ease-standard)}.reveal.in{opacity:1;transform:none}.reveal-fade{opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease-standard),transform .5s var(--ease-standard)}.reveal-fade.in{opacity:1;transform:none}.onboarding-steps li{animation:motion-rise .5s var(--ease-standard) backwards}.onboarding-steps li:nth-child(1){animation-delay:250ms}.onboarding-steps li:nth-child(2){animation-delay:340ms}.onboarding-steps li:nth-child(3){animation-delay:430ms}.onboarding-icon{transform-origin:50% 85%;animation:motion-wobble 7s ease-in-out infinite}.not-found-icon .icon{animation:motion-float 4.5s ease-in-out infinite}.menu-card-days.open .menu-item{animation:motion-rise .45s var(--ease-standard) backwards}.menu-card-days.open .menu-item:nth-child(1){animation-delay:120ms}.menu-card-days.open .menu-item:nth-child(2){animation-delay:170ms}.menu-card-days.open .menu-item:nth-child(3){animation-delay:220ms}.menu-card-days.open .menu-item:nth-child(4){animation-delay:270ms}.menu-card-days.open .menu-item:nth-child(5){animation-delay:320ms}.menu-card-days.open .menu-item:nth-child(6){animation-delay:370ms}.menu-card-days.open .menu-item:nth-child(7){animation-delay:420ms}.menu-card-days.open .menu-item:nth-child(8){animation-delay:470ms}@media(hover: hover){.recipe-card:hover .recipe-card-image img{transform:scale(1.07)}.featured-recipe:hover .featured-recipe-image img,.featured-secondary:hover .featured-secondary-image img{transform:scale(1.04)}.recipe-card .chip-floating,.recipe-card .recipe-meta>*{transition:transform var(--duration-base) var(--ease-spring)}.recipe-card:hover .chip-floating{transform:translateY(-3px)}.recipe-card:hover .recipe-meta>*{transform:translateY(-2px)}.recipe-card:hover .recipe-meta>:nth-child(2){transition-delay:40ms}.recipe-card:hover .recipe-meta>:nth-child(3){transition-delay:80ms}.brand-mark{position:relative}.brand-mark::before,.brand-mark::after{content:"";position:absolute;top:-1px;width:3px;height:14px;border-radius:3px;background:linear-gradient(to top, rgba(232, 169, 60, 0.6), transparent);opacity:0;pointer-events:none}.brand-mark::before{left:36%}.brand-mark::after{left:60%}.brand:hover .brand-mark::before{animation:motion-steam 1.8s ease-out infinite}.brand:hover .brand-mark::after{animation:motion-steam 1.8s ease-out .6s infinite}}.strike{background-image:linear-gradient(currentColor, currentColor);background-repeat:no-repeat;background-position:0 58%;background-size:0 1.5px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .45s var(--ease-standard)}.menu-item.cooked .strike,.shopping-list-item.checked .strike{background-size:100% 1.5px}.menu-item-day,.menu-item-title{transition:color .35s var(--ease-standard)}.item-qty{transition:color .35s var(--ease-standard),opacity .35s var(--ease-standard)}.shopping-list-item.checked .item-qty{opacity:.55}input.pop{animation:motion-pop .38s var(--ease-spring)}.ingredient-chip.ripple span{animation:motion-ripple .55s ease-out}.rating-input label.lit{animation:motion-star .45s var(--ease-spring) backwards;animation-delay:var(--d, 0ms)}.button-primary.is-morphed{background:var(--ok);border-color:var(--ok);color:var(--on-ok)}.button-primary.is-morphed .icon{animation:motion-pop .4s var(--ease-spring)}.confetti-piece{position:fixed;z-index:1000;pointer-events:none;border-radius:1px}@media print{.reveal,.reveal-fade{opacity:1 !important;transform:none !important}}@media print{.site-header,.site-footer,.no-print{display:none !important}main.container{padding:0}}@media(prefers-reduced-motion: reduce){*{transition-duration:.01ms !important;animation-duration:.01ms !important;animation-iteration-count:1 !important}}@media(max-width: 380px){.container{padding-left:16px;padding-right:16px}}
/*# sourceMappingURL=style.css.map */
