@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/newsreader-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/newsreader-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/public-sans-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/public-sans-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(/fonts/newsreader-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(/fonts/newsreader-italic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--color-primary: #000101;--color-primary-hover: #1a1c1e;--color-secondary: #46563D;--color-secondary-hover: #3a4733;--color-bg: #faf9f6;--color-bg-cool: #faf9f6;--color-surface: #ffffff;--color-surface-alt: #f4f3f1;--color-text: #1a1c1a;--color-text-muted: #44474a;--color-text-light: #75777a;--color-detail-header-action-ink: var(--color-text-muted);--color-border: #e3e2e0;--color-border-light: #efeeeb;--color-white: #ffffff;--color-black: #000000;--color-success: var(--color-secondary);--color-error: #C0392B;--color-warning: #D4A03C;--color-info: #5B7FA5;--color-ink: #1a1c1a;--color-accent-soft: #e9e8e5;--color-border-strong: #c5c6ca;--color-page: #faf9f6;--color-shadow-none: none;--color-copper: #000101;--color-copper-dark: #1a1c1e;--color-danger: #C0392B;--color-background: #faf9f6;--color-bg-hover: #efeeeb;--font-display: "Newsreader", serif;--font-body: "Public Sans", -apple-system, sans-serif;--text-display-lg: 28px;--text-display: 26px;--text-title: 18px;--text-card-title: 15px;--text-body: 15px;--text-body-sm: 14px;--text-tag: 13px;--text-label: 12px;--text-caption: 11px;--text-micro: 10px;--text-reading: 17px;--text-reading-sm: 16px;--text-hero: 2rem;--text-hero-sm: 1.45rem;--text-title-lg: 19px;--text-title-xl: 20px;--text-title-2xl: 21px;--text-title-3xl: 22px;--text-display-sm: 24px;--text-nano: 9px;--text-caption-lg: 11.5px;--text-label-lg: 12.5px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--spacing-0: 0;--spacing-1: 4px;--spacing-2: 6px;--spacing-3: 8px;--spacing-4: 10px;--spacing-5: 12px;--spacing-6: 16px;--spacing-7: 20px;--spacing-8: 24px;--spacing-9: 32px;--spacing-10: 40px;--spacing-11: 48px;--spacing-12: 64px;--spacing-13: 80px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 10px;--radius-2xl: 14px;--radius-3xl: 18px;--radius-pill: 999px;--radius-full: 50%;--shadow-xs: 0 1px 2px rgba(0,0,0,.03);--shadow-sm: 0 1px 4px rgba(0,0,0,.06);--shadow-md: 0 2px 8px rgba(0,0,0,.08);--shadow-lg: 0 4px 16px rgba(0,0,0,.1);--shadow-xl: 0 8px 28px rgba(0,0,0,.12);--z-content: 10;--z-ribbon: 50;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal: 1000;--z-toast: 2000;--z-top: 10000;--transition-fast: .15s ease-out;--transition-normal: .2s ease-out;--transition-slow: .3s ease-out;--transition-spring: .3s cubic-bezier(.34, 1.56, .64, 1);--pw-scale: .6;--pw-ink: #1d1f22;--pw-muted: #6b7078;--pw-step: #555b62;--pw-rule: #e6e7e9;--pw-green: #46705a;--pw-green-text: #4a7a60;--pw-check: #3f6b54;--pw-ahead-bg: #e9f1eb;--pw-ahead-ink: #4b6b56;--pw-event-bg: #e8edf8;--pw-event-ink: #4c62a3;--pw-box-border: #cdd0d4;--pw-selected-fill: #edf4f0}body{--panel-title-size: 22px;--panel-title-sub-size: 20px;--panel-label-size: var(--text-caption);--panel-row-size: var(--text-body);--panel-meta-size: var(--text-tag);--panel-pad-x: 24px;--panel-row-h: 44px;--panel-gap-above-label: 24px;--panel-gap-below-label: 8px;--panel-label-tracking: .08em;--panel-label-ink: var(--color-text-muted)}.psg-header{text-align:center;margin-bottom:40px}.psg-eyebrow{font-family:var(--font-body);font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:#1a1c1a66;margin:0 0 12px}.psg-title{font-family:var(--font-display);font-size:clamp(32px,4.5vw,46px);font-weight:300;font-style:italic;color:var(--color-ink);margin:0 0 14px;line-height:1.15}.psg-meta{display:flex;justify-content:center;gap:24px}.psg-meta span{font-family:var(--font-body);font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:#1a1c1a66}.psg-frame{position:relative;width:calc(100vw - 96px);left:50%;transform:translate(-50%)}@media (max-width: 700px){.psg-frame{width:calc(100vw - 40px)}}.psg-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px}.psg-wrap::-webkit-scrollbar{height:5px}.psg-wrap::-webkit-scrollbar-track{background:#1a1c1a0d;border-radius:3px}.psg-wrap::-webkit-scrollbar-thumb{background:#1a1c1a33;border-radius:3px}.psg-frame:after{content:"";position:absolute;top:0;right:0;bottom:8px;width:56px;background:linear-gradient(to right,rgba(249,247,243,0),var(--color-bg) 85%);opacity:0;pointer-events:none;transition:opacity .2s}.psg-frame--more:after{opacity:1}.psg-scroll-hint{display:none;position:absolute;top:0;right:-4px;bottom:8px;align-items:center;font-family:var(--font-body);font-size:26px;font-weight:300;color:#1a1c1a73;pointer-events:none}.psg-frame--more .psg-scroll-hint{display:flex}.psg-grid{display:grid;grid-template-columns:88px repeat(var(--psg-cols, 1),minmax(120px,300px));width:fit-content;min-width:min(100%,calc(88px + var(--psg-cols, 1) * 120px));margin-inline:auto;border-top:1px solid rgba(26,28,26,.12);text-align:left}.psg-cell{padding:12px 14px 14px 0;border-bottom:1px solid rgba(26,28,26,.08);min-width:0}.psg-cell:not(.psg-corner):not(.psg-head):not(.psg-bucket-label):not(.psg-cell--empty){display:flex;flex-direction:column;justify-content:flex-start}.psg-card:not(.psg-card--light){flex:1}.psg-card--light{align-self:flex-start}.psg-head-title-cell,.psg-corner--title{padding-top:16px;padding-bottom:0;border-bottom:none}.psg-head-meta-cell>:first-child{margin-top:0}.psg-head-meta-cell,.psg-corner--meta{padding-top:0;padding-bottom:12px;border-bottom-color:#1a1c1a38}@media (max-width: 1024px){.psg-grid{grid-template-columns:76px repeat(var(--psg-cols, 1),minmax(108px,300px))}.psg-cell{padding:10px 10px 12px 0}.psg-head-title{font-size:15px}.psg-card-action{font-size:13px}.psg-card-time,.psg-card-note,.psg-head-strategy{font-size:11.5px}.psg-head-via,.psg-head-covered{font-size:11px}}.psg-head-title{font-family:var(--font-display);font-size:17px;font-weight:500;color:var(--color-ink);line-height:1.25}.psg-head-via,.psg-head-covered{font-family:var(--font-body);font-size:12px;font-style:italic;color:#1a1c1a80;margin-top:2px;line-height:1.35}.psg-head-strategy{font-family:var(--font-body);font-size:12.5px;color:#1a1c1a8c;margin-top:4px;line-height:1.35}.psg-bucket-label{font-family:var(--font-body);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a73;padding-top:16px}.psg-card{font-family:var(--font-body)}.psg-card-action{font-size:14px;color:var(--color-ink);line-height:1.4}.psg-card-time,.psg-card-note{font-size:12.5px;color:#1a1c1a80;margin-top:2px}.psg-card-covered{font-size:12px;font-style:italic;color:#1a1c1a80;margin-top:4px;line-height:1.35}.psg-card-recipe,.psg-agenda{display:none}@media screen,print{.psg-head-title-cell{position:relative}.psg-head-title-cell:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--recipe-color, rgba(26, 28, 26, .15));print-color-adjust:exact;-webkit-print-color-adjust:exact}.psg-card{background:var(--recipe-color, rgba(26, 28, 26, .45));background-image:linear-gradient(to bottom,rgba(255,255,255,.08),transparent 40%);border-radius:6px;padding:8px 10px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.psg-card-recipe{display:block;font-family:var(--font-body);font-size:13px;font-weight:500;color:#fff;line-height:1.25;margin-bottom:2px}.psg-card .psg-card-action{color:#ffffffeb}.psg-card .psg-card-time,.psg-card .psg-card-note{color:#ffffffc7}.psg-card--light{background:var(--color-bg-cool, #f4f1ea);background-image:none;border-radius:0;border-left:3px solid var(--recipe-color, rgba(26, 28, 26, .45));padding:6px 10px 6px 8px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.psg-card--light .psg-card-action{color:var(--color-ink)}}@media screen and (max-width: 720px){.psg-frame{display:none}.psg-agenda{display:block}.psg-agenda-section{font-family:var(--font-body);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a73;margin:0 0 10px}.psg-agenda-group{margin-bottom:28px}.psg-agenda-group:last-child{margin-bottom:0}.psg-agenda-empty{margin:0;font-size:13px;font-style:italic;color:#1a1c1a73}.psg-agenda-card.psg-card{width:100%;margin-bottom:12px;padding:12px 14px;border-radius:6px;background:var(--color-bg-cool, #f4f1ea);background:color-mix(in srgb,var(--recipe-color, rgba(26, 28, 26, .45)) 10%,var(--color-surface));background-image:none;border-left:4px solid var(--recipe-color, rgba(26, 28, 26, .45));box-shadow:none}.psg-agenda-card.psg-card:last-child{margin-bottom:0}.psg-agenda-card .psg-card-recipe,.psg-agenda-card .psg-card-action{color:var(--color-ink)}.psg-agenda-card .psg-card-time,.psg-agenda-card .psg-card-note{color:#1a1c1a8c}}@media print{.menu-page--event .psg-grid,.prep-share-section .psg-grid{--psg-print-col: clamp(120px, calc(1256px / var(--psg-cols, 1)), 300px);grid-template-columns:88px repeat(var(--psg-cols, 1),var(--psg-print-col));zoom:min(1,calc(6.8in / (88px + var(--psg-cols, 1) * var(--psg-print-col))))}.menu-page--event .psg-frame,.prep-share-section .psg-frame{width:100%;left:auto;transform:none}.menu-page--event .psg-wrap,.prep-share-section .psg-wrap{overflow-x:visible;padding-bottom:0}.psg-frame:after,.psg-scroll-hint{display:none!important}.psg-card,.psg-cell{break-inside:avoid;page-break-inside:avoid}.psg-head-title-cell,.psg-bucket-label{break-after:avoid;page-break-after:avoid}.psg-card{background-image:none}.prep-print-unavailable{margin:2in auto 0;max-width:6in;text-align:center;font-family:var(--font-body);font-size:16px;color:var(--color-ink)}}.prep-print-layout .psg-frame{width:100%;left:auto;transform:none;display:block}.prep-print-layout .psg-agenda{display:none}.prep-print-layout .psg-wrap{overflow-x:visible;padding-bottom:0}.prep-print-layout.menu-page--prep{padding:.5in;max-width:none;box-decoration-break:clone;-webkit-box-decoration-break:clone}@media screen{.prep-print-layout.menu-page--prep{width:11in}}.prep-print-layout .prep-share-view{padding-top:8px}.prep-print-layout .psg-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;column-gap:16px;text-align:left;margin-bottom:16px}.prep-print-layout .psg-eyebrow{grid-column:1;display:flex;flex-direction:column;gap:2px;margin:0;text-align:left}.prep-print-layout .psg-eyebrow-sep{display:none}.prep-print-layout .psg-title{grid-column:2;margin:0;text-align:center}.prep-print-layout .psg-meta{grid-column:3;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.prep-print-layout .psg-grid{--psg-print-w: calc(10in - 16px) ;--psg-fit-col: calc((var(--psg-print-w) - 88px) / var(--psg-cols, 1));--psg-print-col: max(120px, var(--psg-fit-col));grid-template-columns:88px repeat(var(--psg-cols, 1),var(--psg-print-col));zoom:min(1,calc(var(--psg-print-w) / (88px + var(--psg-cols, 1) * var(--psg-print-col))))}@media print{.prep-print-debug{display:block;height:0;line-height:0;overflow:visible;margin:0;font-family:monospace;font-size:9px;color:#1a1c1a59;text-align:center}}@media screen{.prep-print-debug{display:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.detail-hero{width:100%;max-height:280px;background:var(--color-border-light);display:flex;align-items:center;justify-content:center;font-size:64px;overflow:hidden;position:relative}.detail-hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:24px;background:linear-gradient(transparent,var(--color-bg-cool));pointer-events:none}.detail-hero img{width:100%;height:100%;object-fit:cover}.detail-hero:has(img){height:280px}.detail-body{max-width:960px;margin:0 auto;padding:16px 28px 80px}@media (max-width: 899px){.detail-view .detail-body{padding-bottom:120px}}:where(body.chrome-compact) .detail-view .detail-body{padding-bottom:120px}.detail-columns{display:flex;flex-direction:column;gap:16px;margin-top:20px}.detail-column{flex:1;min-width:0}@media (min-width: 768px){.detail-hero{max-height:380px}.detail-columns{flex-direction:row;gap:48px;align-items:flex-start}.detail-column-ingredients{flex:0 0 360px;position:sticky;top:80px}.detail-column-instructions{flex:1;max-width:72ch}}.detail-title{font-family:var(--font-display);font-size:var(--text-hero);font-weight:400;margin-bottom:0;line-height:1.2}.title-row{display:inline-flex;align-items:baseline;gap:6px;margin-bottom:8px}.detail-body .title-row{margin-bottom:4px}@media (min-width: 601px){.detail-body .title-row{margin-bottom:0}.detail-body .detail-meta-line{margin-top:0}}.detail-meta-line{display:flex;flex-wrap:nowrap;align-items:center;gap:0;font-size:var(--text-body-sm);color:var(--color-text-muted);margin-top:2px;margin-bottom:24px;line-height:1.4;overflow:hidden}.detail-meta-line>*{flex:0 0 auto;min-width:0}.detail-meta-line:has(.meta-times-group.expanded){display:block;overflow:visible}.detail-meta-line:has(.meta-times-group.expanded) .meta-source-name,.detail-meta-line:has(.meta-times-group.expanded) .meta-servings{white-space:normal;overflow:visible;text-overflow:clip}.detail-meta-line .meta-label{display:none}@media (min-width: 768px){.detail-meta-line .meta-label{display:inline}.detail-meta-line .meta-servings-word{display:none}}.detail-meta-line .meta-times-group.expanded .meta-label{display:none}.detail-meta-line .meta-time,.detail-meta-line .meta-time-part{color:#1a1c1a80;font-size:var(--text-tag)}.detail-meta-line .meta-time-rep{margin:0;padding:0;border:none;background:none;font:inherit;font-size:var(--text-tag);line-height:inherit;color:#1a1c1a80}.detail-meta-line button.meta-time-rep{cursor:pointer;border-bottom:1px dotted rgba(26,28,26,.4)}.detail-meta-line .meta-time-detail{display:none;margin:0;padding:0;border:none;background:none;font:inherit;font-size:var(--text-tag);line-height:inherit;color:#1a1c1a80;text-align:left;cursor:pointer}.detail-meta-line .meta-times-group.expanded .meta-time-rep{display:none}.detail-meta-line .meta-times-group.expanded .meta-time-detail{display:inline}.detail-meta-line .meta-separator{color:var(--color-border-strong);margin:0 8px;font-size:.7em;opacity:1;vertical-align:middle}.detail-meta-line .meta-item{color:#1a1c1a80;font-size:var(--text-tag)}.detail-meta-line .meta-link{color:var(--color-primary);text-decoration:none}.detail-meta-line .meta-link:hover{opacity:.8}.detail-meta-line.meta--trunc .meta-source{flex:0 1 auto;min-width:0;display:inline-flex;align-items:baseline;overflow:hidden}.detail-meta-line.meta--trunc .meta-source a{display:inline-flex;align-items:baseline;min-width:0;max-width:100%}.detail-meta-line.meta--trunc .meta-source .meta-source-name,.detail-meta-line.meta--trunc-servings .meta-servings{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-section{margin-bottom:12px}.section-title-row{display:flex;align-items:center;height:36px;gap:8px;margin-bottom:14px;border-bottom:1px solid var(--color-border)}.section-title-row h3{margin-bottom:0}.detail-section h3{font-family:var(--font-body);color:var(--color-ink);font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid rgba(26,28,26,.08)}.section-title-row h3{margin-bottom:0;padding-bottom:0;border-bottom:none}.detail-section ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:13px}.detail-section ul li{padding:0;margin:0;line-height:1.34;font-size:var(--text-reading-sm);border-bottom:none;position:relative;display:flex;flex-wrap:wrap;align-items:baseline}.detail-section ul li .item-text{flex:1;min-width:0;line-height:1.34;padding-left:10px;text-indent:-10px}.detail-section ul li:last-child{border-bottom:none}.detail-section ol{list-style:none;padding:0;counter-reset:step}.detail-section ol li{padding:16px 0 12px 36px;line-height:1.65;border-bottom:1px solid var(--color-border-light);position:relative;counter-increment:step;font-size:16px}.detail-section ol li:before{content:counter(step);position:absolute;left:0;top:16px;width:28px;height:28px;background:var(--color-ink);color:#fff;border-radius:50%;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center}.detail-section ol li:last-child{border-bottom:none}.instruction-steps{display:flex;flex-direction:column;gap:0}.instruction-step{padding:14px 0;border-bottom:1px solid rgba(26,28,26,.06);position:relative}.instruction-step:first-child{padding-top:0}.instruction-step:last-child{border-bottom:none}.instruction-step--focused{animation:instruction-step-focus-flash 4.4s ease-out}@keyframes instruction-step-focus-flash{0%{background-color:transparent;box-shadow:none}15%{background-color:var(--color-accent-soft);box-shadow:0 0 0 6px var(--color-accent-soft)}75%{background-color:var(--color-accent-soft);box-shadow:0 0 0 6px var(--color-accent-soft)}to{background-color:transparent;box-shadow:none}}.step-header{font-weight:600;font-size:14px;color:#1a1c1a73;margin-bottom:4px}.step-content{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;line-height:1.65;font-size:var(--text-reading);color:var(--color-text)}.step-content .item-text{flex:1;min-width:0}.step-para{display:block}.step-para+.step-para{margin-top:.5em}.ingredient-section{font-family:var(--font-body);color:var(--color-text);font-size:12px;font-weight:500;color:#1a1c1a8c;margin:28px 0 8px;padding:0 0 6px;text-transform:uppercase;letter-spacing:.1em;text-decoration:none;border-bottom:1px solid rgba(26,28,26,.1)}.ingredient-section:first-child{margin-top:0}.ingredient-amount{font-weight:600}.instruction-section{font-family:var(--font-body);font-size:12px;font-weight:500;color:#1a1c1a8c;margin:28px 0 12px;padding:0 0 6px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid rgba(26,28,26,.1)}.instruction-steps .instruction-section:first-child{margin-top:0}.step-phase-prefix{font-weight:600}.step-extra-text{display:block;margin-top:12px}.original-notes-section{margin-top:8px}.original-notes-divider{border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));margin-bottom:28px}.original-notes-header{font-family:var(--font-body);color:var(--color-ink);font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;margin:0 0 6px;padding:0}.original-notes-source{font-family:var(--font-body);font-size:14px;color:var(--color-text-light);margin:0}.original-notes-body{font-family:var(--font-body);font-size:var(--text-reading-sm);line-height:1.7;color:var(--color-text);margin-top:16px}.original-notes-body p{margin:0 0 12px}.original-notes-body p:last-child{margin-bottom:0}.item-text{display:inline}.item-text:focus{outline:none}.item-note{flex-basis:100%;font-size:14px;color:#1a1c1a80;font-style:italic;margin:3px 0 2px 8px;padding:0 0 0 8px;border-left:1px solid rgba(26,28,26,.1);line-height:1.3}.item-note .note-text{display:block}.item-note+.item-note{margin-top:2px}.recipe-inline-link{color:var(--color-primary);text-decoration:underline;text-decoration-color:var(--color-border-strong);text-underline-offset:2px;cursor:pointer}.recipe-inline-link:hover{text-decoration-color:var(--color-primary)}.recipe-inline-link--trailing{white-space:nowrap;font-size:.92em}.recipe-note-link{color:var(--color-primary);text-decoration:underline;text-decoration-color:var(--color-border-strong);text-underline-offset:2px}@media (max-width: 600px){.detail-title{font-size:var(--text-hero-sm);font-weight:600}.detail-meta-line{margin-bottom:4px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}*{margin:0;padding:0;box-sizing:border-box}:where(button,[role=button],a,[tabindex]):focus:not(:focus-visible){outline:none}:where(button,[role=button],a,[tabindex]):focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}html,body{height:100%}html{scrollbar-width:thin;scrollbar-color:rgba(26,28,26,.12) transparent}html::-webkit-scrollbar{width:8px;height:8px}html::-webkit-scrollbar-track{background:transparent}html::-webkit-scrollbar-thumb{background:#1a1c1a1a;border-radius:4px;transition:background .15s}html::-webkit-scrollbar-thumb:hover{background:#1a1c1a38}body{visibility:visible;font-family:var(--font-body);background:var(--color-bg-cool);color:var(--color-text);min-height:100%;display:flex;flex-direction:column}.user-menu{position:relative}.user-btn{width:36px;height:36px;border-radius:50%;background:var(--color-secondary);color:#fff;border:none;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.user-btn:hover{background:#4d5b47}.user-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:8px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #0000001a;min-width:200px;z-index:100}.user-dropdown.open{display:block;animation:fadeIn .2s ease-out}.user-email{padding:12px 16px;font-size:14px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);word-break:break-all}.user-dropdown button{width:100%;padding:12px 16px;background:none;border:none;text-align:left;font-size:14px;cursor:pointer;color:var(--color-primary);transition:background .2s}.user-dropdown button:hover{background:var(--color-border-light)}.app-content{display:none}.app-content.unlocked{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.app-content.unlocked>*{width:100%}.header{display:flex;align-items:center;justify-content:space-between;padding:48px 40px;padding-top:calc(48px + env(safe-area-inset-top,0px));background:#faf9f6;border-bottom:1px solid rgba(26,28,26,.08);position:sticky;top:0;z-index:100}@media (max-width: 767px){.header{padding:16px 20px;padding-top:calc(16px + env(safe-area-inset-top,0px))}}.logo{font-family:var(--font-display);font-size:34px;font-weight:500;color:var(--color-text);opacity:.85;cursor:pointer}.logo-stack{position:relative;display:flex;align-items:center}.explore-sample-label{display:block;position:absolute;left:0;top:100%;margin-top:4px;font-family:var(--font-body);font-size:var(--text-body-sm);font-style:italic;font-weight:400;line-height:14px;letter-spacing:0;color:var(--color-text-light);white-space:nowrap;pointer-events:none;border-radius:999px;transition:background-color .12s ease,color .12s ease}.explore-sample-label.explore-sample-label--pill{pointer-events:auto;cursor:pointer;background:var(--color-secondary);color:#faf7f0;padding:0 10px 0 2px;margin-left:-2px}.explore-sample-label.explore-sample-label--pill:before{content:"";position:absolute;top:-4px;right:-12px;bottom:-4px;left:-12px}.explore-sample-label.explore-sample-label--pill:hover{background:color-mix(in srgb,var(--color-secondary) 90%,black 10%)}.explore-sample-label.explore-sample-label--pill:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}@media (max-width: 767px){.explore-sample-label{margin-top:-1px}.explore-sample-label.explore-sample-label--pill:before{top:0;right:-12px;bottom:-3px;left:-12px}}.explore-sample-label[hidden]{display:none}.header-actions{display:flex;align-items:center;gap:12px;position:relative}.header-icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:50%;transition:all .15s;flex-shrink:0}.header-icon-btn:hover{background:#0000000d;color:var(--color-text)}.header-icon-btn:focus{outline:none}.header-icon-btn svg{width:20px;height:20px;flex-shrink:0}.header-action-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;height:32px;box-sizing:border-box;border-radius:18px;background:transparent;border:1px solid var(--color-border);color:var(--color-text-muted);font-size:13px;font-weight:400;font-family:inherit;cursor:pointer;transition:all .15s;white-space:nowrap}.header-action-btn:hover{background:#00000008;border-color:#d0ccc6;color:var(--color-text)}.header-action-btn svg{width:14px;height:14px;flex-shrink:0}.header-action-btn .plus-icon{font-size:15px;font-weight:400;line-height:1}.profile-avatar{padding:0;border:none;background:transparent;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#1a1c1a99;transition:color .2s}.profile-avatar:hover{color:var(--color-text)}.profile-avatar .profile-icon{display:block}.profile-avatar .profile-initial,.profile-avatar.has-initials .profile-icon{display:none}.profile-avatar.has-initials .profile-initial{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:27px;height:27px;margin:2.5px;border-radius:50%;background:#1a1c1a99;color:#faf9f6;font-family:var(--font-body);font-size:11px;font-weight:600;line-height:1;white-space:nowrap;overflow:hidden;transition:background-color .2s}.profile-avatar.has-initials:hover .profile-initial{background:var(--color-text)}.header-add-btn{display:flex;align-items:center;gap:4px;padding:0;margin:0;width:auto;height:auto;border:none;border-radius:0;background:transparent;color:var(--color-text);opacity:.85;cursor:pointer;transition:opacity .2s}.header-add-btn:hover{opacity:1;color:var(--color-text);background:transparent}.header-add-btn:focus,.header-add-btn:focus-visible{outline:none}.add-btn-plus{font-weight:700;font-size:18px;line-height:1;margin-bottom:1px}.add-btn-label{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.2em;line-height:1}.search-overlay{display:none;position:absolute;right:calc(100% - 38px);top:50%;transform:translateY(-50%);background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;padding:4px 8px 4px 16px;box-shadow:0 4px 12px #00000014;z-index:10}.search-overlay.open{display:flex;align-items:center;gap:8px}.search-input-expanded{width:280px;padding:8px 0;border:none;background:transparent;font-size:14px;color:var(--color-text);outline:none;font-family:inherit}.search-input-expanded::placeholder{color:var(--color-text-muted)}.search-close-btn{width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--color-text-muted);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.search-close-btn:hover{background:#0000000d;color:var(--color-text)}.gs-panel-overlay{z-index:10000;transition:opacity .2s ease-in}.gs-panel{display:flex;flex-direction:column;transition:transform .2s ease-in}.gs-search-bar{display:flex;align-items:center;gap:10px;padding:20px 24px 16px;padding-top:calc(20px + env(safe-area-inset-top,0px));border-bottom:1px solid rgba(26,28,26,.06)}.gs-search-icon{flex-shrink:0;color:#1a1c1a59}.gs-input{flex:1;border:none;background:none;font-size:14px;font-family:var(--font-body)!important;font-weight:400;color:var(--color-text);outline:none;min-width:0}.gs-input::placeholder{font-family:var(--font-body);color:#1a1c1a4d}.gs-tabs{display:flex;gap:0;padding:0 24px;border-bottom:1px solid rgba(26,28,26,.06)}.gs-tab{padding:10px 16px;font-size:11px;font-weight:600;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:#1a1c1a66;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;margin-bottom:-1px}.gs-tab:hover{color:#1a1c1ab3}.gs-tab.active{color:#1a1c1a;border-bottom-color:#1a1c1a}.gs-results{flex:1;overflow-y:auto;padding:8px 0}.gs-placeholder,.gs-empty{padding:40px 20px;text-align:center;color:var(--color-text-light);font-size:14px}.gs-section{padding-bottom:4px}.gs-section+.gs-section{border-top:1px solid rgba(26,28,26,.06);padding-top:4px}.gs-section-header{padding:14px 24px 6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#1a1c1a59}.gs-section-empty{padding:24px 20px;text-align:center;color:var(--color-text-light);font-size:13px}.gs-see-all{display:block;width:100%;text-align:right;padding:8px 20px;font-size:12px;font-weight:500;font-family:inherit;color:var(--color-copper);background:none;border:none;cursor:pointer;transition:opacity .15s}.gs-see-all:hover{opacity:.7}.gs-browse-hint{padding:10px 20px 2px;font-size:12px;color:var(--color-text-muted, #9E998F);text-align:center}.gs-recipe-row{display:flex;align-items:center;gap:14px;padding:10px 24px;cursor:pointer}.gs-recipe-row:hover{background:#1a1c1a05}.gs-recipe-thumb{width:44px;height:44px;border-radius:3px;flex-shrink:0;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;filter:contrast(.95) brightness(1.02) saturate(.95)}.gs-recipe-thumb--textcover{position:relative;overflow:hidden}.gs-recipe-info{flex:1;min-width:0}.gs-recipe-title{font-family:var(--font-body);font-size:13px;font-weight:500;line-height:1.3;color:#1a1c1a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0}.gs-recipe-time{flex-shrink:0;font-family:var(--font-body);font-size:12px;color:#1a1c1a80;white-space:nowrap}.gs-recipe-meta{display:flex;align-items:center;gap:4px;margin-top:2px;font-family:var(--font-body);font-size:12px;color:#1a1c1a99}.gs-recipe-tags{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gs-meta-dot{color:var(--color-border)}.gs-in-menus{color:#1a1c1a8c;cursor:pointer;white-space:nowrap;font-weight:500}.gs-in-menus:hover{text-decoration:underline}.gs-menu-row{padding:12px 24px;cursor:pointer}.gs-menu-row:hover{background:#1a1c1a05}.gs-menu-info{display:flex;flex-direction:column;gap:6px}.gs-menu-top{display:flex;align-items:center;gap:8px}.gs-menu-title{font-family:var(--font-body);font-size:13px;font-weight:500;line-height:1.3;color:#1a1c1a;flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gs-menu-date{flex-shrink:0;font-family:var(--font-body);font-size:12px;color:#1a1c1a8c}.gs-menu-bottom{display:flex;align-items:center;gap:8px}.gs-menu-thumbs{display:flex;gap:4px}.gs-menu-thumb{width:28px;height:28px;border-radius:3px;background-size:cover;background-position:center}.gs-menu-count{font-family:var(--font-body);font-size:12px;color:#1a1c1a99}@media (max-width: 480px){.gs-panel{max-width:100%;width:100%}}.profile-dropdown{display:none;position:absolute;right:0;top:calc(100% + 8px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #0000001a;min-width:180px;z-index:100;overflow:hidden}.profile-dropdown.open{display:block}.profile-dropdown-email{padding:10.5px 16px;font-size:var(--text-label);color:var(--color-text-light)}.profile-dropdown-item{display:block;width:100%;padding:10.5px 16px;text-align:left;background:none;border:none;font-size:14px;font-family:inherit;color:var(--color-text);cursor:pointer;transition:background .15s}.profile-dropdown-group-start{border-top:1px solid var(--color-border-light)}.profile-dropdown-item[hidden]{display:none}.profile-dropdown-item:hover{background:#00000008}.profile-dropdown--account>:not(.profile-dropdown-account){display:none}.profile-dropdown-account{min-width:220px}.profile-dropdown-account-join{font-weight:600}.profile-dropdown-item .font-size-value,.recipe-action-menu-item .font-size-value{color:var(--color-text-muted);margin-left:4px}body.font-small{--text-display-lg: 25px;--text-display: 23px;--text-title: 16px;--text-card-title: 14px;--text-body: 14px;--text-body-sm: 13px;--text-tag: 12px;--text-label: 11px;--text-caption: 10px;--text-micro: 9px;--text-reading: 15px;--text-reading-sm: 14px;--text-hero: 1.8rem;--text-hero-sm: 1.31rem;--text-title-lg: 17px;--text-title-xl: 18px;--text-title-2xl: 19px;--text-title-3xl: 20px;--text-display-sm: 22px;--text-nano: 8px;--text-caption-lg: 10px;--text-label-lg: 11px}body.font-large{--text-display-lg: 32px;--text-display: 30px;--text-title: 21px;--text-card-title: 17px;--text-body: 17px;--text-body-sm: 16px;--text-tag: 15px;--text-label: 14px;--text-caption: 13px;--text-micro: 12px;--text-reading: 20px;--text-reading-sm: 18px;--text-hero: 2.3rem;--text-hero-sm: 1.67rem;--text-title-lg: 22px;--text-title-xl: 23px;--text-title-2xl: 24px;--text-title-3xl: 25px;--text-display-sm: 28px;--text-nano: 10px;--text-caption-lg: 13px;--text-label-lg: 14px}.add-chooser-panel .right-panel-header{padding-left:var(--panel-pad-x);padding-right:var(--panel-pad-x)}.add-chooser-body{padding:8px var(--panel-pad-x) var(--panel-pad-x)}.add-chooser-item{display:flex;align-items:center;width:calc(100% + 24px);min-height:var(--panel-row-h);padding:10px 12px;margin:0 -12px;background:none;border:none;border-radius:8px;text-align:left;font-size:var(--panel-row-size);font-family:var(--font-body);color:var(--color-text);cursor:pointer;transition:background .12s}.add-chooser-item:hover{background:#0000000a}.add-chooser-item.active{background:#7d8b6a14;font-weight:500}.add-recipe-panel-overlay{display:none}.add-recipe-panel-overlay.open{display:block}.add-recipe-panel .recipe-header-left{display:flex;align-items:baseline;gap:8px;min-width:0}.add-recipe-panel .right-panel-header{flex-shrink:0}.header-btn{width:40px;height:40px;border-radius:50%;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.header-btn:hover{background:var(--color-border-light)}.header-btn svg{width:22px;height:22px}.avatar{width:40px;height:40px;border-radius:50%;background:var(--color-secondary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:500;font-size:14px}.main-nav{display:none;align-items:center;gap:4rem;position:absolute;left:50%;transform:translate(-50%)}@media (min-width: 900px){.main-nav{display:flex}}.main-nav-item{padding:4px 0;border:none;background:transparent;font-family:var(--font-body);font-size:15px;font-weight:550;text-transform:uppercase;letter-spacing:.16em;color:#1a1c1a80;cursor:pointer;position:relative;transition:color .2s;white-space:nowrap}.main-nav-item:hover{color:var(--color-text)}.main-nav-item.active{color:#1a1c1ad9;border-bottom:1px solid var(--color-primary);padding-bottom:3px}.main-nav-item.active:after{display:none}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--color-surface);border-top:1px solid var(--color-border);padding:12px 0 20px;z-index:1000;margin-top:auto}@media (min-width: 900px){.bottom-nav{display:none}}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px;background:none;border:none;color:var(--color-text);opacity:.6;cursor:pointer;transition:color .2s,opacity .2s}.bottom-nav-item svg{width:24px;height:24px}.bottom-nav-item span{font-size:var(--text-micro);font-weight:500}.bottom-nav-item.active{color:var(--color-primary);font-weight:600;opacity:1}.mobile-search{display:none}.mobile-search-input{width:100%;padding:14px 16px;border:1px solid var(--color-border);border-radius:12px;font-size:16px;background:var(--color-bg-cool);color:var(--color-text);outline:none}.mobile-search-input:focus{border-color:var(--color-primary)}.mobile-search-input::placeholder{color:#8a8580}.recipes-view{display:block;animation:fadeInUp .3s ease-out}.recipes-view.hidden{display:none}.menus-view{display:none;padding:0 0 100px}.menus-view.active{display:block;animation:fadeInUp .3s ease-out}@media (min-width: 1024px){.menus-view{padding:0 0 100px}}.menu-grid{display:grid;grid-template-columns:1fr;column-gap:2.5rem;row-gap:2rem;padding:8px 16px 40px;max-width:1600px;margin:0 auto}@media (min-width: 640px){.menu-grid{grid-template-columns:repeat(2,1fr);padding:8px 24px 40px}}@media (min-width: 1024px){.menu-grid{grid-template-columns:repeat(3,1fr);padding:16px 64px 60px}}.menus-toolbar-desktop{display:none}#menusToolbar{display:contents}#menusView .category-filter-bar-wrap{margin-bottom:0}.menus-toolbar{display:flex;align-items:center;justify-content:space-between;max-width:1600px;margin:0 auto;padding:18px 16px 10px;position:sticky;top:calc(var(--header-height, 96px) + 64px + var(--context-banner-height, 0px) - var(--phone-bars-lift, 0px));z-index:97;background:#faf9f6}@media (min-width: 640px){.menus-toolbar{padding:18px 24px 10px}}@media (min-width: 900px){.menus-toolbar{top:calc(var(--header-height, 96px) + 80px + var(--context-banner-height, 0px) - var(--phone-bars-lift, 0px))}}@media (min-width: 1024px){.menus-toolbar{padding:18px 64px 10px}}.menus-toolbar-type,.menus-toolbar-sort{position:relative}.menus-sort-trigger{display:inline-flex;align-items:baseline;gap:6px;font-family:var(--font-body);background:none;border:none;padding:4px 2px;cursor:pointer}.menus-sort-label{font-size:var(--text-micro);text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a59}.menus-sort-current{font-size:var(--text-tag);color:#1a1c1ab3;transition:color .15s ease}.menus-sort-current--short,.menus-sort-current--full{font-size:var(--text-label)}.menus-sort-current--full{display:none}@media (min-width: 900px){.menus-sort-current--short{display:none}.menus-sort-current--full{display:inline}}.menus-sort-trigger:hover .menus-sort-current{color:#1a1c1a}.menus-sort-caret{color:#1a1c1a66;margin-left:2px;flex-shrink:0}.menus-sort-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:30;background:#faf9f6;border:1px solid rgba(26,28,26,.1);border-radius:4px;box-shadow:0 4px 16px #0000000f;padding:4px;display:flex;flex-direction:column;gap:1px;min-width:160px}.menus-sort-menu[hidden]{display:none}.menus-sort-option{font-family:var(--font-body);font-size:var(--text-tag);text-align:left;color:#1a1c1ab3;background:none;border:none;border-radius:3px;padding:6px 10px;cursor:pointer;transition:background .15s ease,color .15s ease}.menus-sort-option:hover{background:#1a1c1a0d;color:#1a1c1a}.menus-sort-option.active{color:#1a1c1a;font-weight:500}.menus-toolbar-view{display:inline-flex;align-items:center;gap:2px}.menus-view-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:3px;cursor:pointer;color:#1a1c1a59;transition:color .15s ease}.menus-view-btn:hover{color:#1a1c1ab3}.menus-view-btn.active{color:#1a1c1a}.menus-view-btn svg{width:16px;height:16px}.rail-calendar-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;color:#1a1c1a80;cursor:pointer;border-radius:6px;transition:color .18s,background .18s}.rail-calendar-btn:hover{color:var(--color-text);background:#1a1c1a0a}.menus-toolbar-mobile{display:flex;align-items:center;justify-content:space-between;gap:10px;max-width:1600px;margin:0 auto;padding:18px 16px 12px;position:sticky;top:calc(var(--header-height, 96px) + var(--context-banner-height, 0px) - var(--phone-bars-lift, 0px));z-index:97;background:#faf9f6;border-bottom:1px solid rgba(26,28,26,.04);box-shadow:0 -20px #faf9f6}@media (min-width: 900px){.menus-toolbar-mobile{display:none}.menus-toolbar-desktop{display:block}}@media (min-width: 640px){.menus-toolbar-mobile{padding:18px 24px 12px}}.menus-toolbar-right{display:flex;align-items:center;gap:20px}@media not all and (min-width: 900px){.menu-grid{padding-top:14px}.menus-toolbar-mobile{padding-bottom:8px}}.menus-view-peer{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:3px;cursor:pointer;color:#1a1c1a59;transition:color .15s ease}.menus-view-peer:hover{color:#1a1c1ab3}.menus-view-peer.active{color:#1a1c1a}.menus-view-peer svg{width:16px;height:16px;flex-shrink:0}.menus-toolbar-view-modes{display:flex;align-items:center;gap:2px}.menus-type-trigger{display:inline-flex;align-items:baseline;gap:4px;font-family:var(--font-body);font-size:var(--text-label);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text);background:none;border:none;border-bottom:2px solid rgba(26,28,26,.3);padding:4px 2px 6px;cursor:pointer}.menus-type-caret{color:#1a1c1a66;flex-shrink:0}.menus-type-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:30;background:#faf9f6;border:1px solid rgba(26,28,26,.1);border-radius:6px;box-shadow:0 8px 28px #1a1c1a24;padding:6px 0;display:flex;flex-direction:column;min-width:180px;width:max-content}.menus-type-menu[hidden]{display:none}.menus-type-option{font-family:var(--font-body);font-size:var(--text-body-sm);text-align:left;color:#1a1c1ad9;background:none;border:none;padding:8px 18px 8px 34px;cursor:pointer;transition:background .15s ease,color .15s ease}.menus-type-option:hover{background:#1a1c1a0d}.menus-type-option.active{font-weight:700;padding-left:18px}.menus-type-mark{display:inline-block;width:16px;font-size:12px;font-weight:400}.menus-type-divider{border-top:1px solid rgba(26,28,26,.12);margin:6px 0}.menus-type-option--archive:not(.active){color:#1a1c1a8c}.menu-list{display:flex;flex-direction:column;max-width:1600px;margin:0 auto;padding:0 16px 40px}@media (min-width: 640px){.menu-list{padding:0 24px 40px}}@media (min-width: 1024px){.menu-list{padding:0 64px 60px}}.menu-list-row{display:flex;align-items:center;gap:24px;padding:14px 4px;border-bottom:1px solid rgba(26,28,26,.06);cursor:pointer;position:relative;transition:background .12s ease}.menu-list-row:hover{background:#1a1c1a05}.menu-list-row-main{flex:0 0 280px;min-width:0}.menu-list-row-title{font-family:var(--font-display);font-size:var(--text-reading);font-weight:500;color:#1a1c1a;margin:0 0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-list-row-meta{font-family:var(--font-body);font-size:var(--text-label);color:#1a1c1a80;margin:0}.menu-list-row-thumbs{flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0}.menu-list-thumb{display:inline-block;width:28px;height:28px;background-size:cover;background-position:center;background-color:#e8e5e0;border-radius:2px;flex:0 0 auto}.menu-list-thumb-more{display:inline-flex;align-items:center;justify-content:center;height:28px;min-width:28px;padding:0 6px;border-radius:2px;background-color:#e8e5e0;color:#1a1c1a8c;font-family:var(--font-body);font-size:var(--text-caption);font-weight:600;flex:0 0 auto}.menu-list-overflow{flex:0 0 auto;opacity:0;transition:opacity .15s ease}.menu-list-row:hover .menu-list-overflow{opacity:1}.menu-list-overflow:has(:focus-visible){opacity:1}@media (hover: none){.menu-list-overflow{opacity:1}}@media (max-width: 640px){.menu-list-row{flex-wrap:wrap;gap:8px;padding-top:20px;padding-bottom:20px}.menu-list-row-title{font-size:var(--text-title)}.menu-list-row-meta{font-size:var(--text-tag);color:#1a1c1a9e}.menu-list-row-main{flex:1 1 auto;padding-right:150px}.menu-list-row-thumbs{flex:1 1 100%;margin-top:6px}.menu-list-thumb{width:54px;height:54px}.menu-list-thumb-more{height:54px;min-width:54px;font-size:var(--text-tag)}.menu-list-row .menu-list-overflow{position:absolute;top:12px;right:4px;opacity:1}.menu-list-overflow .menu-overflow-dropdown{top:100%;right:0;left:auto;margin:2px 0 0}}@media (min-width: 641px){.menu-list-row{min-height:90px;gap:20px;padding-top:18px;padding-bottom:18px}.menu-list-row-main{flex:0 0 clamp(240px,24vw,280px)}.menu-list-row-title{font-size:var(--text-title-lg);line-height:1.35}.menu-list-thumb{width:54px;height:54px}.menu-list-thumb-more{height:54px;min-width:54px;font-size:var(--text-tag)}}.menu-grid-card{cursor:pointer;display:flex;flex-direction:column;--menu-grid-image-gap: 10px}.menu-grid-card-image{width:100%;aspect-ratio:1/1;background:#efeeeb;position:relative;overflow:hidden;margin-bottom:var(--menu-grid-image-gap, 10px);border-radius:2px;container-type:inline-size}@media (max-width: 639px){.menu-grid-card{--menu-grid-image-gap: 17px}}.menu-grid-card-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgba(0,0,0,.18),transparent);pointer-events:none;z-index:1}.menu-grid-card-image--textcover{background:transparent}.menu-grid-card-image--textcover:after{display:none}.menu-grid-card-image img{width:100%;height:100%;object-fit:cover;filter:contrast(.95) brightness(1.02) saturate(.95);position:relative;z-index:1;border-radius:2px}@media (hover: hover){.menu-grid-card:hover .menu-grid-card-image img{transform:scale(1.05);transition:transform 1s ease-in-out}}.menu-grid-card-body{padding:0}.menu-grid-card-title{font-family:var(--font-display);font-size:var(--text-title);font-weight:500;line-height:1.2;color:#1a1c1a;margin-bottom:1px}@media (hover: hover){.menu-grid-card:hover .menu-grid-card-title{color:var(--color-secondary-hover)}}.menu-grid-card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.menu-grid-overflow .recipe-menu-btn{opacity:0}.menu-grid-overflow .menu-overflow-dropdown{top:auto;bottom:calc(100% + var(--menu-grid-image-gap, 10px));right:0;margin:0}@media (hover: hover){.menu-grid-card:hover .menu-grid-overflow .recipe-menu-btn{opacity:1}}@media (min-width: 768px){.menu-grid-card-title{font-size:var(--text-title-lg)}}.menu-grid-card-meta{font-family:var(--font-body);font-size:var(--text-label);font-weight:500;letter-spacing:.03em;color:#1a1c1a6b;margin-top:-1px}.menu-collage{width:100%;height:100%;display:grid;gap:2px;position:relative;z-index:1}.menu-collage-2{grid-template-columns:1fr 1fr}.menu-collage-3{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.menu-collage-3 .menu-collage-cell:first-child{grid-row:1 / -1}.menu-collage-4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.menu-collage-cell{background-size:cover;background-position:center;filter:contrast(.95) brightness(1.02) saturate(.95)}.grocery-view{display:none;padding:0 20px 100px}.grocery-view.active{display:block;animation:fadeInUp .3s ease-out}@media (min-width: 768px){.grocery-view{padding:0 40px 100px}}.menus-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.menus-title{font-family:var(--font-display);font-size:var(--text-display);font-weight:500}.menus-list{display:flex;flex-direction:column;gap:8px;padding:0 16px 80px}.menus-section{display:flex;flex-direction:column;gap:10px}.menus-section+.menus-section{margin-top:20px}.menus-section-label{font-size:var(--text-caption);font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.06em;padding:4px 0 0}.menus-section-header-row{display:flex;align-items:baseline;justify-content:space-between;padding:12px 0 2px}.menus-section-header-row .menus-section-label{padding:0}.menus-section-header{display:flex;justify-content:flex-end;padding:0 16px 12px}.menus-section-title{font-family:var(--font-display);font-size:var(--text-body-sm);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.menus-section-action{background:none;border:none;padding:0;font-family:var(--font-display);font-size:var(--text-body-sm);font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:color .2s}.menus-section-action:hover{color:var(--color-text);text-decoration:underline}.menus-sticky-header{position:sticky;top:calc(var(--header-height, 54px) - 2px - var(--phone-bars-lift, 0px));z-index:90;background:var(--color-bg-cool);padding:12px 16px 10px}.menus-tabs{display:flex;background:#f2efeb;border-radius:10px;padding:4px;margin-bottom:0}.menus-tab{flex:1;padding:10px 16px;border:none;background:transparent;font-size:var(--text-body-sm);font-weight:500;color:var(--color-text-muted);cursor:pointer;border-radius:8px;transition:all .2s}.menus-tab.active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 3px #00000014}.menus-empty-state{text-align:center;padding:48px 24px;color:var(--color-text-muted);font-size:var(--text-body);line-height:1.5}.menus-status-lane{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;padding:0 16px}.menus-status-lane.active{max-height:44px;padding:6px 16px}.status-lane-content{display:flex;align-items:center;gap:10px;padding:6px 12px;background:var(--color-surface-alt);border-radius:var(--radius-md);font-size:13px;color:var(--color-text)}.status-lane-text{flex:1}.status-lane-undo{background:none;border:none;font-size:13px;font-weight:500;color:var(--color-text);cursor:pointer;text-decoration:underline;text-underline-offset:2px;padding:0}.status-lane-undo:hover{color:var(--color-text-muted)}.status-lane-dismiss{background:none;border:none;font-size:16px;color:var(--color-text-muted);cursor:pointer;padding:0 2px;line-height:1}.status-lane-dismiss:hover{color:var(--color-text)}.menu-card.inline-pill-state{transition:height .3s ease,opacity .3s ease,margin-bottom .3s ease;pointer-events:auto;border-color:transparent;box-shadow:none}.inline-pill{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 16px;font-size:13px;color:var(--color-text-muted)}.inline-pill-text{font-weight:500;color:var(--color-text)}.inline-pill-undo{background:none;border:none;font-size:13px;font-weight:500;color:var(--color-text);cursor:pointer;text-decoration:underline;text-underline-offset:2px;padding:0}.inline-pill-undo:hover{color:var(--color-text-muted)}.menus-header-actions{display:flex;gap:10px;align-items:center;padding:0 16px 14px}.menus-search-field{flex:1;position:relative}.menus-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none;opacity:.5}.menus-search-input{width:100%;height:34px;padding:0 10px 0 30px;border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:transparent;font-size:var(--text-tag);font-family:var(--font-body);color:var(--color-text);transition:border-color .15s,background .15s;box-sizing:border-box}.menus-search-input::placeholder{color:var(--color-text-muted);opacity:.6}.menus-search-input:focus{outline:none;border-color:var(--color-border);background:var(--color-bg-cool)}.add-menu-btn{display:flex;align-items:center;gap:4px;height:34px;padding:0 12px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);font-size:var(--text-tag);font-weight:500;font-family:var(--font-body);letter-spacing:.01em;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:transform .2s,box-shadow .2s,border-color .2s}.add-menu-btn:hover{transform:translateY(-1px);box-shadow:0 3px 8px #00000012;border-color:var(--color-border)}.add-menu-btn:active{transform:translateY(0);box-shadow:none}.add-menu-btn .plus-icon{font-size:14px;font-weight:500;line-height:1;color:var(--color-copper)}@media (max-width: 480px){.menus-header-actions{gap:8px;padding:0 12px 12px}.add-menu-label{display:none}.add-menu-btn{padding:0 10px}}.menu-card{background:var(--color-surface);border-radius:var(--radius-2xl);border:1px solid var(--color-border-light);overflow:visible;box-shadow:none;cursor:pointer;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s cubic-bezier(.2,.8,.2,1);-webkit-user-select:none;user-select:none}.menu-card:hover{transform:translateY(-1px);box-shadow:0 2px 8px #2c241a0f}.menu-card-content{padding:16px 20px 20px}.menu-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.menu-name{font-family:var(--font-display);font-size:var(--text-title);font-weight:500;color:var(--color-text);cursor:text}.inline-rename-input{width:100%;margin:-4px -8px;padding:4px 8px;border:none;border-radius:8px;background:#00000008;outline:none;box-sizing:content-box}.menu-date{font-size:var(--text-tag);color:var(--color-text-light)}.menu-date-container{position:relative}.menu-date-btn{background:none;border:none;font-size:var(--text-tag);color:var(--color-text-light);cursor:pointer;padding:2px 6px;border-radius:4px;transition:all .15s}.menu-date-btn:hover{background:#0000000d;color:var(--color-text)}.menu-date-btn .add-date-text{color:var(--color-primary);font-weight:500}.menu-date-btn .add-date-text:hover{text-decoration:underline}.menu-date-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:4px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:8px;box-shadow:0 4px 12px #0000001f;min-width:150px;overflow:hidden;z-index:55}.menu-date-dropdown.open{display:block}.menu-date-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:none;font-size:var(--text-body-sm);color:var(--color-text);cursor:pointer;text-align:left;transition:background .15s}.menu-date-item:hover{background:#f4f2ee}.menu-date-item svg{flex-shrink:0;color:var(--color-text-muted)}.menu-date-item.danger{color:var(--color-text-light)}.menu-date-item.danger svg{color:var(--color-text-light)}.menu-date-item.danger:hover{color:var(--color-text);background:#0000000a}.menu-date-item.danger:hover svg{color:var(--color-text)}.menu-recipe-previews{display:flex;gap:8px;margin-bottom:12px}.menu-recipe-thumb{width:56px;height:56px;border-radius:10px;background-size:cover;background-position:center}.menu-recipe-thumb--textcover{overflow:hidden;position:relative;container-type:inline-size}.menu-recipe-thumb.more{background:var(--color-surface-alt);display:flex;align-items:center;justify-content:center;font-size:var(--text-tag);color:var(--color-text-muted);font-weight:500}.menu-meta-row{display:flex;align-items:center;justify-content:space-between}.menu-meta{display:flex;align-items:center;gap:16px;font-size:var(--text-tag);color:var(--color-text-muted)}.menu-meta-item{display:flex;align-items:center;gap:5px}.menu-meta-item svg{width:16px;height:16px}.menu-card-body{margin-bottom:0}.menu-card-notes{display:none}.menu-card-note-line{display:flex;align-items:baseline;font-size:var(--text-tag);font-family:var(--font-body);line-height:1.3}.menu-card-note-label{flex-shrink:0;width:50px;font-size:var(--text-label-lg);font-weight:500;color:var(--color-text-light)}.menu-card-note-text{font-weight:450;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-notes-chip{display:flex;align-items:center;height:56px;padding:0;border:none;background:transparent;font-size:var(--text-label);font-weight:500;color:var(--color-primary);cursor:pointer;flex-shrink:0;white-space:nowrap;margin-left:4px;gap:8px}.menu-notes-dot{color:var(--color-text-muted);font-size:var(--text-reading-sm)}.menu-card.notes-expanded .menu-notes-chip{color:var(--color-text)}.menu-card-notes-mobile{display:flex;flex-direction:column;gap:2px;padding:10px 0 0;animation:notesFadeIn .2s ease}.menu-card-notes-mobile .menu-card-note-line{font-size:var(--text-tag);line-height:1.3}.menu-card-notes-mobile .menu-card-note-label{width:50px}@keyframes notesFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.menu-card-meta{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-tag);color:var(--color-text-muted);margin-top:4px;position:relative;z-index:0}.menu-card-meta-left{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.menu-card-meta-right{white-space:nowrap;flex-shrink:0;margin-left:12px}.menu-overflow{position:relative}.menu-overflow-btn{background:none;border:none;padding:4px 6px;cursor:pointer;color:var(--color-text-light);border-radius:4px;transition:all .15s}.menu-overflow-btn:hover{background:#0000000d;color:var(--color-text)}.menu-overflow-dropdown{display:none;position:absolute;top:0;right:100%;margin-right:4px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 20px #00000026;min-width:180px;overflow:hidden;z-index:50}.menu-overflow-dropdown.open{display:block}.menu-overflow-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:none;border:none;text-align:left;font-size:var(--text-body-sm);font-family:inherit;color:var(--color-text);cursor:pointer;transition:background .15s}@media (hover: hover){.menu-overflow-item:hover{background:var(--color-surface-alt)}}.menu-overflow-item svg{flex-shrink:0;color:var(--color-text-muted)}.menu-overflow-divider{height:1px;background:var(--color-border-light);margin:4px 12px}.menu-overflow-item.danger{color:var(--color-text)}@media (hover: hover){.menu-overflow-item.danger:hover{background:#00000008}}.menu-overflow-dropdown.confirm-state{width:300px;overflow:visible;animation:confirmAppear .12s ease-out}.menu-overflow-confirm{padding:14px 16px}.menu-overflow-confirm-title{font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:600;color:var(--color-text);margin:0 0 4px}.menu-overflow-confirm-body{font-size:var(--text-label-lg);font-weight:400;color:var(--color-text-muted);margin:0 0 10px;line-height:1.4}.menu-overflow-confirm-actions{display:flex;gap:18px;justify-content:flex-end}.menu-overflow-confirm-cancel,.menu-overflow-confirm-delete{background:none;border:none;padding:2px 0;font-size:var(--text-label-lg);font-family:inherit;cursor:pointer;transition:color .15s,opacity .15s}.menu-overflow-confirm-cancel{color:var(--color-text-muted);font-weight:400}.menu-overflow-confirm-cancel:hover{color:var(--color-text)}.menu-overflow-confirm-delete{color:var(--color-text);font-weight:600}.menu-overflow-confirm-delete:hover{text-decoration:underline}.menu-toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%) translateY(20px);background:#333;color:#fff;padding:12px 20px;border-radius:8px;font-size:var(--text-body-sm);opacity:0;transition:opacity .3s,transform .3s;z-index:1000;pointer-events:none}.menu-toast.show{opacity:1;transform:translate(-50%) translateY(0)}.menu-detail{display:none;padding-bottom:100px}.menu-detail.active{display:block}body.menu-focused .tag-ribbon{display:none}.menu-detail-topbar{display:flex;align-items:center;gap:12px;padding:16px 24px;border-bottom:1px solid rgba(26,28,26,.06);margin-bottom:0;position:sticky;top:calc(var(--header-height, 96px) - var(--phone-bars-lift, 0px));z-index:98;background:#faf9f6}@media (min-width: 768px){.menu-detail-topbar{padding:20px 40px;top:calc(var(--header-height, 96px) - var(--phone-bars-lift, 0px))}}.menu-detail-meta{flex:1;min-width:0}.menu-detail-name-row{display:flex;align-items:center;gap:2px;min-width:0}.menu-detail-title{font-family:var(--font-display);font-size:var(--text-title-3xl);cursor:text;font-weight:400;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1a1c1a}.menu-detail-date{font-size:var(--text-tag);color:var(--color-text-light);background:none;border:none;padding:0;cursor:pointer;transition:color .15s}.menu-detail-date:hover{color:var(--color-text)}.menu-detail-date .add-date-text{color:var(--color-primary);font-weight:500}.header-grocery-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:4px;background:transparent;border:1px solid rgba(26,28,26,.12);color:#1a1c1a80;cursor:pointer;flex-shrink:0}.header-grocery-btn:hover{border-color:#1a1c1a40;color:#1a1c1a}.header-grocery-btn svg{width:18px;height:18px}.menu-detail-overflow{position:relative;flex-shrink:0}.menu-detail-overflow-btn{background:none;border:none;padding:2px 4px;cursor:pointer;color:var(--color-text-light);border-radius:4px;transition:all .15s;display:flex;align-items:center;justify-content:center}.menu-detail-overflow-btn:hover{color:var(--color-text)}.menu-detail-share-btn{margin-left:auto;flex-shrink:0;background:none;border:none;padding:4px 8px;cursor:pointer;color:var(--color-text-muted);border-radius:4px;transition:color .15s;display:flex;align-items:center;justify-content:center}.menu-detail-share-btn:hover{color:var(--color-text)}.menu-detail-grocery-btn{margin-left:auto;flex-shrink:0;background:none;border:none;padding:4px 8px;cursor:pointer;color:var(--color-text-muted);border-radius:4px;transition:color .15s;display:flex;align-items:center;justify-content:center}.menu-detail-grocery-btn:hover{color:var(--color-text)}.menu-detail-grocery-btn svg{flex-shrink:0;width:18px;height:18px}@media not all and (max-width: 1023px){.menu-detail-grocery-btn+.menu-detail-share-btn{margin-left:0}}.menu-detail-overflow-dropdown{display:none;position:absolute;top:100%;right:0;left:auto;margin-top:2px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 20px #00000026;min-width:180px;z-index:50;overflow:hidden}.menu-detail-overflow-dropdown.open{display:block}.menu-detail-overflow-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:none;border:none;text-align:left;font-size:var(--text-body-sm);font-family:var(--font-body);color:var(--color-text);cursor:pointer;transition:background .15s;white-space:nowrap}.menu-detail-overflow-item:hover{background:var(--color-surface-alt)}.menu-detail-overflow-item svg{flex-shrink:0;color:var(--color-text-muted)}.menu-detail-overflow-divider{height:1px;background:var(--color-border-light);margin:4px 12px}.menu-detail-overflow-count{color:var(--color-text-muted)}@media (min-width: 1024px){.menu-detail-overflow-dropdown .overflow-mobile-only{display:none}}.menu-detail-overflow-item.danger{color:var(--color-text)}.menu-detail-overflow-item.danger:hover{background:var(--color-surface-alt)}.menu-detail-overflow-dropdown.confirm-state{width:300px;overflow:visible;padding:0;animation:confirmAppear .12s ease-out}.print-menu-chooser{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 20px #00000026;min-width:180px;z-index:210;overflow:hidden}.detail-duplicate-input{width:100%;padding:8px 10px;font-size:13px;font-family:inherit;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-cool);color:var(--color-text);box-sizing:border-box;margin-bottom:14px}.detail-duplicate-input:focus{outline:none;border-color:var(--color-text-light)}.menu-detail-sub-row{display:flex;align-items:center;gap:6px;overflow:visible}.menu-detail-layout-sep{color:#1a1c1a33;font-size:var(--text-label)}.autosave-status{font-size:11px;color:var(--color-text-light);opacity:0;margin-left:auto;transition:opacity .3s;-webkit-user-select:none;user-select:none}.autosave-status.saving,.autosave-status.saved{opacity:.5}.autosave-status.unsaved{opacity:1}.autosave-status.fade-out{opacity:0}.autosave-status.error{color:var(--color-danger);opacity:1}.layout-inline-picker{position:relative}.layout-inline-trigger{display:inline-flex;align-items:center;gap:3px;font-size:13px;text-transform:uppercase;color:var(--color-text-muted);cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent}.layout-inline-trigger:hover{color:var(--color-text);text-decoration:underline;text-underline-offset:2px}.layout-inline-caret{color:var(--color-text-light);margin-top:1px}.layout-inline-dropdown{display:none;position:absolute;top:100%;left:0;margin-top:2px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:6px;box-shadow:0 2px 8px #0000000f;padding:3px 0;z-index:50}.layout-inline-dropdown.open{display:block}.layout-picker-option{display:block;width:100%;padding:7px 12px;font-size:12px;font-family:inherit;font-weight:400;text-transform:uppercase;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .15s;text-align:left;white-space:nowrap}.layout-picker-option:hover{color:var(--color-text);background:#00000008}.layout-picker-option.active{color:var(--color-text);font-weight:500}.layout-panel-hint{margin:0;padding:0 24px 16px;font-size:13px;color:var(--color-text-light);line-height:1.5}.layout-preset-list{display:flex;flex-direction:column;gap:8px;padding:0 24px 24px}.layout-preset-card{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:none;border:1px solid var(--color-border);border-radius:8px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.layout-preset-card:hover{border-color:var(--color-text-light);background:#00000004}.layout-preset-card.active{border-color:var(--color-primary);background:#1a1c1a0a}.layout-preset-label{font-size:14px;font-weight:500;color:var(--color-text)}.layout-preset-card.active .layout-preset-label{color:var(--color-primary)}.layout-preset-courses{font-size:12px;color:var(--color-text-light);line-height:1.4}.layout-preset-divider{height:1px;background:var(--color-border);margin:4px 0}.date-hint-tooltip{position:fixed;z-index:9999;background:var(--color-text);color:#fff;font-size:12px;font-family:inherit;padding:5px 10px;border-radius:5px;box-shadow:0 2px 8px #0000001f;white-space:nowrap;animation:fadeIn .15s ease-out;pointer-events:none}.duplicate-dish-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000014;z-index:9999;animation:fadeIn .1s ease-out}.duplicate-dish-dialog{background:#fff;border-radius:10px;padding:18px 20px 16px;box-shadow:0 2px 12px #0000001a;min-width:180px;max-width:260px;text-align:center}.duplicate-dish-msg{font-size:14px;font-family:var(--font-body);font-weight:600;color:var(--color-text);margin:0 0 14px;line-height:1.4}.duplicate-dish-actions{display:flex;gap:8px;justify-content:center;align-items:center}.duplicate-dish-cancel,.duplicate-dish-add{font-family:var(--font-body);border:none;border-radius:6px;cursor:pointer}.duplicate-dish-cancel{background:none;color:#908a85;font-size:13px;font-weight:400;padding:6px 12px;transition:color .15s ease}.duplicate-dish-cancel:hover{color:var(--color-text)}.duplicate-dish-add{background:#00000012;color:var(--color-text);font-size:13px;font-weight:500;padding:7px 16px;transition:background .15s ease}.duplicate-dish-add:hover{background:#0000001f}.reorder-done-bar{display:flex;align-items:center;gap:8px;padding:8px 20px;font-size:13px;background:#ede8e0;border-bottom:1px solid var(--color-border-light, #E8E3DA)}.reorder-label{color:var(--color-text);font-weight:500}.reorder-hint{color:var(--color-text-muted, #9A938A)}.reorder-sep{color:var(--color-text-muted, #9A938A);opacity:.5}.reorder-done-btn{background:none;border:1px solid var(--color-border);color:var(--color-text);border-radius:14px;cursor:pointer;font-size:12px;font-weight:500;font-family:inherit;padding:3px 12px;transition:background .15s}.reorder-done-btn:hover{background:var(--color-border-light, #F0EBE3)}.reorder-mode .course-column{cursor:move;border:1px dashed var(--color-border-strong);border-radius:6px;padding:8px 12px;background:#1a1c1a05;transition:background .15s,transform .15s}.reorder-mode .course-column:hover{background:#1a1c1a0d;transform:translate(2px)}.reorder-mode .course-column.dragging{opacity:.35}.event-sidebar-btn[data-action=ml-reorder-courses].active{background:var(--color-accent-soft);color:var(--color-text);font-weight:600}.event-sidebar-btn[data-action=ml-reorder-courses].active:after{content:"ON";margin-left:6px;font-size:var(--text-micro);font-weight:700;letter-spacing:.08em;color:var(--color-secondary)}.recipe-card{background:var(--color-surface);border-radius:var(--radius-2xl);border:1px solid var(--color-border-light);overflow:hidden;box-shadow:none;cursor:pointer;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s cubic-bezier(.2,.8,.2,1);min-width:0;display:flex;flex-direction:column}.freeform-grid .recipe-card,.freeform-grid .add-card{width:100%;min-width:0}.recipe-card:hover{transform:translateY(-1px);box-shadow:0 2px 8px #2c241a0f}.recipe-card.dragging,.planner-chip.dragging{opacity:.5;transition:opacity .15s}.drop-bar{position:fixed;top:56px;left:0;right:0;z-index:999;background:var(--color-bg-cool);border-bottom:1px solid var(--color-border-light);display:flex;align-items:center;justify-content:center;padding:0 8px;height:52px;opacity:0;transform:translateY(-6px);transition:opacity .15s ease-out,transform .15s ease-out;pointer-events:none;gap:0}.drop-bar-days{display:flex;align-items:center;justify-content:center;gap:4px;flex:1;min-width:0}.drop-bar-arrow{pointer-events:auto;background:none;border:1px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:18px;line-height:1;width:28px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .12s;font-family:var(--font-body);padding:0}.drop-bar-arrow:hover,.drop-bar-arrow.drag-hover{background:var(--color-surface-alt);border-color:var(--color-border);color:var(--color-text)}.drop-bar.visible{opacity:1;transform:translateY(0)}.drop-bar-day{flex:1;max-width:90px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 6px 4px;border-radius:var(--radius-lg);border:1.5px solid var(--color-border-light);transition:all .12s ease-out;cursor:default;pointer-events:auto}.drop-bar-day.today .drop-bar-label{color:var(--color-text)}.drop-bar-day.drag-over{background:#7d8b6a24;border-color:var(--color-secondary);border-width:2px;padding:5.5px 5.5px 3.5px}.drop-bar-day.drag-over .drop-bar-label{color:var(--color-text)}.drop-bar-day.drag-over .drop-bar-count{color:var(--color-text-muted)}.drop-bar-day.drag-over .drop-bar-hint{opacity:1;max-height:14px}.drop-bar-label{font-size:13px;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);line-height:1}.drop-bar-count{font-size:11px;color:var(--color-text-light);font-weight:400;line-height:1}.drop-bar-hint{font-size:9px;color:var(--color-secondary);font-weight:var(--font-weight-medium);white-space:nowrap;opacity:0;max-height:0;overflow:hidden;transition:opacity .1s,max-height .1s;line-height:1}.drag-ghost{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);box-shadow:0 8px 24px #0000001f;max-width:180px}.drag-ghost-img{width:32px;height:32px;border-radius:var(--radius-md);background-size:cover;background-position:center;flex-shrink:0}.drag-ghost-img-placeholder{background:var(--color-surface-alt)}.drag-ghost-title{font-size:12px;font-weight:var(--font-weight-medium);color:var(--color-text);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drag-ghost-touch{position:fixed;z-index:9998;pointer-events:none;opacity:.85;transform:scale(1.02);box-shadow:0 10px 30px #00000026;border-radius:var(--radius-xl);overflow:hidden;transition:opacity .1s}.recipe-card-img{display:block;width:100%;aspect-ratio:1;background-size:cover;background-position:center;background-color:#e8e5e0;position:relative;overflow:hidden;container-type:inline-size}.recipe-card-title{padding:8px 10px 10px;font-size:13px;font-family:var(--font-display);font-weight:var(--font-weight-medium);color:var(--color-text);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-remove{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:#0000004d;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;z-index:2}@media (hover: hover){.recipe-card:hover .recipe-remove{opacity:1}}@media (hover: none){.recipe-remove{opacity:.7}}.recipe-remove svg{width:12px;height:12px;color:#ffffffd9}.add-card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:all .2s;padding:10px 16px;grid-column:1 / -1}.add-card:hover{background:var(--color-surface-alt);border-color:var(--color-border)}.add-card svg{width:16px;height:16px;color:var(--color-text-light)}.add-card span{font-size:13px;font-weight:var(--font-weight-medium);color:var(--color-text-muted)}.freeform-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:1px 20px}.recipes-zone{padding:0 20px 40px;background:var(--color-bg-cool);transition:background .18s ease-out}.recipes-zone.drag-over-unassign{background:#7d8b6a0d}.recipes-header{display:flex;align-items:baseline;gap:6px;padding:1px 0 10px;-webkit-user-select:none;user-select:none;border-top:none}.recipes-header-sep{font-size:14px;color:var(--color-text-light);line-height:1}.recipes-header-add{background:none;border:none;font-family:inherit;font-size:14px;font-weight:500;color:var(--color-primary);cursor:pointer;padding:0}.recipes-header-add:hover{text-decoration:underline;text-underline-offset:2px}.recipes-header h3{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--color-text);margin:0}.recipes-count{font-size:14px;font-weight:400;color:var(--color-text-muted)}.recipes-chevron{width:14px;height:14px;color:var(--color-text-light);transition:transform .2s;transform:rotate(-90deg);flex-shrink:0}.recipes-chevron.open{transform:rotate(0)}.recipes-grid{display:none;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;padding-top:12px}.recipes-grid.open{display:grid}body.dragging-recipe .plan-zone{position:relative;z-index:auto}body.dragging-recipe .context-bar{display:none!important}.plan-zone.course-zone{position:sticky;top:calc(var(--header-height, 54px) + var(--detail-topbar-height, 56px) - var(--phone-bars-lift, 0px));z-index:20;background:var(--color-bg-cool)}@media (min-width: 768px){.plan-zone.course-zone{top:calc(var(--header-nav-height, 100px) + var(--detail-topbar-height, 56px) - var(--phone-bars-lift, 0px))}}.course-column.drag-over{background:#7d8b6a1f;border-radius:8px;box-shadow:inset 0 0 0 1.5px #7d8b6a40;transition:background .1s,box-shadow .1s}.recipes-grid .recipe-card,.recipes-grid .add-card{width:100%;min-width:0}.add-all-grocery{padding:16px 20px 0}.grocery-actions{display:flex;align-items:center;gap:8px}.add-all-grocery-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;font-size:var(--text-body-sm);font-weight:500;color:var(--color-secondary);cursor:pointer;transition:all .2s;font-family:var(--font-body)}.add-all-grocery-btn:hover{background:var(--color-surface-alt);border-color:var(--color-secondary)}.add-all-grocery-btn.added{background:#e8f5e3;border-color:var(--color-secondary)}.add-all-grocery-btn svg{width:18px;height:18px;flex-shrink:0}.add-day-grocery-btn{display:flex;align-items:center;padding:10px 14px;background:transparent;border:1px solid var(--color-border-light);border-radius:12px;font-size:var(--text-tag);font-weight:500;color:var(--color-text-light);cursor:pointer;transition:all .2s;font-family:var(--font-body);white-space:nowrap}.add-day-grocery-btn:hover{border-color:var(--color-border);color:var(--color-text-muted)}.plan-zone{padding:16px 0 7px;background:var(--color-bg-cool);border-bottom:none;margin-bottom:0;position:relative;z-index:1;max-height:2000px;transition:max-height .3s ease-out,padding .2s ease-out,opacity .2s ease-out;overflow:visible;overflow-anchor:none}.plan-zone.plan-collapsed{max-height:0;padding:0;overflow:hidden;opacity:0;pointer-events:none}.plan-zone.plan-collapsed:after{display:none}.planner-empty-hint{text-align:center;font-size:14px;color:var(--color-text-muted);padding:6px 0 4px}.context-bar{position:sticky;top:56px;z-index:50;height:44px;background:var(--color-bg-cool);border-bottom:1px solid var(--color-border-light);display:none;align-items:center;justify-content:space-between;padding:0 20px;overflow:hidden}.context-bar.visible{display:flex}.context-bar-title{font-size:13px;font-weight:var(--font-weight-semibold);color:var(--color-text-muted);letter-spacing:.02em}.context-bar-jump{font-size:12px;font-weight:var(--font-weight-medium);color:var(--color-secondary);cursor:pointer;border:none;background:none;padding:4px 0;font-family:var(--font-body)}.context-bar-jump:hover{opacity:.75}.plan-zone:after{content:"";position:absolute;top:0;right:0;bottom:0;width:32px;background:linear-gradient(to right,transparent,var(--color-bg-cool));pointer-events:none;z-index:1}.plan-day-strip{display:flex;justify-content:center;gap:0;overflow-x:auto;padding:0 20px 8px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scroll-padding-left:20px}.plan-day-strip::-webkit-scrollbar{height:2px}.plan-day-strip::-webkit-scrollbar-track{background:transparent}.plan-day-strip::-webkit-scrollbar-thumb{background:transparent;border-radius:1px}.plan-day-strip.is-scrolling::-webkit-scrollbar-thumb{background:#0000000f}.plan-day-strip{scrollbar-width:thin;scrollbar-color:transparent transparent}.plan-day-strip.is-scrolling{scrollbar-color:rgba(0,0,0,.06) transparent}.plan-day-column{flex:0 0 calc(100% / 7);min-width:0;scroll-snap-align:start;padding-right:10px;transition:background .15s}@media (max-width: 600px){.plan-day-column{flex:0 0 20%}}.plan-day-column:last-child{padding-right:0}.plan-day-column.today .plan-day-label{color:var(--color-primary);border-bottom-color:var(--color-primary)}.plan-day-column{transition:background .18s ease-out}.plan-day-column.drag-over{background:#7d8b6a0f;border-radius:8px}@keyframes chip-settle{0%{opacity:.5;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.planner-chip.just-dropped{animation:chip-settle .22s cubic-bezier(.2,.8,.2,1) forwards}.planner-chip.drop-before:before{content:"";position:absolute;top:-6px;left:0;right:0;height:2px;background:var(--color-secondary);border-radius:1px;opacity:.6}.planner-chip.drop-after:after{content:"";position:absolute;bottom:-6px;left:0;right:0;height:2px;background:var(--color-secondary);border-radius:1px;opacity:.6}.plan-day-label{font-family:var(--font-display);font-size:var(--text-reading-sm);font-weight:400;text-transform:none;letter-spacing:0;color:#1a1c1a;padding:8px 0 10px;border-bottom:1px solid rgba(26,28,26,.08);margin-bottom:10px;text-align:center;white-space:nowrap}.plan-day-date{font-weight:400;font-size:var(--text-tag);color:var(--color-text-muted);text-transform:none;letter-spacing:0;display:none}.plan-day-column:hover .plan-day-date{display:inline}.plan-day-cards{display:flex;flex-direction:column;align-items:center;gap:10px;min-height:60px}.planner-chip{width:100%;min-height:64px;padding:10px;background:#fff;border:1px solid rgba(26,28,26,.08);border-radius:4px;box-shadow:none;cursor:grab;transition:opacity .15s;position:relative}.planner-chip:active{cursor:grabbing}.planner-chip:hover{border-color:#1a1c1a29}.planner-chip.dragging{opacity:.4}.planner-chip-title{font-family:var(--font-display);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4}.planner-chip-meal{display:block;font-size:var(--text-tag);color:var(--color-text-muted);white-space:nowrap;cursor:pointer;margin-top:3px;padding:1px 2px;border-radius:4px;transition:all .15s}.planner-chip-meal:hover{color:var(--color-text)}.planner-chip-remove{position:absolute;top:4px;right:4px;width:18px;height:18px;border-radius:50%;border:none;background:transparent;color:var(--color-text-light);cursor:pointer;display:none;align-items:center;justify-content:center;padding:0;flex-shrink:0}.planner-chip-remove svg{width:11px;height:11px}.planner-chip:hover .planner-chip-remove{display:flex}.planner-chip-remove:hover{background:#7d8b6a26;color:var(--color-text)}.meal-type-dropdown{position:fixed;width:max-content;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);box-shadow:none;z-index:9999;padding:6px 0}.meal-type-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;text-align:left;border:none;background:transparent;cursor:pointer;font-size:13px;font-family:inherit;color:var(--color-text);transition:background .15s}.meal-type-option:hover{background:var(--color-surface-alt)}.meal-type-option:active{background:var(--color-border-light)}.meal-type-option.selected{color:var(--color-text);font-weight:600}.meal-type-option.selected:after{content:"✓";font-size:13px;font-weight:400;color:var(--color-secondary);margin-left:12px}.day-note-card{display:flex;align-items:flex-start;gap:6px;padding:10px 12px;min-height:74px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);font-style:italic;box-sizing:border-box}.day-note-text{font-size:12px;color:var(--color-text-muted);flex:1;min-width:0;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;line-height:1.3}.day-note-text:hover{color:var(--color-text)}.day-note-remove{width:16px;height:16px;border-radius:50%;border:none;background:transparent;color:var(--color-text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;opacity:0;transition:opacity .15s}.day-note-remove svg{width:10px;height:10px}.day-note-card:hover .day-note-remove{opacity:1}.day-note-remove:hover{background:#0000000f;color:var(--color-text)}.day-note-input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-family:var(--font-body);font-size:14px;resize:vertical;color:var(--color-text);background:var(--color-bg-cool);margin-bottom:14px;box-sizing:border-box}.day-note-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #c4704f1a}.plan-day-chooser{position:fixed;width:max-content;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 16px #0000001f;overflow:hidden;z-index:9999}.chooser-option{display:block;width:100%;padding:9px 14px;border:none;background:transparent;text-align:left;cursor:pointer;font-size:13px;font-family:inherit;color:var(--color-text);transition:all .15s}.chooser-option:first-child{border-bottom:1px solid var(--color-border-light)}.chooser-option:hover{background:#7d8b6a26;color:var(--color-text)}.recipe-day-badges{display:flex;gap:3px;flex-wrap:wrap;padding:0 10px 8px}.day-badge{font-size:9px;font-weight:600;padding:1px 5px;background:#7d8b6a1f;color:var(--color-secondary);border-radius:3px;text-transform:uppercase;letter-spacing:.3px}.recipe-day-indicator{font-size:11px;color:var(--color-text-light);padding:0 10px 8px}.recipe-day-indicator.expandable{cursor:pointer}.recipe-day-indicator .day-indicator-detail,.recipe-day-indicator.expanded .day-indicator-summary{display:none}.recipe-day-indicator.expanded .day-indicator-detail{display:inline}.plan-day-add{display:inline;padding:0;margin-top:-6px;border:none;background:transparent;cursor:pointer;transition:opacity .2s,color .15s;color:var(--color-text-light);font-size:var(--text-label);font-family:var(--font-body);opacity:0}.plan-day-column:hover .plan-day-add{opacity:1}.plan-day-add:hover{color:var(--color-secondary)}.add-all-grocery-btn svg{width:18px;height:18px}.menu-photos-section{margin-bottom:24px}.menu-photos-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.menu-photos-title{font-size:var(--text-body-sm);font-weight:600;color:var(--color-text-muted)}.add-photos-btn{display:flex;align-items:center;gap:5px;background:none;border:none;color:var(--color-primary);font-size:14px;font-weight:500;cursor:pointer}.add-photos-btn svg{width:18px;height:18px}.menu-photos-grid{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.menu-photos-grid::-webkit-scrollbar{display:none}.menu-photo{width:100px;height:100px;border-radius:12px;background-size:cover;background-position:center;flex-shrink:0;cursor:pointer;transition:transform .2s}.menu-photo:hover{transform:scale(1.03)}.menu-photo.add-photo{background:var(--color-surface-alt);border:2px dashed #d9d5cf;display:flex;align-items:center;justify-content:center}.menu-photo.add-photo svg{width:24px;height:24px;color:var(--color-text-light)}.menu-grocery-placeholder{padding:40px 20px;text-align:center;color:var(--color-text-muted)}.grocery-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.grocery-title{font-family:var(--font-display);font-size:var(--text-display);font-weight:500}.grocery-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 20px;min-height:300px}.grocery-empty-title{font-family:var(--font-display);font-size:var(--text-title-xl);font-weight:500;color:var(--color-text);margin-bottom:8px}.grocery-empty-state--bare .grocery-empty-title{font-weight:400;color:var(--color-text-light);margin-bottom:0}.grocery-empty-subtitle{font-size:var(--text-body);color:var(--color-text-light);margin-bottom:28px}.grocery-empty-actions{display:flex;flex-direction:column;align-items:center;gap:12px}.multiplier-dropdown{display:flex;gap:2px;background:#fff;border:1px solid var(--color-border-light);border-radius:10px;padding:4px;box-shadow:0 4px 12px #0000001f;z-index:100}.multiplier-option{width:36px;height:32px;border:none;background:none;border-radius:8px;font-size:13px;font-family:inherit;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:background .12s,color .12s}.multiplier-option:hover{background:#f2efeb}.multiplier-option.active{background:#e8f5e3;color:#3d5a36;font-weight:600}.add-recipe-btn{padding:6px 12px;font-size:13px;font-family:inherit;color:var(--color-text-muted);background:transparent;border:1px dashed var(--color-border);border-radius:16px;cursor:pointer;transition:all .15s}.add-recipe-btn:hover{color:var(--color-text);border-color:var(--color-text-muted);background:#00000008}.grocery-section{margin-bottom:32px}.grocery-section:first-child{margin-top:8px}.grocery-section-title{font-size:var(--text-caption);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-light);margin-bottom:4px;padding-top:4px}.grocery-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--color-border-light);transition:background .2s,opacity .4s ease}.grocery-item.checked{opacity:.45;transition:opacity .4s ease,background .2s}.grocery-checkbox{width:18px;height:18px;border-radius:50%;border:1px solid var(--color-border);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.grocery-item-name{font-size:var(--text-body);font-weight:500;color:var(--color-text);display:block}.buy-options-dropdown{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;width:160px;z-index:1000;overflow:hidden}.buy-options-header{font-size:11px;color:var(--color-text-light);padding:10px 14px 6px;text-transform:uppercase;letter-spacing:.5px}.buy-option{padding:10px 14px;font-size:14px;color:var(--color-text);cursor:pointer;transition:background .1s}.buy-option:hover{background:#f5f4f2}.buy-option.selected{color:var(--color-text);font-weight:600}.buy-option-have{border-top:1px solid #eee;color:var(--color-success)}.buy-option-custom{border-top:1px solid #eee}.buy-option-custom-trigger{padding:10px 14px;font-size:14px;color:var(--color-text-light);cursor:pointer;transition:background .1s}.buy-option-custom-trigger:hover{background:#f5f4f2;color:var(--color-text)}.buy-option-custom-input{padding:6px 10px}.buy-option-input{width:100%;padding:8px 10px;font-size:14px;font-family:inherit;border:1px solid #ddd;border-radius:6px;outline:none;box-sizing:border-box}.buy-option-input:focus{border-color:var(--color-border-strong)}.buy-option-input::placeholder{color:#aaa}.grocery-item-qty{font-size:var(--text-tag);color:var(--color-text-light);white-space:nowrap;flex-shrink:0}.grocery-item.checked .grocery-item-qty{text-decoration:line-through;color:var(--color-border)}.add-item-row{position:relative;padding:4px 0}.add-item-collapsed{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;color:var(--color-text-muted);background:#00000008;border-radius:10px;margin-bottom:12px;transition:all .15s}.add-item-collapsed:hover{background:#0000000d;color:var(--color-text)}.add-item-plus{font-size:18px;font-weight:500;line-height:1}.add-item-label{font-size:var(--text-body)}.add-item-expanded{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000001a;border:1.5px solid var(--color-border);padding:12px 14px;display:flex;align-items:flex-start;gap:12px}.add-item-icon-plus{font-size:18px;font-weight:500;color:var(--color-text-muted);line-height:1;flex-shrink:0;width:22px;text-align:center}.add-item-content{flex:1;min-width:0}.add-item-input-row{display:flex;align-items:center}.add-item-input{padding:0;font-size:var(--text-body);font-family:inherit;border:none;background:transparent;outline:none;color:var(--color-text);flex:1}.add-item-input::placeholder{color:var(--color-text-muted)}.detected-category{font-size:11px;color:var(--color-text-light);padding:3px 8px;background:#0000000d;border:1px solid transparent;border-radius:10px;margin-left:16px;white-space:nowrap;cursor:pointer;transition:all .15s;position:relative}.detected-category:hover{background:#00000014;border-color:#0000001f}.category-caret{font-size:9px;margin-left:2px;opacity:.6}.detected-category:empty{display:none}.category-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border-radius:8px;box-shadow:0 4px 16px #00000026;padding:4px 0;z-index:50;min-width:140px}.category-option{padding:8px 12px;font-size:13px;color:var(--color-text);cursor:pointer;transition:background .1s}.category-option:hover{background:var(--color-surface)}.add-item-hint{font-size:var(--text-caption);color:var(--color-text-muted);margin-top:8px;padding-left:16px}@keyframes highlight-fade{0%{background:#46563d1f}to{background:transparent}}.add-item-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%) translateY(10px);background:var(--color-text);color:#fff;padding:8px 16px;border-radius:8px;font-size:var(--text-tag);opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;z-index:100}.add-item-toast.visible{opacity:1;transform:translate(-50%) translateY(0)}.clear-checked-btn{padding:8px 14px;background:transparent;border:1px solid var(--color-border);border-radius:8px;font-size:13px;font-family:inherit;color:var(--color-text-muted);cursor:pointer;transition:all .15s}.clear-checked-btn:hover{background:var(--color-surface-alt);border-color:#c4bfb7;color:var(--color-text)}.staples-empty{text-align:center;padding:48px 24px}.staples-empty-title{font-size:var(--text-title);font-weight:600;color:var(--color-text);margin-bottom:8px}.staples-empty-subtitle{font-size:var(--text-body-sm);color:var(--color-text-muted);margin-bottom:24px}.staples-add-btn{padding:10px 20px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:var(--text-body-sm);font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s}.staples-add-btn:hover{background:var(--color-primary-hover)}.staples-list{padding:0 16px 16px}.staples-section{margin-bottom:20px}.staples-section-title{font-size:var(--text-label);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;padding:8px 0;margin-bottom:4px}.staple-input,.staple-select{width:100%;padding:10px 12px;font-size:var(--text-body);font-family:inherit;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);outline:none;transition:border-color .15s}.staple-input:focus,.staple-select:focus{border-color:var(--color-primary)}.grocery-empty-action{background:none;border:none;padding:0;font-size:var(--text-reading-sm);font-weight:600;font-family:var(--font-body);color:var(--color-primary);cursor:pointer}.grocery-empty-action:hover{text-decoration:underline}.grocery-empty-action-secondary{font-weight:400;color:var(--color-text-muted)}.grocery-empty-action-secondary:hover{color:var(--color-text)}.grocery-sticky-header{position:sticky;top:calc(var(--header-height, 54px) - 2px + var(--context-banner-height, 0px) - var(--phone-bars-lift, 0px));z-index:90;background:var(--color-bg-cool);padding:16px 0 14px}@media (min-width: 768px){.grocery-sticky-header{padding:28px 0 16px}}.grocery-sticky-header+.grocery-content{padding-top:0}.grocery-editorial-header{position:relative}.grocery-header-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.grocery-header-row .grocery-header-title{flex:0 1 auto;min-width:0;white-space:nowrap}.grocery-header-title.is-interactive{cursor:pointer}.grocery-header-title.is-interactive:hover{color:var(--color-text-muted)}.grocery-header-title{font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:var(--text-display-sm);line-height:1.2;color:var(--color-text);margin:0;letter-spacing:-.005em;transition:color .15s}@media (min-width: 768px){.grocery-header-title{font-size:var(--text-display-lg)}}.grocery-header-caret{display:inline-block;margin-left:14px;font-family:var(--font-body);font-size:.58em;font-weight:var(--font-weight-regular);color:#1a1c1a73;vertical-align:baseline;position:relative;top:.04em;letter-spacing:0;transition:color .15s}.grocery-header-title.is-interactive:hover .grocery-header-caret{color:var(--color-text-muted)}.grocery-header-tally{font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text-light);letter-spacing:.005em}.grocery-header-bottom{display:flex;align-items:baseline;gap:16px;margin-top:4px}.grocery-share-status{display:flex;align-items:baseline;gap:12px;font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light)}.grocery-share-status-label{letter-spacing:.005em}.grocery-share-status-action{background:none;border:none;padding:0;font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-muted, #5F5A54);text-decoration:underline;cursor:pointer}.grocery-share-status-action:hover{color:var(--color-text)}.grocery-list-status{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);letter-spacing:.005em}.grocery-list-status:empty{display:none}.grocery-header-actions{display:flex;align-items:center;gap:22px;flex-shrink:0;padding-top:0}.grocery-action-bar{display:flex;align-items:center;gap:14px;padding:0;margin-bottom:18px}.grocery-action-add{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--font-weight-medium);color:var(--color-text-muted);background:transparent;border:none;cursor:pointer;padding:6px 0;letter-spacing:.005em;transition:color .15s}.grocery-action-add:hover,.grocery-action-add:focus-visible{color:var(--color-text);outline:none}.grocery-header-action{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--font-weight-regular);color:#1a1c1a99;background:transparent;border:none;cursor:pointer;padding:4px 0;letter-spacing:.005em;transition:color .15s}.grocery-header-action:hover,.grocery-header-action:focus-visible{color:var(--color-text);outline:none}.grocery-action-overflow{font-size:20px;line-height:1;letter-spacing:1.5px;color:#1a1c1a99;background:transparent;border:none;cursor:pointer;padding:4px 6px;transition:color .15s}.grocery-action-overflow:hover,.grocery-action-overflow:focus-visible{color:var(--color-text);outline:none}@media (max-width: 640px){.grocery-editorial-header{flex-direction:column;gap:12px}.grocery-header-actions{flex-shrink:0;padding-top:0}}.grocery-mobile-overflow{position:absolute;top:100%;right:0;background:var(--color-bg-cool);border:1px solid rgba(26,28,26,.06);border-radius:6px;box-shadow:0 6px 18px #1a1c1a0f,0 1px 3px #1a1c1a0a;z-index:100;min-width:184px;padding:6px 0}.grocery-mobile-overflow button{display:block;width:100%;text-align:left;padding:9px 18px;border:none;background:none;font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--font-weight-regular);color:var(--color-text);cursor:pointer;letter-spacing:.005em}.grocery-mobile-overflow button:hover{background:#1a1c1a09}.grocery-mobile-overflow .grocery-overflow-danger{color:var(--color-text-muted)}.grocery-mobile-overflow .grocery-overflow-danger:hover{color:var(--color-text)}.grocery-mobile-overflow .grocery-overflow-group-label{padding:6px 18px 2px;font-family:var(--font-body);font-size:var(--text-caption);font-weight:var(--font-weight-medium, 500);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-light)}.grocery-mobile-overflow .grocery-arrange-option{display:flex;align-items:center;gap:8px}.grocery-mobile-overflow .grocery-arrange-check{display:inline-flex;justify-content:center;width:14px;flex-shrink:0;color:var(--color-secondary);font-size:13px}.grocery-mobile-overflow .grocery-overflow-divider{height:0;margin:6px 0;border-top:1px solid rgba(26,28,26,.08)}.grocery-checked-section{margin-top:24px;border-top:none}.grocery-checked-header{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 8px;cursor:pointer}.grocery-checked-label{font-size:var(--text-tag);font-weight:500;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}.grocery-checked-chevron{font-size:16px;color:var(--color-text-light);transition:transform .2s;transform:rotate(0)}.grocery-checked-chevron.open{transform:rotate(90deg)}.grocery-checked-items .grocery-item{opacity:.6}.grocery-inline-add{padding:0;margin-bottom:4px}.grocery-inline-add-row{display:grid;grid-template-columns:24px 1fr;column-gap:10px;align-items:center;padding:8px 12px;min-height:44px;background:transparent;border-radius:0;border-bottom:1px solid var(--color-border)}.grocery-add-circle{opacity:.3;pointer-events:none}.grocery-inline-add-input{width:100%;padding:0;border:none;border-radius:0;font-size:var(--text-body);font-family:inherit;color:var(--color-text);background:transparent;outline:none}.grocery-inline-add-input::placeholder{color:var(--color-text-light);font-weight:400}.grocery-inline-add-hint{font-size:var(--text-caption);color:var(--color-text-light);margin:0;padding:4px 12px 4px 46px}.grocery-inline-add-row.staple-add-row{grid-template-columns:1fr}.grocery-inline-add-row.staple-add-row+.grocery-inline-add-hint{padding-left:12px}.grocery-add-row{display:grid;grid-template-columns:24px 1fr auto;column-gap:10px;align-items:center;padding:6px 12px;min-height:44px;background:var(--color-surface);border-radius:10px;margin-bottom:8px}.grocery-add-checkbox{opacity:.3}.grocery-recipe-sheet{max-width:400px}.grocery-sheet-list{padding:0 16px;max-height:50vh;overflow-y:auto}.grocery-sheet-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.06)}.grocery-sheet-item:last-child{border-bottom:none}.grocery-sheet-item-name{font-size:var(--text-body-sm);color:var(--color-text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;margin-right:12px}.grocery-sheet-item-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.grocery-sheet-mult{width:28px;height:28px;border:1px solid rgba(0,0,0,.12);border-radius:6px;background:none;font-size:14px;font-family:inherit;color:var(--color-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s}.grocery-sheet-mult:hover:not(:disabled){background:#0000000a}.grocery-sheet-mult:disabled{opacity:.3;cursor:default}.grocery-sheet-mult-value{font-size:var(--text-tag);color:var(--color-text-muted);min-width:24px;text-align:center}.grocery-sheet-remove{width:28px;height:28px;border:none;border-radius:6px;background:none;font-size:16px;color:var(--color-text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:4px;transition:background .1s,color .1s}.grocery-sheet-remove:hover{background:#0000000a;color:var(--color-text)}.grocery-sheet-manual .grocery-sheet-item-name{color:var(--color-text-muted);font-style:italic}.grocery-sheet-footer{padding:12px 16px;border-top:1px solid rgba(0,0,0,.08)}.grocery-sheet-add-btn{font-size:var(--text-body-sm);font-family:inherit;font-weight:500;color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:4px 0;transition:color .15s}.grocery-sheet-add-btn:hover{color:var(--color-text)}.grocery-sheet-panel .right-panel-body,.grocery-staples-panel .right-panel-body,.grocery-import-panel .right-panel-body{padding:0 24px 24px}.grocery-staples-composer-zone{margin:4px -12px}.grocery-staples-tally-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:4px 0 6px}.grocery-staples-tally{font-family:var(--font-body);font-size:var(--panel-meta-size);font-weight:var(--font-weight-regular);color:var(--color-text-light);letter-spacing:.005em}.grocery-staples-panel .right-panel-header{padding-bottom:24px;border-bottom:none}.grocery-staples-panel .right-panel-body{padding-top:0}.grocery-staples-add{padding:0 0 24px}.grocery-staples-panel .grocery-section{margin-bottom:0}.grocery-staples-panel .grocery-section-title{font-family:var(--font-body);font-size:var(--panel-label-size);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--panel-label-tracking);color:var(--panel-label-ink);margin-top:var(--panel-gap-above-label);margin-bottom:var(--panel-gap-below-label);padding-top:4px;padding-bottom:4px;border-bottom:1px solid var(--color-border-light)}.grocery-staples-panel .grocery-section:first-child .grocery-section-title{margin-top:0}.grocery-staples-panel .staple-row{display:grid;grid-template-columns:18px 1fr auto auto;column-gap:10px;align-items:baseline;padding:8px 12px;margin:0 -12px;min-height:44px;border-bottom:1px solid rgba(0,0,0,.04);border-radius:0;cursor:pointer;transition:background .15s;box-sizing:border-box}.grocery-staples-panel .staple-row-check{align-self:start;margin-top:3px}.grocery-staples-panel .staple-row:hover{background:#00000005}.grocery-staples-panel .staple-row-name{font-family:var(--font-body);font-size:var(--panel-row-size);font-weight:var(--font-weight-regular);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grocery-staples-panel .staple-row.in-list .staple-row-name{color:var(--color-text-muted)}.grocery-staples-panel .staple-row-qty{font-size:var(--panel-meta-size);color:var(--color-text-light);padding:0;white-space:nowrap;flex-shrink:0}.grocery-staples-panel .staple-row-qty-empty{color:var(--color-text-light);opacity:.45}.grocery-staples-panel .grocery-items>.staple-row:last-child{border-bottom:none}.staple-row-delete{font-size:16px;line-height:1;color:var(--color-text-light);background:transparent;border:none;cursor:pointer;padding:4px 6px;border-radius:4px;opacity:0;transition:opacity .15s,color .15s,background .15s}.grocery-staples-panel .staple-row:hover .staple-row-delete,.grocery-staples-panel .staple-row:focus-within .staple-row-delete{opacity:1}.staple-row-delete:hover{color:var(--color-text);background:#1a1c1a0a}.staple-row-check{width:18px;height:18px;border-radius:50%;border:1px solid rgba(0,0,0,.13);background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s,background .15s}.staple-row-check svg{width:11px;height:11px;color:#fffffff2;display:none}.staple-row-check.checked{background:#46563dd1;border-color:#46563dd1}.staple-row-check.checked svg{display:block}.grocery-staples-empty{padding:32px 0;text-align:center}.grocery-staples-empty-title{font-family:var(--font-display);font-size:var(--text-title);color:var(--color-text);margin-bottom:6px}.grocery-staples-empty-subtitle{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);line-height:1.45;max-width:280px;margin:0 auto}.grocery-sheet-recipe{display:flex;align-items:center;min-height:var(--panel-row-h);padding:4px 8px;margin:0 -8px;border-radius:8px;transition:background .12s}.grocery-sheet-recipe:hover{background:#00000006}.grocery-sheet-recipe-thumb{width:32px;height:32px;border-radius:3px;object-fit:cover;flex-shrink:0;margin-right:10px}.grocery-sheet-recipe-thumb-placeholder{width:32px;height:32px;border-radius:3px;background:#1a1c1a0a;flex-shrink:0;margin-right:10px}.grocery-sheet-recipe-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;margin-right:8px}.grocery-sheet-recipe-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grocery-sheet-recipe-changed{font-size:var(--text-label);color:var(--color-text-muted)}.grocery-sheet-recipe-refresh{font-size:var(--text-label);font-weight:500;color:var(--color-primary);background:none;border:none;padding:0;font-family:inherit;cursor:pointer;text-decoration:underline}.grocery-sheet-recipe-refresh:hover{color:var(--color-primary-hover)}.grocery-sheet-stepper{display:flex;align-items:center;gap:0;flex-shrink:0;margin-right:0;background:none;border-radius:0;padding:0}.grocery-sheet-step-down,.grocery-sheet-step-up{width:22px;height:22px;border:none;border-radius:3px;background:none;font-size:13px;font-family:inherit;color:var(--color-text-light);cursor:pointer;display:flex;align-items:center;justify-content:center}.grocery-sheet-step-down:hover:not(:disabled),.grocery-sheet-step-up:hover:not(:disabled){color:var(--color-text)}.grocery-sheet-step-down:disabled,.grocery-sheet-step-up:disabled{opacity:.2;cursor:default}.grocery-sheet-step-value{font-size:var(--text-label);font-weight:500;color:var(--color-text-muted);min-width:32px;white-space:nowrap;text-align:center}.grocery-sheet-recipes-list{margin-bottom:4px}.grocery-sheet-row-action{display:flex;align-items:center;padding:10px 8px;margin:0 -8px;cursor:pointer;transition:background .12s;border-radius:8px}.grocery-sheet-row-action:hover{background:#00000008}.grocery-sheet-row-action-label{font-size:var(--text-body-sm);color:var(--color-text-muted);flex:1}.grocery-sheet-row-action-chevron{font-size:16px;color:var(--color-text-light);flex-shrink:0}.grocery-sheet-quiet-actions{display:flex;gap:22px;padding:4px 0 6px}.grocery-sheet-quiet-action{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--font-weight-medium);color:var(--color-text-muted);background:transparent;border:none;cursor:pointer;padding:6px 0;letter-spacing:.005em;transition:color .15s}.grocery-sheet-quiet-action:hover{color:var(--color-text)}.grocery-sheet-header-titles{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px}.grocery-sheet-frontdoor{display:flex;flex-direction:column}.grocery-sheet-under-input{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.grocery-sheet-enter-hint{margin-left:auto;padding:4px 0 0;font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);white-space:nowrap}.grocery-sheet-enter-hint[hidden],.grocery-sheet-enter-hint-touch{display:none}@media (pointer: coarse){.grocery-sheet-enter-hint-keys{display:none}.grocery-sheet-enter-hint-touch{display:inline}.grocery-sheet-item-input-row .grocery-sheet-item-input{font-size:max(16px,var(--panel-row-size))}}.grocery-sheet-on-list{padding:4px 0 0;min-width:0;font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text-muted);overflow-wrap:anywhere}.grocery-sheet-on-list[hidden]{display:none}.grocery-sheet-paste-list-link{display:block;font-family:var(--font-body);font-size:var(--text-tag);font-weight:var(--font-weight-medium);color:var(--color-text-light);background:transparent;border:none;cursor:pointer;padding:4px 0 0;text-align:left}.grocery-sheet-paste-list-link:hover{color:var(--color-secondary);text-decoration:underline;text-underline-offset:3px}.grocery-import-panel .right-panel-body{padding-top:20px}.grocery-import-divider{height:1px;background:#1a1c1a14;margin:16px 0}.grocery-import-receipt:not([hidden])~.grocery-import-divider{margin:8px 0}#groceryImportTextarea.grocery-import-textarea-collapsed{display:none}#groceryImportTextarea{flex-shrink:0}#groceryImportTextarea:not(.grocery-import-textarea-editing){height:clamp(200px,30vh,320px)}#groceryImportTextarea.grocery-import-textarea-editing{height:clamp(180px,30vh,340px);overflow-y:auto}.grocery-import-receipt{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 0 2px}.grocery-import-receipt[hidden]{display:none}.grocery-import-receipt-label{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-text-light)}.grocery-import-receipt-edit{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-text);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.grocery-import-receipt-edit:hover{color:#000}#groceryImportFileLink{border-bottom:none}.grocery-import-preview-heading{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);padding:14px 0;border-top:1px solid rgba(26,28,26,.08);border-bottom:1px solid rgba(26,28,26,.08);margin-bottom:4px}.grocery-import-cap-note{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);padding-bottom:8px}.grocery-import-row{padding:8px 0;border-bottom:1px solid rgba(26,28,26,.06)}.grocery-import-row-main{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.grocery-import-mark{font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text-light);flex:0 0 auto;max-width:100%;overflow-wrap:anywhere}.grocery-import-row-warning{font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text-light);padding-top:3px;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px}.grocery-import-row-jumped{animation:grocery-import-jump-mark 1.6s ease-out}@keyframes grocery-import-jump-mark{0%,40%{background:#1a1c1a0f}to{background:transparent}}@media (prefers-reduced-motion: reduce){.grocery-import-row-jumped{animation:none}}.grocery-import-check{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text);background:none;border:none;padding:0 0 10px;margin:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px;display:block}.grocery-import-check:hover{text-decoration-thickness:2px}.grocery-import-split{font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text);background:none;border:none;padding:0;margin-left:4px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.grocery-import-split:hover{color:var(--color-text);text-decoration-thickness:2px}.grocery-import-row-name{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text);flex:0 1 auto}.grocery-import-row-meta{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);padding-top:2px}.grocery-import-unclear{margin-top:20px;padding:12px 14px;background:#1a1c1a08;border-radius:8px}.grocery-import-unclear-heading{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);padding-bottom:6px}.grocery-import-unclear-line{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-text);padding:3px 0}.grocery-sheet-browse-links{display:flex;gap:36px;margin:-12px 0}.grocery-sheet-browse-link{display:inline-flex;align-items:center;box-sizing:border-box;min-height:44px;padding:12px 0;background:transparent;border:none;cursor:pointer;font-family:var(--font-body);font-size:var(--panel-row-size);font-weight:var(--font-weight-medium);color:var(--color-text);letter-spacing:normal;text-align:left;text-decoration:none}.grocery-sheet-browse-link:hover{text-decoration:underline;text-underline-offset:4px}.grocery-sheet-label,.grocery-sheet-zone-label,.grocery-sheet-composer-label{font-family:var(--font-body);font-size:var(--panel-label-size);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--panel-label-tracking);color:var(--panel-label-ink)}.grocery-sheet-row-text,.grocery-sheet-recipe-name,.grocery-sheet-sub-item-name,.grocery-sheet-staple-row{font-family:var(--font-body);font-size:var(--panel-row-size);font-weight:var(--font-weight-regular);color:var(--color-text);letter-spacing:normal}.grocery-sheet-staple-row{font-size:var(--text-body-sm);color:var(--color-text-muted)}.grocery-sheet-header-sub{font-family:var(--font-body);font-size:var(--panel-meta-size);font-weight:var(--font-weight-medium, 500);color:var(--color-text-muted)}.grocery-sheet-meta,.grocery-sheet-staple-more,.grocery-sheet-staples-empty-line,.grocery-sheet-sub-item-qty{font-family:var(--font-body);font-size:var(--panel-meta-size);font-weight:var(--font-weight-regular);color:var(--color-text-light);letter-spacing:.005em}.grocery-sheet-staples-composer{padding:0}.grocery-sheet-staples-empty-line{padding:2px 0 6px}.grocery-sheet-staples-list{display:flex;flex-direction:column}.grocery-sheet-staple-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:var(--panel-row-h);padding:4px 0;background:transparent;border:none;cursor:pointer;text-align:left}.grocery-sheet-staple-row-add{flex-shrink:0;font-size:15px;line-height:1;color:var(--color-text-light);transition:color .15s}.grocery-sheet-staple-row:hover .grocery-sheet-staple-row-name{text-decoration:underline;text-underline-offset:3px}.grocery-sheet-staple-row:hover .grocery-sheet-staple-row-add{color:var(--color-text)}.grocery-sheet-staple-more{align-self:flex-start;padding:9px 0;background:transparent;border:none;cursor:pointer;transition:color .15s}.grocery-sheet-staple-more:hover{color:var(--color-text)}.grocery-sheet-composer-zone{background:#1a1c1a0a;border-radius:10px;padding:14px 18px;margin:4px -8px 0}.grocery-sheet-composer-zone .cmp-filter-chip{height:26px;padding:0 9px;border:1px solid rgba(26,28,26,.08);background:transparent;border-radius:3px;font-family:var(--font-body);font-size:var(--text-tag);font-weight:var(--font-weight-regular);letter-spacing:.005em;color:var(--color-text-muted);transition:color .15s,background .15s,border-color .15s}.grocery-sheet-composer-zone .cmp-filter-chip:hover{background:#1a1c1a0a;color:var(--color-text);border-color:#1a1c1a1f}.grocery-sheet-composer-zone .cmp-filter-chip.active{background:#46563d14;color:var(--color-secondary);border-color:#46563d33;font-weight:500}.grocery-sheet-composer-zone .cmp-filter-row{gap:6px}.grocery-sheet-composer-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.grocery-sheet-composer-close{background:transparent;border:none;font-size:14px;color:var(--color-text-light);cursor:pointer;padding:2px 4px;line-height:1;transition:color .15s}.grocery-sheet-composer-close:hover{color:var(--color-text)}.grocery-sheet-composer-switch{display:inline-block;margin-top:6px;padding:4px 0;font-family:var(--font-body);font-size:var(--text-tag);font-weight:var(--font-weight-medium);color:var(--color-text-muted);background:transparent;border:none;cursor:pointer;letter-spacing:.005em;transition:color .15s}.grocery-sheet-composer-switch:hover{color:var(--color-text)}.grocery-sheet-zone-break{height:1px;background:var(--color-border);margin:var(--panel-gap-above-label) 0 0}.grocery-sheet-zone-label{display:block;margin-top:var(--panel-gap-above-label);margin-bottom:12px}.grocery-sheet-item-composer,.grocery-sheet-recipes-composer{padding:0}.grocery-sheet-item-added{min-height:18px;padding:6px 0 0}.grocery-sheet-item-added-flash{display:inline-block;font-family:var(--font-body);font-size:var(--text-label);color:var(--color-secondary);letter-spacing:.005em;animation:groceryAddedFadeIn .18s ease-out}.grocery-sheet-item-added-qty{color:var(--color-text-light);font-weight:var(--font-weight-regular)}@keyframes groceryAddedFadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.grocery-sheet-recipes-results{margin-top:12px;display:flex;flex-direction:column;gap:4px;max-height:280px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(26,28,26,.12) transparent}.grocery-sheet-recipes-results::-webkit-scrollbar{width:6px}.grocery-sheet-recipes-results::-webkit-scrollbar-track{background:transparent}.grocery-sheet-recipes-results::-webkit-scrollbar-thumb{background:#1a1c1a1a;border-radius:3px;transition:background .15s}.grocery-sheet-recipes-results::-webkit-scrollbar-thumb:hover{background:#1a1c1a33}.grocery-sheet-recipes-empty{font-size:var(--text-label);color:var(--color-text-light);padding:14px 0}.grocery-sheet-recipes-result{display:grid;grid-template-columns:32px 1fr auto;align-items:center;column-gap:12px;padding:6px 8px 6px 6px;background:transparent;border:none;border-radius:6px;cursor:pointer;text-align:left;font-family:inherit;transition:background .15s}.grocery-sheet-recipes-result:hover:not(:disabled){background:#1a1c1a0a}.grocery-sheet-recipes-result:disabled{cursor:default;opacity:.6}.grocery-sheet-recipes-result-thumb{width:32px;height:32px;border-radius:4px;object-fit:cover}.grocery-sheet-recipes-result-thumb-placeholder{width:32px;height:32px;border-radius:4px;background:var(--color-accent-soft)}.grocery-sheet-recipes-result-name{font-size:var(--text-tag);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grocery-sheet-recipes-result-add{font-size:16px;line-height:1;color:var(--color-text-muted);width:18px;text-align:center}.grocery-sheet-recipes-result-tag{font-size:var(--text-caption);color:var(--color-text-light);background:var(--color-accent-soft);padding:2px 8px;border-radius:999px}.grocery-sheet-results{display:flex;flex-direction:column;padding-top:4px}.grocery-sheet-results[hidden]{display:none}.grocery-sheet-result-group{display:flex;flex-direction:column;padding-top:10px}.grocery-sheet-result-header{font-family:var(--font-body);font-size:var(--panel-label-size);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--panel-label-tracking);color:var(--panel-label-ink);padding:4px 0 6px}.grocery-sheet-result{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:8px 0;border-bottom:1px solid var(--color-border-light);box-sizing:border-box;text-align:left;font-family:inherit}.grocery-sheet-result-add-btn{flex:none;width:44px;height:44px;margin:-8px -9px -8px 0;padding:0;border:none;border-radius:6px;background:transparent;color:var(--color-text);font-family:var(--font-body);font-size:18px;font-weight:var(--font-weight-regular);line-height:1;cursor:pointer}.grocery-sheet-result-add-btn:hover{color:var(--color-secondary)}.grocery-sheet-result-add-btn:focus-visible,.grocery-sheet-results .grocery-sheet-step-down:focus-visible,.grocery-sheet-results .grocery-sheet-step-up:focus-visible,.grocery-sheet-current-list .grocery-sheet-step-down:focus-visible,.grocery-sheet-current-list .grocery-sheet-step-up:focus-visible{outline:2px solid var(--color-secondary);outline-offset:0}.grocery-sheet-result-stepper{flex:none;margin-right:0}.grocery-sheet-results .grocery-sheet-step-down,.grocery-sheet-results .grocery-sheet-step-up,.grocery-sheet-current-list .grocery-sheet-step-down,.grocery-sheet-current-list .grocery-sheet-step-up{width:28px;height:28px;font-size:16px;color:var(--color-text)}.grocery-sheet-results .grocery-sheet-step-down:hover,.grocery-sheet-results .grocery-sheet-step-up:hover,.grocery-sheet-current-list .grocery-sheet-step-down:hover,.grocery-sheet-current-list .grocery-sheet-step-up:hover{color:var(--color-secondary)}.grocery-sheet-results .grocery-sheet-step-value,.grocery-sheet-current-list .grocery-sheet-step-value{color:var(--color-text)}.grocery-sheet-result-group+.grocery-sheet-result-group{margin-top:16px;padding-top:20px;border-top:1px solid var(--color-border)}.grocery-sheet-result-group .grocery-sheet-result:last-child{border-bottom:none}.grocery-sheet-result-thumb,.grocery-sheet-result-thumb-placeholder{width:56px;height:56px;border-radius:6px;flex:none}.grocery-sheet-result-thumb{object-fit:cover}.grocery-sheet-result-thumb-placeholder{background:var(--color-accent-soft)}.grocery-sheet-thumb-textcover{position:relative;overflow:hidden;border-radius:6px}.grocery-sheet-current-list .grocery-sheet-recipe,.grocery-sheet-current-list .grocery-sheet-sub-item{min-height:52px;margin:0;padding:8px 0;border-radius:0}.grocery-sheet-current-list .grocery-sheet-recipe:hover,.grocery-sheet-current-list .grocery-sheet-sub-item:hover{background:transparent}.grocery-sheet-current-list .grocery-sheet-recipe-thumb,.grocery-sheet-current-list .grocery-sheet-recipe-thumb-placeholder,.grocery-sheet-current-list .grocery-sheet-recipe-info,.grocery-sheet-current-list .grocery-sheet-sub-item-qty,.grocery-sheet-current-list .grocery-sheet-sub-item-remove{margin:0}.grocery-sheet-current-list[hidden],.grocery-sheet-browse-zone[hidden],.grocery-sheet-paste-list-link[hidden]{display:none}.grocery-sheet-result-info{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.grocery-sheet-result-name{font-size:var(--panel-row-size);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grocery-sheet-result-meta{font-size:var(--text-caption);color:var(--color-text-light)}.grocery-sheet-item-input{width:100%;min-height:var(--panel-row-h);padding:10px 0;border:none;border-bottom:1px solid var(--color-border);border-radius:0;font-size:var(--panel-row-size);font-family:var(--font-body);background:transparent;box-sizing:border-box}.grocery-sheet-item-input:focus{outline:none;border-bottom-color:var(--color-text)}.grocery-sheet-item-input::placeholder{color:var(--color-text-light)}.grocery-sheet-front-input-row{position:relative}.grocery-sheet-front-input-row .grocery-sheet-item-input{padding-right:36px}.grocery-sheet-input-clear{position:absolute;right:0;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;background:transparent;color:var(--color-text-light);font-size:14px;line-height:1;cursor:pointer}.grocery-sheet-input-clear:hover{color:var(--color-text)}.grocery-sheet-input-clear[hidden]{display:none}.grocery-sheet-item-hint{font-size:var(--text-label);color:var(--color-text-light);margin-top:6px}.grocery-sheet-manual-row{margin-top:8px}.grocery-sheet-sub-item{display:flex;align-items:center;justify-content:space-between;min-height:var(--panel-row-h);padding:4px 8px;margin:0 -8px;border-radius:8px;font-size:var(--panel-row-size);color:var(--color-text);transition:background .12s}.grocery-sheet-sub-item:hover{background:#00000006}.grocery-sheet-sub-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grocery-sheet-sub-item-qty{white-space:nowrap;margin-left:12px;flex-shrink:0}.grocery-sheet-sub-item-qty-tap{cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .12s}.grocery-sheet-sub-item-qty-tap:hover{background:#0000000a}.grocery-sheet-sub-item-qty-tap .grocery-qty-caret{opacity:.5}.grocery-sheet-sub-item-qty-tap:hover .grocery-qty-caret{opacity:1}.grocery-sheet-sub-item-remove{width:24px;height:24px;border:none;border-radius:4px;background:none;font-size:14px;color:var(--color-text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:4px;flex-shrink:0;opacity:.4;transition:opacity .15s}.grocery-sheet-sub-item:hover .grocery-sheet-sub-item-remove{opacity:.55}.grocery-sheet-sub-item-remove:hover{opacity:.85}.grocery-sheet-manual-item{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.05)}.grocery-sheet-manual-item:last-child{border-bottom:none}.grocery-sheet-manual-item-name{font-size:var(--text-body-sm);color:var(--color-text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grocery-sheet-manual-item-qty-input{width:60px;font-size:var(--text-tag);font-family:inherit;color:var(--color-text-muted);text-align:right;background:none;border:none;border-bottom:1px solid transparent;padding:2px 0;margin-left:12px;flex-shrink:0;outline:none;transition:border-color .15s,color .15s}.grocery-sheet-manual-item-qty-input::placeholder{color:var(--color-text-light);opacity:.5}.grocery-sheet-manual-item-qty-input:hover{border-bottom-color:#00000026}.grocery-sheet-manual-item-qty-input:focus{color:var(--color-text);border-bottom-color:var(--color-text-muted)}.grocery-sheet-manual-item-delete{width:24px;height:24px;border:none;border-radius:4px;background:none;font-size:14px;color:var(--color-text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:6px;opacity:.35;transition:opacity .12s}.grocery-sheet-manual-item-delete:hover{opacity:.7}.grocery-sheet-empty{padding:24px 0;font-size:var(--text-body-sm);color:var(--color-text-light);text-align:center}.grocery-manual-add-section{padding:4px 24px 16px;border-bottom:1px solid rgba(0,0,0,.06);margin-bottom:8px}.grocery-manual-items-list{padding:0 24px}.grocery-rename-editing{border:none;border-bottom:1px solid var(--color-text-light);outline:none;padding:0 0 1px;font:inherit;font-size:inherit;color:inherit;background:none;min-width:40px}.grocery-add-recipes-search{padding:0 0 12px}.grocery-add-recipes-search input{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--text-body);font-family:inherit;outline:none;transition:border-color .15s}.grocery-add-recipes-search input:focus{border-color:var(--color-secondary)}.grocery-add-recipes-list{flex:1;overflow-y:auto}.grocery-add-recipe-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.06);cursor:pointer;transition:background .1s}.grocery-add-recipe-item:hover{background:#00000005}.grocery-add-recipe-item.selected{background:#e8f5e34d}.grocery-add-recipe-check{width:22px;height:22px;border:2px solid rgba(0,0,0,.2);border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s}.grocery-add-recipe-check.checked{background:#3d5a36;border-color:#3d5a36;color:#fff}.grocery-add-recipe-check svg{width:14px;height:14px;opacity:0}.grocery-add-recipe-check.checked svg{opacity:1}.grocery-add-recipe-thumb{width:40px;height:40px;border-radius:6px;object-fit:cover;flex-shrink:0}.grocery-add-recipe-thumb-placeholder{width:40px;height:40px;border-radius:6px;background:#0000000f;flex-shrink:0}.grocery-add-recipe-info{min-width:0;flex:1}.grocery-add-recipe-title{font-size:var(--text-body-sm);font-weight:500;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grocery-add-recipe-category{font-size:var(--text-label);color:var(--color-text-muted)}.grocery-add-recipes-footer{padding:12px 0 0;border-top:1px solid rgba(0,0,0,.08);display:flex;align-items:center;justify-content:space-between;margin-top:auto;flex-shrink:0}.grocery-add-recipes-count{font-size:var(--text-tag);color:var(--color-text-muted)}.grocery-add-recipes-btn{background:var(--color-primary);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:var(--text-body-sm);font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s}.grocery-add-recipes-btn:hover:not(:disabled){background:var(--color-primary-hover)}.grocery-add-recipes-btn:disabled{opacity:.5;cursor:default}.grocery-source-chip .remove-source{width:18px;height:18px;border:none;background:#00000014;border-radius:50%;font-size:13px;line-height:1;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.grocery-source-chip .remove-source:hover{background:#00000026}.grocery-section{margin-bottom:16px}.grocery-section-title{font-size:var(--text-micro);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-light);margin-top:14px;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid rgba(0,0,0,.06)}.grocery-section:first-child .grocery-section-title{margin-top:0}.grocery-items{background:transparent;border-radius:0;overflow:visible}.grocery-item{display:grid;grid-template-columns:24px 1fr 120px;column-gap:10px;align-items:baseline;padding:8px 0 8px 12px;min-height:44px;border-bottom:1px solid rgba(0,0,0,.04);transition:background .15s;cursor:pointer;box-sizing:border-box}.grocery-item .grocery-checkbox{align-self:start;margin-top:3px}.grocery-item:hover,.grocery-item.expanded{background:#00000005}.grocery-item:last-child{border-bottom:none}.grocery-checkbox{width:18px;height:18px;border-radius:50%;border:1.5px solid #d9d5cf;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.grocery-checkbox.checked{background:var(--color-secondary);border-color:var(--color-secondary)}.grocery-checkbox.checked svg{display:block}.grocery-checkbox svg{width:12px;height:12px;color:#fff;display:none}.grocery-item-name{font-size:var(--text-body);font-weight:500;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.grocery-item.checked .grocery-item-name{text-decoration:line-through;color:var(--color-text-light);font-weight:400}.grocery-item.expanded .grocery-item-name{white-space:normal;overflow-wrap:anywhere}.grocery-item.checking-out{transition:opacity .25s ease-out;opacity:.4}.grocery-item.checking-out .grocery-item-name{text-decoration:line-through;color:var(--color-text-light);font-weight:400;transition:color .2s ease-out}.grocery-item.checking-out .grocery-item-qty{opacity:.4;transition:opacity .2s ease-out}.grocery-item-qty{font-size:var(--text-body-sm);font-weight:500;color:var(--color-text);white-space:nowrap;cursor:pointer;text-align:right;justify-self:end}.grocery-qty-caret{font-size:10px;color:var(--color-text-light);margin-left:2px;opacity:0;transition:opacity .15s}.grocery-item.expanded .grocery-qty-caret{opacity:1}.grocery-item.expanded .grocery-qty-caret{display:inline-block;transform:rotate(180deg);width:10px;text-align:center}.grocery-item.checked .grocery-item-qty{opacity:.4}.grocery-item.checked .grocery-item-qty:hover{opacity:1}.grocery-item.checked .grocery-item-qty.qe-active{opacity:1;color:var(--color-text);text-decoration:none}.grocery-qty-ghost{font-style:italic;font-weight:400;color:var(--color-text-light);opacity:0;transition:opacity .15s,color .15s}.grocery-item:hover .grocery-qty-ghost{opacity:1}.grocery-item-qty-empty:hover .grocery-qty-ghost{color:var(--color-text)}.grocery-item.checked .grocery-item-qty-empty{text-decoration:none}@media (hover: none){.grocery-qty-ghost{opacity:.55}}.qe-num:empty:before{content:"qty";color:var(--color-text-light);font-style:italic;font-weight:400}.grocery-optional-tag{font-size:var(--text-label);font-weight:400;font-style:italic;color:var(--color-text-light);margin-left:4px}.grocery-item-qty-cell{display:inline-flex;align-items:baseline;justify-self:end;gap:3px;white-space:nowrap}.grocery-qty-note-marker{display:inline-block;width:8px;text-align:center;color:var(--color-text-light);font-weight:600;cursor:help;-webkit-user-select:none;user-select:none}.grocery-drawer-recipe-note .grocery-drawer-note-text{font-style:italic}.staple-row-qty.qe-active,.grocery-sheet-sub-item-qty-tap.qe-active{display:inline-flex;align-items:center;gap:0}.qe-minus,.qe-plus{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;font-size:15px;line-height:1;color:var(--color-text);opacity:.5;cursor:pointer;transition:opacity .1s,background .1s;user-select:none;-webkit-user-select:none}.qe-part{display:inline-flex;align-items:center;white-space:nowrap;vertical-align:middle}.qe-part+.qe-part{margin-left:14px}.qe-part .qe-num{padding:0 2px}.qe-part-static{font-size:var(--text-body-sm);color:var(--color-text-light)}.qe-minus:hover,.qe-plus:hover{opacity:1;background:#0000000d}.qe-minus:active,.qe-plus:active{background:#00000014}.qe-num{display:inline-block;min-width:16px;text-align:center;font-size:var(--text-body-sm);font-weight:500;color:var(--color-text);padding:0 1px;cursor:text}.qe-num-input{width:68px;text-align:center;font-size:var(--text-body-sm);font-weight:500;font-family:inherit;color:var(--color-text);border:none;border-bottom:1px solid var(--color-text-light);outline:none;background:none;padding:0}.qe-unit{font-size:var(--text-body-sm);font-weight:500;color:var(--color-text);margin-left:4px;white-space:nowrap}.qe-unit-clickable{cursor:pointer;text-decoration:underline;text-decoration-color:var(--color-text-muted);text-underline-offset:2px;transition:color .15s}.qe-unit-clickable:hover{color:var(--color-ink);text-decoration-color:currentColor}.qe-unit-placeholder{color:var(--color-text-light);font-style:italic;font-weight:400}.qe-unit-clickable.qe-unit-expanded{font-weight:500}.qe-unit-clickable.qe-unit-expanded:hover{color:inherit;text-decoration-color:var(--color-text-muted)}.qe-unit-alts{display:flex;flex-direction:column;align-items:flex-end;z-index:9500;padding:6px 12px 8px;background:#fff;border:1px solid var(--color-border-light);border-radius:8px;box-shadow:0 4px 12px #00000014}.qe-restore-float{position:fixed;z-index:9500;padding:6px 10px;background:#fff;border:1px solid var(--color-border-light);border-radius:8px;box-shadow:0 4px 12px #00000014;font-family:var(--font-body);font-size:var(--text-tag);color:#46563d;white-space:nowrap;cursor:pointer}.qe-restore-float:hover{background:var(--color-bg-cream, #faf8f3)}.qe-unit-alt{font-size:var(--text-body-sm);font-weight:400;color:var(--color-text-light);cursor:pointer;line-height:1.7;transition:color .1s}.qe-unit-alt:hover{color:var(--color-text)}.qe-unit-alt.qe-unit-custom{font-style:italic;font-size:var(--text-tag)}.qe-unit-custom-input{font-size:var(--text-tag);font-family:inherit;color:var(--color-text);border:none;border-bottom:1px solid var(--color-text-light);outline:none;background:none;padding:0;width:64px;line-height:1.7}.staple-edit-popover{background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001f;width:220px;z-index:1000;overflow:hidden}.sep-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px}.sep-label{font-size:var(--text-tag);color:var(--color-text-light);flex-shrink:0}.sep-divider{height:1px;background:#0000000f}.sep-divider-thick{height:1px;background:#0000001a}.sep-stepper{display:flex;align-items:center;gap:0}.sep-stepper-btn{width:28px;height:28px;border-radius:7px;border:1px solid rgba(0,0,0,.1);background:#fafaf8;font-size:15px;line-height:1;color:var(--color-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s}.sep-stepper-btn:hover{background:#f0efed}.sep-stepper-btn:active{background:#e8e7e4}.sep-stepper-value{min-width:40px;text-align:center;font-size:var(--text-body-sm);font-weight:500;color:var(--color-text);cursor:pointer;padding:2px 6px;border-radius:6px;transition:background .1s}.sep-stepper-value:hover{background:#0000000a}.sep-stepper-value:empty:before{content:"qty";color:var(--color-text-light);font-style:italic;font-weight:400}.sep-stepper-editing{border:none;border-bottom:1px solid var(--color-text-light);outline:none;background:none;font:inherit}.sep-category-row{cursor:pointer}.sep-category-trigger{background:none;border:none;font-size:var(--text-body-sm);font-weight:500;color:var(--color-text);cursor:pointer;padding:2px 0;display:flex;align-items:center;gap:3px}.sep-category-trigger:hover{color:var(--color-text)}.sep-chevron{font-size:15px;color:var(--color-text-light)}.sep-cat-header{padding:8px 12px 4px}.sep-back{background:none;border:none;font-size:var(--text-body);color:var(--color-text-light);cursor:pointer;padding:2px 0}.sep-back:hover{color:var(--color-text)}.sep-cat-list{display:flex;flex-direction:column}.sep-cat-option{background:none;border:none;text-align:left;padding:10px 12px;font-size:var(--text-body-sm);color:var(--color-text);cursor:pointer;transition:background .1s}.sep-cat-option:hover{background:#f5f4f2}.sep-cat-option.selected{color:var(--color-text);font-weight:600}.sep-remove{display:block;width:100%;text-align:left;background:none;border:none;padding:10px 12px;font-size:var(--text-tag);color:var(--color-text-muted);opacity:.7;cursor:pointer;transition:opacity .1s}.sep-remove:hover{opacity:1}.grocery-item-text{font-size:var(--text-body);color:var(--color-text)}.grocery-item.checked .grocery-item-text{text-decoration:line-through;color:var(--color-text-light)}.grocery-item-source{font-size:var(--text-label);color:var(--color-text-light)}.grocery-item-notes-btn{font-size:var(--text-micro);color:var(--color-text-light);background:#0000000a;border:none;border-radius:4px;padding:1px 5px;margin-left:6px;cursor:pointer;font-family:inherit;transition:all .15s;vertical-align:middle}.grocery-item-notes-btn:hover{background:#00000012;color:var(--color-text-light)}.grocery-item-notes-btn.expanded{background:#0000000f}.grocery-item-details-full{font-size:var(--text-label);color:var(--color-text-light);margin-top:6px;padding:0;background:none;line-height:1.4}.grocery-expand-recipes{list-style:none;margin:0;padding:0}.grocery-expand-recipes li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:2px 0;font-size:var(--text-label)}.grocery-expand-recipe-name{color:var(--color-text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grocery-expand-recipe-qty{color:var(--color-text-light);white-space:nowrap;flex-shrink:0}.grocery-expand-detail-text{font-size:var(--text-label);color:var(--color-text-light);margin-top:2px}.grocery-item-drawer{grid-column:2 / -1;padding:2px 0 4px;font-size:var(--text-tag)}.grocery-item-recipe-amount{grid-column:2 / -1;margin-top:1px;font-size:var(--text-tag);color:var(--color-text-light, #736E68)}.grocery-item.checked .grocery-item-recipe-amount{text-decoration:line-through;color:#b8b2a8}.staple-row .grocery-item-drawer{grid-column:1 / -1;padding:12px 0 4px}.staple-row.expanded{background:#00000005}.grocery-drawer-heading{font-size:var(--text-caption);font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light);margin-bottom:4px}.grocery-item-drawer{--grocery-caret-slot: 12px}.grocery-item:has(.grocery-qty-note-marker) .grocery-item-drawer{--grocery-caret-slot: 23px}.grocery-drawer-entry{padding:8px 0;margin-right:var(--grocery-caret-slot, 12px);border-bottom:1px solid rgba(0,0,0,.08)}.grocery-item-drawer>.grocery-drawer-entry:first-child{padding-top:0}.grocery-drawer-row{display:flex;align-items:baseline;gap:16px;font-size:var(--text-tag);line-height:1.35;color:var(--color-text)}.grocery-drawer-recipe-name{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.grocery-drawer-provenance,.grocery-drawer-contrib-note{font-size:var(--text-caption);line-height:1.35;color:var(--color-text-light);padding:2px 0 0;font-style:italic}.grocery-drawer-item-alts{font-size:var(--text-caption);line-height:1.35;color:var(--color-text-light);font-style:italic;padding:2px 0 4px}.grocery-linked-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#00000047;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .15s ease-out}.grocery-linked-overlay.open{opacity:1}html.grocery-linked-open{overflow:hidden}.grocery-linked-dialog{background:var(--color-surface);border-radius:14px;width:100%;max-width:500px;max-height:85vh;overflow-y:auto;padding:26px 26px 22px;box-shadow:0 12px 40px #0000002e}.grocery-linked-dialog .pv2-linked-resolver{position:relative;border:none;box-shadow:none;background:none;padding:0;margin:0;max-width:none}.grocery-linked-dialog .pv2-linked-subtitle{margin-bottom:10px}.grocery-linked-dialog .pv2-linked-actions{gap:28px;margin-top:20px}.grocery-linked-dialog .pv2-linked-generate{padding:15px 26px;font-size:var(--text-tag)}.gro-linked-close{position:absolute;top:-6px;right:-6px;background:none;border:none;font-size:22px;line-height:1;padding:6px;cursor:pointer;color:var(--color-text-muted)}.gro-linked-close:hover{color:var(--color-ink)}.grocery-linked-dialog .gro-linked-head,.grocery-linked-dialog .gro-linked-row{display:grid;grid-template-columns:68px 1fr 44px 44px 44px;align-items:center;column-gap:10px}.grocery-linked-dialog .gro-linked-row{min-height:76px;padding:12px 0;border-top:1px solid var(--color-border-light)}.grocery-linked-dialog .gro-linked-head{padding:6px 0}.grocery-linked-dialog .pv2-linked-col-label{text-align:center}.gro-linked-thumb{width:60px;height:60px;border-radius:8px;object-fit:cover;background:var(--color-border-light)}.gro-linked-thumb--textcover{display:block;overflow:hidden;position:relative;container-type:inline-size}.grocery-linked-dialog .gro-linked-name{display:flex;flex-direction:column;gap:6px;min-width:0;padding-right:14px}.grocery-linked-dialog .gro-linked-title{font-family:var(--font-display);font-size:var(--text-reading);line-height:1.25}.gro-linked-meta{display:flex;align-items:center;gap:6px;font-size:var(--text-tag);color:var(--color-text-muted);min-width:0}.gro-linked-meta-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gro-linked-meta svg{width:14px;height:14px;flex-shrink:0}.grocery-linked-dialog .pv2-linked-cell{display:flex;justify-content:center}.grocery-linked-dialog .pv2-linked-cell input[type=radio]{width:20px;height:20px;accent-color:var(--color-ink);cursor:pointer}@media (max-width: 600px){.grocery-linked-dialog{padding:18px 16px 16px}.grocery-linked-dialog .gro-linked-head,.grocery-linked-dialog .gro-linked-row{grid-template-columns:48px 1fr 36px 36px 36px;column-gap:8px}.gro-linked-thumb{width:48px;height:48px}.grocery-linked-dialog .gro-linked-title{font-size:var(--text-reading-sm)}}@media (max-width: 600px){.grocery-linked-overlay{align-items:flex-end;padding:0}.grocery-linked-dialog{max-width:100%;border-radius:16px 16px 0 0}}.grocery-drawer-remove-staple{background:none;border:none;font-size:9px;line-height:1;color:var(--color-text-light);cursor:pointer;padding:0 1px;margin-left:2px;opacity:0;transition:opacity .15s;vertical-align:top;position:relative;top:-1px}.grocery-drawer-row:hover .grocery-drawer-remove-staple{opacity:.5}.grocery-drawer-remove-staple:hover{opacity:1}.grocery-drawer-recipe-link{color:inherit;text-decoration:underline;text-decoration-color:var(--color-text-muted);text-underline-offset:2px}.grocery-drawer-recipe-link:hover,.grocery-drawer-recipe-link:active{color:var(--color-ink);text-decoration-color:currentColor}.grocery-drawer-recipe-link:active{text-decoration-thickness:2px}.grocery-drawer-tour-source{margin-left:8px;padding:0;border:0;background:none;font:inherit;font-size:.85em;color:var(--color-text-muted);cursor:pointer}.grocery-drawer-tour-source:hover,.grocery-drawer-tour-source:active{color:var(--color-ink)}.grocery-drawer-recipe-qty{flex:0 0 auto;margin-left:auto;text-align:right;white-space:nowrap}.grocery-drawer-note-block{padding:6px 0 2px;display:flex;align-items:baseline;gap:8px}.grocery-drawer-note-label{font-size:var(--text-micro);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-light);flex-shrink:0}.grocery-drawer-note-text{font-size:var(--text-tag);color:var(--color-text-muted);display:inline;outline:none;border-bottom:1px solid transparent;transition:border-color .15s;cursor:default;line-height:1.4}.grocery-drawer-note-text.grocery-note-editing{border-bottom:1px solid rgba(0,0,0,.15);cursor:text;min-width:80px}.grocery-drawer-note-text[data-placeholder]:empty:before{content:attr(data-placeholder);color:var(--color-text-light);font-style:italic;pointer-events:none}.grocery-drawer-manual{font-size:var(--text-label);color:var(--color-text-light);padding:2px 0}.grocery-drawer-actions{display:flex;align-items:center;gap:6px;padding-top:6px;margin-top:4px}.grocery-drawer-action-sep{color:var(--color-text-light);font-size:var(--text-label)}.grocery-drawer-actions button{font-size:var(--text-label);font-family:inherit;color:var(--color-text-muted);background:none;border:none;padding:2px 0;cursor:pointer;transition:color .15s}.grocery-drawer-actions button:hover,.grocery-drawer-actions button.grocery-drawer-remove:hover{color:var(--color-text)}.grocery-item[data-staple]{position:relative}.grocery-hidden-section{margin-top:16px}.grocery-hidden-toggle{display:flex;align-items:center;gap:4px;font-size:var(--text-label);font-family:inherit;color:var(--color-text-light);background:none;border:none;cursor:pointer;padding:4px 0;transition:color .15s}.grocery-hidden-toggle:hover{color:var(--color-text-muted)}.grocery-hidden-chevron{transition:transform .15s}.grocery-hidden-section.open .grocery-hidden-chevron{transform:rotate(180deg)}.grocery-hidden-list{display:none;padding:4px 0}.grocery-hidden-section.open .grocery-hidden-list{display:block}.grocery-hidden-item{display:flex;align-items:center;justify-content:space-between;padding:6px 16px;font-size:var(--text-tag);color:var(--color-text-light)}.grocery-hidden-name{text-decoration:line-through}.grocery-unhide-btn{font-size:var(--text-label);font-family:inherit;color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:2px 6px;transition:color .15s}.grocery-unhide-btn:hover{color:var(--color-text)}.grocery-item.just-added{animation:highlight-fade 1.5s ease-out}.grocery-footer{display:flex;justify-content:flex-start;padding:16px;margin-top:8px}.staple-row{display:grid;grid-template-columns:1fr auto auto auto;column-gap:8px;align-items:center;padding:10px 12px;min-height:44px;border-bottom:1px solid rgba(0,0,0,.04);box-sizing:border-box}.staple-row:last-child{border-bottom:none}.staple-row-name-wrap{display:flex;flex-direction:column;min-width:0;gap:2px}.staple-row-name{font-size:var(--text-body);color:var(--color-text, #2c2c2c);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staple-row-note{font-size:var(--text-label);color:var(--color-text-light);font-style:italic;line-height:1.3;outline:none;border-bottom:1px solid transparent;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staple-row-note.staple-note-editing{border-bottom-color:var(--color-border);white-space:normal;overflow:visible}.staple-row-note[data-placeholder]:empty:before{content:attr(data-placeholder);color:var(--color-text-light);opacity:.6}.staple-row-qty{font-size:var(--text-tag);color:var(--color-text-light);white-space:nowrap;cursor:pointer;padding:2px 4px;border-radius:4px;transition:background .15s}.staple-row-qty:hover{background:#0000000a}.staple-set-qty{font-style:italic;color:var(--color-text-light);opacity:.7}.staple-pill{display:inline-block;font-size:var(--text-label);font-family:inherit;font-weight:500;color:#555;background:#0000000f;border:none;border-radius:10px;padding:3px 10px;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background .2s,color .2s}.staple-pill:hover{background:#0000001a}.staple-pill.in-list{color:var(--color-success);background:#46563d14}.staple-overflow-btn{background:none;border:none;font-size:16px;color:var(--color-text-light);cursor:pointer;padding:2px 4px;line-height:1;border-radius:4px;transition:background .15s,color .15s}.staple-overflow-btn:hover{background:#0000000f;color:var(--color-text, #2c2c2c)}.staple-overflow-menu{background:var(--color-surface, #fff);border-radius:8px;box-shadow:0 2px 12px #00000026;z-index:1000;min-width:140px;padding:4px 0;overflow:hidden}.staple-overflow-option{display:block;width:100%;text-align:left;font-size:var(--text-body-sm);font-family:inherit;color:var(--color-text, #2c2c2c);background:none;border:none;padding:8px 16px;cursor:pointer;transition:background .1s}.staple-overflow-option:hover{background:#0000000a}.staple-overflow-option.staple-overflow-danger{color:var(--color-text)}.staple-overflow-option.staple-overflow-danger:hover{background:#0000000a}.staple-overflow-option.staple-overflow-selected{font-weight:600;color:var(--color-primary, #c97b3d)}.staple-row.in-list{background:transparent}.grocery-item.in-list .grocery-checkbox{background:var(--color-success);border-color:var(--color-success)}.grocery-item.in-list .grocery-checkbox svg{opacity:1}.grocery-item.in-list{background:#46563d0a}.staple-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.staple-modal-content{background:#fff;border-radius:16px;width:100%;max-width:360px;overflow:hidden}.staple-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border-light)}.staple-modal-header h3{font-size:var(--text-title);font-weight:600;color:var(--color-text);margin:0}.staple-modal-close{width:32px;height:32px;border:none;background:transparent;font-size:24px;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s}.staple-modal-close:hover{background:#f2efeb}.staple-modal-body{padding:20px}.staple-form-group{margin-bottom:16px}.staple-form-group:last-child{margin-bottom:0}.staple-form-group label{display:block;font-size:var(--text-label);font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.staple-form-row{display:flex;gap:12px}.staple-form-qty{flex:1}.staple-form-unit{flex:2}.staple-select{width:100%;padding:10px 12px;font-size:var(--text-body);font-family:inherit;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);outline:none;transition:border-color .15s}.staple-select:focus{border-color:var(--color-primary)}.staple-input::placeholder{color:var(--color-text-light)}.staple-modal-footer{display:flex;gap:12px;padding:16px 20px;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));background:#faf9f7}.staple-cancel-btn{flex:1;padding:10px 16px;font-size:var(--text-body-sm);font-weight:500;font-family:inherit;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text-muted);cursor:pointer;transition:all .15s}.staple-cancel-btn:hover{background:var(--color-surface-alt);color:var(--color-text)}.staple-save-btn{flex:1;padding:10px 16px;font-size:var(--text-body-sm);font-weight:500;font-family:inherit;border:none;border-radius:8px;background:var(--color-primary);color:#fff;cursor:pointer;transition:background .15s}.staple-save-btn:hover{background:var(--color-primary-hover)}.tile-chip{position:absolute;bottom:50%;left:50%;transform:translate(-50%,50%);display:flex;align-items:center;gap:5px;padding:6px 12px;background:#ffffffeb;border:1px solid var(--color-border-light);border-radius:11px;font-size:12px;font-weight:500;font-family:var(--font-body);color:var(--color-text);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .25s ease;z-index:10;box-shadow:0 2px 8px #0000000f}.tile-chip.show{opacity:1}.tile-chip svg{color:var(--color-primary);flex-shrink:0}.recipe-grocery-toggle{display:none}.duplicate-recipe-popover{z-index:210;background:var(--color-surface, #fff);border:1px solid var(--color-border-light, #E5E0D8);border-radius:10px;box-shadow:0 4px 16px #0000001a;padding:10px 14px;display:flex;align-items:center;gap:12px;white-space:nowrap;animation:popoverFadeIn .15s ease-out}.duplicate-recipe-msg{font-size:13px;color:var(--color-text-muted, #5F5A54)}.duplicate-recipe-action{font-size:13px;font-weight:600;font-family:inherit;color:var(--color-primary, #AD5B39);background:none;border:none;cursor:pointer;padding:0;white-space:nowrap}.duplicate-recipe-action-quiet{font-weight:500;color:var(--color-text-muted, #5F5A54)}.duplicate-recipe-action:hover{opacity:.75}.grocery-add-input{width:100%;padding:11px 14px;border:none;border-radius:8px;font-size:var(--text-body);font-family:inherit;background:#00000008;box-sizing:border-box}.grocery-add-input:focus{outline:none;background:#0000000d}.grocery-recipe-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1000;align-items:center;justify-content:center;padding:20px}.grocery-recipe-modal-content{background:#fff;border-radius:16px;width:100%;max-width:400px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.grocery-recipe-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 20px 16px}.grocery-recipe-modal-header h2{font-size:var(--text-title-xl);font-weight:600;margin:0}.grocery-recipe-modal-close{background:none;border:none;font-size:24px;color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1}.grocery-recipe-modal-close:hover{color:var(--color-text)}.grocery-recipe-modal-search{padding:0 20px 16px}.grocery-recipe-modal-search input{width:100%;padding:12px 16px;border:1px solid var(--color-border);border-radius:10px;font-size:var(--text-body);font-family:inherit;outline:none}.grocery-recipe-modal-search input:focus{border-color:var(--color-primary)}.grocery-recipe-modal-list{flex:1;overflow-y:auto;padding:0 12px}.grocery-recipe-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;cursor:pointer;transition:background .15s}.grocery-recipe-item:hover{background:var(--color-surface)}.grocery-recipe-item.selected{background:#8b735514}.grocery-recipe-checkbox{width:24px;height:24px;border:2px solid var(--color-border);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.grocery-recipe-checkbox.checked{background:var(--color-secondary);border-color:var(--color-secondary)}.grocery-recipe-checkbox svg{width:14px;height:14px;color:#fff;display:none}.grocery-recipe-checkbox.checked svg{display:block}.grocery-recipe-thumb{width:56px;height:56px;border-radius:8px;object-fit:cover;flex-shrink:0}.grocery-recipe-thumb-placeholder{width:56px;height:56px;border-radius:8px;background:var(--color-surface);flex-shrink:0}.grocery-recipe-info{flex:1;min-width:0}.grocery-recipe-title{font-size:var(--text-body);font-weight:500;color:var(--color-text);margin-bottom:2px}.grocery-recipe-category{font-size:var(--text-tag);color:var(--color-text-muted)}.grocery-recipe-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface))}.grocery-recipe-count{font-size:var(--text-body-sm);color:var(--color-text-muted)}.grocery-recipe-add-btn{padding:10px 20px;background:var(--color-secondary);color:#fff;border:none;border-radius:8px;font-size:var(--text-body-sm);font-weight:500;font-family:inherit;cursor:pointer;transition:opacity .15s}.grocery-recipe-add-btn:hover{opacity:.9}.grocery-recipe-add-btn:disabled{opacity:.5;cursor:not-allowed}.grocery-actions{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border)}.past-trips-placeholder{padding:40px 20px;text-align:center;color:var(--color-text-muted)}.app-footer{position:fixed;bottom:0;left:0;right:0;padding:12px 64px;border-top:1px solid rgba(26,28,26,.05);background:var(--color-bg);z-index:50}.app-footer-inner{max-width:1600px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:32px}.app-footer-left{display:flex;align-items:center;gap:24px}.app-footer-logo{font-family:var(--font-display);font-size:16px;font-weight:400;opacity:.8;color:var(--color-text);cursor:pointer}.app-footer-logo:hover{opacity:1}.app-footer-copy{font-family:var(--font-body);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:#1a1c1a4d}.app-footer-links{display:flex;gap:56px}.app-footer-links a{font-family:var(--font-body);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3em;color:#1a1c1a66;text-decoration:none;transition:color .2s}.app-footer-links a:hover{color:var(--color-text)}@media (max-width: 767px){.app-footer{display:none}}.main-content{flex:1;padding-bottom:80px}@media (min-width: 900px){.main-content{padding-bottom:60px}}main{max-width:100%;margin:0 auto;padding:0}.category-filter-bar-wrap{display:flex;align-items:stretch;gap:8px;padding:32px 40px 12px;margin-bottom:12px;border-bottom:1px solid rgba(26,28,26,.04);background:#faf9f6;position:sticky;top:calc(var(--header-height, 96px) + var(--context-banner-height, 0px) - var(--phone-bars-lift, 0px));z-index:98;box-shadow:0 -20px #faf9f6}.category-filter-bar-scroll{flex:1;min-width:0;display:flex;align-items:center}.category-filter-bar{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 56px;width:100%}.category-filter{padding:0 0 12px;border:none;background:transparent;font-family:var(--font-body);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#1a1c1a80;cursor:pointer;position:relative;transition:color .2s;white-space:nowrap;margin-bottom:-1px}.category-filter:hover{color:var(--color-text)}.category-filter.active{color:var(--color-text);border-bottom:2px solid var(--color-primary)}.category-filter-chevron{font-size:10px;vertical-align:1px;transition:transform .2s}.category-filter-overflow{color:#1a1c1a66;font-weight:600}.category-bar-count{font-family:var(--font-body);font-size:12px;color:#1a1c1a73;white-space:nowrap;margin-right:12px}.category-filter-bar-utility{flex-shrink:0;display:flex;align-items:center;margin-bottom:-1px;padding-bottom:4px}@media (min-width: 900px){.category-filter-bar-wrap{display:grid;grid-template-columns:1fr auto 1fr}.category-filter-bar-scroll{grid-column:2}.category-filter-bar-utility{grid-column:3;justify-self:end}}@media not all and (min-width: 900px){.category-filter-bar-wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:4px;padding:20px 16px 12px}.category-filter-bar-scroll{grid-column:2}.category-filter-bar{gap:0 40px;flex-wrap:nowrap;justify-content:safe center}.category-filter-bar-scroll{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(to right,black calc(100% - 24px),transparent);-webkit-mask-image:linear-gradient(to right,black calc(100% - 24px),transparent)}.category-filter-bar-scroll::-webkit-scrollbar{display:none}#recipesView .category-filter-bar-wrap{display:flex;align-items:center;gap:12px;padding:20px 20px 12px;border-bottom:none}#recipesView .category-filter-bar{gap:0;flex-wrap:nowrap;justify-content:flex-start}#recipesView .category-filter-bar-scroll{mask-image:none;-webkit-mask-image:none}.category-filter-bar-utility{flex-shrink:0}button.category-filter--desktop-only{display:none}.category-filter.active{border-bottom-width:3px}.category-filter[data-category=more-filters]:not(.active){color:#1a1c1a59}}@media (min-width: 900px){body.chrome-compact .main-nav{display:none}body.chrome-compact .bottom-nav{display:flex}body.chrome-compact .main-content{padding-bottom:80px}body.chrome-compact .toast{bottom:72px}body.chrome-compact #recipesView .category-filter-bar-wrap{display:flex;align-items:center;gap:12px}body.chrome-compact #recipesView .category-filter-bar{gap:0;flex-wrap:nowrap;justify-content:flex-start}body.chrome-compact #categoryFilterBar button.category-filter--desktop-only{display:none}body.chrome-compact #recipesView .category-filter.active{border-bottom-width:3px}body.chrome-compact #recipesView .category-filter[data-category=more-filters]:not(.active){color:#1a1c1a59}}@media (min-width: 900px){button.category-filter--mobile-only{display:none}}.filter-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:999px;font-size:var(--text-body-sm);font-family:var(--font-body);font-weight:475;letter-spacing:-.01em;white-space:nowrap;cursor:pointer;transition:all .12s ease-out;border:1px solid rgba(0,0,0,.12);background:#ffffffb3;color:#000000b8;flex-shrink:0}.filter-btn:hover{background:#0000000f;border-color:#00000047;color:#000000f2;box-shadow:0 1px 2px #0000000a}.filter-btn svg{flex-shrink:0}.tag-group{display:flex;align-items:center;gap:6px}.tag-divider{width:1px;height:20px;background:#e0ddd8;margin:0 6px}.tag{padding:6px 14px;border-radius:16px;font-size:var(--text-tag);font-weight:500;white-space:nowrap;cursor:pointer;transition:all .2s;border:none;background:transparent;color:#736e68}.tag:hover{color:#5a5651;background:var(--color-surface-alt)}.tag.active{background:#f0ebe4;color:#6b5a45}.tabs{display:flex;gap:8px;margin-bottom:20px;overflow-x:auto;padding-bottom:4px}.tab{padding:8px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;font-size:14px;font-weight:500;color:var(--color-text-muted);cursor:pointer;white-space:nowrap}.tab.active{background:var(--color-secondary);border-color:var(--color-secondary);color:#fff}.category-group{margin-bottom:32px}.category-header{font-family:var(--font-display);font-size:1.1rem;color:var(--color-secondary);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--color-border);text-transform:capitalize}.recipe-grid{display:grid;grid-template-columns:1fr;column-gap:2.5rem;row-gap:2.4rem;padding:8px 16px 40px;max-width:1600px;margin:0 auto}@media (min-width: 600px){.recipe-grid{grid-template-columns:repeat(2,1fr);padding:8px 24px 40px}}@media (min-width: 900px){.recipe-grid{grid-template-columns:repeat(3,1fr);padding:16px 40px 60px}}@media (min-width: 1240px){.recipe-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1440px){.recipe-grid{padding:16px 64px 60px}}@media (min-width: 1920px){.recipe-grid{grid-template-columns:repeat(5,1fr);max-width:2100px}}.recipes-search-strip{display:flex;align-items:baseline;gap:14px;width:100%;max-width:1600px;margin:0 auto;box-sizing:border-box;padding:24px 64px 26px;font-family:var(--font-body)}.recipes-search-strip[hidden]{display:none}#recipesView .recipes-search-strip:not([hidden])+.category-filter-bar-wrap{padding-top:0}@media (max-width: 1439px){.recipes-search-strip{padding-left:40px;padding-right:40px}}@media not all and (min-width: 900px){.recipes-search-strip{padding-left:24px;padding-right:24px}}@media (max-width: 599px){.recipes-search-strip{padding:18px 16px 26px}}@media (min-width: 1920px){.recipes-search-strip{max-width:2100px}}.recipes-search-query{font-family:var(--font-display);font-size:var(--text-title);font-weight:500;color:var(--color-text);line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipes-search-count{flex:none;font-size:var(--text-label);color:#1a1c1a73;letter-spacing:.02em}.recipes-search-spacer{flex:1}.recipes-search-clear{flex:none;background:none;border:none;padding:0;cursor:pointer;font-family:var(--font-body);font-size:var(--text-caption);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#1a1c1a66;line-height:1;transition:color .15s ease}.recipes-search-clear:hover,.recipes-search-clear:active{color:var(--color-text)}@media (max-width: 600px){.recipe-grid.recipe-grid--dense{grid-template-columns:repeat(2,1fr);column-gap:12px;row-gap:22px}}@media not all and (max-width: 600px){@media not all and (min-width: 900px){.recipe-grid.recipe-grid--dense{grid-template-columns:repeat(3,1fr);column-gap:16px}}}@media not all and (min-width: 900px){.recipe-grid--dense .recipe-card-image{margin-bottom:10px}.recipe-grid--dense .recipe-title{font-size:var(--text-card-title);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-grid--dense .recipe-source-domain,.recipe-grid--dense .recipe-meta-dot{display:none}}.recipes-view-toggle{display:inline-flex;align-items:center;gap:2px}.recipes-view-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:3px;cursor:pointer;color:#1a1c1a59;transition:color .15s ease}.recipes-view-btn:hover{color:#1a1c1ab3}.recipes-view-btn.active{color:#1a1c1a}.recipes-view-btn svg{width:16px;height:16px}.recipe-chapter-grid{display:grid;grid-template-columns:1fr;column-gap:2.5rem;row-gap:3rem;padding:8px 16px 40px;max-width:1600px;margin:0 auto}@media (min-width: 600px){.recipe-chapter-grid{grid-template-columns:repeat(2,1fr);padding:8px 24px 40px}}@media (min-width: 900px){.recipe-chapter-grid{grid-template-columns:repeat(3,1fr);padding:16px 40px 60px}}@media (min-width: 1240px){.recipe-chapter-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1440px){.recipe-chapter-grid{padding:16px 64px 60px}}.recipe-chapter-card{cursor:pointer}.recipe-chapter-collage{width:100%;aspect-ratio:1 / 1;background:#efeeeb;position:relative;overflow:hidden;margin-bottom:10px;border-radius:2px;display:grid;gap:2px}.chapter-collage-1{grid-template-columns:1fr}.chapter-collage-2{grid-template-columns:1fr 1fr}.chapter-collage-3{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.chapter-collage-3 .recipe-chapter-collage-cell:first-child{grid-row:1 / -1}.chapter-collage-4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.recipe-chapter-collage-cell{background-size:cover;background-position:center;filter:contrast(.95) brightness(1.02) saturate(.95)}.chapter-collage-empty{display:flex;align-items:center;justify-content:center}.recipe-chapter-collage-initial{font-family:var(--font-display);font-size:48px;color:#1a1c1a40}.recipe-chapter-card-title{font-family:var(--font-display);font-size:18px;font-weight:500;line-height:1.2;color:#1a1c1a;margin-bottom:1px}.recipe-chapter-card:hover .recipe-chapter-card-title{color:var(--color-secondary-hover)}.recipe-chapter-card-count{font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.03em;color:#1a1c1a6b}@media (min-width: 768px){.recipe-chapter-card-title{font-size:19px}}.recipe-chapter-detail-header{display:flex;align-items:center;gap:12px;max-width:1600px;margin:0 auto;padding:8px 16px 0}@media (min-width: 768px){.recipe-chapter-detail-header{padding:16px 40px 0}}@media (min-width: 1440px){.recipe-chapter-detail-header{padding:16px 64px 0}}.recipe-chapter-detail-title{font-family:var(--font-display);font-size:24px;font-weight:500;color:#1a1c1a;margin:0}.recipe-chapter-detail-count{font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.03em;color:#1a1c1a6b}.recipe-card{background:transparent;border-radius:0;border:none;overflow:visible;box-shadow:none;cursor:pointer;display:flex;flex-direction:column}.recipe-card:hover{transform:none;box-shadow:none}.recipe-card-image{width:100%;aspect-ratio:1/1;background:#efeeeb;display:flex;align-items:center;justify-content:center;font-size:36px;position:relative;overflow:hidden;margin-bottom:10px;border-radius:2px;container-type:inline-size}.recipe-card-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgba(0,0,0,.18),transparent);pointer-events:none;z-index:1}.recipe-card-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#efeeeb;position:relative;z-index:1}.recipe-text-cover{background:#f6f3f2;overflow:hidden}.recipe-text-cover:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");background-size:cover;mix-blend-mode:multiply;opacity:.1;pointer-events:none}.recipe-text-cover-title{position:relative;z-index:2;transform:translateY(4px);font-family:var(--font-display);font-weight:400;color:#2c3333;text-align:center;line-height:1.08;letter-spacing:-.005em;max-width:68%;font-size:clamp(17px,8cqw,28px);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word;text-wrap:balance}.recipe-text-cover--compact .recipe-text-cover-title{font-size:clamp(12px,7cqw,18px);-webkit-line-clamp:3}.recipe-text-cover-initial{position:relative;z-index:2;transform:translateY(1px);font-family:var(--font-display);font-weight:500;color:#2c3333;font-size:15px;line-height:1}.recipe-card-image--textcover{background:transparent}.recipe-card-image--textcover:after{display:none}.recipe-card-bookmark{position:absolute;top:12px;right:12px;z-index:2;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:0;cursor:pointer;color:#ffffffe6;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));opacity:0;transition:opacity .2s,color .15s}@media (hover: hover){.recipe-card:hover .recipe-card-bookmark{opacity:1}}@media (hover: none){.recipe-card-bookmark{opacity:1}}@media (hover: none){.recipe-card .recipe-menu-container .card-addmenu-btn,.recipe-card .recipe-menu-container .card-grocery-btn,.recipe-card .recipe-menu-container .card-share-btn,.recipe-card .recipe-menu-container .recipe-menu-btn,.menu-grid-overflow .card-grocery-btn,.menu-grid-overflow .card-share-btn,.menu-grid-overflow .recipe-menu-btn{opacity:0;pointer-events:none}.recipe-card .recipe-menu-container .card-addmenu-btn:focus-visible,.recipe-card .recipe-menu-container .card-grocery-btn:focus-visible,.recipe-card .recipe-menu-container .card-share-btn:focus-visible,.recipe-card .recipe-menu-container .recipe-menu-btn:focus-visible,.menu-grid-overflow .card-grocery-btn:focus-visible,.menu-grid-overflow .card-share-btn:focus-visible,.menu-grid-overflow .recipe-menu-btn:focus-visible{opacity:1;pointer-events:auto}}@media (hover: hover){.card-addmenu-btn:focus-visible,.card-share-btn:focus-visible,.card-grocery-btn:focus-visible,.recipe-menu-btn:focus-visible,.recipe-card-bookmark:focus-visible{opacity:1}}.recipe-card,.menu-grid-card{-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.recipe-card-image img,.menu-grid-card-image img{-webkit-touch-callout:none;-webkit-user-drag:none;user-select:none;-webkit-user-select:none}.recipe-card-bookmark:hover{color:#fff}.recipe-card-bookmark.active{opacity:1;color:#fffffff2}.recipe-card-bookmark.active svg{fill:currentColor}.recipe-card-bookmark.active:hover{color:#fff}.recipe-card-bookmark svg{display:block;width:18px;height:18px}.recipe-card-image--textcover .recipe-card-bookmark{color:#2c333380;filter:none}.recipe-card-image--textcover .recipe-card-bookmark:hover{color:#2c3333cc}.recipe-card-image--textcover .recipe-card-bookmark.active{color:#fffffff2;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.recipe-card-image--textcover .recipe-card-bookmark.active:hover{color:#fff}.tile-add-photo-center{position:absolute;top:77%;left:50%;transform:translate(-50%) translateY(4px);z-index:3;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 13px;border:1px solid rgba(44,51,51,.1);border-radius:999px;cursor:pointer;background:#faf8f5e6;color:var(--color-text);font-family:var(--font-body);font-size:.8rem;font-weight:500;white-space:nowrap;opacity:0;transition:opacity .15s ease,transform .15s ease,background .15s}@media (hover: hover){.recipe-card.no-photo:hover .tile-add-photo-center{opacity:1;transform:translate(-50%) translateY(0)}}@media (hover: none){.tile-add-photo-center{display:none}}.tile-add-photo-center:hover{background:#fffffff5}.tile-add-photo-center svg{width:14px;height:14px}.quick-photo-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#1e1c1847;opacity:0;transition:opacity .15s}.quick-photo-overlay.open{opacity:1}.quick-photo-card{background:var(--color-surface);border-radius:16px;border:1px solid var(--color-border-light);box-shadow:0 12px 40px #0000002e;padding:22px;width:min(360px,calc(100vw - 40px))}.quick-photo-title{font-family:var(--font-display);font-size:1.1rem;font-weight:400;color:var(--color-text);margin:0 0 4px}.quick-photo-sub{font-size:.82rem;color:var(--color-secondary);margin:0 0 16px}.recipe-card-image img{width:100%;height:100%;object-fit:cover;filter:contrast(.95) brightness(1.02) saturate(.95);position:relative;z-index:1;border-radius:2px}@media (hover: hover){.recipe-card:hover .recipe-card-image img{transform:scale(1.05);transition:transform 1s ease-in-out}}.recipe-card-body{padding:0;position:relative;flex:1;display:flex;flex-direction:column}.recipe-title{font-family:var(--font-display);font-size:var(--text-title-lg);font-weight:600;margin-bottom:1px;line-height:1.2;color:#1a1c1a;transition:color .2s;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (hover: hover){.recipe-card:hover .recipe-title{color:var(--color-secondary-hover)}}@media (min-width: 768px){.recipe-title{font-size:var(--text-title-xl)}}.recipe-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:-1px}.recipe-meta-left{display:flex;align-items:center;gap:6px;flex:1;min-width:0;font-family:var(--font-body);font-size:var(--text-label);font-weight:500;letter-spacing:.03em;color:#1a1c1a6b}.recipe-source-domain{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex-shrink:1}.recipe-meta-dot{color:#1a1c1a33;flex-shrink:0}.recipe-cook-time{font-size:inherit;color:inherit;display:inline;font-weight:inherit;letter-spacing:inherit;white-space:nowrap;flex-shrink:0}.recipe-cook-time:before{display:none}.recipe-tags-inline{display:none}.recipe-tags-inline .recipe-tag{font-size:var(--text-tag);color:var(--color-text-muted);text-transform:capitalize}.recipe-menu-container{position:relative;flex-shrink:0;display:flex;align-items:center;gap:7px}.card-addmenu-btn{display:flex;align-items:center;justify-content:center;width:24px;height:20px;background:transparent;border:none;border-radius:4px;cursor:pointer;color:var(--color-text-light);opacity:0;transition:opacity .2s,color .15s;padding:0}@media (hover: hover){.recipe-card:hover .card-addmenu-btn,.menu-grid-card:hover .card-addmenu-btn{opacity:1}}.menu-list-overflow .card-addmenu-btn{opacity:1}.card-addmenu-btn:hover{color:var(--color-text)}.card-addmenu-btn svg{width:16px;height:16px}.card-share-btn{display:flex;align-items:center;justify-content:center;width:24px;height:20px;background:transparent;border:none;border-radius:4px;cursor:pointer;color:var(--color-text-light);opacity:0;transition:opacity .2s,color .15s;padding:0}@media (hover: hover){.recipe-card:hover .card-share-btn,.menu-grid-card:hover .card-share-btn{opacity:1}}.menu-list-overflow .card-grocery-btn,.menu-list-overflow .card-share-btn,.menu-list-overflow .recipe-menu-btn{opacity:1}.card-share-btn:hover{color:var(--color-text)}.card-share-btn svg{width:15px;height:15px}.card-grocery-btn{display:flex;align-items:center;justify-content:center;width:24px;height:20px;background:transparent;border:none;border-radius:4px;cursor:pointer;color:var(--color-text-light);opacity:0;transition:opacity .2s,color .15s;padding:0}@media (hover: hover){.recipe-card:hover .card-grocery-btn,.menu-grid-card:hover .card-grocery-btn{opacity:1}}.card-grocery-btn:hover{color:var(--color-text)}.card-grocery-btn svg{width:15px;height:15px}.is-in-list svg path:nth-of-type(1){fill:var(--color-secondary);stroke:var(--color-secondary)}.is-in-list svg line,.is-in-list svg path:nth-of-type(2){stroke:var(--color-surface)}.card-addmenu-btn,.card-share-btn,.card-grocery-btn,.recipes-view-btn,.menus-view-peer,.menus-view-btn,.rail-calendar-btn,.detail-view .header-btn{position:relative}.icon-hint{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:5px;color:var(--color-secondary);font-size:12px;font-weight:500;font-family:var(--font-body);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s;z-index:6}@media (hover: none){.icon-hint{opacity:0!important}}.card-addmenu-btn:hover .icon-hint,.card-share-btn:hover .icon-hint,.card-grocery-btn:hover .icon-hint,.recipes-view-btn:hover .icon-hint,.menus-view-peer:hover .icon-hint,.menus-view-btn:hover .icon-hint,.rail-calendar-btn:hover .icon-hint,.detail-view .header-btn:hover .icon-hint{opacity:1}.detail-view .header-btn .icon-hint,.rail-calendar-btn .icon-hint,.recipes-view-btn .icon-hint,.menus-view-peer .icon-hint,.menus-view-btn .icon-hint{margin-top:-3px}.recipe-menu-btn{display:flex;align-items:center;justify-content:center;width:28px;height:20px;background:transparent;border:none;border-radius:4px;cursor:pointer;color:var(--color-text-light);opacity:0;transition:opacity .2s,color .15s;padding:0}@media (hover: hover){.recipe-card:hover .recipe-menu-btn{opacity:1}}.recipe-menu-btn:hover{color:var(--color-text)}.recipe-menu-btn .dots{display:flex;gap:3px}.recipe-menu-btn .dot{width:3px;height:3px;background:currentColor;border-radius:50%}.menu-list-overflow .card-grocery-btn,.menu-list-overflow .card-share-btn,.menu-list-overflow .recipe-menu-btn{width:44px;height:44px}.menu-list-overflow .card-grocery-btn svg,.menu-list-overflow .card-share-btn svg{width:20px;height:20px}.menu-list-overflow .card-grocery-btn,.menu-list-overflow .card-share-btn{color:var(--color-text-muted)}.menu-list-overflow .recipe-menu-btn{color:var(--color-text-light)}.menu-list-overflow .recipe-menu-btn .dots{gap:4px}.menu-list-overflow .recipe-menu-btn .dot{width:4px;height:4px}.menu-list-overflow .card-grocery-btn:active,.menu-list-overflow .card-share-btn:active,.menu-list-overflow .recipe-menu-btn:active{color:var(--color-text)}.recipe-menu-dropdown{display:none;position:absolute;bottom:100%;right:0;margin-bottom:4px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 20px #00000026;min-width:180px;z-index:100;overflow:hidden}.recipe-menu-dropdown.open{display:block;animation:fadeIn .15s ease-out}.recipe-menu-title{padding:12px 16px 8px;font-family:var(--font-display);font-size:var(--text-body);font-weight:600;line-height:1.25;color:var(--color-text);border-bottom:1px solid var(--color-border);cursor:default}.recipe-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:none;border:none;font-size:var(--text-body-sm);color:var(--color-text);cursor:pointer;text-align:left;transition:background .15s}@media (hover: hover){.recipe-menu-item:hover{background:var(--color-surface-alt)}}.recipe-menu-item svg{flex-shrink:0;color:var(--color-text-muted)}@media (hover: hover){.recipe-card .recipe-menu-dropdown .recipe-menu-item:not([data-action=delete]):not([data-action=tile-hide-from-explore]):not([data-action=tile-use-tour]):not([data-action=tile-use-splash]):not([data-action=tile-use-book]),.recipe-card .recipe-menu-dropdown .recipe-menu-divider{display:none}}.recipe-tags-row,.recipe-tags.mobile-tags,.recipe-tags.desktop-tags,.recipe-grocery-toggle{display:none}@keyframes checkPop{0%{transform:scale(.8)}50%{transform:scale(1.1)}to{transform:scale(1)}}.empty{display:none;flex-direction:column;align-items:center;text-align:center;padding:96px 20px 60px}.empty-title{font-family:var(--font-display);font-size:22px;font-weight:500;color:var(--color-text);margin:0 0 6px}.empty-subtitle{font-family:var(--font-body);font-size:15px;color:var(--color-text-light);margin:0}.empty-action{margin-top:28px;display:inline-flex;align-items:baseline;gap:7px;background:none;border:none;padding:2px 0;cursor:pointer;text-decoration:none}.empty-action-add{font-family:var(--font-body);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.2em;color:var(--color-text)}.empty-action-rest{font-family:var(--font-body);font-weight:400;font-size:15px;color:var(--color-text-light)}.empty-action:hover .empty-action-add,.empty-action:hover .empty-action-rest{text-decoration:underline;text-underline-offset:3px}.empty-state{display:none;text-align:center;padding:80px 24px;max-width:400px;margin:0 auto}.empty-state-icon{font-size:56px;margin-bottom:20px;opacity:.8}.empty-state-title{font-family:var(--font-display);font-size:1.4rem;font-weight:500;color:var(--color-text);margin-bottom:8px}.empty-state-text{font-size:15px;color:var(--color-text-muted);margin-bottom:28px;line-height:1.5}.empty-state-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:24px;background:var(--color-secondary);border:none;color:#fff;font-size:15px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s}.empty-state-btn:hover{background:var(--color-secondary-hover);transform:translateY(-1px)}.empty-state-btn .plus-icon{font-size:18px;font-weight:400}.no-results{text-align:center;padding:48px 20px;color:var(--color-text-muted);font-size:15px}body.recipe-link-opening #recipesView>:not(.recipe-link-opening-note){visibility:hidden}.adoption-status{display:flex;align-items:center;justify-content:center;gap:10px;margin:12px auto 6px;max-width:640px;padding:10px 16px;background:var(--color-accent-soft);color:var(--color-text);border-radius:var(--radius-lg);font-size:var(--text-body);font-weight:500;animation:adoptionStatusIn .18s ease-out}.adoption-status[hidden]{display:none}.kept-in-library{flex:none;color:var(--color-text-muted);font-size:var(--text-caption);font-weight:600;white-space:nowrap}.kept-recipe-note{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin:4px 0 20px;color:var(--color-text-muted);font-size:var(--text-body-sm);line-height:1.4}.kept-recipe-note[hidden]{display:none}.kept-recipe-note-copy{display:inline-flex;align-items:baseline;gap:10px}.kept-open-copy{border:none;background:none;padding:0;cursor:pointer;color:var(--color-text);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px}#detailView.is-kept-frozen #favoriteBtn,#detailView.is-kept-frozen #detailAddMenuBtn,#detailView.is-kept-frozen #detailShareBtn,#detailView.is-kept-frozen #detailEditBtn,#detailView.is-kept-frozen [data-action=detail-add-to-grocery],#detailView.is-kept-frozen .import-review-marker{display:none!important}.detail-explore-save{flex:none;border:none;background:transparent;color:var(--color-secondary);font-family:var(--font-body);font-size:var(--text-body);font-weight:600;line-height:1;white-space:nowrap;padding:8px 10px;border-radius:8px;cursor:pointer}.detail-explore-save:hover{color:var(--color-secondary-hover);background:var(--color-border-light)}.detail-explore-save:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}.detail-explore-save:disabled{cursor:default;opacity:.6}.detail-explore-save[hidden],.detail-explore-save-short,.detail-explore-save.is-short .detail-explore-save-long{display:none}.detail-explore-save.is-short .detail-explore-save-short{display:inline}.detail-explore-save-done,.detail-explore-save.is-saved .detail-explore-save-long,.detail-explore-save.is-saved .detail-explore-save-short{display:none}.detail-explore-save.is-saved .detail-explore-save-done{display:inline}.detail-explore-save.is-saved{cursor:default}.detail-explore-save.is-saved:hover{color:var(--color-secondary);background:transparent}.adoption-status-msg{text-align:center}.adoption-status--persist .adoption-status-msg{flex:1 1 auto}.adoption-status-dismiss{flex:none;border:none;background:transparent;color:var(--color-text-muted);font-size:var(--text-title);line-height:1;padding:0 4px;cursor:pointer;border-radius:var(--radius-sm)}.adoption-status-dismiss:hover{color:var(--color-text)}@keyframes adoptionStatusIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.load-more-btn{display:block;width:100%;max-width:300px;margin:24px auto;padding:14px 24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;font-size:16px;font-weight:500;color:var(--color-text);cursor:pointer;transition:background-color .2s,border-color .2s}.load-more-btn:hover{background:#f4f2ee;border-color:var(--color-secondary)}.load-more-btn:disabled{opacity:.6;cursor:not-allowed}.detail-view{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg-cool);z-index:200;overflow-y:auto;overscroll-behavior-y:contain}.detail-view.open{display:block}body:has(.detail-view.open) .main-content,body:has(.detail-view.open) .books-page{visibility:hidden}body:has(.book-reader:not(.book-reader--suspended)) .main-content,body:has(.book-reader:not(.book-reader--suspended)) .books-page{visibility:hidden}body:has(.detail-view.open) .prep-plan-modal,body:has(.detail-view.open) .prep-tile-preview{visibility:hidden}.detail-header{position:sticky;top:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:12px 20px;padding-top:calc(12px + env(safe-area-inset-top,0px));display:flex;align-items:center;z-index:10;gap:12px;min-width:0;box-sizing:border-box}.detail-header-title{font-family:var(--font-display);font-size:1.1rem;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail-header-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-left:auto;position:relative}.detail-view .header-btn{width:auto;height:auto;padding:6px 10px;white-space:nowrap;flex-shrink:0;border-radius:4px;font-size:14px;font-weight:400;cursor:pointer;border:none;background:transparent;color:var(--color-text-muted);font-family:inherit;transition:color .15s}.detail-view .header-btn:hover{color:var(--color-text);background:transparent}.detail-view .header-btn.overflow-btn{padding:6px 8px;font-size:14px;letter-spacing:1px;color:var(--color-detail-header-action-ink)}.detail-view .header-btn.overflow-btn:hover{color:var(--color-text)}.detail-view .header-btn.detail-add-menu-btn,.detail-view .header-btn.edit-btn{color:var(--color-detail-header-action-ink)}.detail-view .header-btn.detail-add-menu-btn:hover,.detail-view .header-btn.edit-btn:hover{color:var(--color-text)}.detail-view .header-btn.share-btn{padding:6px 10px;color:var(--color-detail-header-action-ink);transition:color .2s}.detail-view .header-btn.share-btn svg{display:block}.detail-view .header-btn.share-btn:hover{color:var(--color-text)}.detail-view .header-btn.favorite-btn{padding:6px 10px;color:var(--color-detail-header-action-ink);transition:color .2s}.detail-view .header-btn.favorite-btn svg{display:block}.detail-view .header-btn.favorite-btn:hover{color:var(--color-text)}.detail-view .header-btn.favorite-btn.active,.detail-view .header-btn.favorite-btn.active:hover{color:var(--color-secondary)}.detail-view .header-btn.favorite-btn.active svg{stroke:var(--color-secondary);fill:currentColor}@media (min-width: 768px){.detail-view .header-btn.favorite-btn svg,.detail-view .header-btn.detail-add-menu-btn svg,.detail-view .header-btn.share-btn svg,.detail-view .header-btn.edit-btn svg{transform:scale(.9);transform-origin:center}}@media (max-width: 767px){.detail-view .detail-header-title{display:none!important}.detail-view .back-btn{margin-left:-14px}.detail-view .detail-header-actions{gap:6px}.detail-view .header-btn,.detail-view .header-btn.overflow-btn{padding:6px 7px}.detail-view .header-btn,.detail-view .header-btn.share-btn,.detail-view .header-btn.favorite-btn,.detail-view .header-btn.overflow-btn{color:var(--color-detail-header-action-ink)}.detail-view .header-btn svg{width:19px;height:19px;stroke-width:1.5}.detail-view .header-btn:active,.detail-view .header-btn.share-btn:active,.detail-view .header-btn.favorite-btn:active,.detail-view .header-btn.overflow-btn:active{color:var(--color-text)}.detail-view .header-btn.favorite-btn.active,.detail-view .header-btn.favorite-btn.active:active{color:var(--color-secondary)}.detail-view .header-btn.edit-btn{display:none}}@media (max-width: 767px){.right-panel-header .right-panel-back{margin-left:-22px;margin-right:22px}.create-menu-panel .right-panel-header .right-panel-back{margin-left:0;margin-right:0}.recipe-chapter-detail-header .recipe-chapter-back{margin-left:-12px;margin-right:12px}.event-header-top .back-btn{margin-left:-14px;margin-right:14px}.planner-header-top .back-btn{margin-left:-10px;margin-right:10px}.menu-detail-topbar .back-btn{margin-left:-18px;margin-right:18px}}.detail-view.cook-mode-on .detail-body{padding-bottom:150px}.overflow-menu{position:relative;display:inline-block}.overflow-dropdown{display:none;position:absolute;right:0;top:100%;margin-top:4px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 4px 12px #00000014;min-width:120px;z-index:100}.overflow-dropdown.open{display:block}.overflow-dropdown button{display:block;width:100%;padding:10px 14px;text-align:left;background:none;border:none;font-size:14px;font-family:inherit;color:var(--color-text-muted);cursor:pointer;transition:background .15s,color .15s}.overflow-dropdown button:hover{background:#f4f2ee;color:var(--color-text)}.overflow-dropdown button.danger-item{color:var(--color-text-muted)}.overflow-dropdown button.danger-item:hover{background:#f4f2ee;color:var(--color-text)}.overflow-dropdown-divider{border:none;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));margin:2px 0}.detail-view .header-btn.primary{background:var(--color-secondary);border:1px solid var(--color-secondary);color:#fff;font-weight:500}.detail-view .header-btn.primary:hover{background:var(--color-secondary-hover)}.detail-view .header-btn.danger{color:var(--color-primary)}.detail-view .header-btn.cancel-btn{background:transparent;border:none;color:#888;font-weight:400;padding:8px 12px}.detail-view .header-btn.cancel-btn:hover{color:#666;background:#0000000d}.detail-hero.photos-affordance{cursor:pointer}.detail-hero.photos-affordance:focus-visible{outline:2px solid var(--color-primary);outline-offset:-3px}.hero-gallery-glyph{position:absolute;right:14px;bottom:16px;z-index:2;display:inline-flex;align-items:center;gap:5px;color:#fff;opacity:.92;font-size:13px;font-weight:600;letter-spacing:.01em;font-variant-numeric:tabular-nums;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.55))}.hero-gallery-glyph svg{display:block}.detail-hero.editable-image{cursor:pointer;position:relative;transition:opacity .2s ease}.detail-hero.editable-image:hover{opacity:.85}.image-edit-overlay{position:absolute;bottom:12px;right:12px;background:#0000008c;color:#fff;padding:6px 12px;border-radius:16px;font-size:13px;pointer-events:none;display:flex;align-items:center;gap:4px;opacity:0;transition:opacity var(--transition-fast, .15s ease-out)}.detail-hero.editable-image:hover .image-edit-overlay{opacity:1}.detail-view.edit-mode .detail-hero{min-height:75px}.image-edit-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;flex:1;gap:4px;color:var(--color-text-muted, #8B8680);font-size:14px;pointer-events:none}.image-edit-placeholder-icon{font-size:32px}.image-source-remove{font-weight:400;color:var(--color-text-light)}.ingredients-chip{display:block;position:fixed;bottom:80px;left:50%;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transform:translate(-50%) translateY(10px);opacity:0;pointer-events:none;padding:12px 24px;background:var(--color-ink);color:var(--color-white);border:none;border-radius:var(--radius-lg);font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;z-index:201;visibility:hidden;box-shadow:0 2px 10px #0000002e;transition:transform .25s ease,opacity .25s ease,visibility .25s}.ingredients-chip.visible{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%) translateY(0)}.ingredients-chip.visible:active{transform:translate(-50%) translateY(0) scale(.95)}.ingredients-chip.sheet-open{opacity:0;visibility:hidden;pointer-events:none;transition:none}body:not(:has(.app-content.unlocked .detail-view.open)) .ingredients-chip{visibility:hidden;pointer-events:none}.ingredients-drawer-scrim{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1005}.ingredients-drawer-scrim.open{display:block}.ingredients-drawer{display:none;position:fixed;bottom:0;left:0;right:0;height:35vh;max-height:85vh;background:var(--color-surface);border-radius:14px 14px 0 0;box-shadow:0 -4px 20px #0000001f;z-index:1006;flex-direction:column;transition:height .2s ease-out}.ingredients-drawer.open{display:flex}.ingredients-drawer.entering{animation:slideUp .2s ease-out}.ingredients-drawer.dragging{transition:none}.drawer-handle{width:36px;height:4px;background:var(--color-border);border-radius:2px;margin:8px auto 0;flex-shrink:0}.drawer-handle,.drawer-header{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 10px 20px;border-bottom:1px solid var(--color-border-light);flex-shrink:0;cursor:grab}.drawer-title{font-family:var(--font-body);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink)}.drawer-actions{display:flex;align-items:center;gap:4px}.drawer-close-btn{background:none;border:none;padding:6px;cursor:pointer;color:var(--color-text-light);border-radius:var(--radius-sm);transition:color .15s,background .15s;display:flex;align-items:center;justify-content:center}.drawer-close-btn:hover{color:var(--color-text);background:var(--color-surface-alt)}.drawer-body{flex:1;overflow-y:auto;padding:12px 20px 20px;-webkit-overflow-scrolling:touch}.drawer-body .detail-section{margin-bottom:0}.drawer-body ul{list-style:none;padding:0;margin:0}.drawer-body li{cursor:pointer;padding:10px 4px;border-bottom:1px solid var(--color-border-light)}@media (min-width: 768px){.ingredients-chip,.ingredients-drawer-scrim,.ingredients-drawer{display:none!important}}@media screen{.detail-view{transition:background-color .45s ease}.detail-view .detail-body,.detail-view .item-text,.detail-view .step-content,.detail-view .step-header{transition:color .45s ease}.detail-view.cook-mode-on{--color-bg-cool: #FFFFFF;background:var(--color-bg-cool)}.detail-view.cook-mode-on .detail-body,.detail-view.cook-mode-on .item-text,.detail-view.cook-mode-on .step-content{color:#17140f}.detail-view.cook-mode-on .step-header{color:#17140ff2}}@media screen and (prefers-reduced-motion: reduce){.detail-view,.detail-view .detail-body,.detail-view .item-text,.detail-view .step-content,.detail-view .step-header{transition:none}}@media screen and (prefers-reduced-motion: reduce){.ingredients-drawer,.ingredients-drawer.entering{animation:none;transition:none}}body.cook-sheet-open .bottom-nav{display:none}@media print{.ingredients-chip,.ingredients-drawer-scrim,.ingredients-drawer{display:none!important}}.grocery-icon-btn{position:relative;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--color-surface);border:1px solid var(--color-border-light);color:var(--color-secondary);cursor:pointer;margin-left:auto;flex-shrink:0;transition:all .15s}.grocery-icon-btn:hover{border-color:var(--color-secondary);background:var(--color-surface-alt)}.grocery-icon-btn svg{width:14px;height:14px}.grocery-tooltip{position:absolute;right:100%;top:50%;transform:translateY(-50%);margin-right:6px;padding:0;background:none;color:var(--color-secondary);font-size:var(--text-label);font-weight:500;font-family:var(--font-body);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s}.grocery-icon-btn:hover .grocery-tooltip{opacity:1}.recipe-note-btn{font-size:16px;cursor:pointer;opacity:0;transition:opacity .15s}.title-row:hover .recipe-note-btn{opacity:.5}.recipe-note-btn:hover{opacity:1!important}.recipe-note-display{display:none;margin-bottom:20px}.recipe-note-display .item-note{margin:0}.recipe-note-editor{margin-bottom:20px}.recipe-note-editor .note-input{min-height:60px}.detail-meta-line+.import-review-marker{margin-top:-8px}.import-review-marker{display:flex;flex-wrap:nowrap;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 16px;margin-bottom:20px;background:color-mix(in srgb,var(--color-warning) 10%,var(--color-bg) 90%);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-tag);line-height:1.3}.import-review-marker-text{color:var(--color-text)}.import-review-marker-dismiss{color:var(--color-primary);text-decoration:underline;white-space:nowrap;flex-shrink:0}.import-review-marker-dismiss:hover{opacity:.8}.meta-scale{display:inline-flex;align-items:baseline;gap:6px;font-size:13px;margin-left:14px}.scale-btn{display:inline-flex;align-items:center;justify-content:center;width:14px;height:18px;padding:0;background:none;border:none;color:#1a1c1a40;font-size:15px;font-weight:400;line-height:1;cursor:pointer;transition:color .18s ease}.scale-btn:hover:not(:disabled),.meta-scale:hover .scale-btn:not(:disabled){color:#1a1c1ad9}.scale-btn:disabled{color:#1a1c1a1a;cursor:default}.scale-display{display:inline-block;color:#1a1c1ab3;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:24px;text-align:center}.scale-reset{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:none;border:none;color:#1a1c1a66;font-size:12px;line-height:1;cursor:pointer;margin-left:2px;transition:color .15s ease}.scale-reset:hover{color:#1a1c1a}.scale-reset[hidden]{display:none}.step-content .note-btn{flex-shrink:0;margin-top:2px}.instruction-item.instruction-section-item{margin-top:20px}#editPasteRecipeBtn{display:inline-flex;align-items:center;gap:6px}#editPasteRecipeBtn svg{flex-shrink:0}.instruction-section-item .instruction-content{border-bottom:1px solid rgba(26,28,26,.1);padding-bottom:6px}.instruction-section-item .section-name-text{font-family:var(--font-body);font-size:12px;font-weight:500;color:#1a1c1a8c;text-transform:uppercase;letter-spacing:.1em;line-height:normal}.ingredient-highlight{animation:ingredient-highlight-fade 5s ease-out;border-radius:4px}@keyframes ingredient-highlight-fade{0%{background:#8b735540}80%{background:#8b73551a}to{background:transparent}}.my-notes-section{margin-top:8px}.my-notes-divider{border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));margin-bottom:28px}.my-notes-head{display:flex;align-items:baseline;gap:12px;margin-bottom:6px}.my-notes-header{font-family:var(--font-body);color:var(--color-ink);font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;margin:0;padding:0}.my-notes-edit{margin-left:auto;padding:0;border:none;background:none;font:inherit;font-size:var(--text-tag);color:var(--color-text-light);cursor:pointer;border-bottom:1px dotted rgba(117,119,122,.4)}.my-notes-edit:hover{color:var(--color-text-muted)}.my-notes-body{font-family:var(--font-body);font-size:var(--text-reading-sm);line-height:1.7;color:var(--color-text);margin-top:16px}.my-notes-body p{margin:0 0 12px}.my-notes-body p:last-child{margin-bottom:0}.original-notes-body.original-notes-editable{white-space:pre-wrap;outline:none;padding:8px 10px;margin-left:-10px;margin-right:-10px;border:1px solid transparent;border-radius:6px;transition:background .12s ease;cursor:text;min-height:1.7em}.original-notes-body.original-notes-editable:hover{background:#1a1c1a06}.original-notes-body.original-notes-editable:focus{background:#1a1c1a0d;border-color:var(--color-border)}.original-notes-body.original-notes-editable:empty:before{content:attr(data-placeholder);color:var(--color-text-muted);font-style:italic;pointer-events:none}.edit-mode .detail-title,.edit-mode .ingredient-content,.edit-mode .instruction-content,.edit-mode .ingredient-section-name .section-name-text{border:1px solid transparent;border-radius:6px;outline:none;transition:background .12s ease;cursor:text}.edit-mode .detail-title:hover,.edit-mode .ingredient-content:hover,.edit-mode .instruction-content:hover,.edit-mode .ingredient-section-name .section-name-text:hover{background:#1a1c1a06}.edit-mode .detail-title:focus,.edit-mode .ingredient-content.focused,.edit-mode .instruction-content.focused,.edit-mode .ingredient-section-name .section-name-text:focus{background:#1a1c1a0d;border-color:var(--color-border)}.edit-mode .detail-title{padding:4px 8px;margin:-5px -9px;min-height:0}.edit-mode .detail-section ol li:before{display:none!important}.edit-mode .detail-section ul{gap:12px}.edit-mode .detail-section ul li,.edit-mode .detail-section ol li{padding:0;margin:0;border-bottom:none;line-height:normal}.edit-mode .detail-section ol li.instruction-item:not(.instruction-section-item){border-bottom:1px solid rgba(26,28,26,.06)}.edit-mode .detail-section ol li.instruction-item:last-child{border-bottom:none}.mode-badge{position:fixed;top:70px;right:32px;background:var(--color-secondary);color:#fff;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:600;z-index:1000;display:none;text-transform:uppercase;letter-spacing:.5px;transition:background .2s ease}.edit-mode .mode-badge{display:none}.discard-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000014;z-index:300;align-items:flex-start;justify-content:flex-end;padding:60px 18px 20px;padding-top:calc(60px + env(safe-area-inset-top,0px))}.discard-modal.open{display:flex;animation:fadeIn .15s ease-out}.discard-modal-content{background:#fff;border-radius:10px;padding:18px 20px 16px;max-width:280px;width:100%;box-shadow:0 2px 12px #0000001a}.discard-title{font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--color-text);margin:0 0 4px}.discard-body{font-family:var(--font-body);font-size:13px;font-weight:400;color:#999;margin:0 0 16px;line-height:1.4}.discard-actions{display:flex;flex-direction:row;gap:8px;justify-content:flex-end;align-items:center}.discard-btn{background:none;border:none;color:#908a85;font-size:13px;font-weight:400;font-family:var(--font-body);padding:6px 12px;cursor:pointer;border-radius:6px;transition:color .15s ease}.discard-btn:hover{color:var(--color-text)}.discard-save-btn{background:#00000012;border:none;color:var(--color-text);font-size:13px;font-weight:500;font-family:var(--font-body);padding:7px 16px;cursor:pointer;border-radius:6px;transition:background .15s ease}.discard-save-btn:hover{background:#0000001f}.section-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#2d2a2640;z-index:300;align-items:center;justify-content:center;padding:20px}.section-modal.open{display:flex;animation:fadeIn .25s ease-out}.section-modal-content{background:#fffbf7;border-radius:14px;padding:22px 24px 20px;max-width:280px;width:100%;box-shadow:0 4px 24px #2d2a2614}.section-modal-title{font-family:var(--font-display);font-size:17px;font-weight:500;color:var(--color-text);margin:0 0 6px;letter-spacing:-.2px}.section-modal-helper{font-size:13px;color:#7a756e;margin:0 0 14px;line-height:1.5}.section-name-input{width:100%;padding:10px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-cool);color:var(--color-text);margin-bottom:16px;transition:all .15s ease;box-sizing:border-box}.section-name-input:focus{outline:none;border-color:var(--color-secondary);background:#fff}.section-name-input::placeholder{color:#b5afa7;font-style:italic}.section-modal-actions{display:flex;flex-direction:column;gap:6px;align-items:center}.section-add-btn{background:var(--color-secondary);border:none;color:#fff;font-size:13px;font-weight:500;padding:9px 24px;cursor:pointer;border-radius:6px;transition:all .15s ease;width:100%}.section-add-btn:hover:not(:disabled){background:var(--color-secondary-hover)}.section-add-btn:disabled{background:#c5c0b8;cursor:not-allowed}.section-cancel-btn{background:transparent;border:none;color:#7a756e;font-size:12px;font-weight:500;padding:6px 14px;cursor:pointer;border-radius:6px;transition:all .15s ease}.section-cancel-btn:hover{color:#5c5650;background:#00000008}.modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:200}.modal.open{display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease-out}.modal-box{background:var(--color-surface);border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-surface);border-radius:16px 16px 0 0}.modal-title{font-family:var(--font-display);font-size:1.25rem}.close-btn{background:none;border:none;font-size:28px;color:var(--color-text-muted);cursor:pointer;transition:color .2s}.close-btn:hover{color:var(--color-text)}.modal-body{padding:20px}.field{margin-bottom:20px}.field label{display:block;font-weight:500;margin-bottom:8px}.field input,.field textarea{width:100%;padding:12px;font-size:16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-cool);font-family:inherit;transition:border-color .2s}.field input:focus,.field textarea:focus{outline:none;border-color:var(--color-primary)}.field textarea{min-height:100px;resize:vertical}.manual-fields .field{margin-bottom:14px}.manual-fields .field label{font-size:var(--text-body-sm);font-weight:500;color:var(--color-text-muted);margin-bottom:6px}.manual-fields .field textarea{border:1px solid var(--color-border-light);background:var(--color-bg-cool);border-radius:var(--radius-lg);padding:10px 12px;font-size:var(--text-body-sm);line-height:1.6}.manual-fields .field textarea:focus{border-color:var(--color-border-strong);box-shadow:none}#fIngredients{min-height:180px;line-height:1.7}#fInstructions{min-height:200px;line-height:1.7;transition:min-height .3s ease}#fInstructions:focus{min-height:300px}.field small{color:var(--color-text-muted);font-size:13px}.tags-field{display:flex;flex-wrap:wrap;gap:8px}.field-hint{display:block;font-size:13px;color:var(--color-secondary);margin-top:6px;min-height:18px}.field-examples{display:block;font-size:12px;color:var(--color-text-light);margin-top:8px;font-style:italic}.add-menu-modal{max-width:260px;border-radius:12px}.add-menu-modal .modal-body{padding:20px}.add-menu-title{font-family:var(--font-display);font-size:var(--text-title);font-weight:600;color:var(--color-text);margin:0 0 16px}.add-menu-field{margin-bottom:12px}.add-menu-field label{display:block;font-size:var(--text-body-sm);font-weight:500;color:var(--color-text-muted);margin-bottom:6px}.add-menu-field input{width:100%;padding:10px 12px;font-size:var(--text-body);border:1px solid var(--color-border-light);border-radius:6px;background:var(--color-bg-cool);transition:border-color .15s}.add-menu-field input:focus{outline:none;border-color:var(--color-secondary)}.add-menu-field input::placeholder{color:#b8b4ae;font-size:var(--text-body-sm)}.field-hint{display:none;font-size:12px;color:var(--color-primary);margin-top:4px}.field-hint.visible{display:block}.layout-tabs{display:flex;background:#f2efeb;border-radius:10px;padding:3px;margin-bottom:16px}.layout-tab{flex:1;padding:8px 12px;border:none;background:transparent;font-size:13px;font-weight:500;color:var(--color-text-muted);cursor:pointer;border-radius:8px;transition:all .2s}.layout-tab.active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 3px #00000014}.layout-fields{margin-top:0}.quick-date-chips{display:flex;gap:8px;margin-bottom:8px}.quick-date-chip{padding:6px 14px;border:1px solid var(--color-border-light);background:var(--color-surface);border-radius:20px;font-size:13px;color:var(--color-text-muted);cursor:pointer;transition:all .15s;white-space:nowrap}.quick-date-chip:hover{border-color:var(--color-secondary);color:var(--color-text)}.quick-date-chip.active{background:var(--color-secondary);color:#fff;border-color:var(--color-secondary)}.date-range-label{font-size:13px;color:var(--color-text-muted);min-height:20px;margin-bottom:4px}.layout-hint{font-size:13px;color:var(--color-text-muted);margin:4px 0 0}.menu-empty-state{text-align:center;padding:40px 20px}.menu-empty-title{font-family:var(--font-display);font-size:var(--text-reading-sm);font-weight:600;color:var(--color-text);margin:0 0 6px}.menu-empty-body{font-size:var(--text-body-sm);color:var(--color-text-muted);margin:0 0 20px}.menu-empty-add{font-size:var(--text-body-sm);padding:10px 24px}.date-row{margin-top:4px;margin-bottom:0}.add-date-link{font-size:14px;color:var(--color-text-muted);text-decoration:none;cursor:pointer}.add-date-link:hover{color:var(--color-text)}.add-date-link.hidden{display:none}.event-date-field{margin-top:5px}.event-date-link{font-size:var(--text-tag);font-weight:500;color:var(--color-text-muted);text-decoration:none;cursor:pointer}.event-date-link:hover{color:var(--color-text)}.event-date-link.hidden{display:none}.event-date-optional{font-weight:400;color:var(--color-text-light)}.date-display-row{display:none;align-items:center;gap:6px}.date-display-row.visible{display:flex}.date-display-text{font-size:13px;color:var(--color-text)}.date-dot{color:var(--color-text-light)}.remove-date-link{font-size:13px;color:var(--color-text-light);text-decoration:none}.remove-date-link:hover{color:var(--color-secondary);text-decoration:underline}.change-date-link{font-size:13px;color:var(--color-text-light);text-decoration:none}.change-date-link:hover{color:var(--color-secondary);text-decoration:underline}.thyme-calendar{display:none;background:var(--color-surface);padding:8px 0 0;margin-top:8px}.thyme-calendar.open{display:block}.menu-picker-list{display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto}.menu-picker-item{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:10px;cursor:pointer;transition:all .15s;font-family:var(--font-body);font-size:var(--text-body-sm);text-align:left;width:100%}.menu-picker-item:hover{border-color:var(--color-primary);background:#fbf5f2}.menu-picker-name{font-weight:500;color:var(--color-text)}.menu-picker-count{font-size:var(--text-label);color:var(--color-text-muted)}.menu-picker-create{justify-content:center;color:var(--color-primary);font-weight:500;border-style:dashed}.menu-picker-item.menu-picker-active{border-color:#7d8b6a8c;background:#7d8b6a1a}.menu-picker-item.menu-picker-active .menu-picker-name{color:var(--color-secondary);font-weight:600}.menu-picker-divider{font-family:var(--font-body);font-size:var(--text-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;padding:10px 4px 2px}.menu-picker-create:hover{background:#fbf5f2}.modal-actions-inline{display:flex;gap:8px;margin-top:4px}#createMenuModal .modal-actions-inline{margin-top:16px}#kitchenConfigModal .modal-actions-inline{margin-top:20px}.btn-cancel,.btn-create{flex:1;height:34px;padding:0;border-radius:4px;font-family:inherit;font-size:15px;font-weight:500;line-height:32px;cursor:pointer;transition:all .15s;text-align:center;box-sizing:border-box}.btn-cancel{background:none;border:1px solid var(--color-border-light);color:var(--color-text-muted)}.btn-cancel:hover{border-color:#d8d4ce;color:var(--color-text)}.btn-create{background:#4a4540;border:1px solid #4A4540;color:#fff}.btn-create:hover{background:#3a3530;border-color:#3a3530}.modal.modal-delete{background:#3c373052}.delete-menu-modal{max-width:260px;border-radius:8px;background:var(--color-surface, #FAF8F5)}.delete-menu-modal .modal-body{padding:18px 20px 14px;text-align:left}.delete-menu-body{font-size:15px;font-weight:500;line-height:1.4;color:var(--color-text);margin:0}.delete-menu-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.btn-keep{height:32px;padding:0 14px;background:none;border:1px solid var(--color-border);border-radius:6px;font-family:inherit;font-size:13px;font-weight:500;line-height:30px;box-sizing:border-box;color:var(--color-text);cursor:pointer;transition:all .15s}.btn-keep:hover{border-color:var(--color-text-muted)}.btn-delete{height:32px;padding:0 4px;background:none;border:none;border-radius:6px;font-family:inherit;font-size:13px;font-weight:500;line-height:32px;box-sizing:border-box;color:var(--color-text-muted);cursor:pointer;transition:all .15s}.btn-delete:hover{color:var(--color-text);background:#0000000d}.change-date-modal{max-width:320px;border-radius:12px}.change-date-modal .modal-body{padding:20px}.change-date-modal .modal-title{font-family:var(--font-display);font-size:18px;font-weight:600;color:var(--color-text);margin:0 0 4px}.change-date-modal .modal-subtitle{font-size:14px;color:var(--color-text-muted);margin:0 0 16px}.change-date-modal .date-picker-section{margin-bottom:20px}.change-date-modal .thyme-calendar{display:block;border:1px solid var(--color-border);border-radius:8px;padding:12px;background:var(--color-surface)}.date-radio-options{display:flex;flex-direction:column;gap:8px;margin-top:14px}.date-radio-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .15s}.date-radio-option:hover{background:#f4f2ee}.date-radio-option .radio-circle{width:18px;height:18px;border:2px solid var(--color-border);border-radius:50%;position:relative;transition:border-color .15s}.date-radio-option .radio-circle:after{content:"";position:absolute;top:3px;left:3px;width:8px;height:8px;border-radius:50%;background:var(--color-secondary);opacity:0;transition:opacity .15s}.date-radio-option.selected .radio-circle{border-color:var(--color-secondary)}.date-radio-option.selected .radio-circle:after{opacity:1}.date-radio-option .radio-label{font-size:14px;color:var(--color-text)}.btn-remove-date{background:none;border:none;padding:10px 16px;font-size:14px;color:var(--color-text-muted);cursor:pointer;border-radius:8px;transition:background .15s}.btn-remove-date:hover{color:var(--color-text);background:#0000000d}.copy-menu-modal{max-width:290px;border-radius:12px}.copy-menu-modal .modal-body{padding:16px}.copy-menu-modal .modal-title{font-family:var(--font-display);font-size:18px;font-weight:600;color:var(--color-text);margin:0 0 10px}.copy-menu-input{width:100%;padding:8px 10px;font-size:14px;font-family:inherit;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-cool);color:var(--color-text);box-sizing:border-box;margin-bottom:14px}.copy-menu-input:focus{outline:none;border-color:var(--color-text-light)}.btn-copy-menu{background:#0000000f;border:none;color:var(--color-text);font-size:13px;font-weight:500;padding:7px 16px;border-radius:8px;cursor:pointer;transition:background .15s}.btn-copy-menu:hover{background:#0000001a}.modal-actions-stacked{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:2px}.btn-create-menu{padding:12px 48px;background:var(--color-secondary);border:none;border-radius:8px;font-size:15px;font-weight:600;color:#fff;cursor:pointer;transition:background .15s}.btn-create-menu:hover{background:var(--color-secondary-hover)}.btn-cancel-menu{padding:10px 24px;background:none;border:none;font-size:14px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:color .15s}.btn-cancel-menu:hover,.btn-text-full:hover{color:var(--color-text)}.btn-text{padding:8px 16px;background:none;border:none;font-size:14px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:color .15s}.btn-text:hover{color:var(--color-text)}.btn-primary-sm{padding:10px 20px;background:var(--color-secondary);border:none;border-radius:6px;font-size:14px;font-weight:600;color:#fff;cursor:pointer;transition:background .15s}.btn-primary-sm:hover{background:var(--color-secondary-hover)}.modal-actions{display:flex;gap:12px;margin-top:28px}.modal-actions .btn-cancel{flex:1;padding:14px 20px;background:transparent;border:none;border-radius:8px;font-size:15px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .2s}.modal-actions .btn-cancel:hover{background:#f4f2ee;color:var(--color-text)}.btn-secondary{flex:1;padding:14px 20px;background:transparent;border:1px solid var(--color-border);border-radius:8px;font-size:15px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f4f2ee;color:var(--color-text)}.btn-primary{flex:1.2;padding:14px 20px;background:var(--color-secondary);border:none;border-radius:8px;font-size:15px;font-weight:600;color:#fff;cursor:pointer;transition:background .2s}.btn-primary:hover{background:var(--color-secondary-hover)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(8px);background:var(--color-surface, #fff);color:var(--color-text-body, #4A4541);padding:12px 20px;border-radius:12px;font-size:14px;font-weight:400;font-family:var(--font-body);opacity:0;transition:opacity .3s ease,transform .3s ease;z-index:10001;display:flex;align-items:center;gap:16px;pointer-events:none;box-shadow:0 4px 20px #2d2a261f,0 1px 4px #2d2a260f;cursor:pointer;max-width:calc(100vw - 32px)}.toast.show{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.toast-message{color:var(--color-text-body, #4A4541);font-size:14px;font-weight:400;white-space:pre-line}.toast-action{background:none;border:none;color:var(--color-primary);font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;padding:4px 8px;margin:-4px -8px;border-radius:6px;text-decoration:none;transition:background .15s ease}.toast-action:hover{background:var(--color-bg-hover);text-decoration:none}@media (max-width: 767px){.toast{bottom:72px;left:16px;right:16px;transform:translate(0) translateY(8px);width:auto;justify-content:space-between}.toast.show{transform:translate(0) translateY(0)}}.offline-write-banner{position:sticky;z-index:99;flex:0 0 auto;display:flex;align-items:center;justify-content:center;height:22px;padding:0 16px;font-family:var(--font-body);font-size:var(--text-label, 12px);font-weight:500;letter-spacing:.02em;color:var(--color-text-light);background:var(--color-surface-alt);border-bottom:1px solid var(--color-border-light);transition:background-color .2s ease,color .2s ease,border-color .2s ease;-webkit-user-select:none;user-select:none}.offline-write-banner[hidden]{display:none}#offlineWriteBanner{top:calc(var(--header-height-raw, 54px) - var(--phone-bars-lift, 0px))}.offline-write-banner-detail{top:calc(var(--detail-header-height, 54px) - var(--phone-bars-detail-lift, 0px))}.offline-write-banner-icon{display:none}.offline-write-banner-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.offline-write-banner.is-chip{color:var(--color-text-light);background:var(--color-surface-alt);border-bottom-color:var(--color-border-light)}.offline-write-banner.is-banner{color:var(--color-text-muted);background:color-mix(in srgb,var(--color-warning) 14%,var(--color-surface));border-bottom-color:color-mix(in srgb,var(--color-warning) 40%,var(--color-surface))}.offline-write-banner.is-banner.state-saving,.offline-write-banner.is-banner.state-saved{color:var(--color-text-light);background:var(--color-surface-alt);border-bottom-color:var(--color-border-light)}.offline-action-card{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(.98);max-width:min(320px,calc(100vw - 48px));padding:16px 20px;text-align:center;font-family:var(--font-body);font-size:var(--text-body-sm, 14px);font-weight:500;line-height:1.4;color:var(--color-text);background:color-mix(in srgb,var(--color-warning) 15%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-warning) 50%,var(--color-surface));border-radius:14px;box-shadow:0 8px 32px #2d2a262e,0 2px 8px #2d2a2614;opacity:0;transition:opacity .3s ease,transform .3s ease;z-index:10002;pointer-events:none}.offline-action-card[hidden]{display:none}.offline-action-card.show{opacity:1;transform:translate(-50%,-50%) scale(1)}button:disabled{opacity:.6;cursor:not-allowed}[contenteditable]:focus{outline:none;caret-color:var(--color-text)}.note-dot{display:inline-block;width:11px;height:11px;margin-left:5px;color:#8b7355d9;vertical-align:-1px;-webkit-user-select:none;user-select:none}.note-dot svg{display:block;width:100%;height:100%}@keyframes noteReveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.step-content .item-text ::selection{background:#8b735540}.add-note-pill{position:absolute;z-index:10001;padding:5px 10px;font-size:12px;font-weight:500;color:#fff;background:#3c3228eb;border:none;border-radius:999px;box-shadow:0 2px 8px #0000002e;cursor:pointer;-webkit-user-select:none;user-select:none;animation:noteReveal .14s ease}.add-note-pill:hover{background:#3c3228}.add-note-pill-group{z-index:10001;display:inline-flex;align-items:stretch;background:#3c3228eb;border-radius:999px;box-shadow:0 2px 8px #0000002e;animation:noteReveal .14s ease;overflow:hidden}.add-note-pill-group .add-note-pill{position:static;border-radius:0;background:transparent;box-shadow:none;animation:none}.add-note-pill-group .add-note-pill:hover{background:#ffffff24}.add-note-pill-group .add-note-pill+.add-note-pill{border-left:1px solid rgba(255,255,255,.25)}.step-word-anchor{cursor:pointer;border-radius:2px;transition:background .12s ease}.step-word-anchor:hover,.step-word-anchor.is-open{background:#8b73551a}.step-word-anchor .note-dot,.ingredient-note-marker,.step-note-marker{display:inline-block;width:10px;height:10px;margin-left:3px;color:#1a1c1abf;vertical-align:super;position:relative;top:1px;cursor:pointer;-webkit-user-select:none;user-select:none}.step-word-anchor .note-dot svg,.ingredient-note-marker svg,.step-note-marker svg{display:block;width:100%;height:100%}@media (hover: none) and (pointer: coarse){.ingredient-note-marker:after,.step-note-marker:after{content:"";position:absolute;top:50%;left:50%;width:44px;height:1.75em;transform:translate(-50%,-50%)}.ingredient-link-icon,.recipe-inline-link{position:relative;z-index:1}}.step-word-anchor.is-open .note-dot,.ingredient-note-marker.is-open,.step-note-marker.is-open{color:#1a1c1a}.anchored-note-callout{margin:8px 0 2px;animation:noteReveal .18s ease}.anchored-note-callout+.anchored-note-callout{margin-top:4px}.anchored-note-callout-word{font-size:13px;color:#1a1c1ad9;line-height:1.3}.anchored-note-callout-text{font-size:14px;color:#1a1c1a80;font-style:italic;margin:2px 0 0 8px;padding-left:8px;border-left:1px solid rgba(26,28,26,.15);line-height:1.3}.step-level-note{font-size:14px;color:#1a1c1a80;font-style:italic;margin:8px 0 2px 8px;padding-left:8px;border-left:1px solid rgba(26,28,26,.15);line-height:1.3}.step-level-note+.step-level-note{margin-top:2px}.note-context-menu{position:fixed;z-index:10000;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;box-shadow:0 4px 16px #0000001f;padding:4px;min-width:120px;animation:noteReveal .12s ease}.note-context-menu-item{display:block;width:100%;padding:8px 12px;border:none;background:none;font-family:inherit;font-size:13px;color:var(--color-text);text-align:left;cursor:pointer;border-radius:4px}.note-context-menu-item:hover{background:#8b735514}.note-anchor-context{font-size:14px;color:var(--color-text);padding:0 0 8px;margin-bottom:0;line-height:1.4}.note-summary{margin-top:16px;padding-top:14px;border-top:1px solid rgba(0,0,0,.07)}.note-summary-group{margin-bottom:0;padding-bottom:18px}.note-summary-group+.note-summary-group{border-top:1px solid rgba(0,0,0,.07);padding-top:14px}.note-summary-group-label{font-size:14px;font-weight:600;letter-spacing:.01em;color:var(--color-text-muted);margin-bottom:10px}.note-summary-entry{margin-bottom:18px}.note-summary-entry:last-child{margin-bottom:0}.note-summary-anchor{font-size:16px;font-weight:400;color:var(--color-text-light);line-height:1.5;margin-bottom:1px}.note-summary-note-row{position:relative;display:block;margin:1px 0 14px;cursor:text}.note-summary-note-row:last-child{margin-bottom:0}.note-summary-note-row:hover{cursor:text}.note-summary-note-word,.note-summary-note-context{font-size:16px;font-weight:400;color:var(--color-text-light);line-height:1.5;margin-bottom:2px;letter-spacing:normal;text-transform:none}.note-summary-note-context em{font-style:italic;color:var(--color-text-light)}.note-summary-note{font-size:16px;color:#28221ceb;line-height:1.5;margin:0;padding-left:10px;white-space:pre-wrap}.note-reference-section{cursor:text;font-size:16px;line-height:1.5;color:#28221ceb}.note-reference-section+.note-reference-section,.note-reference-section+.note-summary-group{margin-top:20px;padding-top:16px;border-top:1px solid rgba(0,0,0,.07)}.note-reference-body{cursor:text}.note-reference-text{margin:0 0 6px}.note-reference-text:last-child{margin-bottom:0}.note-reference-list{margin:0 0 6px;padding-left:18px;list-style:disc}.note-reference-list li{margin:0 0 4px}.note-reference-list:last-child{margin-bottom:0}.note-reference-add{color:#28221c80;cursor:text;transition:color .15s}.note-reference-add:hover{color:#28221cb3}textarea.note-reference-input{display:block;width:100%;margin:0;padding:0;border:none;font-family:inherit;font-size:16px;font-weight:400;line-height:1.5;color:#28221ceb;background:none;resize:none;overflow:hidden;box-sizing:border-box}textarea.note-reference-input:focus{outline:none}.note-mynotes{margin-top:0}.note-write{margin-top:6px;font-size:16px;line-height:1.5;color:#28221c59;cursor:text;transition:color .15s}.note-mynotes:hover .note-write{color:#28221c99}.note-summary-delete{position:absolute;top:0;right:0;background:none;border:none;color:#8b73554d;cursor:pointer;font-size:10px;padding:2px 4px;opacity:0;transition:opacity .15s,color .15s}.note-summary-note-row:hover .note-summary-delete{opacity:1}.note-summary-delete:hover{color:var(--color-primary)}.note-summary-input{display:block;width:100%;font-family:inherit;font-size:16px;color:#28221ceb;line-height:1.5;border:none;margin:0;padding:0 0 0 10px;background:none;resize:none;overflow:hidden;min-height:0;height:auto;box-sizing:border-box}.note-summary-input:focus{outline:none}.note-summary-note-row.editing .note-summary-delete{display:none}.note-summary-add-affordance{font-size:14px;color:#8b735573;padding:4px 0 2px 22px;cursor:text;transition:color .15s}.note-summary-add-affordance:hover{color:#8b7355b3}.note-summary-hint-label{font-size:14px;font-weight:600;letter-spacing:.01em;color:var(--color-text-muted);margin-bottom:6px}.note-summary-hint{font-size:16px;font-style:normal;color:#28221c59;padding:18px 0 4px;border-top:1px solid rgba(0,0,0,.07);line-height:1.5}.note-section-header{padding:8px 0 6px;margin-bottom:2px}.note-section-header:not(:first-child){margin-top:12px;border-top:1px solid rgba(0,0,0,.05);padding-top:16px}.note-section-label{font-size:10px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#8b735580;display:block}.note-section-context{font-size:13px;color:var(--color-text);display:block;margin-top:2px}.instruction-item>.item-note,.instruction-item>.editable-note{margin-left:0}.editable-note{display:flex;align-items:flex-start;justify-content:space-between;font-size:14px;color:#847866;font-style:italic;margin:6px 0 10px 14px;padding:2px 0 2px 12px;border-left:1px solid rgba(139,115,85,.22);line-height:1.45}.editable-note .note-dash{font-style:normal;flex-shrink:0}.editable-note .note-text{flex:1;cursor:pointer;white-space:pre-wrap}.editable-note .note-text:hover{color:#6b5335}.note-overflow-container{position:relative}.note-overflow-btn{padding:2px 6px;font-size:14px;line-height:1;border:none;background:none;color:#847866;cursor:pointer;opacity:0;transition:opacity .15s ease,color .15s ease}.editable-note:hover .note-overflow-btn{opacity:1}.note-overflow-btn:hover{color:var(--color-text-muted)}.note-overflow-menu{position:absolute;top:100%;right:0;background:#fff;border:1px solid #e5e0d8;border-radius:6px;box-shadow:0 2px 8px #0000001a;min-width:80px;z-index:100;display:none}.note-overflow-menu.open{display:block}.note-overflow-item{display:block;width:100%;padding:8px 12px;border:none;background:none;text-align:left;font-size:13px;color:var(--color-text-muted);cursor:pointer}.note-overflow-item:first-child{border-radius:6px 6px 0 0}.note-overflow-item:last-child{border-radius:0 0 6px 6px}.note-btn{cursor:pointer;opacity:0;transition:opacity .15s ease;margin-left:8px;font-size:14px;flex-shrink:0}.detail-section li:hover .note-btn,.detail-section .instruction-step:hover .note-btn,.step-content:hover .note-btn{opacity:.5}.note-btn:hover,.note-btn:active{opacity:1}.add-note-btn{cursor:pointer;opacity:0;transition:opacity .15s ease;margin-left:6px;font-size:14px}.detail-section li:hover .add-note-btn,.detail-section .instruction-step:hover .add-note-btn{opacity:.5}.detail-section li:hover .add-note-btn:hover,.detail-section .instruction-step:hover .add-note-btn:hover{opacity:1}.note-overflow{cursor:pointer;opacity:0;transition:opacity .15s ease;margin-left:8px;color:#847866;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:2px 4px}.note-overflow .dot{width:3px;height:3px;background:currentColor;border-radius:50%}.item-note:hover .note-overflow,.editable-note:hover .note-overflow-btn{opacity:1}.note-overflow:hover{color:#8b7355}.note-popup-menu{background:#fff;border:1px solid #e5e0d8;border-radius:6px;box-shadow:0 2px 8px #0000001f;z-index:1000;overflow:hidden}.note-popup-item{display:block;width:100%;padding:8px 16px;border:none;background:none;text-align:left;font-size:13px;color:var(--color-text-muted);cursor:pointer}.note-popup-item:hover{background:#f4f2ee}.row-action-popover{background:#fff;border:1px solid #e5e0d8;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;overflow:hidden;min-width:130px}.row-action-item{display:block;width:100%;padding:12px 16px;border:none;background:none;text-align:left;font-size:14px;color:var(--color-text-muted);cursor:pointer;border-bottom:1px solid #f0ebe4}.row-action-item:last-child{border-bottom:none}.row-action-item:hover,.row-action-item:active{background:#f4f2ee}.pencil-wrapper{position:relative;display:inline-flex;align-items:center}.pencil-menu{position:absolute;top:100%;left:0;min-width:100px;background:#fff;border:1px solid #e5e0d8;border-radius:6px;box-shadow:0 2px 8px #0000001f;z-index:1000;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.pencil-wrapper:hover .pencil-menu{opacity:1;visibility:visible;transform:translateY(0)}.pencil-menu-item{display:block;width:100%;padding:8px 12px;border:none;background:none;text-align:left;font-size:13px;color:var(--color-text-muted);cursor:pointer;white-space:nowrap}.pencil-menu-item:hover{background:#f4f2ee}.note-input-wrapper{flex-basis:100%;margin:6px 0 10px 14px;padding:2px 0 2px 12px;border-left:1px solid rgba(139,115,85,.22)}.instruction-item .note-input-wrapper{margin-left:92px;width:calc(100% - 92px)}.instruction-step .note-input-wrapper,.step-content .note-input-wrapper{margin-left:24px;width:calc(100% - 24px)}.note-input{font-size:14px;font-style:italic;color:#847866;font-family:inherit;line-height:1.45;white-space:pre-wrap;word-wrap:break-word;min-height:1.45em}.note-input:focus{outline:none}.detail-section ul li.has-note,.detail-section ol li.has-note{padding-bottom:4px}.note-overflow-container{position:relative;flex-shrink:0}.note-overflow-btn{width:28px;height:28px;padding:0;border:none;background:transparent;color:#847866;font-size:16px;cursor:pointer;border-radius:4px;transition:background .15s ease,color .15s ease}.note-overflow-btn:hover{background:#0000000d;color:#8b7355}.note-overflow-menu{position:absolute;right:0;top:100%;margin-top:4px;background:#fff;border:1px solid var(--color-border);border-radius:6px;box-shadow:0 2px 8px #0000001f;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility .15s;z-index:100;min-width:120px}.note-overflow-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.note-overflow-item{display:block;width:100%;padding:8px 12px;border:none;background:none;text-align:left;font-size:13px;color:var(--color-text-muted);cursor:pointer;transition:background .1s ease}.note-overflow-item:hover{background:#f4f2ee}.fetch-status{margin-top:8px;padding:8px 12px;border-radius:6px;font-size:13px;background:var(--color-border-light);color:var(--color-text-muted);animation:fadeIn .3s ease}.fetch-status.success{background:#d4edda;color:#155724}.fetch-status.error{background:#f8d7da;color:#721c24}.file-import-outcome{position:relative;margin-top:12px;padding:12px 36px 12px 14px;border-radius:6px;font-size:13px;line-height:1.4;background:var(--color-accent-soft);color:var(--color-text);border-left:3px solid var(--color-success);animation:fadeIn .3s ease}.file-import-outcome.is-success,.file-import-outcome.is-error{background:var(--color-accent-soft);color:var(--color-text)}.file-import-outcome-message{margin:0}.file-import-outcome-dismiss{position:absolute;top:6px;right:6px;width:28px;height:28px;padding:0;border:none;background:none;font-size:20px;line-height:1;color:var(--color-text-muted);cursor:pointer;border-radius:4px}.file-import-outcome-dismiss:hover{color:var(--color-text)}.file-import-outcome-actions{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:8px}.file-import-outcome-action{background:none;border:none;padding:0;font:inherit;font-weight:600;color:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.file-import-outcome-action:hover{text-decoration:none}.file-import-outcome-action--quiet{font-weight:400;color:var(--color-text-muted, #44474a);text-decoration:none}.file-import-outcome-action--quiet:hover{text-decoration:underline}.extension-offer-title{font-weight:600}.extension-offer-lines{display:flex;flex-direction:column;gap:8px;margin-top:8px}.extension-offer-line{margin:0}.extension-offer-link,.extension-offer-paste-link{padding:0;border:none;background:none;font:inherit;font-weight:600;color:var(--color-secondary);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.extension-offer-link:hover,.extension-offer-paste-link:hover{text-decoration:none}.extension-offer-link.is-inactive{cursor:default}.extension-offer-link.is-inactive:hover{text-decoration:underline}.extension-offer-link-arrow{display:inline-block;margin-left:4px;text-decoration:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){.recipe-grid,.recipe-chapter-grid{grid-template-columns:1fr;row-gap:32px}.recipe-card-image,.recipe-chapter-collage{margin-bottom:16px}.discard-modal-content{padding:18px 20px 16px;margin:16px;border-radius:12px;max-width:260px}}.add-recipe-panel .right-panel-header,.paste-all-panel .right-panel-header{border-bottom:1px solid var(--color-border)}.add-recipe-panel .right-panel-body,.paste-all-panel .right-panel-body{padding:20px 28px 28px;min-height:0}.recipe-name-row{display:flex;align-items:flex-end;gap:12px;margin-bottom:16px}.recipe-name-field{flex:1;min-width:0}.recipe-name-field input{width:100%;font-size:var(--text-body-sm);font-family:var(--font-body);font-weight:500;padding:8px 0;border:none;border-bottom:1px solid var(--color-border);background:transparent;color:var(--color-text);outline:none;transition:border-color .15s;box-sizing:border-box}.recipe-name-field input:focus{border-bottom-color:var(--color-border-strong)}.recipe-name-field input::placeholder{color:var(--color-text-light);font-weight:400}.recipe-photo-link{flex-shrink:0;display:flex;align-items:center}.photo-link-text{font-size:var(--text-tag);color:var(--color-text-light);text-decoration:none;border-bottom:1px solid rgba(0,0,0,.15);padding-bottom:8px;cursor:pointer}.photo-link-text:hover{color:var(--color-text-muted)}.photo-link-preview{display:inline-flex;align-items:center;gap:6px}.photo-link-img{width:32px;height:32px;border-radius:6px;object-fit:cover}.photo-link-remove{background:none;border:none;font-size:14px;color:var(--color-text-light);cursor:pointer;padding:0;line-height:1}.photo-link-remove:hover{color:var(--color-text)}.inline-image-menu{padding:4px 0 8px;display:flex;gap:8px;flex-wrap:nowrap}.inline-image-option{background:none;border:1px solid var(--color-border-light);border-radius:20px;padding:6px 12px;font-size:12px;font-family:inherit;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:border-color var(--transition-fast)}.inline-image-option:hover{border-color:var(--color-border-strong);color:var(--color-text)}.inline-image-url{padding:4px 0 8px}.inline-image-url-input{width:100%;padding:8px 10px;border:1px solid var(--color-border-light);border-radius:var(--radius-lg);font-size:var(--text-body-sm);font-family:var(--font-body);color:var(--color-text);background:var(--color-bg-cool);margin-bottom:8px;box-sizing:border-box}.inline-image-url-input:focus{outline:none;border-color:var(--color-border-strong)}.inline-image-url-actions{display:flex;justify-content:flex-end;gap:12px}.paste-card{margin-bottom:0}.paste-card-label{font-size:var(--text-body);font-family:var(--font-display);font-weight:500;color:var(--color-text);margin-bottom:6px}.paste-card-hint{font-size:var(--text-tag);color:var(--color-text-light);line-height:1.4;margin-bottom:26px}.paste-card-textarea{width:100%;height:clamp(420px,55vh,620px);padding:12px;border:1px solid var(--color-border-light);border-radius:var(--radius-lg);font-size:var(--text-body-sm);font-family:var(--font-body);line-height:1.6;resize:vertical;box-sizing:border-box;background:var(--color-bg-cool)}.paste-card-textarea:focus{outline:none;border-color:var(--color-border-strong)}.paste-card-textarea::placeholder{color:var(--color-text-light)}.paste-card-footer{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:16px}.paste-card-clear{background:none;border:none;font-size:var(--text-body-sm);font-family:var(--font-body);color:var(--color-text-light);cursor:pointer;padding:4px 0}.paste-card-clear:hover{color:var(--color-text-muted)}.paste-card-split{background:var(--color-secondary);border:1px solid var(--color-secondary);border-radius:var(--radius-lg);padding:9px 22px;font-size:var(--text-body-sm);font-family:var(--font-body);font-weight:600;color:#fff;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.paste-card-split:hover{background:var(--color-secondary-hover);border-color:var(--color-secondary-hover)}.cta-primary-charcoal{background:var(--color-primary);border-color:var(--color-primary)}.cta-primary-charcoal:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.manual-entry-link{margin-top:36px}.manual-entry-divider{display:flex;align-items:center;gap:14px;margin-bottom:16px;font-size:var(--text-tag);color:var(--color-text-light)}.manual-entry-divider:before,.manual-entry-divider:after{content:"";flex:1;height:1px;background:#0000000f}.manual-entry-link a,.manual-entry-link button{font-size:var(--text-tag);color:var(--color-text-light);text-decoration:none;background:none;border:none;padding:0;font-family:inherit;cursor:pointer}.manual-entry-link a:hover,.manual-entry-link button:hover{color:var(--color-text-muted)}.manual-fields{display:none}.recipe-details-drawer{margin-top:4px;margin-bottom:12px;border:none;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));border-radius:0}.details-drawer-summary{display:flex;align-items:center;gap:6px;padding:12px 2px;min-height:44px;font-size:var(--text-body-sm);font-family:var(--font-body);font-weight:500;color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;box-sizing:border-box}.details-drawer-summary::-webkit-details-marker{display:none}.details-drawer-summary:after{content:"›";font-size:16px;margin-left:auto;color:var(--color-text-light);transition:transform var(--transition-fast)}.recipe-details-drawer[open] .details-drawer-summary:after{transform:rotate(90deg)}.details-drawer-preview{font-size:var(--text-label);font-weight:400;color:var(--color-text-light);margin-left:8px;flex:1;text-align:right;opacity:.7}.details-drawer-body{padding:0 2px 12px}.recipe-header-left{display:flex;flex-direction:column;gap:0;min-width:0;flex:1}.header-source-link{font-size:13px;font-weight:400;color:var(--color-text-light);display:none}.header-source-link.visible{display:inline}.header-source-link a{color:var(--color-secondary);text-decoration:none}.header-source-link a:hover{text-decoration:underline}.url-section{text-align:left;padding:4px 0 0}.url-section.collapsed{display:none}.url-field-label{display:block;font-size:13px;font-weight:500;color:var(--color-text-light);margin-bottom:8px}.url-input-row{display:flex;gap:10px}.url-input{flex:1;padding:11px 14px;border:1px solid var(--color-border);border-radius:8px;font-size:15px;font-family:inherit;background:var(--color-bg-cool)}.url-input:focus{outline:none;border-color:var(--color-secondary)}.fetch-btn{padding:11px 20px;background:var(--color-secondary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;white-space:nowrap}.fetch-btn:disabled{background:#c4c4c4;cursor:not-allowed}.fetch-btn.loading{position:relative;color:transparent}.fetch-btn.loading:after{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin:-10px 0 0 -10px;border:2px solid transparent;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.manual-link{margin-top:14px;font-size:13px;color:var(--color-text-light)}.form-section>.manual-link{margin:0 0 32px}.manual-link a{color:var(--color-text-light);text-decoration:underline;text-decoration-color:#00000026;text-underline-offset:2px;cursor:pointer;transition:color .12s}.manual-link a:hover{color:var(--color-text)}#urlSection .photo-panel-option:first-of-type{margin-top:24px}.fetch-status{margin-top:12px;font-size:14px;display:none}.fetch-status.visible{display:block}.fetch-status.success{color:var(--color-secondary)}.fetch-status.error{color:var(--color-primary)}.fetch-status.error a{color:var(--color-secondary);text-decoration:underline;margin-left:4px;cursor:pointer}.form-section{display:none;padding:24px 0 0}.title-field{margin-bottom:8px}.title-field.hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.title-field input{width:100%;padding:6px 0;font-family:var(--font-display);font-size:1.25rem;font-weight:500;color:var(--color-text);border:none;border-bottom:1px solid transparent;background:transparent;transition:border-color .2s}.title-field input:focus{outline:none;border-bottom-color:var(--color-secondary)}.title-field input::placeholder{color:var(--color-text-light);font-weight:400}.form-section.visible{display:block;animation:fadeInUp .3s ease-out}.form-group{margin-bottom:24px}.form-group label{display:block;font-weight:500;margin-bottom:8px;color:var(--color-text)}.form-group label .required{color:var(--color-primary)}.title-row{display:flex;align-items:center;gap:12px;margin-bottom:16px}.title-row label{font-weight:500;color:var(--color-text);white-space:nowrap;margin:0}.title-row input{flex:1;padding:12px 14px;border:1px solid var(--color-border);border-radius:10px;font-size:16px;font-family:inherit;background:var(--color-bg-cool)}.title-row input:focus{outline:none;border-color:var(--color-secondary)}.form-group input[type=text],.form-group input[type=url],.form-group textarea{width:100%;padding:14px 16px;border:1px solid var(--color-border);border-radius:10px;font-size:16px;font-family:inherit;background:var(--color-bg-cool)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-secondary)}.form-group .hint{font-size:13px;color:var(--color-text-light);margin-top:6px}.large-textarea{min-height:150px;resize:vertical;line-height:1.6}.large-textarea.instructions{min-height:180px}.image-group{margin-bottom:16px}.image-picker{border:1px dashed var(--color-border);border-radius:10px;padding:16px 20px;cursor:pointer;transition:all .2s ease;background:var(--color-background);display:flex;align-items:center;gap:12px}.image-picker:hover{border-color:var(--color-secondary);background:#f4f2ee}.image-picker.has-image{padding:0;border-style:solid;overflow:hidden;display:block;position:relative}.image-picker-icon{font-size:24px;color:var(--color-text-light)}.image-picker-text{color:var(--color-text-light);font-size:14px;line-height:1.3}.image-picker-text strong{color:var(--color-secondary);display:block}.image-picker-text span{color:var(--color-text-light)}.image-preview{width:100%;height:140px;object-fit:cover;display:block}.image-remove-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:#00000080;color:#fff;border:none;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.image-picker:hover .image-remove-btn{opacity:1}.image-remove-btn:hover{background:#000000b3}.tags-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:20px}.tags-label{font-weight:500;color:var(--color-text);margin-right:4px}.tags-picker{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--color-border);border-radius:20px;cursor:pointer;background:var(--color-surface);font-size:14px;color:var(--color-text-light)}.tags-picker:hover{border-color:var(--color-secondary);color:var(--color-secondary)}.tags-picker svg{width:16px;height:16px}.selected-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#f4f2ee;border:1px solid var(--color-border);border-radius:20px;font-size:14px;color:#5c5c5c;text-transform:capitalize}.selected-tag .remove{cursor:pointer;color:var(--color-text-light);font-size:16px;line-height:1}.selected-tag .remove:hover{color:var(--color-primary)}.remove-tag-btn{background:none;border:none;cursor:pointer;color:var(--color-text-light);font-size:16px;line-height:1;padding:0;margin-left:2px}.remove-tag-btn:hover{color:var(--color-primary)}.add-more-tags-btn{width:32px;height:32px;border-radius:50%;border:1px dashed var(--color-border-light);background:transparent;color:var(--color-text-light);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s}.add-more-tags-btn:hover{border-color:var(--color-secondary);color:var(--color-text-muted)}.save-btn{width:100%;padding:16px;background:var(--color-primary);color:#fff;border:none;border-radius:12px;font-size:17px;font-weight:500;cursor:pointer;font-family:inherit;margin-top:16px}.save-btn:disabled{background:#d4a090;cursor:not-allowed}.save-recipe-btn{width:100%;padding:14px;background:#fff;color:var(--color-primary);border:1.5px solid var(--color-secondary);border-radius:var(--radius-xl);font-size:var(--text-body);font-weight:600;cursor:pointer;transition:background var(--transition-fast);margin-top:8px}.save-recipe-btn:hover:not(:disabled){background:#b5604a0d}.save-recipe-btn:disabled{opacity:.5;cursor:not-allowed}.add-tags-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px dashed var(--color-border-light);border-radius:20px;background:transparent;color:var(--color-text-light);font-size:var(--text-body-sm);cursor:pointer;transition:border-color .15s,color .15s}.add-tags-btn:hover{border-color:var(--color-secondary);color:var(--color-text-muted)}.add-tags-icon{font-size:16px;font-weight:500}.metadata-fields{margin-bottom:4px}.metadata-row{display:flex;gap:8px;margin-bottom:8px}.metadata-field{flex:1}.metadata-field-wide{flex:2}.metadata-field label{font-size:var(--text-label);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;display:block}.metadata-field input{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:var(--text-body-sm);font-family:inherit;background:var(--color-bg-cool)}.metadata-field input:focus{outline:none;border-color:var(--color-primary)}.metadata-field input[readonly]{background:var(--color-bg);color:var(--color-text-muted)}.source-notes-input{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:var(--text-body-sm);font-family:inherit;background:var(--color-bg-cool);resize:vertical}.source-notes-input:focus{outline:none;border-color:var(--color-primary)}.field:has(.image-picker){margin-bottom:8px}.details-strip{display:flex;align-items:center;gap:6px;padding:6px 0;margin-bottom:4px;flex-wrap:wrap}.details-item{background:none;border:none;padding:4px 0;cursor:pointer;font-family:inherit;font-size:14px;color:var(--color-text-muted);display:flex;align-items:center;gap:4px}.details-item:hover{color:var(--color-text)}.details-item.active{color:var(--color-text);font-weight:600}.details-item.has-value .details-label{color:var(--color-text)}.details-dot{color:var(--color-text-light);font-size:14px;-webkit-user-select:none;user-select:none}.details-preview{font-size:13px;color:var(--color-text-light);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.details-source{cursor:default}.details-panel{position:relative;padding:12px 0;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));margin-bottom:8px}.details-panel-close{position:absolute;top:8px;right:0;background:none;border:none;color:var(--color-text-light);font-size:18px;line-height:1;padding:4px 8px;cursor:pointer;opacity:.5;transition:opacity .15s}.details-panel-close:hover{opacity:.8}.details-panel .time-inputs{display:flex;gap:8px}.details-panel .time-inputs .metadata-field{flex:1}.details-panel .servings-input{max-width:200px}.details-panel .servings-input input{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:var(--text-body-sm);font-family:inherit;background:var(--color-bg-cool)}.details-panel .servings-input input:focus{outline:none;border-color:var(--color-primary)}.details-panel .source-input{max-width:300px}.details-panel .filter-chips-inline{padding:4px 0}.filter-category{margin-bottom:14px}.filter-category:last-child{margin-bottom:0}.filter-category-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:8px}.filter-category .filter-chips{display:flex;flex-wrap:wrap;gap:8px}.metadata-edit-section{margin-bottom:8px}.metadata-edit-section .details-strip{margin-bottom:0}.metadata-edit-section .details-panel{margin-top:0}.metadata-edit-section .servings-input{max-width:300px}.delete-scrim{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0003;z-index:99}.delete-scrim.open{display:block}.delete-dialog{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:320px;max-width:calc(100vw - 48px);min-width:min-content;background:var(--color-surface);border-radius:14px;box-shadow:0 12px 40px #00000026;padding:24px 24px 20px;z-index:100;animation:deleteDialogFadeIn .15s ease-out}@keyframes deleteDialogFadeIn{0%{opacity:0}to{opacity:1}}.delete-dialog.open{display:block}.delete-dialog-title{font-family:var(--font-body);font-size:16px;font-weight:600;color:var(--color-text);margin:0 0 6px}.delete-dialog-body{font-size:13.5px;font-weight:400;color:var(--color-text-muted);margin:0 0 20px;line-height:1.45}.delete-dialog-actions{display:flex;gap:10px;justify-content:flex-end}.delete-dialog-cancel,.delete-dialog-confirm{padding:8px 18px;border-radius:8px;font-size:13.5px;font-family:inherit;white-space:nowrap;cursor:pointer;transition:all .15s}.delete-dialog-cancel{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-weight:400}.delete-dialog-cancel:hover{background:var(--color-border-light);color:var(--color-text)}.delete-dialog-confirm{background:none;border:1px solid var(--color-border);color:var(--color-text);font-weight:500}.delete-dialog-confirm:hover{background:var(--color-border-light)}.delete-dialog-confirm.is-primary{background:#46563d;border-color:#46563d;color:#f7f5ef;font-weight:600}.delete-dialog-confirm.is-primary:hover{background:#38452f;border-color:#38452f}.delete-dialog-confirm.is-danger{background:var(--color-danger);border-color:var(--color-danger);color:#fff;font-weight:600}.delete-dialog-confirm.is-danger:hover{background:var(--color-danger)}.delete-dialog-cancel.is-quiet,.delete-dialog-confirm.is-quiet{background:none;border-color:transparent;color:var(--color-text-muted)}.delete-dialog-cancel.is-quiet:hover,.delete-dialog-confirm.is-quiet:hover{background:var(--color-border-light);color:var(--color-text)}.delete-dialog.is-compact{padding:18px 22px 14px}.delete-dialog.is-compact .delete-dialog-body{margin:0 0 14px}.delete-dialog-footer{margin:12px 0 0;font-size:var(--text-tag);color:var(--color-text-muted);text-align:right}.delete-dialog-footer-link{padding:0;border:none;background:none;font:inherit;color:var(--color-text);text-decoration:underline;cursor:pointer}.delete-popover{position:fixed;width:300px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 20px #00000026;overflow:visible;animation:confirmAppear .12s ease-out}@media (max-width: 767px){.delete-dialog{top:auto;bottom:0;left:0;right:0;transform:none;width:100%;max-width:100%;min-width:0;border-radius:16px 16px 0 0;box-shadow:0 -4px 20px #0000001f;padding:24px 24px 32px;animation:slideUp .2s ease-out}.delete-dialog-title{font-size:17px}.delete-dialog-body{font-size:14.5px}.delete-dialog-actions{justify-content:stretch;flex-wrap:wrap}.delete-dialog-cancel,.delete-dialog-confirm{flex:1 1 auto;padding:12px 18px;font-size:15px}.delete-dialog-footer{text-align:center;font-size:var(--text-body-sm)}}.ack-dialog{width:384px;padding:28px 28px 24px}.ack-heading{font-family:var(--font-body);font-size:16px;font-weight:600;color:var(--color-text);margin:0 0 4px;line-height:1.4}.ack-subject{font-family:var(--font-body);font-size:14px;font-style:italic;font-weight:400;color:var(--color-text-muted);margin:0 0 4px;line-height:1.4}.ack-remedy{font-size:13.5px;color:var(--color-text-muted);line-height:1.45;margin:0}.ack-heading:last-child,.ack-subject:last-child,.ack-remedy{margin-bottom:22px}.ack-dialog .ack-actions{display:flex;justify-content:center}.ack-dialog .ack-dismiss{padding:8px 28px;border-radius:8px;font-size:13.5px;font-family:inherit;background:none;border:1px solid var(--color-border);color:var(--color-text);font-weight:500;cursor:pointer;transition:all .15s}.ack-dialog .ack-dismiss:hover{background:var(--color-border-light)}.ack-dialog:focus{outline:none}@media (max-width: 767px){.ack-dialog{width:100%;padding:24px 24px 28px}.ack-dialog .ack-dismiss{width:100%;padding:12px 18px;font-size:15px}}.recipe-menu-divider{height:1px;background:var(--color-border-light);margin:4px 12px}.recipe-menu-item-danger{color:var(--color-text-muted);font-weight:400}.recipe-menu-item-danger:hover{color:var(--color-text);background:var(--color-surface-alt)}.recipe-menu-item-danger:hover svg{color:var(--color-text-muted)}.recipe-menu-dropdown.confirm-state{width:300px;overflow:visible;animation:confirmAppear .12s ease-out}@keyframes confirmAppear{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.recipe-menu-confirm{padding:14px 16px}.recipe-menu-confirm-title{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--color-text);margin:0 0 4px}.recipe-menu-confirm-body{font-size:12.5px;font-weight:400;color:var(--color-text-muted);margin:0 0 10px;line-height:1.4}.recipe-menu-confirm-actions{display:flex;gap:18px;justify-content:flex-end}.recipe-menu-confirm-cancel,.recipe-menu-confirm-delete{background:none;border:none;padding:2px 0;font-size:12.5px;font-family:inherit;cursor:pointer;transition:color .15s,opacity .15s}.recipe-menu-confirm-cancel{color:var(--color-text-muted);font-weight:400}.recipe-menu-confirm-cancel:hover{color:var(--color-text)}.recipe-menu-confirm-delete{color:var(--color-text);font-weight:600}.recipe-menu-confirm-delete:hover{text-decoration:underline}.success-message{display:none;text-align:center;padding:60px 24px}.success-message.visible{display:block;animation:fadeInUp .3s ease-out}.success-icon{font-size:20px;color:var(--color-text-muted);margin-bottom:12px}.success-message h2{font-family:var(--font-display);font-size:1rem;color:var(--color-text-muted);margin-bottom:8px}.success-message p{color:var(--color-text-light)}.image-source-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:none;align-items:center;justify-content:center;z-index:9500}.image-source-modal.open{display:flex}.image-source-content{background:var(--color-surface);border-radius:14px;padding:6px;width:260px;animation:scaleIn .2s ease-out;box-shadow:0 8px 32px #00000026}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.image-source-option{display:block;padding:11px 16px;border:none;background:none;width:100%;font-size:14px;font-family:inherit;font-weight:500;cursor:pointer;border-radius:8px;color:var(--color-text);text-align:left}.image-source-option:hover{background:#f4f2ee}.image-source-divider{border:none;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));margin:2px 12px}.image-source-cancel{display:block;width:100%;padding:10px 16px;border:none;background:none;border-radius:8px;font-size:14px;font-family:inherit;cursor:pointer;color:var(--color-text-light);text-align:left}.image-source-cancel:hover{background:#f4f2ee}.ingredient-link-text{text-decoration:underline;text-decoration-color:var(--color-border-strong);text-underline-offset:2px}.ingredient-link-icon{font-size:11px;color:var(--color-secondary);margin-left:4px;vertical-align:super}.has-link{cursor:pointer}.has-link:active{opacity:.7}.ingredient-link-sheet{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:none;display:none;z-index:9500}.ingredient-link-sheet.open{display:block}.ingredient-link-content{background:var(--color-surface);border-radius:14px;padding:6px;width:200px;animation:scaleIn .12s ease-out;box-shadow:0 8px 32px #00000026;pointer-events:auto}.ingredient-link-option{display:block;padding:8px 16px;cursor:pointer;border-radius:8px}.ingredient-link-option:hover{background:#f4f2ee}.ingredient-link-option-text{display:block;font-size:15px;font-weight:500;color:var(--color-text)}.ingredient-link-option-sub{display:block;font-size:12px;color:var(--color-text-light);margin-top:2px}.ingredient-link-divider{border:none;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));margin:2px 12px}.ingredient-link-cancel{display:block;width:100%;padding:10px 16px;border:none;background:none;border-radius:8px;font-size:14px;font-family:inherit;cursor:pointer;color:var(--color-text-light);text-align:left}.ingredient-link-cancel:hover{background:#f4f2ee}.url-input-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:none;align-items:center;justify-content:center;z-index:9500;padding:24px}.url-input-modal.open{display:flex}.url-input-modal-content{background:var(--color-bg-cool);border-radius:14px;padding:28px 24px 24px;width:100%;max-width:380px;animation:scaleIn .2s ease-out}.url-input-modal-content h3{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--color-text);margin:0 0 20px}.photo-link-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:6px}.url-input-modal-content input{width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:8px;font-size:15px;font-family:inherit;color:var(--color-text);background:var(--color-bg-cool);margin-bottom:8px;transition:border-color .15s ease}.url-input-modal-content input:focus{outline:none;border-color:var(--color-secondary)}.photo-link-hint{font-size:12px;color:var(--color-text-light);margin:0 0 20px;line-height:1.4}.url-input-modal-actions{display:flex;gap:10px;justify-content:flex-end}.url-input-modal-actions button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer}.url-input-modal-actions .cancel-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-light)}.url-input-modal-actions .confirm-btn{background:var(--color-secondary);border:none;color:#fff}.url-input-modal-actions .confirm-btn:disabled{opacity:.4;cursor:default}.tags-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:none;align-items:center;justify-content:center;z-index:9500}.tags-modal.open{display:flex}.tags-modal-content{background:var(--color-surface);border-radius:16px;width:100%;max-width:500px;max-height:70vh;margin:0 16px;display:flex;flex-direction:column;animation:scaleIn .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.tags-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-border-light)}.tags-modal-header h3{font-family:var(--font-display);font-size:18px;font-weight:500;margin:0}.tags-modal-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-wrap:wrap;gap:8px}.tag-chip{height:30px;padding:0 12px;border-radius:15px;font-size:var(--text-tag);font-family:var(--font-body);font-weight:500;white-space:nowrap;cursor:pointer;transition:all .15s;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);text-transform:capitalize;display:inline-flex;align-items:center}.tag-chip:hover{border-color:var(--color-border-strong);color:var(--color-text)}.tag-chip.active{border-color:var(--color-primary);color:var(--color-text);background:var(--color-surface)}.tag-option{display:flex;align-items:center;gap:14px;padding:14px 20px;cursor:pointer}.tag-option:hover{background:#f4f2ee}.tag-checkbox{width:22px;height:22px;border:2px solid var(--color-border);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tag-option.selected .tag-checkbox{background:var(--color-secondary);border-color:var(--color-secondary)}.tag-checkbox svg{display:none;color:#fff}.tag-option.selected .tag-checkbox svg{display:block}.tag-label{font-size:16px;text-transform:capitalize}.tags-modal-footer{padding:16px 20px;border-top:1px solid var(--color-border)}.tags-done-btn{width:100%;padding:14px;background:var(--color-secondary);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:500;cursor:pointer;font-family:inherit}.hidden-input{display:none}.edit-panel{width:400px}.edit-panel-section{padding:16px 20px;border-bottom:1px solid var(--color-border)}.edit-panel-section-label{font-size:11px;font-weight:600;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:12px;font-family:var(--font-body)}.edit-panel-action{display:block;width:100%;text-align:left;padding:10px 0;font-size:14px;font-family:var(--font-body);color:var(--color-text);background:none;border:none;cursor:pointer;transition:color .15s}.edit-panel-action:hover{color:var(--color-primary)}.edit-panel-action:disabled{color:var(--color-text-muted);cursor:default}.edit-panel-section-expand{padding:8px 0 0}.edit-panel-add-section{margin-top:4px;color:var(--color-primary);font-weight:500}.edit-panel-divider{height:1px;background:var(--color-border-light);margin:8px 0}.edit-panel-section-input{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;font-family:var(--font-body);margin-bottom:4px;box-sizing:border-box;background:var(--color-bg-cool);color:var(--color-text)}.edit-panel-section-input:focus{outline:none;border-color:var(--color-primary)}.edit-panel-section-input::placeholder{color:var(--color-text-muted)}.edit-panel-detail-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 0;font-size:14px;font-family:var(--font-body);color:var(--color-text);background:none;border:none;cursor:pointer;transition:color .15s}.edit-panel-detail-toggle:hover,.edit-panel-detail-toggle.active{color:var(--color-primary)}.edit-panel-detail-name{font-weight:500}.edit-panel-detail-preview{font-size:13px;color:var(--color-text-muted);text-align:right;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-panel-detail-content{padding:8px 0 12px}.edit-panel-detail-content .time-inputs,.edit-panel-detail-content .servings-input,.edit-panel-detail-content .source-input{display:flex;flex-direction:column;gap:10px}.edit-panel-detail-content .metadata-field{display:flex;flex-direction:column;gap:4px}.edit-panel-detail-content .metadata-field label{font-size:11px;font-weight:600;letter-spacing:.5px;color:var(--color-text-muted);font-family:var(--font-body)}.edit-panel-detail-content .metadata-field input{padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;font-family:var(--font-body);background:var(--color-bg-cool);color:var(--color-text)}.edit-panel-detail-content .metadata-field input:focus{outline:none;border-color:var(--color-primary)}.edit-panel-detail-content .filter-chips-inline{max-height:300px;overflow-y:auto}.editable-list{list-style:none;padding:0;margin:0}.ingredient-item,.instruction-item{position:relative;margin:0;padding:0;width:100%;transition:all .15s ease}.ingredient-item.dragging,.instruction-item.dragging{opacity:.5;background:var(--color-border)}.drop-indicator{position:fixed;height:2px;background:var(--color-secondary);border-radius:2px;pointer-events:none;z-index:1000;display:none}.detail-body.dragging-ingredients #dIngredientsWrap,.detail-body.dragging-steps #dInstructionsWrap{position:relative}.detail-body.dragging-ingredients #dIngredientsWrap:after,.detail-body.dragging-steps #dInstructionsWrap:after{content:"";position:absolute;left:0;right:0;top:100%;height:72px;z-index:50}.ingredient-section-name.dragging{opacity:.4}.inline-add{padding-left:0}.inline-add-trigger,.inline-add-option{display:block;width:100%;background:none;border:none;padding:7px 0;font-family:var(--font-body);font-size:15px;text-align:left;color:var(--color-text-light);cursor:pointer;transition:color .15s ease}.inline-add-trigger:hover,.inline-add-option:hover{color:var(--color-text)}.inline-add-options{display:flex;flex-direction:column;padding-left:16px}.inline-add-options[hidden]{display:none}.inline-add-step{padding-left:0}.ingredient-content{padding:2px 8px;margin:-3px -9px;position:relative}.item-text:empty:before{content:"Add ingredient";color:var(--color-text-light);opacity:.5;font-style:italic;pointer-events:none}.instruction-text.item-text:empty:before{content:"Add step"}.instruction-content{padding:14px 8px;margin:-1px -9px;position:relative}.ingredient-bullet{position:absolute;left:0;color:var(--color-secondary);font-weight:700}.edit-mode .ingredient-bullet{display:none}.drag-handle{display:none;cursor:grab;padding:8px;color:#c4b5a6;font-size:16px;-webkit-user-select:none;user-select:none;touch-action:none;min-width:24px;min-height:44px;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease}.drag-handle:hover{color:var(--color-secondary)}.drag-handle:active{cursor:grabbing;color:var(--color-secondary)}.edit-mode .instruction-item:not(.instruction-section-item) .drag-handle{display:flex}.edit-mode .ingredient-item .drag-handle,.edit-mode .ingredient-item .inline-actions,.edit-mode .instruction-section-item .drag-handle,.edit-mode .instruction-section-item .inline-actions{display:none}.edit-mode .ingredient-content.focused .drag-handle,.edit-mode .instruction-section-item .instruction-content.focused .drag-handle{display:flex}@media (hover: hover){.edit-mode .ingredient-item:hover .drag-handle,.edit-mode .instruction-section-item:hover .drag-handle{display:flex}}.edit-mode .ingredient-item:hover .drag-handle,.edit-mode .instruction-item:hover .drag-handle,.edit-mode .ingredient-content.focused .drag-handle,.edit-mode .instruction-content.focused .drag-handle{opacity:1}.edit-mode .ingredient-content,.edit-mode .instruction-content{display:flex;flex-wrap:wrap;align-items:center}.edit-mode .instruction-content .drag-handle{order:1}.edit-mode .step-number{order:2}.edit-mode .instruction-content .link-chip{order:3}.edit-mode .instruction-content .inline-actions{order:4;margin-left:auto}.edit-mode .instruction-item:not(.instruction-section-item) .instruction-text{order:5;flex-basis:100%}.edit-mode .ingredient-content .ingredient-text,.edit-mode .instruction-section-item .instruction-text{order:1;flex:1 1 100%;min-width:0;text-align:left}.edit-mode .ingredient-content .drag-handle,.edit-mode .instruction-section-item .drag-handle{position:absolute;left:-17px;width:20px;height:24px;min-width:0;min-height:0;padding:0;font-size:13px;margin:0}.edit-mode .ingredient-content .inline-actions,.edit-mode .instruction-section-item .inline-actions{position:absolute;right:0;margin:0;padding-left:0}.edit-mode .ingredient-content.focused .ingredient-text,.edit-mode .instruction-section-item .instruction-content.focused .instruction-text{padding-right:60px}.edit-mode .ingredient-item{display:block}.edit-mode .ingredient-content .drag-handle,.edit-mode .ingredient-content .inline-actions{top:2px}.edit-mode .instruction-section-item .drag-handle,.edit-mode .instruction-section-item .inline-actions{top:0}.edit-mode .instruction-text{text-align:left}.edit-mode .instruction-item:not(.instruction-section-item) .instruction-text{font-size:var(--text-reading);line-height:1.65;color:var(--color-text)}.edit-mode .step-number{display:block;font-size:14px;font-weight:600;color:#1a1c1a73;margin-bottom:4px;margin-right:0}.edit-mode .instruction-item:first-child .instruction-content{padding-top:0}.edit-mode .instruction-item:not(.instruction-section-item) .instruction-content .drag-handle{position:relative;width:20px;height:20px;min-width:0;min-height:0;padding:0;font-size:13px;flex-shrink:0}.edit-mode .instruction-item:not(.instruction-section-item) .drag-handle{margin:0 6px 4px 0}.edit-mode .ingredient-content .drag-handle:after,.edit-mode .instruction-section-item .drag-handle:after{content:"";position:absolute;top:-10px;bottom:-10px;left:-2px;right:-2px}.edit-mode .instruction-item:not(.instruction-section-item) .drag-handle:after{content:"";position:absolute;top:-24px;bottom:-2px;left:-12px;right:-12px}.step-number{display:block}.ingredient-text,.instruction-text{flex:1;line-height:1.5;min-height:24px}.ingredient-text:focus,.instruction-text:focus{outline:none}.note-icon{font-size:14px;margin-left:4px;flex-shrink:0}.inline-actions{display:flex;gap:6px;margin-left:auto;padding-left:12px;flex-shrink:0;opacity:0;visibility:hidden;transition:opacity .12s ease,visibility .12s ease}.edit-mode .ingredient-content.focused .inline-actions,.edit-mode .instruction-content.focused .inline-actions{opacity:1;visibility:visible}.edit-mode .ingredient-content.focused .inline-actions,.edit-mode .instruction-section-item .instruction-content.focused .inline-actions{display:flex}.action-btn{padding:4px 10px;background:#f4f2ee;border:1px solid var(--color-border-light);border-radius:6px;font-size:12px;color:var(--color-text-muted);cursor:pointer;font-family:inherit;white-space:nowrap}.action-btn:hover{background:var(--color-border-light)}.action-btn.delete{color:var(--color-text-light);background:none;border:none;opacity:.5;font-size:14px;padding:4px 6px}.action-btn.delete:hover{opacity:1;color:var(--color-primary);background:none}.link-chip{display:inline-flex;align-items:center;gap:5px;max-width:240px;margin-left:8px;padding:3px 9px;border:1px solid var(--color-border-light);border-radius:999px;background:#f4f2ee;color:var(--color-primary);font-family:inherit;font-size:12px;line-height:1.2;cursor:pointer;flex-shrink:0}.link-chip:hover{border-color:var(--color-border-strong)}.ing-chip-row{order:10;flex-basis:100%;margin:4px 0 2px}.ingredient-item .ingredient-content{flex-wrap:wrap}.ing-chip-row .link-chip{margin-left:0}.link-chip svg{flex-shrink:0}.link-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-btn.note-btn-edit{padding:2px 6px;font-size:12px;font-style:italic;line-height:1;color:#847866;border:none;background:none}.action-btn.note-btn-edit:hover{color:#b87333;background:none}li.has-note .action-btn.note-btn-edit{display:none}li.inline-delete-confirm{border-bottom:1px solid var(--color-border-light)}.inline-delete-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0 12px 20px;opacity:0;animation:deleteRowIn .15s ease-out forwards}@keyframes deleteRowIn{0%{opacity:0}to{opacity:1}}.inline-delete-label{font-size:14px;font-weight:400;color:var(--color-text-muted);font-style:italic}.inline-delete-actions{display:flex;gap:8px;margin-left:auto;padding-left:12px}.inline-delete-cancel,.inline-delete-confirm-btn{padding:4px 10px;border-radius:6px;font-size:12px;font-family:inherit;cursor:pointer;transition:all .15s;white-space:nowrap}.inline-delete-cancel{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-weight:400}.inline-delete-cancel:hover{background:var(--color-border-light);color:var(--color-text)}.inline-delete-confirm-btn{background:none;border:1px solid var(--color-border);color:var(--color-primary);font-weight:500}.inline-delete-confirm-btn:hover{background:var(--color-border-light)}.section-header-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0}.section-header-row.no-name{justify-content:flex-end;padding:0}.ingredient-section-name{font-family:var(--font-body);font-size:12px;font-weight:500;color:#1a1c1a8c;text-transform:uppercase;letter-spacing:.1em;padding:0 0 6px;margin:28px 0 8px;border-bottom:1px solid rgba(26,28,26,.1);background:transparent;border-radius:0;display:flex;justify-content:space-between;align-items:center}.ingredient-section-block:first-child .ingredient-section-name{margin-top:0}.section-drag-handle{color:#c4c4c4;font-size:12px;font-weight:700;letter-spacing:1px;margin-right:0;cursor:grab;padding:4px 2px;user-select:none;-webkit-user-select:none;opacity:0;width:0;overflow:hidden;transition:opacity .15s,width .15s,margin .15s}.ingredient-section-name:hover .section-drag-handle{opacity:1;width:auto;margin-right:8px}.section-drag-handle:hover{color:#999}.section-drag-handle:active{cursor:grabbing}.section-name-text{outline:none;flex:1;min-width:0}.section-menu-container{position:relative}.section-menu-btn{width:28px;height:28px;border:none;background:transparent;border-radius:6px;font-size:16px;font-weight:700;color:var(--color-text-light);cursor:pointer;transition:all .15s;letter-spacing:2px}@media (hover: hover){.edit-mode .section-menu-btn{opacity:0;transition:opacity .15s ease}.edit-mode .section-header-row:hover .section-menu-btn,.edit-mode .section-title-row:hover .section-menu-btn,.edit-mode .section-menu-btn:focus-visible,.edit-mode .section-menu-container:has(.section-menu.open) .section-menu-btn,.edit-mode .ingredient-content.focused .section-menu-btn{opacity:1}}.section-menu-btn:hover{background:var(--color-border-light);color:var(--color-text)}.section-menu{display:none;position:absolute;right:0;top:100%;margin-top:4px;z-index:100;overflow:hidden;text-transform:none;letter-spacing:normal}.section-menu.open{display:block;animation:fadeIn .15s ease-out}.section-menu.confirm-state{width:300px;overflow:visible;animation:confirmAppear .12s ease-out}.ingredient-row-menu .section-menu-item{white-space:nowrap}.section-menu-item .icon{color:var(--color-text-muted)}.section-menu-item.danger,.section-menu-item.danger .icon{color:var(--color-primary)}.section-menu-divider{height:1px;background:var(--color-border);margin:4px 0}.ingredient-section-block{margin-bottom:8px}.add-item-btn{display:none;margin:8px 0 0 20px;padding:6px 12px;background:transparent;border:1px dashed var(--color-border);border-radius:6px;font-size:13px;color:var(--color-text-light);cursor:pointer;transition:all .15s;font-family:inherit}.edit-mode .add-item-btn{display:inline-block}.add-item-btn:hover{border-color:var(--color-secondary);color:var(--color-secondary);background:#f8faf7}.add-section-btn{display:none;margin:16px 0 0 20px;padding:6px 12px;background:transparent;border:1px dashed var(--color-border);border-radius:6px;font-size:13px;color:var(--color-text-light);cursor:pointer;transition:all .15s;font-family:inherit}.edit-mode .add-section-btn{display:inline-block}.add-section-btn:hover{border-color:var(--color-secondary);color:var(--color-secondary);background:#f8faf7}.paste-all-overlay{display:none}.paste-all-overlay.open{display:block}.replace-checkbox{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:14px;color:var(--color-text-muted);cursor:pointer}.replace-checkbox input{width:18px;height:18px;cursor:pointer}.paste-scope-prompt{padding:0}.paste-scope-msg{font-size:14px;color:var(--color-text);line-height:1.5;margin-bottom:16px}.paste-scope-options{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.paste-scope-option{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--color-text);cursor:pointer}.paste-scope-option input[type=radio]{width:16px;height:16px;margin:0;accent-color:var(--color-secondary)}.paste-scope-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px}.paste-scope-actions .cancel-btn{padding:10px 20px;background:transparent;border:1px solid var(--color-border);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;color:var(--color-text-muted)}.paste-scope-actions .confirm-btn{padding:10px 20px;background:var(--color-secondary);border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;color:#fff}.smart-paste-toast{position:fixed;bottom:160px;left:50%;transform:translate(-50%) translateY(20px);background:#333;border-radius:12px;padding:12px 16px;box-shadow:0 4px 20px #00000040;z-index:300;opacity:0;pointer-events:none;transition:all .25s ease}.smart-paste-toast.show{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.smart-paste-content{display:flex;align-items:center;gap:12px}.smart-paste-icon{font-size:18px}.smart-paste-text{color:#fff;font-size:14px}.smart-paste-text strong{color:#90ee90}.smart-paste-actions{display:flex;gap:8px;margin-left:8px}.smart-paste-actions .split-btn{padding:6px 14px;background:var(--color-secondary);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer}.smart-paste-actions .keep-one-btn{padding:6px 14px;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer}.smart-paste-actions .keep-one-btn:hover{border-color:#fff;background:#ffffff1f}.smart-paste-actions .dismiss-btn{width:26px;height:26px;background:#ffffff26;color:#fff;border:none;border-radius:50%;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}.smart-paste-actions .dismiss-btn:hover{background:#ffffff40}.ingredient-note,.instruction-note{font-size:13px;color:#8b7355;font-style:italic;margin:4px 0 8px 20px;padding:6px 10px;background:#fff9f0;border-left:2px solid #D4A574;border-radius:0 6px 6px 0}.instruction-note{margin-left:48px}.note-icon{margin-left:8px;color:#847866}.edit-tag-picker .tags-modal-content{max-height:60vh}.note-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:none;align-items:center;justify-content:center;z-index:2000;padding:24px}.note-modal.open{display:flex}.note-modal-content{background:var(--color-surface);border-radius:12px;width:100%;max-width:400px;animation:scaleIn .2s ease-out;box-shadow:0 4px 24px #0003}.note-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-border)}.note-modal-header h3{font-family:var(--font-display);font-size:1rem;margin:0}.note-modal-body{padding:20px}.note-modal-body input{width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:8px;font-size:15px;font-family:inherit;background:var(--color-bg)}.note-modal-body input:focus{outline:none;border-color:var(--color-secondary)}.note-modal-footer{display:flex;gap:12px;padding:12px 20px 20px}.note-modal-footer button{flex:1;padding:12px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit}.note-modal-footer .btn-cancel{background:#f4f2ee;border:1px solid var(--color-border);color:var(--color-text-muted)}.note-modal-footer .btn-cancel:hover{background:var(--color-border-light)}.note-modal-footer .btn-confirm{background:var(--color-secondary);border:none;color:#fff}.note-modal-footer .btn-confirm:hover{background:var(--color-secondary-hover)}@media (max-width: 600px){.smart-paste-toast{left:16px;right:16px;transform:translateY(20px);bottom:140px}.smart-paste-toast.show{transform:translateY(0)}.smart-paste-content{flex-wrap:wrap;justify-content:center}.smart-paste-actions{width:100%;justify-content:center;margin-left:0;margin-top:8px}}.filter-panel-wrapper{padding:12px 28px 40px}.filter-panel-section{margin-bottom:var(--spacing-8)}.filter-panel-label{font-family:var(--font-body);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#1a1c1a66;margin-bottom:var(--spacing-2)}.filter-panel-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-6)}.filter-panel-count-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-3);margin-bottom:var(--spacing-8)}.filter-panel-count{font-family:var(--font-body);font-size:12px;color:#1a1c1a73}.filter-panel-sort-summary{display:block;width:100%;text-align:left;background:none;border:none;padding:0;font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:.01em;color:#1a1c1a;cursor:pointer}.filter-panel-sort-summary:hover{color:var(--color-copper-dark, #8B4A2B)}.filter-chip{height:32px;padding:0 14px;border-radius:4px;font-size:13px;font-family:var(--font-body);font-weight:500;letter-spacing:.01em;white-space:nowrap;cursor:pointer;border:1px solid rgba(26,28,26,.12);background:transparent;color:#1a1c1aa6;display:inline-flex;align-items:center}.filter-chip:hover{border-color:#1a1c1a4d;color:#1a1c1ae6}.filter-chip.active{background:#1a1c1a0f;border-color:#1a1c1a59;color:#1a1c1a;font-weight:600}#filterPanelBody .filter-chip,#filterPanelBody .sort-option{border:none;background:transparent;color:#1a1c1abf;font-weight:500}#filterPanelBody .filter-chip:hover,#filterPanelBody .sort-option:hover{color:#1a1c1af2;background:#1a1c1a0d}#filterPanelBody .filter-chip.active,#filterPanelBody .sort-option.active{color:#1a1c1a}.chip-mark{margin-right:2px;font-size:10px;vertical-align:1px}.chip-icon{vertical-align:-2px;flex-shrink:0}.sort-option{height:32px;padding:0 14px;border-radius:4px;font-size:13px;font-family:var(--font-body);font-weight:500;letter-spacing:.01em;cursor:pointer;text-align:center;border:1px solid rgba(26,28,26,.12);background:transparent;color:#1a1c1aa6;display:inline-flex;align-items:center}.sort-option:hover{border-color:#1a1c1a4d;color:#1a1c1ae6}.sort-option.active{background:#1a1c1a0f;border-color:#1a1c1a59;color:#1a1c1a;font-weight:600}.sort-arrow{margin-left:2px}.filter-panel-clear{background:none;border:none;font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.05em;color:#1a1c1a66;cursor:pointer;padding:0;transition:color .15s;white-space:nowrap}.filter-panel-clear:hover{color:var(--color-text)}.recipe-picker-modal{max-width:420px;max-height:80vh;display:flex;flex-direction:column}.recipe-picker-modal .modal-body{display:flex;flex-direction:column;flex:1;overflow:hidden;padding:0}.recipe-picker-search{padding:16px 20px;border-bottom:1px solid var(--color-border-light)}.recipe-picker-search input{width:100%;padding:10px 14px;font-size:15px;border:1px solid var(--color-border-light);border-radius:8px;background:var(--color-bg-cool)}.recipe-picker-search input:focus{outline:none;border-color:var(--color-secondary)}.recipe-picker-list{flex:1;overflow-y:auto;padding:8px 0}.recipe-picker-item{display:flex;align-items:center;gap:12px;padding:10px 20px;cursor:pointer;transition:background .15s}.recipe-picker-item:hover{background:#f9f7f4}.recipe-picker-item.selected{background:#f0f5ec}.recipe-picker-item.already-added{opacity:.5;cursor:not-allowed}.recipe-picker-checkbox{width:20px;height:20px;border:2px solid #D0CCC4;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.recipe-picker-item.selected .recipe-picker-checkbox{background:var(--color-secondary);border-color:var(--color-secondary)}.recipe-picker-checkbox svg{display:none;width:14px;height:14px;stroke:#fff;stroke-width:3}.recipe-picker-item.selected .recipe-picker-checkbox svg{display:block}.recipe-picker-thumb{width:48px;height:48px;border-radius:6px;background-size:cover;background-position:center;background-color:#e8e5e0;flex-shrink:0}.recipe-picker-thumb--textcover{position:relative;overflow:hidden;background-color:transparent}.recipe-picker-info{flex:1;min-width:0}.recipe-picker-title{font-size:15px;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipe-picker-meta{font-size:13px;color:var(--color-text-muted);margin-top:2px}.recipe-picker-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));background:var(--color-surface)}.recipes-selected-count{font-size:14px;color:var(--color-text-muted)}.btn-add-recipes{padding:10px 20px;background:var(--color-secondary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-add-recipes:hover:not(:disabled){background:var(--color-secondary-hover)}.btn-add-recipes:disabled{opacity:.5;cursor:not-allowed}.recipe-picker-empty{text-align:center;padding:40px 20px;color:var(--color-text-muted)}.recipe-picker-empty-icon{font-size:32px;margin-bottom:8px}.event-type-field{position:relative;margin-top:4px;margin-bottom:4px}.thyme-inline-select{display:inline-flex;align-items:center;gap:6px;padding:6px 0;font-family:var(--font-body);text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.thyme-inline-label{font-size:13px;font-weight:500;color:var(--color-text-muted)}.thyme-inline-value{font-size:13px;font-weight:500;color:var(--color-text)}.thyme-inline-caret{flex-shrink:0;color:var(--color-text-light);transition:transform .2s;margin-top:1px}.thyme-inline-select:hover .thyme-inline-value,.thyme-inline-select:hover .thyme-inline-caret{color:var(--color-primary)}.event-type-field:has(.thyme-select-list.open) .thyme-inline-caret{transform:rotate(180deg)}.event-date-value.none{color:var(--color-text-light)}.thyme-select-list{display:none;position:relative;margin-top:4px;width:70%;z-index:50;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:8px;box-shadow:0 4px 16px #1e232914;padding:3px 0}.thyme-select-list.open{display:block}.thyme-select-option{display:flex;align-items:center;width:100%;padding:3px 10px;font-family:var(--font-body);font-size:14px;color:var(--color-text);background:transparent;border:none;cursor:pointer;text-align:left;transition:background .1s}.thyme-select-option:hover{background:#1e23290a}.thyme-select-option.active{color:var(--color-primary);font-weight:500}.thyme-select-option.active:before{content:"";display:inline-block;width:14px;height:10px;margin-right:8px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' fill='none'%3E%3Cpath d='M1 5l4 4L13 1' stroke='%23AD5B39' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain}.thyme-select-option:not(.active):before{content:"";display:inline-block;width:14px;height:10px;margin-right:8px}.course-zone .plan-day-strip{align-items:stretch}.course-column .plan-day-label{position:relative;text-align:center;padding-bottom:2px}.course-label-text{cursor:pointer;display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-overflow-scrolling:touch;scrollbar-width:none}.course-label-text::-webkit-scrollbar{display:none}.course-label-text:active,.course-label-text:focus{overflow-x:auto;text-overflow:clip}.course-label-text:hover{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.course-label-text[contenteditable=true]{text-decoration:none;outline:none;overflow-x:auto;text-overflow:clip;border:none;border-radius:4px;padding:2px 4px;margin:-2px -4px;box-shadow:0 1px 4px #0000001f}.course-label-text[contenteditable=true]~.course-overflow{display:none}.course-overflow{position:absolute;right:-2px;top:50%;transform:translateY(-50%);background:var(--color-bg-cool);border:none;cursor:pointer;color:var(--color-text-muted);padding:2px;border-radius:4px;opacity:0;transition:opacity .15s ease}.course-column:hover .course-overflow,.course-overflow:focus{opacity:1}.course-overflow:hover{color:var(--color-text);background:#0000000d}.course-dropdown{position:fixed;z-index:9999;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #00000014;padding:4px;min-width:140px}.course-dropdown button{display:block;width:100%;text-align:left;padding:8px 12px;font-size:14px;font-family:var(--font-body);border:none;background:none;cursor:pointer;border-radius:6px;color:var(--color-text)}.course-dropdown button:hover{background:#0000000a}.course-dropdown-divider{height:1px;background:#1a1c1a14;margin:4px 0}.course-column .plan-day-label{position:relative}.add-course-column{display:flex;align-items:flex-start;justify-content:center;min-width:100px;cursor:pointer;opacity:.5;transition:opacity .15s ease;border:none!important;background:transparent!important}.add-course-column:hover{opacity:.8}.add-course-btn{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-muted);padding:8px}.add-course-btn svg{width:14px;height:14px}.unassigned-zone{border-top:1px solid var(--color-border)}.unassigned-zone .recipes-header h3{font-size:14px;color:var(--color-text-muted)}.unassigned-grid{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 16px}.unassigned-chip{cursor:grab}.unassigned-chip:active{cursor:grabbing}.course-chip{cursor:grab}.course-chip:active{cursor:grabbing}.course-chip .planner-chip-remove{opacity:0;transition:opacity .15s ease}.course-chip:hover .planner-chip-remove{opacity:1}.chip-content{display:flex;flex-direction:column;min-width:0;flex:1}.chip-note{font-size:10px;font-family:inherit;font-weight:400;color:var(--color-text-muted);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-height:0;opacity:0;transition:opacity .15s,max-height .15s}.chip-note.chip-note-visible{opacity:1;max-height:16px;margin-top:1px}.chip-note.chip-note-empty{display:none}.course-chip:hover .chip-note:not(.chip-note-empty),.planner-chip:hover .chip-note:not(.chip-note-empty){opacity:1;max-height:16px;margin-top:1px}.course-chip:focus-within .chip-note:not(.chip-note-empty),.planner-chip:focus-within .chip-note:not(.chip-note-empty){opacity:1;max-height:16px;margin-top:1px}.chip-overflow{position:absolute;bottom:4px;right:4px;width:18px;height:18px;border-radius:50%;border:none;background:transparent;color:var(--color-text-light);cursor:pointer;display:none;align-items:center;justify-content:center;padding:0;font-size:12px;line-height:1;opacity:0;transition:opacity .15s}.course-chip:hover .chip-overflow,.course-chip:focus-within .chip-overflow,.planner-chip:hover .chip-overflow,.planner-chip:focus-within .chip-overflow{display:flex;opacity:.6}.chip-overflow:hover{opacity:1;background:#0000000f}@media (hover: none){.chip-overflow{display:flex;opacity:.5}}.event-courses-container{padding:36px 20px 100px}@media (min-width: 768px){.event-courses-container{padding:36px 40px 140px}}.compose-orient-toggle{display:inline-flex;gap:2px;margin-left:auto;align-self:flex-start;margin-top:-6px}.menu-detail--compose-phone .compose-orient-toggle{display:none}.compose-orient-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:3px;cursor:pointer;color:#1a1c1a59;transition:color .15s ease}.compose-orient-btn:hover{color:#1a1c1ab3}.compose-orient-btn.active{color:#1a1c1a}.compose-orient-btn svg{width:16px;height:16px}.compose-orient-btn:hover .icon-hint{opacity:1}@media (min-width: 601px){.event-courses--horizontal{display:flex;flex-direction:row;align-items:stretch;gap:calc(20px * var(--compose-fit, 1));overflow-x:auto;padding-top:20px;padding-left:40px;padding-right:40px}.event-courses--horizontal .event-course-section{flex:0 1 151px;width:151px;min-width:0;overflow-wrap:anywhere;margin-bottom:0}.event-courses--horizontal .event-course-heading{--compose-heading-scale: max(.8, var(--compose-fit, 1));position:relative;display:block;text-align:center;padding-right:26px;white-space:nowrap}.event-courses--horizontal .event-course-number{display:inline;font-size:calc(var(--text-nano) * var(--compose-heading-scale, 1));letter-spacing:.1em;color:#1a1c1a4d;margin-right:4px;vertical-align:1px}.event-courses--horizontal .event-course-name{display:inline;font-family:var(--font-body);font-size:calc(var(--text-label-lg) * var(--compose-heading-scale, 1));font-style:normal;font-weight:600;text-transform:uppercase;letter-spacing:.035em;color:var(--color-text)}.event-courses--horizontal .event-course-name .course-label-text{display:inline}.event-courses--horizontal .event-course-heading .course-overflow{position:absolute;right:0;top:50%;transform:translateY(-50%)}body.compose-dish-drag .event-courses--horizontal .event-course-section,body.dragging-recipe-event .event-courses--horizontal .event-course-section{padding-bottom:160px}.event-courses--horizontal .event-course-cards--multi{display:flex;flex-direction:column;gap:16px}.event-courses--horizontal .event-course-card-image-wrap{margin-bottom:8px}.event-courses--horizontal .event-add-course{flex:0 0 auto;align-self:flex-start;margin-top:2px;white-space:nowrap}}.event-add-course{display:inline-flex;align-items:center;font-family:var(--font-body);font-size:var(--text-micro);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a59;background:none;border:none;cursor:pointer;padding:14px 0;margin-top:4px;transition:color .15s ease}.event-add-course:hover{color:#1a1c1ab3}.event-course-section{margin-bottom:14px;padding-bottom:0}.event-course-section.drag-over{background:#7d8b6a0a;border-radius:8px;padding:16px;margin-left:-16px;margin-right:-16px}.event-course-heading{display:flex;align-items:baseline;gap:10px;margin-bottom:16px;position:relative;padding-bottom:8px;border-bottom:1px solid rgba(26,28,26,.06)}.event-course-number{font-family:var(--font-body);font-size:var(--text-micro);font-weight:400;text-transform:uppercase;letter-spacing:.15em;color:#1a1c1a40}.event-course-name{font-family:var(--font-display);font-size:var(--text-display-sm);font-weight:400;font-style:italic;color:#1a1c1a;margin:0;min-width:0;display:inline-flex;align-items:baseline;gap:8px}.event-course-name .course-label-text{display:inline;cursor:text}.event-course-name .course-label-text:hover{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px;text-decoration-color:#1a1c1a40}.event-course-add-recipe{font-family:var(--font-body);font-size:var(--text-micro);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a59;background:none;border:none;cursor:pointer;padding:0;margin-left:auto;transition:color .15s ease;white-space:nowrap;flex-shrink:0;align-self:center}.event-course-add-recipe:hover{color:#1a1c1ab3}.event-course-empty{font-family:var(--font-body);font-size:var(--text-tag);color:#1a1c1a40;margin:0 0 8px;font-style:italic}.event-course-heading .course-overflow{position:relative;top:auto;right:auto;transform:none;opacity:0;transition:opacity .15s ease,color .15s ease;background:none;border:none;cursor:pointer;padding:4px;color:#1a1c1a8c;flex-shrink:0}.event-course-heading:hover .course-overflow{opacity:1}.event-course-heading .course-overflow:hover{color:#1a1c1acc}.event-course-note{font-family:var(--font-display);font-style:italic;font-size:var(--text-body-sm);color:#1a1c1a80;padding:12px 16px;background:#1a1c1a05;margin-bottom:20px;border-left:2px solid rgba(26,28,26,.08)}.event-course-cards{display:flex;flex-direction:column;gap:0}.event-course-cards--multi{display:grid;grid-template-columns:repeat(auto-fill,128px);gap:16px}.event-course-cards--multi .event-course-card{position:relative;cursor:grab}.event-courses-container.event-courses--phone{padding:20px 18px 80px}.event-courses--phone .event-course-heading{align-items:center;gap:8px;margin-bottom:10px}.event-courses--phone .event-course-name{flex:1;min-width:0;font-size:var(--text-title-2xl)}.event-courses--phone .event-course-name .course-label-text{flex:1;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default}.event-courses--phone .event-course-name .course-label-text:hover{text-decoration:none}.event-courses--phone .event-course-heading .course-overflow{opacity:1;align-self:center;margin-left:auto}.event-courses--phone .event-course-add-recipe,.event-courses--phone .event-course-empty{display:none}.event-courses--phone .event-course-section{margin-bottom:14px}.event-courses--phone .event-course-section--empty .event-course-heading{margin-bottom:0}.event-courses--phone .event-course-cards--multi{display:flex;flex-direction:column;gap:2px}.event-courses--phone .event-course-cards--multi .event-course-card{display:flex;flex-direction:row;align-items:center;gap:13px;padding:5px 30px 5px 0;cursor:pointer}.event-courses--phone .event-course-cards--multi .event-course-card-image-wrap{width:88px;height:64px;flex:none;margin-bottom:0;border-radius:3px}.event-courses--phone .event-course-cards--multi .event-course-card-img,.event-courses--phone .event-course-cards--multi .event-course-card-img--placeholder{width:88px;height:64px;aspect-ratio:auto}.event-courses--phone .event-course-cards--multi .event-course-card-title{font-size:var(--text-card-title);line-height:1.2;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.event-courses--phone .event-course-cards--multi .event-course-card-meta{display:block;font-size:var(--text-caption-lg);margin-top:3px}.event-courses--phone .event-course-cards--multi .event-course-card-actions{display:none}.event-courses--phone .event-course-cards--multi .event-course-card:not(.event-course-card--unassigned) .event-card-remove{display:none}.event-courses--phone .event-course-cards--multi .event-card-overflow{display:flex;opacity:1;top:50%;right:2px;transform:translateY(-50%);width:28px;height:40px;border-radius:0;background:none;color:#1a1c1a66;font-size:var(--text-body)}.event-card-overflow{display:flex;opacity:0;transition:opacity .15s ease;position:absolute;top:8px;right:8px;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:50%;background:#1a1c1a73;color:#faf9f6;font-size:13px;line-height:1;letter-spacing:.5px;cursor:pointer;padding:0}@media (hover: hover){.event-course-card:hover .event-card-overflow{opacity:1}}.event-course-cards--multi .event-course-card-image-wrap{overflow:hidden;margin-bottom:8px}.event-course-cards--multi .event-course-card-img{width:100%;aspect-ratio:1 / 1;object-fit:cover;display:block;filter:contrast(.95) brightness(1.02) saturate(.95);transition:transform .5s ease}.event-course-cards--multi .event-course-card:hover .event-course-card-img{transform:scale(1.03)}.event-course-card-img--placeholder{display:flex;align-items:center;justify-content:center;background:#e8e5e0;overflow:hidden;container-type:inline-size}.event-course-card-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.event-course-card-title{font-family:var(--font-display);font-size:var(--text-tag);font-weight:var(--font-weight-medium);color:var(--color-text);margin:0 0 2px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.event-course-card-meta{font-family:var(--font-body);font-size:var(--text-caption);color:#1a1c1a66;margin:0;letter-spacing:.01em}.event-course-card-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;opacity:0;transition:opacity .15s ease;margin-top:6px}.event-course-card:hover .event-course-card-actions{opacity:1}@media (hover: none){.event-course-card-actions{opacity:1}}.event-course-card-action{font-family:var(--font-body);font-size:var(--text-micro);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a59;background:none;border:none;cursor:pointer;padding:0;transition:color .15s ease}.event-course-card-action:hover{color:#1a1c1ab3}.event-course-card-action--icon{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:2px;color:#1a1c1a66;text-transform:none;letter-spacing:normal}.event-course-card-action--icon svg{width:16px;height:16px}.event-course-card-action--icon:hover{color:#1a1c1abf}.event-course-card-action--icon:hover .icon-hint{opacity:1}.event-course-card-place{margin-top:6px}.event-course-card-place-trigger{font-family:var(--font-body);font-size:var(--text-micro);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a8c;background:none;border:none;padding:0;cursor:pointer;transition:color .15s ease}.event-course-card-place-trigger:hover{color:#1a1c1ad9}.event-place-menu{margin-top:8px;display:flex;flex-direction:column;gap:2px}.event-place-menu[hidden]{display:none}.event-place-option{font-family:var(--font-body);font-size:var(--text-tag);text-align:left;color:#1a1c1ab3;background:none;border:none;border-radius:5px;padding:5px 8px;cursor:pointer;transition:background .15s ease,color .15s ease}.event-place-option:hover{background:#1a1c1a0d;color:#1a1c1a}.planner-unassigned{margin-bottom:22px;padding-bottom:20px;border-bottom:1px solid rgba(26,28,26,.08)}.planner-unassigned--stack{padding-bottom:0;border-bottom:none}.planner-unassigned-heading{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.planner-unassigned-label{font-family:var(--font-display);font-size:20px;font-style:italic;color:#1a1c1a}.planner-unassigned-count{font-family:var(--font-body);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.15em;color:#1a1c1a4d}.planner-unassigned-hint{margin-left:auto;font-family:var(--font-body);font-size:11px;color:#1a1c1a4d}.planner-unassigned-cards{display:flex;flex-wrap:wrap;align-items:flex-start;gap:14px 12px}.planner-unassigned-cards>.planner-unassigned-item{flex:0 0 auto;width:calc(var(--planner-unassigned-col, 100%) - 16px);max-width:200px}.planner-unassigned-rows{display:flex;flex-direction:column}.planner-unassigned-row .planner-unassigned-place{display:block;flex:none;margin-top:2px}.event-course-card-note-wrap{position:relative;margin:4px 0 0}.event-course-card-note{font-family:var(--font-display);font-style:italic;font-size:var(--text-tag);color:#1a1c1a66;padding:0 20px 0 0;background:none;cursor:text;line-height:1.5;word-wrap:break-word}.event-course-card-note:hover{color:#1a1c1a99}.event-course-card-note-remove{position:absolute;top:4px;right:4px;background:none;border:none;cursor:pointer;font-size:14px;color:#1a1c1a33;padding:0 4px;line-height:1;opacity:0;transition:opacity .15s ease,color .15s ease}.event-course-card-note-wrap:hover .event-course-card-note-remove{opacity:1}.event-course-card-note-remove:hover{color:var(--color-text)}.event-course-card-overflow{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:none;border:none;cursor:pointer;opacity:0;color:#1a1c1a66;transition:opacity .15s ease,background .15s ease}.event-course-card:hover .event-course-card-overflow,.event-meal-note:hover .event-course-card-overflow{opacity:1}.event-course-card-overflow:hover{background:#1a1c1a0f;opacity:1}.event-card-remove{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#0006;color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:14px;line-height:1;opacity:0;transition:opacity .15s ease;z-index:2}.event-course-card:hover .event-card-remove{opacity:1}.event-card-remove:hover{background:#0000009e}.event-remove-confirm{position:absolute;top:0;left:0;right:0;bottom:0;background:#faf9f6f2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:5;container-type:inline-size;font-size:var(--text-label)}.event-remove-confirm-text{font-family:var(--font-body);font-size:var(--text-tag);color:#1a1c1ab3;text-align:center;margin:0;padding:0 16px}.event-remove-confirm-text strong{color:#1a1c1a;font-weight:500}.event-remove-confirm-actions{display:flex;gap:12px}@container (max-width: calc(10em + 100px)){.event-remove-confirm-actions{flex-direction:column;align-self:stretch;gap:8px;padding:0 12px}}.event-remove-confirm-yes{font-family:var(--font-body);font-size:var(--text-label);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:#faf9f6;background:#1a1c1ad9;border:none;padding:6px 16px;cursor:pointer;transition:background .15s ease}.event-remove-confirm-yes:hover{background:#1a1c1a}.event-remove-confirm-no{font-family:var(--font-body);font-size:var(--text-label);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a80;background:none;border:1px solid rgba(26,28,26,.15);padding:6px 16px;cursor:pointer;transition:all .15s ease}.event-remove-confirm-no:hover{color:#1a1c1a;border-color:#1a1c1a4d}.event-course-card.dragging,.event-meal-note.dragging{opacity:.3}@keyframes event-course-card-settle{0%{opacity:.35;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.event-course-card.just-placed{animation:event-course-card-settle .18s cubic-bezier(.2,.8,.4,1);transform-origin:center}.event-course-add{font-family:var(--font-body);font-size:var(--text-label);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a40;background:none;border:1px dashed rgba(26,28,26,.1);cursor:pointer;padding:12px 20px;margin-top:12px;transition:all .15s ease;text-align:center}.event-course-add:hover{color:#1a1c1a80;border-color:#1a1c1a33;background:#1a1c1a04}.event-meal-note{position:relative;cursor:grab;background:#1a1c1a05;padding:20px;display:flex;flex-direction:column;justify-content:center;min-height:100px;grid-column:span 1;transition:background .15s ease}.event-meal-note:hover{background:#1a1c1a09}.event-meal-note-text{font-family:var(--font-display);font-style:italic;font-size:var(--text-reading-sm);font-weight:400;color:#1a1c1abf;line-height:1.5;margin-bottom:6px}.event-meal-note-label{font-family:var(--font-body);font-size:var(--text-caption);color:#1a1c1a4d;letter-spacing:.02em}.event-meal-note-text em{color:#1a1c1a4d}.event-course-card-body>.chip-note-input,.event-course-card-actions .chip-note-input{display:block;width:100%;font-family:var(--font-display);font-style:italic;font-size:var(--text-tag);color:#1a1c1a;background:#1a1c1a06;border:none;border-left:2px solid rgba(26,28,26,.08);border-radius:0;padding:8px 12px;outline:none;margin:8px 0 4px;resize:none;line-height:1.5;overflow:hidden}.event-meal-note .meal-note-title-input{width:100%;font-family:var(--font-display);font-style:italic;font-size:var(--text-reading-sm);color:#1a1c1a;background:transparent;border:none;border-bottom:1px solid rgba(26,28,26,.15);border-radius:0;padding:2px 0;outline:none}.event-meal-note-remove{position:absolute;top:8px;right:8px;background:none;border:none;cursor:pointer;font-size:16px;color:#1a1c1a33;padding:0 4px;line-height:1;opacity:0;transition:opacity .15s ease,color .15s ease}.event-meal-note:hover .event-meal-note-remove{opacity:1}.event-meal-note-remove:hover{color:var(--color-text)}.event-empty-hint{text-align:center;padding:48px 20px;font-family:var(--font-body);font-size:var(--text-body-sm);color:#1a1c1a4d}@media (hover: none){.event-course-card-overflow,.event-card-overflow,.event-course-heading .course-overflow{opacity:.5}.event-course-card--unassigned .event-card-remove{opacity:1}}.event-header{padding:16px 20px 12px;position:sticky;top:calc(var(--header-height, 54px) - var(--phone-bars-lift, 0px));z-index:98;background:#faf9f6;border-bottom:1px solid rgba(26,28,26,.06)}@media (min-width: 768px){.event-header{padding:20px 40px 14px;top:calc(var(--header-height, 97px) - var(--phone-bars-lift, 0px))}}@media (max-width: 767px){.menu-detail--event[data-event-tab=menu] .event-header{display:contents}.menu-detail--event[data-event-tab=menu] .event-header-top{position:sticky;top:calc(var(--header-height, 54px) - var(--phone-bars-lift, 0px));z-index:99;background:#faf9f6;padding:16px 20px 6px}.menu-detail--event[data-event-tab=menu] .event-hero-meta{position:relative;z-index:98;padding-left:76px;padding-right:20px;background:#faf9f6}.menu-detail--event[data-event-tab=menu] .event-header-tabs{position:sticky;top:calc(var(--header-height, 54px) + var(--event-header-top-height, 46px) - var(--phone-bars-lift, 0px));z-index:97;background:#faf9f6;margin-top:8px;padding:8px 20px 0 76px;border-bottom:1px solid rgba(26,28,26,.06)}}.menu-detail--event{margin-top:-1px}.event-header-top{display:flex;align-items:center;gap:12px}.event-header-top .menu-detail-overflow-btn{opacity:1;padding:4px 8px}.event-hero-title{font-family:var(--font-display);font-size:clamp(28px,4vw,38px);font-weight:400;color:#1a1c1a;margin:0;line-height:1.2;letter-spacing:-.01em;cursor:text;min-width:0}.event-hero-title:hover{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px;text-decoration-color:#1a1c1a33}.event-hero-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px;padding-left:38px}.event-hero-date{font-family:var(--font-body);font-size:var(--text-body-sm);color:#1a1c1a80;background:none;border:none;cursor:pointer;padding:0;transition:color .15s ease}.event-hero-date:hover{color:#1a1c1acc}.event-hero-time{display:inline-flex;align-items:center;gap:3px;font-family:var(--font-body);font-size:var(--text-tag);text-transform:uppercase;color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:0;text-decoration:none;-webkit-tap-highlight-color:transparent}.event-hero-time:hover{color:var(--color-text);text-decoration:underline;text-underline-offset:2px}.event-hero-time-caret{color:var(--color-text-light);font-size:11px;margin-top:1px}.event-time-menu-dropdown{max-height:182px;overflow-y:auto}.event-time-menu-option{display:flex;align-items:center}.event-time-menu-option.active{background:#00000008}.event-time-menu-check{display:inline-block;width:16px;flex-shrink:0;color:var(--color-text)}.event-time-menu-custom-trigger{border-top:1px solid var(--color-border-light);margin-top:3px;padding-top:8px}@media (pointer: coarse){.event-time-menu-option,.event-time-menu-custom-trigger{min-height:44px}}.event-time-menu-custom{padding:8px 12px}.event-time-menu-input{width:100%;font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text);background:none;border:none;border-bottom:1px solid var(--color-border-light);padding:4px 0;outline:none}.event-time-menu-done{margin-top:8px;font-family:var(--font-body);font-size:var(--text-label);text-transform:uppercase;color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:0}.event-time-menu-done:hover{color:var(--color-text)}.event-time-menu-error{font-size:var(--text-label);color:var(--color-text-light);min-height:0;margin-top:6px}.event-time-menu-error:empty{display:none}.event-hero-sep{color:#1a1c1a33;font-size:var(--text-body-sm)}.event-hero-count{font-family:var(--font-body);font-size:var(--text-body-sm);color:#1a1c1a59}.event-header-tabs{display:flex;gap:32px;padding-left:38px;margin-top:16px}.event-header-tab{font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:500;letter-spacing:.04em;color:#1a1c1a59;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;padding:0 0 8px;transition:color .15s ease}.event-header-tab:hover{color:#1a1c1a99}.event-header-tab.active{color:#1a1c1a;border-bottom-color:#1a1c1a}.event-detail-full{padding:48px 20px 140px;max-width:800px;margin:0 auto}@media (min-width: 768px){.event-detail-full{padding:48px 40px 140px}}.plan-summary{display:flex;gap:32px;padding-bottom:32px;margin-bottom:40px;border-bottom:1px solid rgba(26,28,26,.06)}.plan-summary-stat{font-family:var(--font-display);font-size:var(--text-display-sm);font-weight:400;color:#1a1c1a}.plan-summary-label{font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:#1a1c1a59;margin-left:6px}.plan-section{margin-bottom:48px}.plan-section-heading{font-family:var(--font-display);font-size:var(--text-display-sm);font-weight:400;font-style:italic;color:#1a1c1a;margin:0 0 20px;padding-bottom:10px;border-bottom:1px solid rgba(26,28,26,.06)}.plan-task{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-bottom:1px solid rgba(26,28,26,.03);position:relative}.plan-task.completed{opacity:.4}.plan-task.completed .plan-task-title{text-decoration:line-through}.plan-task-checkbox{width:18px;height:18px;border:1.5px solid rgba(26,28,26,.2);background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;color:#1a1c1a;transition:all .15s ease;flex-shrink:0;margin-top:2px}.plan-task-checkbox:hover{border-color:#1a1c1a}.plan-task-title-input{font-family:var(--font-body);font-size:var(--text-reading-sm);font-weight:600;color:#1a1c1a;background:none;border:none;border-bottom:1px solid rgba(26,28,26,.15);padding:0;outline:none;width:100%;margin:0}.plan-task-timing{font-family:var(--font-body);font-size:var(--text-label);color:#1a1c1a66}.plan-task-body{flex:1;min-width:0}.plan-task-title{font-family:var(--font-body);font-size:var(--text-reading-sm);font-weight:600;cursor:text;color:#1a1c1a;margin:0 0 2px}.plan-task-linked{font-family:var(--font-body);font-size:var(--text-label);font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:#1a1c1a66}.plan-task-linked a{color:#1a1c1a80;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.plan-task-notes{font-family:var(--font-display);font-style:italic;font-size:var(--text-body);color:#1a1c1a73;margin:4px 0 0}.plan-task-remove{background:none;border:none;cursor:pointer;font-size:var(--text-reading-sm);color:#1a1c1a26;padding:0 4px;opacity:0;transition:opacity .15s ease,color .15s ease}.plan-task:hover .plan-task-remove{opacity:1}.plan-task-remove:hover{color:var(--color-text)}.plan-add-task{font-family:var(--font-body);font-size:var(--text-label);font-weight:400;color:#1a1c1a4d;background:none;border:none;cursor:pointer;padding:12px 0;transition:color .15s ease}.plan-add-task:hover{color:#1a1c1a99}.plan-add-task-form{padding:12px 0 16px}.plan-add-task-fields{display:flex;gap:16px;align-items:baseline;margin-bottom:8px}.plan-add-task-timing-input{width:80px;flex-shrink:0;font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:#1a1c1a80;background:none;border:none;border-bottom:1px solid rgba(26,28,26,.1);padding:4px 0;outline:none}.plan-add-task-timing-input:focus{border-bottom-color:#1a1c1a4d}.plan-add-task-title-input{flex:1;font-family:var(--font-body);font-size:var(--text-body);font-weight:600;color:#1a1c1a;background:none;border:none;border-bottom:1px solid rgba(26,28,26,.1);padding:4px 0;outline:none}.plan-add-task-title-input:focus{border-bottom-color:#1a1c1a4d}.plan-add-task-title-input::placeholder,.plan-add-task-timing-input::placeholder{font-weight:400;color:#1a1c1a40;text-transform:none;letter-spacing:0}.plan-add-task-row{padding-left:96px}.plan-add-task-notes-input{width:100%;font-family:var(--font-display);font-style:italic;font-size:var(--text-body-sm);color:#1a1c1a80;background:none;border:none;border-bottom:1px solid rgba(26,28,26,.06);padding:4px 0;outline:none}.plan-add-task-notes-input:focus{border-bottom-color:#1a1c1a33}.plan-add-task-notes-input::placeholder{color:#1a1c1a33}.plan-section-empty{font-family:var(--font-body);font-size:var(--text-tag);color:#1a1c1a40;font-style:italic;margin:0;padding:8px 0}.plan-empty-state{text-align:center;padding:32px 0 48px}.plan-empty-heading{font-family:var(--font-display);font-size:var(--text-title-xl);color:#1a1c1a66;margin:0 0 8px}.plan-empty-body{font-family:var(--font-body);font-size:var(--text-body-sm);color:#1a1c1a40;margin:0 0 24px}.plan-generate-btn{font-family:var(--font-body);font-size:var(--text-label);font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:#faf9f6;background:#1a1c1a;border:1px solid #1a1c1a;padding:12px 32px;cursor:pointer;transition:all .2s ease}.plan-generate-btn:hover{background:transparent;color:#1a1c1a}.plan-insights{padding:20px 0 12px;margin-bottom:24px;border-bottom:1px solid rgba(26,28,26,.06)}.plan-insight{font-family:var(--font-body);font-size:var(--text-tag);color:#1a1c1a80;margin:0 0 8px;padding-left:16px;position:relative}.plan-insight:before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;background:#1a1c1a33}.plan-insight--warning{color:#b43c1eb3}.plan-insight--warning:before{background:#b43c1e80}.plan-glance{margin-bottom:36px;padding-bottom:28px;border-bottom:1px solid rgba(26,28,26,.06)}.plan-glance-label{font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:#1a1c1a59;margin:0 0 16px}.plan-glance-courses{display:flex;flex-direction:column;gap:12px}.plan-glance-course{display:flex;gap:16px;align-items:baseline}.plan-glance-course-name{font-family:var(--font-display);font-size:var(--text-body-sm);font-style:italic;color:#1a1c1a66;min-width:100px;flex-shrink:0}.plan-glance-dishes{display:flex;flex-wrap:wrap;gap:4px 16px}.plan-glance-dish{font-family:var(--font-display);font-size:var(--text-body);color:#1a1c1a;text-decoration:none;cursor:pointer;transition:color .15s ease}.plan-glance-dish:hover{text-decoration:underline;text-underline-offset:2px;text-decoration-color:#1a1c1a40}.plan-glance-dish--note{font-style:italic;color:#1a1c1a80;cursor:default}.plan-glance-dish--note:hover{text-decoration:none}.plan-glance-time{font-family:var(--font-body);font-size:var(--text-label);color:#1a1c1a4d;margin-left:6px}.plan-collapsible-toggle{cursor:pointer;-webkit-user-select:none;user-select:none}.plan-collapse-caret{font-size:12px;color:#1a1c1a40;margin-left:4px;display:inline-block;transition:transform .2s ease}.plan-collapsible.collapsed .plan-collapse-caret{transform:rotate(-90deg)}.plan-collapsible-body{transition:max-height .25s ease,opacity .2s ease}.plan-collapsible.collapsed .plan-collapsible-body{max-height:0;opacity:0;overflow:hidden}.plan-note-item{display:flex;align-items:flex-start;gap:8px;padding:6px 0;position:relative}.plan-note-text{font-family:var(--font-body);font-size:var(--text-body-sm);color:#1a1c1a8c;line-height:1.5;cursor:text;flex:1}.plan-note-text:hover{color:#1a1c1abf}.plan-note-remove{background:none;border:none;cursor:pointer;font-size:var(--text-body-sm);color:#1a1c1a26;padding:0 2px;opacity:0;transition:opacity .15s ease,color .15s ease;flex-shrink:0}.plan-note-item:hover .plan-note-remove{opacity:1}.plan-note-remove:hover{color:var(--color-text)}.plan-note-input{width:100%;font-family:var(--font-body);font-size:var(--text-body-sm);color:#1a1c1a99;line-height:1.5;background:none;border:none;border-bottom:1px solid rgba(26,28,26,.1);padding:4px 0;outline:none;resize:none;overflow:hidden}.plan-add-note{font-family:var(--font-body);font-size:var(--text-label);color:#1a1c1a4d;background:none;border:none;cursor:pointer;padding:8px 0;transition:color .15s ease}.plan-add-note:hover{color:#1a1c1a99}.plan-context-area{margin-bottom:40px;padding-bottom:28px;border-bottom:1px solid rgba(26,28,26,.06)}.plan-context-label{font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:#1a1c1a59;margin:0 0 16px}.plan-context-block{margin-bottom:20px}.plan-context-block:last-child{margin-bottom:0}.plan-context-note{font-family:var(--font-body);font-size:var(--text-body-sm);color:#1a1c1a80;margin:0 0 6px}.plan-context-note--warning{color:#b43c1e99}.plan-context-dishes{list-style:none;margin:0;padding:0 0 0 16px}.plan-context-dishes li{font-family:var(--font-display);font-size:var(--text-body-sm);color:#1a1c1ab3;padding:2px 0}.plan-regen-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:28px 0 8px;border-top:1px solid rgba(26,28,26,.06);margin-top:24px}.plan-caption{font-family:var(--font-body);font-size:var(--text-label);color:#1a1c1a80;margin:0;font-style:italic}.plan-regen-btn{font-family:var(--font-body);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.08em;padding:8px 14px;background:transparent;color:#1a1c1a;border:1px solid rgba(26,28,26,.3);cursor:pointer;transition:background .12s ease,color .12s ease}.plan-regen-btn:hover:not(:disabled){background:#1a1c1a;color:#f5f1e8}.plan-regen-btn:disabled{opacity:.5;cursor:default}.plan-stale-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 14px;background:#cc99331a;border:1px solid rgba(204,153,51,.35);margin-bottom:16px;font-family:var(--font-body);font-size:var(--text-tag);color:#5a4318}.plan-stale-regen{font-family:var(--font-body);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;background:transparent;color:#5a4318;border:1px solid rgba(90,67,24,.4);cursor:pointer}.plan-stale-regen:hover{background:#5a4318;color:#f5f1e8}.event-plan-view--generating .plan-generating-caption{font-family:var(--font-body);font-size:var(--text-tag);font-style:italic;color:#1a1c1a73;text-align:center;margin:16px 0 24px}.plan-section--skeleton{opacity:.7}.plan-task-skeleton{height:42px;margin:8px 0;border-radius:2px;background:linear-gradient(90deg,#1a1c1a0a,#1a1c1a17,#1a1c1a0a);background-size:200% 100%;animation:plan-skeleton-shimmer 1.6s infinite linear}@keyframes plan-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.plan-compare-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1c1a73;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.plan-compare-sheet{position:relative;background:#f5f1e8;width:100%;max-width:1080px;max-height:90vh;overflow:auto;padding:28px 32px;box-shadow:0 20px 60px #00000040}.plan-compare-sheet-head{margin-bottom:20px}.plan-compare-sheet-head h3{font-family:var(--font-display);font-weight:300;font-size:var(--text-display-lg);margin:0;color:#1a1c1a}.plan-compare-sheet-sub{font-family:var(--font-body);font-size:var(--text-tag);color:#1a1c1a8c;margin:4px 0 0;font-style:italic}.plan-compare-close{position:absolute;top:16px;right:16px;background:transparent;border:none;font-size:28px;line-height:1;cursor:pointer;color:#1a1c1a99}.plan-compare-close:hover{color:#1a1c1a}.plan-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 720px){.plan-compare-grid{grid-template-columns:1fr}}.plan-compare-col{display:flex;flex-direction:column;border:1px solid rgba(26,28,26,.12);padding:18px 18px 14px;background:#fff6}.plan-compare-col-head h4{font-family:var(--font-display);font-weight:400;font-style:italic;font-size:var(--text-title-xl);margin:0;color:#1a1c1a}.plan-compare-col-meta{font-family:var(--font-body);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.08em;color:#1a1c1a80;margin:4px 0 12px}.plan-compare-col-body{flex:1}.plan-compare-section{margin-bottom:14px}.plan-compare-section-heading{font-family:var(--font-body);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.12em;color:#1a1c1a99;margin:0 0 6px}.plan-compare-tasks{list-style:none;padding:0;margin:0}.plan-compare-task{font-family:var(--font-body);font-size:var(--text-body-sm);color:#1a1c1a;padding:4px 0;border-bottom:1px solid rgba(26,28,26,.05);display:flex;align-items:baseline;gap:8px}.plan-compare-task-title{flex:1}.plan-compare-task-timing{font-size:var(--text-label);color:#1a1c1a80;font-style:italic}.plan-compare-notes{margin-top:16px;padding-top:12px;border-top:1px dashed rgba(26,28,26,.15)}.plan-compare-notes ul{list-style:disc;padding-left:18px;margin:0;font-family:var(--font-body);font-size:var(--text-tag);color:#1a1c1abf}.plan-compare-notes li{margin-bottom:4px}.plan-compare-empty{font-family:var(--font-body);font-size:var(--text-tag);color:#1a1c1a80;font-style:italic;margin:0}.plan-compare-col-foot{margin-top:14px}.plan-compare-pick{width:100%;font-family:var(--font-body);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.1em;padding:10px 14px;background:#1a1c1a;color:#f5f1e8;border:1px solid #1a1c1a;cursor:pointer;transition:background .12s ease}.plan-compare-pick:hover:not(:disabled){background:#2f322f}.plan-compare-pick:disabled{opacity:.4;cursor:default}.event-share-view{display:flex;flex-direction:column;align-items:center}.share-menu-card{width:100%;max-width:540px;text-align:center;border:1px solid #9AA38F;padding:32px 40px}.menu-detail--event.is-presenting .event-header,body.menu-presenting .header,body.menu-presenting .bottom-nav{display:none}.menu-detail--event.is-presenting .event-detail-full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1090;background:#faf9f6;overflow-y:auto;display:flex;justify-content:center;padding:calc(24px + env(safe-area-inset-top,0px)) 20px calc(24px + env(safe-area-inset-bottom,0px))}.menu-detail--event.is-presenting .share-menu-card{margin:auto}.menu-detail--event.is-presenting .share-menu-actions,.menu-detail--event.is-presenting .menu-fullscreen-btn{display:none}.menu-detail--event.is-presenting[data-event-tab=plan] .event-detail-full{display:block;max-width:none;margin:0;padding:calc(20px + env(safe-area-inset-top,0px)) 24px calc(20px + env(safe-area-inset-bottom,0px))}.menu-detail--event.is-presenting[data-event-tab=plan] .event-plan-view.pv3-prep{width:100%;margin:0;padding:0}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-grid-header-frame{top:0}body.font-large{--prep-fit-min-col: 120px}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule,.event-plan-view.pv3-prep .prep-schedule{--prep-grid-min-col: var(--prep-fit-min-col, 110px)}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-grid-head,.event-plan-view.pv3-prep .prep-grid-head{padding:var(--spacing-3) var(--spacing-3);font-size:var(--text-body-sm)}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-bucket-label,.event-plan-view.pv3-prep .prep-bucket-label{padding:var(--spacing-3) var(--spacing-4)}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-bucket-cell,.event-plan-view.pv3-prep .prep-bucket-cell{padding:var(--spacing-2)}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-card,.event-plan-view.pv3-prep .prep-card{padding:var(--spacing-3) var(--spacing-3)}.event-plan-view.pv3-prep .prep-card-recipe{font-size:var(--text-tag)}.prep-card-overview,.prep-card-plan-wait{display:none}@media screen and (max-width: 720px),screen and (max-width: 932px) and (max-height: 540px){.menu-detail--event.is-presenting[data-event-tab=plan] .event-detail-full:has(.prep-schedule--timeline){padding-bottom:env(safe-area-inset-bottom,0px)}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline{--prep-band-h: 92px;--prep-grid-rows: repeat(3, var(--prep-band-h, 92px));padding:0 8px}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-header-frame{position:static;top:auto}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-wrap{overflow-y:hidden}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-head{padding:4px 6px}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-head-title{font-size:11px;line-height:1.15;-webkit-line-clamp:2}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-head-via,.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-head-covered,.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-head-guidance{display:none}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-bucket-cell{display:flex;flex-direction:column;gap:3px;min-height:0;padding:4px}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card{flex:1 1 0;min-height:0;min-width:0;overflow:hidden;padding:5px 6px}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card-recipe,.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card-time,.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card-change,.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card-covered{display:none}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card-plan-wait{display:inline}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card-plan,.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card-light-action,.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card-note,.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-card-overview{display:block;font-size:12px;line-height:1.2;overflow:hidden}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-bucket-label{font-size:calc(var(--text-label) * .8)}.menu-detail--event.is-presenting[data-event-tab=plan] .event-plan-view.pv3-prep .pv2-metrics-compact{margin:4px 0;padding:6px 12px;gap:2px}.menu-detail--event.is-presenting[data-event-tab=plan] .event-plan-view.pv3-prep .pv2-compact-clock{font-size:18px}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-schedule-heading{margin:4px 0}}@media screen and (max-width: 720px){.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline{--prep-grid-min-col: 108px}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media screen and (max-width: 932px) and (max-height: 540px){.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline{--prep-band-h: 66px;--prep-grid-min-col: 0}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-wrap{overflow-x:hidden}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-grid-header-row{transform:none!important}.menu-detail--event.is-presenting[data-event-tab=plan] .event-plan-view.pv3-prep .pv2-metrics-compact{flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:20px;row-gap:2px;margin:2px 0;padding:5px 12px}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-schedule--timeline .prep-schedule-heading{margin:2px 0}}.prep-kitchen-label-compact,.prep-linked-label-compact,.prep-schedule-affordance-sep--toggle,.pv2-why-summary-compact{display:none}@media screen and (max-width: 720px),screen and (max-width: 932px) and (max-height: 540px){.event-plan-view.pv3-prep .prep-schedule-heading-label,.event-plan-view.pv3-prep .prep-kitchen-label-full{display:none}.event-plan-view.pv3-prep .prep-kitchen-label-compact{display:inline}.event-plan-view.pv3-prep .prep-linked-label-full{display:none}.event-plan-view.pv3-prep .prep-linked-label-compact,.event-plan-view.pv3-prep .prep-schedule-affordance-sep--toggle{display:inline}.event-plan-view.pv3-prep .prep-schedule-affordances .prep-view-toggle{margin:0}.pv2-why-summary-full{display:none}.pv2-why-summary-compact{display:inline}.pv2-compact-line--anchor .pv2-why{margin:0 0 0 auto;position:static}.pv2-compact-line--anchor{position:relative}}.prep-print-fullscreen{display:none;align-items:center;gap:var(--spacing-1);border:none;background:transparent;padding:2px 6px;cursor:pointer;font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:500;color:var(--color-text-muted);transition:color .15s}.prep-print-fullscreen svg{opacity:.85}.prep-print-fullscreen:hover{color:var(--color-text)}.menu-detail--event.is-presenting[data-event-tab=plan] .prep-print-fullscreen{display:inline-flex}@media screen and (max-width: 720px),screen and (max-width: 932px) and (max-height: 540px){.menu-detail--event.is-presenting[data-event-tab=plan] .prep-print-fullscreen{display:none}}@media print{.menu-detail--event.is-presenting[data-event-tab=plan] .event-detail-full,.menu-detail--event.is-presenting[data-event-tab=plan] .menu-fullscreen-exit{display:none!important}}.menu-fullscreen-btn{display:inline-flex;align-items:center;background:none;border:none;padding:4px;color:#1a1c1a59;cursor:pointer;transition:color .15s ease}.menu-fullscreen-btn:hover{color:#1a1c1ab3}.event-header-tabs .menu-fullscreen-btn{margin-left:auto}.menu-fullscreen-exit{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));right:12px;z-index:1091;width:34px;height:34px;border:none;border-radius:50%;background:#1a1c1a0f;color:#1a1c1a8c;font-size:18px;line-height:1;cursor:pointer;touch-action:manipulation}.menu-fullscreen-exit:hover{background:#1a1c1a1f;color:var(--color-text)}@media screen and (max-width: 720px),screen and (max-width: 932px) and (max-height: 540px){.menu-fullscreen-exit:before{content:"";position:absolute;top:-10px;right:-10px;bottom:0;left:0}}.share-menu-title{font-family:var(--font-display);font-size:clamp(36px,5vw,52px);font-weight:400;font-style:italic;color:#1a1c1a;margin:0 0 16px;line-height:1.15}.share-menu-meta{display:flex;justify-content:center;gap:24px;margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid rgba(26,28,26,.08)}.share-menu-date,.share-menu-time{font-family:var(--font-body);font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:#1a1c1a99}.share-course{margin-bottom:26px}.share-course-name{font-family:var(--font-display);font-size:20px;font-weight:600;font-style:normal;color:var(--color-secondary);margin:0 0 10px}.share-course-items{list-style:none;margin:0;padding:0}.share-menu-dish,.share-menu-note{font-family:var(--font-display);font-size:22px;font-weight:400;color:#1a1c1a;padding:8px 0}.share-menu-actions{display:flex;justify-content:center;gap:16px;margin-top:24px}.share-action-btn{font-family:var(--font-body);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:#1a1c1a80;background:none;border:1px solid rgba(26,28,26,.15);padding:10px 24px;cursor:pointer;transition:all .2s ease}.share-action-btn:hover{color:#1a1c1a;border-color:#1a1c1a}@media (max-width: 600px){.share-menu-card{padding:28px 24px}.share-menu-meta{margin-bottom:24px}.share-course{margin-bottom:22px}}.menu-print-root{position:fixed;left:-10000px;top:0;width:100%;pointer-events:none}@media print{@page{margin:0}body.printing-menu{background:#fff}body.printing-menu>*:not(.menu-print-root){display:none!important}body.printing-menu .menu-print-root{position:static;left:auto;pointer-events:auto;width:100%}body.printing-menu .share-menu-card{max-width:100%;background:transparent;box-shadow:none;border:0;padding:0;outline:1px solid #9AA38F;outline-offset:14px}body.printing-menu .share-menu-title{color:#1a1c1a}body.printing-menu .share-menu-actions{display:none}body.printing-menu--centerpiece .menu-print-root--centerpiece{height:11in;overflow:hidden;box-sizing:border-box}body.printing-menu--centerpiece .menu-print-cell{padding:.5in;box-sizing:border-box;height:100%;display:flex;align-items:center;justify-content:center}body.printing-menu--centerpiece .share-menu-meta{margin-bottom:24px;padding-bottom:16px}body.printing-menu--centerpiece .share-course{margin-bottom:28px}body.printing-menu--centerpiece .share-course:last-child{margin-bottom:0}body.printing-menu--centerpiece .share-menu-card{page-break-inside:avoid;break-inside:avoid}body.printing-menu--table .menu-print-root--table{display:grid;grid-template-columns:1fr 1fr;width:11in;height:8.5in;box-sizing:border-box}body.printing-menu--table .menu-print-cell{display:flex;align-items:center;justify-content:center;padding:.5in;box-sizing:border-box}body.printing-menu--table .menu-print-cell:first-child{border-right:1px dashed rgba(0,0,0,.25)}body.printing-menu--table .share-menu-title{font-size:28px;margin-bottom:12px}body.printing-menu--table .share-menu-meta{gap:16px;margin-bottom:28px;padding-bottom:16px}body.printing-menu--table .share-menu-date,body.printing-menu--table .share-menu-time{font-size:11px}body.printing-menu--table .share-course{margin-bottom:22px}body.printing-menu--table .share-course-name{font-size:15px;margin-bottom:8px}body.printing-menu--table .share-menu-dish,body.printing-menu--table .share-menu-note{font-size:17px;padding:5px 0}}.artifact-print-root{position:fixed;left:-10000px;top:0;width:100%;pointer-events:none}@media print{body.printing-artifact{background:#fff}body.printing-artifact>*:not(.artifact-print-root){display:none!important}body.printing-artifact .artifact-print-root{position:static;left:auto;pointer-events:auto;width:100%}body.printing-artifact--compose .event-courses--vertical .event-course-cards--multi{display:flex;flex-direction:row;flex-wrap:wrap}body.printing-artifact--compose .event-courses--vertical .event-course-cards--multi .event-course-card{flex:0 0 220px;min-width:0}body.printing-artifact--compose .event-courses--horizontal{overflow:visible;flex-wrap:nowrap;padding-top:0}body.printing-artifact--compose .compose-zoom{width:max-content;margin:0 auto;break-inside:avoid;page-break-inside:avoid}body.printing-artifact--compose .artifact-print-root{padding:.6in .5in;box-sizing:border-box;box-decoration-break:clone;-webkit-box-decoration-break:clone}body.printing-artifact--compose .artifact-print-root--compose-fit{padding:.4in}body.printing-artifact--compose .compose-print-title{font-family:var(--font-display);font-size:34px;margin-bottom:8px}body.printing-artifact--compose .compose-print-meta{color:var(--color-text-muted);font-size:13px;margin-bottom:16px}body.printing-artifact--compose .event-course-section{margin-bottom:34px}body.printing-artifact--compose .compose-print-note-section{margin-bottom:10px}body.printing-artifact--compose .compose-print-note-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:2px}body.printing-artifact--compose .compose-print-note-body{font-size:14px;white-space:pre-wrap}body.printing-artifact--compose .event-course-card{break-inside:avoid;page-break-inside:avoid}body.printing-artifact--compose .event-course-heading{break-after:avoid;page-break-after:avoid}body.printing-artifact--planner .planner-print-sheet{padding:.5in;color:#17181a;font-family:var(--font-body);-webkit-print-color-adjust:exact;print-color-adjust:exact}body.printing-artifact--planner .planner-print-head{border-bottom:1.5px solid #17181a;padding-bottom:8px;margin-bottom:14px}body.printing-artifact--planner .planner-print-title{font-family:var(--font-display);font-size:24pt;font-weight:600;letter-spacing:.01em;line-height:1.1}body.printing-artifact--planner .planner-print-range{font-size:9pt;letter-spacing:.1em;text-transform:uppercase;color:#6b6d6f;margin-top:3px}body.printing-artifact--planner .planner-print-grid{display:grid}body.printing-artifact--planner .pps-corner{border-bottom:1px solid #17181a}body.printing-artifact--planner .pps-day{text-align:center;padding:3px 4px 6px;border-bottom:1px solid #17181a;display:flex;flex-direction:column;align-items:center;gap:1px}body.printing-artifact--planner .pps-day-name{font-size:9pt;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:#333537}body.printing-artifact--planner .pps-day-date{font-size:7.5pt;color:#9a9c9e}body.printing-artifact--planner .pps-rowlabel{font-family:var(--font-display);font-size:10.5pt;color:#3a3c3e;padding:7px 8px 7px 0;border-bottom:1px solid #ececec;border-right:1px solid #ececec}body.printing-artifact--planner .pps-cell{border-bottom:1px solid #ececec;border-right:1px solid #ececec;padding:6px 8px;min-height:.42in}body.printing-artifact--planner .pps-item{break-inside:avoid}body.printing-artifact--planner .pps-item+.pps-item{margin-top:5px}body.printing-artifact--planner .pps-item-name{display:block;font-size:10pt;line-height:1.25;color:#17181a}body.printing-artifact--planner .pps-item-time{display:block;font-size:8pt;color:#8a8c8e;margin-top:1px}body.printing-artifact--planner .pps-item--note{font-size:9.5pt;font-style:italic;color:#55575a}body.printing-artifact--planner .planner-print-footer{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:16px;break-inside:avoid}body.printing-artifact--planner .planner-print-footer>.planner-print-block:only-child{grid-column:1 / -1}body.printing-artifact--planner .planner-print-section-label{font-size:8.5pt;letter-spacing:.14em;text-transform:uppercase;color:#6b6d6f;font-weight:700;margin:0 0 4px}body.printing-artifact--planner .planner-print-note-para{font-size:9.5pt;line-height:1.4;color:#3a3c3e;margin:0 0 4px}body.printing-artifact--planner .planner-print-also-list{font-size:9.5pt;line-height:1.4;color:#3a3c3e;margin:0}body.printing-artifact--planner .planner-print-wordmark{text-align:center;margin-top:18px;font-family:var(--font-display);font-size:9pt;letter-spacing:.34em;text-transform:uppercase;color:#b7b8b4}}.event-detail-layout{display:block}.event-detail-main{max-width:1200px;margin:0 auto}.menu-detail--planner{margin-top:-1px}.planner-header{padding:24px 24px 0}.planner-header-top{display:flex;align-items:center;gap:12px;margin-bottom:8px}.planner-hero-title{font-family:var(--font-display);font-size:28px;font-weight:400;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.planner-hero-meta{display:flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:13px;color:var(--color-text-muted);padding-left:40px;padding-bottom:16px;border-bottom:1px solid rgba(26,28,26,.06);margin-bottom:0;flex-wrap:wrap}.planner-hero-meta .autosave-status{margin-left:0}.menu-action-bar{margin-left:auto;flex-shrink:0;display:flex;align-items:center;gap:4px}.menu-action-btn{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--color-detail-header-action-ink, var(--color-text-muted));width:30px;height:30px;padding:0;border-radius:6px;transition:background .15s,color .15s}.menu-action-btn:hover{background:var(--color-surface-alt);color:var(--color-text)}.menu-action-btn svg{flex-shrink:0;width:18px;height:18px}.menu-action-kebab{color:var(--color-detail-header-action-ink, var(--color-text-muted));width:30px;height:30px;padding:0;border-radius:6px}@media (max-width: 1023px){.action-desktop-only{display:none}}.planner-notes-link{background:none;border:none;cursor:pointer;font-family:var(--font-body);font-size:13px;color:var(--color-text-muted);padding:0;display:inline-flex;align-items:center;gap:6px;transition:color .15s}.planner-notes-link:hover{color:var(--color-text)}.planner-notes-dot{width:5px;height:5px;border-radius:50%;background:var(--color-text);display:inline-block}.planner-sticky-bar{display:none}@media (max-width: 768px){.planner-sticky-bar{display:flex;align-items:baseline;justify-content:space-between;gap:12px;position:fixed;top:calc(var(--header-height, 56px) - var(--phone-bars-lift, 0px));left:0;right:0;z-index:50;padding:9px 16px;background:var(--color-bg-cool, #faf9f6);border-bottom:1px solid rgba(26,28,26,.08);opacity:0;transform:translateY(-6px);pointer-events:none;transition:transform .16s ease}.planner-sticky-bar--visible{opacity:1;transform:none;pointer-events:auto}.planner-sticky-menu{font-family:var(--font-display);font-size:15px;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planner-sticky-day{flex:none;font-family:var(--font-body);font-size:13px;letter-spacing:.02em;color:var(--color-text-muted);white-space:nowrap}}.planner-detail-layout{display:grid;grid-template-columns:1fr;gap:0;padding:0 24px 48px}.planner-detail-main{min-width:0;padding-top:24px;max-width:1120px}.planner-detail-main--wide{max-width:none}.planner-grid-scroll{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}.planner-grid-scroll.can-pan{cursor:grab}.planner-grid-scroll.is-panning{cursor:grabbing}.planner-grid-scroll img{-webkit-user-drag:none}.planner-grid{display:grid}.planner-grid--scroll{width:max-content}.planner-grid-corner,.planner-grid-row-label{position:sticky;left:0;z-index:2;background:var(--color-bg-cool)}.planner-grid-row{display:contents}.planner-grid-corner{padding:12px 8px;border-bottom:1px solid rgba(26,28,26,.08)}.planner-grid-col-header{font-family:var(--font-display);text-align:center;padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:2px;border-bottom:1px solid rgba(26,28,26,.08);position:relative;container-type:inline-size}.planner-grid-day-name .pg-day-abbr{display:none}@container (max-width: 140px){.planner-grid-day-name .pg-day-full{display:none}.planner-grid-day-name .pg-day-abbr{display:inline}}.planner-day-grocery-btn{position:absolute;top:6px;right:6px;padding:4px;background:none;border:none;color:#1a1c1a73;cursor:pointer;border-radius:4px;opacity:0;transition:opacity .15s ease,color .15s ease,background .15s ease}.planner-grid-col-header:hover .planner-day-grocery-btn,.planner-day-grocery-btn:focus-visible{opacity:1}.planner-day-grocery-btn:hover{color:var(--color-text);background:#0000000d}.planner-day-grocery-btn svg{width:14px;height:14px;display:block}@media (hover: none){.planner-day-grocery-btn{opacity:1}}.planner-grid-col-header--today .planner-grid-day-name{color:var(--color-primary, #1a1c1a);font-weight:500}.planner-grid-day-name{font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.06em;color:#1a1c1a73}.planner-grid-day-date{font-family:var(--font-body);font-size:11px;color:#1a1c1a40}.planner-grid-row-label{font-family:var(--font-body);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:#1a1c1a59;padding:14px 10px 14px 0;display:flex;align-items:flex-start;-webkit-user-select:none;user-select:none;border-bottom:1px solid rgba(26,28,26,.08)}.planner-grid-meal-name{font-size:11px}.planner-grid-cell{min-height:44px;min-width:0;padding:8px;position:relative;display:flex;flex-direction:column;gap:6px;transition:background .15s;border-bottom:1px solid rgba(26,28,26,.08)}.planner-grid-cell.drag-over{background:#7d8b6a0f}.planner-grid-cell:hover .planner-grid-add-row{opacity:1}.planner-grid-add-row{opacity:0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:2px 20px;transition:opacity .15s}@media (hover: none) and (max-width: 768px){.planner-grid-add-row{opacity:.55}}.planner-cell-reveal{display:none;align-items:center;gap:1px;margin-left:auto}.planner-grid-cell--revealed .planner-cell-reveal{display:inline-flex}.planner-cell-reveal{margin-left:0;flex-wrap:wrap;gap:4px}.planner-day-addbtn{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.02em;color:#1a1c1ab8;background:#1a1c1a0d;border:none;padding:5px 10px;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease}.planner-cell-reveal .planner-day-addbtn{border-radius:4px}.planner-day-addbtn:hover{background:#1a1c1a1a;color:var(--color-text)}.planner-grid-cell--revealed .planner-grid-cell-tap{z-index:0}.planner-cell-reveal{position:relative;z-index:1}.planner-grid-cell-tap{display:none;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;border:none;background:none;padding:0;cursor:pointer}@media (hover: none){.planner-grid-cell--empty .planner-grid-add-row{display:none}.planner-grid-cell-tap{display:block}.planner-grid-cell{gap:6px}.planner-grid-add-row{margin-top:2px}}.planner-grid-add{color:var(--color-secondary);font-family:var(--font-body);font-size:11px;font-weight:500;cursor:pointer;padding:0;border:none;background:none;white-space:nowrap;flex-shrink:0}.planner-grid-add:hover{text-decoration:underline}.planner-grid-card{cursor:grab;position:relative;max-width:200px}.planner-grid-card:active{cursor:grabbing}.planner-grid-card.dragging{opacity:.3}.planner-grid-card-image-wrap{overflow:hidden;border-radius:4px;position:relative;margin-bottom:5px}.planner-grid-card-img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;filter:contrast(.95) brightness(1.02) saturate(.95);transition:transform .5s ease}.planner-grid-card:hover .planner-grid-card-img{transform:scale(1.03)}.planner-grid-card-img--placeholder{display:flex;align-items:center;justify-content:center;background:#e8e5e0;aspect-ratio:4 / 3;border-radius:4px;overflow:hidden;container-type:inline-size}.planner-grid-card-overflow{position:absolute;top:4px;right:4px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:#00000059;border:none;border-radius:3px;cursor:pointer;font-size:10px;letter-spacing:1px;z-index:2;line-height:1;opacity:0;transition:opacity .15s ease;color:#fff}.planner-grid-card:hover .planner-grid-card-overflow{opacity:1}.planner-grid-card-overflow:hover{background:#0000008c}.planner-card-dropdown{position:absolute;top:4px;right:4px;z-index:10;background:#faf9f6;border:1px solid rgba(26,28,26,.1);border-radius:6px;box-shadow:0 4px 16px #0000001a;padding:4px 0;min-width:140px}.planner-card-dropdown button{display:block;width:100%;text-align:left;padding:8px 14px;border:none;background:none;font-family:var(--font-body);font-size:13px;color:#1a1c1a;cursor:pointer}.planner-card-dropdown button:hover{background:#1a1c1a0a}.planner-grid-card-title{font-family:var(--font-display);font-size:13px;font-weight:450;color:#1a1c1a;margin:0;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.planner-grid-card-time{font-family:var(--font-body);font-size:11px;color:#1a1c1a66;margin:1px 0 0}.planner-grid-stack-badge{position:absolute;bottom:4px;right:4px;z-index:2;border:none;border-radius:999px;background:#0000008c;color:#fff;cursor:pointer;font-family:var(--font-body);font-size:11px;font-weight:600;line-height:1;padding:3px 7px;transition:background .15s}.planner-grid-stack-badge:hover{background:#000000b8}.planner-grid-note-card{cursor:pointer}.planner-grid-note-panel{aspect-ratio:4 / 3;border-radius:4px;background:#efece5;border:1px solid rgba(26,28,26,.06);padding:8px 9px;position:relative;overflow:hidden}.planner-grid-note-card .planner-grid-note-title{font-family:var(--font-display);font-size:13px;line-height:1.25;color:#1a1c1ac7;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}@media (hover: none){.planner-grid-note-card .planner-grid-card-overflow{opacity:1}}.planner-grid-card-note,.day-focus-card-note,.planner-daystack-card-note{font-family:var(--font-body);color:#1a1c1a8c;cursor:text;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planner-grid-card-note{font-size:11px;margin:1px 0 0}.day-focus-card-note{font-size:12px;margin:3px 0 0}.planner-daystack-card-note{font-size:11.5px;margin:2px 0 0}@media (hover: none){.planner-unassigned-card .planner-grid-card-overflow{opacity:1}}.planner-detail-main--focused{width:100%;max-width:1040px;margin:0 auto}.day-focus-header{margin-bottom:16px}.day-focus-back{background:none;border:none;font-family:var(--font-body);font-size:14px;color:#1a1c1a66;cursor:pointer;padding:0;transition:color .15s}.day-focus-back:hover{color:var(--color-text)}.day-focus-back-mobile{display:none}.day-focus-back-desktop{display:inline}.day-focus-title-row{display:flex;align-items:center;gap:20px;margin-bottom:28px;position:relative;min-height:44px}.day-focus-grocery{position:static;flex:none;opacity:.55}.day-focus-title-right{margin-left:auto;display:flex;align-items:center;gap:12px;flex:none}.day-focus-meal-head{display:flex;align-items:baseline;gap:8px;margin-bottom:14px}.day-focus-meal-overflow{margin-left:auto;background:none;border:none;padding:2px 4px;color:#1a1c1a59;font-size:15px;line-height:1;letter-spacing:1px;cursor:pointer}.day-focus-meal-overflow:before{content:"⋯"}.day-focus-meal-overflow:hover{color:var(--color-text)}.day-focus-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));column-gap:12px;row-gap:16px}.day-focus-title{position:absolute;left:50%;transform:translate(-50%);max-width:60%;text-align:center}.day-focus-day-name{font-family:var(--font-display);font-size:22px;font-weight:400;margin:0;color:#1a1c1a}.day-focus-date{font-family:var(--font-body);font-size:15px;color:#1a1c1a66;margin:4px 0 0}.day-focus-nav{background:none;border:none;font-size:20px;color:#1a1c1a40;cursor:pointer;padding:10px;transition:color .15s}.day-focus-nav:hover{color:var(--color-text)}.day-focus-nav-spacer{width:40px}.day-focus-section{margin-bottom:28px}.day-focus-meal-label{font-family:var(--font-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:#1a1c1a99;margin:0}.day-focus-add-row{display:flex;gap:20px;margin-top:20px;opacity:0;transition:opacity .15s}.day-focus-add-row--visible,.day-focus-section:hover .day-focus-add-row{opacity:1}@media (hover: none){.day-focus-add-row{opacity:1}}.day-focus-add-link{font-family:var(--font-body);font-size:15px;font-weight:500;color:#1a1c1a73;cursor:pointer;border:none;background:none;padding:0;transition:color .15s}.day-focus-add-link:hover{color:var(--color-text)}.day-focus-card{cursor:pointer;position:relative}.day-focus-card-image-wrap{position:relative;border-radius:4px;overflow:hidden;margin-bottom:8px}.day-focus-card-overflow{position:absolute;top:6px;right:6px;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:50%;background:#1a1c1a73;color:#faf9f6;font-size:13px;line-height:1;letter-spacing:.5px;cursor:pointer;padding:0}.day-focus-card-img{width:100%;aspect-ratio:1 / 1;object-fit:cover;display:block;filter:contrast(.95) brightness(1.02) saturate(.95)}.day-focus-card-img--placeholder{width:100%;aspect-ratio:1 / 1;background:#e8e5e0;display:flex;align-items:center;justify-content:center;overflow:hidden;container-type:inline-size}.day-focus-card-body{flex:1;min-width:0}.day-focus-card-title{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:400;color:#1a1c1a;margin:0;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.day-focus-card-time{display:none;font-family:var(--font-body);font-size:12px;color:#1a1c1a66;margin:3px 0 0}@media (max-width: 768px){.day-focus-tiles{display:flex;flex-direction:column;gap:2px}.day-focus-card{display:flex;flex-direction:row;align-items:center;gap:14px;padding:6px 0}.day-focus-card-image-wrap{width:76px;height:76px;margin-bottom:0;flex:none}.day-focus-card-img,.day-focus-card-img--placeholder{width:76px;height:76px;aspect-ratio:auto}.day-focus-card-title{font-size:17px;line-height:1.2}.day-focus-card-overflow{position:static;align-self:center;flex:none;width:28px;height:40px;border-radius:0;background:none;color:#1a1c1a66;font-size:15px}.day-focus-card-overflow:hover{background:none;color:var(--color-text)}.day-focus-card-time{display:block}.day-focus-meal-overflow{padding:6px 8px;font-size:17px}.day-focus-section{margin-bottom:18px}}.day-focus-card-actions{display:flex;gap:16px;margin-top:14px;opacity:0;transition:opacity .15s}.day-focus-card:hover .day-focus-card-actions{opacity:1}@media (hover: none){.day-focus-card-actions{opacity:1}}.day-focus-card-action{font-family:var(--font-body);font-size:13px;font-weight:500;color:#1a1c1a59;background:none;border:none;cursor:pointer;padding:0;transition:color .15s}.day-focus-card-action:hover{color:#1a1c1ab3}.day-focus-note{background:#1a1c1a06;padding:16px 20px;position:relative;margin-bottom:8px}.day-focus-note-text{font-family:var(--font-display);font-style:italic;font-size:18px;color:#1a1c1a99;cursor:text}.day-focus-note-text em{color:#1a1c1a4d}.day-focus-note-remove{position:absolute;top:10px;right:10px;background:none;border:none;font-size:16px;color:#1a1c1a33;cursor:pointer;opacity:0;transition:opacity .15s}.day-focus-note:hover .day-focus-note-remove{opacity:1}.day-focus-day-note{padding:20px 0;margin-top:24px}.day-focus-day-note-text{font-family:var(--font-display);font-style:italic;font-size:15px;color:#1a1c1a80;cursor:text}.day-focus-grocery-btn{display:block;margin-top:32px;padding:0;background:none;border:none;font-family:var(--font-body);font-size:15px;font-weight:500;color:var(--color-secondary);cursor:pointer;text-align:left;transition:color .15s}.day-focus-grocery-btn:hover{color:var(--color-text)}.planner-grid-col-header{cursor:pointer;transition:color .15s}.planner-grid-col-header:hover .planner-grid-day-name{color:var(--color-text)}.planner-grid-note-card .planner-grid-note-title em{color:#1a1c1a59}.planner-daystack-view{display:none}.planner-gridview{display:block}@media (max-width: 768px){.day-focus-back-mobile{display:inline}.day-focus-back-desktop{display:none}.planner-grid{width:max-content;min-width:100%}.menu-detail--planner{--planner-grid-label-col: 90px;--planner-grid-day-col: 104px}.planner-grid-row-label{position:sticky;left:0;z-index:2}.planner-grid-corner{position:sticky;left:0;z-index:3}.planner-header{padding:16px 16px 0}.planner-detail-layout{padding:0 16px 48px}.planner-hero-title{font-size:22px}.planner-hero-meta .planner-notes-link,.planner-hero-meta .event-hero-sep--notes,.event-hero-meta .planner-notes-link,.event-hero-meta .event-hero-sep--notes{display:none}.planner-detail-main{padding-top:10px}.planner-daystack-day{padding-top:9px}.planner-view--stack .planner-daystack-view{display:block}.planner-view--stack .planner-gridview,.planner-view--grid .planner-daystack-view{display:none}.planner-view--grid .planner-gridview{display:block}.planner-grid-card{max-width:none}.planner-grid-card-title{font-size:12px}.planner-grid-card-time{font-size:10px}}.planner-daystack{padding:4px 0 0}.planner-daystack-day{padding:18px 0 6px}.planner-daystack-day+.planner-daystack-day{padding-top:16px}.planner-daystack-dayhead{display:flex;align-items:baseline;gap:10px;margin-bottom:7px;padding:6px 0;background:#4e42280b}.planner-daystack-dayname{font-family:var(--font-display);font-size:19px}.planner-daystack-date{font-family:var(--font-body);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#1a1c1a73}.planner-daystack-today{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;background:#1a1c1a;color:#faf9f6;padding:2px 7px;border-radius:9px}.planner-daystack-day--empty{padding:12px 0}.planner-daystack-day--empty .planner-daystack-dayhead{margin-bottom:0}.planner-unassigned-item{position:relative}.planner-unassigned-actions{display:flex;align-items:center;gap:8px;margin-top:4px}.planner-unassigned-place{flex:1;min-width:0;text-align:left;font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:normal;text-transform:none;color:#1a1c1a80;background:none;border:none;padding:0;cursor:pointer}.planner-unassigned-place:hover{color:var(--color-text);text-decoration:underline}.planner-unassigned-hint--tap{display:none}@media (hover: none){.planner-unassigned-hint--drag{display:none}.planner-unassigned-hint--tap{display:inline}}.planner-daystack-dayhead-overflow{margin-left:auto;align-self:baseline;background:none;border:none;color:#1a1c1a6b;font-size:16px;line-height:1;letter-spacing:.5px;padding:0 2px;cursor:pointer}.planner-daystack-dayhead-overflow:hover{color:var(--color-text)}.planner-daystack-meals{display:flex;flex-direction:column;gap:13px}.planner-daystack-meal{display:flex;flex-direction:column;gap:5px}.planner-daystack-meal-label{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:#1a1c1a80;margin:0}.planner-daystack-meal-tiles{display:flex;flex-direction:column;gap:2px}.planner-daystack-card{display:flex;flex-direction:row;align-items:center;gap:11px;padding:3px 0;position:relative;cursor:pointer}.planner-daystack-card-thumb{width:56px;height:56px;border-radius:4px;overflow:hidden;flex:none}.planner-daystack-card-img{width:100%;height:100%;object-fit:cover;display:block}.planner-daystack-card-img--placeholder{width:100%;height:100%;background:#ddd6cb;display:flex;align-items:center;justify-content:center;container-type:inline-size}.planner-daystack-card-body{flex:1;min-width:0}.planner-daystack-card-title{font-family:var(--font-display);font-size:15px;font-weight:400;line-height:1.2;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#1a1c1a}.planner-daystack-card-time{font-family:var(--font-body);font-size:11.5px;color:#1a1c1a80;margin:2px 0 0}.planner-daystack-card-overflow{position:static;flex:none;align-self:center;display:flex;align-items:center;justify-content:center;width:28px;height:40px;border:none;background:none;color:#1a1c1a5c;font-size:15px;line-height:1;letter-spacing:.5px;padding:0;cursor:pointer}.planner-daystack-card-overflow:hover{color:var(--color-text)}.planner-daystack-view .day-focus-note{background:none;padding:3px 0;margin-bottom:0;display:flex;align-items:baseline;gap:7px}.planner-daystack-view .day-focus-note-text{font-size:15px;color:#1a1c1a9e;flex:1;min-width:0}.planner-daystack-view .day-focus-note-remove{position:static;opacity:.4;align-self:center;padding:0 2px;font-size:15px}.planner-daystack-view .day-focus-note-remove:hover{opacity:1}.arp--needs-meal .cmp-recipe-list,.arp--needs-meal .cmp-recipe-item{pointer-events:none;opacity:.45}.arp--needs-meal .arp-meal-chip-row,.arp--needs-meal .arp-meal-chip-eyebrow{pointer-events:auto;opacity:1}.arp-meal-chip-eyebrow{font-family:var(--font-body);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:#1a1c1a66;padding:14px 24px 0}.arp-meal-chip-row{display:flex;justify-content:space-between;padding:8px 24px 0}.arp-meal-chip{padding:0 0 4px;border:none;border-bottom:1.5px solid transparent;background:transparent;font-size:11.5px;font-weight:500;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.07em;color:#8a8578;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}.arp-meal-chip:hover{color:#1a1c1a}.arp-meal-chip.active{color:#1a1c1a;font-weight:600;border-bottom-color:#1a1c1a}.event-sidebar-section{margin-bottom:48px}.event-sidebar-label{font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;text-transform:uppercase;letter-spacing:.18em;color:#75777a;margin:0 0 20px}.event-sidebar-list{list-style:none;margin:0;padding:0}.event-sidebar-list li{margin-bottom:24px}.event-sidebar-list li:last-child{margin-bottom:0}.event-sidebar-btn{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;font-family:var(--font-display);font-size:var(--text-reading-sm);font-weight:400;color:#1a1c1a;background:none;border:none;cursor:pointer;padding:0;transition:all .2s ease}.event-sidebar-btn:hover{font-style:italic}.event-sidebar-btn-icon{color:#75777a;opacity:.5;display:flex;align-items:center;flex-shrink:0}.event-sidebar-btn-icon svg{width:18px;height:18px}.event-sidebar-grocery-btn{display:block;width:100%;padding:12px 0;margin-top:20px;font-family:var(--font-body);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:#1a1c1a99;background:none;border:1px solid rgba(26,28,26,.15);cursor:pointer;text-align:center;transition:all .2s ease}.event-sidebar-grocery-btn:hover{color:#1a1c1a;border-color:#1a1c1a}.event-guest-list{display:flex;flex-direction:column;gap:10px;margin-top:20px}.event-guest{display:flex;align-items:center;gap:10px}.event-guest-avatar{width:28px;height:28px;border-radius:50%;background:#1a1c1a0f;display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:10px;font-weight:600;color:#1a1c1a80;flex-shrink:0}.event-guest-name{font-family:var(--font-body);font-size:var(--text-body-sm);color:#1a1c1a;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-guest-status{font-family:var(--font-body);font-size:var(--text-micro);font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:#1a1c1a4d;padding:2px 6px;border-radius:3px}.event-guest-status.confirmed{color:var(--color-secondary);background:#46563d14}.event-guest-status.declined{color:#ba1a1a99;background:#ba1a1a0f}.event-guest-status{cursor:pointer;border:none;background:none}.event-guest-remove{background:none;border:none;cursor:pointer;font-size:var(--text-body-sm);color:#1a1c1a26;padding:0 2px;opacity:0;transition:opacity .15s ease,color .15s ease}.event-guest:hover .event-guest-remove{opacity:1}.event-guest-remove:hover{color:var(--color-text)}.event-add-guest-btn{font-size:var(--text-reading-sm);margin-top:8px}.guests-panel{padding:0 24px 24px}.guests-panel-form{display:flex;flex-direction:column;gap:14px;padding:4px 0 20px}.guests-panel-label{display:flex;flex-direction:column;gap:6px;font-size:var(--text-caption);font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:#5a462dbf}.guests-panel-optional{font-weight:400;text-transform:none;letter-spacing:0;color:var(--color-text-light)}.guests-panel-input{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-cool);font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-text);box-sizing:border-box;transition:border-color .15s}.guests-panel-input:focus{outline:none;border-color:var(--color-text-muted)}.guests-panel-submit{align-self:flex-start;padding:9px 18px;background:var(--color-text);color:var(--color-bg);border:none;border-radius:4px;font-family:var(--font-body);font-size:var(--text-label);font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s}.guests-panel-submit:hover{background:var(--color-text-muted)}.guests-panel-divider{border-bottom:1px solid var(--color-border-light);margin-bottom:16px}.guests-panel-list-label{font-size:var(--text-caption);font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:#5a462dbf;margin:0 0 10px}.guests-panel-list{display:flex;flex-direction:column;gap:4px}.guests-panel-empty{font-size:var(--text-tag);color:var(--color-text-light);font-style:italic;margin:0}.guests-panel-row{padding:8px 4px}.guests-panel-meta{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.guests-panel-email{font-size:var(--text-label);color:var(--color-text-light);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-dropdown{background:var(--color-surface);border-radius:8px;box-shadow:0 4px 16px #0000001a;padding:4px 0;min-width:130px}.chip-dropdown button{display:block;width:100%;padding:7px 14px;font-size:12px;font-family:inherit;font-weight:400;border:none;background:transparent;color:var(--color-text);cursor:pointer;text-align:left;transition:background .12s}.chip-dropdown button:hover{background:#0000000a}.chip-note-input{font-size:10px;font-family:inherit;font-weight:400;color:var(--color-text-muted);background:transparent;border:none;border-bottom:1px solid var(--color-border);outline:none;padding:1px 0;margin-top:1px;width:100%;max-width:100%}.chip-note-input::placeholder{color:var(--color-text-light);font-style:italic}.chip-note-input:focus{border-bottom-color:var(--color-secondary)}.meal-note-title{font-style:italic;color:var(--color-text-muted)}.meal-note-title em{opacity:.5}.meal-note-label{font-size:var(--text-tag);color:var(--color-text-muted);opacity:.6}.meal-note-chip{cursor:text}.meal-note-chip .chip-content{gap:2px}.meal-note-title-input{font-family:var(--font-display);font-size:var(--text-body-sm);font-style:italic;font-weight:var(--font-weight-medium);color:var(--color-text);background:transparent;border:none;border-bottom:1px solid var(--color-border);outline:none;width:100%;padding:0 0 2px;line-height:1.3}.meal-note-title-input::placeholder{color:var(--color-text-light);font-style:italic}.meal-note-title-input:focus{border-bottom-color:var(--color-secondary)}.day-focus-note .meal-note-title-input{font-size:18px}.planner-grid-note-placeholder .meal-note-title-input{font-size:14px;text-align:center}.meal-notes-section{padding:8px 20px 16px}.meal-notes-header{font-size:var(--text-tag);font-weight:var(--font-weight-medium);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px}.meal-note-row{padding:4px 0}.meal-note-row-text{font-size:var(--text-body-sm);font-style:italic;color:var(--color-text-muted);cursor:pointer}.meal-note-row-text:hover{color:var(--color-text)}.menu-detail-photos-btn{font-size:var(--text-tag);color:var(--color-text-light);background:none;border:none;padding:0;cursor:pointer;transition:color .15s}.menu-detail-photos-btn:hover{color:var(--color-text)}.menu-detail-photos-btn .add-photos-text{color:var(--color-primary);font-weight:500}.menu-detail-photos-btn .photos-count{opacity:.7}.menu-detail-notes-btn{font-size:var(--text-tag);color:var(--color-text-light);background:none;border:none;padding:0;cursor:pointer;transition:color .15s}.menu-detail-notes-btn:hover{color:var(--color-text)}.menu-detail-notes-btn .add-notes-text{color:var(--color-primary);font-weight:500}.menu-detail-notes-btn .notes-indicator{opacity:.7}.menu-detail-field-active{color:var(--color-text)!important;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--color-primary);text-decoration-thickness:1.5px}.menu-detail-field-pulse{animation:menuDetailFieldPulse .3s ease-out}@keyframes menuDetailFieldPulse{0%{color:var(--color-primary)}to{color:var(--color-text)}}.right-panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000001f;z-index:9000}@keyframes rightPanelOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes rightPanelOverlayOut{0%{opacity:1}to{opacity:0}}.right-panel-overlay.closing{opacity:0;pointer-events:none}@keyframes rightPanelSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.right-panel{position:fixed;top:0;right:0;bottom:0;width:464px;max-width:90vw;background:#faf9f6;border-left:none;display:flex;flex-direction:column;box-shadow:-8px 0 40px #00000014,-2px 0 12px #00000008;pointer-events:auto}.right-panel[tabindex="-1"]:focus{outline:none}.edit-panel-overlay{background:none;pointer-events:none}.right-panel-header{display:flex;align-items:center;justify-content:space-between;padding:28px 28px 20px;padding-top:calc(28px + env(safe-area-inset-top,0px));border-bottom:1px solid rgba(26,28,26,.06)}.right-panel-header h3{margin:0;flex:1;font-family:var(--font-display);font-size:var(--panel-title-size);font-weight:var(--font-weight-regular);color:var(--color-text)}.arp-panel-title-meal{color:#1a1c1a80;font-style:italic}@media (max-width: 768px){.create-menu-panel .right-panel-header{justify-content:flex-end;padding-top:calc(3px + env(safe-area-inset-top,0px));padding-bottom:2px}.create-menu-panel .right-panel-header h3{display:none}.create-menu-panel .right-panel-body{padding-top:6px}.create-menu-panel .cmp-filter-row-eyebrow{display:none}.create-menu-panel .cmp-active-filter-row{display:none!important}.create-menu-panel .cmp-filter-chip.active:after{content:" ×";margin-left:5px;opacity:.7}}.right-panel-close{background:none;border:none;font-size:18px;color:#1a1c1a66;cursor:pointer;line-height:1;border-radius:0;transition:color .15s;outline:none;margin-left:auto;padding:13px;margin-right:-13px;display:inline-flex;align-items:center;justify-content:center}.right-panel-summary{font-family:var(--font-body);font-size:13px;color:var(--color-text-light);flex:1;min-width:0}.grocery-sheet-panel .right-panel-summary,.grocery-staples-panel .right-panel-summary{font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:var(--panel-title-size);color:var(--color-text);letter-spacing:-.005em;flex:1 1 auto}.grocery-sheet-panel .right-panel-header,.grocery-staples-panel .right-panel-header{border-bottom:none;padding-bottom:24px;padding-left:var(--panel-pad-x);padding-right:var(--panel-pad-x)}.grocery-sheet-panel .right-panel-close,.grocery-staples-panel .right-panel-close{align-self:flex-start;margin-top:-10px}.right-panel-close:hover{color:var(--color-text)}.right-panel-body{flex:1;overflow-y:auto;display:flex;flex-direction:column}.add-recipes-overlay .right-panel-body{padding:0 24px}.grocery-add-panel{width:400px}.grocery-add-body{padding:4px 24px 24px}.grocery-add-label{display:block;font-size:var(--text-tag);font-weight:500;color:var(--color-text-light);margin-bottom:8px}.grocery-add-input{width:100%;padding:11px 14px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--text-body);font-family:inherit;background:var(--color-bg-cool);box-sizing:border-box}.grocery-add-input:focus{outline:none;border-color:var(--color-secondary)}.grocery-add-hint{font-size:var(--text-label);color:var(--color-text-light);margin-top:8px}.grocery-add-items{margin-top:16px}.grocery-added-item{font-size:var(--text-tag);color:var(--color-text);padding:6px 0;border-bottom:1px solid var(--color-border-light, rgba(0,0,0,.06));animation:fadeIn .2s ease-out}.grocery-added-item:before{content:"✓";color:var(--color-secondary);margin-right:4px}.create-menu-panel .right-panel-body{overflow-y:auto}.cmp-metadata{padding:12px 24px 16px;display:flex;flex-direction:column;gap:16px}.cmp-name-field{position:relative}.cmp-name-field input{width:100%;padding:10px 14px;font-size:var(--text-body);font-family:inherit;border:1px solid var(--color-border-light);border-radius:8px;background:transparent;color:var(--color-text);outline:none;transition:border-color .15s}.cmp-name-field input:focus{border-color:var(--color-secondary)}.cmp-name-hint{display:none;font-size:var(--text-label);color:var(--color-danger);margin-top:4px}.cmp-name-hint.visible{display:block}.cmp-empty-link{display:block;background:none;border:none;font-size:var(--text-label);font-family:inherit;color:var(--color-text-light);cursor:pointer;padding:4px 0 0;transition:color .15s}.cmp-empty-link:hover{color:var(--color-text)}.cmp-type-tabs{display:flex;gap:0;border-bottom:1px solid rgba(26,28,26,.06)}.cmp-type-tab{flex:1;padding:8px 0 10px;font-size:var(--text-caption);font-weight:600;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;background:none;color:#1a1c1a66;border:none;border-bottom:2px solid transparent;cursor:pointer;margin-bottom:-1px}.cmp-type-tab:hover{color:#1a1c1ab3}.cmp-type-tab.active{color:#1a1c1a;border-bottom-color:#1a1c1a;font-weight:700}.cmp-date-section,.cmp-event-section{display:flex;flex-direction:column;gap:5px}.cmp-range-trigger .thyme-inline-value:empty:before{content:"Select dates";color:var(--color-text-light)}.cmp-type-desc{margin:2px 0 0;font-family:var(--font-body);font-size:var(--text-label);line-height:1.4;color:var(--color-text-light)}.cmp-creates{margin:2px 0 0;font-family:var(--font-body);font-size:var(--text-label);line-height:1.4;color:var(--color-text-muted)}.cmp-date-section:has(#cmpCalendar.open) .thyme-inline-caret,.cmp-event-section:has(#cmpEventCalendar.open) #cmpEventDateBtn .thyme-inline-caret{transform:rotate(180deg)}.cmp-calendar{display:none}.cmp-calendar.open{display:block;margin-top:8px}.cmp-calendar .calendar-header{margin-bottom:2px;padding:0}.cmp-calendar .calendar-month-year{font-size:var(--text-tag)}.cmp-calendar .calendar-nav{font-size:var(--text-tag);padding:2px 5px}.cmp-calendar .calendar-weekdays{margin-bottom:2px}.cmp-calendar .calendar-weekdays span{font-size:var(--text-micro);padding:1px 0}.cmp-calendar .calendar-days{gap:0}.cmp-calendar .calendar-day{aspect-ratio:unset;width:100%;height:28px;font-size:var(--text-caption);border-radius:0;background:none;position:relative}.cmp-calendar .calendar-day.selected:before,.cmp-calendar .calendar-day.today:before{content:"";position:absolute;width:28px;height:28px;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);z-index:0}.cmp-calendar .calendar-day.selected:before{background:#7d8b6a33}.cmp-calendar .calendar-day.selected{color:var(--color-secondary);font-weight:600;background:none}.cmp-calendar .calendar-day.range-start{background:#7d8b6a40;border-radius:14px 0 0 14px;color:var(--color-secondary);font-weight:600}.cmp-calendar .calendar-day.range-end{background:#7d8b6a40;border-radius:0 14px 14px 0;color:var(--color-secondary);font-weight:600}.cmp-calendar .calendar-day.range-mid{background:#7d8b6a24;border-radius:0}.cmp-calendar .calendar-day.range-start:before,.cmp-calendar .calendar-day.range-end:before,.cmp-calendar .calendar-day.range-mid:before{display:none}.cmp-divider{height:1px;background:var(--color-border-light);margin:0 24px}.cmp-recipe-disclosure{border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));margin:8px 0 0;padding:0 24px;display:flex;flex-direction:column;flex:1;min-height:0}.cmp-disclosure-toggle{width:100%;padding:14px 0;background:none;border:none;font-size:var(--text-tag);font-weight:500;font-family:inherit;color:var(--color-text-light);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:color .15s}.cmp-disclosure-toggle:hover{color:var(--color-text)}.cmp-disclosure-chevron{flex-shrink:0;transition:transform .2s;transform:rotate(-90deg)}.cmp-disclosure-chevron.open{transform:rotate(0)}.cmp-disclosure-content{display:flex;flex-direction:column;flex:1;min-height:0;padding-bottom:8px}.cmp-disclosure-content[hidden]{display:none}.cmp-quick-recipe-preview{display:flex;align-items:center;gap:12px;padding:14px 24px}.cmp-quick-recipe-name{font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:500;color:var(--color-text)}.cmp-recipe-added-badge{display:none;font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;color:#1a1c1a66;margin-left:auto;flex-shrink:0;min-width:18px;text-align:center}.cmp-recipe-item.selected .cmp-recipe-added-badge{display:inline}.cmp-recipe-stepper{display:flex;align-items:center;gap:0;margin-left:auto;flex-shrink:0}.cmp-stepper-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;font-size:16px;color:#1a1c1a59;transition:color .15s ease;padding:0}.cmp-stepper-btn:hover{color:#1a1c1a}.cmp-recipe-add-toggle{margin-left:auto;flex-shrink:0;font-family:var(--font-body);font-size:var(--text-title);line-height:1;color:#1a1c1a59;min-width:24px;text-align:center;transition:color .15s ease}.cmp-recipe-item:hover .cmp-recipe-add-toggle{color:#1a1c1a}.cmp-recipe-add-toggle.is-added{font-size:var(--text-caption);font-weight:500;color:var(--color-primary)}.cmp-stepper-count{font-family:var(--font-body);font-size:var(--text-tag);font-weight:500;color:#1a1c1a;min-width:18px;text-align:center}.cmp-recipes-section{flex:1;display:flex;flex-direction:column;min-height:0}.cmp-recipes-header{display:flex;align-items:baseline;gap:8px;padding:16px 24px 8px;font-size:var(--text-tag);font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.04em}.cmp-recipes-badge{font-size:var(--text-caption);font-weight:500;color:var(--color-copper);text-transform:none;letter-spacing:0}.cmp-course-select{display:flex;align-items:center;gap:12px;padding:4px 0 16px;border-bottom:1px solid rgba(26,28,26,.06);margin-bottom:8px}.cmp-course-select-label{font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:#75777a;white-space:nowrap}.cmp-course-select-dropdown{flex:1;font-family:var(--font-display);font-size:var(--text-body);color:#1a1c1a;background:transparent;border:none;border-bottom:1px solid rgba(26,28,26,.12);border-radius:0;padding:4px 16px 4px 0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='8' height='5' viewBox='0 0 8 5' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l3 3 3-3' stroke='%2375777a' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center}.cmp-course-chips{display:flex;flex-wrap:wrap;gap:6px;padding:6px 0 4px 62px;grid-column:1 / -1}.cmp-course-chip{font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;padding:3px 10px;border:1px solid rgba(26,28,26,.12);border-radius:0;background:transparent;color:#1a1c1a80;cursor:pointer;transition:all .15s ease;letter-spacing:.02em}.cmp-course-chip:hover{border-color:#1a1c1a4d;color:#1a1c1a}.cmp-course-chip.active{background:#1a1c1a;border-color:#1a1c1a;color:#faf9f6}.cmp-recipe-search{position:relative;padding:12px 0 8px}.cmp-search-icon{position:absolute;left:12px;top:calc(50% - 4px);transform:translateY(-50%);color:var(--color-text-light);pointer-events:none}.cmp-recipe-search input{width:100%;padding:10px 12px 10px 32px;font-size:var(--text-tag);font-family:var(--font-body);border:none;border-bottom:1px solid rgba(26,28,26,.1);border-radius:0;background:transparent;color:#1a1c1a;outline:none;transition:border-color .15s}.cmp-recipe-search input:focus{border-bottom-color:#1a1c1a}.cmp-recipe-search input:focus{border-color:var(--color-secondary)}.cmp-recipe-list{flex:1;overflow-y:auto;padding:0 0 8px}.cmp-recipe-item{display:flex;align-items:center;gap:14px;padding:10px 0;border-radius:0;cursor:pointer;transition:background .15s;border-bottom:1px solid rgba(26,28,26,.03)}.cmp-recipe-item:hover{background:#1a1c1a04}.cmp-recipe-item.selected{background:#1a1c1a05}.cmp-recipe-checkbox{width:18px;height:18px;flex-shrink:0;border:1.5px solid rgba(26,28,26,.2);border-radius:0;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.cmp-recipe-checkbox svg{width:12px;height:12px;stroke-width:2.5;opacity:0;transition:opacity .15s}.cmp-recipe-item.selected .cmp-recipe-checkbox{background:#1a1c1a;border-color:#1a1c1a}.cmp-recipe-item.selected .cmp-recipe-checkbox svg{opacity:1;stroke:#faf9f6}.cmp-recipe-thumb{width:48px;height:48px;border-radius:0;flex-shrink:0;background-size:cover;background-position:center;filter:contrast(.95) brightness(1.02) saturate(.95)}.cmp-recipe-thumb--textcover{position:relative;overflow:hidden}.cmp-recipe-title{font-family:var(--font-body);font-size:var(--text-tag);font-weight:400;color:#1a1c1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.cmp-recipe-empty{padding:40px 24px;text-align:center;color:var(--color-text-light);font-size:var(--text-body-sm)}.cmp-section-label{font-family:var(--font-body);font-size:var(--text-micro);font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:#1a1c1a59;padding:14px 0 6px}.cmp-browse-divider{border-top:1px solid rgba(26,28,26,.06);margin-top:8px;padding-top:16px}.cmp-filter-row-eyebrow{font-family:var(--font-body);font-size:var(--text-micro);font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:#1a1c1a66;padding:10px 0 0}.cmp-filter-row{display:flex;flex-wrap:nowrap;gap:8px;padding:4px 0 14px;overflow-x:auto;-webkit-overflow-scrolling:touch}.cmp-filter-row::-webkit-scrollbar{display:none}.cmp-filter-chip{padding:6px 12px;border:1px solid rgba(26,28,26,.12);background:transparent;border-radius:0;font-size:var(--text-label);font-weight:500;font-family:var(--font-body);color:#1a1c1a8c;cursor:pointer;white-space:nowrap}.cmp-filter-chip:hover{border-color:#1a1c1a40;color:#1a1c1acc}.cmp-filter-chip.active{background:#1a1c1a0f;border-color:#1a1c1a4d;color:#1a1c1a;font-weight:600}.cmp-more-filters-toggle{background:none;border:none;font-size:var(--text-label);font-family:inherit;color:var(--color-text-light);cursor:pointer;padding:2px 0 8px;text-align:left;transition:color .15s}.cmp-more-filters-toggle:hover{color:var(--color-text);text-decoration:underline}.cmp-filter-actions{display:flex;align-items:baseline;gap:16px}.cmp-more-caret{display:inline-block;font-size:10px}.cmp-expanded-filters{padding:0 0 8px;display:flex;flex-direction:column;gap:10px}.cmp-expanded-filters[hidden]{display:none}.cmp-filter-category-label{font-size:var(--text-caption);font-weight:500;color:var(--color-text-muted);letter-spacing:normal;margin-bottom:4px}.cmp-filter-category-chips{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch}.cmp-filter-category-chips::-webkit-scrollbar{display:none}.cmp-browse-link{background:none;border:none;font-size:var(--text-label);font-family:inherit;color:var(--color-text-light);cursor:pointer;padding:6px 0;text-align:left;transition:color .15s}.cmp-browse-link:hover{color:var(--color-text)}.cmp-active-filter-row{display:flex;align-items:center;gap:8px;padding:0 0 6px}.cmp-active-filter-label{font-size:var(--text-label);font-weight:500;color:var(--color-text)}.cmp-filter-clear{background:none;border:none;font-size:var(--text-label);font-family:inherit;color:var(--color-text-light);cursor:pointer;padding:0;transition:color .15s}.cmp-filter-clear:hover{color:var(--color-text)}.cmp-footer{padding:16px 24px;border-top:1px solid rgba(26,28,26,.06);display:flex;flex-direction:column;gap:8px}.cmp-footer-hint{font-size:var(--text-label);color:#75777a;text-align:center}.cmp-btn-create{width:100%;height:44px;padding:0 16px;font-size:var(--text-label);font-weight:500;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;background:#1a1c1a;color:#faf9f6;border:1px solid #1a1c1a;border-radius:0;cursor:pointer;transition:all .2s ease}.cmp-btn-create:disabled{opacity:.3;cursor:default}.cmp-btn-create:not(:disabled):hover{background:transparent;color:#1a1c1a}.cmp-btn-cancel{background:none;border:none;font-size:var(--text-label);font-family:var(--font-body);color:#75777a;cursor:pointer;padding:4px 0;text-align:center;letter-spacing:.04em}.cmp-btn-cancel:hover{color:#1a1c1a}.cmp-footer--inline{flex-direction:row;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px 12px}.cmp-footer--inline .cmp-btn-cancel{text-align:left;font-size:var(--text-tag);font-weight:600;color:var(--color-text-light)}.cmp-footer--inline .cmp-btn-cancel:hover{color:var(--color-text)}.cmp-footer--inline .cmp-btn-create{width:auto;height:auto;flex-shrink:0;padding:5px 16px;font-size:var(--text-label);font-weight:600;letter-spacing:normal;text-transform:none;background:none;color:var(--color-text);border:1px solid rgba(26,28,26,.18);border-radius:6px;transition:border-color .2s}.cmp-footer--inline .cmp-btn-create:not(:disabled):hover{background:none;color:var(--color-text);border-color:#1a1c1a66}.note-panel-wrapper{padding:0 24px 60px;display:flex;flex-direction:column;gap:10px}.note-cards{display:flex;flex-direction:column;gap:8px}.note-card{background:var(--color-surface);border:1px solid var(--color-border-light, rgba(0,0,0,.06));border-radius:6px;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease}.note-card:focus-within{border-color:var(--color-secondary);box-shadow:0 0 0 1px var(--color-secondary)}.note-card-header{display:flex;align-items:center;gap:4px;margin-bottom:2px}.note-card-header .note-card-remove{margin-left:auto}.note-type-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:none;border:none;font-family:inherit;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-light);cursor:pointer;padding:2px 14px 2px 0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5'%3E%3Cpath d='M0 0l4 4 4-4' fill='none' stroke='%23999' stroke-width='1.2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center}.note-type-select:focus{outline:none}.note-card-remove{background:none;border:none;color:var(--color-text-light);cursor:pointer;font-size:12px;padding:2px 4px;opacity:0;transition:opacity .15s,color .15s}.note-card:hover .note-card-remove,.note-card:focus-within .note-card-remove{opacity:1}.note-card-remove:hover{color:var(--color-primary)}.note-card-input{width:100%;min-height:36px;border:none;padding:0;font-family:inherit;font-size:14px;line-height:1.5;color:var(--color-text);background:transparent;resize:none;box-sizing:border-box}.note-card-input:focus{outline:none}.note-card-input::placeholder{color:var(--color-text-light)}.note-add-btn{background:none;border:none;color:var(--color-text-light);font-family:inherit;font-size:13px;cursor:pointer;padding:6px 0;text-align:left;transition:color .15s}.note-add-btn:hover{color:var(--color-secondary)}.note-type-label{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-light)}.note-card-text{font-size:14px;line-height:1.5;color:var(--color-text);cursor:pointer;white-space:pre-wrap;word-break:break-word}.note-card.collapsed .note-type-select,.note-card.collapsed .note-card-input{display:none}.note-card.collapsed .note-card-header{margin-bottom:1px}.note-card.collapsed{cursor:pointer}.note-card:not(.collapsed) .note-type-label{display:none}.note-card:not(.collapsed) .note-card-text{display:none}.note-header-add{background:none;border:none;color:var(--color-text-light);font-family:inherit;font-size:12px;font-weight:400;cursor:pointer;padding:4px 6px;transition:color .15s}.note-header-add:hover{color:var(--color-secondary)}.right-panel-header-actions{display:flex;align-items:center;gap:8px}.home-panel-wrapper{padding:4px 24px 20px}.home-row{display:flex;flex-direction:column;gap:6px;padding:11px 0;border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:background .15s}.home-row:hover{background:var(--color-border-light);margin:0 -10px;padding:11px 10px;border-radius:6px}.home-row-main{display:flex;align-items:center;justify-content:space-between}.home-row-label{font-size:16px;font-weight:600;color:var(--color-text)}.home-row.home-row-last{border-bottom:none}.home-row-arrow{font-size:15px;color:var(--color-text-light);opacity:.5}.home-photo-thumbs{display:flex;gap:6px}.home-thumb{width:32px;height:32px;border-radius:4px;background-size:cover;background-position:center;border:1px solid var(--color-border)}.home-note-types{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-light)}.home-source-row{cursor:default;flex-direction:column;gap:2px}.home-source-row:hover{background:transparent;margin:0;padding:11px 0}.home-source-row .home-row-arrow{display:none}.home-source-link{color:var(--color-primary);text-decoration:none;font-size:13px}.home-source-link:hover{opacity:.8}.home-source-name{color:var(--color-text-muted);font-size:13px}.home-actions-section{display:flex;flex-direction:column;margin-top:16px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface))}.home-actions-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-light);margin-bottom:4px}.home-action-btn{display:block;width:calc(100% - 14px);margin-left:14px;text-align:left;background:none;border:none;font-family:inherit;font-size:14px;color:var(--color-text-muted);padding:9px 0;cursor:pointer;transition:color .15s}.home-action-btn:hover{color:var(--color-text)}.home-action-btn.danger{color:var(--color-text-muted);font-size:13px;margin-top:4px;padding-top:9px;border-top:none}.home-action-btn.danger:hover{color:var(--color-text)}.home-delete-confirm{animation:confirmAppear .12s ease-out}.home-delete-confirm-title{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--color-text);margin:0 0 4px}.home-delete-confirm-body{font-size:12.5px;font-weight:400;color:var(--color-text-muted);margin:0 0 16px;line-height:1.4}.home-delete-confirm-actions{display:flex;gap:8px;justify-content:flex-end}.home-delete-confirm-cancel,.home-delete-confirm-btn{padding:7px 14px;border-radius:7px;font-size:13px;font-family:inherit;cursor:pointer;transition:all .15s}.home-delete-confirm-cancel{background:none;border:1px solid var(--color-border-light);color:#908a85;font-weight:400}.home-delete-confirm-cancel:hover{border-color:var(--color-border);color:var(--color-text-muted)}.home-delete-confirm-btn{background:#00000012;border:1px solid rgba(0,0,0,.08);color:var(--color-text);font-weight:500}.home-delete-confirm-btn:hover{background:#0000001c}.recipe-action-menu,.section-menu{font-family:var(--font-body);min-width:180px;background:var(--color-surface, #fff);border:1px solid rgba(0,0,0,.08);border-radius:6px;box-shadow:0 4px 16px #0000001a;padding:4px}.recipe-action-menu{position:absolute;z-index:10001;max-width:220px;animation:noteReveal .14s ease}.recipe-action-menu-item,.section-menu-item{display:block;width:100%;text-align:left;background:none;border:none;font-family:inherit;line-height:1.4;color:var(--color-text);padding:6px 12px;border-radius:4px;cursor:pointer;transition:background .1s ease,color .1s ease}.recipe-action-menu-item,.section-menu-item{font-size:13px}.recipe-action-menu-item:hover,.section-menu-item:hover,.section-menu-item:focus-visible{background:#0000000a;outline:none}.recipe-action-menu-divider{height:1px;margin:4px 6px;background:#0000000f}.recipe-action-menu-item.destructive{color:var(--color-text)}.recipe-action-menu-item.destructive:hover{background:#0000000a;color:var(--color-text)}#detailView .detail-header,#detailView .cook-toggle,#detailView .meta-scale,#detailView .grocery-icon-btn,#detailView #photosMetaLink,#detailView #notesMetaLink{user-select:none;-webkit-user-select:none}.recipe-action-menu--confirming{min-width:280px;max-width:320px}.recipe-action-menu-confirm{padding:10px 12px;animation:noteReveal .14s ease}.recipe-action-menu-confirm-title{font-size:14px;font-weight:500;color:var(--color-text);margin-bottom:4px}.recipe-action-menu-confirm-body{font-size:13px;color:var(--color-text-muted, rgba(0, 0, 0, .55));margin-bottom:10px;line-height:1.35}.recipe-action-menu-confirm-actions{display:flex;gap:18px;justify-content:flex-end}.recipe-action-menu-confirm-cancel,.recipe-action-menu-confirm-btn{font-family:inherit;font-size:13px;padding:2px 0;background:none;border:none;cursor:pointer;transition:color .15s,opacity .15s}.recipe-action-menu-confirm-cancel{color:var(--color-text-muted);font-weight:400}.recipe-action-menu-confirm-cancel:hover{color:var(--color-text)}.recipe-action-menu-confirm-btn{color:var(--color-text);font-weight:600}.recipe-action-menu-confirm-btn:hover{text-decoration:underline}.date-panel-calendar{padding:16px 24px}.date-panel-calendar .thyme-calendar{border:none;padding:0}.date-panel-actions{padding:12px 24px;display:flex;justify-content:center}.btn-date-save{background:none;border:1px solid var(--color-border);border-radius:8px;font-family:inherit;font-size:13px;font-weight:500;color:var(--color-text);padding:6px 20px;cursor:pointer;transition:all .15s}.btn-date-save:hover{background:var(--color-surface);border-color:var(--color-text-light)}.menu-notes-card{margin:0 24px 12px;padding:0;display:flex;flex-direction:column;gap:16px;background:transparent}.menu-notes-field{display:flex;flex-direction:column;gap:2px;padding:12px 0;background:none;border:none;border-bottom:1px solid rgba(0,0,0,.06);border-radius:0;transition:none}.menu-notes-field:last-child{border-bottom:none}.menu-notes-field:focus-within{border-color:#0000000f;box-shadow:none}.menu-notes-label{font-size:var(--text-caption);font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:#5a462dbf}.menu-notes-textarea{width:100%;min-height:0;padding:4px 0;border:none;font-family:inherit;font-size:var(--text-body);line-height:1.6;color:#4a433d;background:transparent;resize:none;box-sizing:border-box;overflow:hidden}.menu-notes-textarea:focus{outline:none}.menu-notes-textarea::placeholder{color:#50412d73;font-style:italic}.photos-drawer-actions{padding:0 24px 12px}.photos-add-link{background:none;border:none;padding:0;font-size:13px;font-weight:500;color:var(--color-text-light);cursor:pointer;transition:color .15s}.photos-add-link:hover{color:var(--color-primary)}.photo-panel-actions{padding:8px 24px 16px;display:flex;flex-direction:column}.photo-panel-option{display:block;width:100%;padding:10px 0;border:none;background:none;font-family:inherit;font-size:14px;font-weight:500;color:var(--color-text);cursor:pointer;text-align:left;text-decoration:none;border-bottom:1px solid var(--color-border-light);transition:color .15s}.photo-panel-option:last-child{border-bottom:none}.photo-panel-option:hover,.photo-panel-option:focus-visible{color:var(--color-primary)}.import-app-entry{margin-top:12px;padding-top:14px;border-top:1px solid var(--color-border-light)}.import-app-entry[hidden]{display:none}.import-app-link{display:block;width:100%;padding:4px 0;border:none;background:none;font-family:inherit;font-size:14px;font-weight:700;color:var(--color-text);cursor:pointer;text-align:left;text-decoration:none;transition:color .15s}.import-app-link:hover,.import-app-link:focus-visible{color:var(--color-primary)}.import-app-explainer{margin:2px 0 0;font-size:12px;line-height:1.4;color:var(--color-text-light)}.photo-link-inline{padding:4px 0 8px}.photo-link-inline-title{font-size:13px;font-weight:600;color:var(--color-text);margin-bottom:10px}.photo-link-inline-input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;font-family:inherit;color:var(--color-text);background:var(--color-bg-cool);box-sizing:border-box;transition:border-color .15s ease}.photo-link-inline-input:focus{outline:none;border-color:var(--color-secondary)}.photo-link-inline-error{font-size:12px;color:var(--color-text-light);min-height:0;margin-top:4px}.photo-link-inline-error:empty{display:none}.photo-link-inline-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.photo-link-cancel{background:none;border:none;font-family:inherit;font-size:13px;font-weight:500;color:var(--color-text-light);cursor:pointer;padding:6px 12px}.photo-link-add{background:var(--color-secondary);border:none;border-radius:6px;font-family:inherit;font-size:13px;font-weight:500;color:#fff;cursor:pointer;padding:6px 16px}.photo-link-add:disabled{opacity:.35;cursor:default}.photos-drawer-grid{padding:0 24px 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;align-content:start}.photo-thumb{position:relative;aspect-ratio:1;background-size:cover;background-position:center;border-radius:6px;overflow:hidden}.photo-thumb-cover{box-shadow:0 0 0 2px var(--color-primary)}.photo-thumb-badge{position:absolute;bottom:4px;left:4px;background:#0000008c;color:#fff;font-size:9px;font-weight:500;letter-spacing:.3px;padding:2px 6px;border-radius:3px;text-transform:uppercase}.photo-thumb-actions{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,rgba(0,0,0,.35) 0%,transparent 45%);display:flex;align-items:flex-start;justify-content:flex-end;gap:3px;padding:5px;opacity:0;transition:opacity .15s}.photo-thumb:hover .photo-thumb-actions{opacity:1}.photo-cover-label{height:22px;border-radius:4px;background:#ffffffe0;border:none;cursor:pointer;padding:0 8px;font-family:inherit;font-size:10px;font-weight:500;color:var(--color-text-muted);transition:background .15s,color .15s}.photo-cover-label:hover{background:#fff;color:var(--color-primary)}.photo-thumb-cover .photo-cover-label{background:var(--color-primary);color:#fff}.photo-action-btn{height:22px;border-radius:4px;background:#ffffffe0;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 6px;font-size:10px;font-weight:500;color:var(--color-text-muted);transition:background .15s,color .15s}.photo-action-btn:hover{background:#fff;color:var(--color-primary)}.photo-action-remove{font-size:12px;padding:0 5px}.photo-action-remove:hover{color:var(--color-text)}.tile-editor,.tile-picker{padding:4px 24px 24px}.tile-editor-hint,.tile-picker-heading{font-size:13px;color:var(--color-text-muted);line-height:1.45;margin:0 0 16px}.tile-editor-grid{display:grid;gap:5px;aspect-ratio:1;max-width:300px;margin:0 auto}.tile-editor-grid--4,.tile-editor-grid--3{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.tile-editor-grid--3 .tile-editor-cell:first-child{grid-row:1 / -1}.tile-editor-grid--2{grid-template-columns:1fr 1fr}.tile-editor-cell{position:relative;border:none;padding:0;border-radius:10px;overflow:hidden;cursor:pointer;background-size:cover;background-position:center;min-height:96px;outline:2px solid transparent;outline-offset:2px;transition:outline-color .15s,transform .12s}.tile-editor-cell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#00000080,#0000000d 45%)}.tile-editor-cell:hover{outline-color:var(--color-secondary)}.tile-editor-cell:active{transform:scale(.985)}.tile-editor-tag{position:absolute;top:7px;left:7px;z-index:1;font-size:8.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:#0006;color:#fff}.tile-editor-cell.is-auto .tile-editor-tag{background:#ffffffe6;color:var(--color-text-muted)}.tile-editor-name{position:absolute;left:8px;right:30px;bottom:7px;z-index:1;font-size:11.5px;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.45);line-height:1.15;text-align:left}.tile-editor-pencil{position:absolute;right:7px;bottom:7px;z-index:1;width:22px;height:22px;border-radius:999px;background:#fffffff0;display:grid;place-items:center;color:#333}.tile-editor-pencil svg{width:12px;height:12px}.tile-editor-actions{display:flex;justify-content:center;margin-top:18px;min-height:20px}.tile-editor-reset{border:none;background:none;cursor:pointer;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--color-secondary);padding:6px 10px}.tile-editor-reset:hover{text-decoration:underline}.tile-picker-back{border:none;background:none;cursor:pointer;font-family:inherit;font-size:13px;color:var(--color-text-muted);padding:2px 0 12px}.tile-picker-back:hover{color:var(--color-text)}.tile-picker-heading{font-family:var(--font-display);font-size:16px;color:var(--color-text);margin-bottom:12px}.tile-picker-list{display:flex;flex-direction:column;gap:2px}.tile-pick-row{display:flex;align-items:center;gap:12px;width:100%;border:none;background:none;cursor:pointer;font-family:inherit;text-align:left;padding:8px;border-radius:10px;transition:background .12s}.tile-pick-row:hover:not(:disabled){background:var(--color-bg-hover)}.tile-pick-row.is-current{background:var(--color-surface-alt)}.tile-pick-row:disabled{opacity:.45;cursor:default}.tile-pick-auto{border:1px dashed var(--color-border-strong);margin-bottom:10px}.tile-pick-sw{width:46px;height:46px;border-radius:8px;flex:0 0 auto;background-size:cover;background-position:center;background-color:var(--color-surface-alt)}.tile-pick-sw--auto{display:grid;place-items:center;font-size:8.5px;font-weight:800;letter-spacing:.04em;color:var(--color-text-light);background:repeating-linear-gradient(45deg,#ecebe7,#ecebe7 6px,#e2e0da 6px,#e2e0da 12px)}.tile-pick-name{flex:1;font-size:14.5px;color:var(--color-text);line-height:1.25}.tile-pick-name small{display:block;font-size:11.5px;color:var(--color-text-light)}.tile-pick-check{width:20px;height:20px;flex:0 0 auto;color:var(--color-secondary)}.photos-film{display:flex;gap:8px;overflow-x:auto;padding:4px 24px 14px;scrollbar-width:thin}.photos-film-thumb{position:relative;flex:0 0 auto;width:64px;height:64px;border-radius:6px;border:2px solid transparent;background-size:cover;background-position:center;cursor:pointer;padding:0;transition:border-color .15s,transform .15s,box-shadow .15s}.photos-film-thumb:hover{border-color:var(--color-border-strong)}.photos-film-thumb.is-selected{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 10px #00000029}.photos-film-thumb.is-cover:after{content:"";position:absolute;bottom:4px;right:4px;width:7px;height:7px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 2px #ffffffe6}.photos-canvas{position:relative;margin:0 24px;height:320px;border-radius:8px;overflow:hidden;background:#1d1c1a;display:flex;align-items:center;justify-content:center;transition:height .28s ease}.photos-canvas.is-expanded{height:520px}.photos-canvas-img{width:100%;height:100%;object-fit:contain;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.photos-canvas.is-crop{cursor:grab;touch-action:none;background:#000}.photos-canvas.is-crop.is-dragging{cursor:grabbing}.photos-canvas.is-crop .photos-canvas-img{object-fit:cover}.photos-crop-hint{position:absolute;left:0;right:0;bottom:8px;margin:0;text-align:center;font-size:11px;color:#ffffffd9;text-shadow:0 1px 2px rgba(0,0,0,.6);pointer-events:none}.photos-nav{display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 24px 4px}.photos-nav-btn{border:none;background:none;cursor:pointer;font-size:20px;line-height:1;color:var(--color-text-muted);padding:2px 8px;transition:color .15s}.photos-nav-btn:hover{color:var(--color-text)}.photos-nav-counter{font-size:12px;color:var(--color-text-muted);min-width:56px;text-align:center}.photos-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 24px 20px}.photos-canvas-cover{position:absolute;top:8px;right:8px;display:flex;align-items:center;gap:8px;opacity:0;transition:opacity .15s}.photos-canvas:hover .photos-canvas-cover{opacity:1}.photos-canvas-cover-state{font-size:11px;font-weight:600;color:#fff;background:#00000080;padding:3px 8px;border-radius:4px;text-shadow:0 1px 2px rgba(0,0,0,.5)}.photos-canvas-link{font-family:inherit;font-size:11px;font-weight:600;color:#fff;background:#00000080;border:none;padding:3px 8px;border-radius:4px;cursor:pointer;transition:background .15s}.photos-canvas-link:hover{background:#000000b8}.photos-canvas-delete{width:22px;height:22px;border:none;border-radius:50%;background:#00000080;color:#fff;font-size:11px;line-height:1;cursor:pointer;transition:background .15s}.photos-canvas-delete:hover{background:#000c}.photos-btn{padding:8px 16px;border-radius:6px;border:1px solid var(--color-border);background:#fff;font-family:inherit;font-size:13px;font-weight:500;color:var(--color-text);cursor:pointer;transition:background .15s,filter .15s,color .15s,border-color .15s}.photos-btn:hover{background:var(--color-bg-cool)}.photos-btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.photos-btn-primary:hover{filter:brightness(.92)}.photos-btn-danger{color:var(--color-text)}.photos-btn-danger:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.photos-crop-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 24px 20px}.photos-zoom{display:flex;gap:6px}.photos-zoom-btn{width:32px;height:32px;border-radius:6px;border:1px solid var(--color-border);background:#fff;cursor:pointer;font-size:16px;line-height:1;color:var(--color-text);transition:background .15s}.photos-zoom-btn:hover{background:var(--color-bg-cool)}.photos-crop-confirm{display:flex;gap:8px}.photos-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 32px;text-align:center}.photos-empty-headline{margin:0 0 6px;font-size:14px;font-weight:500;color:var(--color-text)}.photos-empty-hint{margin:0 0 24px;font-size:13px;color:var(--color-text-light);line-height:1.5}.photos-empty-add{background:none;border:none;padding:8px 20px;font-size:13px;font-weight:500;color:var(--color-primary);cursor:pointer;border-radius:6px;transition:background .15s}.photos-empty-add:hover{background:#ad5b390f}.menu-card-cover{width:100%;aspect-ratio:16 / 9;background-size:cover;background-position:center;border-radius:8px;margin-bottom:8px}.share-scrim{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;z-index:299}.share-scrim.open{display:block}.share-popover{display:none;position:fixed;z-index:300;background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-sm);padding:4px;min-width:200px;max-width:260px}#sharePopover{min-width:260px;max-width:344px;z-index:1098}#shareScrim{z-index:1097}.share-popover.open{display:block;animation:sharePopIn .18s ease-out}@keyframes sharePopIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.share-popover-toggle-row{display:flex;align-items:center;gap:10px;cursor:pointer;padding:6px 12px}.share-popover-toggle-label{flex:1;font-size:var(--panel-row-size);color:var(--color-text)}.share-popover-toggle-input{position:absolute;opacity:0;width:0;height:0}.share-popover-toggle-track{position:relative;width:36px;height:20px;background:#00000026;border-radius:10px;transition:background .2s;flex-shrink:0}.share-popover-toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #00000026}.share-popover-toggle-input:checked+.share-popover-toggle-track{background:var(--color-secondary)}.share-popover-toggle-input:checked+.share-popover-toggle-track:after{transform:translate(16px)}.share-popover-action{display:flex;align-items:center;gap:10px;width:100%;padding:6px 12px;background:none;border:none;border-radius:0;font-family:var(--font-body);font-size:var(--panel-row-size);color:var(--color-text);cursor:pointer;transition:background .15s;text-align:left}.share-popover-action:hover:not(:disabled){background:var(--color-surface-alt)}.share-popover-action:disabled{opacity:.45;cursor:default}.share-popover-action svg{flex-shrink:0;color:var(--color-text-muted);width:18px;height:18px}.share-popover-action[hidden]{display:none}.share-popover-update{color:var(--color-text-muted)}.share-popover-update:hover:not(:disabled){color:var(--color-text)}.share-popover-close{display:none}@media (max-width: 600px){.share-popover{min-width:unset;max-width:unset;left:0!important;right:0!important;bottom:0!important;top:auto!important;border-radius:0;width:100%;padding:0;display:none;flex-direction:row;align-items:center;z-index:1000!important;background:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:none;padding-bottom:env(safe-area-inset-bottom,0px)}.share-popover:not(.share-sheet){transform:none!important}.share-popover.open{display:flex;animation:shareSlideUp .15s ease-out}.share-scrim{background:#0000000a;z-index:999}body.share-open .bottom-nav{display:none!important}@keyframes shareSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}#sharePopover.share-popover.open{max-width:unset;min-width:unset;z-index:1098!important}}@media (min-width: 601px){#grocerySharePopover.share-sheet{padding:6px 6px 8px;min-width:240px;max-width:300px}#sharePopover.share-sheet{width:243px;min-width:0;max-width:calc(100vw - 32px);padding:11px 0 9px;border-radius:10px}#sharePopover.share-sheet .share-sheet-header{margin:0 15px;padding-bottom:8px}#sharePopover.share-sheet .share-sheet-recipe-title{font-size:calc(var(--text-reading-sm) * .7 + 3px)}#sharePopover.share-sheet .share-popover-toggle-row{margin:0 15px;padding:12px 0}#sharePopover.share-sheet .share-popover-toggle-label{font-size:calc(var(--text-reading-sm) * .7 + 2px)}#sharePopover.share-sheet .share-popover-toggle-track{width:34px;height:18px;border-radius:9px}#sharePopover.share-sheet .share-popover-toggle-track:after{width:14px;height:14px}#sharePopover.share-sheet .share-popover-toggle-input:checked+.share-popover-toggle-track:after{transform:translate(16px)}#sharePopover.share-sheet .share-sheet-actions{flex-direction:row;justify-content:space-evenly;padding:7px 15px 0}#sharePopover.share-sheet .share-sheet-actions--copy-only{justify-content:flex-start}#sharePopover.share-sheet .share-sheet-action{width:auto;gap:8px;padding:5px 6px;border-radius:6px;font-size:calc(var(--text-reading) * .7 + 1.5px)}#sharePopover.share-sheet .share-sheet-action svg{width:17px;height:17px}#sharePopover.share-sheet #nativeShareBtn svg{width:18px;height:18px;margin:-.5px}}#sharePopover .share-sheet-header{margin:0 22px;border-bottom:1px solid var(--color-border)}#sharePopover .share-sheet-recipe-title{margin:0;font-family:var(--font-body);font-size:var(--text-reading-sm);font-weight:var(--font-weight-semibold);line-height:1.3;color:var(--color-text);overflow-wrap:anywhere}#sharePopover .share-popover-toggle-row{margin:0 22px;border-bottom:1px solid var(--color-border)}#sharePopover .share-popover-toggle-label{font-size:var(--text-reading-sm);color:var(--color-text-muted)}#sharePopover .share-popover-toggle-track{width:48px;height:26px;border-radius:13px}#sharePopover .share-popover-toggle-track:after{width:22px;height:22px}#sharePopover .share-popover-toggle-input:checked+.share-popover-toggle-track:after{transform:translate(22px)}#sharePopover .share-sheet-action{font-size:var(--text-reading);color:var(--color-text)}#sharePopover .share-sheet-action svg{width:24px;height:24px;color:var(--color-text);stroke-width:1.6}#sharePopover #nativeShareBtn svg{width:26px;height:26px;margin:-1px}.share-sheet-handle{display:none}.share-sheet-title{margin:0;padding:8px 12px 6px;font-family:var(--font-body);font-size:14px;font-weight:var(--font-weight-semibold, 600);color:var(--color-text)}.share-sheet-actions{display:flex;flex-direction:column}.share-sheet-expiry{margin:0;padding:6px 12px 0;font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-muted, #5F5A54)}.share-sheet-expiry:empty{display:none}.share-sheet-newlink{align-self:flex-start;margin:4px 4px 2px;padding:6px 8px;background:none;border:none;font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-muted, #5F5A54);text-decoration:underline;cursor:pointer}.share-sheet-newlink:hover{color:var(--color-text)}.share-sheet-newlink:disabled{opacity:.5;cursor:default}@media (max-width: 600px){.share-sheet{left:0!important;right:0!important;bottom:0!important;top:auto!important;transform:none;width:100%;min-width:unset;max-width:unset;flex-direction:column;align-items:stretch;background:var(--color-bg);border:none;border-radius:16px 16px 0 0;box-shadow:0 -8px 30px #00000029;padding:8px 0 calc(8px + env(safe-area-inset-bottom,0px));z-index:1000!important}.share-sheet.open{display:flex;animation:shareSlideUp .18s ease-out}.share-sheet .share-sheet-handle{display:block;width:36px;height:4px;margin:6px auto 4px;border-radius:2px;background:var(--color-border)}.share-sheet .share-sheet-title{padding:6px 20px 10px;font-size:var(--text-body);text-align:left}.share-sheet .share-sheet-action{flex:none;width:100%;justify-content:flex-start;gap:14px;padding:16px 20px;font-size:var(--text-body);border-left:none}.share-sheet .share-sheet-action svg{display:inline;width:20px;height:20px}.share-sheet .share-popover-toggle-row{padding:14px 20px;gap:14px;flex-shrink:0}.share-sheet .share-popover-toggle-label{font-size:var(--text-body)}#sharePopover .share-sheet-header{margin:0 20px;padding:6px 0 16px}#sharePopover.share-sheet .share-popover-toggle-row{margin:0 20px;padding:18px 0}#sharePopover.share-sheet .share-sheet-actions{padding-top:6px}#groceryShareScrim.share-scrim,#shareScrim.share-scrim{background:#0000004d}}.menu-share-modal-scrim{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1c1a59;z-index:999}.menu-share-modal-scrim.open{display:block}.menu-share-modal{display:none;position:fixed;z-index:1000;top:50%;left:50%;transform:translate(-50%,-50%) scale(.96);background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-md);padding:20px 24px 16px;width:min(340px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto}.menu-share-modal.open{display:block;animation:menuShareModalIn .2s ease-out forwards}@keyframes menuShareModalIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.menu-share-modal-close{position:absolute;top:14px;right:14px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--color-text-muted);font-size:22px;line-height:1;border-radius:4px;transition:color .15s,background .15s}.menu-share-modal-close:hover{color:var(--color-text);background:var(--color-surface-alt)}.menu-share-modal-header{text-align:center;margin-bottom:14px}.menu-share-modal-title{font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:var(--panel-title-sub-size);color:var(--color-text);margin:0 0 3px}.menu-share-modal-subtitle{font-family:var(--font-display);font-style:italic;font-size:var(--text-body);color:var(--color-text-muted);margin:0}.menu-share-modal-subtitle:empty{display:none}.menu-share-scope-group{display:flex;flex-direction:column;border-top:1px solid var(--color-border-light);padding:6px 0;margin-bottom:4px}.menu-share-scope-group[hidden]{display:none}.menu-share-scope-option{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:11px 2px}.menu-share-scope-option--disabled{cursor:default}.menu-share-scope-option--disabled .menu-share-scope-name,.menu-share-scope-option--disabled .menu-share-scope-desc{color:var(--color-text-muted);opacity:.6}.menu-share-scope-input{margin:3px 0 0;accent-color:var(--color-secondary, #46563D);flex-shrink:0}.menu-share-scope-body{display:flex;flex-direction:column;gap:1px;min-width:0}.menu-share-scope-name{font-family:var(--font-body);font-size:var(--panel-row-size);color:var(--color-text)}.menu-share-scope-desc{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-muted)}.menu-share-scope-hint{font-family:var(--font-body);font-size:var(--text-tag);font-style:italic;color:var(--color-text-muted);margin-top:2px}.menu-share-modal-toggle-row{display:flex;align-items:center;gap:12px;cursor:pointer;padding:11px 0;border-top:1px solid var(--color-border-light);margin-bottom:12px}.menu-share-modal-toggle-row[hidden]{display:none}.menu-share-modal-toggle-label{flex:1;font-family:var(--font-body);font-size:var(--panel-row-size);color:var(--color-text)}.menu-share-modal-toggle-input{position:absolute;opacity:0;width:0;height:0}.menu-share-modal-toggle-track{position:relative;width:36px;height:20px;background:#00000026;border-radius:10px;transition:background .2s;flex-shrink:0}.menu-share-modal-toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #00000026}.menu-share-modal-toggle-input:checked+.menu-share-modal-toggle-track{background:var(--color-secondary)}.menu-share-modal-toggle-input:checked+.menu-share-modal-toggle-track:after{transform:translate(16px)}.menu-share-modal-actions{display:flex;gap:10px;margin-bottom:8px}.menu-share-modal-copy-btn,.menu-share-modal-share-via{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;padding:10px 16px;border-radius:8px;background:none;border:1px solid var(--color-border);font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:500;color:var(--color-text);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.menu-share-modal-copy-btn svg,.menu-share-modal-share-via svg{flex-shrink:0;color:var(--color-text-muted)}.menu-share-modal-copy-btn:hover:not(:disabled),.menu-share-modal-share-via:hover:not(:disabled){background:var(--color-surface-alt);border-color:var(--color-text)}.menu-share-modal-copy-btn:disabled,.menu-share-modal-share-via:disabled{opacity:.45;cursor:default}.menu-share-update-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:8px 16px;margin-bottom:10px;background:none;border:none;border-radius:8px;font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-text-muted);cursor:pointer;transition:background .15s,color .15s}.menu-share-update-btn[hidden]{display:none}.menu-share-update-btn svg{flex-shrink:0}.menu-share-update-btn:hover:not(:disabled){background:var(--color-surface-alt);color:var(--color-text)}.menu-share-update-btn:disabled{opacity:.45;cursor:default}@media (max-width: 600px){.menu-share-modal{width:calc(100vw - 24px);padding:20px 22px 16px}}.menus-calendar-link{display:inline-flex;align-items:center;gap:4px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:100px;font-family:var(--font-body);font-size:var(--text-tag);font-weight:500;color:var(--color-text-muted);letter-spacing:.02em;cursor:pointer;padding:5px 12px;transition:background .15s,border-color .15s,color .15s}.menus-calendar-link:hover{background:var(--color-surface-alt);border-color:var(--color-text-light);color:var(--color-text)}.calendar-panel-overlay{background:#0000000d}.calendar-panel{width:360px}.calendar-panel-body{padding:12px 24px 24px;overflow-y:auto}.cal-month-header{display:flex;align-items:center;justify-content:center;gap:12px;padding:4px 0 14px}.cal-month-label{font-family:var(--font-display);font-size:var(--text-reading-sm);font-weight:600;color:var(--color-text);min-width:150px;text-align:center}.cal-nav-btn{background:none;border:none;font-size:var(--text-reading-sm);color:var(--color-text-light);cursor:pointer;padding:4px 6px;border-radius:4px;line-height:1;opacity:.4;transition:opacity .15s}.cal-nav-btn:hover{opacity:1}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:0}.cal-day-header{font-family:var(--font-body);font-size:var(--text-micro);font-weight:400;color:var(--color-text-light);text-align:center;padding:0 0 6px;text-transform:uppercase;letter-spacing:.4px;opacity:.7}.cal-day-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 0;background:none;border:none;cursor:pointer;font-family:var(--font-body);font-size:var(--text-tag);font-weight:400;color:var(--color-text-muted);min-height:36px;transition:background .12s,color .12s;position:relative}.cal-day-cell.empty,.cal-day-cell.other-month{cursor:default;color:#ccc8c0}.cal-day-cell:not(.empty):not(.other-month):not(.selected):not(.range-start):not(.range-mid):not(.range-end):hover{background:#00000006}.cal-day-cell.today{font-weight:700;color:var(--color-text)}.cal-day-cell.selected{background:#7d8b6a33;color:var(--color-secondary);font-weight:600;border-radius:999px}.cal-day-cell.selected:hover{background:#7d8b6a4d}.cal-day-cell.range-start,.cal-day-cell.range-end{background:#7d8b6a40;color:var(--color-secondary);font-weight:600}.cal-day-cell.range-start{border-radius:999px 0 0 999px}.cal-day-cell.range-end{border-radius:0 999px 999px 0}.cal-day-cell.range-mid{background:#7d8b6a24;color:var(--color-text);border-radius:0}.cal-day-cell.range-start:hover,.cal-day-cell.range-end:hover{background:#7d8b6a59}.cal-day-cell.range-mid:hover{background:#7d8b6a38}.cal-day-cell.has-menu{color:var(--color-text)}.cal-dot{display:block;width:4px;height:4px;border-radius:50%;background:var(--color-text-light);margin-top:2px}.cal-dot.multi{width:5px;height:5px}.cal-day-cell.selected .cal-dot,.cal-day-cell.range-start .cal-dot,.cal-day-cell.range-end .cal-dot{background:var(--color-secondary)}.cal-menu-list{margin-top:16px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface))}.cal-menu-list-header{font-family:var(--font-body);font-size:var(--text-label);font-weight:500;color:var(--color-text-muted);margin-bottom:10px}.cal-menu-list-empty{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);padding:8px 0}.cal-menu-item{display:flex;flex-direction:column;align-items:flex-start;width:100%;background:none;border:1px solid var(--color-border-light);border-radius:8px;padding:10px 14px;cursor:pointer;margin-bottom:8px;transition:border-color .15s,background .15s;text-align:left}.cal-menu-item:hover{border-color:var(--color-border);background:#00000004}.cal-menu-item-name{font-family:var(--font-display);font-size:var(--text-body-sm);font-weight:600;color:var(--color-text);line-height:1.3}.cal-menu-item-meta{font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text-light);margin-top:3px}.cal-day-menu{padding:14px 0;border-bottom:1px solid var(--color-border-light)}.cal-day-menu:last-child{border-bottom:none}.cal-day-menu-title{display:inline-block;background:none;border:none;padding:0;font-family:var(--font-display);font-size:var(--text-body);font-weight:600;color:var(--color-text);cursor:pointer;text-align:left;transition:color .15s}.cal-day-menu-title:hover{color:var(--color-secondary)}.cal-day-menu-archived{font-family:var(--font-body);font-size:var(--text-caption);font-weight:400;color:var(--color-text-light);margin-left:6px;text-transform:none}.cal-day-menu-empty{font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);font-style:italic;margin-top:8px}.cal-day-group{margin-top:10px}.cal-day-group-label{font-family:var(--font-body);font-size:var(--text-micro);font-weight:500;letter-spacing:.6px;color:var(--color-text-light);text-transform:uppercase;margin-bottom:4px}.cal-day-recipe-list{list-style:none;padding:0;margin:0}.cal-day-recipe-list li{padding:4px 0;line-height:1.4}.cal-day-recipe-link{display:flex;align-items:center;gap:12px;width:100%;background:none;border:none;padding:0;text-align:left;cursor:pointer;transition:background .15s}.cal-day-recipe-link:hover{background:#0000000a;border-radius:8px}.cal-day-recipe-thumb{width:44px;height:44px;flex-shrink:0;background-size:cover;background-position:center;background-color:#e8e5e0;filter:contrast(.95) brightness(1.02) saturate(.95)}.cal-day-recipe-thumb--textcover{position:relative;overflow:hidden;background-color:transparent}.cal-day-recipe-title{font-family:var(--font-display);font-size:var(--text-body-sm);font-weight:400;color:var(--color-text);line-height:1.4;min-width:0;flex:1}@keyframes calHighlight{0%{box-shadow:0 0 #ad5b3940}50%{box-shadow:0 0 0 3px #ad5b3926}to{box-shadow:0 0 #ad5b3900}}.menu-card.cal-highlight{animation:calHighlight 1.2s ease-out}.menus-blank-state{text-align:center;padding:96px 24px 0}.placement-panel-overlay{background:#0000000d}.placement-panel{width:340px}.pl-body{padding:0 24px 24px}.pl-recipe-row{display:flex;align-items:center;gap:12px;padding:0 0 20px}.pl-recipe-thumb{width:40px;height:40px;border-radius:6px;background-size:cover;background-position:center;background-color:var(--color-page);flex-shrink:0}.pl-recipe-thumb-empty{display:flex;align-items:center;justify-content:center}.pl-recipe-name{font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--color-text)}.pl-day-strip{display:flex;gap:6px;flex-wrap:wrap}.pl-day-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 10px;background:none;border:1px solid var(--color-border-light);border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s;min-width:52px}.pl-day-btn:hover{border-color:var(--color-border);background:#00000004}.pl-day-btn.active{border-color:#1a1c1a4d;background:#1a1c1a0a}.pl-day-name{font-family:var(--font-body);font-size:12px;font-weight:600;color:var(--color-text)}.pl-day-date{font-family:var(--font-body);font-size:10px;color:var(--color-text-light)}.pl-day-btn.active .pl-day-name{color:#1a1c1a}.pl-day-btn.active .pl-day-date{color:#1a1c1a99}.pl-course-list{display:flex;flex-direction:column;gap:6px}.pl-course-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;background:none;border:1px solid rgba(26,28,26,.1);border-radius:4px;cursor:pointer;text-align:left}.pl-course-item:hover{border-color:#1a1c1a38}.pl-course-item.active{border-color:#1a1c1a4d;background:#1a1c1a0a}.pl-course-name{font-family:var(--font-body);font-size:13px;font-weight:500;color:var(--color-text)}.pl-course-count{font-family:var(--font-body);font-size:11px;color:var(--color-text-light)}.pl-course-item.active .pl-course-name{color:var(--color-primary)}.pl-course-block{display:flex;flex-direction:column}.pl-course-head{display:flex;align-items:stretch;gap:4px}.pl-course-head .pl-course-item{flex:1;min-width:0}.pl-course-expand{flex:0 0 auto;width:34px;background:none;border:1px solid rgba(26,28,26,.1);border-radius:4px;cursor:pointer;color:var(--color-text-light);font-size:11px;line-height:1;transition:transform .15s,border-color .2s}.pl-course-expand:hover{border-color:#1a1c1a38}.pl-course-expand.expanded{transform:rotate(180deg)}.pl-course-contents{padding:6px 4px 2px}.pl-course-recipes{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.pl-course-recipe{display:flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:12px;color:var(--color-text)}.pl-course-recipe-thumb{width:28px;height:28px;border-radius:4px;background-size:cover;background-position:center;flex:0 0 auto}.pl-course-recipe-thumb--textcover{position:relative;overflow:hidden}.pl-course-recipe-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amp-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow-y:auto;padding:0}.amp-header{gap:8px;align-items:flex-start;padding:18px 24px 6px;padding-top:calc(18px + env(safe-area-inset-top,0px))}.amp-titlewrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:0}.amp-name-wrap{display:flex;align-items:center;gap:6px;margin:-2px -6px;padding:2px 6px;border-radius:6px;cursor:text;transition:background .12s}.amp-name-wrap:focus-within{background:#1a1c1a0d}.amp-name-input{flex:1;min-width:0;border:none;background:none;padding:0;font-family:var(--font-display);font-size:20px;font-weight:500;color:var(--color-text)}.amp-name-input:focus{outline:none}.amp-name-edit{flex:0 0 auto;color:var(--color-text-light);opacity:.4;transition:opacity .12s}.amp-name-wrap:hover .amp-name-edit,.amp-name-wrap:focus-within .amp-name-edit{opacity:.8}.amp-subrow{display:flex;flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px;width:100%}.amp-subtitle{display:block;font-family:var(--font-body);font-size:12px;color:var(--color-text-muted);margin:2px 0 22px}.amp-switch{align-self:flex-start;padding:0;background:none;border:none;font-family:var(--font-body);font-size:12px;font-weight:500;color:var(--color-text-light);cursor:pointer}.amp-switch:hover{color:var(--color-text);text-decoration:underline;text-underline-offset:2px}.amp-definition{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.amp-def-seg{position:relative;display:inline-flex}.amp-def-sep{color:var(--color-text-light);font-size:12px;-webkit-user-select:none;user-select:none}.amp-select-divider{height:1px;margin:5px 8px;background:var(--color-border-light)}.amp-def-trigger{display:inline-flex;align-items:center;gap:4px;padding:1px 0;background:none;border:none;cursor:pointer;font-family:var(--font-body)}.amp-def-value{font-size:13px;font-weight:500;color:var(--color-text)}.amp-def-caret{color:var(--color-text-light);transition:transform .18s,color .12s;margin-top:1px}.amp-def-trigger:hover .amp-def-value{text-decoration:underline;text-underline-offset:2px}.amp-def-trigger:hover .amp-def-caret{color:var(--color-text)}.amp-def-date.none .amp-def-value{color:var(--color-text-light);font-weight:400}.amp-def-seg:has(.amp-select-list.open) .amp-def-caret{transform:rotate(180deg)}.amp-select-list.amp-select-list{position:absolute;top:calc(100% + 6px);left:0;min-width:168px;margin:0;width:auto;padding:5px;border:1px solid var(--color-border-light);border-radius:10px;box-shadow:0 8px 28px #1e23291f;background:var(--color-surface)}.amp-select-option{padding:7px 12px;border-radius:6px;font-size:14px;text-align:left}.amp-select-list .thyme-select-option:before{content:none}.amp-select-option.active{color:var(--color-text);font-weight:600;background:#1a1c1a0a}.amp-select-option:hover{background:#1a1c1a0d}.amp-picker{flex:none;background:#1a1c1a0a;border-radius:10px;padding:12px 16px;margin:6px 16px 14px}.amp-picker .cmp-recipe-list{max-height:208px;overflow-y:auto}.amp-picker .cmp-recipe-item{gap:12px;padding:7px 0}.amp-picker .cmp-recipe-thumb{width:36px;height:36px;border-radius:4px;filter:none}.amp-picker .cmp-recipe-title{font-size:var(--text-tag)}.amp-picker #cpCourseChip:empty{display:none}.press-wizard-picker-panel .right-panel-body{display:flex;flex-direction:column;padding:12px 16px;min-height:0;overflow:hidden}.press-wizard-picker-panel .cmp-footer{flex:0 0 auto}.link-recipe-overlay .right-panel-body{padding:0 24px}.cmp-recipe-hint{font-family:var(--font-body);font-size:var(--text-label-lg);color:var(--color-text-light);padding:14px 2px;margin:0}.amp-course{border-bottom:1px solid rgba(26,28,26,.06)}.amp-course-heading{display:flex;align-items:center;gap:8px;width:100%;padding:13px 24px;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--font-body);transition:background .15s ease}.amp-course-heading:hover{background:#1a1c1a08}.amp-course-heading--static,.amp-course-heading--static:hover{cursor:default;background:none}.amp-course-name{flex:1;font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--color-text)}.amp-course-count{font-family:var(--font-body);font-size:11px;color:var(--color-text-light);font-variant-numeric:tabular-nums}.amp-course-active{box-shadow:inset 3px 0 0 var(--color-secondary)}.amp-course-active .amp-course-heading,.amp-course-active .amp-course-heading:hover{background:#46563d1c}.amp-course-active .amp-course-name{font-weight:700;color:var(--color-secondary)}.amp-course-active .amp-course-count{color:var(--color-secondary)}.amp-course-body{padding:0 24px 6px}.amp-course-body:empty{padding:0}.amp-contents{flex:1 0 auto;padding-top:14px;border-top:1px solid rgba(26,28,26,.08)}.amp-section{border-bottom:1px solid rgba(26,28,26,.06)}.amp-section-summary{display:flex;align-items:center;gap:8px;padding:15px 24px;cursor:pointer;list-style:none}.amp-section-summary::-webkit-details-marker{display:none}.amp-section-name{flex:1;font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--color-text)}.amp-section-count{font-family:var(--font-body);font-size:11px;color:var(--color-text-light)}.amp-section-summary:after{content:"▾";color:var(--color-text-light);font-size:10px;transition:transform .15s}.amp-section[open] .amp-section-summary:after{transform:rotate(180deg)}.amp-section-body{padding:0 24px 10px}.amp-flat{padding:4px 24px 10px}.amp-recipe-row{display:flex;align-items:center;gap:10px;padding:9px 0}.amp-thumb{width:36px;height:36px;border-radius:4px;background-size:cover;background-position:center;flex:0 0 auto}.amp-thumb--textcover{position:relative;overflow:hidden;background:transparent}.amp-note-row{padding:6px 0;font-family:var(--font-body);font-size:13px;font-style:italic;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amp-recipe-name{flex:1;min-width:0;font-family:var(--font-body);font-size:13px;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amp-recipe-remove{flex:0 0 auto;width:26px;height:26px;border:none;background:none;color:var(--color-text-light);cursor:pointer;border-radius:50%;font-size:12px}.amp-recipe-remove:hover{background:#1a1c1a0f;color:var(--color-text)}.amp-row-actions{position:relative;flex:0 0 auto}.amp-row-menu-btn{width:28px;height:28px;border:none;background:none;color:var(--color-text-light);cursor:pointer;border-radius:50%;font-size:16px;line-height:1}.amp-row-menu-btn:hover{background:#1a1c1a0f;color:var(--color-text)}.amp-row-menu{position:absolute;right:0;top:calc(100% + 2px);z-index:20;min-width:184px;padding:4px;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(26,28,26,.12);border-radius:8px;box-shadow:0 8px 24px #0000001f}.amp-row-menu[hidden]{display:none}.amp-row-menu-item{text-align:left;padding:8px 10px;background:none;border:none;border-radius:6px;font-family:var(--font-body);font-size:13px;color:var(--color-text);cursor:pointer;white-space:nowrap}.amp-row-menu-item:hover{background:#1a1c1a0d}.amp-row-menu-item.is-current{font-weight:600;color:var(--color-secondary)}.amp-row-menu-sep{height:1px;background:#1a1c1a14;margin:4px 0}.amp-empty{font-family:var(--font-body);font-size:12px;color:var(--color-text-light);margin:0;padding:2px 0}.amp-footer{position:sticky;bottom:0;z-index:2;background:#faf9f6;padding:14px 24px;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));display:flex;align-items:center;justify-content:space-between;gap:16px}.amp-open-full{padding:8px 0;background:none;border:none;font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--color-text-muted);text-underline-offset:2px;cursor:pointer;transition:color .2s}.amp-open-full:hover{color:var(--color-text);text-decoration:underline}.amp-cancel{padding:8px 0;background:none;border:none;font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:color .2s}.amp-cancel:hover{color:var(--color-text);text-decoration:underline;text-underline-offset:2px}.active-menu-overlay.amp-committing .active-menu-panel{pointer-events:none;opacity:.7}.amp-done{flex-shrink:0;padding:5px 16px;background:none;border:1px solid rgba(26,28,26,.18);border-radius:6px;font-family:var(--font-body);font-size:12px;font-weight:600;color:var(--color-text);cursor:pointer;transition:border-color .2s}.amp-done:hover{border-color:#1a1c1a59}.cm-top{flex:0 0 auto;padding:20px 28px 18px;border-bottom:1px solid rgba(26,28,26,.06)}.cm-search-wrap{position:relative}.cm-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-light);pointer-events:none}.cm-search{width:100%;box-sizing:border-box;padding:9px 12px 9px 33px;font-family:var(--font-body);font-size:14px;color:var(--color-text);background:#fff;border:1px solid rgba(26,28,26,.1);border-radius:8px}.cm-search::placeholder{color:var(--color-text-light)}.cm-search:focus{outline:none;border-color:#1a1c1a47;box-shadow:0 0 0 3px #1a1c1a0a}.cm-body{padding:18px 28px 8px}.cm-section-label{font-family:var(--font-body);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-light);margin:0 0 10px}.cm-empty{font-family:var(--font-body);font-size:13px;color:var(--color-text-light);padding:18px 0}.cm-menu-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:16px 0;background:none;border:none;border-bottom:1px solid rgba(26,28,26,.045);border-radius:6px;cursor:pointer;text-align:left;font:inherit;color:inherit}.cm-list .cm-menu-row:last-of-type{border-bottom:none}.cm-menu-row[hidden]{display:none}.cm-menu-row:hover{background:#1a1c1a08}.cm-menu-row-current{background:#1a1c1a0b}.cm-menu-left{display:flex;align-items:center;gap:8px;min-width:0}.cm-menu-name{font-family:var(--font-body);font-size:15px;font-weight:500;line-height:1.3;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.cm-current-pill{flex:0 0 auto;padding:2px 8px;border-radius:999px;background:#1a1c1a14;font-family:var(--font-body);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-light)}.cm-menu-end{display:flex;align-items:center;gap:10px;flex:0 0 auto}.cm-menu-meta{font-family:var(--font-body);font-size:12px;color:var(--color-text-light);white-space:nowrap}.cm-create{display:inline-flex;align-items:center;margin-top:18px;padding:0;background:none;border:none;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--color-text-light);cursor:pointer;text-align:left}.cm-create:hover{color:var(--color-text);text-decoration:underline;text-underline-offset:2px}.nm-body{padding:20px 28px 24px}.nm-context{font-family:var(--font-body);font-size:13px;font-weight:400;color:var(--color-text-light);margin-bottom:20px}.nm-context strong{color:var(--color-text);font-weight:600}.nm-types{display:flex;flex-direction:column;gap:14px}.nm-type{display:flex;align-items:center;gap:14px;width:100%;padding:9px 16px;background:none;border:1px solid rgba(26,28,26,.14);border-radius:10px;cursor:pointer;text-align:left;transition:border-color .12s,background .12s}.nm-type:hover{border-color:#1a1c1a4d;background:#1a1c1a05}.nm-type:active{border-color:#1a1c1a73;background:#1a1c1a0f}.nm-type-icon{flex:0 0 auto;color:var(--color-text-light)}.nm-type-text{display:flex;flex-direction:column;gap:2px;min-width:0}.nm-type-label{font-family:var(--font-body);font-size:15px;font-weight:500;color:var(--color-text)}.nm-type-desc{font-family:var(--font-body);font-size:13px;color:var(--color-text-light)}.pl-footer{padding:12px 24px 16px;border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));display:flex;flex-direction:column;gap:8px;align-items:center}.pl-confirm-btn{width:100%;height:36px;padding:0 16px;font-size:13px;font-weight:600;font-family:inherit;background:var(--color-primary);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.pl-confirm-btn:hover{background:var(--color-primary-hover)}.pl-skip-link{background:none;border:none;font-family:var(--font-body);font-size:12px;color:var(--color-text-light);cursor:pointer;padding:0;transition:color .15s}.pl-skip-link:hover{color:var(--color-text);text-decoration:underline;text-underline-offset:2px}.books-page{display:none;background:var(--color-bg)}.books-page.open{display:block;flex:1;animation:fadeInUp .25s ease-out}.books-page.open:has(.studio),.books-page.open:has(.press-wizard){position:fixed;top:var(--header-height, 96px);left:0;right:0;bottom:0;z-index:40;overflow-y:auto;flex:none}.books-page.open:has(.press-wizard){overflow-x:hidden}.app-content.unlocked:has(.books-page.open) .main-content{flex:none;padding-bottom:0}.books-page-content{max-width:1440px;margin:0 auto;padding:24px 24px 60px}.books-page-content:has(.studio){height:100%;box-sizing:border-box}.press-new-book-btn{display:block;width:100%;margin-top:16px;padding:12px;background:none;border:1px dashed var(--color-border-light);border-radius:8px;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:border-color .15s,color .15s}.press-new-book-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.press-heading{font-family:var(--font-display);font-size:22px;font-weight:500;color:var(--color-text);margin:0}.press-book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px}@media (min-width: 768px){.press-book-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.press-book-card{cursor:pointer;transition:transform .15s ease;position:relative}.press-book-card:hover{transform:translateY(-2px)}.press-book-delete,.press-book-share{position:absolute;top:6px;right:6px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:#ffffffe0;border:1px solid var(--color-border);border-radius:50%;color:var(--color-text-muted);cursor:pointer;padding:0;opacity:0;transition:opacity .15s ease,color .15s ease,background .15s ease;z-index:2}.press-book-share{right:38px}.press-book-card:hover .press-book-delete,.press-book-card:focus-within .press-book-delete,.press-book-delete:focus-visible,.press-book-card:hover .press-book-share,.press-book-card:focus-within .press-book-share,.press-book-share:focus-visible{opacity:1}.press-book-delete:hover,.press-book-share:hover{color:var(--color-primary, #1a1c1a);background:#fff}@media (hover: none){.press-book-delete,.press-book-share{opacity:.55}}.press-book-cover{aspect-ratio:3 / 4;border-radius:6px;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 2px 8px #0000000f,2px 0 4px #00000008}.press-book-cover-inner{padding:24px;text-align:center;width:100%}.press-book-cover-title{font-size:16px;font-weight:500;line-height:1.3;word-break:break-word}.press-book-cover-author{font-size:11px;margin-top:8px;letter-spacing:.5px;text-transform:uppercase}.press-book-meta{display:flex;justify-content:space-between;padding:8px 2px 0;font-size:12px;color:var(--color-text-muted)}.press-empty-state{padding:32px 0 0}.press-empty-heading{font-size:14px;font-weight:500;color:var(--color-text);margin:0 0 4px}.press-empty-body{font-size:13px;line-height:1.5;color:var(--color-text-muted);margin:0 0 14px}.press-empty-cta{background:none;border:none;font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--color-primary);cursor:pointer;padding:0}.press-empty-cta:hover{text-decoration:underline}.studio{display:flex;flex-direction:column;height:100%;min-height:0}.studio-header{display:flex;align-items:center;gap:16px;padding:0 0 16px;border-bottom:1px solid var(--color-border-light);margin-bottom:20px}.studio-back{display:inline-flex;align-items:center;gap:4px;background:none;border:none;font-family:var(--font-body);font-size:14px;color:var(--color-text-muted);cursor:pointer;padding:4px 0}.studio-back:hover{color:var(--color-text)}.studio-tabs{display:flex;gap:0;background:#00000008;border-radius:8px;padding:2px}.studio-tab{background:none;border:none;padding:6px 16px;font-family:var(--font-body);font-size:13px;font-weight:500;color:var(--color-text-muted);cursor:pointer;border-radius:6px;transition:all .15s}.studio-tab.active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 3px #0000000f}.studio-header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.studio-export{display:flex;align-items:center;gap:4px;background:none;border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;padding:4px 10px;border-radius:6px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s}.studio-export:hover{background:var(--color-bg-hover, #f0f0f0);border-color:var(--color-text-light)}.studio-delete{background:none;border:none;color:var(--color-text-light);cursor:pointer;padding:4px;border-radius:4px;transition:color .15s}.studio-delete:hover{color:var(--color-text)}.studio-body{display:flex;gap:32px;flex:1;min-height:0}.studio-controls{width:40%;flex-shrink:0;overflow-y:auto;padding-right:8px}.studio-preview{flex:1;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:8px 0}@media (max-width: 768px){.studio-body{flex-direction:column}.studio-controls{width:100%}}.studio-section{margin-bottom:28px}.studio-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-light);margin-bottom:10px}.studio-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.studio-recipe-count{font-size:12px;color:var(--color-text-muted)}.studio-swatches{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}.studio-swatch{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:2px solid transparent;border-radius:10px;padding:8px 10px;cursor:pointer;transition:border-color .15s;flex-shrink:0}.studio-swatch:hover{border-color:var(--color-border)}.studio-swatch.active{border-color:var(--color-primary)}.studio-swatch-cover{width:48px;height:64px;border-radius:4px;border:1px solid;display:flex;align-items:flex-end;justify-content:center;padding-bottom:8px;box-shadow:0 1px 4px #0000000f}.studio-swatch-stripe{width:24px;height:3px;border-radius:2px}.studio-swatch-label{font-size:11px;font-weight:500;color:var(--color-text-muted);white-space:nowrap}.studio-swatch.active .studio-swatch-label{color:var(--color-text)}.studio-input{display:block;width:100%;padding:8px 0;border:none;border-bottom:1px solid var(--color-border-light);background:transparent;font-family:var(--font-body);color:var(--color-text);outline:none;box-sizing:border-box;transition:border-color .15s}.studio-input:focus{border-bottom-color:var(--color-primary)}.studio-input::placeholder{color:var(--color-text-light)}.studio-input-title{font-size:20px;font-weight:600;margin-bottom:4px}.studio-input-subtitle{font-size:15px;color:var(--color-text-muted);margin-bottom:4px}.studio-input-author{font-size:13px;letter-spacing:.03em}.studio-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 16px}.studio-suggestion{background:none;border:1px solid var(--color-border-light);border-radius:100px;padding:3px 10px;font-size:12px;font-family:var(--font-body);color:var(--color-text-light);cursor:pointer;transition:border-color .15s,color .15s}.studio-suggestion:hover{border-color:var(--color-primary);color:var(--color-primary)}.studio-chapter-list{display:flex;flex-direction:column;gap:16px}.studio-chapter-system{font-size:12px;color:var(--color-text-light);padding:4px 0;font-style:italic}.studio-chapter-block{background:var(--color-surface);border-radius:10px;border:1px solid var(--color-border-light);overflow:hidden}.studio-chapter-header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--color-border-light)}.studio-chapter-marker{font-size:12px;color:var(--color-primary)}.studio-chapter-title{flex:1;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text)}.studio-chapter-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s}.studio-chapter-header:hover .studio-chapter-actions{opacity:1}.studio-chapter-recipes{padding:4px 0}.studio-chapter-empty{padding:12px 16px;font-size:13px;color:var(--color-text-light);font-style:italic}.studio-recipe-row{display:flex;align-items:center;gap:8px;padding:7px 12px;font-size:13px;transition:background .1s}.studio-recipe-row:hover{background:#00000005}.studio-recipe-drag{color:var(--color-text-light);font-size:14px;cursor:grab;-webkit-user-select:none;user-select:none}.studio-recipe-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.studio-recipe-actions{display:flex;gap:2px;flex-shrink:0;opacity:0;transition:opacity .15s}.studio-recipe-row:hover .studio-recipe-actions{opacity:1}.studio-ch-btn{background:none;border:none;cursor:pointer;font-size:14px;color:var(--color-text-muted);padding:2px 4px;border-radius:4px;line-height:1}.studio-ch-btn:hover{background:#0000000d;color:var(--color-text)}.studio-ch-remove:hover{color:var(--color-text)}.studio-add-row{display:flex;gap:8px;margin-top:12px}.studio-add-btn{background:none;border:1px dashed var(--color-border);border-radius:6px;padding:6px 12px;font-size:13px;color:var(--color-text-muted);cursor:pointer;font-family:var(--font-body);transition:border-color .15s,color .15s}.studio-add-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.studio-toggles{display:flex;flex-direction:column;gap:8px}.studio-toggle{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text);cursor:pointer}.studio-toggle input[type=checkbox]{accent-color:var(--color-primary)}.studio-cover{width:100%;max-width:380px;aspect-ratio:1 / 1.414;position:sticky;top:0}.studio-cover-page{width:100%;height:100%;background:var(--book-color-bg, #F9F7F3);border:1px solid var(--book-color-border, #DDD6CC);border-radius:4px;box-shadow:0 8px 30px #0000001a,2px 0 8px #0000000a;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px 32px;text-align:center;box-sizing:border-box}.studio-cover-title{font-size:28px;font-weight:700;line-height:1.2;margin-bottom:8px;max-width:100%;word-wrap:break-word}.studio-cover-subtitle{font-size:15px;line-height:1.4;margin-bottom:24px;min-height:1em}.studio-cover-author{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;min-height:1em}.press-picker-search{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;font-family:var(--font-body);margin-bottom:12px;box-sizing:border-box}.press-picker-search:focus{outline:none;border-color:var(--color-primary)}.press-picker-list{flex:1;overflow-y:auto;margin-bottom:12px}.press-picker-row{display:flex;align-items:center;gap:10px;padding:8px 4px;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background .1s}.press-picker-row:hover{background:#00000005}.press-picker-row.checked{background:#ad5b390a}.press-picker-row input[type=checkbox]{accent-color:var(--color-primary);flex-shrink:0}.press-picker-thumb{width:40px;height:40px;border-radius:4px;object-fit:cover;flex-shrink:0;background:var(--color-surface)}.press-picker-thumb--textcover{position:relative;overflow:hidden}.press-picker-name{flex:1;min-width:0;font-size:14px;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.press-picker-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--color-border)}.press-picker-count{font-size:13px;color:var(--color-text-muted)}.press-cover-footer-status{display:flex;align-items:baseline;gap:12px;min-width:0}.press-cover-remove-photo{background:none;border:none;padding:4px 0;font-family:var(--font-body);font-size:var(--text-tag);font-weight:600;color:var(--color-text-light);cursor:pointer}.press-cover-remove-photo:hover{color:var(--color-text)}.press-cover-footer-status [hidden]{display:none}.press-picker-empty{text-align:center;padding:40px 20px;color:var(--color-text-muted);font-size:14px}.book-container{display:flex;flex-direction:column;align-items:center;gap:24px;padding:12px 0;width:100%}.book-page{width:100%;max-width:var(--book-page-max-width, 680px);background:var(--book-color-bg, #F9F7F3);color:var(--book-color-text, #1E2329);font-family:var(--book-font-body, sans-serif);font-size:var(--book-body-size, 15px);line-height:var(--book-body-lh, 1.65);padding:32px 36px;box-sizing:border-box;box-shadow:0 1px 6px #00000014;border-radius:2px;position:relative}.book-page.book-empty{display:flex;align-items:center;justify-content:center;color:var(--book-color-muted, #888)}.book-title-page{display:flex;align-items:center;justify-content:center;aspect-ratio:var(--book-page-aspect, 1 / 1.414)}.book-title-page-content{text-align:center;max-width:80%}.book-title-page-title{font-family:var(--book-font-display, serif);font-size:calc(var(--book-title-size, 28px) * 1.4);font-weight:var(--book-title-weight, 500);color:var(--book-color-primary, #AD5B39);line-height:1.15;margin:0 0 20px;word-wrap:break-word}.book-title-page-subtitle{font-family:var(--book-font-body, sans-serif);font-size:var(--book-subtitle-size, 16px);color:var(--book-color-muted, #5F5A54);line-height:1.5;margin:0 0 32px}.book-title-page-author{font-family:var(--book-font-body, sans-serif);font-size:var(--book-label-size, 12px);letter-spacing:1.5px;text-transform:uppercase;color:var(--book-color-muted, #5F5A54);margin:0}.book-toc-heading{font-family:var(--book-font-display, serif);font-size:var(--book-title-size, 28px);font-weight:var(--book-title-weight, 500);color:var(--book-color-primary, #AD5B39);margin:0 0 var(--book-section-break, 32px) 0}.book-toc-group{margin-bottom:var(--book-paragraph-gap, 16px)}.book-toc-chapter{font-family:var(--book-font-display, serif);font-size:var(--book-subtitle-size, 16px);font-weight:600;color:var(--book-color-text, #1E2329);margin:0 0 var(--book-item-gap, 6px) 0;padding-bottom:var(--book-item-gap, 6px);border-bottom:1px solid var(--book-color-border, #DDD6CC)}.book-toc-recipes{list-style:none;padding:0;margin:0}.book-toc-recipe{font-size:var(--book-body-size, 15px);color:var(--book-color-text, #1E2329);padding:4px 0 4px 16px;position:relative}.book-toc-recipe:before{content:"—";position:absolute;left:0;color:var(--book-color-muted, #5F5A54)}.book-divider{display:flex;align-items:center;justify-content:center;aspect-ratio:var(--book-page-aspect, 1 / 1.414)}.book-divider-content{text-align:center}.book-divider-ornament{font-size:18px;color:var(--book-color-accent, #46563D);margin-bottom:16px}.book-divider-title{font-family:var(--book-font-display, serif);font-size:calc(var(--book-title-size, 28px) * 1.1);font-weight:var(--book-title-weight, 500);color:var(--book-color-primary, #AD5B39);margin:0;letter-spacing:.01em}.book-divider-photo{padding:0;position:relative;overflow:hidden}.book-divider-image{width:100%;height:100%;object-fit:cover;display:block}.book-divider-overlay{position:absolute;bottom:0;left:0;right:0;padding:32px 36px;background:linear-gradient(transparent,#0000008c)}.book-divider-photo .book-divider-title{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}.book-recipe-hero{padding:0;overflow:hidden;position:relative;aspect-ratio:3 / 4;display:flex;align-items:flex-end}.book-recipe-hero-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.book-recipe-hero-overlay{position:relative;z-index:1;width:100%;padding:48px 40px 40px;background:linear-gradient(to top,rgba(0,0,0,.55) 0%,rgba(0,0,0,.15) 60%,transparent 100%)}.book-recipe-hero-title{font-family:var(--book-font-display, serif);font-size:clamp(24px,5vw,36px);font-weight:var(--book-title-weight, 500);color:#fff;line-height:1.15;margin:0;text-shadow:0 1px 6px rgba(0,0,0,.3)}.book-recipe-headnote{font-family:var(--book-font-body, sans-serif);font-style:italic;font-size:var(--book-body-size, 15px);color:var(--book-color-muted, #5F5A54);line-height:1.6;margin:0 0 var(--book-paragraph-gap, 16px) 0}.book-recipe-missing{color:var(--book-color-muted, #888);font-style:italic}.book-recipe-image-wrap{display:none}.book-recipe-title{font-family:var(--book-font-display, serif);font-size:var(--book-title-size, 28px);font-weight:var(--book-title-weight, 500);color:var(--book-color-primary, #AD5B39);line-height:1.2;margin:0 0 var(--book-item-gap, 6px) 0}.book-recipe-meta{font-size:var(--book-label-size, 12px);color:var(--book-color-muted, #5F5A54);margin:0 0 var(--book-section-break, 32px) 0;letter-spacing:.02em}.book-recipe-body{display:flex;flex-direction:column;gap:var(--book-section-break, 32px)}.book-recipe-ingredients-heading,.book-recipe-instructions-heading{font-family:var(--book-font-body, sans-serif);font-size:var(--book-label-size, 12px);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--book-color-primary, #AD5B39);margin:0 0 var(--book-item-gap, 6px) 0;padding-bottom:var(--book-item-gap, 6px);border-bottom:1px solid var(--book-color-border, #DDD6CC)}.book-recipe-section-header{font-family:var(--book-font-body, sans-serif);font-size:var(--book-body-size, 15px);font-weight:600;color:var(--book-color-text, #1E2329);margin:var(--book-paragraph-gap, 16px) 0 var(--book-item-gap, 6px) 0}.book-recipe-section-header:first-child{margin-top:0}.book-recipe-ingredient-list{list-style:none;padding:0;margin:0}.book-recipe-ingredient-list li{padding:3px 0;line-height:1.5}.book-recipe-step-list{padding-left:20px;margin:0}.book-recipe-step-list li{padding:var(--book-item-gap, 6px) 0;line-height:1.6}.book-recipe-note{display:block;font-size:var(--book-callout-size, 15px);font-style:var(--book-callout-style, italic);color:var(--book-color-muted, #5F5A54);margin-top:2px;padding-left:12px;border-left:2px solid var(--book-color-border, #DDD6CC)}.book-index-heading{font-family:var(--book-font-display, serif);font-size:var(--book-title-size, 28px);font-weight:var(--book-title-weight, 500);color:var(--book-color-primary, #AD5B39);margin:0 0 var(--book-section-break, 32px) 0}.book-index-columns{columns:2;column-gap:var(--book-col-gap, 32px)}.book-index-item{font-size:var(--book-body-size, 15px);padding:2px 0;break-inside:avoid}.book-index-list{list-style:none;padding:0;margin:0;columns:2;column-gap:var(--book-col-gap, 32px)}.book-index-entry{font-size:var(--book-body-size, 15px);padding:3px 0;break-inside:avoid}.studio-preview .book-container{padding:0}.studio-preview .book-page{max-width:100%}@media (max-width: 768px){.studio-preview .book-page{padding:24px 20px}}.press-generate-section{text-align:center;padding:48px 20px 40px}.press-generate-btn{display:inline-block;background:var(--color-primary, #2E7D32);color:#fff;border:none;border-radius:10px;padding:14px 32px;font-size:16px;font-weight:600;cursor:pointer;transition:background .15s,transform .1s}.press-generate-btn:hover{background:var(--color-primary-hover, #256428);transform:translateY(-1px)}.press-generate-btn:active{transform:translateY(0)}.press-generate-desc{font-size:14px;color:var(--color-text-muted);margin-top:10px}.prep-version-banner{display:flex;align-items:center;gap:12px;padding:6px 12px;background:#f4f1ea;border:1px solid var(--color-rule, #e2dfd7);border-radius:3px;font-size:12px;position:absolute;top:var(--spacing-6);right:var(--spacing-6);max-width:560px;white-space:nowrap}.prep-version-banner--v2{background:#ebe8de}@media (max-width: 720px){.prep-version-banner{position:static;margin:var(--spacing-3) 0 0 0;max-width:none;justify-content:space-between}}.prep-version-banner-label{color:var(--color-text-muted, #6b6b6b);letter-spacing:.3px}.prep-version-banner-toggle{background:transparent;border:none;color:var(--color-text, #1a1c1a);font-size:12px;cursor:pointer;text-decoration:underline;padding:2px 6px}.prep-version-banner-toggle:hover{opacity:.7}.pv2-recipe-link{color:inherit;text-decoration:none;cursor:pointer;border-bottom:1px dotted transparent;transition:border-color .1s ease}.pv2-recipe-link:hover{border-bottom-color:var(--color-text-muted, #6b6b6b)}.pv2-flow-recipe,.pv2-downtime-link{color:var(--color-text-muted, #6b6b6b);font-style:italic}.pv2-flow-recipe:hover,.pv2-downtime-link:hover{color:var(--color-text, #1a1c1a)}.pv2-tl-recipe-link{color:inherit}.event-plan-view.pv2{padding:16px 0 80px}.pv2-no-time{text-align:center;padding:64px 24px;max-width:560px;margin:0 auto}.pv2-no-time-heading{font-family:var(--font-serif, "Newsreader", serif);font-style:italic;font-size:22px;color:var(--color-text, #1a1c1a);margin-bottom:12px}.pv2-no-time-body{font-size:15px;color:var(--color-text-muted, #6b6b6b);line-height:1.5}.stage-bar{display:flex;gap:4px;width:100%;max-width:320px;margin:0 auto 20px;padding:0;list-style:none}.stage-bar-segment{flex:1 1 0;height:6px;border-radius:3px;background:#e8e0d6}.stage-bar-segment.is-done{background:#8b7355}.stage-bar-segment.is-current{background:#8b7355;animation:stageBarPulse 1.6s ease-in-out infinite}@keyframes stageBarPulse{0%,to{opacity:1}50%{opacity:.4}}@media (prefers-reduced-motion: reduce){.stage-bar-segment.is-current{animation:none}}.pv2--generating{padding:32px 0}.pv2-generating-caption{text-align:center;font-size:14px;color:var(--color-text-muted, #6b6b6b);margin-bottom:24px;font-style:italic}.pv2-skeleton{height:48px;background:linear-gradient(90deg,#ebe8e0,#f4f1ea,#ebe8e0);background-size:200% 100%;animation:pv2-shimmer 1.4s ease-in-out infinite;border-radius:4px;margin:12px auto;max-width:720px}.pv2-skeleton--wide{height:96px}@keyframes pv2-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.prep-plan{max-width:1100px;margin:0 auto;padding:8px 24px 64px}.prep-plan--generating{padding-top:48px}.prep-plan-generating-caption{text-align:center;font-size:14px;color:var(--color-text-muted, #6b6b6b);font-style:italic;margin-bottom:24px}.prep-plan-head{text-align:center;margin:24px 0 40px}.prep-plan-title{font-family:var(--font-serif, Georgia, serif);font-size:34px;font-style:italic;font-weight:400;margin:0 0 6px;color:var(--color-text, #1a1c1a)}.prep-plan-subtitle{font-size:14px;color:var(--color-text-muted, #8a877f);margin:0}.prep-plan-matrix{display:flex;flex-direction:column}.prep-plan-row{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:28px;padding:22px 0;border-bottom:1px solid var(--color-border-soft, #ece9e0);align-items:start}.prep-plan-row--head{border-bottom:1px solid var(--color-border, #d8d4c8);padding-bottom:12px}.prep-plan-col-head{display:flex;flex-direction:column;gap:2px}.prep-plan-col-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text, #1a1c1a)}.prep-plan-col-sub{font-size:11px;color:var(--color-text-muted, #a39f95)}.prep-plan-col-load{font-size:11px;color:var(--color-text-muted, #b4b0a4);font-variant-numeric:tabular-nums}.prep-plan-dish{display:flex;align-items:center;gap:12px}.prep-plan-thumb{width:40px;height:40px;border-radius:6px;background-size:cover;background-position:center;flex:0 0 auto;background-color:#ece9e0}.prep-plan-thumb--blank{background-color:#ece9e0}.prep-plan-dish-title{font-family:var(--font-serif, Georgia, serif);font-size:16px;color:var(--color-text, #1a1c1a);line-height:1.3}.prep-plan-cell{font-size:13px;line-height:1.5;color:var(--color-text, #33352f)}.prep-plan-cell--empty:after{content:"·";color:var(--color-border, #d8d4c8)}.prep-plan-cell-when{display:block;font-size:11px;color:var(--color-text-muted, #a39f95);margin-bottom:4px}.prep-plan-cell-steps{margin:0;padding:0;list-style:none}.prep-plan-cell-steps li{margin:0 0 4px}.prep-plan-cell-steps li:before{content:"– ";color:var(--color-text-muted, #b4b0a4)}.prep-plan-row>.prep-plan-cell--near,.prep-plan-col-head--near_service{background:#f4f1e9;border-radius:4px;padding:8px 12px;margin:-8px -4px}.prep-plan-col-head--near_service{padding:8px 12px}@media (max-width: 860px){.prep-plan-row{grid-template-columns:1fr;gap:10px}.prep-plan-row--head{display:none}}.pv2-metrics--cols{display:flex;gap:var(--spacing-7);padding:var(--spacing-7) var(--spacing-7);margin:0 auto var(--spacing-6);max-width:960px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl, var(--radius-lg));box-shadow:var(--shadow-xs)}.pv2-col{flex:1 1 0;display:flex;flex-direction:column;justify-content:flex-start;gap:var(--spacing-2);min-width:0;padding-left:var(--spacing-6);border-left:1px solid var(--color-border-light);align-items:center;text-align:center}.pv2-col:first-child{padding-left:0;border-left:none}.pv2-col-body{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--spacing-2);width:100%}.pv2-col--anchor{flex:1.2 1 0;position:relative}.pv2-col-label{font-size:var(--text-label);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.pv2-col-label--warn{color:var(--color-warning)}.pv2-col-note{font-size:18px;color:var(--color-text-muted);font-weight:var(--font-weight-medium);line-height:1.3}.pv2-col-note--warn{font-size:14px;font-style:italic;color:var(--color-text);margin-top:4px;max-width:320px}.pv2-col-note--soft{font-size:14px;font-weight:var(--font-weight-regular);font-style:italic;color:var(--color-text-light);margin-top:2px}.pv2-unavailable-detail{margin-top:6px;font-size:13px;color:var(--color-text-muted)}.pv2-unavailable-detail-summary{cursor:pointer;font-size:12px;letter-spacing:.04em;color:var(--color-text-muted)}.pv2-unavailable-detail-summary::-webkit-details-marker{display:none}.pv2-unavailable-detail-summary:after{content:" ▾"}.pv2-unavailable-detail[open] .pv2-unavailable-detail-summary:after{content:" ▴"}.pv2-unavailable-detail-body{display:block;margin-top:4px;font-style:italic;color:var(--color-text-light)}.pv2-why{position:relative;margin-top:8px;font-size:var(--text-tag);text-align:left}.pv2-why-summary{cursor:pointer;font-size:var(--text-label);letter-spacing:.04em;color:var(--color-text-muted);display:inline-block;padding:4px 0}.pv2-why-summary:hover{color:var(--color-text)}.pv2-why-summary::-webkit-details-marker{display:none}.pv2-why-summary:after{content:" ▾"}.pv2-why[open] .pv2-why-summary:after{content:" ▴"}.pv2-why-panel{position:absolute;top:100%;left:0;z-index:20;background:#fff;border:1px solid var(--color-border, rgba(0, 0, 0, .08));border-radius:8px;box-shadow:0 6px 20px #0000001a;padding:10px 12px;width:max-content;min-width:240px;max-width:min(340px,calc(100vw - 32px));box-sizing:border-box}.pv2-why-block+.pv2-why-block{margin-top:16px}.pv2-why-label{margin:0 0 5px;font-size:var(--text-micro);letter-spacing:.09em;text-transform:uppercase;font-weight:var(--font-weight-medium);color:var(--color-text-light)}.pv2-why-subject{margin:0 0 3px;font-size:var(--text-tag);line-height:1.35;font-weight:var(--font-weight-medium);color:var(--color-text);overflow-wrap:anywhere}.pv2-why-block--closing .pv2-why-note{font-style:italic}.pv2-why-note{margin:0;font-size:var(--text-label);line-height:1.45;color:var(--color-text-light);overflow-wrap:anywhere}.pv2-metrics-compact .pv2-why{margin-top:6px}.pv2-col-hero{font-family:var(--font-display);font-size:24px;font-weight:var(--font-weight-regular);color:var(--color-text);line-height:1.25}.pv2-col-value{font-family:var(--font-display);font-size:18px;font-weight:var(--font-weight-regular);color:var(--color-text);line-height:1.3}.pv2-col-hero--time{font-size:56px;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}.pv2-col-hero--none{color:var(--color-text-muted)}.pv2-col-hero--italic{font-style:italic;font-size:16px;color:color-mix(in srgb,var(--color-text-muted) 80%,var(--color-surface));font-weight:var(--font-weight-regular)}.pv2-prep-summary{font-family:var(--font-display);font-size:22px;line-height:1.3;color:var(--color-text)}.pv2-prep-summary--muted{font-size:16px;font-style:italic;color:var(--color-text-muted)}.pv2-reduce-status{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin-top:6px;font-size:var(--text-label);color:var(--color-text-muted)}.pv2-reduce-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;font:inherit;font-size:var(--text-label);font-weight:600;color:var(--color-primary);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.pv2-reduce-link--action{margin-top:6px;font-size:var(--text-tag)}.pv2-reduce-link:hover{opacity:.8}body.menu-presenting .modal.open,body.menu-presenting .prep-tile-preview--open{z-index:1200}.reduce-dayof-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1c1a73;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px}.reduce-dayof-sheet{position:relative;display:flex;flex-direction:column;background:#f7f4ec;width:100%;max-width:840px;max-height:85vh;box-shadow:0 20px 60px #00000040;border-radius:8px;overflow:hidden}.reduce-dayof-head{flex:0 0 auto;padding:26px 30px 16px}.reduce-dayof-head h3{font-family:var(--font-display);font-weight:300;font-size:var(--text-display-lg);margin:0;color:#1a1c1a}.reduce-dayof-sub{font-family:var(--font-body);font-size:var(--text-tag);color:#1a1c1a8c;margin:4px 0 0;font-style:italic}.rdo-stale{margin-top:var(--spacing-1);font-family:var(--font-body);font-size:var(--text-caption);font-weight:var(--font-weight-regular);font-style:italic;color:var(--color-text-muted);line-height:1.3}.reduce-dayof-close{position:absolute;top:18px;right:20px;background:transparent;border:none;font-size:26px;line-height:1;cursor:pointer;color:#1a1c1a99}.reduce-dayof-close:hover{color:#1a1c1a}.rdo-table{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;margin:0 30px 4px;border:1px solid #e7e1d5;border-radius:8px;overflow:hidden;background:#fff}.rdo-body{flex:1 1 auto;min-height:0;overflow-y:auto}.rdo-row{display:grid;grid-template-columns:48px 1.75fr minmax(96px,.7fr) 2.7fr 144px;align-items:start;gap:18px;padding:18px 22px;border-bottom:1px solid #efeae0}.rdo-row:last-child{border-bottom:none}.reduce-dayof-sheet--no-alts .rdo-cell--alts{display:none}@media (min-width: 561px){.reduce-dayof-sheet--no-alts{max-width:678px}.reduce-dayof-sheet--no-alts .rdo-row{grid-template-columns:48px 1.75fr minmax(96px,.7fr) 2.7fr}}.rdo-row--head{background:#f5f1e8;border-bottom:1px solid #e7e1d5;padding-top:13px;padding-bottom:13px}.rdo-row--head .rdo-cell{font-size:var(--text-caption-lg);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted)}.rdo-cell--check{display:flex;align-items:center}.rdo-check{width:18px;height:18px;accent-color:#1a1c1a;cursor:pointer}.rdo-cell--dish{font-family:var(--font-display);font-size:var(--text-reading-sm);font-weight:600;color:var(--color-text);line-height:1.25}.rdo-cell--move{font-size:var(--text-body-sm);font-weight:600;color:var(--color-secondary)}.rdo-cell--suggest,.rdo-cell--dish{min-width:0;overflow-wrap:anywhere}.rdo-cell--alts{text-align:right}.rdo-action{font-size:var(--text-body-sm);font-weight:400;color:#1a1c1a}.rdo-plans-link{flex:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;font:inherit;font-size:var(--text-body-sm);color:var(--pw-green-text);white-space:nowrap;cursor:pointer}.rdo-plans-link:hover,.rdo-plans-link[aria-expanded=true]{text-decoration:underline}.rdo-plans-link:focus-visible{outline:2px solid var(--color-focus, currentColor);outline-offset:2px}.rdo-plans-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3}.rdo-plans{position:fixed;top:var(--rdo-plans-top, 16px);left:var(--rdo-plans-left, 16px);box-sizing:border-box;display:flex;flex-direction:column;width:min(470px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:16px 18px 12px;border:1px solid #e7e1d5;border-radius:8px;background:#fff;box-shadow:0 10px 34px #0003}.rdo-plans-head{flex:none;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.rdo-plans-head h4{margin:0;font-family:var(--font-display);font-size:var(--text-reading-sm);font-weight:600;color:var(--color-text)}.rdo-plans-close{flex:none;background:transparent;border:none;padding:0 2px;font-size:24px;line-height:1;cursor:pointer;color:#1a1c1a99}.rdo-plans-close:hover{color:#1a1c1a}.rdo-plans-list{flex:1 1 auto;min-height:0;overflow-y:auto;margin-top:10px}.rdo-plan-choice{display:flex;align-items:flex-start;gap:12px;padding:12px 10px;border-top:1px solid #efeae0;border-radius:6px;cursor:pointer}.rdo-plan-choice:first-child{border-top:none}.rdo-plan-choice:has(.rdo-plan-radio:checked){background:var(--pw-selected-fill);border-top-color:transparent}.rdo-plan-choice:has(.rdo-plan-radio:checked)+.rdo-plan-choice{border-top-color:transparent}.rdo-plan-radio{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--pw-green-text);cursor:pointer}.rdo-plan-body{display:flex;flex-direction:column;gap:3px;min-width:0}.rdo-plan-name{font-size:var(--text-body-sm);font-weight:600;color:#1a1c1a;line-height:1.3}.rdo-plan-current{font-weight:400;font-style:italic;color:#1a1c1a99}.rdo-plan-tag{font-size:var(--text-tag);font-weight:600;color:var(--pw-green-text)}.rdo-plan-days{list-style:none;margin:0;padding:0}.rdo-plan-day{font-size:var(--text-tag);line-height:1.4;color:#1a1c1ab3;overflow-wrap:anywhere}.rdo-plan-day-name{font-weight:600;color:#1a1c1a}.reduce-dayof-foot{flex:0 0 auto;display:flex;justify-content:flex-end;gap:12px;padding:16px 30px 22px;border-top:1px solid rgba(26,28,26,.12)}.reduce-dayof-cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid rgba(26,28,26,.25);border-radius:6px;padding:9px 18px;font:inherit;font-size:var(--text-body-sm);cursor:pointer;color:#1a1c1a}.reduce-dayof-apply{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#1a1c1a;border:1px solid #1a1c1a;border-radius:6px;padding:9px 20px;font:inherit;font-size:var(--text-body-sm);font-weight:600;cursor:pointer;color:#fff}.reduce-dayof-apply:hover{opacity:.9}@media (max-width: 560px){.reduce-dayof-overlay{padding:12px}.reduce-dayof-head{padding:20px 18px 12px}.reduce-dayof-foot{padding:14px 18px 18px}.rdo-table{margin:0 14px 4px}.rdo-row{grid-template-columns:32px 1fr;gap:4px 12px;padding:14px 16px}.rdo-cell--dish,.rdo-cell--move,.rdo-cell--suggest{grid-column:2}.rdo-cell--alts{grid-column:2;text-align:left}.rdo-cell--alts:empty{display:none}.rdo-row--head{display:none}.rdo-plans-layer{background:#1a1c1a59}.rdo-plans{top:auto;left:0;right:0;bottom:0;width:auto;max-height:80vh;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));border-radius:12px 12px 0 0}}.pv2-linked-resolver{max-width:640px;margin:0 auto var(--spacing-6);padding:var(--spacing-7);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl, var(--radius-lg));box-shadow:var(--shadow-xs)}.pv2-linked-heading{margin:0 0 var(--spacing-2);font-family:var(--font-display);font-size:22px;font-weight:var(--font-weight-semibold);color:var(--color-text)}.pv2-linked-subtitle{margin:0 0 var(--spacing-6);font-size:13px;line-height:1.5;color:var(--color-text-muted)}.pv2-linked-list{list-style:none;margin:0;padding:0}.pv2-linked-head,.pv2-linked-row{display:grid;grid-template-columns:1fr 56px 56px 56px;align-items:center}.pv2-linked-head{padding-bottom:var(--spacing-2)}.pv2-linked-col-label{font-size:var(--text-label);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);font-weight:var(--font-weight-semibold);text-align:center}.pv2-linked-row{padding:var(--spacing-4) 0;border-top:1px solid var(--color-border-light)}.pv2-linked-name{display:flex;flex-direction:column;gap:2px;padding-right:var(--spacing-4);min-width:0}.pv2-linked-title{font-weight:600;color:var(--color-text)}.pv2-linked-via{font-size:12px;color:var(--color-text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pv2-linked-cell{display:flex;justify-content:center;cursor:pointer}.pv2-linked-cell input{width:14px;height:14px;accent-color:var(--color-text-muted);cursor:pointer}.pv2-linked-actions{display:flex;align-items:center;gap:var(--spacing-5);margin-top:var(--spacing-5)}.pv2-linked-generate{padding:8px 20px;font-size:13px;text-transform:uppercase;letter-spacing:1px;background:var(--color-text, #1a1c1a);color:#faf9f6;border:none;border-radius:2px;cursor:pointer}.pv2-linked-generate:hover{opacity:.9}.pv2-linked-cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;font:inherit;font-size:13px;font-weight:600;color:var(--color-text-muted);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.pv2-linked-cancel:hover{color:var(--color-text)}@media (max-width: 720px){.pv2-metrics--cols{flex-direction:column;gap:var(--spacing-5);padding:var(--spacing-6)}.pv2-col{padding-left:0;border-left:none;padding-top:var(--spacing-5);border-top:1px solid var(--color-border-light)}.pv2-col:first-child{padding-top:0;border-top:none}.pv2-col-hero--time{font-size:40px}}.pv2-state-validator-notice{max-width:960px;margin:0 auto 16px;padding:10px 14px;background:#fff8f0;border:1px solid #e3c79a;border-radius:4px;font-size:13px;color:var(--color-text, #1a1c1a);display:flex;align-items:center;flex-wrap:wrap;gap:8px}.pv2-svn-label{font-weight:600}.pv2-svn-pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:500;font-family:ui-monospace,SF Mono,Menlo,monospace}.pv2-svn-pill--err{background:#fdd9d9;color:#882020;border:1px solid #e9b6b6}.pv2-svn-pill--warn{background:#fbe9c4;color:#6e4a08;border:1px solid #e6c882}.pv2-svn-pill--info{background:#e7eaf0;color:#4a4a55;border:1px solid #c7ccd5}.pv2-svn-open{margin-left:auto;background:transparent;border:1px solid #c8b48a;color:#6e4a08;padding:4px 10px;border-radius:3px;font-size:12px;cursor:pointer;font-family:inherit}.pv2-svn-open:hover{background:#f6e8c9}.pv2-extraction-notice{max-width:720px;margin:0 auto 24px}.pv2-extraction-notice-text{font-size:13px;color:var(--color-text-muted, #6b6b6b);margin:0;line-height:1.5}.pv2-extraction-notice-text+.pv2-extraction-notice-text{margin-top:6px}.pv2-extraction-notice-text--consequence{font-style:italic}.pv2-extraction-retry,.pv2-extraction-add,.pv2-linked-fix{background:none;border:none;padding:0;font:inherit;color:var(--color-text, #1a1c1a);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.pv2-extraction-retry:hover,.pv2-extraction-add:hover,.pv2-linked-fix:hover{text-decoration-thickness:2px}.pv2-linked-missing{margin:0 0 12px;font-size:13px;color:var(--color-text-muted, #6b6b6b)}.pv2-make-ahead{max-width:720px;margin:0 auto 36px}.pv2-make-ahead ul{list-style:none;padding:0;margin:0}.pv2-ma-row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"title button" "hint  button";align-items:center;gap:2px 16px;padding:12px 0;border-bottom:1px solid var(--color-rule-light, #eeeae0)}.pv2-ma-row:last-child{border-bottom:none}.pv2-ma-title{grid-area:title;font-family:var(--font-serif, "Newsreader", serif);font-size:15px;color:var(--color-text, #1a1c1a)}.pv2-ma-hint{grid-area:hint;font-size:12px;font-style:italic;color:var(--color-text-muted, #6b6b6b)}.pv2-ma-toggle{grid-area:button;background:transparent;border:1px solid var(--color-rule, #e2dfd7);color:var(--color-text, #1a1c1a);font-size:11px;letter-spacing:1px;text-transform:uppercase;padding:6px 12px;border-radius:2px;cursor:pointer;white-space:nowrap}.pv2-ma-toggle:hover{background:#f4f1ea}.pv2-ma-toggle--on{background:var(--color-text, #1a1c1a);color:#faf9f6;border-color:var(--color-text, #1a1c1a)}.pv2-ma-toggle--on:hover{opacity:.9;background:var(--color-text, #1a1c1a)}.pv2-ma-row--suggested .pv2-ma-title:after{content:" · suggested ahead";font-style:italic;color:#7a5a2f;font-size:12px;font-family:var(--font-sans, system-ui, sans-serif)}.pv2-reminders{max-width:720px;margin:0 auto 32px;padding:20px 24px;background:#f4f1ea;border-radius:4px}.pv2-section-heading{font-family:var(--font-serif, "Newsreader", serif);font-size:13px;text-transform:uppercase;letter-spacing:1.5px;color:var(--color-text-muted, #6b6b6b);margin:0 0 12px;font-weight:400}.pv2-reminders ul{list-style:none;padding:0;margin:0}.pv2-reminder{display:flex;align-items:baseline;gap:14px;padding:6px 0;font-size:14px}.pv2-reminder-time{font-family:var(--font-mono, "ui-monospace", monospace);font-size:13px;color:var(--color-text, #1a1c1a);min-width:68px}.pv2-reminder-text{color:var(--color-text-muted, #6b6b6b)}.pv2-reminder-time:before{content:"⏰ "}.pv2-flow,.pv2-downtime,.pv2-final-block{max-width:720px;margin:0 auto 36px}.pv2-downtime ul,.pv2-final-block ul{list-style:none;padding:0;margin:0}.pv2-flow-group{margin-bottom:20px;padding:14px 16px 10px;background:var(--color-surface-muted, #f5f2ec);border-radius:6px;border-left:3px solid var(--color-rule, #d8d3c6)}.pv2-flow-group:last-child{margin-bottom:0}.pv2-flow-group-heading{font-family:var(--font-serif, "Newsreader", serif);font-size:17px;color:var(--color-text, #1a1c1a);margin:0 0 8px;font-weight:400;padding-bottom:0;border-bottom:none;display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.pv2-flow-group-time{font-family:var(--font-mono, "ui-monospace", monospace);font-size:13px;color:var(--color-text-muted, #6b6b6b);letter-spacing:.3px}.pv2-flow-group-sep{color:var(--color-text-muted, #6b6b6b)}.pv2-flow-group-recipe{font-style:italic}.pv2-flow-sublist{list-style:none;padding:0 0 0 12px;margin:0;border-left:1px dashed var(--color-rule, #d8d3c6)}.pv2-flow-subrow{display:grid;grid-template-columns:56px 16px 1fr;align-items:baseline;padding:3px 0;gap:10px}.pv2-flow-subtime{font-family:var(--font-mono, "ui-monospace", monospace);font-size:12px;color:var(--color-text-muted, #6b6b6b);letter-spacing:.3px}.pv2-flow-bullet{font-size:13px;color:var(--color-text-muted, #6b6b6b);line-height:1}.pv2-flow-content{font-size:14px;color:var(--color-text, #1a1c1a);line-height:1.4}.pv2-flow-label{font-weight:400}.pv2-flow-subrow--passive .pv2-flow-content{color:var(--color-text-muted, #6b6b6b);font-style:italic}.pv2-flow-components{color:var(--color-text-muted, #6b6b6b);font-size:12px;font-style:italic;margin-top:2px}.pv2-flow-meta{font-family:var(--font-mono, "ui-monospace", monospace);font-size:11px;color:var(--color-text-muted, #6b6b6b);font-style:normal;margin-left:4px}.pv2-final-item--stage .pv2-final-text{display:flex;flex-direction:column;gap:2px}.pv2-final-stage-label{font-weight:500}.pv2-final-stage-components{color:var(--color-text-muted, #6b6b6b);font-size:13px;font-style:italic}.pv2-final-item{display:grid;grid-template-columns:80px 1fr;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--color-rule-light, #eeeae0);gap:8px}.pv2-final-item:last-child{border-bottom:none}.pv2-final-time{font-family:var(--font-mono, "ui-monospace", monospace);font-size:14px;color:var(--color-text, #1a1c1a)}.pv2-final-text{font-size:15px;color:var(--color-text, #1a1c1a)}.pv2-final-recipe{font-style:italic;color:var(--color-text-muted, #6b6b6b);font-size:13px}.pv2-downtime-item{display:grid;grid-template-columns:130px 80px 1fr;align-items:baseline;padding:6px 0;gap:12px;font-size:13px;color:var(--color-text-muted, #6b6b6b)}.pv2-downtime-range{font-family:var(--font-mono, "ui-monospace", monospace);color:var(--color-text, #1a1c1a)}.pv2-downtime-duration{color:var(--color-text, #1a1c1a)}.pv2-downtime-what{font-style:italic}.pv2-view-toggle{max-width:720px;margin:0 auto 16px;display:flex;justify-content:flex-end;gap:2px;font-size:11px;letter-spacing:1.5px;text-transform:uppercase}.pv2-view-toggle-btn{background:transparent;border:1px solid var(--color-rule, #e2dfd7);color:var(--color-text-muted, #6b6b6b);padding:6px 12px;cursor:pointer;border-radius:2px}.pv2-view-toggle-btn--on{background:var(--color-text, #1a1c1a);color:#faf9f6;border-color:var(--color-text, #1a1c1a)}.pv2-view-toggle-btn:hover{opacity:.85}.pv2-timeline-view.pv2-matrix{max-width:100%;margin:0 auto 40px}.pv2-mx-scroll{overflow-x:auto;padding-bottom:8px}.pv2-mx-header-row,.pv2-mx-row{display:grid;grid-template-columns:72px repeat(var(--pv2-mx-cols, 1),minmax(160px,1fr));gap:0;min-width:calc(72px + var(--pv2-mx-cols, 1) * 160px)}.pv2-mx-header-row{position:sticky;top:0;background:var(--color-bg, #f9f7f3);border-bottom:1px solid var(--color-rule, #d8d3c6);padding:8px 0;z-index:2}.pv2-mx-time-head,.pv2-mx-col-head{padding:0 10px}.pv2-mx-col-head{font-family:var(--font-serif, "Newsreader", serif);font-size:14px;font-style:italic;color:var(--color-text, #1a1c1a);border-left:1px solid var(--color-rule-light, #eeeae0)}.pv2-mx-col-link{color:inherit;text-decoration:none}.pv2-mx-col-link:hover{text-decoration:underline}.pv2-mx-row{border-bottom:1px solid var(--color-rule-light, #eeeae0);align-items:stretch;min-height:36px}.pv2-mx-row:last-child{border-bottom:none}.pv2-mx-time{font-family:var(--font-mono, "ui-monospace", monospace);font-size:12px;color:var(--color-text-muted, #6b6b6b);letter-spacing:.3px;padding:8px 10px;align-self:start}.pv2-mx-cell{padding:6px 10px;border-left:1px solid var(--color-rule-light, #eeeae0)}.pv2-mx-cell--empty{border-left:1px solid var(--color-rule-light, #eeeae0)}.pv2-mx-event{display:flex;align-items:baseline;gap:6px;font-size:13px;color:var(--color-text, #1a1c1a);line-height:1.4;flex-wrap:wrap}.pv2-mx-event+.pv2-mx-event{margin-top:3px}.pv2-mx-event--passive,.pv2-mx-event--service{color:var(--color-text-muted, #6b6b6b)}.pv2-mx-icon{flex:0 0 auto;color:var(--color-text-muted, #6b6b6b);font-size:12px}.pv2-mx-label{flex:1 1 auto;min-width:0}.pv2-mx-meta{font-family:var(--font-mono, "ui-monospace", monospace);font-size:10px;color:var(--color-text-muted, #6b6b6b);margin-left:4px}.pv2-mx-components{flex-basis:100%;color:var(--color-text-muted, #6b6b6b);font-size:11px;font-style:italic;margin-top:2px}.pv2-raw-disclosure{max-width:720px;margin:24px auto 0;font-size:12px;color:var(--color-text-muted, #6b6b6b)}.pv2-raw-disclosure summary{cursor:pointer;padding:8px 0;border-top:1px solid var(--color-rule-light, #eeeae0);letter-spacing:1px;text-transform:uppercase;font-size:11px}.pv2-raw-list{list-style:none;padding:0;margin:12px 0 0}.pv2-raw-row{display:grid;grid-template-columns:60px 16px 1fr;align-items:start;padding:6px 0;gap:6px;font-size:12px}.pv2-raw-time{font-family:var(--font-mono, "ui-monospace", monospace);color:var(--color-text, #1a1c1a)}.pv2-raw-phase{color:var(--color-text-muted, #6b6b6b);font-size:11px;padding-top:1px}.pv2-raw-text{color:var(--color-text, #1a1c1a);line-height:1.4}.pv2-raw-meta{font-style:italic;margin-top:2px}.pv2-error{max-width:560px;margin:48px auto;text-align:center;padding:24px;border:1px solid var(--color-rule, #e2dfd7);border-radius:4px}.pv2-error-heading{font-family:var(--font-serif, "Newsreader", serif);font-size:18px;color:var(--color-text, #1a1c1a);margin-bottom:12px}.pv2-error-detail{font-size:13px;color:var(--color-text-muted, #6b6b6b);margin-bottom:6px}.pv2-retry{margin-top:16px;padding:8px 20px;font-size:13px;text-transform:uppercase;letter-spacing:1px;background:var(--color-text, #1a1c1a);color:#faf9f6;border:none;border-radius:2px;cursor:pointer}.pv2-retry:hover{opacity:.9}@media (max-width: 640px){.pv2-metric-row{gap:20px;flex-wrap:wrap}.pv2-startby-time{font-size:36px}.pv2-step{grid-template-columns:56px 12px 1fr}}.event-plan-view.pv3-prep{--prep-content-half: max(700px, calc((var(--prep-cols-px, 1356px) + 2 * var(--spacing-7) + 4px) / 2));--prep-gutter-min: min(64px, max(var(--spacing-6), calc(50vw - 700px) ));width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);margin-top:-48px;padding:var(--spacing-5) max(var(--prep-gutter-min, var(--spacing-6)),calc(50vw - var(--prep-content-half, 700px))) var(--spacing-12);box-sizing:border-box}.event-plan-view.pv3-prep .pv2-metrics--cols{max-width:none;width:100%;margin:var(--spacing-5) 0}.event-plan-view.pv3-prep .prep-schedule{margin-top:var(--spacing-5)}.prep-schedule{margin-top:var(--spacing-9);padding:var(--spacing-8) var(--spacing-7) var(--spacing-7);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xs);width:100%;box-sizing:border-box}.prep-schedule-heading{font-family:var(--font-display);font-size:var(--text-display);font-weight:var(--font-weight-regular);color:var(--color-text);margin:0 0 var(--spacing-2);letter-spacing:-.01em;position:relative}.prep-schedule-affordances{position:absolute;top:6px;right:0;display:flex;align-items:center;gap:var(--spacing-2)}.prep-schedule-affordance-sep{color:var(--color-text-muted);font-size:var(--text-body-sm)}.prep-kitchen-link{border:none;background:transparent;padding:2px 4px;cursor:pointer;font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:500;color:var(--color-text-muted);letter-spacing:0;transition:color .15s}.prep-kitchen-link:hover{color:var(--color-text)}.prep-linked-recipes-link{text-decoration:underline;text-underline-offset:2px}.kitchen-config-row{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3) 0;border-bottom:1px solid var(--color-border-light);font-family:var(--font-body)}.kitchen-config-label{font-size:var(--text-body-sm);color:var(--color-text)}.kitchen-config-stepper{display:flex;align-items:center;gap:var(--spacing-2)}.kitchen-config-stepper-btn{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:32px;height:32px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-body);font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .15s,border-color .15s}.kitchen-config-stepper-btn:hover,.kitchen-config-stepper-btn:active{color:var(--color-text);border-color:var(--color-text-muted)}.kitchen-config-input{width:44px;padding:var(--spacing-2) var(--spacing-1);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);font-family:var(--font-body);font-size:var(--text-body-sm);text-align:center;font-variant-numeric:tabular-nums}.kitchen-config-input:focus{outline:none;border-color:var(--color-secondary)}.kitchen-config-input::-webkit-inner-spin-button,.kitchen-config-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.kitchen-config-input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.kitchen-config-checks{display:flex;flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-5) 0 var(--spacing-6);border-bottom:1px solid var(--color-border-light)}.kitchen-config-check{display:flex;align-items:center;gap:var(--spacing-3);font-size:var(--text-body-sm);color:var(--color-text);font-family:var(--font-body);cursor:pointer}.kitchen-config-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-secondary)}.modal#kitchenConfigModal.open{display:flex;align-items:center;justify-content:center}.prep-schedule-hint{display:block;font-family:var(--font-display);font-size:var(--text-body-sm);font-weight:var(--font-weight-regular);color:var(--color-text-muted);font-style:italic;margin-top:0;padding-bottom:var(--spacing-5);border-bottom:1px solid var(--color-border-light);margin-bottom:var(--spacing-5)}.prep-summary{padding:var(--spacing-4) var(--spacing-5);background:var(--color-accent-soft);border-left:3px solid var(--color-secondary);border-radius:var(--radius-sm);margin-bottom:var(--spacing-6);font-family:var(--font-body);font-size:var(--text-body-sm);line-height:1.5;color:var(--color-text)}.prep-summary-num{font-weight:var(--font-weight-semibold);color:var(--color-secondary);font-variant-numeric:tabular-nums}.prep-summary-warn{color:var(--color-error);font-weight:var(--font-weight-medium)}.prep-grid-wrap{width:100%;overflow-x:auto;border:1px solid var(--color-border);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md)}.prep-grid{display:grid;background:var(--color-surface-alt);position:relative;font-family:var(--font-body)}.prep-grid-cell{min-width:0}.prep-grid-header-frame{display:flex;position:sticky;top:calc(var(--header-height, 54px) + var(--event-header-height, 190px) - var(--phone-bars-lift, 0px));z-index:4;background:var(--color-surface);border:1px solid var(--color-border);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0}@media (min-width: 768px){.prep-grid-header-frame{top:calc(var(--header-height, 97px) + var(--event-header-height, 190px) - var(--phone-bars-lift, 0px))}}.prep-grid-header-clip{flex:1 1 auto;min-width:0;overflow-x:clip}.prep-grid-header-row{display:grid}.prep-grid-corner{background:var(--color-surface);border-bottom:2px solid var(--color-border);flex:0 0 auto}.prep-grid-head{background:var(--color-surface);border-bottom:2px solid var(--color-border);padding:var(--spacing-4) var(--spacing-5) var(--spacing-4);font-family:var(--font-display);font-size:var(--text-card-title);font-weight:var(--font-weight-medium);color:var(--color-text);line-height:1.25;display:flex;flex-direction:column;gap:var(--spacing-2);min-width:0;overflow:hidden;position:relative}.prep-grid-head-titlerow{display:flex;align-items:flex-start;gap:var(--spacing-3);min-width:0}.prep-grid-head-guidance{margin-top:auto;min-width:0}.prep-grid-head:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--recipe-color, var(--color-border))}.prep-grid-swatch{display:none}.prep-grid-head-title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-width:0;word-break:break-word}.prep-grid-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.prep-grid-head-title--linked{font-weight:var(--font-weight-regular);color:var(--color-text-muted)}.prep-grid-head-via,.prep-grid-head-covered{margin-top:var(--spacing-1);font-family:var(--font-body);font-size:var(--text-caption);font-weight:var(--font-weight-regular);font-style:italic;color:var(--color-text-muted);line-height:1.3;min-width:0;word-break:break-word}.prep-grid-head-strategy{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--font-weight-regular);color:var(--color-text-muted);line-height:1.3}.prep-grid-head-review{margin-top:var(--spacing-1);font-family:var(--font-body);font-size:var(--text-caption);font-weight:var(--font-weight-regular);font-style:italic;color:var(--color-text-light);line-height:1.3}.prep-bucket-label{padding:var(--spacing-5) var(--spacing-5);font-size:var(--text-label);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text);border-right:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));background:var(--color-surface);position:sticky;left:0;z-index:2;display:flex;flex-direction:column;justify-content:center;gap:2px}.prep-bucket-label-main{display:block}.prep-bucket-label-sub{display:block;font-size:var(--text-caption);font-weight:var(--font-weight-regular);text-transform:none;letter-spacing:0;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.prep-bucket-cell{border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));padding:var(--spacing-3);display:flex;flex-direction:column;gap:var(--spacing-1);min-height:64px}.prep-bucket--days_earlier{background:var(--color-bg-hover)}.prep-bucket--day_before{background:var(--color-surface-alt)}.prep-bucket--earlier_today,.prep-bucket--event_day{background:var(--color-surface)}.prep-bucket-label.prep-bucket-last,.prep-bucket-cell.prep-bucket-last{border-bottom:2px solid var(--color-border)}.prep-card{background:var(--recipe-color, var(--color-text-muted));color:var(--color-white);border:none;border-radius:var(--radius-md);padding:var(--spacing-4) var(--spacing-5);text-align:left;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast);font-family:var(--font-body);min-width:0;background-image:linear-gradient(to bottom,rgba(255,255,255,.08),transparent 40%);flex:1 1 auto;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px}.prep-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.prep-card-head{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);line-height:1.25;letter-spacing:.005em}.prep-card-sub{font-size:var(--text-caption);opacity:.85;line-height:1.4}.prep-card-recipe{font-size:var(--text-body-sm);font-weight:var(--font-weight-semibold);line-height:1.2;letter-spacing:.005em;color:var(--color-white);word-break:break-word}.prep-card-plan{font-size:var(--text-label);font-weight:var(--font-weight-regular);line-height:1.3;opacity:.92;margin-top:2px}.prep-card--light .prep-card-recipe{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);line-height:1.2;opacity:1}.prep-card-time{font-size:var(--text-caption);line-height:1.35;min-height:1.35em;margin-top:var(--spacing-1)}.prep-card-note{font-size:var(--text-caption);line-height:1.35;margin-top:2px;opacity:.85}.prep-card-time-est{opacity:.72}.prep-card-time-recipe{opacity:.55}.prep-card-link{font-size:var(--text-caption);opacity:.78;line-height:1.35;margin-top:2px}.prep-card-change{font-size:var(--text-caption);opacity:.7;line-height:1;margin-top:auto;padding-top:var(--spacing-2);letter-spacing:.02em;align-self:stretch;text-align:left}.prep-card:hover .prep-card-change{opacity:1;text-decoration:underline;text-underline-offset:2px}.prep-card--light{flex:0 0 auto;background:var(--color-bg-cool, #f4f1ea);background-image:none;color:var(--color-text, #1a1c1a);border-left:3px solid var(--recipe-color, var(--color-text-muted));box-shadow:none;padding:var(--spacing-2) var(--spacing-3)}.prep-card--light:hover{transform:none;box-shadow:var(--shadow-sm)}.prep-card-light-action{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-text, #1a1c1a);line-height:1.2}.pv2-metrics-compact,.prep-agenda,.prep-view-toggle{display:none}@media screen and (max-width: 720px),screen and (max-width: 932px) and (max-height: 540px){.event-plan-view.pv3-prep .prep-schedule{--prep-grid-min-col: min(64vw, 280px);--prep-grid-label-col: 76px;padding:var(--spacing-5) var(--spacing-5)}.event-plan-view.pv3-prep .pv2-metrics--cols{display:none}.event-plan-view.pv3-prep .pv2-metrics-compact{display:flex;flex-direction:column;gap:var(--spacing-3);margin:var(--spacing-4) 0;padding:var(--spacing-5) var(--spacing-6);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl, var(--radius-lg));box-shadow:var(--shadow-xs);font-family:var(--font-display)}.event-plan-view.pv3-prep .pv2-compact-line--anchor{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--spacing-2)}.event-plan-view.pv3-prep .pv2-compact-label{font-family:var(--font-body);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.event-plan-view.pv3-prep .pv2-compact-sep{color:var(--color-text-muted)}.event-plan-view.pv3-prep .pv2-compact-clock{font-size:26px;line-height:1;color:var(--color-text);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.event-plan-view.pv3-prep .pv2-compact-clock--none{color:var(--color-text-muted)}.event-plan-view.pv3-prep .pv2-compact-line--counts{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--spacing-2)}.event-plan-view.pv3-prep .pv2-compact-line--counts .pv2-prep-summary{font-size:14px;line-height:1.4}.event-plan-view.pv3-prep .pv2-compact-line--counts .pv2-prep-summary--muted:after{content:"·";margin-left:var(--spacing-2);color:var(--color-text-muted);font-style:normal}.event-plan-view.pv3-prep .pv2-compact-line--reduce{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--spacing-6)}.event-plan-view.pv3-prep .pv2-compact-line--reduce .pv2-reduce-status{margin-top:0;align-items:center;gap:0 var(--spacing-6)}.event-plan-view.pv3-prep .pv2-compact-line--reduce .pv2-reduce-link{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.event-plan-view.pv3-prep .pv2-compact-line--reduce .pv2-reduce-link--action{margin-top:0}.event-plan-view.pv3-prep .pv2-compact-notes{font-family:var(--font-body)}.event-plan-view.pv3-prep .pv2-compact-notes-summary{font-size:var(--text-body-sm);color:var(--color-text-muted);cursor:pointer;min-height:44px;display:flex;align-items:center;list-style:none}.event-plan-view.pv3-prep .pv2-compact-notes-summary::-webkit-details-marker{display:none}.event-plan-view.pv3-prep .pv2-compact-notes-summary:after{content:"▾";margin-left:var(--spacing-2)}.event-plan-view.pv3-prep .pv2-compact-notes[open] .pv2-compact-notes-summary:after{content:"▴"}.event-plan-view.pv3-prep .pv2-compact-notes-body{display:flex;flex-direction:column;gap:var(--spacing-2);padding-bottom:var(--spacing-2)}.event-plan-view.pv3-prep .prep-schedule-hint{display:none}.event-plan-view.pv3-prep .prep-schedule-affordances{position:static;margin-top:var(--spacing-2);flex-wrap:wrap;justify-content:flex-start}.event-plan-view.pv3-prep .prep-schedule-affordances .prep-kitchen-link{min-height:44px;display:inline-flex;align-items:center;padding:var(--spacing-2);font-size:var(--text-body-sm)}.event-plan-view.pv3-prep .prep-bucket-cell{min-height:96px;padding:var(--spacing-4)}.event-plan-view.pv3-prep .prep-bucket-label{padding:var(--spacing-4) var(--spacing-2);line-height:1.2;overflow-wrap:anywhere}.event-plan-view.pv3-prep .prep-grid-head{padding:var(--spacing-4) var(--spacing-5);font-size:var(--text-card-title)}.event-plan-view.pv3-prep .prep-card{padding:var(--spacing-4)}.event-plan-view.pv3-prep .prep-card-recipe{font-size:var(--text-card-title);line-height:1.25}.event-plan-view.pv3-prep .prep-card-plan,.event-plan-view.pv3-prep .prep-card-time,.event-plan-view.pv3-prep .prep-card-note{font-size:var(--text-tag)}.event-plan-view.pv3-prep .prep-card-change{font-size:12px}.event-plan-view.pv3-prep .prep-card--light{min-height:44px;justify-content:center;padding:var(--spacing-3) var(--spacing-4)}.event-plan-view.pv3-prep .prep-card-light-action{font-size:15px}.event-plan-view.pv3-prep .prep-agenda{display:block}.event-plan-view.pv3-prep .prep-grid-header-frame,.event-plan-view.pv3-prep .prep-grid-wrap,.event-plan-view.pv3-prep .prep-schedule--timeline .prep-agenda{display:none}.event-plan-view.pv3-prep .prep-schedule--timeline .prep-grid-header-frame{display:flex}.event-plan-view.pv3-prep .prep-schedule--timeline .prep-grid-wrap{display:block}.event-plan-view.pv3-prep .prep-view-toggle{display:inline-flex;align-items:center;min-height:44px;margin:var(--spacing-1) 0 var(--spacing-2);padding:var(--spacing-2) 0;border:none;background:transparent;cursor:pointer;font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:500;color:var(--color-text-muted);text-decoration:underline;text-underline-offset:2px;touch-action:manipulation}.event-plan-view.pv3-prep .prep-view-toggle:hover{color:var(--color-text)}.event-plan-view.pv3-prep .prep-agenda-group{margin-bottom:var(--spacing-6)}.event-plan-view.pv3-prep .prep-agenda-group:last-child{margin-bottom:0}.event-plan-view.pv3-prep .prep-agenda-section{margin:0 0 var(--spacing-3);font-size:var(--text-label);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text)}.event-plan-view.pv3-prep .prep-agenda-empty{margin:0;font-size:var(--text-body-sm);font-style:italic;color:var(--color-text-muted)}.event-plan-view.pv3-prep .prep-agenda-card.prep-card{width:100%;margin-bottom:var(--spacing-3);background:var(--color-bg-cool, #f4f1ea);background:color-mix(in srgb,var(--recipe-color, var(--color-text-muted)) 10%,var(--color-surface));background-image:none;color:var(--color-text);border-left:4px solid var(--recipe-color, var(--color-text-muted));box-shadow:none}.event-plan-view.pv3-prep .prep-agenda-card.prep-card:last-child{margin-bottom:0}.event-plan-view.pv3-prep .prep-agenda-card.prep-card:hover{transform:none;box-shadow:var(--shadow-sm)}.event-plan-view.pv3-prep .prep-agenda-card .prep-card-recipe{color:var(--color-text)}.event-plan-view.pv3-prep .prep-agenda-card .prep-card-plan{color:var(--color-text);opacity:1}.event-plan-view.pv3-prep .prep-agenda-card .prep-card-time,.event-plan-view.pv3-prep .prep-agenda-card .prep-card-note{color:var(--color-text-muted);opacity:1}.event-plan-view.pv3-prep .prep-agenda-card .prep-card-time-line{opacity:1}.event-plan-view.pv3-prep .prep-agenda-card .prep-card-change{color:var(--color-text-muted);opacity:1}.event-plan-view.pv3-prep .prep-agenda-card .prep-card-covered{margin-top:var(--spacing-1);font-size:var(--text-caption);font-style:italic;color:var(--color-text-muted);opacity:1;line-height:1.3;white-space:normal}.event-plan-view.pv3-prep .prep-agenda-card.prep-card:hover .prep-card-change{color:var(--color-text);opacity:1}}.prep-pill-link{display:block;font-size:var(--text-caption);opacity:.78;line-height:1.3;margin-top:2px}.prep-pill-change{display:block;font-size:var(--text-caption);opacity:.65;line-height:1;margin-top:2px}.prep-pill:hover .prep-pill-change{opacity:1;text-decoration:underline;text-underline-offset:2px}.prep-pill.prep-pill--short{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-content:space-between;gap:2px 8px;padding:4px 8px}.prep-pill.prep-pill--short .prep-pill-name{grid-column:1 / -1;grid-row:1;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2}.prep-pill.prep-pill--short .prep-pill-time{grid-column:1;grid-row:2}.prep-pill.prep-pill--short .prep-pill-dur{grid-column:2;grid-row:2;text-align:right}.prep-pill.prep-pill--short .prep-pill-link,.prep-pill.prep-pill--short .prep-pill-change{display:none}.prep-pill.prep-pill--short:hover .prep-pill-change{display:block;position:absolute;bottom:4px;right:6px;margin-top:0;padding:1px 5px;background:#0000002e;border-radius:3px;font-size:var(--text-micro);text-decoration:none;opacity:1}.prep-tile-preview{position:fixed;top:0;left:0;z-index:200;min-width:240px;max-width:340px;width:max-content;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg, var(--shadow-md));padding:var(--spacing-4) var(--spacing-5);text-align:left;font-family:var(--font-body);white-space:normal;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease}.prep-tile-preview--measuring{visibility:hidden;opacity:0}.prep-tile-preview--open{visibility:visible;opacity:1;pointer-events:auto}.prep-tile-preview-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-2)}.prep-tile-preview-step{display:flex;gap:var(--spacing-3);align-items:baseline;font-size:var(--text-body-sm);line-height:1.35}.prep-tile-preview-step-text{flex:1 1 auto;color:var(--color-text)}.prep-tile-preview-step-dur{flex:0 0 auto;color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:var(--text-caption);white-space:nowrap}.prep-tile-preview-more{color:var(--color-text-muted);font-style:italic;font-size:var(--text-caption);padding-top:var(--spacing-1)}.prep-time-label{background:var(--color-surface);border-right:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface));padding:var(--spacing-2) var(--spacing-4) 0 0;text-align:right;font-size:var(--text-caption);color:var(--color-text-muted);font-variant-numeric:tabular-nums;position:sticky;left:0;z-index:2}.prep-time-label.prep-time-hour{font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:var(--text-label)}.prep-data-cell{background:var(--color-surface);border-top:1px solid color-mix(in srgb,var(--color-border-light) 55%,var(--color-surface))}.prep-data-cell.prep-data-hour{background:var(--color-surface-alt)}.prep-pill-column{position:relative;pointer-events:none}.prep-pill{position:absolute;left:3px;right:3px;background:var(--recipe-color, var(--color-text-muted));color:var(--color-white);border:none;border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-3);box-shadow:var(--shadow-sm);font-family:var(--font-body);font-size:var(--text-caption);line-height:1.2;cursor:pointer;text-align:left;overflow:hidden;pointer-events:auto;z-index:1;display:flex;flex-direction:column;justify-content:flex-start;gap:2px;transition:box-shadow var(--transition-fast),transform var(--transition-fast);background-image:linear-gradient(to bottom,rgba(255,255,255,.08),transparent 40%)}.prep-pill:hover{box-shadow:var(--shadow-md);transform:translateY(-1px);z-index:4}.prep-pill-recipe{cursor:grab}.prep-pill-recipe:active{cursor:grabbing}.prep-pill-dragging{cursor:grabbing;z-index:10;opacity:.92;box-shadow:var(--shadow-lg);transition:none}.prep-pill-name{font-weight:var(--font-weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prep-pill-time{font-size:var(--text-micro);opacity:.82;font-variant-numeric:tabular-nums}.prep-pill-dur{font-size:var(--text-micro);opacity:.7;font-variant-numeric:tabular-nums}.prep-pill-synthetic{opacity:.88;outline:1px dashed rgba(255,255,255,.55);outline-offset:-3px}.prep-pill-synthetic .prep-pill-name:before{content:"↻ "}.prep-plan-modal{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1c1a73;z-index:var(--z-modal);align-items:center;justify-content:center;padding:var(--spacing-6);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease-out,visibility 0s linear .15s}.prep-plan-modal--open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .15s ease-out,visibility 0s linear 0s}.prep-plan-modal-panel{background:var(--color-surface);border-radius:var(--radius-2xl);padding:var(--spacing-8) var(--spacing-9);max-width:520px;width:100%;max-height:85vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-xl);font-family:var(--font-body)}.prep-plan-modal-close{position:absolute;top:var(--spacing-5);right:var(--spacing-5);background:none;border:none;font-size:22px;line-height:1;cursor:pointer;color:var(--color-text-muted)}.prep-plan-modal-close:hover{color:var(--color-text)}.prep-plan-modal-title{font-family:var(--font-display);font-size:var(--text-display);font-weight:var(--font-weight-medium);color:var(--color-text);margin:0 0 var(--spacing-2)}.prep-plan-modal-via,.prep-plan-modal-covered{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--font-weight-regular);font-style:italic;color:var(--color-text-muted);margin:calc(-1 * var(--spacing-1)) 0 var(--spacing-4)}.prep-plan-modal-via+.prep-plan-modal-covered,.prep-plan-modal-covered+.prep-plan-modal-covered{margin-top:0}.prep-plan-modal-via:has(+.prep-plan-modal-covered){margin-bottom:var(--spacing-1)}.prep-plan-modal-sub{font-size:var(--text-caption);color:var(--color-text-muted);margin:0 0 var(--spacing-6)}.prep-plan-modal-options{display:flex;flex-direction:column;gap:var(--spacing-3)}.prep-plan-opt{display:flex;gap:var(--spacing-4);align-items:flex-start;padding:var(--spacing-5) var(--spacing-6);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);font-family:var(--font-body);text-align:left;width:100%}.prep-plan-opt:hover{background:var(--color-bg-hover);border-color:var(--color-secondary)}.prep-plan-opt--selected{background:var(--color-accent-soft);border-color:var(--color-secondary);border-width:2px;padding:calc(var(--spacing-5) - 1px) calc(var(--spacing-6) - 1px)}.prep-plan-opt-radio{width:16px;height:16px;border-radius:50%;border:2px solid var(--color-text-muted);flex-shrink:0;margin-top:2px;position:relative}.prep-plan-opt--selected .prep-plan-opt-radio{border-color:var(--color-secondary)}.prep-plan-opt--selected .prep-plan-opt-radio:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:50%;background:var(--color-secondary)}.prep-plan-opt-body{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.prep-plan-opt-name{font-size:var(--text-body-sm);line-height:1.3;color:var(--color-text)}.prep-plan-opt-meta{font-size:var(--text-caption);color:var(--color-text-muted)}.prep-plan-opt-tag{display:inline-block;font-size:var(--text-micro);padding:1px 6px;border-radius:var(--radius-sm);background:var(--color-secondary);color:var(--color-white);margin-left:var(--spacing-2);vertical-align:middle;text-transform:uppercase;letter-spacing:.04em}.prep-plan-opt-tag--suggested,.prep-plan-opt-tag--author{background:var(--color-secondary)}.prep-plan-opt-tag--current{background:var(--color-text);color:var(--color-white)}.prep-plan-opt-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:var(--spacing-2) var(--spacing-3)}.prep-plan-opt-row .prep-plan-opt{width:100%}.prep-plan-opt-details-toggle{font-family:var(--font-body);font-size:var(--text-caption);color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:var(--spacing-2) var(--spacing-3);white-space:nowrap;text-decoration:underline;text-underline-offset:2px}.prep-plan-opt-details-toggle:hover{color:var(--color-text)}.prep-plan-opt-details-toggle[aria-expanded=true]{color:var(--color-text);font-weight:var(--font-weight-medium)}.prep-plan-opt-details{grid-column:1 / -1;padding:var(--spacing-3) var(--spacing-4) var(--spacing-2);margin-top:calc(-1 * var(--spacing-1));border-top:1px dashed var(--color-border)}.prep-plan-opt-details[hidden]{display:none}.prep-plan-opt-detail-explain{font-size:var(--text-body-sm);color:var(--color-text);line-height:1.4;margin:0 0 var(--spacing-2)}.prep-plan-opt-detail-dur{font-size:var(--text-caption);color:var(--color-text-muted);margin:0 0 var(--spacing-3)}.prep-plan-modal-section{margin-bottom:var(--spacing-7)}.prep-plan-modal-section:last-child{margin-bottom:0}.prep-plan-modal-section-head{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 var(--spacing-3)}.prep-plan-modal-overview-meta{font-size:var(--text-caption);color:var(--color-text-muted);margin:0 0 var(--spacing-4);font-variant-numeric:tabular-nums}.prep-plan-modal-overview-line{font-size:var(--text-body-sm);color:var(--color-text);margin:0 0 var(--spacing-3)}.prep-plan-modal-overview-hint{font-size:var(--text-caption);color:var(--color-text-muted);margin:0;font-style:italic}.prep-plan-modal-steps{margin-top:var(--spacing-6)}.prep-plan-steps-bar{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-4);cursor:pointer;-webkit-user-select:none;user-select:none}.prep-plan-steps-summary-text{font-size:var(--text-caption);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.prep-plan-steps-toggle{flex:none;font-size:var(--text-caption);color:var(--color-text-muted);white-space:nowrap}.prep-plan-steps-bar:hover .prep-plan-steps-toggle{text-decoration:underline}.prep-plan-modal-steps.collapsed .prep-plan-steps-toggle--hide,.prep-plan-modal-steps:not(.collapsed) .prep-plan-steps-toggle--show{display:none}.prep-plan-modal-steps.collapsed .prep-plan-steps-body{display:none}.prep-plan-steps-body{margin-top:var(--spacing-5)}.prep-plan-modal-flexible-note{font-size:var(--text-caption);color:var(--color-text-muted);margin:0 0 var(--spacing-3);font-style:italic}.prep-phase-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-3)}.prep-phase-step{padding:var(--spacing-3) 0;border-bottom:1px solid var(--color-border-light);display:grid;grid-template-columns:90px 1fr auto;gap:var(--spacing-4);align-items:baseline;font-size:var(--text-body-sm)}.prep-phase-steps--flat .prep-phase-step{grid-template-columns:1fr auto}.prep-phase-step:last-child{border-bottom:none}.prep-phase-step--clickable{cursor:pointer;margin:0 calc(var(--spacing-3) * -1);padding-left:var(--spacing-3);padding-right:var(--spacing-3);transition:background var(--transition-fast)}.prep-phase-step--clickable:hover{background:var(--color-surface-alt)}.prep-phase-step-time{font-size:var(--text-caption);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.prep-phase-step-text{color:var(--color-text)}.prep-phase-step-dur{font-size:var(--text-caption);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.prep-phase-step-dur--rate,.prep-phase-step-dur--stage,.prep-phase-step-dur--range{text-align:right;white-space:normal;justify-self:end;max-width:60%}.prep-phase-step--setup .prep-phase-step-text{color:var(--color-text-light);font-style:italic}.prep-phase-step--episode-head{cursor:default}.prep-phase-step--episode-head .prep-phase-step-text{font-weight:600;color:var(--color-text)}.prep-phase-step--episode-step .prep-phase-step-text{padding-left:var(--spacing-3)}.prep-plan-modal-panel:has(.prep-win){max-width:calc(860px * var(--pw-scale));padding:calc(31.5px * var(--pw-scale)) calc(46px * var(--pw-scale)) calc(31.8px * var(--pw-scale));border-radius:calc(17px * var(--pw-scale));box-shadow:0 14px 36px #0000002e,0 2px 8px #00000014}.prep-plan-modal-panel:has(.prep-win) .prep-plan-modal-close{top:calc(36px * var(--pw-scale));right:calc(34px * var(--pw-scale));width:calc(19px * var(--pw-scale));height:calc(19px * var(--pw-scale));padding:0;color:#444a50}.prep-plan-modal-close svg{display:block;width:100%;height:100%}.prep-win{font-family:var(--font-body);color:var(--pw-ink)}.prep-win .prep-plan-modal-title{margin:0;padding-right:calc(28px * var(--pw-scale));font-family:var(--font-display);font-weight:500;font-size:calc(var(--text-body) * 2.5933 * var(--pw-scale));line-height:1.15;letter-spacing:-.01em;color:var(--pw-ink)}.prep-win .prep-plan-modal-title a{color:inherit;text-decoration:none;cursor:pointer}.prep-win .prep-plan-modal-title a:hover{text-decoration:underline;text-underline-offset:4px}.prep-win .prep-plan-overall{margin:calc(12px * var(--pw-scale)) 0 0;font-size:calc(var(--text-body) * 1.5 * var(--pw-scale));line-height:1.3}.prep-win .prep-plan-overall strong{font-weight:600}.prep-win .prep-plan-overall-wrap{position:relative}.prep-win .prep-plan-overall .prep-reschedule-info-btn{width:calc(20px * var(--pw-scale));height:calc(20px * var(--pw-scale));margin-left:calc(6px * var(--pw-scale));vertical-align:calc(-3px * var(--pw-scale))}.prep-win .prep-plan-overall-wrap .prep-plan-why{top:100%;bottom:auto;left:0;right:auto;margin:calc(6px * var(--pw-scale)) 0 0}.prep-win .prep-plan-why-line{margin:calc(6px * var(--pw-scale)) 0 0;font-size:calc(var(--text-body) * 1.1667 * var(--pw-scale));line-height:1.35;color:var(--pw-step)}.prep-win-sep{display:inline-block;margin:0 calc(15px * var(--pw-scale))}.prep-win-rule{border:0;border-top:1px solid var(--pw-rule);margin:calc(24.4px * var(--pw-scale)) 0 0}.prep-win-rule--resched{margin-top:calc(35.2px * var(--pw-scale))}.prep-win .prep-reschedule-headrow{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;column-gap:calc(18px * var(--pw-scale));row-gap:calc(6px * var(--pw-scale));margin:calc(22px * var(--pw-scale)) 0 0}.prep-win .prep-reschedule-headrow .prep-reschedule-head{margin:0}.prep-win-plans .rdo-plans-link{font-size:calc(var(--text-body) * 1.0933 * var(--pw-scale) + 1pt)}.prep-win-plans-alone{margin-top:calc(24.4px * var(--pw-scale))}.prep-win .prep-plan-day{margin-top:calc(25px * var(--pw-scale))}.prep-win .prep-plan-day+.prep-plan-day{margin-top:calc(38px * var(--pw-scale))}.prep-win-pill{display:inline-block;padding:calc(3.3px * var(--pw-scale)) calc(12px * var(--pw-scale));border-radius:calc(5px * var(--pw-scale));font-size:calc(var(--text-body) * 1.0333 * var(--pw-scale));font-weight:600;letter-spacing:.12em;line-height:1.4;text-transform:uppercase}.prep-win-pill--ahead{background:var(--pw-ahead-bg);color:var(--pw-ahead-ink)}.prep-win-pill--event{background:var(--pw-event-bg);color:var(--pw-event-ink)}.prep-win .prep-plan-day-line{margin:calc(10.5px * var(--pw-scale)) 0 0;font-family:var(--font-display);font-weight:500;font-size:calc(var(--text-body) * 1.9667 * var(--pw-scale));line-height:1.2;letter-spacing:-.01em;color:var(--pw-ink)}.prep-win .prep-plan-day-line .prep-win-sep{margin:0 calc(14px * var(--pw-scale))}.prep-win-note{margin:calc(7px * var(--pw-scale)) 0 0;font-size:calc(var(--text-body) * 1.0933 * var(--pw-scale));line-height:1.35;color:var(--pw-muted)}.prep-win-steps{list-style:none;margin:0;padding:0}.prep-win-step{margin:calc(10.4px * var(--pw-scale)) 0 0;font-size:calc(var(--text-body) * 1.3467 * var(--pw-scale));line-height:1.35;color:var(--pw-step)}.prep-win-step .prep-plan-day-step{padding:0;border:0;background:none;font:inherit;color:inherit;text-align:left}.prep-win-step button.prep-plan-day-step{cursor:pointer}.prep-win-step button.prep-plan-day-step:hover,.prep-win-step button.prep-plan-day-step:focus-visible{color:var(--pw-ink);text-decoration:underline;text-underline-offset:3px}.prep-win-step button.prep-plan-day-step:focus-visible{outline:2px solid var(--color-focus, currentColor);outline-offset:2px}.prep-win .prep-reschedule-head{margin:calc(22px * var(--pw-scale)) 0 0;font-size:calc(var(--text-body) * 1.0267 * var(--pw-scale));font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#3c4147}.prep-win .prep-reschedule-hint{margin:calc(6px * var(--pw-scale)) 0 0;font-size:calc(var(--text-body) * 1.0933 * var(--pw-scale));line-height:1.35;color:#5d636a}.prep-win .prep-reschedule-options{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:calc(18px * var(--pw-scale));margin-top:calc(15.8px * var(--pw-scale))}.prep-win .prep-reschedule-choice{display:flex;flex-direction:column;gap:calc(9px * var(--pw-scale))}.prep-win .prep-reschedule-opt{position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:calc(58px * var(--pw-scale));padding:0 calc(40px * var(--pw-scale));border:1px solid var(--pw-box-border);border-radius:calc(7px * var(--pw-scale));background:#fff;font-family:var(--font-display);font-weight:500;font-size:calc(var(--text-body) * 1.3333 * var(--pw-scale));color:var(--pw-ink);text-align:center;cursor:pointer}.prep-win .prep-reschedule-opt:focus-visible{outline:2px solid var(--color-focus, currentColor);outline-offset:2px}.prep-win .prep-reschedule-opt--selected{border:1.5px solid var(--pw-green);background:var(--pw-selected-fill);cursor:default}.prep-win .prep-reschedule-check{position:absolute;right:calc(18px * var(--pw-scale));top:50%;width:calc(21px * var(--pw-scale));height:calc(21px * var(--pw-scale));margin-top:calc(-10.5px * var(--pw-scale));color:var(--pw-check)}.prep-win .prep-reschedule-src{text-align:center;font-size:calc(var(--text-body) * 1.0267 * var(--pw-scale));color:var(--pw-green-text)}.prep-win .prep-reschedule-src{display:inline-flex;align-items:center;justify-content:center;gap:calc(4px * var(--pw-scale))}.prep-win .prep-reschedule-options-wrap,.prep-win .prep-reschedule-optrow{position:relative}.prep-win .prep-reschedule-optrow>.prep-reschedule-info-btn{position:absolute;top:50%;right:calc(10px * var(--pw-scale));margin-top:calc(-13px * var(--pw-scale))}.prep-win .prep-reschedule-opt--with-info .prep-reschedule-check{right:auto;left:calc(12px * var(--pw-scale))}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info-btn{flex:none;display:inline-flex;align-items:center;justify-content:center;width:calc(26px * var(--pw-scale));height:calc(26px * var(--pw-scale));padding:0;border:0;border-radius:50%;background:none;color:var(--pw-green-text);cursor:pointer}.prep-win .prep-reschedule-src .prep-reschedule-info-btn{width:calc(20px * var(--pw-scale));height:calc(20px * var(--pw-scale))}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info-btn svg{width:100%;height:100%}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info-btn:focus-visible{outline:2px solid var(--color-focus, currentColor);outline-offset:2px}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info-btn[aria-expanded=true]{background:var(--pw-selected-fill)}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info{position:absolute;right:0;bottom:100%;z-index:2;margin-bottom:calc(8px * var(--pw-scale));box-sizing:border-box;width:max-content;max-width:min(100%,calc(420px * var(--pw-scale)));padding:calc(12px * var(--pw-scale)) calc(16px * var(--pw-scale));border:1px solid var(--pw-box-border);border-radius:calc(7px * var(--pw-scale));background:#fff;box-shadow:0 6px 22px #00000024}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info[hidden]{display:none}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info-head{margin:0;font-size:calc(var(--text-body) * 1.0267 * var(--pw-scale));font-weight:600;color:var(--pw-green-text)}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info-lines{list-style:none;margin:calc(6px * var(--pw-scale)) 0 0;padding:0}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info-line{margin-top:calc(4px * var(--pw-scale));font-size:calc(var(--text-body) * 1.1667 * var(--pw-scale));line-height:1.35;color:var(--pw-step)}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info-line .prep-win-sep{margin:0 calc(8px * var(--pw-scale))}:is(.prep-win,.reduce-dayof-sheet) .prep-reschedule-info-day{font-weight:600;color:var(--pw-ink)}@media (max-width: 720px){.prep-plan-modal-panel:has(.prep-win){padding:calc(24px * var(--pw-scale)) calc(20px * var(--pw-scale))}.prep-win .prep-reschedule-options{grid-auto-flow:row;grid-auto-columns:auto}}.prep-card{position:relative}.prep-card-done{position:absolute;right:var(--spacing-2);bottom:var(--spacing-2);width:14px;height:14px;box-sizing:border-box;border:1px solid currentColor;border-radius:50%;opacity:.45;cursor:pointer;line-height:12px;text-align:center;font-size:11px}.prep-card--light .prep-card-done{color:var(--color-text-muted)}.prep-card-done:before{content:"";position:absolute;top:-12px;right:-6px;bottom:-6px;left:-12px}.prep-card-done[aria-checked=true]{border-color:transparent;opacity:.95}.prep-card-done[aria-checked=true]:after{content:"✓";font-weight:var(--font-weight-semibold)}.prep-card-done:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media (hover: hover){.prep-card-done[aria-checked=false]{opacity:0;transition:opacity .12s ease}.prep-card:hover .prep-card-done[aria-checked=false],.prep-card:focus-within .prep-card-done[aria-checked=false],.prep-card-done[aria-checked=false]:focus-visible{opacity:.55}}@media (hover: none),screen and (max-width: 720px){.prep-card-done:before{top:-15px;right:-6px;bottom:-6px;left:-15px}}.prep-card--done{opacity:.55;filter:saturate(.6)}.prep-card--done:hover{opacity:.8}.prep-tile-preview-step-link{display:flex;justify-content:space-between;gap:var(--spacing-3);width:100%;color:inherit;text-decoration:none;cursor:pointer}.prep-tile-preview-step-link:hover .prep-tile-preview-step-text{text-decoration:underline;text-underline-offset:3px}@media (max-width: 640px){.prep-plan-modal-panel{padding:var(--spacing-6) var(--spacing-6)}}.collection-main-zone{padding:4px 0 32px;min-height:200px}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px 14px}.collection-section+.collection-section{margin-top:30px}.collection-section-label{margin:0 0 14px;font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.collection-empty{padding:40px 8px;color:#1a1c1a66}.collection-empty-headline{font-family:var(--font-display);font-size:18px;margin:0 0 4px}.explore-banner{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:40px;row-gap:3px;padding:12px clamp(16px,4vw,40px);background:linear-gradient(#2a2a280b,#2a2a280b),#faf9f6;border-bottom:1px solid var(--color-border);font-family:var(--font-body);font-size:14px;line-height:1.4;color:var(--color-text-muted);position:sticky;top:calc(var(--header-height, 96px) - var(--phone-bars-lift, 0px));z-index:99;box-shadow:0 -20px #faf9f6}.explore-banner-back{display:inline-flex;align-items:baseline;gap:7px;color:var(--color-text);text-decoration:none;font-weight:500;white-space:nowrap}button.explore-banner-back{background:none;border:none;padding:0;font:inherit;cursor:pointer}.explore-banner-back:hover{text-decoration:underline}.explore-banner-arrow{font-weight:400}.explore-banner-meta{color:var(--color-text-muted)}.explore-banner-back-compact,.explore-banner-meta-compact{display:none}.explore-banner-action{margin-left:auto;padding:0;border:none;background:none;font:inherit;font-weight:600;color:var(--color-secondary);white-space:nowrap;cursor:pointer}.explore-banner-action:hover{text-decoration:underline}.explore-banner-action:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px;border-radius:2px}@media (max-width: 600px){.explore-banner{flex-direction:column;flex-wrap:nowrap;align-items:stretch;row-gap:2px;padding:10px 16px;background:var(--color-bg);box-shadow:0 -20px 0 0 var(--color-bg);line-height:1.35}.explore-banner .explore-banner-back{display:flex;align-items:baseline;gap:6px;min-width:0;font-size:var(--text-body);font-weight:500}.explore-banner-back-label,.explore-banner-meta{display:none}.explore-banner-back-compact,.explore-banner-meta-lead{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.explore-banner-back-compact{display:block}.explore-banner-meta-compact{display:flex;min-width:0;font-size:var(--text-body-sm);color:var(--color-text-muted);white-space:nowrap}.explore-banner-meta-tail{flex-shrink:0;white-space:pre}.explore-banner:has(.explore-banner-action){display:grid;grid-template-columns:minmax(0,1fr) auto}.explore-banner:has(.explore-banner-action) .explore-banner-back{grid-column:1;grid-row:1}.explore-banner:has(.explore-banner-action) .explore-banner-meta-compact{grid-column:1 / -1;grid-row:2}.explore-banner-action{grid-column:2;grid-row:1;align-self:baseline;margin-left:12px;font-size:var(--text-body-sm)}}body.menu-focused .explore-banner{display:none}body.menu-focused{--context-banner-height: 0px}.app-content:has(.books-page.open .press-wizard) .explore-banner,.app-content:has(.books-page.open .studio) .explore-banner{display:none}body.explore-mode{background:#f6f3ec}body.explore-mode .recipe-menu-btn,body.explore-mode #detailMenuBtn,body.explore-mode #detailEditBtn,body.explore-mode #detailAddMenuBtn,body.explore-mode .press-book-delete,body.explore-mode .press-book-share,body.explore-mode .studio-delete,body.explore-mode .studio-export[data-action=press-share-book],body.explore-mode [data-action=press-start-wizard],body.explore-mode #menusView .menus-toolbar{display:none!important}.explore-locked-room{max-width:460px;margin:64px auto;padding:0 24px;text-align:center}.explore-locked-heading{font-family:var(--font-display);font-size:22px;font-weight:500;color:#1a1c1a;margin:0 0 8px}.explore-locked-body{font-family:var(--font-body);font-size:15px;line-height:1.5;color:#1a1c1a8c;margin:0 0 24px}.explore-locked-cta{border:none;cursor:pointer;background:#2a2a28;color:#faf8f5;font:600 14px/1 var(--font-body);padding:13px 28px;border-radius:8px}.explore-locked-cta:hover{background:#1a1c1a}@media print{body.printing-recipe>*:not(#detailView){display:none!important}body.printing-recipe #detailView{position:static!important;inset:auto!important;height:auto!important;max-height:none!important;overflow:visible!important;background:#fff!important}body.printing-recipe #detailView .detail-header,body.printing-recipe #detailView #dImage,body.printing-recipe .ingredient-link-sheet,body.printing-recipe .recipe-action-menu{display:none!important}}.shared-view{display:none;padding:0 0 100px}.shared-view.active{display:block;animation:fadeInUp .3s ease-out}.shares-page{max-width:760px;margin:0 auto;padding:28px 20px 0}.shares-header{margin-bottom:20px}.shares-title{font-family:var(--font-display);font-size:var(--text-display);font-weight:500;color:var(--color-text);margin:0 0 4px}.shares-subtitle{font-size:var(--text-body);color:var(--color-text-light);margin:0}.shares-loading{padding:60px 20px;text-align:center;color:var(--color-text-light);font-size:var(--text-body)}.shares-filter-bar{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}.shares-filter{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;padding:5px 14px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.shares-filter:hover:not(:disabled){border-color:var(--color-border-strong)}.shares-filter.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.shares-filter:disabled{opacity:.4;cursor:default}.shares-list{display:flex;flex-direction:column;gap:4px}.shares-row{display:flex;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid var(--color-border-light)}.shares-row:last-child{border-bottom:none}.shares-row-thumb{position:relative;flex:0 0 auto;width:52px;height:52px;border-radius:8px;overflow:hidden;background:var(--color-surface-alt)}.shares-row-thumb .shares-thumb-img,.shares-row-thumb .recipe-card-image-placeholder{width:100%;height:100%;object-fit:cover}.shares-row-open{font:inherit;color:inherit;background:none;border:none;padding:0;margin:0;cursor:pointer;text-align:left;display:block}button.shares-row-title:hover,button.shares-row-title:focus-visible{text-decoration:underline;text-underline-offset:2px}button.shares-row-thumb{transition:opacity .15s}button.shares-row-thumb:hover,button.shares-row-thumb:focus-visible{opacity:.88}.shares-row-main{flex:1 1 0;min-width:0}.shares-row-title{font-family:var(--font-display);font-size:var(--text-title);font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.shares-row-meta{font-size:var(--text-body-sm);color:var(--color-text-light);margin-top:2px}.shares-row-state--expired{color:var(--color-warning)}.shares-row-state--revoked{color:var(--color-text-light);font-style:italic}.shares-row-actions{flex:0 0 auto;display:flex;align-items:center;gap:6px}.shares-action{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border);border-radius:6px;padding:5px 12px;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.shares-action:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong)}.shares-action--danger:hover{color:var(--color-text);border-color:var(--color-text)}.shares-action:disabled{opacity:.45;cursor:default}.shares-action:disabled:hover{background:transparent;border-color:var(--color-border);color:var(--color-text-muted)}.shares-confirm-q{font-size:var(--text-body-sm);color:var(--color-text-muted);margin-right:2px}.shares-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 20px;min-height:320px}.shares-empty-title{font-family:var(--font-display);font-size:20px;font-weight:500;color:var(--color-text);margin-bottom:8px}.shares-empty-subtitle{font-size:15px;color:var(--color-text-light)}.share-badge{position:absolute;top:8px;left:8px;z-index:5;display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:999px;background:#ffffffeb;color:var(--color-secondary);font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.02em;box-shadow:0 1px 3px #0000001f;cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:background .15s,color .15s}.press-book-cover{position:relative}.share-badge:hover{background:#fff;color:var(--color-secondary-hover)}.share-badge-icon{width:12px;height:12px;flex:0 0 auto}.share-badge-label{line-height:1}@media (hover: hover) and (pointer: fine){.share-badge{background:#ffffffd9}.recipe-card:not(:hover) .share-badge-label,.menu-grid-card:not(:hover) .share-badge-label,.menu-list-row:not(:hover) .share-badge-label,.press-book-card:not(:hover) .share-badge-label{display:none}}.menu-list-row-thumbs{position:relative}.menu-list-row-thumbs .share-badge{top:2px;left:2px;padding:2px 6px}@media (max-width: 600px){.shares-page{padding:20px 14px 0}.shares-row{flex-wrap:wrap}.shares-row-actions{width:100%;justify-content:flex-end}}.library-export-view{display:none;padding:0 0 100px}.library-export-view.active{display:block;animation:fadeInUp .3s ease-out}.library-export-page{max-width:640px;margin:0 auto;padding:28px 20px 0}.library-export-header{margin-bottom:28px}.library-export-title{font-family:var(--font-display);font-size:var(--text-display);font-weight:500;color:var(--color-text);margin:0 0 6px}.library-export-subtitle,.library-export-body{font-size:var(--text-body);line-height:1.5;color:var(--color-text-light);margin:0}.library-export-section{margin-bottom:24px}.library-export-heading{font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 10px}.library-export-list{list-style:none;margin:0;padding:0}.library-export-item{display:flex;align-items:baseline;gap:0;padding:9px 0;border-bottom:1px solid var(--color-border-light);font-size:var(--text-body);color:var(--color-text)}.library-export-item:last-child{border-bottom:none}.library-export-item-count{font-variant-numeric:tabular-nums;color:var(--color-text);margin-left:5px}.library-export-item-label:after{content:" ·";color:var(--color-text-light)}.library-export-item-note{font-size:var(--text-body-sm);color:var(--color-text-light);margin-left:10px}.library-export-item--plain{color:var(--color-text)}.library-export-note{font-size:var(--text-body-sm);color:var(--color-text-light);margin:0 0 18px}.library-export-status{font-size:var(--text-body);color:var(--color-text);margin:0 0 14px}.library-export-error{border:1px solid var(--color-error);border-radius:var(--radius-lg);padding:14px 16px;margin:0 0 16px}.library-export-error-text{font-size:var(--text-body);line-height:1.5;color:var(--color-text);margin:0 0 10px}.library-export-retry{font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:500;color:var(--color-text);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.library-export-button{font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--color-white);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-pill);padding:12px 28px;cursor:pointer;transition:opacity .15s}.library-export-button:hover:not(:disabled){opacity:.85}.library-export-button:disabled{opacity:.4;cursor:default}@media (max-width: 600px){.library-export-page{padding:20px 14px 0}}.membership-view{display:none;padding:0 0 100px}.membership-view.active{display:block;animation:fadeInUp .3s ease-out}.membership-page{max-width:500px;margin:0 auto;padding:56px 20px 0}.membership-header{text-align:center;margin-bottom:36px}.membership-title{font-family:var(--font-display);font-size:calc(var(--text-body) * 2.5333);font-weight:500;line-height:1.15;color:var(--color-text);margin:0}.membership-subtitle{font-family:var(--font-display);font-size:calc(var(--text-body) * 1.4);line-height:1.3;color:var(--color-text-light);margin:6px 0 0}.membership-body,.membership-note{font-family:var(--font-display);font-size:calc(var(--text-body) * 1.0667);line-height:1.45;color:var(--color-text-light);margin:0 0 14px}.membership-note{font-size:var(--text-body-sm)}.membership-status,.membership-notice{font-family:var(--font-display);font-size:calc(var(--text-body) * 1.1333);line-height:1.4;color:var(--color-text);margin:0 0 14px}.membership-plans{border:none;margin:0 0 22px;padding:0;min-width:0}.membership-heading{font-family:var(--font-display);font-size:calc(var(--text-body) * 1.5333);font-weight:400;line-height:1.3;color:var(--color-text);margin:0;padding:0 0 12px}.membership-plan{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--color-border-light);font-size:var(--text-body);color:var(--color-text);cursor:pointer}.membership-plan:last-child{border-bottom:none}.membership-plan.membership-plan-choice{gap:14px;min-height:56px;box-sizing:border-box;padding:2px 18px 0;margin:0 0 10px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);font-family:var(--font-display);font-size:calc(var(--text-body) * 1.2667)}.membership-plan.membership-plan-choice:last-child{margin-bottom:0}.membership-plan.membership-plan-choice:has(input:checked){border-color:#acb9b0;background:#f2f4ef}.membership-plan.membership-plan-choice input{width:18px;height:18px;margin:0;flex:none;cursor:pointer}.membership-plan.membership-plan-choice:has(input:disabled){cursor:default}.membership-terms{font-family:var(--font-display);font-size:var(--text-body);line-height:1.45;color:var(--color-text-light);margin:0 0 16px}.membership-card{margin:0 0 20px}.membership-error{border:1px solid var(--color-error);border-radius:var(--radius-lg);padding:14px 16px;margin:0 0 16px}.membership-error-text{font-size:var(--text-body);line-height:1.5;color:var(--color-text);margin:0 0 10px}.membership-link{font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:500;color:var(--color-text);background:none;border:none;padding:0;margin:0 0 16px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.membership-button{font-family:var(--font-display);font-size:calc(var(--text-body) * 1.1333);font-weight:400;color:var(--color-white);background:#1a2328;border:1px solid #1a2328;border-radius:var(--radius-pill);min-height:44px;padding:2px 26px 0;margin:0 0 16px;cursor:pointer;transition:background-color .15s,border-color .15s}.membership-button:hover:not(:disabled){background:#000;border-color:#000}.membership-button:disabled{opacity:.4;cursor:default}.membership-member-card{max-width:460px;margin:0 auto;box-sizing:border-box;padding:0 28px;border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:#fcfbf8}.membership-member-head{display:flex;align-items:center;padding:22px 0 18px}.membership-member-heading{font-family:var(--font-display);font-size:calc(var(--text-body) * 1.5333);font-weight:600;line-height:1.25;color:var(--color-text);margin:0}.membership-member-facts{margin:0;padding:12px 0;border-top:1px solid var(--color-border-light)}.membership-member-row{display:flex;align-items:baseline;font-family:var(--font-display);font-size:var(--text-body);line-height:1.9}.membership-member-row dt{flex:none;width:110px;color:var(--color-text-light)}.membership-member-row dd{margin:0;font-size:calc(var(--text-body) * 1.0667);color:var(--color-text)}.membership-member-foot{padding:18px 0 22px;border-top:1px solid var(--color-border-light)}.membership-member-foot .membership-body{margin:0}.membership-manage{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:2px 20px 0;font-family:var(--font-display);font-size:calc(var(--text-body) * 1.0667);font-weight:400;color:var(--color-white);background:#292927;border:1px solid #292927;border-radius:var(--radius-lg);cursor:pointer;transition:background-color .15s,border-color .15s}.membership-manage:hover:not(:disabled){background:#000;border-color:#000}.membership-manage:disabled{opacity:.4;cursor:default}.membership-manage-arrow{margin-top:-3px}.membership-manage-error{margin:10px 0 0}.membership-page[data-variant=apple] .membership-body,.membership-page[data-variant=apple] .membership-status,.membership-page[data-variant=apple] .membership-notice{font-family:var(--font-body);font-size:var(--text-body);line-height:1.5}.membership-page[data-variant=apple] .membership-body{margin:0 0 16px}.membership-page[data-variant=apple] .membership-status,.membership-page[data-variant=apple] .membership-notice{margin:0 0 14px}.membership-page[data-variant=apple] .membership-plans{margin:0 0 20px}.membership-page[data-variant=apple] .membership-button{font-family:var(--font-body);font-size:var(--text-body);font-weight:500;background:var(--color-primary);border-color:var(--color-primary);min-width:0;min-height:0;padding:12px 28px;margin:0 0 16px}@media (max-width: 600px){.membership-page{padding:28px 16px 0}.membership-header{margin-bottom:28px}.membership-title{font-size:calc(var(--text-body) * 2.1333)}.membership-subtitle{font-size:calc(var(--text-body) * 1.2)}.membership-heading,.membership-member-heading{font-size:calc(var(--text-body) * 1.3333)}.membership-plan.membership-plan-choice{font-size:calc(var(--text-body) * 1.1333)}.membership-member-card{padding:0 18px}}.arrange-explore-btn{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid #c9c4b5;border-radius:999px;padding:5px 12px;font-size:var(--text-body-sm);color:#46563d;cursor:pointer;white-space:nowrap}.arrange-explore-btn:hover{background:#efece2;border-color:#46563d}.arrange-explore-btn-icon{font-size:var(--text-body);line-height:1}.arrange-explore-btn[hidden]{display:none}.arrange-explore-bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 16px;margin-bottom:16px;background:#46563d;color:#f7f5ef;border-radius:10px}.arrange-explore-hint{display:flex;flex-direction:column;gap:2px;font-size:var(--text-body-sm)}.arrange-explore-hint strong{font-size:var(--text-reading)}.arrange-explore-hint kbd{background:#ffffff2e;border-radius:4px;padding:0 5px;font-size:var(--text-micro)}.arrange-explore-actions{display:flex;gap:10px}.hidden-explore-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.hidden-explore-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #e4e0d5;border-radius:10px;background:#fbfaf6}.hidden-explore-row-title{font-size:var(--text-reading);color:#2c2c28}.hidden-explore-empty{padding:16px;color:#6b6b63;font-size:var(--text-body)}.explore-authoring-error{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:999px;white-space:nowrap;font-size:var(--text-body-sm);color:#7a2e2e;background:#f6e9e6;border:1px solid #e0c3bd}.explore-authoring-error[hidden]{display:none}.arrange-explore-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.arrange-tile{display:grid;grid-template-columns:auto auto 56px 1fr;align-items:center;gap:10px;padding:8px 12px;background:#fffdf8;border:1px solid #e3dfd2;border-radius:10px;cursor:grab;-webkit-user-select:none;user-select:none}.arrange-tile:focus-visible{outline:2px solid #46563d;outline-offset:2px}.arrange-tile.dragging{opacity:.5}.arrange-tile.grabbed{box-shadow:0 0 0 2px #46563d;background:#eef0e7}.arrange-tile-handle{color:#9a9482;font-size:18px;cursor:grab}.arrange-tile-pos{min-width:22px;text-align:center;font-variant-numeric:tabular-nums;color:#46563d;font-weight:600;font-size:var(--text-body-sm)}.arrange-tile-photo{width:56px;height:42px;border-radius:6px;background-size:cover;background-position:center;background-color:#efece2}.arrange-tile-photo--none{background:repeating-linear-gradient(45deg,#efece2,#efece2 6px,#e6e2d6 6px,#e6e2d6 12px)}.arrange-tile-title{font-size:var(--text-body);color:#2f2f2f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media not all and (min-width: 900px){body.phone-bars-hidden{--phone-bars-lift: calc(var(--header-height-raw, 54px) - env(safe-area-inset-top, 0px));--phone-bars-detail-lift: calc(var(--detail-header-height, 54px) - env(safe-area-inset-top, 0px))}.header,.bottom-nav,.detail-view .detail-header{transition:transform .25s ease}.explore-banner,.category-filter-bar-wrap,.menus-toolbar,.menus-toolbar-mobile,.menus-sticky-header,.grocery-sticky-header,.menu-detail-topbar,.plan-zone.course-zone,.event-header,.event-header-top,.event-header-tabs,.prep-grid-header-frame{transition:top .25s ease}.planner-sticky-bar{transition:transform .16s ease,top .25s ease}#offlineWriteBanner,.offline-write-banner-detail{transition:background-color .2s ease,color .2s ease,border-color .2s ease,top .25s ease}body.phone-bars-hidden .header{transform:translateY(calc(0px - var(--phone-bars-lift, 0px)))}body.phone-bars-hidden .detail-view .detail-header{transform:translateY(calc(0px - var(--phone-bars-detail-lift, 0px)))}.header:before,.detail-view .detail-header:before{content:"";position:absolute;top:0;left:0;right:0;height:max(0px,calc(env(safe-area-inset-top,0px) - 1px));background:inherit;z-index:1;transition:transform .25s ease}body.phone-bars-hidden .header:before{transform:translateY(var(--phone-bars-lift, 0px))}body.phone-bars-hidden .detail-view .detail-header:before{transform:translateY(var(--phone-bars-detail-lift, 0px))}body.phone-bars-hidden .bottom-nav{transform:translateY(100%)}#exploreMinimizedPill{transition:background-color .12s ease,box-shadow .12s ease,transform .25s ease}body.phone-bars-hidden #exploreMinimizedPill:not([data-place]){transform:translateY(var(--explore-pill-nav-drop, 0px))}.ingredients-chip{transition:transform .25s ease,opacity .25s ease,visibility .25s,bottom .25s ease}body.phone-bars-hidden .ingredients-chip{bottom:env(safe-area-inset-bottom,0px);border-radius:var(--radius-lg) var(--radius-lg) 0 0;clip-path:inset(-16px -16px 0 -16px)}@media not all and (min-width: 768px){.detail-view.cook-mode-on:after{content:"";position:fixed;left:0;right:0;bottom:0;height:80px;background:inherit;z-index:100;pointer-events:none;transition:height .25s ease}body.phone-bars-hidden .detail-view.cook-mode-on:after{height:env(safe-area-inset-bottom,0px)}}}@media (prefers-reduced-motion: reduce){.header,.header:before,.bottom-nav,.detail-view .detail-header,.detail-view .detail-header:before,.detail-view.cook-mode-on:after,.explore-banner,.category-filter-bar-wrap,.menus-toolbar,.menus-toolbar-mobile,.menus-sticky-header,.grocery-sticky-header,.menu-detail-topbar,.plan-zone.course-zone,.event-header,.event-header-top,.event-header-tabs,.prep-grid-header-frame{transition:none}.planner-sticky-bar{transition:transform .16s ease}#offlineWriteBanner,.offline-write-banner-detail{transition:background-color .2s ease,color .2s ease,border-color .2s ease}#exploreMinimizedPill{transition:background-color .12s ease,box-shadow .12s ease}.ingredients-chip{transition:opacity .25s ease,visibility .25s}}.press-book{--press-font-display: "Cormorant Garamond", "Georgia", serif;--press-font-body: "Newsreader", "Georgia", serif;--press-color-text: #1a1a1a;--press-color-muted: #6b6b6b;--press-color-light: #999;--press-color-bg: #fff;--press-color-surface: #f8f6f3;--press-color-border: #e0dcd6;--press-color-accent: #8b7355;--press-page-width: 612px;--press-page-height: 792px;--press-margin-top: 54px;--press-margin-bottom: 54px;--press-margin-inner: 60px;--press-margin-outer: 48px;display:flex;flex-direction:column;align-items:center;gap:24px;padding:32px 0;background:#e8e5e0}.press-page{position:relative;width:var(--press-page-width);min-height:var(--press-page-height);background:var(--press-color-bg);color:var(--press-color-text);font-family:var(--press-font-body);font-size:11pt;line-height:1.65;padding:var(--press-margin-top) var(--press-margin-outer) var(--press-margin-bottom) var(--press-margin-inner);box-shadow:0 2px 16px #00000014;box-sizing:border-box;overflow:hidden;break-after:page;page-break-after:always}.press-page:nth-child(2n){padding-left:var(--press-margin-outer);padding-right:var(--press-margin-inner)}.press-page-number{position:absolute;bottom:28px;font-family:var(--press-font-body);font-size:9pt;color:var(--press-color-muted);font-variant-numeric:oldstyle-nums}.press-page:nth-child(odd) .press-page-number{right:var(--press-margin-outer)}.press-page:nth-child(2n) .press-page-number{left:var(--press-margin-outer)}.press-page-cover .press-page-number,.press-page-blank .press-page-number,.press-page-title .press-page-number,.press-page-chapter .press-page-number{display:none}.press-page-cover{background:var(--press-color-surface);display:flex;align-items:center;justify-content:center}.press-cover-content{text-align:center;padding:0 24px}.press-cover-title{font-family:var(--press-font-display);font-size:36pt;font-weight:500;line-height:1.15;letter-spacing:.02em;color:var(--press-color-text);margin:0 0 16px}.press-cover-subtitle{font-family:var(--press-font-display);font-size:14pt;font-weight:400;font-style:italic;color:var(--press-color-muted);margin:0 0 24px}.press-cover-author{font-family:var(--press-font-body);font-size:11pt;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--press-color-muted);margin:0}.press-blank{min-height:100%}.press-page-title{display:flex;align-items:center;justify-content:center}.press-title-content{text-align:center;padding:0 24px}.press-title-main{font-family:var(--press-font-display);font-size:30pt;font-weight:500;line-height:1.2;letter-spacing:.02em;color:var(--press-color-text);margin:0 0 12px}.press-title-subtitle{font-family:var(--press-font-display);font-size:13pt;font-weight:400;font-style:italic;color:var(--press-color-muted);margin:0 0 20px}.press-title-author{font-family:var(--press-font-body);font-size:10pt;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--press-color-light);margin:0}.press-page-intro{display:flex;align-items:center;justify-content:center}.press-intro-content{max-width:380px;text-align:center}.press-intro-text{font-family:var(--press-font-display);font-size:14pt;font-style:italic;line-height:1.7;color:var(--press-color-muted);margin:0}.press-toc-content{padding-top:60px}.press-toc-heading{font-family:var(--press-font-display);font-size:22pt;font-weight:500;text-align:center;margin:0 0 40px;letter-spacing:.03em}.press-toc-entries{display:flex;flex-direction:column;gap:12px}.press-toc-entry{display:flex;align-items:baseline;gap:8px}.press-toc-chapter{font-family:var(--press-font-body);font-size:11pt;font-weight:500;white-space:nowrap}.press-toc-dots{flex:1;border-bottom:1px dotted var(--press-color-border);min-width:20px;margin-bottom:3px}.press-toc-page{font-family:var(--press-font-body);font-size:10pt;color:var(--press-color-muted);font-variant-numeric:oldstyle-nums;white-space:nowrap}.press-toc-placeholder{text-align:center;color:var(--press-color-light);font-style:italic;font-size:10pt}.press-page-chapter{display:flex;align-items:center;justify-content:center}.press-chapter-content{text-align:center}.press-chapter-ornament{font-size:18pt;color:var(--press-color-accent);margin-bottom:16px}.press-chapter-title{font-family:var(--press-font-display);font-size:28pt;font-weight:500;line-height:1.2;letter-spacing:.02em;color:var(--press-color-text);margin:0 0 8px}.press-chapter-count{font-family:var(--press-font-body);font-size:9pt;letter-spacing:.08em;text-transform:uppercase;color:var(--press-color-light);margin:0}.press-running-header{display:flex;justify-content:space-between;font-family:var(--press-font-body);font-size:8pt;letter-spacing:.06em;text-transform:uppercase;color:var(--press-color-light);margin-bottom:24px;padding-bottom:8px;border-bottom:.5px solid var(--press-color-border);break-after:avoid}.press-running-chapter,.press-running-recipe{max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.press-recipe-title{font-family:var(--press-font-body);font-size:18pt;font-weight:600;line-height:1.25;color:var(--press-color-text);margin:0 0 8px;break-after:avoid}.press-recipe-headnote{font-family:var(--press-font-body);font-size:10.5pt;font-style:italic;line-height:1.6;color:var(--press-color-muted);margin:0 0 16px;break-after:avoid}.press-recipe-meta{font-family:var(--press-font-body);font-size:8.5pt;font-variant:small-caps;letter-spacing:.04em;color:var(--press-color-muted);margin:0 0 20px}.press-recipe-body{display:block}.press-recipe-body:after{content:"";display:table;clear:both}.press-recipe-ingredients{float:left;width:42%}.press-recipe-overflow-ingredients{margin-bottom:16px}.press-recipe-overflow-ingredients .press-ingredient-header{margin-top:0}.press-recipe-method{margin-left:45%}.press-template-ingredient-heavy{display:block}.press-template-ingredient-heavy .press-recipe-ingredients-wide{column-count:2;column-gap:24px;width:100%;margin-bottom:18px}.press-template-ingredient-heavy .press-recipe-ingredients-wide .press-ingredient-section{break-inside:avoid}.press-template-ingredient-heavy .press-recipe-method-below{width:100%;margin-left:0;border-top:.5px solid #c8c0b8;padding-top:10px}.press-ingredient-section{break-inside:avoid}.press-ingredient-section+.press-ingredient-section{margin-top:14px}.press-ingredient-header{font-family:var(--press-font-body);font-size:9pt;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--press-color-muted);margin:0 0 6px;break-after:avoid}.press-ingredient-list{list-style:none;padding:0;margin:0}.press-ingredient-list li{font-size:10pt;line-height:1.55;padding:2px 0;break-inside:avoid}.press-recipe-steps{padding-left:20px;margin:0}.press-recipe-steps li{font-size:10.5pt;line-height:1.6;margin-bottom:10px}.press-recipe-steps li.press-step-continued{list-style-type:none;padding-left:0}.press-recipe-steps li::marker{font-family:var(--press-font-body);font-weight:600;font-size:10pt;color:var(--press-color-accent)}.press-recipe-note{display:block;font-size:9pt;font-style:italic;color:var(--press-color-muted);margin-top:2px}.press-no-ingredients{font-style:italic;color:var(--press-color-light);font-size:10pt}.press-page-hero-photo{padding:0!important;overflow:hidden}.press-recipe-hero-photo{width:100%;height:100%;min-height:var(--press-page-height);display:flex;align-items:center;justify-content:center;background:var(--press-color-surface)}.press-hero-img{width:100%;height:100%;min-height:var(--press-page-height);object-fit:cover;display:block}.press-hero-placeholder{width:100%;min-height:var(--press-page-height);background:var(--press-color-surface);display:flex;align-items:center;justify-content:center}.press-hero-placeholder:after{content:"Photo";font-family:var(--press-font-body);font-size:11pt;color:var(--press-color-light);font-style:italic}.press-page-hero-text{padding-top:72px}.press-recipe-photo{margin-bottom:24px;overflow:hidden;border-radius:2px}.press-standard-img{width:100%;height:auto;max-height:200px;object-fit:cover;display:block}.press-paired-title{font-size:15pt}.press-page-paired .press-recipe-body{grid-template-columns:1fr;gap:16px}.press-page-paired .press-ingredient-list li{font-size:9.5pt}.press-page-paired .press-recipe-steps li{font-size:10pt}.press-recipe-body-full{display:block;margin-top:12px}.press-page-continuation-method .press-recipe-method{margin-left:0}.press-page-continuation-method .press-recipe-steps li{margin-bottom:10px;line-height:1.55}.press-page-divider{display:flex;align-items:center;justify-content:center}.press-divider-content{text-align:center}.press-divider-ornament{font-size:24pt;color:var(--press-color-border)}.press-index-content{padding-top:60px}.press-index-heading{font-family:var(--press-font-display);font-size:22pt;font-weight:500;text-align:center;margin:0 0 32px;letter-spacing:.03em}.press-index-columns{column-count:2;column-gap:32px}.press-index-entry{display:flex;align-items:baseline;gap:4px;font-size:9pt;line-height:1.8;break-inside:avoid}.press-index-ingredient{font-family:var(--press-font-body);white-space:nowrap}.press-index-dots{flex:1;border-bottom:1px dotted var(--press-color-border);min-width:10px;margin-bottom:2px}.press-index-pages{font-family:var(--press-font-body);color:var(--press-color-muted);font-variant-numeric:oldstyle-nums;white-space:nowrap}.press-index-group{break-inside:avoid;margin-bottom:8px}.press-index-term{font-family:var(--press-font-body);font-weight:600;font-size:9.5pt;line-height:1.8}.press-index-recipe{display:flex;align-items:baseline;gap:4px;font-size:9pt;line-height:1.8;padding-left:12px;break-inside:avoid}.press-index-recipe-title{font-family:var(--press-font-body);white-space:nowrap}.press-index-placeholder{text-align:center;color:var(--press-color-light);font-style:italic;font-size:10pt}.press-page-empty{display:flex;align-items:center;justify-content:center;color:var(--press-color-light);font-style:italic}.press-quick-generate{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--press-color-accent);color:#fff;border:none;border-radius:6px;font-family:var(--press-font-body);font-size:10pt;font-weight:500;cursor:pointer;transition:background .15s}.press-quick-generate:hover{background:#7a6449}@media (max-width: 700px){.press-book{--press-page-width: 100vw;--press-page-height: auto;gap:16px;padding:16px 0}.press-page{min-height:auto;box-shadow:none;border-bottom:1px solid var(--press-color-border)}.press-recipe-ingredients{float:none;width:100%;margin-bottom:16px}.press-recipe-method{margin-left:0}.press-proof-preview .press-book{--press-page-width: 612px;--press-page-height: 792px;gap:32px;padding:24px}.press-proof-preview .press-page{min-height:var(--press-page-height);box-shadow:0 2px 16px #00000014;border-bottom:none}.press-proof-preview .press-recipe-ingredients{float:left;width:42%;margin-bottom:0}.press-proof-preview .press-recipe-method{margin-left:45%}.press-proof-preview .press-template-ingredient-heavy .press-recipe-ingredients-wide{column-count:2;column-gap:24px;width:100%;float:none}.press-proof-preview .press-template-ingredient-heavy .press-recipe-method-below{margin-left:0;width:100%}}.press-proof-review{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;background:var(--press-bg, #faf8f4)}.press-proof-toolbar{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#fff;border-bottom:1px solid #e8e0d6;flex-shrink:0}.press-proof-title{font-family:Cormorant Garamond,serif;font-size:18px;font-weight:600;color:#3d3429;flex:1}.press-proof-page-count{font-size:13px;color:#8a7e70}.press-proof-btn{padding:6px 14px;border:1px solid #d4ccc0;border-radius:6px;background:#fff;color:#3d3429;font-size:13px;cursor:pointer;transition:background .15s}.press-proof-btn:hover:not(:disabled){background:#f5f0ea}.press-proof-btn:disabled{opacity:.4;cursor:not-allowed}.press-proof-export{display:flex;align-items:center;gap:5px;background:transparent;color:#5a4e3c;border-color:#c8c0b4}.press-proof-export:hover{background:#f0ece6;border-color:#8b7355}.press-proof-save{background:#8b7355;color:#fff;border-color:#8b7355}.press-proof-save:hover{background:#7a6548}.press-proof-close{display:flex;align-items:center;gap:6px}.press-proof-body{display:flex;flex:1;overflow:hidden}.press-proof-preview{flex:1;overflow-y:auto;padding:24px;display:flex;justify-content:center}.press-proof-preview .press-book{--press-preview-scale: 1;zoom:var(--press-preview-scale)}.press-proof-sidebar{width:320px;flex-shrink:0;overflow-y:auto;background:#fff;border-left:1px solid #e8e0d6;padding:20px;max-height:100%}.press-proof-sidebar-empty{padding:40px 20px;text-align:center;color:#8a7e70;font-size:14px;font-style:italic}.press-proof-sidebar-content{display:flex;flex-direction:column;gap:16px}.press-proof-recipe-title{font-family:Newsreader,serif;font-size:18px;font-weight:600;color:#3d3429;margin:0;line-height:1.3}.press-proof-has-overrides{display:inline-block;font-size:11px;color:#8b7355;background:#f5f0ea;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.05em}.press-proof-section{display:flex;flex-direction:column;gap:6px}.press-proof-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#8a7e70}.press-proof-select{padding:8px 10px;border:1px solid #d4ccc0;border-radius:6px;background:#fff;color:#3d3429;font-size:13px;font-family:inherit}.press-proof-textarea{padding:10px;border:1px solid #d4ccc0;border-radius:6px;background:#fff;color:#3d3429;font-size:13px;font-family:Newsreader,serif;resize:vertical;min-height:60px;line-height:1.5}.press-proof-textarea:focus,.press-proof-select:focus{outline:none;border-color:#8b7355;box-shadow:0 0 0 2px #8b735526}.press-proof-checkbox{display:flex;align-items:center;gap:8px;font-size:13px;color:#3d3429;cursor:pointer}.press-proof-checkbox input[type=checkbox]{accent-color:#8b7355}.press-proof-hint{font-size:11px;color:#8a7e70;font-style:italic}.press-proof-hint-warn{color:#b8860b;display:block;margin-top:2px}.press-proof-btn-group{display:flex;gap:8px}.press-proof-btn-group .press-proof-btn{flex:1}.press-proof-reset{color:#8a7e70;border-color:#d4ccc0;font-size:12px}.press-proof-reorder{margin-top:4px}.press-proof-focal-picker{position:relative;width:100%;aspect-ratio:4 / 3;border-radius:6px;overflow:hidden;cursor:crosshair;border:1px solid #d4ccc0;-webkit-user-select:none;user-select:none;touch-action:none}.press-proof-focal-img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.press-proof-focal-crosshair{position:absolute;width:24px;height:24px;transform:translate(-50%,-50%);pointer-events:none}.press-proof-focal-crosshair:before,.press-proof-focal-crosshair:after{content:"";position:absolute;background:#fff;box-shadow:0 0 2px #0009}.press-proof-focal-crosshair:before{width:2px;height:100%;left:50%;top:0;transform:translate(-50%)}.press-proof-focal-crosshair:after{height:2px;width:100%;top:50%;left:0;transform:translateY(-50%)}.press-proof-zoom-row{display:flex;align-items:center;gap:8px}.press-proof-zoom-label{font-size:11px;color:#8a7e70;white-space:nowrap;flex-shrink:0}.press-proof-zoom-slider{flex:1;accent-color:#8b7355;height:4px}.press-page-selected{outline:3px solid #8b7355;outline-offset:4px;border-radius:2px}@media (max-width: 768px){.press-proof-body{flex-direction:column}.press-proof-sidebar{width:100%;max-height:40vh;border-left:none;border-top:1px solid #e8e0d6}}.press-wizard{display:flex;flex-direction:column;min-height:100%;background:var(--press-bg, #faf8f4);font-family:Newsreader,Georgia,serif}.press-wizard-header{display:flex;align-items:center;gap:16px;padding:16px 24px;background:#fff;border-bottom:1px solid #e8e0d6;flex-shrink:0}.press-wizard-back{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #d4ccc0;border-radius:6px;background:#fff;color:#3d3429;font-size:13px;cursor:pointer;transition:background .15s}.press-wizard-back:hover{background:#f5f0ea}.press-wizard-step-indicator{font-size:13px;color:#8a7e70;letter-spacing:.03em}.press-wizard-dots{display:flex;gap:6px;align-items:center}.press-wizard-dot{width:10px;height:10px;border-radius:50%;background:#d4ccc0;transition:background .2s}.press-wizard-dot.active{background:#8b7355}.press-wizard-dot.completed{background:#6b8f71}.press-wizard-body{flex:1;overflow-y:auto;display:flex;justify-content:center;padding:40px 24px 80px}.press-wizard-content{width:100%;max-width:640px}.press-wizard-heading{font-family:Cormorant Garamond,serif;font-size:28px;font-weight:600;color:#3d3429;margin:0 0 8px;line-height:1.2}.press-wizard-subheading{font-size:15px;color:#8a7e70;margin:0 0 32px;line-height:1.5}.press-wizard-options{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.press-wizard-option{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #d4ccc0;border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s;background:#fff}.press-wizard-option:hover{border-color:#8b7355}.press-wizard-option.active{border-color:#8b7355;background:#faf5ef}.press-wizard-option input[type=radio]{margin:3px 0 0;accent-color:#8b7355;flex-shrink:0}.press-wizard-option-text{display:flex;flex-direction:column;gap:2px}.press-wizard-option-label{font-weight:600;font-size:15px;color:#3d3429}.press-wizard-option-desc{font-size:13px;color:#8a7e70;line-height:1.4}.press-wizard-field{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.press-wizard-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#8a7e70}.press-wizard-input{width:100%;border:1px solid #d4ccc0;border-radius:6px;padding:10px 12px;font-size:15px;font-family:Newsreader,Georgia,serif;color:#3d3429;background:#fff;transition:border-color .15s;box-sizing:border-box}.press-wizard-input:focus{outline:none;border-color:#8b7355;box-shadow:0 0 0 2px #8b735526}.press-wizard-input-title{font-family:Cormorant Garamond,serif;font-size:24px;font-weight:600}.press-wizard-textarea{width:100%;border:1px solid #d4ccc0;border-radius:6px;padding:10px 12px;font-size:14px;font-family:Newsreader,Georgia,serif;color:#3d3429;background:#fff;resize:vertical;min-height:80px;line-height:1.5;box-sizing:border-box}.press-wizard-textarea:focus{outline:none;border-color:#8b7355;box-shadow:0 0 0 2px #8b735526}.press-wizard-picker{max-height:320px;overflow-y:auto;border:1px solid #d4ccc0;border-radius:8px;background:#fff;margin-top:12px}.press-wizard-picker-search{position:sticky;top:0;padding:10px 12px;border-bottom:1px solid #e8e0d6;background:#fff;z-index:1}.press-wizard-picker-search input{width:100%;border:1px solid #d4ccc0;border-radius:6px;padding:8px 10px;font-size:14px;font-family:inherit;box-sizing:border-box}.press-wizard-picker-row{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background .1s;border-bottom:1px solid #f5f0ea}.press-wizard-picker-row:last-child{border-bottom:none}.press-wizard-picker-row:hover{background:#faf5ef}.press-wizard-picker-row.selected{background:#f5f0ea}.press-wizard-picker-row input[type=checkbox]{accent-color:#8b7355;flex-shrink:0}.press-wizard-picker-name{font-size:14px;color:#3d3429;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.press-wizard-select{width:100%;padding:10px 12px;border:1px solid #d4ccc0;border-radius:6px;font-size:14px;font-family:inherit;color:#3d3429;background:#fff;margin-top:12px;box-sizing:border-box}.press-wizard-nav{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-top:1px solid #e8e0d6;flex-shrink:0}.press-wizard-btn{padding:10px 24px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s,opacity .15s;font-family:inherit}.press-wizard-btn:disabled{opacity:.4;cursor:not-allowed}.press-wizard-btn-secondary{background:#fff;border:1px solid #d4ccc0;color:#3d3429}.press-wizard-btn-secondary:hover:not(:disabled){background:#f5f0ea}.press-wizard-btn-primary{background:#8b7355;border:1px solid #8b7355;color:#fff}.press-wizard-btn-primary:hover:not(:disabled){background:#7a6548}.press-wizard-generate{text-align:center;padding:48px 0}.press-wizard-generate-btn{padding:14px 36px;border-radius:8px;font-size:16px;font-weight:600;font-family:Cormorant Garamond,serif;background:#8b7355;border:none;color:#fff;cursor:pointer;transition:background .15s}.press-wizard-generate-btn:hover:not(:disabled){background:#7a6548}.press-wizard-generate-btn:disabled{opacity:.5;cursor:not-allowed}.press-wizard-progress{text-align:center;padding:48px 0}.press-wizard-progress-text{font-size:16px;font-weight:500;color:#3d3429;margin:0 0 6px}.press-wizard-progress-sub{font-size:13px;color:#8a7e70;margin:0}.press-missing-notice{margin:14px auto 0;max-width:460px;padding:14px 16px;border-radius:8px;text-align:left;background:#f6efe2;border:1px solid #e2d4b8}.press-missing-title{margin:0 0 4px;font-weight:600;color:#3d3429}.press-missing-detail{margin:0 0 6px;color:#6b6153;font-size:13px}.press-missing-list{margin:6px 0 10px;padding-left:18px;color:#6b6153;font-size:13px}.press-missing-list li{margin:2px 0}.press-missing-list li:has(.press-missing-fix){display:flex;align-items:center;gap:10px;flex-wrap:wrap}.press-missing-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:6px}.press-missing-back,.press-missing-retry,.press-missing-open{border-radius:7px;padding:7px 14px;cursor:pointer;font-size:13px;font-weight:600}.press-missing-back,.press-missing-retry{background:none;border:1px solid rgba(0,0,0,.18);color:#3d3429}.press-missing-back:hover,.press-missing-retry:hover{border-color:#00000057;background:#00000008}.press-missing-fix{background:none;border:1px solid rgba(0,0,0,.18);color:#3d3429;border-radius:6px;padding:3px 10px;cursor:pointer;font-size:12px;font-weight:600}.press-missing-fix:hover{border-color:#00000057;background:#00000008}.press-missing-open{background:#46563d;border:1px solid #46563d;color:#faf8f5}.press-missing-open:hover{background:#3a4733;border-color:#3a4733}.press-wizard-finish{text-align:center;padding:32px 0}.press-wizard-finish-icon{font-size:48px;margin-bottom:16px}.press-wizard-finish-title{font-family:Cormorant Garamond,serif;font-size:24px;font-weight:600;color:#3d3429;margin:0 0 8px}.press-wizard-finish-meta{font-size:14px;color:#8a7e70;margin:0 0 32px}.press-wizard-finish-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.press-wizard-divider{border:none;border-top:1px solid #e8e0d6;margin:32px 0}.press-wizard-input-subtitle{font-size:17px;color:#5a5044}.press-wizard-enhance{margin-top:28px;padding-top:24px;border-top:1px solid #e8e0d6}.press-wizard-toggle{display:flex;align-items:center;gap:12px;cursor:pointer}.press-wizard-toggle-track{position:relative;width:44px;height:24px;border-radius:12px;background:#d4ccc0;transition:background .2s;flex-shrink:0}.press-wizard-toggle-track.on{background:#8b7355}.press-wizard-toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px #00000026}.press-wizard-toggle-track.on .press-wizard-toggle-thumb{transform:translate(20px)}.press-wizard-toggle-label{font-size:15px;font-weight:600;color:#3d3429}.press-wizard-enhance-desc{font-size:13px;color:#8a7e70;margin:6px 0 0 56px;line-height:1.4}.press-wizard-btn-generate{padding:12px 32px;border-radius:8px;font-size:16px;font-weight:600;font-family:Cormorant Garamond,serif;background:#8b7355;border:1px solid #8b7355;color:#fff;cursor:pointer;transition:background .15s}.press-wizard-btn-generate:hover:not(:disabled){background:#7a6548}.press-wizard-body{padding:48px 48px 140px;justify-content:flex-start}.press-wizard-body--compose{padding-top:10px}.press-wizard-content{max-width:none;width:100%}.press-wizard-compose-header{margin:0 0 48px}.press-wizard-body--compose .press-wizard-compose-header{margin-bottom:24px}.press-wizard-compose-title-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;column-gap:24px}.press-wizard-start-over{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:0;margin:0;font-family:Public Sans,system-ui,sans-serif;font-size:var(--text-body-sm);color:#8a7e70;text-decoration:underline;text-decoration-color:#8a7e7066;text-underline-offset:3px;cursor:pointer;transition:color .12s,text-decoration-color .12s}.press-wizard-start-over:hover{color:#3d3429;text-decoration-color:currentColor}.press-wizard-start-over[hidden]{display:none}.press-wizard-kept-notice{margin:16px 0 0;max-width:560px;padding:12px 16px;border-radius:8px;background:#f6efe2;border:1px solid #e2d4b8;font-size:var(--text-body-sm);line-height:1.5;color:#3d3429}.press-wizard-kept-notice p{margin:0}.press-wizard-kept-notice p+p{margin-top:4px}.press-wizard-compose{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:72px;align-items:start}.press-wizard-compose-form{min-width:0;--compose-section-gap: 28px;--compose-heading-gap: 12px;--compose-field-gap: 12px}.press-wizard-compose-form .press-wizard-section{margin-bottom:var(--compose-section-gap);padding-bottom:0}.press-wizard-compose-form .press-wizard-section>*:last-child{margin-bottom:0}.press-wizard-compose-form .press-wizard-section-heading{margin-bottom:var(--compose-heading-gap);padding-bottom:12px}.press-wizard-compose-form .press-wizard-tabs{margin-bottom:16px}.press-wizard-chapter-picks{margin:var(--spacing-5) 0 var(--spacing-6);padding:14px 16px 14px 13px;background:#f5f0ea;border:1px solid #d4ccc0;border-left:3px solid var(--color-secondary-hover);color:#3d3429}.press-wizard-chapter-picks.is-done{background:transparent;border-color:var(--color-border-light)}.press-wizard-chapter-picks-heading,.press-wizard-chapter-picks-label{margin:0 0 var(--spacing-3)}.press-wizard-chapter-pick-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--spacing-5)}.press-wizard-chapter-pick{display:grid;grid-template-columns:48px minmax(0,1fr) 220px;align-items:center;column-gap:14px}.press-wizard-chapter-select-wrap{position:relative}.press-wizard-chapter-select{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3);width:100%;height:30px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:#3d3429;font-family:Newsreader,Georgia,serif;font-size:15px;text-align:left;cursor:pointer}.press-wizard-chapter-select:hover{border-color:var(--color-border-strong)}.press-wizard-chapter-select:focus-visible{outline:2px solid var(--color-secondary-hover);outline-offset:1px}.press-wizard-chapter-select-value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.press-wizard-chapter-select-caret{flex-shrink:0}.press-wizard-chapter-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;z-index:30;margin:0;padding:4px;list-style:none;background:var(--color-bg);border:1px solid rgba(26,28,26,.1);border-radius:var(--radius-sm);box-shadow:0 4px 16px #0000000f}.press-wizard-chapter-menu[hidden]{display:none}.press-wizard-chapter-option{padding:var(--spacing-3) var(--spacing-5);border-radius:3px;font-family:Newsreader,Georgia,serif;font-size:15px;color:#3d3429;white-space:nowrap;cursor:pointer}.press-wizard-chapter-option:hover,.press-wizard-chapter-option:focus{background:#1a1c1a0d;outline:none}.press-wizard-chapter-option.is-selected{font-weight:var(--font-weight-medium);color:var(--color-text)}@media (max-width: 600px){.press-wizard-chapter-picks{padding:14px 16px 14px 13px}.press-wizard-chapter-pick{grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;row-gap:8px;column-gap:14px;align-items:start}.press-wizard-chapter-pick>.cmp-recipe-thumb{grid-row:1 / span 2}.press-wizard-chapter-pick-title{align-self:end}.press-wizard-chapter-select-wrap{grid-column:2}}.press-wizard-compose-form .press-wizard-field:has(.press-wizard-tabs-cover){margin-bottom:24px}.press-wizard-compose-form .press-wizard-field:has(.press-cover-selection){margin-bottom:16px}.press-wizard-compose-form .press-wizard-field:has(.press-cover-colors-row){margin-bottom:24px}.press-wizard-compose-form .press-wizard-field:has(.press-wizard-textarea){margin-bottom:16px}.press-cover-colors-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}.press-cover-colors-group{display:flex;flex-direction:column;gap:6px}.press-cover-colors-group--title{align-items:flex-end;text-align:right}.press-backcover-strip{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow:hidden}.press-backcover-strip-thumb{flex:0 0 auto;width:64px;height:48px;border-radius:2px;background-size:cover;background-position:center;background-color:#efece6}.press-backcover-strip-thumb.is-empty{background-color:#efece6;border:1px dashed rgba(0,0,0,.25)}.press-backcover-tray{display:flex;flex-direction:column;gap:18px}.press-wizard-picker-panel.press-cover-panel.press-backcover-panel .right-panel-body{padding-top:0}.press-backcover-sticky{position:sticky;top:0;z-index:2;display:flex;flex-direction:column;gap:18px;padding-top:16px;padding-bottom:14px;background:#faf9f6;border-bottom:1px solid rgba(0,0,0,.06)}.press-backcover-mockup .tile-editor{padding:0}.press-backcover-mockup .tile-editor-hint{margin:0 0 12px}.press-backcover-mockup .tile-editor-grid{max-width:232px;margin:0}.press-backcover-mockup .tile-editor-name{font-size:12px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.press-backcover-mockup .tile-editor-tag{font-size:9px;padding:2px 6px}.press-backcover-mockup .tile-editor-pencil{width:22px;height:22px}.press-backcover-mockup .tile-editor-pencil svg{width:12px;height:12px}.press-backcover-mockup .tile-editor-cell.is-selected{outline:2px solid var(--color-secondary, #46563d);outline-offset:1px}.press-bc-auto-img{display:flex;align-items:center;justify-content:center;font-family:Public Sans,system-ui,sans-serif;font-size:11px;font-weight:600;letter-spacing:.08em;color:#8a857b;background:repeating-linear-gradient(45deg,#efece6,#efece6 6px,#e6e2da 6px,#e6e2da 12px)}.press-cover-tile.press-bc-auto-tile.is-selected,.press-cover-tile.is-used{opacity:.85}.press-cover-tile.is-used{opacity:.4;cursor:default}.press-wizard-compose-form .press-wizard-tab{padding:12px 20px 14px}.press-wizard-compose-form .press-wizard-tabs-notes .press-wizard-tab{padding-top:10px;padding-bottom:12px}.press-wizard-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:0;margin:0 0 24px;border-bottom:1px solid #e8e0d6}.press-wizard-tab{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:16px 20px 20px;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;text-align:left;font-family:inherit;color:#8a7e70;transition:color .15s,border-color .15s,background .15s;margin-bottom:-1px}.press-wizard-tab:hover{color:#3d3429;background:#faf5ef}.press-wizard-tab.active{color:#3d3429;background:#faf5ef;border-bottom-color:#3d3429}.press-wizard-tab-label{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.press-wizard-tab-desc{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:13px;font-weight:400;color:#8a7e70;line-height:1.4}.press-wizard-eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#8a7e70;margin:0 0 12px}.press-wizard-display-title{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:500;font-size:88px;line-height:.95;color:#3d3429;margin:0 0 24px;letter-spacing:-.015em}.press-wizard-body--compose .press-wizard-display-title{font-size:60px}.press-wizard-lede{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:15px;line-height:1.6;color:#6b5f51;max-width:440px;margin:0}.press-wizard-section{margin-bottom:48px;padding-bottom:4px}.press-wizard-section-heading{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:500;font-size:32px;line-height:1.1;color:#3d3429;margin:0 0 20px;padding-bottom:16px;border-bottom:1px solid #e8e0d6;letter-spacing:-.005em}.press-wizard-caption{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:14px;line-height:1.5;color:#8a7e70;margin:0 0 18px;max-width:560px}.press-wizard-compose-aside{position:sticky;top:40px;display:flex;flex-direction:column;gap:24px;margin-top:47px}.press-wizard-rail-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:18px 24px;background:#1f1a14;border:1px solid #1f1a14;color:#fff;font-family:Newsreader,Georgia,serif;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;border-radius:2px;cursor:pointer;transition:background .15s,border-color .15s}.press-wizard-rail-btn:hover:not(:disabled){background:#000;border-color:#000}.press-wizard-rail-btn:disabled{background:#b8ad9e;border-color:#b8ad9e;cursor:not-allowed}.press-wizard-rail-meta{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:12px;line-height:1.5;color:#8a7e70;margin:0;text-align:center;padding:0 8px}.press-wizard-compose-form .press-wizard-field{margin-bottom:var(--compose-field-gap)}.press-wizard-compose-form .press-wizard-input,.press-wizard-compose-form .press-wizard-textarea{background:transparent;border:none;border-bottom:1px solid #d4ccc0;border-radius:0;padding:7px 2px;font-family:Newsreader,Georgia,serif;color:#3d3429;transition:border-color .15s}.press-wizard-compose-form .press-wizard-input:focus,.press-wizard-compose-form .press-wizard-textarea:focus{outline:none;border-bottom-color:#3d3429;box-shadow:none}.press-wizard-compose-form .press-wizard-input::placeholder,.press-wizard-compose-form .press-wizard-textarea::placeholder{color:#b8ad9e;font-style:italic}.press-wizard-compose-form .press-wizard-input-title{font-family:Cormorant Garamond,serif;font-style:italic;font-size:22px;font-weight:500}.press-wizard-compose-form .press-wizard-textarea{min-height:48px;resize:vertical}.press-wizard-compose-form .press-wizard-label{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#8a7e70}.press-wizard-cover{aspect-ratio:612 / 792;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;border-radius:2px;box-shadow:0 1px 3px #3d34290f,0 8px 24px #3d342914;overflow:hidden;transition:background-color .2s ease}.press-wizard-cover--editorial,.press-wizard-cover--photo{border:1px solid rgba(0,0,0,.06)}.press-wizard-cover__center{padding:0 20px}.press-wizard-cover__title{font-family:Newsreader,Georgia,serif;font-style:italic;font-weight:500;font-size:16px;line-height:1.15;margin:0;letter-spacing:-.005em}.press-wizard-cover__subtitle{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:9px;line-height:1.4;margin:7px 0 0;min-height:1em}.press-wizard-cover__subtitle--photo{margin-top:5px}.press-wizard-cover__author{font-family:Public Sans,system-ui,sans-serif;font-size:7px;font-weight:500;text-transform:uppercase;letter-spacing:.18em;margin:0}.press-wizard-cover__author-block{display:flex;flex-direction:column;align-items:center;gap:5px}.press-wizard-cover__rule{width:14px;height:1px;opacity:.15}.press-wizard-cover--photo{position:relative;justify-content:flex-start}.press-wizard-cover__photo{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-repeat:no-repeat}.press-wizard-cover__overlay{position:relative;z-index:1;width:100%;padding:18px 20px 12px;text-align:center}.press-wizard-cover--whole{container-type:size}.press-wizard-cover__photo-whole{flex:0 0 auto;width:100%;line-height:0}.press-wizard-cover__photo-whole img{display:block;width:100%;height:auto;max-height:calc(100cqh * 520 / 792);object-fit:contain}.press-wizard-cover__photo--empty{display:flex;align-items:center;justify-content:center;background:#00000004;font-family:Newsreader,Georgia,serif;font-style:italic;font-size:9px}.press-palette-row{display:flex;gap:8px;align-items:center}.press-palette-swatch{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .12s,box-shadow .12s;padding:0}.press-palette-swatch:hover{border-color:#00000040}.press-palette-swatch.is-selected{border-color:#1f1a14;box-shadow:0 0 0 2px #fff,0 0 0 4px #1f1a14}.press-palette-swatch-photo{background:conic-gradient(#ccc,#888,#bbb,#ccc 360deg);display:flex;align-items:center;justify-content:center;font-size:14px;color:#fff}.press-title-color-row{flex-wrap:wrap}.press-title-swatch{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;width:30px;height:30px;border-radius:6px;border:2px solid rgba(0,0,0,.12);cursor:pointer;transition:border-color .12s,box-shadow .12s;padding:0}.press-title-swatch:hover{border-color:#00000059}.press-title-swatch.is-selected{border-color:#1f1a14;box-shadow:0 0 0 2px #fff,0 0 0 4px #1f1a14}.press-title-swatch.is-recommended:after{content:"";position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #0006}.press-title-color-hint{display:block;margin-top:6px;font-family:Public Sans,system-ui,sans-serif;font-size:11px;color:#7a726a}.press-wizard-field-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.press-title-color-inline{display:inline-flex;align-items:center;gap:8px}.press-title-color-inline__label{font-family:Public Sans,system-ui,sans-serif;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8a827a}.press-title-color-inline .press-title-color-row{flex-wrap:nowrap;gap:6px}.press-title-color-inline .press-title-swatch{width:22px;height:22px;border-radius:5px}.press-title-color-inline .press-title-color-hint{display:inline;margin:0;font-size:10px}.press-wizard-btn-generate{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;background:#1f1a14;border:1px solid #1f1a14;color:#fff;border-radius:2px;font-family:Newsreader,Georgia,serif}.press-wizard-btn-generate:hover:not(:disabled){background:#000;border-color:#000}.press-wizard-btn-generate:disabled{background:#b8ad9e;border-color:#b8ad9e;color:#fff}.press-wizard-nav{padding:20px 48px}.cmp-recipe-thumb-collage{background:#e8e0d6!important;overflow:hidden;padding:0}.cmp-recipe-thumb-collage .menu-collage{width:100%;height:100%;border-radius:inherit}.cmp-recipe-thumb-initial{display:flex!important;align-items:center;justify-content:center;background:#f5f0ea!important;color:#8b7355;font-family:Cormorant Garamond,serif;font-weight:600;font-size:20px}.cmp-recipe-title .cmp-recipe-subtitle{display:block;font-size:12px;font-weight:400;color:#8a7e70;margin-top:2px;letter-spacing:.01em}.press-library{max-width:1280px;margin:0 auto;padding:56px 48px 120px}.press-library-header{display:flex;align-items:baseline;gap:24px;margin-bottom:56px;padding-bottom:20px;border-bottom:1px solid #e8e0d6}.press-library-title{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:500;font-size:56px;line-height:1;color:#3d3429;margin:0;letter-spacing:-.01em}.press-library-count{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#8a7e70;margin:0}.press-library-header{justify-content:space-between}.press-library-heading{display:flex;align-items:baseline;gap:24px;min-width:0}.press-library-view{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;align-self:center}.press-view-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:none;border:none;border-radius:4px;cursor:pointer;color:#b3a89a;transition:color .15s ease}.press-view-btn:hover{color:#6b6153}.press-view-btn.active{color:#3d3429}.press-view-btn svg{width:18px;height:18px}.press-book-list{display:flex;flex-direction:column}.press-book-list-row{display:flex;align-items:center;gap:16px;padding:12px 4px;border-bottom:1px solid rgba(61,52,41,.08);cursor:pointer;transition:background .12s ease}.press-book-list-row:hover{background:#3d342908}.press-book-list-thumb{flex:0 0 auto;width:46px}.press-book-cover.cover-photo-whole,.sc-cover.cover-photo-whole{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start}.cover-photo-whole__text{flex:0 0 auto;text-shadow:none}.cover-photo-whole__img{flex:1 1 auto;min-height:0;margin-bottom:8%;background-size:contain;background-position:center 25%;background-repeat:no-repeat}.sc-cover--photo.cover-photo-whole{padding:11% 0 0}.cover-photo-cropped{position:relative;overflow:hidden;isolation:isolate}.cover-photo-crop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background-size:cover;background-repeat:no-repeat;pointer-events:none}.sc-cover--photo.cover-photo-whole .sc-cover-inner{padding:0 11% 6%}.press-book-list-thumb .press-book-cover{box-shadow:0 1px 4px #00000014}.press-book-list-thumb .press-book-cover-inner{padding:5px}.press-book-list-thumb .press-book-cover-title{font-size:8px;line-height:1.15}.press-book-list-thumb .press-book-cover-author{display:none}.press-book-list-main{flex:1 1 auto;min-width:0}.press-book-list-title{font-family:Cormorant Garamond,serif;font-size:19px;font-weight:500;color:#3d3429;margin:0 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.press-book-list-sub{font-size:12px;color:#8a7e70;margin:0}.press-book-list-actions{flex:0 0 auto;display:flex;align-items:center;gap:6px}.press-book-list-actions .press-book-share{position:static;opacity:1;width:30px;height:30px;background:none;border:none;border-radius:0}.press-book-list-actions .press-book-share:hover{background:none}.press-book-overflow{position:relative}.press-book-overflow-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:none;border:none;border-radius:50%;cursor:pointer;color:#8a7e70;padding:0;transition:color .15s ease,background .15s ease}.press-book-overflow-btn:hover{color:#3d3429;background:#3d34290f}.press-book-overflow-menu{display:none;position:absolute;top:100%;right:0;margin-top:5px;width:max-content;min-width:140px;max-width:160px;background:var(--color-surface, #fff);border:1px solid rgba(61,52,41,.08);border-radius:8px;box-shadow:0 2px 8px #0000000f;padding:3px;z-index:60}.press-book-overflow-menu.open{display:block}.press-book-overflow-item{display:block;width:100%;text-align:left;background:none;border:none;border-radius:6px;padding:9px 14px;font-family:inherit;font-size:13.5px;color:#3d3429;cursor:pointer;white-space:nowrap}.press-book-overflow-item:hover{background:#3d34290d}.press-library-empty{max-width:520px;margin:80px auto 0;text-align:center}.press-library-eyebrow{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#8a7e70;margin:0 0 16px}.press-library-empty-title{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:500;font-size:52px;line-height:1.05;color:#3d3429;margin:0 0 20px;letter-spacing:-.01em}.press-library-empty-lede{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:16px;line-height:1.6;color:#6b5f51;margin:0 0 36px}.press-library-cta{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;background:#1f1a14;border:1px solid #1f1a14;color:#fff;border-radius:2px;font-family:Newsreader,Georgia,serif;cursor:pointer;transition:background .15s,border-color .15s}.press-library-cta:hover{background:#000;border-color:#000}@media (max-width: 1080px){.press-wizard-body{padding:40px 32px 120px}.press-wizard-body--compose{padding-top:30px}.press-wizard-compose{grid-template-columns:minmax(0,1fr);gap:36px}.press-wizard-compose-aside{position:static;max-width:280px;margin-top:0}.press-wizard-display-title{font-size:72px}}@media (max-width: 600px){.press-wizard-body{padding:24px 16px 80px}.press-wizard-body--compose{padding-top:18px}.press-wizard-heading{font-size:22px}.press-wizard-display-title{font-size:52px}.press-wizard-body--compose .press-wizard-display-title{font-size:44px}.press-wizard-compose-title-row{flex-direction:column-reverse;align-items:stretch}.press-wizard-compose-title-row .press-wizard-start-over{align-self:flex-end;margin-bottom:4px}.press-wizard-section-title{font-size:20px}.press-library{padding:16px 20px 80px}.press-library-title{font-size:40px;white-space:nowrap}.press-library-header{align-items:flex-start;gap:16px;margin-bottom:28px}.press-library-heading{flex-direction:column;align-items:flex-start;gap:4px}.press-library-empty-title{font-size:36px}}@media (max-width: 600px){.press-wizard-compose-form{--compose-section-gap: 39px;--compose-heading-gap: 16px;--compose-field-gap: 22px}.press-wizard-compose{gap:33px}.press-wizard-compose-form .press-wizard-section{padding-bottom:0}.press-wizard-compose-form .press-wizard-section:last-child{margin-bottom:0}.press-wizard-compose-form .press-wizard-field:last-child{margin-bottom:0}}.press-wizard-tabs-cover{display:flex;gap:0}.press-wizard-tabs-cover .press-wizard-tab{flex:1 1 50%;min-width:140px}.press-cover-selection{display:flex;align-items:center;gap:16px;padding:14px 16px;background:#faf8f5;border:1px solid rgba(0,0,0,.08);border-radius:3px;margin-top:6px}.press-cover-selection-thumb{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background-size:cover;background-position:center;background-color:#efece6;border-radius:2px;flex-shrink:0}.press-cover-selection-auto{background-color:transparent;border:1px dashed rgba(0,0,0,.25)}.press-cover-selection-auto-mark{font-size:24px;color:#8a857b;line-height:1}.press-cover-selection-meta{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.press-cover-selection-title{font-family:Newsreader,Georgia,serif;font-size:15px;font-weight:500;color:#1f1a14;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.press-cover-selection-sub{font-family:Public Sans,system-ui,sans-serif;font-size:11px;color:#8a857b;font-style:italic}.press-cover-selection-actions{display:flex;gap:8px;flex-shrink:0}.press-cover-selection-change{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(0,0,0,.18);background:#faf8f5;padding:6px 14px;border-radius:2px;font-family:Public Sans,system-ui,sans-serif;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:#1f1a14;cursor:pointer;transition:background .12s,color .12s}.press-cover-selection-change:hover{background:#1f1a14;color:#faf8f5}.press-cover-position-frame{position:relative;width:100%;max-width:220px;aspect-ratio:612 / 792;overflow:hidden;border:1px solid rgba(0,0,0,.12);border-radius:2px;background:#00000008;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.press-cover-position-frame.is-dragging{cursor:grabbing}.press-cover-position-img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.press-cover-position-hint{margin:6px 0 0;font-family:Public Sans,system-ui,sans-serif;font-size:11px;color:#1f1a1499}.press-cover-position-bar{display:flex;align-items:center;gap:6px;margin-top:8px}.press-cover-position-btn,.press-cover-position-reset{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(0,0,0,.18);background:#faf8f5;border-radius:2px;font-family:Public Sans,system-ui,sans-serif;color:#1f1a14;cursor:pointer}.press-cover-position-btn{width:30px;height:30px;font-size:16px;line-height:1}.press-cover-position-reset{margin-left:6px;padding:6px 12px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em}.press-cover-position-btn:hover,.press-cover-position-reset:hover{background:#1f1a14;color:#faf8f5}.press-cover-tray{margin-top:12px;padding:18px;background:#faf8f5;border:1px solid rgba(0,0,0,.06);border-radius:3px;display:flex;flex-direction:column;gap:22px}.press-cover-tray-section{display:flex;flex-direction:column;gap:10px}.press-cover-tray-section-header{display:flex;flex-direction:column;gap:2px}.press-cover-tray-section-header-inline{flex-direction:row;align-items:center;justify-content:space-between;gap:16px}.press-cover-tray-section-header h4{margin:0;font-family:Public Sans,system-ui,sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#6b665d}.press-cover-tray-section-header p{margin:0;font-family:Newsreader,Georgia,serif;font-size:12px;font-style:italic;color:#8a857b}.press-cover-refining-dot{display:inline-block;width:10px;height:10px;margin-left:10px;border-radius:50%;background:#b36825;vertical-align:middle;animation:press-cover-refining-pulse 1.1s ease-in-out infinite}@keyframes press-cover-refining-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.press-cover-refining-label{color:#b36825;font-style:normal;font-weight:600;font-family:Public Sans,system-ui,sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.press-cover-tray-section.is-refining{background:#f7f1e8;padding:12px 14px;margin:-12px -14px;border-radius:3px;transition:background .2s}.press-cover-tile-row.is-refining{opacity:.85;transition:opacity .2s}.press-cover-search{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-bottom:1px solid rgba(0,0,0,.18);background:transparent;padding:4px 0;font-family:Newsreader,Georgia,serif;font-size:13px;color:#1f1a14;width:220px;outline:none}.press-cover-search:focus{border-bottom-color:#1f1a14}.press-cover-tile-row{display:flex;gap:10px;flex-wrap:wrap}.press-cover-tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;max-height:320px;overflow-y:auto;padding:4px 2px}.press-cover-tile{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid transparent;background:none;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;font-family:inherit;border-radius:2px;width:110px;transition:border-color .12s}.press-cover-tile:hover{border-color:#0003}.press-cover-tile.is-selected{border-color:#1f1a14}.press-cover-tile-img{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1 / 1;background-size:cover;background-position:center;background-color:#efece6;border-radius:2px}.press-cover-tile-auto-img{background-color:transparent;border:1px dashed rgba(0,0,0,.25)}.press-cover-tile-auto-mark{font-size:28px;color:#8a857b;line-height:1}.press-cover-tile-upload-img{background-color:transparent;border:1px dashed rgba(0,0,0,.3);font-size:28px;font-weight:200;color:#1f1a14}.press-cover-tile-label{font-family:Public Sans,system-ui,sans-serif;font-size:10px;color:#6b665d;text-align:center;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.press-cover-tile.is-selected .press-cover-tile-label{color:#1f1a14}.press-cover-empty-line{margin:0;padding:12px;font-family:Newsreader,Georgia,serif;font-style:italic;color:#8a857b;font-size:12px;text-align:center}.press-wizard-picker-panel.press-cover-panel .right-panel-body{overflow-y:auto;padding:16px}.press-cover-panel .press-cover-tray{margin:0;padding:0;background:none;border:none;gap:24px}.press-cover-panel .press-cover-tile-grid{max-height:none;overflow:visible}.press-cover-panel .press-cover-search{width:100%;min-width:0}.press-cover-panel .press-cover-all-section{gap:20px}.press-cover-panel .press-cover-all-body{display:flex;flex-direction:column;gap:8px}.press-cover-panel .press-cover-all-heading{margin:0;font-family:Public Sans,system-ui,sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#6b665d}.press-cover-upload-cell{position:relative;display:inline-flex}.press-cover-upload-delete{position:absolute;top:3px;right:3px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:#1a16129e;color:#fff;font-size:11px;line-height:1;cursor:pointer;transition:background .12s}.press-cover-upload-delete:hover{background:#1a1612d9}.press-review-lede{margin:12px 0 0;max-width:640px;font-family:Newsreader,Georgia,serif;font-size:15px;font-style:italic;color:#6b665d;line-height:1.5}.press-review-body{max-width:880px;margin:0 auto;padding-top:8px}.press-review-card-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-top:20px}.press-review-bulk{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:10px 0 14px;padding:10px 14px;background:#f3efe7;border-radius:3px;font-family:Public Sans,system-ui,sans-serif;font-size:12px;color:#3a362e}.press-review-bulk-controls{display:flex;align-items:center;gap:8px}.press-review-bulk-label{font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#6b665d;margin-right:4px}.press-review-bulk-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(0,0,0,.15);background:#faf8f5;padding:5px 12px;border-radius:2px;font-family:inherit;font-size:12px;color:#1f1a14;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.press-review-bulk-btn:hover,.press-review-bulk-btn.is-active{background:#1f1a14;color:#faf8f5;border-color:#1f1a14}.press-review-bulk-hint{font-style:italic;color:#8a857b}.press-review-list{display:flex;flex-direction:column;gap:8px;margin-top:4px}.press-review-row{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:16px;padding:10px 14px;background:#faf8f5;border:1px solid rgba(0,0,0,.06);border-radius:3px;transition:background .12s,border-color .12s}.press-review-row:hover{background:#f3efe7;border-color:#0000001a}.press-review-row.is-pending{border-left:2px solid var(--color-secondary)}.press-review-row-extras{grid-column:1 / -1;margin-top:8px;padding-top:10px;border-top:1px solid rgba(0,0,0,.06)}.press-review-row-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.press-review-row-title{font-family:Newsreader,Georgia,serif;font-size:15px;font-weight:500;color:#1f1a14;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.press-review-row-status{font-family:Public Sans,system-ui,sans-serif;font-size:11px;color:#3a362e;font-weight:500}.press-review-row.is-pending .press-review-row-status{color:var(--color-secondary);font-style:italic;font-weight:400}.press-review-row-domain{font-family:Public Sans,system-ui,sans-serif;font-size:10px;color:#a09a8e;letter-spacing:.02em;white-space:nowrap}.press-review-section-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:4px 0;font-family:Public Sans,system-ui,sans-serif;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--color-secondary);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#46563d4d;transition:color .12s,text-decoration-color .12s}.press-review-section-toggle:hover{color:#1f1a14;text-decoration-color:#1f1a14}.press-review-summary{margin:4px 0 0;padding:12px 14px;background:#faf8f5;border:1px solid rgba(0,0,0,.06);border-radius:3px;font-family:Newsreader,Georgia,serif;font-size:13px;font-style:italic;color:#6b665d}.press-review-summary-pending{color:var(--color-secondary);font-weight:600;font-style:normal;margin-left:4px}.press-review-summary-done{color:#8a857b;font-style:normal;margin-left:4px}.press-review-tile-row{display:flex;flex-wrap:nowrap;gap:8px}.press-review-tile{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid transparent;background:none;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;font-family:inherit;border-radius:2px;transition:border-color .12s}.press-review-tile:hover{border-color:#0003}.press-review-tile.is-selected{border-color:#1f1a14}.press-review-tile-img{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background-size:cover;background-position:center;background-color:#efece6;border-radius:2px;font-size:22px;font-weight:200;color:#6b665d}.press-review-tile-skip .press-review-tile-img{border:1px dashed rgba(0,0,0,.18);background-color:transparent}.press-review-tile-add .press-review-tile-img{border:1px dashed rgba(0,0,0,.25);background-color:transparent;color:#1f1a14}.press-review-tile-label{font-family:Public Sans,system-ui,sans-serif;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:#6b665d}.press-review-tile.is-selected .press-review-tile-label{color:#1f1a14}.press-review-actions-status{flex:1;font-family:Public Sans,system-ui,sans-serif;font-size:11px;font-style:italic;color:#8a857b;text-align:right}.press-review-card-header{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:10px}.press-review-card-title{margin:0;font-family:Newsreader,Georgia,serif;font-size:18px;font-weight:500;color:#1f1a14;line-height:1.3}.press-review-card-domain{font-family:Public Sans,system-ui,sans-serif;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:#8a857b;white-space:nowrap}.press-review-photo-choice{display:flex;gap:20px;margin-bottom:8px}.press-review-radio,.press-review-check{display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-family:Public Sans,system-ui,sans-serif;font-size:13px;color:#3a362e;line-height:1.4}.press-review-radio input,.press-review-check input{margin:2px 0 0;cursor:pointer;accent-color:#8b7355}.press-review-check-master{font-size:14px}.press-review-notes-hint{margin:6px 0 0;font-family:Public Sans,system-ui,sans-serif;font-size:12px;font-style:italic;color:#8a857b}.press-review-notes-preview{margin:6px 0 0;font-family:Newsreader,Georgia,serif;font-size:13px;font-style:italic;color:#6b665d;line-height:1.4}.press-review-notes-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.press-review-notes-row{padding:10px 14px;background:#faf8f5;border:1px solid rgba(0,0,0,.06);border-radius:3px}.press-review-notes-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.press-review-notes-head .press-review-row-title{min-width:0}.press-review-hint{margin:8px 0 0 24px;font-family:Public Sans,system-ui,sans-serif;font-size:12px;color:#8a857b;line-height:1.4}.press-review-attestation{padding:18px 20px;background:#faf8f5;border-left:2px solid #1f1a14;margin-top:32px}.press-review-empty{padding:32px;text-align:center;font-family:Newsreader,Georgia,serif;font-style:italic;color:#6b665d}.press-review-actions{display:flex;gap:16px;justify-content:flex-end;align-items:center;margin-top:36px;padding-top:24px;border-top:1px solid rgba(0,0,0,.08)}.press-review-generate{display:inline-flex;align-items:center;gap:8px;text-decoration:none}.press-review-confirm-hint,.press-review-confirm-note{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:13px;line-height:1.4;color:#8a7e70;margin:12px 0 0 34px}.press-review-confirm-note{background:#f4efe7;border-radius:6px;padding:10px 14px;color:#6b5f51;max-width:460px}@media (max-width: 600px){.press-review-body .press-wizard-section{margin-bottom:52px;padding-bottom:0}.press-review-body .press-wizard-section-heading{margin-bottom:22px}.press-review-row{display:flex;flex-direction:column;align-items:stretch;gap:10px}.press-review-row-meta{order:1}.press-review-row-domain{order:2;white-space:normal}.press-review-tile-row{order:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.press-review-row-extras{order:4}.press-review-tile{width:100%}.press-review-tile-img{width:60px;height:60px}.press-review-row-title{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.press-review-confirm-hint,.press-review-confirm-note{margin-left:30px}}.press-studio-viewer{overflow-y:auto;max-height:calc(100vh - 160px);scrollbar-gutter:stable;padding:24px;background:#f1ede6;border-radius:3px}.press-studio-canvas{display:block;box-shadow:0 4px 20px #00000021;background:#fff;flex-shrink:0}.press-studio-viewer--single{display:flex;flex-direction:column;align-items:center;gap:18px}.press-spread{display:flex;justify-content:center;gap:2px;margin-bottom:18px}.press-spread .press-studio-canvas{box-shadow:0 4px 20px #0000001c}.press-spread-cover-row{justify-content:center}.press-spread-placeholder{background:transparent}.press-studio-error{max-width:640px;margin:0 auto;padding:24px;background:#faf8f5;border-left:2px solid #c03030;border-radius:3px}.sc-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200}body.sc-open{overflow:hidden}.sc-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#1e1a166b}.sc-sheet{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow-y:auto;background:#f6f3ec;border-radius:14px;padding:30px 28px 50px;box-shadow:0 24px 60px #0000004d;font-family:Public Sans,system-ui,sans-serif}@media (max-width: 540px){.sc-sheet{right:0;bottom:0;left:0;top:0;transform:none;width:100vw;height:100dvh;max-height:none;border-radius:0;padding-top:44px;display:flex;flex-direction:column;justify-content:center}}.sc-x{position:absolute;top:12px;right:14px;border:none;background:none;font-size:18px;line-height:1;color:#c4bbab;cursor:pointer;padding:4px 8px}.sc-x:hover{color:#8a7e70}.sc-existing{font-size:12px;color:#8a7e70;text-align:center;margin:0 0 16px;line-height:1.45}.sc-cover-wrap{display:flex;justify-content:center}.sc-cover{width:240px;aspect-ratio:2 / 3;border-radius:3px;overflow:hidden;flex:0 0 auto;background:#fff;box-shadow:0 12px 30px #0003}.sc-cover--editorial{background:var(--sc-cover-bg, #e7e1d3);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:11%}.sc-cover--photo{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:11%}.sc-cover-inner{width:100%}.sc-cover-title{font-family:Newsreader,Georgia,serif;font-size:21px;line-height:1.18;color:#2a2a28}.sc-cover-author{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#00000073;margin-top:12px}.sc-dedication{margin:42px auto 0;max-width:340px;font-family:Newsreader,Georgia,serif;font-style:italic;color:#4a4036}.sc-ded-line{display:flex;align-items:baseline;gap:7px}.sc-ded-prefix{font-size:19px;flex:0 0 auto;color:#3a342c}.sc-ded-input{flex:1 1 auto;min-width:0;border:none;background:transparent;outline:none;padding:0;font-family:inherit;font-style:italic;font-size:19px;color:#3a342c}.sc-ded-input::placeholder{color:#a3988a}.sc-note{display:block;width:100%;margin-top:14px;min-height:42px;resize:none;border:none;background:transparent;outline:none;padding:0;font-family:inherit;font-style:italic;font-size:15px;line-height:1.5;color:#6f6557}.sc-note::placeholder{color:#a3988a}.sc-counts{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:13px;color:#6f6557;margin:6px 0 0;text-align:center}.sc-scope{position:relative;border:none;margin:20px auto 0;padding:0;max-width:340px;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:10px 22px}.sc-scope-option{display:flex;align-items:center;gap:8px}.sc-scope-choice{display:flex;align-items:center;gap:10px;cursor:pointer;min-width:0}.sc-scope-option input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:15px;height:15px;margin:3px 0 0;flex:0 0 auto;border:1px solid #cfc6b6;border-radius:50%;background:transparent;cursor:pointer;display:grid;place-content:center;transition:border-color .12s ease}.sc-scope-option input[type=radio]:checked{border-color:#9b9081}.sc-scope-option input[type=radio]:checked:before{content:"";width:7px;height:7px;border-radius:50%;background:#5c5347}.sc-scope-option input[type=radio]:focus-visible{outline:2px solid #9b9081;outline-offset:2px}.sc-scope-info-wrap{position:relative;display:inline-flex;flex:0 0 auto}.sc-scope-info{width:15px;height:15px;padding:0;flex:0 0 auto;border:1px solid #cfc6b6;border-radius:50%;background:transparent;color:#9b9081;font-family:Newsreader,Georgia,serif;font-style:italic;font-size:10px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .12s ease,border-color .12s ease}.sc-scope-info:hover{color:#6f6557;border-color:#9b9081}.sc-scope-tip{position:absolute;right:-6px;left:auto;top:calc(100% + 9px);width:198px;max-width:none;background:#fdfbf6;color:#6f6557;border:1px solid rgba(90,74,52,.16);font-family:Public Sans,system-ui,sans-serif;font-size:12px;font-weight:400;line-height:1.5;padding:7px 9px;border-radius:5px;box-shadow:0 3px 10px #3a342c1a;opacity:0;visibility:hidden;pointer-events:none;z-index:2;transition:opacity .13s ease,visibility .13s ease}.sc-scope-tip-title{display:block;font-size:12px;font-weight:600;color:#3a342c;margin-bottom:2px}.sc-scope-tip-body{display:block}.sc-scope-tip:after{content:"";position:absolute;top:-5px;right:9px;left:auto;width:9px;height:9px;background:#fdfbf6;border-top:1px solid rgba(90,74,52,.16);border-left:1px solid rgba(90,74,52,.16);transform:rotate(45deg)}.sc-scope-info:hover+.sc-scope-tip,.sc-scope-info:focus-visible+.sc-scope-tip,.sc-scope-info[aria-expanded=true]+.sc-scope-tip{opacity:1;visibility:visible}.sc-scope-info:focus-visible{outline:2px solid #9b9081;outline-offset:2px}.sc-scope-label{font-family:Public Sans,system-ui,sans-serif;font-size:14px;font-weight:500;color:#5c5347;line-height:1.35}.sc-send{display:block;margin:17px auto 0;border:none;cursor:pointer;background:#2a2a28;color:#faf8f5;font-family:inherit;font-size:16px;font-weight:600;padding:12px 30px;border-radius:7px}.sc-send:disabled{opacity:.6;cursor:default}.sc-ready{text-align:center}.sc-ready-title{font-family:Newsreader,Georgia,serif;font-size:21px;margin:6px 0 4px;color:#2a2a28}.sc-ready-sub{font-size:13px;color:#8a7e70;margin:0}.sc-link{width:100%;margin:16px 0;padding:11px 12px;border:1px solid rgba(0,0,0,.12);border-radius:8px;font-size:13px;background:#fff;color:#2a2a28}.sc-ready-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.sc-ready-actions button{border:1px solid rgba(0,0,0,.15);background:#fff;border-radius:8px;padding:9px 18px;font-family:inherit;font-size:14px;cursor:pointer;color:#2a2a28}.sc-copy{background:#2a2a28;color:#faf8f5;border-color:#2a2a28}.help-view{display:none;padding:0 0 100px}.help-view.active{display:block;animation:fadeInUp .3s ease-out}.help-page{max-width:720px;margin:0 auto;padding:40px 24px 56px}.help-view--index .help-page{max-width:1040px}.help-header{margin-bottom:64px;text-align:center}.help-title{font-family:var(--font-display);font-size:var(--text-hero);font-weight:var(--font-weight-medium);letter-spacing:-.01em;color:var(--color-text);margin:0 0 22px}.help-search{position:relative;display:flex;align-items:center;max-width:480px;margin:0 auto}.help-search-icon{position:absolute;left:12px;color:var(--color-text-light);pointer-events:none}.help-search-input{width:100%;height:40px;padding:0 12px 0 36px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);font-size:var(--text-body);font-family:var(--font-body);color:var(--color-text);transition:border-color .15s,background .15s;box-sizing:border-box}.help-search-input::placeholder{color:var(--color-text-muted);opacity:.6}.help-search-input:focus{outline:none;border-color:var(--color-border-strong)}.help-category-list{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:10px}.help-category{display:flex;flex-direction:column;gap:3px;width:100%;text-align:left;padding:14px 16px;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);cursor:pointer;transition:border-color .15s,background .15s}.help-category:hover{border-color:var(--color-border-strong);background:var(--color-surface-alt)}.help-category-title{font-size:var(--text-title);font-weight:600;color:var(--color-text)}.help-index{display:grid;grid-template-columns:repeat(4,1fr);column-gap:40px;row-gap:52px;margin:0}.help-index-section{min-width:0;border-top:1px solid var(--color-border);padding-top:18px}.help-index-heading{font-family:var(--font-display);font-size:var(--text-title-3xl);font-weight:var(--font-weight-semibold);line-height:1.25;color:var(--color-text);margin:0 0 24px}.help-index-articles{list-style:none;margin:0;padding:0}.help-index-link{display:block;width:100%;text-align:left;padding:7px 0;border:none;background:none;font-family:var(--font-body);font-size:var(--text-reading-sm);line-height:1.4;color:var(--color-text);cursor:pointer;transition:color .15s}.help-index-articles li+li{margin-top:5px}.help-index-link:hover,.help-article-link:hover,.help-related-link:hover{color:var(--color-text);text-decoration:underline;text-underline-offset:3px}a.help-index-link{text-decoration:none}.help-contact-quiet{margin:64px 0 0;padding:36px 0 8px;border-top:1px solid var(--color-border);text-align:center;font-size:var(--text-body);color:var(--color-text)}.help-contact-lead{margin:0 0 6px;font-size:var(--text-reading-sm);font-weight:var(--font-weight-medium)}.help-contact-line{margin:0}.help-contact-link{border:none;background:none;padding:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--color-secondary);cursor:pointer;text-decoration:underline;text-underline-offset:3px}@media (max-width: 900px){.help-index{grid-template-columns:repeat(2,1fr);row-gap:44px}}@media (max-width: 560px){.help-index{grid-template-columns:1fr;row-gap:36px}}.help-article-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column}.help-article-list li+li{border-top:1px solid var(--color-border-light)}.help-article-link{display:block;width:100%;text-align:left;padding:14px 4px;border:none;background:none;font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text);cursor:pointer;transition:color .15s}.help-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:12px;padding:4px 0;border:none;background:none;font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:var(--font-weight-regular);color:var(--color-text-light);cursor:pointer;transition:color .15s}.help-back:hover{color:var(--color-text)}.help-back-arrow{font-size:var(--text-body)}.help-heading{font-family:var(--font-display);font-size:var(--text-display-lg);font-weight:var(--font-weight-medium);line-height:1.2;letter-spacing:-.01em;color:var(--color-text);margin:0 0 24px}.help-body-text{font-size:var(--text-body);line-height:1.5;color:var(--color-text-light);margin:0 0 12px}.help-empty{font-size:var(--text-body);color:var(--color-text-light);margin:8px 0}.help-contact{font-size:var(--text-reading);margin:4px 0}.help-contact a{color:var(--color-secondary);font-weight:600}.help-placeholder-note{margin:0 0 24px;font-size:var(--text-body-sm);font-style:italic;color:var(--color-text-muted);line-height:1.4}.help-article-body{font-size:var(--text-reading);line-height:1.7;color:var(--color-text)}.help-article-body h1,.help-article-body h2,.help-article-body h3{font-family:var(--font-display);font-weight:var(--font-weight-medium);line-height:1.25;color:var(--color-text);margin:32px 0 12px}.help-article-body h2{font-size:var(--text-title-2xl)}.help-article-body h3{font-size:var(--text-title)}.help-article-body p{margin:0 0 18px}.help-article-body ul,.help-article-body ol{margin:0 0 18px;padding-left:24px}.help-article-body li{margin-bottom:8px}.help-article-body a{color:var(--color-secondary)}.help-article-body .help-inline-link{display:inline;margin:0;padding:0;border:none;background:none;font:inherit;color:var(--color-secondary);text-align:inherit;text-decoration:underline;cursor:pointer}.help-view--illustrated .help-page{max-width:748px;padding-bottom:40px}.help-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;margin-bottom:8px;font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light)}.help-breadcrumb-link{white-space:nowrap;text-align:left;padding:4px 0;border:none;background:none;font:inherit;color:inherit;cursor:pointer;transition:color .15s}.help-breadcrumb-link:hover{color:var(--color-text)}.help-article--illustrated .help-heading{margin-bottom:10px;font-size:var(--text-hero);font-weight:var(--font-weight-regular)}.help-summary{margin:0;font-size:var(--text-reading-sm);line-height:1.6;color:var(--color-text-muted)}.help-article--illustrated .help-article-body{font-size:var(--text-reading-sm);font-weight:var(--font-weight-regular);line-height:1.6}.help-article--illustrated .help-article-body h2{margin:40px 0 10px;font-size:var(--text-title-3xl);font-weight:var(--font-weight-semibold);line-height:1.25}.help-article--illustrated .help-article-body p,.help-article-body .md-figure{margin:0 0 14px}.help-article-body .md-figure img{display:block;height:auto;border:1px solid var(--color-border)}.help-article-body .md-figure:not(.help-article--editorial .md-figure) img{width:100%}.help-article-body .md-figure figcaption{margin-bottom:6px;font-family:var(--font-body);font-size:var(--text-tag);line-height:1.4;color:var(--color-text-light)}.help-article-body>.md-figure[data-picture$=-phone] img,.help-article-body>.md-section--beside>.md-figure[data-picture$=-phone] img{width:auto;max-width:min(100%,390px);max-height:calc(100vh - var(--header-height, 96px) - 120px);max-height:calc(100svh - var(--header-height, 96px) - 120px);margin:0 auto}.help-view--editorial{--help-color-text: #222223;--help-color-lead: #6b6e71;--help-color-quiet: var(--color-text-light);--help-color-link: var(--color-secondary);--help-color-danger: var(--color-danger);--help-color-card: #f5f4ef;--help-color-card-hover: #efeee8;--help-color-card-edge: #ebeae4;--help-color-phone: #1a1c1a;--help-space-heading: 12px;--help-space-block: 12px;--help-space-section: 40px;--help-space-lead: 32px;--help-space-action: 32px;--help-space-picture: 24px}.help-view--editorial .help-page{max-width:1048px;padding-top:34px}.help-view--editorial.help-view--text-only .help-page{max-width:768px}.help-view--editorial .help-breadcrumb,.help-view--editorial .help-search-toggle{font-size:var(--text-reading-sm)}.help-view--editorial .help-toprow .help-search-toggle{align-self:flex-start}.help-article--editorial .help-heading{margin:14px 0 0;font-size:calc(var(--text-hero) * 1.4375);font-weight:var(--font-weight-regular);line-height:1.15}.help-article--editorial .help-article-body{font-size:var(--text-reading);color:var(--help-color-text)}.help-article--editorial .help-article-body p{margin:0;line-height:1.53}.help-article--editorial .help-article-body p+p{margin-top:var(--help-space-block)}.help-article--editorial .help-article-body>p:first-child{font-size:calc(var(--text-reading) * 1.206);font-weight:350;line-height:1.42;color:var(--help-color-lead)}.help-article--editorial .help-article-body h2{margin:0 0 14px;font-size:calc(var(--text-title-3xl) * 1.2545);line-height:1.2}.help-article--editorial .help-article-body h3{margin:24px 0 6px;font-family:var(--font-body);font-size:var(--text-reading);font-weight:var(--font-weight-semibold);line-height:1.53;color:var(--help-color-text)}.help-article--editorial .help-article-body .md-figure img{max-width:100%;border:none}.help-article--editorial .help-article-body .md-figure figcaption{font-size:var(--text-tag)}.help-article--editorial .help-article-body .md-figure--smaller img{width:80%}.help-article--editorial .help-article-body>.md-section--beside>.md-figure[data-picture$=-phone] img,.help-article--editorial .help-article-body>.md-section--beside>.md-figure-row>.md-figure[data-picture$=-phone] img,.help-article--editorial .help-article-body>.md-figure-row>.md-figure[data-picture$=-phone] img,.help-article--editorial .help-article-body>.md-figure[data-picture$=-phone] img{box-sizing:border-box;width:236px;max-width:none;height:330px;max-height:none;padding-top:16px;border:8px solid var(--help-color-phone);border-bottom:none;border-radius:34px 34px 0 0;background:#fff;object-fit:cover;object-position:top}.help-article--editorial .help-article-body>.md-section--beside>.md-figure[data-picture$=-phone]:after,.help-article--editorial .help-article-body>.md-section--beside>.md-figure-row>.md-figure[data-picture$=-phone]:after,.help-article--editorial .help-article-body>.md-figure-row>.md-figure[data-picture$=-phone]:after,.help-article--editorial .help-article-body>.md-figure[data-picture$=-phone]:after{content:"";width:70px;height:16px;border-radius:0 0 10px 10px;background:var(--help-color-phone)}.help-article--editorial .help-article-body>h2{margin:var(--help-space-section) 0 var(--help-space-heading)}.help-article--editorial .help-article-body>p:first-child+h2,.help-article--editorial .help-article-body>p:first-child+p,.help-article--editorial .help-article-body>p:first-child+ul,.help-article--editorial .help-article-body>p:first-child+ol,.help-article--editorial .help-article-body>p:first-child+.md-figure,.help-article--editorial .help-article-body>p:first-child+.md-figure-row{margin-top:var(--help-space-lead)}.help-article--editorial .help-article-body>ul,.help-article--editorial .help-article-body>ol{margin:var(--help-space-block) 0 0}.help-article--editorial .help-article-body>h2+ul,.help-article--editorial .help-article-body>h2+ol{margin-top:0}.help-article--editorial .help-article-body>ul>li:last-child,.help-article--editorial .help-article-body>ol>li:last-child{margin-bottom:0}.help-article--editorial .help-article-body>ul+p,.help-article--editorial .help-article-body>ol+p{margin-top:var(--help-space-block)}.help-article-body>.md-section--beside{display:flex;align-items:flex-start;gap:52px;margin-top:30px}.help-article--editorial .help-article-body>p:first-child+.md-section--beside{margin-top:48px}.help-article--editorial .help-article-body>.md-section--beside:first-child{margin-top:0}.help-article--editorial .help-article-body>.md-section--beside:first-child .md-section-text>h3:first-child{margin-top:0}.help-article-body>.md-section--beside .md-section-text{flex:1 1 0;min-width:0}.help-article-body>.md-section--beside>.md-figure{position:relative;display:flex;flex-direction:column;align-items:center;flex:none;width:440px;min-width:0;margin:0}.help-article--editorial .help-article-body>.md-section--beside>.md-figure[data-picture$=-phone]:after{margin:-322px 0 306px}.help-article--editorial .help-article-body>.md-section--beside>.md-figure-row{display:flex;align-items:flex-end;justify-content:center;gap:16px;flex:none;width:440px;margin:0}.help-article--editorial .help-article-body>.md-section--beside>.md-figure-row>.md-figure{display:flex;flex-direction:column;align-items:center;flex:none;margin:0}.help-article--editorial .help-article-body>.md-section--beside>.md-figure-row>.md-figure[data-picture$=-phone] img{order:2;width:212px;height:auto}.help-article--editorial .help-article-body>.md-section--beside>.md-figure-row>.md-figure[data-picture$=-phone]:after{order:1;position:relative;z-index:1;margin:8px 0 -24px}.help-article--editorial .help-article-body>.md-figure{margin:var(--help-space-picture) 0 0}.help-article--editorial .help-article-body>.md-figure[data-picture$=-phone]{display:flex;flex-direction:column;align-items:center}.help-article--editorial .help-article-body>.md-figure[data-picture$=-phone] img{order:2;height:auto;margin:0}.help-article--editorial .help-article-body>.md-figure[data-picture$=-phone]:after{order:1;position:relative;z-index:1;margin:0 0 -24px}.help-article--editorial .help-article-body>.md-figure+p{margin-top:var(--help-space-block)}.help-article--editorial .help-article-body>.md-figure.md-figure--phone-only{display:none}.help-article--editorial .help-article-body>.md-figure-row{display:flex;align-items:stretch;gap:24px;margin:var(--help-space-picture) 0 0}.help-article--editorial .help-article-body>.md-figure-row>.md-figure{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;flex:0 1 auto;min-width:0;max-width:100%;margin:0}.help-article--editorial .help-article-body>.md-figure-row>.md-figure>figcaption{order:3;margin:8px 0 0}.help-article--editorial .help-article-body>.md-figure-row>.md-figure[data-picture$=-phone]{flex:none}.help-article--editorial .help-article-body>.md-figure-row>.md-figure[data-picture$=-phone] img{order:2;height:auto;margin-top:0}.help-article--editorial .help-article-body>.md-figure-row>.md-figure[data-picture$=-phone]:after{order:1;position:relative;z-index:1;align-self:center;margin:0 0 -24px}.help-article--editorial .help-article-body>.md-figure-row+p{margin-top:var(--help-space-block)}.help-article--editorial .help-action-card{box-sizing:border-box;display:flex;align-items:center;gap:20px;width:100%;min-height:68px;margin-top:var(--help-space-lead);padding:0 24px;border:1px solid var(--help-color-card-edge);border-radius:8px;background:var(--help-color-card);color:var(--help-color-link);font-family:var(--font-body);text-align:left;cursor:pointer;transition:background-color .15s}@media (hover: hover){.help-article--editorial .help-action-card:hover{background:var(--help-color-card-hover)}}.help-article--editorial .help-action-card-icon{flex:none;width:28px;height:28px}.help-article--editorial .help-action-card-arrow{flex:none;width:20px;height:20px;margin-left:auto}.help-article--editorial .help-action-card-label{min-width:0;font-family:var(--font-body);font-size:var(--text-reading);font-weight:var(--font-weight-regular);line-height:1.53;color:var(--help-color-link)}.help-article--editorial .help-action-row{display:flex;flex-direction:column;align-items:flex-start;gap:var(--help-space-block);margin-top:var(--help-space-action)}.help-article--editorial .help-action-button{min-height:48px;padding:0 28px;border:none;border-radius:8px;background:var(--help-color-danger);color:#fff;font-family:var(--font-body);font-size:var(--text-reading);font-weight:var(--font-weight-semibold);cursor:pointer}.help-article--editorial .help-action-button:disabled{opacity:.6;cursor:default}.help-article--editorial .help-action-note,.help-article--editorial .help-action-error{margin:0;font-size:var(--text-reading);line-height:1.53;color:var(--help-color-quiet)}.help-article--editorial .help-action-error{color:var(--help-color-danger)}.help-article--editorial .help-related{margin-top:36px;padding-top:22px}.help-article--editorial .help-related-heading{font-size:var(--text-title-3xl)}@media (max-width: 760px){.help-article--editorial .help-heading{font-size:calc(var(--text-hero) * 1.0625)}.help-article--editorial .help-article-body>p:first-child{font-size:calc(var(--text-reading) * 1.06);line-height:1.43}.help-article--editorial .help-article-body h2{font-size:var(--text-title-3xl)}.help-article-body>.md-section--beside{display:block;margin-top:32px}.help-article-body>.md-section--beside>.md-figure{width:auto;max-width:332px;margin:16px auto 0}.help-article--editorial .help-article-body>.md-section--beside>.md-figure[data-picture$=-screen]{display:none}.help-article--editorial .help-article-body>.md-figure-row{flex-direction:column;align-items:flex-start}.help-article--editorial .help-article-body>.md-section--beside>.md-figure-row{flex-direction:column;align-items:center;gap:24px;width:100%;margin-top:16px}.help-article--editorial .help-action-card{gap:16px;padding:0 20px}.help-article--editorial .help-article-body>.md-figure.md-figure--computer-only{display:none}.help-article--editorial .help-article-body>.md-figure.md-figure--phone-only{display:flex}}@media (max-width: 480px){.help-article--editorial .help-action-row{align-items:stretch}}.help-article-body .md-figure-row{display:flex;align-items:flex-start;gap:20px;margin:0 0 14px}.help-article-body .md-figure-row .md-figure{flex:1 1 0;margin:0;min-width:0}@media (max-width: 560px){.help-article-body .md-figure-row{flex-direction:column}}.help-related{margin-top:40px;padding-top:24px;border-top:1px solid var(--color-border)}.help-related-heading{margin:0 0 10px;font-family:var(--font-display);font-size:var(--text-title-xl);font-weight:var(--font-weight-semibold);line-height:1.25;color:var(--color-text)}.help-related-list{list-style:none;margin:0;padding:0}.help-related-link{display:block;padding:5px 0;border:none;background:none;font-family:var(--font-body);font-size:var(--text-body);line-height:1.4;color:var(--color-secondary);text-align:left;cursor:pointer;transition:color .15s}.help-view--reading .help-header{display:none}.help-view--reading.help-view--search-open .help-header{display:block;margin-bottom:16px}.help-view--reading .help-title{display:none}.help-view--reading .help-search{max-width:none}.help-toprow{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.help-toprow .help-back,.help-toprow .help-breadcrumb{min-width:0;margin-bottom:0}.help-search-toggle{display:inline-flex;align-items:center;gap:6px;flex:none;padding:4px 0;border:none;background:none;font-family:var(--font-body);font-size:var(--text-tag);color:var(--color-text-light);white-space:nowrap;cursor:pointer;transition:color .15s}.help-search-toggle:hover{color:var(--color-text)}.help-view--search-open .help-search-toggle{visibility:hidden}.explore-guidance{position:fixed;z-index:60;box-sizing:border-box;display:flex;align-items:flex-start;gap:12px;padding:16px 16px 16px 18px;background:var(--color-bg);color:var(--color-text);border:1px solid color-mix(in srgb,var(--color-text) 10%,transparent);border-radius:14px;box-shadow:0 10px 34px color-mix(in srgb,var(--color-text) 16%,transparent);font-family:var(--font-body)}.explore-guidance.hidden{display:none}.explore-guidance:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:3px;background:var(--color-secondary)}.explore-guidance-body{flex:1 1 auto;min-width:0;padding-top:34px;transition:opacity .14s ease}.explore-guidance-title{font-family:var(--font-display);font-weight:600;font-size:17px;line-height:1.25;margin:0 0 4px;color:var(--color-text)}.explore-guidance--title-beside .explore-guidance-body{padding-top:0}.explore-guidance--title-beside .explore-guidance-title{padding-right:var(--explore-guidance-controls-w, 0px);margin-top:5px}.explore-guidance-text{font-size:15px;line-height:1.45;margin:0;font-weight:500;color:color-mix(in srgb,var(--color-text) 65%,var(--color-text-muted));white-space:pre-line}.explore-guidance-dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:30px;height:30px;border:none;border-radius:8px;background:none;cursor:pointer;color:var(--color-text-muted);font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background-color .12s ease,color .12s ease}.explore-guidance-dismiss:hover{background:color-mix(in srgb,var(--color-text) 7%,transparent);color:var(--color-text)}.explore-guidance-dismiss:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}@keyframes explore-guidance-in-bottom{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@keyframes explore-guidance-in-top{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.explore-guidance{animation:none!important}}@media (max-width: 600px){.explore-guidance{left:50%;transform:translate(-50%);bottom:calc(76px + env(safe-area-inset-bottom));width:calc(100vw - 24px);padding:13px 13px 13px 16px;animation:explore-guidance-in-bottom .2s ease both}}@media (min-width: 601px){.explore-guidance{top:calc(var(--header-height, 96px) + var(--context-banner-height, 0px) + 76px);right:18px;width:min(calc(100vw - 40px),344px);animation:explore-guidance-in-top .2s ease both}.explore-guidance:after{content:"";position:absolute;top:-6px;right:90px;width:11px;height:11px;background:var(--color-bg);border-left:1px solid color-mix(in srgb,var(--color-text) 10%,transparent);border-top:1px solid color-mix(in srgb,var(--color-text) 10%,transparent);transform:rotate(45deg)}}.explore-guidance.explore-guidance--tour{z-index:9200;animation:explore-guidance-fade .16s ease both}.explore-guidance.explore-guidance--tour.explore-guidance--reveal,.explore-guidance.explore-guidance--tour.explore-guidance--sheet.explore-guidance--reveal{animation:explore-guidance-fade .14s ease both}@keyframes explore-guidance-fade{0%{opacity:0}to{opacity:1}}.explore-guidance.explore-guidance--tour:after{content:"";position:absolute;width:11px;height:11px;background:var(--color-bg);border-left:1px solid color-mix(in srgb,var(--color-text) 10%,transparent);border-top:1px solid color-mix(in srgb,var(--color-text) 10%,transparent);display:none}.explore-guidance--tour[data-caret=up]:after{display:block;top:-6px;left:var(--caret-x, 50%);transform:translate(-50%) rotate(45deg)}.explore-guidance--tour[data-caret=down]:after{display:block;bottom:-6px;left:var(--caret-x, 50%);transform:translate(-50%) rotate(225deg)}.explore-guidance--tour[data-caret=left]:after{display:block;left:-6px;top:var(--caret-y, 50%);transform:translateY(-50%) rotate(-45deg)}.explore-guidance--tour[data-caret=right]:after{display:block;right:-6px;top:var(--caret-y, 50%);transform:translateY(-50%) rotate(135deg)}.explore-guidance--tour[data-caret=none]:after{display:none}@media (prefers-reduced-motion: reduce){.explore-guidance.explore-guidance--tour,.explore-guidance.explore-guidance--tour.explore-guidance--reveal,.explore-guidance.explore-guidance--tour.explore-guidance--sheet.explore-guidance--reveal{transition:none;animation:none}}.explore-guidance.explore-guidance--tour.explore-guidance--sheet{border-radius:16px 16px 0 0;border-left:none;border-right:none;border-bottom:none;border-top:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);box-shadow:0 -8px 28px color-mix(in srgb,var(--color-text) 16%,transparent);padding:16px 16px 12px;max-height:78vh;animation:none}.explore-guidance--sheet:before{display:none}.explore-guidance--sheet .explore-guidance-body{overflow-y:auto;max-height:calc(78vh - 28px);padding-bottom:6px}@media (prefers-reduced-motion: reduce){.explore-guidance.explore-guidance--tour.explore-guidance--sheet{animation:none}}.explore-guidance-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.explore-guidance-back,.explore-guidance-next{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;border-radius:8px;transition:background-color .12s ease,color .12s ease}.explore-guidance-back{background:none;border:none;color:var(--color-text-muted);padding:8px 4px}.explore-guidance-back:disabled{opacity:.4;cursor:default}.explore-guidance-back:not(:disabled):hover{color:var(--color-text)}.explore-guidance-next{background:var(--color-secondary);border:1px solid var(--color-secondary);color:#fff;padding:8px 16px}.explore-guidance-next:hover{background:color-mix(in srgb,var(--color-secondary) 88%,black 12%)}.explore-guidance-back:focus-visible,.explore-guidance-next:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}.explore-guidance-back,.explore-guidance-next,.explore-guidance-secondary,.explore-guidance-minimize,.explore-guidance-dismiss{position:relative}.explore-guidance-back:after,.explore-guidance-next:after,.explore-guidance-secondary:after{content:"";position:absolute;left:50%;top:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}.explore-guidance-minimize:after,.explore-guidance-dismiss:after{content:"";position:absolute;top:-7px;bottom:-7px}.explore-guidance--tap-hold .explore-guidance-nav button{pointer-events:none}.explore-guidance-minimize:after{left:calc(-1 * var(--explore-guidance-minimize-reach, 14px));right:0}.explore-guidance-dismiss:after{left:0;right:-14px}.explore-guidance:not(.explore-guidance--title-beside) .explore-guidance-minimize:after,.explore-guidance:not(.explore-guidance--title-beside) .explore-guidance-dismiss:after{top:-14px;bottom:0}.explore-tour-highlight{border-radius:10px;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-secondary) 55%,transparent);animation:explore-tour-pulse 1.6s ease-in-out infinite}.explore-tour-ring-overlay{position:fixed;z-index:9150;pointer-events:none}@keyframes explore-tour-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-secondary) 50%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--color-secondary) 18%,transparent)}}@media (max-width: 767px){.explore-tour-highlight{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--color-secondary);animation:explore-tour-pulse-phone 1.6s ease-in-out infinite}}@keyframes explore-tour-pulse-phone{0%,to{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--color-secondary),0 0 0 4px color-mix(in srgb,var(--color-secondary) 30%,transparent)}50%{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--color-secondary),0 0 0 11px color-mix(in srgb,var(--color-secondary) 22%,transparent)}}@media (prefers-reduced-motion: reduce){.explore-tour-highlight{animation:none}}.explore-guidance-actions{display:inline-flex;align-items:center;gap:8px}.explore-guidance-title-line{display:block;white-space:nowrap}.explore-guidance-secondary{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;border-radius:8px;padding:8px 12px;background:none;border:1px solid color-mix(in srgb,var(--color-text) 22%,transparent);color:var(--color-text);transition:background-color .12s ease}.explore-guidance-secondary:hover{background:color-mix(in srgb,var(--color-text) 6%,transparent)}.explore-guidance-secondary:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}.explore-guidance--navonly{padding:8px 8px 8px 14px}.explore-guidance--navonly .explore-guidance-nav{margin-top:0}.explore-guidance--navonly .explore-guidance-body{display:flex;align-items:center}.modal.explore-welcome{background:color-mix(in srgb,var(--color-text) 16%,transparent);z-index:9300}.explore-welcome-box{position:relative;max-width:588px;padding:8px;background:var(--color-bg);box-shadow:0 10px 34px color-mix(in srgb,var(--color-text) 16%,transparent)}.explore-welcome-box:focus,.explore-welcome-box:focus-visible,.explore-welcome-body:focus,.explore-welcome-body:focus-visible{outline:none}.modal-box.explore-welcome-box{display:flex;flex-direction:column;overflow:hidden}.explore-welcome-body{padding:40px 40px 0;flex:1 1 auto;min-height:0;overflow-y:auto}.explore-welcome-title{font-family:var(--font-display);font-weight:600;font-size:2.2rem;line-height:1.1;margin:0 0 32px;color:var(--color-text)}.explore-welcome-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 16px;justify-content:space-between;margin:0 0 32px}.explore-welcome-head .explore-welcome-title{margin:0}.explore-welcome-film{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--color-secondary);cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.explore-welcome-film:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}.modal.explore-film{--film-pt: max(20px, env(safe-area-inset-top));--film-pb: max(20px, env(safe-area-inset-bottom));--film-pl: max(20px, env(safe-area-inset-left));--film-pr: max(20px, env(safe-area-inset-right));--film-close-room: 48px;--film-w: 1934;--film-h: 2252;background:color-mix(in srgb,var(--color-text) 82%,transparent);z-index:9400;padding:var(--film-pt) var(--film-pr) var(--film-pb) var(--film-pl)}.modal.explore-film.explore-film--phone{--film-w: 9;--film-h: 16}.explore-film-frame{position:relative;aspect-ratio:var(--film-w) / var(--film-h);margin-top:var(--film-close-room);height:min(calc(100vh - var(--film-pt) - var(--film-pb) - var(--film-close-room)),calc((100vw - var(--film-pl) - var(--film-pr)) * var(--film-h) / var(--film-w)))}@supports (height: 100dvh){.explore-film-frame{height:min(calc(100dvh - var(--film-pt) - var(--film-pb) - var(--film-close-room)),calc((100vw - var(--film-pl) - var(--film-pr)) * var(--film-h) / var(--film-w)))}}.explore-film-video{display:block;width:100%;height:100%;object-fit:contain;background:#000;border-radius:6px}.explore-film-close{position:absolute;top:calc(-1 * var(--film-close-room) + 4px);right:0;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:50%;color:#fff;font-size:1.25rem;line-height:1;cursor:pointer}.explore-film-close:hover{background:#ffffff1f}.explore-film-close:focus-visible{outline:2px solid #fff;outline-offset:2px}.explore-welcome-block{margin:0 0 40px}.explore-welcome-block:last-of-type{margin-bottom:0}.explore-welcome-lead{font-family:var(--font-display);font-size:1.3125rem;line-height:1.3;margin:0 0 6px;font-weight:700;color:var(--color-text)}.explore-welcome-support{font-family:var(--font-body);font-size:1rem;line-height:1.48;margin:0;font-weight:500;color:color-mix(in srgb,var(--color-text) 60%,transparent)}.explore-welcome-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 18px;flex:none;padding:40px 40px 34px}.explore-welcome-alone{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:10px 4px;font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:color .12s ease}.explore-welcome-alone:hover{color:var(--color-text)}.explore-welcome-alone:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}.explore-welcome-start{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:12px 22px;font-family:var(--font-body);font-size:1rem;font-weight:600;color:#fff;background:var(--color-secondary);border:1px solid var(--color-secondary);border-radius:10px;cursor:pointer;transition:background-color .12s ease}.explore-welcome-start:hover{background:color-mix(in srgb,var(--color-secondary) 88%,black 12%)}.explore-welcome-start:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}@media (max-width: 640px){.explore-welcome-box{max-height:calc(100vh - 40px)}.explore-welcome-body{padding:26px 22px 0}.explore-welcome-actions{padding:34px 22px 24px}.explore-welcome-title{font-size:calc(1.6rem - 1pt)}.explore-welcome-lead{font-size:calc(1.25rem - 1pt)}.explore-welcome-support,.explore-welcome-alone,.explore-welcome-start{font-size:calc(1rem - 1pt)}.explore-welcome-film{font-size:.8125rem}.explore-welcome-block{margin-bottom:34px}}.explore-guidance-controls{position:absolute;top:16px;right:16px;display:inline-flex;align-items:center;gap:8px}.explore-guidance-minimize{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:30px;height:30px;border:none;border-radius:8px;background:none;cursor:pointer;color:var(--color-text-muted);font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background-color .12s ease,color .12s ease}.explore-guidance-minimize:hover{background:color-mix(in srgb,var(--color-text) 7%,transparent);color:var(--color-text)}.explore-guidance-minimize:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}.explore-guidance.explore-guidance--minimized{display:none!important}.explore-guidance.explore-guidance--deciding{visibility:hidden!important}.explore-shared-stage.explore-shared-stage--preload{visibility:hidden;pointer-events:none}.explore-minimized-pill{position:fixed;z-index:9100;right:22px;display:inline-flex;align-items:center;gap:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:999px;background:var(--color-secondary);color:#faf7f0;font-family:var(--font-body);min-height:42px;padding:0 22px;cursor:pointer;box-shadow:0 8px 24px color-mix(in srgb,var(--color-text) 22%,transparent);transition:background-color .12s ease,box-shadow .12s ease;max-width:min(calc(100vw - 44px),380px)}.explore-minimized-pill:hover{background:color-mix(in srgb,var(--color-secondary) 90%,black 10%)}.explore-minimized-pill:focus-visible{outline:2px solid var(--color-secondary);outline-offset:3px}.explore-minimized-pill-heading{font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 600px){.explore-minimized-pill{right:16px;max-width:calc(100vw - 32px)}}.explore-shared-stage{position:fixed;z-index:9050;left:0;right:0;background:var(--color-bg)}.explore-shared-frame{display:block;border:0;background:var(--color-bg)}.explore-shared-stage--unavailable .explore-shared-frame,.explore-shared-stage--waiting .explore-shared-frame{visibility:hidden}.explore-shared-unavailable{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;margin:0;padding:0 16px;text-align:center;font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text-muted)}@media (max-width: 899px){html body.explore-keeps-tabs .bottom-nav{display:flex!important}}body.explore-keeps-tabs .right-panel-overlay,body.explore-keeps-tabs .right-panel,body.explore-keeps-tabs .book-reader,body.explore-keeps-tabs .menu-detail--event.is-presenting .event-detail-full,body.explore-keeps-tabs .ingredients-drawer,body.explore-keeps-tabs .ingredients-drawer-scrim,body.explore-keeps-tabs .grocery-linked-overlay,body.explore-keeps-tabs .reduce-dayof-overlay,body.explore-keeps-tabs .save-chooser-overlay,body.explore-keeps-tabs .delete-scrim{bottom:var(--explore-tabs-h, 0px)}body.explore-keeps-tabs .ingredients-drawer{max-height:calc(85vh - var(--explore-tabs-h, 0px))}body.explore-keeps-tabs [data-keep-prompt]{bottom:var(--explore-tabs-h, 0px)!important}@media (max-width: 899px){body.explore-keeps-tabs .menu-detail--event.is-presenting .event-detail-full{padding-bottom:24px}body.explore-keeps-tabs .menu-detail--event.is-presenting[data-event-tab=plan] .event-detail-full{padding-bottom:20px}}@media screen and (max-width: 720px),screen and (max-width: 899px) and (max-height: 540px){body.explore-keeps-tabs .menu-detail--event.is-presenting[data-event-tab=plan] .event-detail-full:has(.prep-schedule--timeline){padding-bottom:0}}@media (max-width: 767px){body.explore-keeps-tabs .delete-dialog{bottom:var(--explore-tabs-h, 0px)}}body.explore-keeps-tabs .menu-share-modal{top:calc(50% - var(--explore-tabs-h, 0px) / 2);max-height:calc(100vh - 32px - var(--explore-tabs-h, 0px))}@media (max-width: 899px){body.explore-keeps-tabs .share-scrim,body.explore-keeps-tabs .rdo-plans-layer{bottom:var(--explore-tabs-h, 0px)}}@media (max-width: 600px){body.explore-keeps-tabs .share-popover,body.explore-keeps-tabs .share-sheet,body.explore-keeps-tabs .share-scrim{bottom:var(--explore-tabs-h, 0px)!important}body.explore-keeps-tabs .share-popover{padding-bottom:0}body.explore-keeps-tabs .share-sheet{padding-bottom:8px}body.explore-keeps-tabs .rdo-plans{bottom:var(--explore-tabs-h, 0px)}body.explore-keeps-tabs .rdo-plans{padding-bottom:12px;max-height:calc(80vh - var(--explore-tabs-h, 0px))}body.explore-keeps-tabs .save-chooser{padding-bottom:20px}body.explore-keeps-tabs .save-chooser{max-height:calc(88vh - var(--explore-tabs-h, 0px))}body.explore-keeps-tabs .save-chooser[data-active-screen=account]{padding-bottom:28px}}.splash-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:var(--color-bg);color:var(--color-text);display:flex;flex-direction:column;font-family:var(--font-body);overflow-y:auto;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.splash-screen.hidden{display:none}body:not(.auth-resolved) .splash-tagline,body:not(.auth-resolved) .splash-actions{visibility:hidden}.splash-stage{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;padding:24px 24px calc(24px + 6vh);width:100%;max-width:560px;margin:auto}.splash-wordmark{font-family:var(--font-display);font-weight:400;font-size:74px;line-height:.92;letter-spacing:-.01em;margin:0 0 clamp(6px,1.2vh,14px);color:var(--color-text)}.splash-opening{font-family:var(--font-body);font-size:15px;line-height:1.4;color:var(--color-text-muted);margin:20px 0 0;max-width:32ch}.splash-tagline{font-family:var(--font-display);font-style:normal;font-weight:400;color:color-mix(in srgb,var(--color-text) 82%,white 18%);font-size:20px;line-height:1.35;margin:0 0 clamp(28px,5vh,60px)}.splash-tagline span{display:block;white-space:nowrap}.splash-plate{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;padding:0;cursor:pointer;background:none;width:min(100%,540px,calc(100vh - 300px));height:auto;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:2px;border-radius:4px;overflow:hidden;box-shadow:none;margin:0 0 clamp(24px,4vh,48px)}.splash-screen.has-plate .splash-plate{display:grid}.splash-plate:focus-visible{outline:2px solid var(--color-secondary);outline-offset:3px}.splash-cell{aspect-ratio:1 / 1;overflow:hidden;background-color:var(--color-accent-soft);display:block}.splash-cell img{width:100%;height:100%;object-fit:cover;display:block;filter:contrast(.95) brightness(1.02) saturate(.95)}.splash-actions{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:24px}.splash-explore{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-family:var(--font-body);font-size:15px;font-weight:600;color:#fff;background:var(--color-secondary);border:1px solid var(--color-secondary);border-radius:4px;width:160px;height:43px;padding:0;transition:background-color .12s ease}.splash-explore:hover{background:color-mix(in srgb,var(--color-secondary) 88%,black 12%)}.splash-explore:focus-visible{outline:2px solid var(--color-secondary);outline-offset:3px}.splash-signin{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:inline-flex;align-items:center;font-family:var(--font-body);font-size:16px;font-weight:600;color:var(--color-text);height:43px;padding:0 14px;border-radius:6px;transition:color .12s ease}.splash-signin:hover{text-decoration:underline;text-underline-offset:3px}.splash-signin:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}@media (max-width: 600px){.splash-wordmark{font-size:48px}.splash-tagline{font-size:18px}.splash-plate{width:min(100%,360px)}.splash-stage{padding-bottom:calc(24px + 4vh)}}@media (min-width: 601px) and (max-width: 1023px){.splash-wordmark{font-size:64px}.splash-plate{width:min(100%,460px)}.splash-stage{max-width:640px}}@media (min-width: 1024px) and (max-width: 1239px){.splash-wordmark{font-size:72px}.splash-stage{max-width:820px}}@media (min-width: 1240px){.splash-wordmark{font-size:68px}.splash-stage{max-width:600px}}.paprika-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10002;display:flex;align-items:center;justify-content:center;padding:20px;background:#1a1c1a6b}.paprika-sheet{position:relative;display:flex;flex-direction:column;width:100%;max-width:600px;max-height:min(76vh,560px);background:var(--color-bg, #faf9f6);color:var(--color-text, #1a1c1a);border-radius:16px;box-shadow:0 12px 40px #0000003d;overflow:hidden;font-family:var(--font-body)}.paprika-sheet-header{padding:32px 32px 0}.paprika-sheet-title{margin:0;padding-right:24px;font-family:var(--font-display);font-size:var(--text-display-lg, 28px);font-weight:400;line-height:1.15}.paprika-sheet-sub{margin:6px 0 0;font-size:var(--text-tag, 13px);color:var(--color-text-light, #75777a)}.paprika-sheet-status{margin:10px 0 0;font-size:var(--text-body, 15px);color:var(--color-text-muted, #44474a)}.paprika-sheet .paprika-sheet-close{position:absolute;top:8px;right:8px;margin:0}.paprika-sheet-body{padding:16px 32px 28px;overflow-y:auto}.paprika-sheet--compact{max-width:420px}.paprika-sheet--compact .paprika-sheet-header{padding:24px 24px 0}.paprika-sheet--compact .paprika-sheet-body{padding:12px 24px 16px}.paprika-sheet-message{margin:8px 0 0;font-size:var(--text-body, 15px);line-height:1.5;color:var(--color-text, #1a1c1a)}.paprika-sheet .modal-actions{flex-wrap:wrap;margin-top:24px}.paprika-sheet .modal-actions>button{flex:0 1 auto}.paprika-sheet button{font-family:inherit}.paprika-row{display:flex;flex-direction:column;gap:6px;padding:7px 0;border-bottom:1px solid var(--color-border-light, #efeeeb)}.paprika-row:first-child{border-top:1px solid var(--color-border-light, #efeeeb)}.paprika-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.paprika-row-name{font-size:var(--text-body, 15px);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.paprika-row-status{flex:none;font-size:var(--text-body-sm, 14px);color:var(--color-text-light, #75777a)}.paprika-row-check{width:18px;height:18px;margin-right:8px;vertical-align:-4px}.paprika-row-check circle{fill:var(--color-secondary, #46563D)}.paprika-row-check polyline{fill:none;stroke:var(--color-white, #fff);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.paprika-row.is-error .paprika-row-status{color:var(--color-error, #C0392B)}.paprika-row.is-warning .paprika-row-status{color:var(--color-warning, #D4A03C)}.paprika-row-openlink{border:none;background:none;padding:0;font:inherit;color:var(--color-text, #1a1c1a);text-decoration:underline;cursor:pointer}.paprika-row-openlink:hover{color:var(--color-primary, #000101)}.paprika-row-openlink--secondary{color:var(--color-text-muted, #44474a);text-decoration:none}.paprika-row-openlink--secondary:hover{text-decoration:underline;color:var(--color-text-muted, #44474a)}.paprika-row-message{margin:0;font-size:var(--text-body-sm, 14px);color:var(--color-text-muted, #44474a)}.paprika-row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.paprika-row-action{padding:6px 12px;font-size:var(--text-body-sm, 14px);border:1px solid var(--color-border-strong, #c5c6ca);border-radius:8px;background:var(--color-surface, #fff);color:var(--color-text, #1a1c1a);cursor:pointer}.paprika-row-action:hover{background:var(--color-bg-hover, #efeeeb)}.paprika-row-action:disabled{opacity:.5;cursor:default}.import-batch-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10002;display:flex;align-items:center;justify-content:center;padding:20px;background:#1a1c1a6b}.import-batch-sheet{position:relative;display:flex;flex-direction:column;width:100%;max-width:520px;max-height:min(76vh,560px);background:var(--color-surface, #fff);color:var(--color-text, #1a1c1a);border-radius:16px;box-shadow:0 12px 40px #0000003d;overflow:hidden;font-family:inherit}.import-batch-header{padding:20px 22px 14px;border-bottom:1px solid var(--color-border-light, #efeeeb)}.import-batch-title{margin:0;font-size:var(--text-title, 18px);font-weight:600}.import-batch-status{margin:8px 0 0;font-size:var(--text-body-sm, 14px);color:var(--color-text-light, #75777a)}.import-batch-controls{display:flex;gap:8px;margin-top:12px}.import-batch-stop,.import-batch-done{padding:6px 14px;font-size:var(--text-body-sm, 14px);border:1px solid var(--color-border-strong, #c5c6ca);border-radius:8px;background:var(--color-surface, #fff);color:var(--color-text, #1a1c1a);cursor:pointer}.import-batch-stop:hover,.import-batch-done:hover{background:var(--color-bg-hover, #efeeeb)}.import-batch-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;background:transparent;font-size:22px;line-height:1;color:var(--color-text-muted, #44474a);cursor:pointer;border-radius:8px}.import-batch-close:hover{background:var(--color-bg-hover, #efeeeb)}.import-batch-body{padding:8px 22px 16px;overflow-y:auto}.import-batch-row{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-bottom:1px solid var(--color-border-light, #efeeeb)}.import-batch-row:last-child{border-bottom:none}.import-batch-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.import-batch-row-name{font-size:var(--text-body, 15px);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-batch-row-status{flex:none;font-size:var(--text-label, 12px);color:var(--color-text-light, #75777a)}.import-batch-row.is-saved .import-batch-row-status{color:var(--color-success, #46563D)}.import-batch-row.is-error .import-batch-row-status{color:var(--color-error, #C0392B)}.import-batch-row.is-warning .import-batch-row-status{color:var(--color-warning, #D4A03C)}.import-batch-row-copylink{border:none;background:none;padding:0;font:inherit;font-size:var(--text-label, 12px);color:var(--color-text-light, #75777a);text-decoration:none;cursor:pointer}.import-batch-row-copylink:hover{text-decoration:underline}.import-batch-row-message{margin:0;font-size:var(--text-body-sm, 14px);color:var(--color-text-muted, #44474a)}.import-batch-row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.import-batch-row-action{padding:6px 12px;font-size:var(--text-body-sm, 14px);border:1px solid var(--color-border-strong, #c5c6ca);border-radius:8px;background:var(--color-surface, #fff);color:var(--color-text, #1a1c1a);cursor:pointer}.import-batch-row-action:hover{background:var(--color-bg-hover, #efeeeb)}.import-batch-row-action:disabled{opacity:.5;cursor:default}.import-batch-pill{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:10001;padding:10px 18px;font-size:var(--text-body-sm, 14px);font-weight:500;border:none;border-radius:999px;background:var(--color-text, #1a1c1a);color:var(--color-surface, #fff);box-shadow:0 6px 20px #00000047;cursor:pointer}.import-batch-pill:hover{opacity:.92}
