@charset "UTF-8";:root{--body-font: var(--font-sans);--accent-font: var(--font-serif);--heading-font: var(--font-serif);--font-family: var(--font-sans);--body-font-variation-settings: normal;--body-font-variation-settings-bold: normal;--accent-font-variation-settings: normal;--accent-font-weight: 400;--font-bold-weight: 600;--font-weight-medium: 500;--font-size-base: var(--type-body-size);--font-size-xxs: var(--type-meta-size);--font-size-xs: var(--type-italic-quiet-size);--font-size-sm: var(--type-control-size);--font-size-md: var(--type-item-size);--font-size-lg: var(--type-h2-size);--font-size-xl: var(--type-h1-size);--font-size-xxl: var(--type-display-size);--text-xs: var(--type-meta-size);--spacing-xs: var(--space-xs);--spacing-sm: var(--space-sm);--spacing-md: var(--space-md);--spacing-lg: var(--space-lg);--spacing-xl: var(--space-xl);--spacing-xxl: 48px;--spacing-xxxl: 64px;--border-radius-xs: var(--radius-button);--border-radius-sm: 8px;--border-radius-md: 12px;--border-radius-lg: var(--radius-card);--border-radius-xl: var(--radius-card);--radius-md: 12px;--body-bg: var(--color-surface-alt);--body-text: var(--color-on-surface);--body-text-muted: var(--color-on-surface-muted);--text-color: var(--color-on-surface);--text-color-muted: var(--color-on-surface-muted);--text-muted: var(--color-on-surface-muted);--body-bg-low-contrast: var(--color-surface);--surface-bg: var(--color-surface);--surface-bg-subtle: var(--color-surface);--surface-bg-muted: var(--color-surface-alt);--surface-secondary: var(--color-surface);--surface-low-contrast: var(--color-surface);--surface-medium-contrast: var(--color-surface);--surface-high-contrast: var(--color-surface);--surface-high-contrast-complement: var(--color-on-surface);--surface-border: var(--color-rule);--surface-shadow: var(--shadow-card);--line-extra-low-contrast: var(--color-rule);--line-low-contrast: var(--color-rule);--line-medium-contrast: var(--color-rule);--border-color: var(--color-rule);--color-border: var(--color-rule);--color-bg: var(--color-surface-alt);--color-muted-bg: var(--color-surface-alt);--color-action: var(--color-tertiary);--color-action-light: var(--color-tertiary);--color-action-background: rgba(179, 74, 58, .08);--color-accent: var(--color-accent);--color-accent-background: rgba(134, 160, 142, .1);--accent-color: var(--color-accent);--color-primary: var(--color-primary);--primary-green: var(--color-tertiary);--primary-green-10: rgba(179, 74, 58, .1);--color-danger: #c0392b;--color-error: #c0392b;--color-warning: #b8860b;--color-success: var(--color-accent);--color-info: var(--color-primary);--orange: var(--color-tertiary);--neutral-50: var(--color-surface);--neutral-100: var(--color-surface-alt);--neutral-200: var(--color-rule);--neutral-300: var(--color-rule);--neutral-400: var(--color-on-surface-quiet);--neutral-600: var(--color-on-surface-muted);--neutral-700: var(--color-on-surface-muted);--neutral-800: var(--color-on-surface);--skeleton-base: var(--color-surface-alt);--skeleton-highlight: var(--color-rule)}/*! modern-normalize v3.0.1 | MIT License | https://github.com/sindresorhus/modern-normalize */*,:before,:after{box-sizing:border-box}html{font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";line-height:1.15;-webkit-text-size-adjust:100%;tab-size:4}body{margin:0}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:currentcolor}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}:root{--color-primary: #0c2a4a;--color-on-primary: #ffffff;--color-secondary: #566b80;--color-tertiary: #b34a3a;--color-on-tertiary: #ffffff;--color-accent: #86a08e;--color-driftwood: #8a7662;--color-surface: #ffffff;--color-surface-alt: #eef0ee;--color-on-surface: #0c2a4a;--color-on-surface-muted: #566b80;--color-on-surface-quiet: #9eaab6;--color-rule: #d7dcdd;--font-serif: "Cormorant Garamond", Georgia, serif;--font-cormorant-garamond: "Cormorant Garamond", Georgia, serif;--font-sans: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--font-manrope: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--type-display-size: 56px;--type-display-weight: 400;--type-display-line-height: 1;--type-display-letter-spacing: -1.4px;--type-h1-size: 38px;--type-h1-weight: 400;--type-h1-line-height: 1.05;--type-h1-letter-spacing: -.6px;--type-h2-size: 26px;--type-h2-weight: 400;--type-h2-line-height: 1.1;--type-h2-letter-spacing: -.3px;--type-item-size: 19px;--type-item-weight: 400;--type-item-line-height: 1.2;--type-italic-quiet-size: 14px;--type-italic-quiet-weight: 400;--type-italic-quiet-style: italic;--type-tagline-size: 17px;--type-tagline-weight: 400;--type-tagline-style: italic;--type-section-label-size: 18px;--type-section-label-weight: 400;--type-section-label-line-height: 1.1;--type-section-label-style: italic;--type-body-size: 14px;--type-body-weight: 400;--type-body-line-height: 1.55;--type-control-size: 16px;--type-control-weight: 400;--type-control-line-height: 1.55;--type-meta-size: 11px;--type-meta-weight: 500;--type-meta-letter-spacing: 1px;--type-meta-transform: uppercase;--radius-card: 2px;--radius-button: 2px;--radius-pill: 99px;--radius-none: 0px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 40px;--space-screen-pad: 22px;--space-card-pad: 14px;--space-row-gap: 13px;--shadow-card: 0 1px 0 rgba(12, 42, 74, .03), 0 4px 12px rgba(12, 42, 74, .04);--shadow-pill: 0 2px 4px rgba(12, 42, 74, .05), 0 8px 24px rgba(12, 42, 74, .06);--shadow-floating: 0 8px 24px rgba(12, 42, 74, .1)}:root[data-theme=fog]{--color-primary: #152a44;--color-on-surface: #152a44;--color-secondary: #5d6b7a;--color-on-surface-muted: #5d6b7a;--color-tertiary: #bb4a44;--color-accent: #5d7d6e;--color-driftwood: #7d746a;--color-surface-alt: #eaeae3;--color-on-surface-quiet: #a6afb9;--color-rule: #d5d7d3}:root[data-theme=verandah]{--color-primary: #2b2f5c;--color-on-primary: #fcf6ea;--color-secondary: #6a6e85;--color-on-surface-muted: #6a6e85;--color-tertiary: #b34a3a;--color-on-tertiary: #ffffff;--color-accent: #91a08a;--color-driftwood: #a89381;--color-surface: #fcf6ea;--color-surface-alt: #f4ebde;--color-on-surface: #2b2f5c;--color-on-surface-quiet: #b3b1b4;--color-rule: #dcd4ce}:root[data-theme=salt][data-mode=dark]{--color-primary: #eef0ee;--color-on-primary: #0a1d33;--color-secondary: #8a9aae;--color-on-surface-muted: #8a9aae;--color-tertiary: #d96550;--color-accent: #9bb8a3;--color-surface: #13283f;--color-surface-alt: #0a1d33;--color-on-surface: #eef0ee;--color-on-surface-quiet: #5a6a7e;--color-rule: #213246}:root[data-theme=fog][data-mode=dark]{--color-primary: #eaeae3;--color-on-primary: #1c1d1a;--color-secondary: #9a9a92;--color-on-surface-muted: #9a9a92;--color-tertiary: #d65a52;--color-accent: #7e9c8a;--color-surface: #272826;--color-surface-alt: #1c1d1a;--color-on-surface: #eaeae3;--color-on-surface-quiet: #5e5e58;--color-rule: #31322e}:root[data-theme=verandah][data-mode=dark]{--color-primary: #f4ebde;--color-on-primary: #1a1f3a;--color-secondary: #9aa0b8;--color-on-surface-muted: #9aa0b8;--color-tertiary: #d96550;--color-on-tertiary: #ffffff;--color-accent: #a8b89e;--color-surface: #252a48;--color-surface-alt: #1a1f3a;--color-on-surface: #f4ebde;--color-on-surface-quiet: #5e6386;--color-rule: #30334a}@media (prefers-color-scheme: dark){:root[data-theme=salt]:not([data-mode=light]){--color-primary: #eef0ee;--color-on-primary: #0a1d33;--color-secondary: #8a9aae;--color-on-surface-muted: #8a9aae;--color-tertiary: #d96550;--color-accent: #9bb8a3;--color-surface: #13283f;--color-surface-alt: #0a1d33;--color-on-surface: #eef0ee;--color-on-surface-quiet: #5a6a7e;--color-rule: #213246}}@media (prefers-color-scheme: dark){:root[data-theme=fog]:not([data-mode=light]){--color-primary: #eaeae3;--color-on-primary: #1c1d1a;--color-secondary: #9a9a92;--color-on-surface-muted: #9a9a92;--color-tertiary: #d65a52;--color-accent: #7e9c8a;--color-surface: #272826;--color-surface-alt: #1c1d1a;--color-on-surface: #eaeae3;--color-on-surface-quiet: #5e5e58;--color-rule: #31322e}}@media (prefers-color-scheme: dark){:root[data-theme=verandah]:not([data-mode=light]){--color-primary: #f4ebde;--color-on-primary: #1a1f3a;--color-secondary: #9aa0b8;--color-on-surface-muted: #9aa0b8;--color-tertiary: #d96550;--color-on-tertiary: #ffffff;--color-accent: #a8b89e;--color-surface: #252a48;--color-surface-alt: #1a1f3a;--color-on-surface: #f4ebde;--color-on-surface-quiet: #5e6386;--color-rule: #30334a}}.container,.container-fluid,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: .75rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){.container-sm,.container{max-width:540px}}@media (min-width: 768px){.container-md,.container-sm,.container{max-width:720px}}@media (min-width: 992px){.container-lg,.container-md,.container-sm,.container{max-width:800px}}@media (min-width: 1200px){.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:801px}}@media (min-width: 1400px){.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:802px}}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{box-sizing:border-box;flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.66666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: .25rem}.g-1,.gy-1{--bs-gutter-y: .25rem}.g-2,.gx-2{--bs-gutter-x: .5rem}.g-2,.gy-2{--bs-gutter-y: .5rem}.g-3,.gx-3{--bs-gutter-x: 1rem}.g-3,.gy-3{--bs-gutter-y: 1rem}.g-4,.gx-4{--bs-gutter-x: 1.5rem}.g-4,.gy-4{--bs-gutter-y: 1.5rem}.g-5,.gx-5{--bs-gutter-x: 3rem}.g-5,.gy-5{--bs-gutter-y: 3rem}@media (min-width: 576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.66666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: .25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: .25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: .5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: .5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 3rem}}@media (min-width: 768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.66666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: .25rem}.g-md-1,.gy-md-1{--bs-gutter-y: .25rem}.g-md-2,.gx-md-2{--bs-gutter-x: .5rem}.g-md-2,.gy-md-2{--bs-gutter-y: .5rem}.g-md-3,.gx-md-3{--bs-gutter-x: 1rem}.g-md-3,.gy-md-3{--bs-gutter-y: 1rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x: 3rem}.g-md-5,.gy-md-5{--bs-gutter-y: 3rem}}@media (min-width: 992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.66666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: .25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: .25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: .5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: .5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 3rem}}@media (min-width: 1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.66666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: .25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: .25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: .5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: .5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 3rem}}@media (min-width: 1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.66666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: .25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: .25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: .5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: .5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 3rem}}.container--wide{max-width:1100px}h1{font-family:var(--font-serif);font-size:clamp(38px,3.5vw + 18px,56px);font-weight:var(--type-display-weight);line-height:1.02;letter-spacing:-1.2px;margin:0}h2{font-family:var(--font-serif);font-size:var(--type-h2-size);font-weight:var(--type-h2-weight);line-height:var(--type-h2-line-height);letter-spacing:var(--type-h2-letter-spacing);margin:0}h3,h4{font-family:var(--font-serif);font-size:var(--type-item-size);font-weight:400;line-height:var(--type-item-line-height);margin:0}.muted-text{color:var(--color-on-surface-muted)}.medium-text{font-size:var(--type-body-size);line-height:var(--type-body-line-height);font-weight:var(--type-body-weight)}.page-lede{font-family:var(--font-serif);font-style:italic;font-size:var(--type-h2-size);font-weight:400;line-height:1.35;color:var(--color-on-surface-muted);max-width:64ch;margin:0}.section-label{font-family:var(--font-serif);font-size:var(--type-section-label-size);font-style:var(--type-section-label-style);font-weight:var(--type-section-label-weight);line-height:var(--type-section-label-line-height);color:var(--color-tertiary)}.tagline{font-family:var(--font-serif);font-size:var(--type-tagline-size);font-style:var(--type-tagline-style);font-weight:var(--type-tagline-weight)}.meta{font-family:var(--font-sans);font-size:var(--type-meta-size);font-weight:var(--type-meta-weight);letter-spacing:var(--type-meta-letter-spacing);text-transform:var(--type-meta-transform)}.numeral{font-family:var(--font-serif);font-feature-settings:"lnum"}:root{--motion-fast: .15s;--motion-normal: .25s;--motion-slow: .4s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-emphasized: cubic-bezier(.3, 0, 0, 1)}@media (prefers-reduced-motion: reduce){:root{--motion-fast: 0ms;--motion-normal: 0ms;--motion-slow: 0ms}}body{background-color:var(--body-bg);color:var(--body-text);font-family:var(--body-font);font-size:var(--type-body-size);font-weight:var(--type-body-weight);line-height:var(--type-body-line-height);font-optical-sizing:auto;font-style:normal;padding-top:120px;padding-bottom:64px}input,textarea,select{font:inherit;font-size:var(--type-control-size)}button{font:inherit;cursor:pointer}a{color:var(--color-tertiary);text-decoration:none}a:hover{text-decoration:underline}@media (max-width: 768px){.container{padding-left:var(--space-screen-pad)!important;padding-right:var(--space-screen-pad)!important}}@media (max-width: 576px){.container{padding-left:var(--space-screen-pad)!important;padding-right:var(--space-screen-pad)!important}}.m-none{margin:0}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.m-xxl{margin:var(--spacing-xxl)}.mt-none{margin-top:0}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mt-xxl{margin-top:var(--spacing-xxl)}.mr-none{margin-right:0}.mr-xs{margin-right:var(--spacing-xs)}.mr-sm{margin-right:var(--spacing-sm)}.mr-md{margin-right:var(--spacing-md)}.mr-lg{margin-right:var(--spacing-lg)}.mr-xl{margin-right:var(--spacing-xl)}.mr-xxl{margin-right:var(--spacing-xxl)}.mb-none{margin-bottom:0}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mb-xxl{margin-bottom:var(--spacing-xxl)}.ml-none{margin-left:0}.ml-xs{margin-left:var(--spacing-xs)}.ml-sm{margin-left:var(--spacing-sm)}.ml-md{margin-left:var(--spacing-md)}.ml-lg{margin-left:var(--spacing-lg)}.ml-xl{margin-left:var(--spacing-xl)}.ml-xxl{margin-left:var(--spacing-xxl)}.mx-none{margin-left:0;margin-right:0}.mx-xs{margin-left:var(--spacing-xs);margin-right:var(--spacing-xs)}.mx-sm{margin-left:var(--spacing-sm);margin-right:var(--spacing-sm)}.mx-md{margin-left:var(--spacing-md);margin-right:var(--spacing-md)}.mx-lg{margin-left:var(--spacing-lg);margin-right:var(--spacing-lg)}.mx-xl{margin-left:var(--spacing-xl);margin-right:var(--spacing-xl)}.mx-xxl{margin-left:var(--spacing-xxl);margin-right:var(--spacing-xxl)}.my-none{margin-top:0;margin-bottom:0}.my-xs{margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.my-sm{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.my-md{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}.my-lg{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.my-xl{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.my-xxl{margin-top:var(--spacing-xxl);margin-bottom:var(--spacing-xxl)}.p-none{padding:0}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.p-xxl{padding:var(--spacing-xxl)}.pt-none{padding-top:0}.pt-xs{padding-top:var(--spacing-xs)}.pt-sm{padding-top:var(--spacing-sm)}.pt-md{padding-top:var(--spacing-md)}.pt-lg{padding-top:var(--spacing-lg)}.pt-xl{padding-top:var(--spacing-xl)}.pt-xxl{padding-top:var(--spacing-xxl)}.pr-none{padding-right:0}.pr-xs{padding-right:var(--spacing-xs)}.pr-sm{padding-right:var(--spacing-sm)}.pr-md{padding-right:var(--spacing-md)}.pr-lg{padding-right:var(--spacing-lg)}.pr-xl{padding-right:var(--spacing-xl)}.pr-xxl{padding-right:var(--spacing-xxl)}.pb-none{padding-bottom:0!important}.pb-xs{padding-bottom:var(--spacing-xs)}.pb-sm{padding-bottom:var(--spacing-sm)}.pb-md{padding-bottom:var(--spacing-md)}.pb-lg{padding-bottom:var(--spacing-lg)}.pb-xl{padding-bottom:var(--spacing-xl)}.pb-xxl{padding-bottom:var(--spacing-xxl)}.pl-none{padding-left:0}.pl-xs{padding-left:var(--spacing-xs)}.pl-sm{padding-left:var(--spacing-sm)}.pl-md{padding-left:var(--spacing-md)}.pl-lg{padding-left:var(--spacing-lg)}.pl-xl{padding-left:var(--spacing-xl)}.pl-xxl{padding-left:var(--spacing-xxl)}.px-none{padding-left:0;padding-right:0}.px-xs{padding-left:var(--spacing-xs);padding-right:var(--spacing-xs)}.px-sm{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.px-md{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.px-lg{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.px-xl{padding-left:var(--spacing-xl);padding-right:var(--spacing-xl)}.px-xxl{padding-left:var(--spacing-xxl);padding-right:var(--spacing-xxl)}.py-none{padding-top:0;padding-bottom:0}.py-xs{padding-top:var(--spacing-xs);padding-bottom:var(--spacing-xs)}.py-sm{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-lg{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.py-xl{padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xl)}.py-xxl{padding-top:var(--spacing-xxl);padding-bottom:var(--spacing-xxl)}.bold{font-variation-settings:var(--body-font-variation-settings-bold)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-gap-xs{gap:var(--spacing-xs)}.flex-gap-sm{gap:var(--spacing-sm)}.flex-gap-md{gap:var(--spacing-md)}.flex-gap-lg{gap:var(--spacing-lg)}.flex-center{justify-content:center}.flex-center-v{display:flex;align-items:center}.flex-end{justify-content:flex-end}.flex-between{justify-content:space-between}.flex-1{flex:1}.overflow-hidden{overflow:hidden}.border-top{border-top:1px solid var(--line-low-contrast)}.nav{height:80px;position:absolute;top:0;left:0;background-color:transparent;border-bottom:1px solid var(--color-rule);width:100%;display:flex;justify-content:space-between;align-items:center;padding-left:var(--spacing-lg);padding-right:var(--spacing-lg);z-index:100}@media (min-width: 769px){.nav{border-bottom:1px solid var(--line-extra-low-contrast)}.nav:after{content:"";position:absolute;bottom:0;left:0;right:0;height:8px;background:linear-gradient(to top,rgba(255,255,255,.006) 0%,transparent 100%);pointer-events:none}}.nav__right{display:flex;align-items:center;gap:0}.nav__logo{height:40px;width:auto;fill:var(--color-action)}.nav__logo path{fill:var(--color-action)}.nav__name{color:var(--body-text);text-decoration:none;line-height:1;font-size:44px;font-family:var(--accent-font),sans-serif;font-weight:800}.nav__items{display:flex;align-items:center;gap:var(--spacing-xl);margin-right:var(--spacing-xxl)}@media (max-width: 768px){.nav__items{display:none}}.nav__item{color:var(--body-text);text-decoration:none;font-family:var(--font-serif);font-style:italic;font-size:22px;font-weight:500;letter-spacing:-.01em;padding:var(--spacing-md) var(--spacing-md);border-radius:10px;transition:background-color .5s ease,border .2s ease;position:relative;border:1px solid transparent}.nav__item:hover{background-color:var(--surface-bg);text-decoration:none;border:1px solid var(--line-low-contrast);border-radius:10px}.nav__hamburger{display:none;background:none;border:none;padding:var(--spacing-sm);cursor:pointer;z-index:102}@media (max-width: 768px){.nav__hamburger{display:block}}.nav__hamburger span{display:block;width:24px;height:2px;background-color:var(--body-text);margin:5px 0;transition:all .3s ease;transform-origin:center}.nav__hamburger[aria-expanded=true] span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav__hamburger[aria-expanded=true] span:nth-child(2){opacity:0}.nav__hamburger[aria-expanded=true] span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.nav__drawer{position:fixed;top:0;right:0;width:280px;height:100vh;background-color:var(--body-bg);transform:translate(100%);transition:transform .3s ease;z-index:101;padding:var(--spacing-xxl) var(--spacing-lg);overflow-y:auto;display:none}.nav__drawer--open{transform:translate(0)}.nav__drawer--initialized{display:block}.nav__drawer-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;z-index:100}.nav__drawer-overlay--visible{opacity:1;visibility:visible}.nav__drawer-items{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.nav__drawer-item{color:var(--body-text);text-decoration:none;font-family:var(--font-serif);font-style:italic;font-size:26px;font-weight:500;letter-spacing:-.01em;padding:var(--spacing-md);border-radius:2px;transition:all .2s ease}.nav__drawer-item:hover{background-color:var(--surface-bg);color:var(--color-action)}.nav__drawer-item--active{color:var(--color-action);background-color:var(--surface-bg)}.nav__settings{display:grid;place-items:center;width:calc(var(--space-xl) + var(--space-xs));height:calc(var(--space-xl) + var(--space-xs));padding:0;border:1px solid var(--color-tertiary);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-tertiary);box-shadow:var(--shadow-pill);text-decoration:none;transition:background-color var(--motion-fast, .15s) var(--ease-standard, ease-out),color var(--motion-fast, .15s) var(--ease-standard, ease-out)}.nav__settings:hover{background:var(--color-tertiary);color:var(--color-on-tertiary);text-decoration:none}.nav__settings:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (max-width: 768px){.nav__settings{display:none}}.nav__settings-icon{height:20px;width:20px;color:inherit}.ingredient{display:flex;font-size:var(--font-size-xs);align-items:center;transition:all .3s ease-out;text-transform:capitalize}.ingredient__amount{padding:7px var(--spacing-sm);border-radius:100px;background-color:var(--surface-bg);font-size:var(--font-size-xxs);margin-right:var(--spacing-sm);font-weight:700;min-width:70px;text-align:center;transition:all .3s ease-out;color:var(--color-primary);border:1px solid var(--line-extra-low-contrast);line-height:1;text-box-trim:both;text-box-edge:cap alphabetic}.ingredient__name{flex:1}.ingredient--no-amount .ingredient__name{padding-left:calc(70px + var(--spacing-sm))}.ingredient--used{text-decoration:line-through;opacity:.4;color:var(--text-muted)}.ingredient-list{list-style:none;padding-left:0;margin-left:0;margin-top:0;margin-bottom:0}.ingredient-list__item{margin-bottom:var(--spacing-md)}:root{--step-current-shadow: 0 10px 30px rgba(12, 42, 74, .12), 0 3px 10px rgba(12, 42, 74, .06)}[data-mode=dark]{--step-current-shadow: 0 14px 38px rgba(0, 0, 0, .55), 0 0 40px color-mix(in srgb, var(--color-secondary) 34%, transparent)}@media (prefers-color-scheme: dark){:root:not([data-mode=light]){--step-current-shadow: 0 14px 38px rgba(0, 0, 0, .55), 0 0 40px color-mix(in srgb, var(--color-secondary) 34%, transparent)}}.step{position:relative;display:flex;justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg) var(--space-xl);background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:2px;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-normal) var(--ease-standard),opacity var(--motion-normal) var(--ease-standard),transform var(--motion-normal) var(--ease-standard);background-color:color-mix(in srgb,var(--color-surface) 70%,var(--color-surface-alt));opacity:.85}@media (max-width: 768px){.step{flex-direction:column;gap:var(--space-sm);padding:var(--space-lg)}}.step:hover{border-color:color-mix(in srgb,var(--color-secondary) 25%,var(--color-rule))}.step__content{flex-basis:calc(100% - 6ch - 16px)}@media (min-width: 769px){.step__content{flex-basis:calc(100% - 10ch - 32px)}}@media (max-width: 768px){.step__content{flex-basis:auto;order:2}}.step__meta{flex-shrink:0}@media (max-width: 768px){.step__meta{order:1}}.step__text{font-family:var(--font-sans);font-size:var(--type-body-size);line-height:1.6;color:var(--color-on-surface);margin:0;opacity:.75;transition:opacity var(--motion-normal) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.step__text:not(:last-child){margin-bottom:var(--space-md)}.step__time{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-pill);background-color:var(--color-surface);color:var(--color-primary);font-family:var(--font-sans);font-size:var(--type-meta-size);font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--color-rule);white-space:nowrap}.step__time:before{content:"";width:12px;height:12px;background-color:currentColor;-webkit-mask:var(--clock-icon) no-repeat center/contain;mask:var(--clock-icon) no-repeat center/contain;flex-shrink:0;opacity:.7}.step__ingredients{display:none}.step--current{background-color:var(--color-surface);border-color:color-mix(in srgb,var(--color-secondary) 40%,var(--color-rule));box-shadow:var(--step-current-shadow);opacity:1;transform:translateY(-2px)}.step--current .step__text{opacity:1;color:var(--color-on-surface)}.step--current .step__ingredients{display:block}.step--completed{background-color:var(--color-surface-alt);border-color:color-mix(in srgb,var(--color-rule) 60%,transparent);opacity:.5}.step--completed .step__text{text-decoration:line-through;opacity:.7}.step--completed .step__time{display:none}[data-high-contrast=true] .step,[data-high-contrast=true] .step__text,[data-high-contrast=true] .step--completed,[data-high-contrast=true] .step--completed .step__text{opacity:1!important}.steps{list-style:none;padding-left:0;margin-left:0;counter-reset:step}.steps__item{margin-bottom:var(--space-md);counter-increment:step}.steps__item:last-child{margin-bottom:0}.recipe-item{padding:var(--space-lg) var(--space-lg);background-color:transparent;font-weight:400;transition:background-color var(--motion-fast) var(--ease-standard)}.recipe-item__title{font-family:var(--font-serif);font-size:var(--type-item-size);line-height:var(--type-item-line-height);color:var(--color-on-surface);font-weight:400;text-decoration:none;display:flex;align-items:center;gap:var(--space-sm);padding-right:calc(var(--space-lg) + 20px);transition:color var(--motion-fast) var(--ease-standard);position:relative}.recipe-item__title:before{content:"";flex-shrink:0;width:20px;height:20px;background-color:currentColor;-webkit-mask:var(--recipe-item-icon) no-repeat center/contain;mask:var(--recipe-item-icon) no-repeat center/contain;opacity:.55;transition:opacity var(--motion-fast) var(--ease-standard)}.recipe-item__title:after{content:"";position:absolute;right:var(--space-xs);top:50%;transform:translateY(-50%);width:28px;height:28px;background-color:currentColor;-webkit-mask:var(--recipe-item-arrow) no-repeat center/contain;mask:var(--recipe-item-arrow) no-repeat center/contain;opacity:.45;transition:opacity var(--motion-fast) var(--ease-standard)}.recipe-item:hover{background-color:color-mix(in srgb,var(--color-on-surface) 4%,transparent)}.recipe-item:hover .recipe-item__title{color:var(--color-tertiary);text-decoration:none}.recipe-item:hover .recipe-item__title:before{opacity:1}.recipe-item:hover .recipe-item__title:after{opacity:1}.recipe-item:hover .recipe-item__count{color:var(--color-tertiary);border-color:color-mix(in srgb,var(--color-tertiary) 35%,var(--color-rule))}.recipe-item--collection .recipe-item__title{padding-right:calc(var(--space-lg) + 20px + 130px)}.recipe-item--collection .recipe-item__title:before{-webkit-mask-image:var(--recipe-item-icon-collection);mask-image:var(--recipe-item-icon-collection)}.recipe-item__count{display:inline-flex;align-items:center;gap:var(--space-xs);position:absolute;right:72px;top:50%;transform:translateY(-50%);font-family:var(--font-sans);font-size:var(--type-meta-size);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-primary);background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-pill);padding:var(--space-xs) var(--space-sm);line-height:1;white-space:nowrap;transition:color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.recipe-item__count:before{content:"";width:12px;height:12px;background-color:currentColor;-webkit-mask:var(--recipe-item-icon) no-repeat center/contain;mask:var(--recipe-item-icon) no-repeat center/contain;flex-shrink:0;opacity:.85}.recipe-item--selectable .recipe-item__title{cursor:pointer;padding-right:var(--space-lg)}.recipe-item--selectable .recipe-item__title:before{display:none}.recipe-item--selectable .recipe-item__title:after{display:none}.recipe-item--selected{background-color:color-mix(in srgb,var(--color-tertiary) 6%,var(--color-surface))}.recipe-item--selected .recipe-item__title{color:var(--color-tertiary)}.recipe-item__check{appearance:none;-webkit-appearance:none;flex-shrink:0;width:18px;height:18px;margin:0;border:1px solid var(--color-rule);border-radius:2px;background-color:var(--color-surface);cursor:pointer;position:relative;transition:background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.recipe-item__check:hover{border-color:color-mix(in srgb,var(--color-tertiary) 50%,var(--color-rule))}.recipe-item__check:checked{background-color:var(--color-tertiary);border-color:var(--color-tertiary)}.recipe-item__check:checked:after{content:"";position:absolute;top:50%;left:50%;width:10px;height:10px;transform:translate(-50%,-50%);background-color:var(--color-on-tertiary);-webkit-mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M6.2 11.5 2.7 8l1.1-1.1 2.4 2.4 6-6 1.1 1.1z'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M6.2 11.5 2.7 8l1.1-1.1 2.4 2.4 6-6 1.1 1.1z'/%3E%3C/svg%3E") no-repeat center/contain}.recipe-item__check:focus-visible{outline:2px solid var(--color-tertiary);outline-offset:2px}.recipe-item__checkbox{flex-shrink:0;margin-top:var(--spacing-xs)}.recipe-item__checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-action)}.recipe-item__content{flex:1;min-width:0}.recipe-item__description{color:var(--body-text-muted);font-size:var(--font-size-xs);margin:var(--spacing-xs) 0;line-height:1.4}.recipe-item__meta{display:flex;gap:var(--spacing-md);font-size:var(--font-size-xs);color:var(--body-text-muted);margin-top:var(--spacing-sm)}.recipe-item__meta span{display:flex;align-items:center;gap:var(--spacing-xs)}:root{--recipe-item-icon: url("data:image/svg+xml,%3Csvg fill='none' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='white'%3E%3Cpath d='m19.42 11.75h-3.42c-.41 0-.75-.34-.75-.75v-6.99c0-.74.29-1.43.81-1.95s1.21-.81 1.95-.81h.01c1.25.01 2.43.5 3.33 1.39.9.91 1.39 2.11 1.39 3.36v2.42c.01 1.99-1.33 3.33-3.32 3.33zm-2.67-1.5h2.67c1.16 0 1.83-.67 1.83-1.83v-2.42c0-.86-.34-1.68-.95-2.3-.61-.6-1.43-.94-2.28-.95 0 0 0 0-.01 0-.33 0-.65.13-.89.37s-.37.55-.37.89z'%3E%3C/path%3E%3Cpath d='m9 23.33c-.47 0-.91-.18-1.24-.52l-1.66-1.67c-.09-.09-.23-.1-.33-.02l-1.72 1.28c-.53.4-1.23.47-1.83.17s-.97-.9-.97-1.57v-15c0-3.02 1.73-4.75 4.75-4.75h12c.41 0 .75.34.75.75s-.34.75-.75.75c-.69 0-1.25.56-1.25 1.25v17c0 .67-.37 1.27-.97 1.57s-1.3.24-1.83-.16l-1.71-1.28c-.1-.08-.24-.06-.32.02l-1.68 1.68c-.33.32-.77.5-1.24.5zm-3.09-3.76c.46 0 .91.17 1.25.52l1.66 1.67c.06.06.14.07.18.07s.12-.01.18-.07l1.68-1.68c.62-.62 1.6-.68 2.29-.15l1.7 1.27c.11.08.21.05.26.02s.14-.09.14-.22v-17c0-.45.11-.88.3-1.25h-9.55c-2.22 0-3.25 1.03-3.25 3.25v15c0 .14.09.2.14.23.06.03.16.05.26-.03l1.71-1.28c.31-.23.68-.35 1.05-.35z'%3E%3C/path%3E%3Cpath d='m12 13.76h-3c-.41 0-.75-.34-.75-.75s.34-.75.75-.75h3c.41 0 .75.34.75.75s-.34.75-.75.75z'%3E%3C/path%3E%3Cpath d='m12 9.76001h-3c-.41 0-.75-.34-.75-.75s.34-.75.75-.75h3c.41 0 .75.34.75.75s-.34.75-.75.75z'%3E%3C/path%3E%3Cpath d='m5.97021 10.01c-.55 0-1-.44999-1-.99999s.45-1 1-1 1 .45 1 1-.45.99999-1 .99999z'%3E%3C/path%3E%3Cpath d='m5.97021 14.01c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");--recipe-item-arrow: url("data:image/svg+xml,%3Csvg enable-background='new 0 0 100 100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m86.29 52h-51.69c-1.1 0-2-.9-2-2s.9-2 2-2h51.69c1.1 0 2 .9 2 2s-.9 2-2 2z' fill='white'/%3E%3Cpath clip-rule='evenodd' d='m16.45 48c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .89-2 2-2z' fill-rule='evenodd' fill='white'/%3E%3Ccircle clip-rule='evenodd' cx='25.52' cy='50' fill-rule='evenodd' r='2' fill='white'/%3E%3Cpath d='m73 67.62c-.46 0-.92-.16-1.29-.48-.84-.72-.94-1.98-.23-2.82l12.18-14.32-12.18-14.33c-.72-.84-.61-2.1.23-2.82s2.1-.61 2.82.23l13.28 15.62c.63.75.63 1.84 0 2.59l-13.28 15.63c-.4.47-.96.7-1.53.7z' fill='white'/%3E%3C/svg%3E");--recipe-item-icon-collection: url("data:image/svg+xml,%3Csvg fill='white' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 6h-8l-2-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2z'/%3E%3C/svg%3E");--recipe-item-icon-meal: url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg' fill='white'%3E%3Cpath d='m386 156c0-60.654-49.346-110-110-110s-110 49.346-110 110 49.346 110 110 110 110-49.346 110-110zm-200 0c0-49.626 40.374-90 90-90s90 40.374 90 90-40.374 90-90 90-90-40.374-90-90z'/%3E%3Cpath d='m214.121 454.542c19.801 19.796 52.777 14.302 78.852 4.099 31.973-12.511 66.751-36.568 97.929-67.741 31.172-31.177 55.229-65.955 67.739-97.928 13.557-34.644 12.101-62.647-4.102-78.855-6.619-6.617-14.426-9.97-23.211-9.97-.096 0-.193 0-.289.001-26.274.219-55.58 30.504-96.14 72.42-25.095 25.935-32.348 33.188-58.331 58.331-41.916 40.56-72.201 69.864-72.419 96.14-.074 8.902 3.279 16.809 9.969 23.5.001.002.002.003.003.003zm76.356-105.27c26.108-25.265 33.501-32.655 58.795-58.796 32.933-34.034 64.038-66.18 81.935-66.329 3.482-.054 6.318 1.24 9.191 4.112 10.089 10.092 9.949 31.023-.382 57.425-3.982 10.176-9.27 20.697-15.691 31.315h-41.195c-5.522 0-10 4.477-10 10s4.478 9.99 10 9.99h27.843c-5.396 7.388-11.29 14.758-17.618 22.01h-52.195c-5.522 0-10 4.477-10 10s4.478 9.99 10 9.99h33.334c-8.408 8.262-17.054 15.972-25.8 23.01h-49.724c-5.522 0-10 4.477-10 10s4.478 9.99 10 9.99h21.793c-11.894 7.475-23.701 13.574-35.078 18.026-26.398 10.331-47.328 10.47-57.423.383-2.874-2.875-4.143-5.711-4.113-9.193.148-17.895 32.294-49 66.328-81.933z'/%3E%3Cpath d='m146 406c44.112 0 80-35.888 80-80s-35.888-80-80-80-80 35.888-80 80 35.888 80 80 80zm0-140c33.084 0 60 26.916 60 60s-26.916 60-60 60-60-26.916-60-60 26.916-60 60-60z'/%3E%3Cpath d='m146 366c22.056 0 40-17.944 40-40s-17.944-40-40-40-40 17.944-40 40 17.944 40 40 40zm0-60c11.028 0 20 8.972 20 20s-8.972 20-20 20-20-8.972-20-20 8.972-20 20-20z'/%3E%3Cpath d='m308.929 203.071c3.906 3.905 10.236 3.905 14.143 0 3.905-3.905 3.905-10.237 0-14.143l-32.929-32.928 32.929-32.929c3.905-3.905 3.905-10.237 0-14.143-3.906-3.905-10.236-3.905-14.143 0l-32.929 32.929-32.929-32.929c-3.906-3.905-10.236-3.905-14.143 0-3.905 3.905-3.905 10.237 0 14.143l32.929 32.929-32.929 32.929c-3.905 3.905-3.905 10.237 0 14.143 3.906 3.905 10.236 3.905 14.143 0l32.929-32.929z'/%3E%3Cpath d='m146 186c0-22.056-17.944-40-40-40s-40 17.944-40 40 17.944 40 40 40 40-17.944 40-40zm-60 0c0-11.028 8.972-20 20-20s20 8.972 20 20-8.972 20-20 20-20-8.972-20-20z'/%3E%3Ccircle cx='430' cy='430' r='10'/%3E%3Cpath d='m256 0c-141.581 0-256 114.383-256 256 0 141.582 114.384 256 256 256 52.164 0 102.336-15.56 145.091-44.997 4.549-3.132 5.697-9.359 2.565-13.908-3.132-4.548-9.359-5.698-13.907-2.565-39.404 27.13-85.653 41.47-133.749 41.47-130.131 0-236-105.869-236-236s105.869-236 236-236 236 105.869 236 236c0 48.094-14.34 94.344-41.47 133.749-3.132 4.549-1.983 10.775 2.565 13.908 4.549 3.131 10.774 1.982 13.907-2.566 29.438-42.757 44.998-92.928 44.998-145.091 0-141.582-114.384-256-256-256z'/%3E%3C/svg%3E")}.recipe-item--meal .recipe-item__title:before{-webkit-mask-image:var(--recipe-item-icon-meal);mask-image:var(--recipe-item-icon-meal)}ul.recipe-list{list-style:none;padding-left:0;margin-left:0;background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.recipe-list__item{position:relative}.recipe-list__item+.recipe-list__item{border-top:1px solid var(--color-rule)}.recipe-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}@media (min-width: 768px){.recipe-grid{grid-template-columns:1fr 1fr}}@media (min-width: 1200px){.recipe-grid{grid-template-columns:1fr 1fr 1fr}}.recipe-hero__title{font-family:var(--font-serif);font-size:clamp(44px,6vw + 16px,72px);font-weight:400;line-height:1.02;letter-spacing:-1.6px;color:var(--color-on-surface)}.recipe-hero__description{font-family:var(--font-serif);font-style:italic;font-size:var(--type-h2-size);font-weight:400;line-height:1.35;color:var(--color-on-surface-muted);max-width:64ch}.recipe-section-heading{font-family:var(--font-serif);font-size:clamp(32px,4vw + 12px,44px);font-weight:400;line-height:1.08;letter-spacing:-.7px;color:var(--color-on-surface)}.search-form{text-align:right}@media (max-width: 768px){.search-form{text-align:left}}.search-form__wrapper{position:relative;display:inline-block;width:100%}.search-form__wrapper:focus-within .search-form__icon{opacity:.8}.search-form__icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--body-text-muted);pointer-events:none;opacity:.5;width:18px;height:18px;transition:opacity .3s ease-out}.search-form__input{border-radius:var(--radius-pill);background-color:var(--color-surface);border:1px solid var(--color-rule);padding:var(--space-md);padding-left:calc(var(--space-md) * 2 + 20px);padding-right:calc(var(--space-md) * 2 + 20px);color:var(--color-on-surface);font-family:var(--font-sans);font-size:var(--type-control-size);box-shadow:var(--shadow-pill);transition:box-shadow var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard);width:100%}.search-form__input::placeholder{color:var(--color-on-surface-quiet);font-family:var(--font-serif);font-style:italic}.search-form__input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-pill),0 0 0 2px var(--color-surface),0 0 0 4px color-mix(in srgb,var(--color-primary) 30%,transparent)}.search-form__clear{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--body-text-muted);cursor:pointer;padding:var(--spacing-xs);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;opacity:.6}.search-form__clear:hover{opacity:1;background:var(--surface-medium-contrast)}.search-form__clear svg{width:16px;height:16px}.search-suggestions{position:absolute;top:calc(100% + var(--space-xs));left:0;right:0;background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-floating);z-index:1000;max-height:300px;overflow-y:auto}.search-suggestion{display:block;width:100%;padding:var(--spacing-md);background:none;border:none;color:var(--body-text);text-align:left;cursor:pointer;transition:background-color .2s ease;font-size:var(--font-size-sm);border-bottom:1px solid var(--line-low-contrast)}.search-suggestion:last-child{border-bottom:none}.search-suggestion:hover{background:var(--surface-low-contrast)}.search-suggestion:focus{outline:none;background:var(--surface-low-contrast)}.search-suggestion--selected{background:var(--surface-low-contrast);color:var(--color-action)}.search-suggestion--search-all{font-style:italic;color:var(--color-action);border-top:1px solid var(--line-low-contrast);margin-top:0}.search-suggestion--search-all:hover,.search-suggestion--search-all.search-suggestion--selected{background:var(--color-action-background)}.search-mode-indicator{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-action-background);border:1px solid var(--color-action);border-radius:8px;font-size:var(--font-size-sm)}.search-mode-indicator__text{color:var(--body-text);flex:1}.search-mode-indicator__clear{background:none;border:none;color:var(--color-action);text-decoration:underline;cursor:pointer;font-size:var(--font-size-sm);padding:0}.search-mode-indicator__clear:hover{opacity:.8}@media (max-width: 768px){.search-mode-indicator{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}}.loading-more-container{text-align:center;padding:var(--spacing-lg)}.loading-more-container .loading-spinner{margin:0 auto var(--spacing-md)}.loading-more-container p{color:var(--body-text-muted);font-size:var(--font-size-sm);margin:0}.end-results-container{text-align:center;padding:var(--spacing-lg)}.end-results-container p{margin:0;font-size:var(--font-size-sm)}.hr{border:0;border-top:1px dashed var(--line-medium-contrast);margin:var(--spacing-sm) 0}.hr--light{border-color:var(--line-low-contrast)}.hr--dark{border-color:var(--line-medium-contrast)}.button{display:inline-flex;align-items:center;justify-content:center;padding:12px var(--space-md);border-radius:var(--radius-button);font-family:var(--font-sans);font-size:var(--type-body-size);font-weight:500;line-height:1.2;cursor:pointer;text-decoration:none;border:1px solid transparent;background-color:var(--color-primary);color:var(--color-on-primary);transition:background-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard);font-variant-emoji:text}.button:hover{background-color:color-mix(in srgb,var(--color-primary) 88%,var(--color-on-primary))}.button:active{background-color:color-mix(in srgb,var(--color-primary) 80%,var(--color-on-primary))}.button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.button--accent{background-color:var(--color-tertiary);color:var(--color-on-tertiary)}.button--accent:hover{background-color:color-mix(in srgb,var(--color-tertiary) 88%,var(--color-on-tertiary))}.button--accent:active{background-color:color-mix(in srgb,var(--color-tertiary) 80%,var(--color-on-tertiary))}.button--accent:focus-visible{outline-color:var(--color-tertiary)}.button--secondary{background-color:var(--color-surface);color:var(--color-on-surface);border-color:var(--color-rule);box-shadow:var(--shadow-card)}.button--secondary:hover{background-color:color-mix(in srgb,var(--color-surface) 94%,var(--color-on-surface));border-color:color-mix(in srgb,var(--color-on-surface) 18%,var(--color-rule))}.button--secondary:focus-visible{outline-color:var(--color-primary)}.button--ghost{background-color:transparent;color:var(--color-on-surface);border-color:var(--color-rule)}.button--ghost:hover{background-color:color-mix(in srgb,var(--color-on-surface) 6%,transparent)}.button--ghost:focus-visible{outline-color:var(--color-primary)}.button--meta{background-color:var(--color-surface);color:var(--color-tertiary);border-color:var(--color-rule);gap:var(--space-sm);font-family:var(--font-sans);font-size:var(--type-meta-size);font-weight:var(--type-meta-weight);letter-spacing:var(--type-meta-letter-spacing);text-transform:var(--type-meta-transform);padding:14px var(--space-lg)}.button--meta .button__icon{margin-right:0}.button--meta:hover{background-color:color-mix(in srgb,var(--color-tertiary) 8%,transparent)}.button--meta:active{background-color:color-mix(in srgb,var(--color-tertiary) 14%,transparent)}.button--meta:focus-visible{outline-color:var(--color-tertiary)}.button--tertiary{background-color:transparent;color:var(--color-tertiary);border-color:transparent;padding:var(--space-xs) var(--space-sm)}.button--tertiary:hover{background-color:transparent;text-decoration:underline}.button--tertiary:focus-visible{outline-color:var(--color-tertiary)}.button--small{font-size:var(--type-meta-size);padding:var(--space-xs) var(--space-sm)}.button--large{font-size:var(--type-control-size);padding:var(--space-md) var(--space-lg)}.button--danger{background-color:var(--color-surface);color:var(--color-danger, #c0392b);border-color:var(--color-rule);box-shadow:var(--shadow-card)}.button--danger:hover{background-color:color-mix(in srgb,var(--color-danger, #c0392b) 8%,var(--color-surface));border-color:color-mix(in srgb,var(--color-danger, #c0392b) 40%,var(--color-rule))}.button--danger:active{background-color:color-mix(in srgb,var(--color-danger, #c0392b) 14%,var(--color-surface))}.button--danger:focus-visible{outline-color:var(--color-danger, #c0392b)}.button:disabled,.button--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.button__icon{margin-right:var(--space-xs);vertical-align:middle}@media (max-width: 768px){.button{width:100%}.button--inline,.button--meta{width:auto}}.button--inline{padding-left:0;padding-right:0}.input{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-rule);border-radius:var(--radius-button);font-family:var(--font-sans);font-size:var(--type-control-size);line-height:var(--type-control-line-height);background-color:color-mix(in srgb,var(--color-surface) 70%,var(--color-surface-alt));color:var(--color-on-surface);transition:background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}.input::placeholder{color:var(--color-on-surface-quiet)}.input:hover{border-color:color-mix(in srgb,var(--color-on-surface) 20%,var(--color-rule))}.input:focus{outline:0;background-color:var(--color-surface);border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 18%,transparent)}.input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-color:var(--color-primary)}.input--error{border-color:var(--color-danger, #c0392b)}.input--warning{border-color:var(--color-tertiary)}.input--success{border-color:var(--color-accent)}.input--textarea{resize:vertical;min-height:120px;font-family:var(--font-sans)}.input--small{padding:var(--space-xs) var(--space-sm);font-size:var(--type-body-size)}.input--large{padding:var(--space-md) var(--space-lg);font-size:var(--type-item-size)}.input--fixed-width{width:400px}.input:disabled{opacity:.55;cursor:not-allowed;background-color:var(--color-surface-alt)}.illustration{width:128px;height:128px;background-size:contain;background-repeat:no-repeat;background-position:center;margin:auto;transition:opacity .3s ease-in-out}.illustration img{width:100%;height:100%;object-fit:contain}.illustration--placeholder{background:var(--line-low-contrast);border-radius:50%;display:flex;align-items:center;justify-content:center}.illustration--placeholder svg{width:60px;height:60px;color:var(--body-text-muted)}.illustration--placeholder-success svg{color:var(--color-success)}.illustration--success{display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-in-out}.illustration--success svg{width:100%;height:100%;fill:var(--color-accent)}.illustration--failure{width:64px;height:64px;margin:var(--spacing-xl) auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-in-out}.illustration--failure svg{width:100%;height:100%;fill:var(--color-danger)}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}:root .illustration--editing{background-image:url(/assets/editing-light-mode-CtnZ3ttD.gif)}:root .illustration--paring{background-image:url(/assets/paring-light-mode-CFU-l4fp.gif)}:root[data-mode=dark] .illustration--editing{background-image:url(/assets/editing-geU-deup.gif)}:root[data-mode=dark] .illustration--paring{background-image:url(/assets/paring-Dhgnas4g.gif)}@media (prefers-color-scheme: dark){:root:not([data-mode=light]) .illustration--editing{background-image:url(/assets/editing-geU-deup.gif)}:root:not([data-mode=light]) .illustration--paring{background-image:url(/assets/paring-Dhgnas4g.gif)}}.button-row{display:flex;gap:var(--spacing-md);justify-content:flex-end;flex-wrap:wrap}.button-row--center{justify-content:center}.button-row--left{justify-content:flex-start}@media (max-width: 768px){.button-row--mobile-stack{flex-direction:column;align-items:stretch}.button-row--mobile-stack .button{width:100%}}.button-row--tight{gap:var(--spacing-sm)}.button-row--loose{gap:var(--spacing-lg)}.button-row__spacer{flex-grow:1}.link{color:var(--color-action);text-decoration:underline;transition:color .2s ease}.link:hover{color:var(--color-action);opacity:.8}.link:focus{outline:2px solid var(--color-action);outline-offset:2px}.link--muted{color:var(--body-text-muted)}.link--muted:hover{color:var(--color-action);opacity:1}.link--small{font-size:.875rem}.link--block{display:inline-block}.link--external:after{content:" ↗"}.text-input{border-radius:4px;background-color:var(--surface-low-contrast);border:2px solid transparent;padding:var(--spacing-md) var(--spacing-lg);color:var(--body-text);transition:all .3s ease-out;width:100%;font-size:var(--font-size-sm)}.text-input::placeholder{color:var(--body-text-muted)}.text-input:focus{outline:none;border-color:var(--color-action);background-color:var(--surface-medium-contrast)}.status-message{font-size:var(--font-size-md)}.status-message p{margin:0;opacity:0;transform:translateY(10px);animation:fadeInUp .3s ease-out forwards}.wake-lock-status{background:#ff6a001a;border-left:3px solid var(--orange);padding:8px 12px;border-radius:4px}.wake-lock-status small{color:var(--orange);font-weight:500}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hatch-border{position:relative;padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-sm) var(--spacing-lg);background-color:var(--body-bg);border:8px solid transparent;background-clip:padding-box;border-image:repeating-linear-gradient(45deg,var(--line-medium-contrast) 0,var(--line-medium-contrast) 1px,transparent 1px,transparent 4px) 8}.modal{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-lg)}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes modalOverlayFadeIn{0%{opacity:0}to{opacity:1}}.modal__overlay{position:absolute;inset:0;background-color:color-mix(in srgb,var(--color-on-surface) 35%,transparent);backdrop-filter:blur(14px) saturate(120%);-webkit-backdrop-filter:blur(14px) saturate(120%);animation:modalOverlayFadeIn .25s var(--ease-standard)}.modal__content{position:relative;background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:2px;padding:var(--spacing-xxl) var(--spacing-xl) var(--space-lg);max-width:560px;width:100%;box-shadow:0 1px #0c2a4a0a,0 24px 60px #0c2a4a2e;animation:modalFadeIn .3s var(--ease-emphasized);color:var(--color-on-surface);touch-action:manipulation;-webkit-touch-callout:none}.modal__content h2{font-family:var(--font-serif);font-size:clamp(28px,2vw + 18px,36px);font-weight:500;line-height:1.08;letter-spacing:-.4px;color:var(--color-on-surface);margin:0 0 var(--space-md)}.modal__content h3{font-family:var(--font-serif);font-size:var(--type-h2-size);font-weight:500;line-height:1.2;color:var(--color-on-surface);margin:0 0 var(--space-sm)}.modal__content>p{font-family:var(--font-serif);font-style:italic;font-size:var(--type-item-size);font-weight:400;line-height:1.4;color:var(--color-on-surface-muted);margin:0 0 var(--space-md)}.modal__content ul{list-style-type:none;padding-left:0;margin:0 0 var(--space-lg)}.modal__content ul li{color:var(--color-on-surface-muted);padding:var(--space-xs) 0;font-size:var(--type-body-size);line-height:1.5}.modal__content ul li:before{content:"•";color:var(--color-tertiary);font-weight:700;display:inline-block;width:1em;margin-left:-1em}.modal__fixed-height{height:300px;overflow-y:auto;margin-top:var(--space-md);margin-bottom:var(--space-md);scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.modal__hint-content{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm)}.modal__actions{display:flex;justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-rule)}.modal__actions .button{min-width:100px}.modal__actions .button--danger{margin-left:auto}.job-status>p{margin:var(--space-md) 0}.job-status .error-message,.job-status .success-message{margin-top:var(--space-lg)}.job-status .error-message p,.job-status .success-message p{color:var(--color-on-surface)}@media (max-width: 640px){.modal{padding:var(--space-sm)}.modal__content{padding:var(--spacing-xl) var(--space-lg) var(--space-md)}.modal__actions{flex-direction:column;gap:var(--space-sm)}.modal__actions .button{width:100%}}@media (prefers-reduced-motion: reduce){.modal__content,.modal__overlay{animation-duration:0ms}}.changelog{max-width:800px}.changelog__day{margin-bottom:var(--spacing-lg)}.changelog__day:last-child{margin-bottom:0}.changelog__date{color:var(--body-text);font-size:var(--font-size-md);margin:0 0 var(--spacing-sm) 0;font-weight:600;font-family:var(--heading-font)}.changelog__entry{margin-bottom:var(--spacing-sm);border:1px solid var(--line-low-contrast);border-radius:8px;overflow:hidden;transition:all .3s ease}.changelog__entry:last-child{margin-bottom:0}.changelog__entry:hover{border-color:var(--line-medium-contrast)}.changelog__header{width:100%;padding:var(--spacing-md);background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:inherit;transition:all .3s ease}.changelog__header:hover{background-color:var(--surface-low-contrast)}.changelog__header--open{border-bottom:1px solid var(--line-low-contrast)}.changelog__header--open .changelog__chevron{transform:rotate(180deg)}.changelog__header-content{text-align:left}.changelog__title{color:var(--body-text);font-size:var(--font-size-sm);margin:0;font-weight:500}.changelog__chevron{color:var(--body-text-muted);transition:transform .3s ease;flex-shrink:0;margin-left:var(--spacing-md);width:20px;height:20px}.changelog__content{padding:var(--spacing-md);background-color:var(--surface-low-contrast)}.changelog__content ul{list-style:none;padding-left:0;margin:0}.changelog__content ul ul{margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs);padding-left:var(--spacing-lg)}.changelog__content li{color:var(--body-text-muted);margin-bottom:var(--spacing-xs);position:relative;padding-left:var(--spacing-md);font-size:var(--font-size-xs)}.changelog__content li:before{content:"•";position:absolute;left:0;color:var(--color-action)}.changelog__content li li:before{content:"◦"}.changelog__content li:last-child{margin-bottom:0}.changelog__content--enter{transition:all .3s ease}.changelog__content--enter-start{opacity:0;transform:translateY(-10px)}.changelog__content--enter-end{opacity:1;transform:translateY(0)}.changelog__content--leave{transition:all .2s ease}.changelog__content--leave-start{opacity:1;transform:translateY(0)}.changelog__content--leave-end{opacity:0;transform:translateY(-10px)}.footer{padding:var(--spacing-md) 0;margin-top:var(--spacing-xxxl);text-align:center}.footer__link{color:var(--text-muted);text-decoration:none;font-size:var(--text-xs);opacity:.7;transition:opacity .2s ease}.footer__link:hover{color:var(--text-muted);opacity:1;text-decoration:none}.mode-tabs{counter-reset:mode-tab;display:flex;align-items:stretch;border-top:1px solid var(--line-low-contrast);border-bottom:1px solid var(--line-low-contrast)}.mode-tab{counter-increment:mode-tab;flex:1;background:transparent;border:none;border-left:1px solid var(--line-low-contrast);padding:.875rem 1rem 1rem;cursor:pointer;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.4rem;color:var(--body-text-muted);font-family:var(--accent-font);font-variation-settings:var(--accent-font-variation-settings);font-weight:var(--accent-font-weight);font-size:var(--font-size-lg);line-height:1.1;text-align:center;text-wrap:balance;transition:color .2s ease}.mode-tab:first-child{border-left:none}.mode-tab:before{content:counter(mode-tab,decimal-leading-zero);display:block;font-family:var(--body-font);font-variation-settings:var(--body-font-variation-settings);font-weight:400;font-size:.7rem;letter-spacing:.35em;padding-left:.35em;color:var(--body-text-muted);opacity:.55;transition:color .25s ease,opacity .25s ease}.mode-tab:after{content:"";position:absolute;bottom:-1px;left:50%;width:50%;height:2px;background-color:var(--color-action);border-radius:2px;transform:translate(-50%) scaleX(0);transform-origin:center;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.mode-tab:hover:not(.mode-tab--active){color:var(--body-text)}.mode-tab:hover:not(.mode-tab--active):before{opacity:.8}.mode-tab--active{color:var(--body-text)}.mode-tab--active:before{color:var(--color-action);opacity:1}.mode-tab--active:after{transform:translate(-50%) scaleX(1)}.mode-tab:focus-visible{outline:2px solid var(--color-action);outline-offset:-4px}@media (max-width: 768px){.mode-tab{padding:.7rem .5rem .85rem;font-size:var(--font-size-sm);gap:.3rem}.mode-tab:before{font-size:.65rem;letter-spacing:.3em}.mode-tab:after{width:60%}}.file-upload-area{border:2px dashed var(--line-low-contrast);border-radius:16px;padding:3rem 2rem;text-align:center;background-color:var(--surface-low-contrast);transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:hidden}.file-upload-area:before{content:"";position:absolute;inset:0;background-color:#ffc05005;opacity:0;transition:opacity .3s ease}.file-upload-area:hover{border-color:var(--color-action);background-color:var(--surface-medium-contrast);transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.file-upload-area:hover:before{opacity:1}.file-upload-area:hover .file-upload-icon{transform:scale(1.05);color:var(--color-action)}.file-upload-area--dragover{border-color:var(--color-action);background-color:var(--surface-medium-contrast);transform:scale(1.02);box-shadow:0 12px 32px #ffc05033}.file-upload-area--dragover:before{opacity:1}.file-upload-area--dragover .file-upload-icon{transform:scale(1.2) rotate(5deg);color:var(--color-action)}.file-upload-area--dragover .file-upload-prompt p:first-child{color:var(--color-action);font-weight:600}.file-upload-prompt{color:var(--body-text-muted);position:relative;z-index:1}.file-upload-prompt p{margin:.75rem 0;font-size:var(--font-size-sm);line-height:1.5}.file-upload-prompt p:first-child{font-size:var(--font-size-md);color:var(--body-text);font-weight:500;transition:all .3s ease}.file-upload-icon{width:64px;height:64px;margin:0 auto 1.5rem;color:var(--body-text-muted);transition:all .3s cubic-bezier(.4,0,.2,1);filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.file-upload-button{background:none;border:none;color:var(--color-action);cursor:pointer;font-size:inherit;padding:.25rem .5rem;border-radius:4px;font-weight:600;transition:all .2s ease;position:relative}.file-upload-button:hover{color:var(--color-accent);background-color:#ffc0501a;transform:translateY(-1px)}.file-upload-button:focus{outline:2px solid var(--color-action);outline-offset:2px}.file-upload-hint{font-size:var(--font-size-xs);color:var(--body-text-muted);margin-top:1rem;opacity:.8}.file-selected-list{display:grid;gap:1rem;margin-top:1rem}.file-selected{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background-color:var(--surface-bg);border:1px solid var(--line-low-contrast);border-radius:12px;text-align:left;box-shadow:0 4px 12px #0000001a;transition:all .3s ease}.file-selected:hover{transform:translateY(-1px);box-shadow:0 6px 16px #00000026}.file-selected-icon{width:32px;height:32px;color:var(--color-action);margin-right:1rem;flex-shrink:0;background-color:#ffc0501a;border-radius:8px;padding:6px;box-shadow:0 2px 8px #ffc05033}.file-info{flex:1;min-width:0}.file-name{font-weight:600;margin:0 0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--body-text);font-size:var(--font-size-sm)}.file-size{font-size:var(--font-size-xs);color:var(--body-text-muted);margin:0;font-weight:500}.file-remove{background:none;border:none;color:var(--body-text-muted);cursor:pointer;font-size:1.25rem;padding:.5rem;margin-left:1rem;line-height:1;border-radius:8px;transition:all .2s ease;flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.file-remove:hover{background-color:var(--color-danger);color:#fff;transform:scale(1.1)}.file-remove:focus{outline:2px solid var(--color-danger);outline-offset:2px}.profile-form .form-group{margin-bottom:var(--spacing-lg)}.profile-form .form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--body-text);font-size:var(--font-size-sm)}.profile-form .form-control{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:2px solid transparent;border-radius:4px;font-family:inherit;font-size:var(--font-size-sm);line-height:1.5;transition:all .3s ease-out;background-color:var(--surface-low-contrast);color:var(--body-text);resize:vertical;min-height:120px}.profile-form .form-control::placeholder{color:var(--body-text-muted)}.profile-form .form-control:focus{outline:0;border-color:var(--color-action);background-color:var(--surface-medium-contrast)}.profile-form .form-control--error{border-color:var(--color-danger)}.profile-form .form-help{font-size:var(--font-size-xs);color:var(--body-text-muted);margin-top:var(--spacing-xs);display:flex;justify-content:space-between;align-items:center}.profile-form .character-count.text-warning{color:var(--color-action)}.profile-form .character-count.text-danger{color:var(--color-danger)}.profile-form .form-error{color:var(--color-danger);font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.profile-form .form-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.profile-card{border-radius:8px;margin-bottom:var(--spacing-lg)}.profile-card .card-header{padding:var(--spacing-xl) 0;border-bottom:1px solid var(--line-low-contrast)}.profile-card .card-header h3{margin-bottom:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:600;color:var(--body-text)}.profile-card .card-header p{margin-bottom:0;color:var(--body-text-muted);font-size:var(--font-size-sm)}.profile-card .card-body{padding:var(--spacing-xl) 0}.profile-alert{padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-md);border:1px solid transparent;border-radius:8px;font-size:var(--font-size-sm)}.profile-alert--success{color:var(--body-text);background-color:#82b2c81a;border-color:var(--color-accent)}.profile-alert--error{color:var(--body-text);background-color:#ff5c501a;border-color:var(--color-danger)}.profile-alert strong{font-weight:600}.profile-examples{background:var(--surface-low-contrast);border:1px solid var(--line-low-contrast);border-radius:8px;padding:var(--spacing-lg);margin-top:var(--spacing-lg)}.profile-examples h4{margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);font-weight:600;color:var(--body-text)}.profile-examples .example-item{margin-bottom:var(--spacing-sm);cursor:pointer;padding:var(--spacing-sm) var(--spacing-md);border-radius:4px;transition:all .3s ease-out;font-size:var(--font-size-xs);color:var(--body-text-muted)}.profile-examples .example-item:hover{background-color:var(--surface-medium-contrast);color:var(--body-text)}.profile-examples .example-item strong{color:var(--color-action);font-weight:600}.profile-divider{border:0;height:1px;background:var(--line-low-contrast);margin:var(--spacing-lg) 0}.profile-account-info{color:var(--body-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg)}.profile-account-info span{color:var(--body-text);font-weight:500}@keyframes skeleton-pulse{0%{background-color:var(--skeleton-base)}50%{background-color:var(--skeleton-highlight)}to{background-color:var(--skeleton-base)}}.skeleton{animation:skeleton-pulse 1.5s ease-in-out infinite;background-color:var(--skeleton-base);border-radius:4px}.skeleton--title{height:2.5rem;width:60%;margin-bottom:var(--spacing-xs)}.skeleton--description{height:1.25rem;width:80%;margin-bottom:var(--spacing-xs)}.skeleton--description:last-child{width:45%}.skeleton--button{height:calc(var(--font-size-sm) * 1.2 + var(--spacing-md) * 2 + 3px);padding:var(--spacing-md) var(--spacing-lg);border-radius:2px;display:inline-flex;align-items:center;justify-content:center;min-width:120px;color:transparent;font-size:var(--font-size-sm);font-weight:500}.skeleton--button:first-child{width:auto}.skeleton--button:last-child{width:auto}@media (max-width: 768px){.skeleton--button{width:100%!important}}.skeleton--ingredient{height:1.5rem;width:100%;margin-bottom:var(--spacing-sm)}.skeleton--ingredient:nth-child(odd){width:85%}.skeleton--ingredient:nth-child(2n){width:70%}.skeleton--step{height:4rem;width:100%;margin-bottom:var(--spacing-md);border-radius:8px}.skeleton--step:nth-child(2n){height:3rem}.skeleton--step:nth-child(3n){height:5rem}.skeleton--back-link{height:1.25rem;width:8rem;margin-bottom:var(--spacing-xl)}.skeleton--recipe-title{height:var(--font-size-sm);width:85%;margin-bottom:0}.skeleton--recipe-title:nth-child(2n){width:70%}.skeleton--recipe-title:nth-child(3n){width:90%}.skeleton--recipe-title:nth-child(4n){width:75%}.skeleton--recipe-title:nth-child(5n){width:80%}.skeleton--recipe-title:nth-child(6n){width:65%}.skeleton-container--ingredients .skeleton--ingredient:nth-child(1){width:90%}.skeleton-container--ingredients .skeleton--ingredient:nth-child(2){width:75%}.skeleton-container--ingredients .skeleton--ingredient:nth-child(3){width:85%}.skeleton-container--ingredients .skeleton--ingredient:nth-child(4){width:60%}.skeleton-container--ingredients .skeleton--ingredient:nth-child(5){width:80%}.skeleton-container--ingredients .skeleton--ingredient:nth-child(6){width:70%}.skeleton-container--ingredients .skeleton--ingredient:nth-child(7){width:65%}.skeleton-container--ingredients .skeleton--ingredient:nth-child(8){width:85%}.skeleton-container--steps .skeleton--step:nth-child(1){height:3.5rem}.skeleton-container--steps .skeleton--step:nth-child(2){height:5rem}.skeleton-container--steps .skeleton--step:nth-child(3){height:4rem}.skeleton-container--steps .skeleton--step:nth-child(4){height:4.5rem}.skeleton-container--steps .skeleton--step:nth-child(5){height:3rem}.skeleton-container--steps .skeleton--step:nth-child(6){height:5.5rem}:root{--skeleton-base: color-mix(in srgb, var(--color-on-surface) 8%, transparent);--skeleton-highlight: color-mix(in srgb, var(--color-on-surface) 14%, transparent)}.meal-creation-controls{padding:var(--spacing-lg);background:var(--surface-low-contrast);border-radius:8px;border:1px solid var(--line-low-contrast)}.meal-creation-controls .meal-creation-intro{text-align:center}.meal-creation-controls .meal-selection-active .meal-selection-header{display:flex;flex-direction:column;gap:var(--spacing-lg)}.meal-creation-controls .meal-selection-active .meal-selection-header h3{margin:0;font-size:var(--font-size-md);font-weight:500;color:var(--body-text)}.meal-creation-controls .meal-selection-active .meal-selection-header .meal-selection-actions{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap}.meal-creation-controls .meal-selection-active .meal-selection-header .meal-selection-actions .selected-count{font-size:var(--font-size-sm);color:var(--body-text-muted);margin-right:auto}@media (min-width: 768px){.meal-creation-controls .meal-selection-active .meal-selection-header{flex-direction:row;align-items:center}.meal-creation-controls .meal-selection-active .meal-selection-header .meal-selection-actions{margin-left:auto}}.recipe-item .recipe-item-content--selectable{padding:var(--spacing-lg) 0;display:block;width:100%}.recipe-checkbox-simple{display:flex;align-items:center;gap:var(--spacing-md);cursor:pointer}.recipe-checkbox-simple input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-action)}.recipe-checkbox-simple .recipe-title{font-size:var(--font-size-sm);color:var(--body-text);font-weight:400}.selected-recipes-list{border:1px solid var(--line-low-contrast);border-radius:6px;padding:var(--spacing-md);background:var(--surface-low-contrast);max-height:120px;overflow-y:auto}.selected-recipes-list .selected-recipe-item{padding:var(--spacing-sm) 0;border-bottom:1px solid var(--line-low-contrast);font-size:var(--font-size-sm);color:var(--body-text)}.selected-recipes-list .selected-recipe-item:last-child{border-bottom:none}.job-status{text-align:center}.job-status .progress-bar{width:100%;height:8px;background:var(--surface-low-contrast);border-radius:4px;overflow:hidden;margin-bottom:var(--spacing-lg)}.job-status .progress-bar .progress-fill{height:100%;background:var(--color-action);transition:width .3s ease;border-radius:4px}.job-status p{margin:var(--spacing-lg) 0;color:var(--body-text)}.job-status .error-message{color:#ff6b6b;background:var(--surface-low-contrast);padding:var(--spacing-lg);border-radius:6px;margin-top:var(--spacing-lg)}.job-status .error-message p{margin:0 0 var(--spacing-lg) 0}.chip{padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-pill);background-color:var(--color-surface);color:var(--color-on-surface);font-family:var(--font-sans);font-size:var(--type-body-size);font-weight:500;border:1px solid var(--color-rule);display:inline-flex;align-items:center;gap:var(--space-sm);line-height:1.2}.chip:before{content:"";width:14px;height:14px;background-color:currentColor;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;flex-shrink:0;opacity:.7}.chip__label{font-weight:400;color:var(--color-on-surface-muted)}.chip__value{font-weight:600}.chip--time:before{-webkit-mask-image:var(--clock-icon);mask-image:var(--clock-icon)}.chip--servings:before{-webkit-mask-image:var(--servings-icon);mask-image:var(--servings-icon)}.chip--recipes:before{display:none}.chip--interactive{border-color:var(--color-tertiary);color:var(--color-tertiary);cursor:pointer;transition:background-color var(--motion-fast) var(--ease-standard)}.chip--interactive:before{-webkit-mask-image:var(--user-icon);mask-image:var(--user-icon);opacity:1}.chip--interactive:hover{background-color:color-mix(in srgb,var(--color-tertiary) 8%,transparent)}.chip--added:before,.chip--removed:before,.chip--modified:before{display:none}.chip--added{color:var(--color-accent);border-color:var(--color-accent);background-color:color-mix(in srgb,var(--color-accent) 10%,transparent)}.chip--removed{color:var(--color-danger, #c0392b);border-color:var(--color-danger, #c0392b);background-color:color-mix(in srgb,var(--color-danger, #c0392b) 10%,transparent)}.chip--modified{color:var(--color-tertiary);border-color:var(--color-tertiary);background-color:color-mix(in srgb,var(--color-tertiary) 8%,transparent)}:root{--clock-icon: url("data:image/svg+xml,%3Csvg viewBox='0 0 6.3499999 6.3500001' xmlns='http://www.w3.org/2000/svg'%3E%3Cg%3E%3Cpath d='m3.1762897.2638075c-1.604244 0-2.91248398 1.30824-2.91248398 2.912484s1.30823998 2.909901 2.91248398 2.909901c1.604243 0 2.9099-1.305657 2.9099-2.909901a.26458349.26458349 0 0 0 -.265617-.266134.26458349.26458349 0 0 0 -.26355.266134c0 1.31826-1.062473 2.380734-2.380733 2.380734-1.318261 0-2.38331698-1.062473-2.38331698-2.380734s1.06505598-2.383317 2.38331698-2.383317a.26458349.26458349 0 0 0 .26355-.26355.26458349.26458349 0 0 0 -.26355-.265617zm1.004073.198954c-.103283.001-.200816.06268-.242363.164331-.05577.135376.0086.290321.144178.345716.0031.0013.0051.003.0077.0041.135372.0573.291626-.0068.347782-.142627.056-.134835-.0079-.289556-.142627-.345716-.0038-.0016-.008-.0043-.01137-.0057-.03384-.01394-.06892-.0205-.103353-.02015zm.860929.572575c-.06973.000575-.13638.02856-.185518.07803-.103876.10342-.103876.271752 0 .375171.0022.0022.0035.0035.0057.0057.102879.104416.271212.105407.375171.0021.103876-.103419.103876-.271751 0-.375171-.0027-.0027-.005-.0051-.0077-.0077-.04961-.04995-.117177-.07797-.187583-.07803zm-1.865002.287321a.26458336.26458336 0 0 0 -.266134.265617v1.588017a.26460981.26460981 0 0 0 .146761.236161l1.058334.529167a.26458336.26458336 0 0 0 .355533-.118856.26458336.26458336 0 0 0-.118855-.355534l-.912089-.455269v-1.423686a.26458336.26458336 0 0 0 -.26355-.265617zm2.443262.568958c-.03464-.000201-.06989.0064-.10387.02067-.135851.05616-.19993.212411-.142627.347782.0013.0032.003.005.0041.0077.05539.135529.210341.200465.345716.144694.13553-.05539.200467-.21034.144694-.345715-.0015-.0036-.0028-.0066-.0041-.0098-.04154-.102456-.140005-.16476-.243913-.165362z' fill='black'/%3E%3C/g%3E%3C/svg%3E");--servings-icon: url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cg%3E%3Ccircle cx='256' cy='119.631' r='87' fill='black'/%3E%3Ccircle cx='432' cy='151.63' r='55' fill='black'/%3E%3Ccircle cx='80' cy='151.63' r='55' fill='black'/%3E%3Cpath d='m134.19 256.021c-21.65-17.738-41.257-15.39-66.29-15.39-37.44 0-67.9 30.28-67.9 67.49v109.21c0 16.16 13.19 29.3 29.41 29.3 70.026 0 61.59 1.267 61.59-3.02 0-77.386-9.166-134.137 43.19-187.59z' fill='black'/%3E%3Cpath d='m279.81 241.03c-43.724-3.647-81.729.042-114.51 27.1-54.857 43.94-44.3 103.103-44.3 175.48 0 19.149 15.58 35.02 35.02 35.02 211.082 0 219.483 6.809 232-20.91 4.105-9.374 2.98-6.395 2.98-96.07 0-71.226-61.673-120.62-111.19-120.62z' fill='black'/%3E%3Cpath d='m444.1 240.63c-25.17 0-44.669-2.324-66.29 15.39 51.965 53.056 43.19 105.935 43.19 187.59 0 4.314-7.003 3.02 60.54 3.02 16.8 0 30.46-13.61 30.46-30.34v-108.17c0-37.21-30.46-67.49-67.9-67.49z' fill='black'/%3E%3C/g%3E%3C/svg%3E");--user-icon: url("data:image/svg+xml,%3Csvg viewBox='0 0 460.8 460.8' xmlns='http://www.w3.org/2000/svg'%3E%3Cg%3E%3Cpath d='M230.432,239.282c65.829,0,119.641-53.812,119.641-119.641C350.073,53.812,296.261,0,230.432,0 S110.792,53.812,110.792,119.641S164.604,239.282,230.432,239.282z' fill='black'/%3E%3Cpath d='M435.755,334.89c-3.135-7.837-7.314-15.151-12.016-21.943c-24.033-35.527-61.126-59.037-102.922-64.784 c-5.224-0.522-10.971,0.522-15.151,3.657c-21.943,16.196-48.065,24.555-75.233,24.555s-53.29-8.359-75.233-24.555 c-4.18-3.135-9.927-4.702-15.151-3.657c-41.796,5.747-79.412,29.257-102.922,64.784c-4.702,6.792-8.882,14.629-12.016,21.943 c-1.567,3.135-1.045,6.792,0.522,9.927c4.18,7.314,9.404,14.629,14.106,20.898c7.314,9.927,15.151,18.808,24.033,27.167 c7.314,7.314,15.673,14.106,24.033,20.898c41.273,30.825,90.906,47.02,142.106,47.02s100.833-16.196,142.106-47.02 c8.359-6.269,16.718-13.584,24.033-20.898c8.359-8.359,16.718-17.241,24.033-27.167c5.224-6.792,9.927-13.584,14.106-20.898 C436.8,341.682,437.322,338.024,435.755,334.89z' fill='black'/%3E%3C/g%3E%3C/svg%3E")}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--spacing-xs);border-radius:10px;font-size:var(--font-size-xs);font-weight:600;line-height:1;white-space:nowrap;user-select:none;background-color:var(--accent-color);color:#fff}.badge--inverse{background-color:var(--surface-bg);color:var(--body-text);border:1px solid var(--line-low-contrast)}.collapsible-panel{border-radius:var(--border-radius-lg);overflow:hidden;background-color:var(--surface-low-contrast);transition:all .3s ease;border:1px solid var(--line-extra-low-contrast);padding:var(--spacing-md)}.collapsible-panel__header{width:100%;padding:var(--spacing-md);background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:inherit;transition:all .3s ease}.collapsible-panel__header:hover{background-color:var(--surface-low-contrast)}.collapsible-panel__header--open .collapsible-panel__chevron{transform:rotate(180deg)}.collapsible-panel__header-content{text-align:left}.collapsible-panel__title{color:var(--body-text);font-size:var(--font-size-md);margin:0;font-weight:500}.collapsible-panel__chevron{color:var(--body-text-muted);transition:transform .3s ease;flex-shrink:0;margin-left:var(--spacing-md);width:20px;height:20px}.collapsible-panel__content{padding:var(--spacing-md)}.collapsible-panel__content--text{color:var(--body-text-muted);font-size:var(--font-size-xs);line-height:1.5;white-space:pre-line}.collapsible-panel__content h3{font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm);color:var(--body-text);font-weight:500}.collapsible-panel__content ul{list-style:none;padding-left:0;margin:0 0 var(--spacing-lg) 0}.collapsible-panel__content ul ul{margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs);padding-left:var(--spacing-lg)}.collapsible-panel__content ol{padding-left:var(--spacing-lg);margin:0}.collapsible-panel__content ol li{margin-bottom:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--body-text-muted);line-height:1.5}.collapsible-panel__content ol li:last-child{margin-bottom:0}.collapsible-panel__content li{color:var(--body-text-muted);margin-bottom:var(--spacing-sm);position:relative;padding-left:var(--spacing-md);font-size:var(--font-size-xs)}.collapsible-panel__content li:before{content:"•";position:absolute;left:0;color:var(--color-action)}.collapsible-panel__content li li:before{content:"◦"}.collapsible-panel__content li:last-child{margin-bottom:0}.collapsible-panel__content--enter{transition:all .3s ease}.collapsible-panel__content--enter-start{opacity:0;transform:translateY(-10px)}.collapsible-panel__content--enter-end{opacity:1;transform:translateY(0)}.collapsible-panel__content--leave{transition:all .2s ease}.collapsible-panel__content--leave-start{opacity:1;transform:translateY(0)}.collapsible-panel__content--leave-end{opacity:0;transform:translateY(-10px)}.recipe-selector{list-style:none;padding:0;margin:0}.recipe-selector__item{border-bottom:1px solid var(--line-low-contrast);transition:background-color .2s ease}.recipe-selector__item:hover{background-color:var(--surface-low-contrast)}.recipe-selector__item--selected{background-color:#82b2c81a;border-left:3px solid var(--color-accent)}.recipe-selector__item__label{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-lg);cursor:pointer;user-select:none}.recipe-selector__item__label input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent);margin:0}.recipe-selector__item__label__text{flex:1;font-size:var(--font-size-sm);color:var(--body-text);font-weight:400}.recipe-selector__item--selected .recipe-selector__item__label .recipe-selector__item__text{color:var(--color-accent);font-weight:500}.picker-list{list-style:none;padding:0;margin:0}.picker-list__item{border-bottom:1px solid var(--line-low-contrast);transition:background-color .2s ease}.picker-list__item:before{content:none!important}.picker-list__item:hover{background-color:var(--surface-low-contrast)}.picker-list__item:last-child{border-bottom:none}.picker-list__button{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);width:100%;background:none;border:none;cursor:pointer;user-select:none;text-align:left;color:inherit;font-family:inherit}.picker-list__button:focus-visible{outline:2px solid var(--color-action);outline-offset:-2px}.picker-list__text{flex:1;font-size:var(--font-size-sm);color:var(--body-text);font-weight:400;display:flex;align-items:center;gap:var(--spacing-sm)}.picker-list__text:before{content:"";flex-shrink:0;width:20px;height:20px;background-color:currentColor;-webkit-mask:var(--recipe-item-icon) no-repeat center/contain;mask:var(--recipe-item-icon) no-repeat center/contain;opacity:.55;transition:opacity var(--motion-fast) var(--ease-standard)}.picker-list__item:hover .picker-list__text:before{opacity:1}.picker-list__item--meal .picker-list__text:before{-webkit-mask-image:var(--recipe-item-icon-meal);mask-image:var(--recipe-item-icon-meal)}.fixed-button-row{position:fixed;bottom:0;left:0;right:0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line-low-contrast);padding:var(--spacing-lg);z-index:100;box-shadow:0 -8px 32px #00000040;background:var(--body-bg)}.fixed-button-row:before{content:"";position:absolute;inset:0;background:var(--surface-medium-contrast);z-index:-1}.fixed-button-row__content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg)}.fixed-button-row__info{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm)}.fixed-button-row__count{font-weight:600;color:var(--color-action);font-size:var(--font-size-md)}.fixed-button-row__text{color:var(--body-text)}.fixed-button-row__actions{display:flex;align-items:center;gap:var(--spacing-md)}.fixed-button-row~.main{padding-bottom:calc(80px + var(--spacing-lg))}body:has(.fixed-button-row) .main{padding-bottom:calc(80px + var(--spacing-lg))}.recipe-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.recipe-card-compact{display:block;padding:var(--spacing-md);border:1px solid var(--line-extra-low-contrast);border-radius:var(--border-radius-lg);background-color:var(--surface-low-contrast);color:var(--body-text);text-decoration:none;transition:background-color .3s ease}.recipe-card-compact:hover{background-color:var(--surface-medium-contrast);text-decoration:none}.recipe-card-compact__title{margin-bottom:var(--spacing-md);font-size:var(--font-size-base);font-weight:400;color:inherit}.recipe-card-compact__meta{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.icon-toggle{display:inline-flex;align-items:center;gap:var(--spacing-sm);border:none;background:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);cursor:pointer;transition:all .2s ease;color:var(--body-text-muted);font-size:var(--font-size-sm);font-weight:500}.icon-toggle:hover{background-color:var(--surface-low-contrast);color:var(--body-text)}.icon-toggle--active,.icon-toggle--active:hover{color:var(--color-action)}.icon-toggle__icon{width:32px;height:32px;flex-shrink:0;transition:opacity .2s ease}.icon-toggle__text{user-select:none;line-height:1}.icon-toggle--bookmark,.icon-toggle--bookmark:hover{color:var(--color-action)}.icon-toggle--bookmark .icon-toggle__icon{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.2"><path d="M19 21V5a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v16l7-3 7 3z"/></svg>') no-repeat center;mask-size:contain;background-color:var(--color-action)}.icon-toggle--bookmark.icon-toggle--active .icon-toggle__icon{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="currentColor" stroke-width="1.2"><path d="M19 21V5a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v16l7-3 7 3z"/></svg>') no-repeat center;mask-size:contain;background-color:var(--color-action)}.icon-button{display:inline-flex;align-items:center;gap:var(--spacing-sm);border:none;background:none;padding:0;cursor:pointer;text-decoration:none;color:inherit;font-family:inherit;transition:transform .2s ease}.icon-button:hover .icon-button__icon{background-color:var(--surface-low-contrast)}.icon-button:focus{outline:none}.icon-button:focus-visible .icon-button__icon{outline:2px solid var(--color-action);outline-offset:2px}.icon-button__label{font-size:var(--font-size-sm);font-weight:500;color:var(--body-text);user-select:none;white-space:nowrap}.icon-button__icon{width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm);border-radius:50%;transition:background-color .2s ease}.icon-button__icon svg{width:100%;height:100%;fill:var(--color-action)}.icon-button--small .icon-button__icon{width:32px;height:32px;padding:var(--spacing-sm)}.icon-button--danger .icon-button__icon svg{fill:var(--color-danger)}.icon-button--danger:hover .icon-button__icon{background-color:color-mix(in srgb,var(--color-danger) 10%,transparent)}.icon-button--danger:focus-visible .icon-button__icon{outline-color:var(--color-danger)}.ribbon-menu{display:flex;align-items:stretch;gap:var(--space-sm);flex-wrap:nowrap;padding:var(--space-xs) 0;overflow-x:auto;overflow-y:visible;scrollbar-width:none;-ms-overflow-style:none;--ribbon-fade-left: 0px;--ribbon-fade-right: 32px;transition:--ribbon-fade-left var(--motion-fast) var(--ease-standard),--ribbon-fade-right var(--motion-fast) var(--ease-standard);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 var(--ribbon-fade-left),#000 calc(100% - var(--ribbon-fade-right)),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 var(--ribbon-fade-left),#000 calc(100% - var(--ribbon-fade-right)),transparent 100%)}.ribbon-menu::-webkit-scrollbar{display:none}@property --ribbon-fade-left{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --ribbon-fade-right{syntax: "<length>"; inherits: false; initial-value: 0px;}.ribbon-menu__item{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);flex-shrink:0;width:112px;height:108px;padding:var(--space-sm);background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);color:var(--color-on-surface);text-decoration:none;cursor:pointer;user-select:none;transition:box-shadow var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard);-webkit-appearance:none;-moz-appearance:none;appearance:none}.ribbon-menu__item:before{content:"";position:absolute;inset:5px;border:1px dashed color-mix(in srgb,var(--color-on-surface) 18%,transparent);border-radius:calc(var(--radius-card) - 5px);pointer-events:none}.ribbon-menu__item:hover:not(:disabled){box-shadow:var(--shadow-pill);border-color:color-mix(in srgb,var(--color-tertiary) 35%,var(--color-rule))}.ribbon-menu__item:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ribbon-menu__item:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.ribbon-menu__icon{width:24px;height:24px;flex-shrink:0;mask-size:contain;mask-repeat:no-repeat;mask-position:center;background-color:var(--color-tertiary);transition:opacity var(--motion-fast) var(--ease-standard)}.ribbon-menu__icon>svg{width:100%;height:100%;fill:currentColor}.ribbon-menu__label{font-family:var(--font-serif);font-style:italic;font-size:16px;font-weight:400;line-height:1.1;text-align:center;color:var(--color-on-surface);max-width:100%;margin-top:var(--space-xxs, 2px)}.ribbon-menu__item--active{border-color:var(--color-tertiary)}.ribbon-menu__item--active:before{border-color:color-mix(in srgb,var(--color-tertiary) 40%,transparent)}.ribbon-menu__item--active:hover:not(:disabled){border-color:var(--color-tertiary)}.ribbon-menu__icon--modify{mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="m440.403 348.909v19.295c0 79.013-64.282 143.295-143.296 143.295h-146.578c-79.014 0-143.296-64.282-143.296-143.295v-224.38c0-79.029 64.283-143.324 143.296-143.324h146.578c32.841 0 64.986 11.507 90.513 32.401 25.148 20.584 42.748 49.254 49.558 80.73 1.457 6.735-2.822 13.375-9.556 14.832-6.735 1.465-13.375-2.821-14.833-9.556-11.715-54.151-60.367-93.454-115.683-93.454h-146.577c-65.254 0-118.343 53.101-118.343 118.371v224.38c0 65.254 53.089 118.342 118.343 118.342h146.578c65.254 0 118.343-53.088 118.343-118.342v-19.295c0-6.891 5.586-12.477 12.477-12.477 6.89 0 12.476 5.586 12.476 12.477zm-76.952-182.734c0-6.891-5.586-12.477-12.477-12.477h-240.194c-6.891 0-12.476 5.586-12.476 12.477s5.586 12.477 12.476 12.477h240.194c6.89-.001 12.477-5.586 12.477-12.477zm-89.514 89.825c0-6.891-5.586-12.477-12.477-12.477h-150.68c-6.891 0-12.476 5.586-12.476 12.477s5.586 12.477 12.476 12.477h150.68c6.89 0 12.477-5.586 12.477-12.477zm-163.157 77.349c-6.891 0-12.476 5.586-12.476 12.477s5.586 12.477 12.476 12.477h103.009c6.89 0 12.477-5.586 12.477-12.477s-5.586-12.477-12.477-12.477zm393.987-126.764c0 17.209-6.666 33.341-18.769 45.427l-139.894 139.895c-1.59 1.591-3.581 2.721-5.761 3.274l-98.03 24.811c-1.014.256-2.041.381-3.061.381-3.268 0-6.454-1.286-8.823-3.655-3.108-3.107-4.351-7.622-3.273-11.883l24.812-98.03c.552-2.18 1.683-4.171 3.273-5.761l139.901-139.901c12.08-12.096 28.212-18.761 45.42-18.761 17.205 0 33.343 6.663 45.442 18.761 12.099 12.1 18.763 28.238 18.763 45.442zm-248.285 184.081 56.448-14.286-42.161-42.161zm223.332-184.081c0-10.539-4.068-20.411-11.454-27.797s-17.258-11.453-27.797-11.453c-10.536 0-20.398 4.065-27.77 11.446l-131.086 131.086 55.574 55.574 131.078-131.08c.002-.002.004-.004.006-.006 7.383-7.371 11.449-17.233 11.449-27.77z"/></svg>')}.ribbon-menu__icon--share{mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 16.933333 16.933333" xmlns="http://www.w3.org/2000/svg"><g transform="translate(0 -280.067)"><path d="m60.029297 2a2.0002 2.0002 0 0 0 -.701172.1171875l-55.9980469 19.9980465a2.0002 2.0002 0 0 0 .1171875 3.808594l26.9375004 7.691406 7.691406 26.9375a2.0002 2.0002 0 0 0 3.808594.117188l19.998046-55.998047a2.0002 2.0002 0 0 0 -1.853515-2.671875zm-3.328125 5.2988281-16.492188 46.1679689-5.964843-20.878906 7.167968-7.173829a2.0002 2.0002 0 0 0 -1.453125-3.43164 2.0002 2.0002 0 0 0 -1.373046.605469l-7.169922 7.169921-20.882813-5.966796zm-40.72461 26.6777339a2.0002 2.0002 0 0 0 -.017578.001954 2.0002 2.0002 0 0 0 -1.373046.605468l-4 4a2.0002 2.0002 0 1 0 2.826171 2.828125l4.001953-3.99414a2.0002 2.0002 0 0 0 -1.4375-3.441407zm7.984376 4.001954a2.0002 2.0002 0 0 0 -1.373047.605468l-8.001953 8.001954a2.0002 2.0002 0 1 0 2.828124 2.828124l8.001954-8.001953a2.0002 2.0002 0 0 0 -1.455078-3.433593zm4.001953 8.001953a2.0002 2.0002 0 0 0 -1.38086.605469l-3.99414 4.001953a2.0002 2.0002 0 1 0 2.828125 2.826171l4-4a2.0002 2.0002 0 0 0 -1.453125-3.433593zm-15.962891 4.019531a1.9999999 1.9999999 0 0 0 -2 2 1.9999999 1.9999999 0 0 0 2 2 1.9999999 1.9999999 0 0 0 2-2 1.9999999 1.9999999 0 0 0 -2-2z" transform="matrix(.265 0 0 .265 0 280.067)"/></g></svg>')}.ribbon-menu__icon--external{mask-image:url('data:image/svg+xml;utf8,<svg viewBox="-2 -2 32 32" xmlns="http://www.w3.org/2000/svg"><g transform="translate(-298 -372)"><g fill="none" transform="matrix(2 0 0 2 298 372)"><g fill="rgb(0,0,0)"><path d="m1.5 0c-.3976341 0-.77938087.15828861-1.06054687.43945313-.28116452.281166-.43945313.66291277-.43945313 1.06054687v11c0 .397624.15821641.779364.43945313 1.060547.28113525.28108.66285877.439453 1.06054687.439453h11c.397678 0 .779395-.158301 1.060547-.439453s.439453-.662869.439453-1.060547v-4.5a.49999949.49999949 0 0 0 -.5-.5.49999949.49999949 0 0 0 -.5.5v4.5c0 .132721-.05264.259668-.146484.353516-.093848.093847-.220795.146484-.353516.146484h-11c-.1327514 0-.2595773-.052565-.3535156-.146484-.0938349-.093817-.1464844-.220741-.1464844-.353516v-11c0-.1328054.0525773-.259608.1464844-.3535156.0939076-.0939071.2207102-.1464844.3535156-.1464844h4.5a.49999949.49999949 0 0 0 .5-.5.49999949.49999949 0 0 0 -.5-.5z"/><path d="m10 0a.49999949.49999949 0 0 0 -.5.5.49999949.49999949 0 0 0 .5.5h3v3a.49999949.49999949 0 0 0 .5.5.49999949.49999949 0 0 0 .5-.5v-3.5a.50004949.50004949 0 0 0 -.5-.5z"/><path d="m13.5 0a.49999949.49999949 0 0 0 -.353516.14648437l-6.4999996 6.50000003a.49999949.49999949 0 0 0 0 .7070312.49999949.49999949 0 0 0 .7070312 0l6.5000004-6.49999997a.49999949.49999949 0 0 0 0-.70703126.49999949.49999949 0 0 0 -.353516-.14648437z"/></g></g></g></svg>')}.ribbon-menu__icon--add{mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg"><path d="m47.8 22.4-5.5 17.2c-.5 1.7-2.1 2.8-3.8 2.8h-34.5c-1.3 0-2.4-.6-3.2-1.6-1-1.3-.8-3.2-.8-2.4v-29.8c0-1.7 1.3-3 3-3h11c1.2 0 2.4.8 2.8 1.9l.9 2.5c.1.4.5.6.9.6h17.7c1.7 0 3 1.3 3 3v3.5h4.7c2.8 0 4.6 2.6 3.8 5.3zm-45.8 9.1 3.7-11.5c.5-1.7 2.1-2.8 3.8-2.8h27.9v-3.5c0-.5-.5-1-1-1h-17.7c-1.2 0-2.3-.8-2.8-1.9l-.9-2.5c-.1-.4-.5-.6-.9-.6h-11.1c-.6 0-1 .4-1 1zm42-12.3h-34.5c-.9 0-1.6.6-1.9 1.4-5.5 18-6.2 17.4-5.2 19 .4.5 1 .8 1.6.8h34.5c.8 0 1.6-.6 1.9-1.4l5.5-17.2c.4-1.5-.7-2.6-1.9-2.6z"/></svg>')}.ribbon-menu__icon--bookmark{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 3H7c-1.1 0-2 .9-2 2v16l7-3 7 3V5c0-1.1-.9-2-2-2z" fill="none" stroke="currentColor" stroke-width="2"/></svg>')}.ribbon-menu__icon--bookmark-filled{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 3H7c-1.1 0-2 .9-2 2v16l7-3 7 3V5c0-1.1-.9-2-2-2z"/></svg>')}.ribbon-menu__icon--search{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg>')}.ribbon-menu__icon--calendar{mask-image:url('data:image/svg+xml;utf8,<svg enable-background="new 0 0 512.694 512.694" viewBox="0 0 512.694 512.694" xmlns="http://www.w3.org/2000/svg"><g><path d="m44.812 117.009c2.834 2.999 6.776 4.696 10.9 4.696h.066c4.147-.019 8.103-1.753 10.925-4.793l74.928-80.688c5.638-6.07 5.286-15.562-.784-21.199-6.07-5.638-15.562-5.285-21.198.785l-64.034 68.956-27.976-29.596c-5.689-6.021-15.184-6.289-21.204-.597-6.021 5.691-6.288 15.185-.597 21.205z"/><path d="m44.812 296.93c2.834 2.998 6.776 4.696 10.9 4.696h.066c4.147-.019 8.103-1.753 10.925-4.793l74.929-80.688c5.637-6.071 5.285-15.562-.785-21.199-6.072-5.638-15.562-5.285-21.198.785l-64.033 68.956-27.977-29.596c-5.689-6.021-15.184-6.289-21.204-.597-6.021 5.691-6.288 15.185-.597 21.205z"/><path d="m75.971 350.232c-41.891 0-75.971 34.08-75.971 75.97 3.819 100.646 148.136 100.619 151.941-.001-.001-41.889-34.081-75.969-75.97-75.969zm0 121.941c-25.349 0-45.971-20.622-45.971-45.97 2.311-60.901 89.639-60.886 91.94.001 0 25.347-20.622 45.969-45.969 45.969z"/><path d="m196.339 52.255h301.45c19.881-.738 19.866-29.269 0-30h-301.45c-19.881.737-19.866 29.269 0 30z"/><path d="m196.339 110.467h203.963c19.881-.738 19.866-29.269 0-30h-203.963c-19.881.738-19.866 29.27 0 30z"/><path d="m497.789 202.176h-301.45c-19.881.738-19.866 29.269 0 30h301.45c19.881-.738 19.866-29.27 0-30z"/><path d="m196.339 290.388h203.963c19.881-.738 19.866-29.269 0-30h-203.963c-19.881.738-19.866 29.269 0 30z"/><path d="m497.789 382.096h-301.45c-19.881.738-19.866 29.269 0 30h301.45c19.881-.738 19.866-29.269 0-30z"/><path d="m400.302 440.309h-203.963c-19.881.738-19.866 29.269 0 30h203.963c19.881-.738 19.866-29.269 0-30z"/></g></svg>')}.ribbon-menu__icon--delete{mask-image:url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><g><g><path d="M436,60h-75V45c0-24.813-20.187-45-45-45H196c-24.813,0-45,20.187-45,45v15H76c-24.813,0-45,20.187-45,45c0,19.928,13.025,36.861,31.005,42.761L88.76,470.736C90.687,493.875,110.385,512,133.604,512h244.792c23.22,0,42.918-18.125,44.846-41.271l26.753-322.969C467.975,141.861,481,124.928,481,105C481,80.187,460.813,60,436,60z M181,45c0-8.271,6.729-15,15-15h120c8.271,0,15,6.729,15,15v15H181V45z M393.344,468.246c-0.643,7.712-7.208,13.754-14.948,13.754H133.604c-7.739,0-14.305-6.042-14.946-13.747L92.294,150h327.412L393.344,468.246z M436,120H76c-8.271,0-15-6.729-15-15s6.729-15,15-15h360c8.271,0,15,6.729,15,15S444.271,120,436,120z"/></g></g><g><g><path d="M195.971,436.071l-15-242c-0.513-8.269-7.67-14.558-15.899-14.043c-8.269,0.513-14.556,7.631-14.044,15.899l15,242.001c0.493,7.953,7.097,14.072,14.957,14.072C189.672,452,196.504,444.684,195.971,436.071z"/></g></g><g><g><path d="M256,180c-8.284,0-15,6.716-15,15v242c0,8.284,6.716,15,15,15s15-6.716,15-15V195C271,186.716,264.284,180,256,180z"/></g></g><g><g><path d="M346.927,180.029c-8.25-0.513-15.387,5.774-15.899,14.043l-15,242c-0.511,8.268,5.776,15.386,14.044,15.899c8.273,0.512,15.387-5.778,15.899-14.043l15-242C361.483,187.659,355.196,180.541,346.927,180.029z"/></g></g></svg>')}.ribbon-menu__icon--star{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z" fill="none" stroke="currentColor" stroke-width="1.25" stroke-linejoin="round"/></svg>')}.ribbon-menu__icon--star-filled{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"/></svg>')}.ribbon-menu__icon--cook{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"/></svg>')}.ribbon-menu__icon--print{mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><g><path d="m367.984 384.018h-219.969c-4.418 0-7.999 3.581-7.999 7.999s3.581 7.999 7.999 7.999h219.969c4.418 0 7.999-3.581 7.999-7.999s-3.581-7.999-7.999-7.999z"/><path d="m367.984 436.011h-219.969c-4.418 0-7.999 3.581-7.999 7.999s3.581 7.999 7.999 7.999h219.969c4.418 0 7.999-3.581 7.999-7.999s-3.581-7.999-7.999-7.999z"/><path d="m475.969 200.044h-55.992c0-7.387 0-71.737 0-75.692 0-4.185.505-8.73-.054-12.837-.408-2.999-1.94-4.767-3.99-6.816-2.471-2.471-94.896-94.742-100.472-100.452-1.092-1.119-2.11-2.23-3.473-3.037-2.768-1.638-191.155-1.137-195.503-1.137-.155 0-.31 0-.465 0-13.232 0-23.997 10.765-23.997 23.997v175.975h-55.992c-17.643 0-31.995 14.353-31.995 31.995v183.974c0 17.643 14.353 31.995 31.995 31.995h55.992v39.994c0 13.231 10.765 23.997 23.997 23.997h279.96c13.232 0 23.997-10.765 23.997-23.997v-39.994h55.992c17.643 0 31.995-14.353 31.995-31.995v-183.974c0-17.643-14.352-31.996-31.995-31.996zm-159.977-172.662 76.676 76.676h-68.678c-4.411 0-7.999-3.589-7.999-7.999v-68.677zm-207.971-3.313c0-4.41 3.588-7.999 7.999-7.999h183.974v79.989c0 13.231 10.765 23.997 23.997 23.997h79.989v79.989h-295.959zm287.959 471.933h-279.96c-4.411 0-7.999-3.589-7.999-7.999v-143.98h295.958v143.98c0 4.41-3.588 7.999-7.999 7.999zm95.987-79.988c0 8.821-7.176 15.998-15.998 15.998h-55.992v-87.988h27.996c4.418 0 7.999-3.581 7.999-7.999s-3.581-7.999-7.999-7.999h-383.946c-4.418 0-7.999 3.581-7.999 7.999s3.581 7.999 7.999 7.999h27.996v87.988h-55.992c-8.821 0-15.998-7.176-15.998-15.998v-183.974c0-8.821 7.177-15.998 15.998-15.998h439.938c8.821 0 15.998 7.177 15.998 15.998z"/><path d="m419.977 236.039c-19.848 0-35.995 16.147-35.995 35.995s16.147 35.995 35.995 35.995 35.995-16.147 35.995-35.995-16.147-35.995-35.995-35.995zm0 55.992c-11.026 0-19.997-8.971-19.997-19.997s8.971-19.997 19.997-19.997 19.997 8.971 19.997 19.997-8.971 19.997-19.997 19.997z"/><path d="m124.019 264.035h-59.992c-4.418 0-7.999 3.581-7.999 7.999s3.581 7.999 7.999 7.999h59.992c4.418 0 7.999-3.581 7.999-7.999s-3.581-7.999-7.999-7.999z"/></g></svg>')}.recipe-print-cta,.recipe-print-foot{display:none}@media print{@page{margin:16mm 15mm 18mm}html.recipe-page,html.recipe-page body{background:#fff!important;color:#0c2a4a!important;margin:0!important;padding:0!important}html.recipe-page body{opacity:1!important}html.recipe-page,html.recipe-page *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.recipe-page .recipe-print-foot{display:block;position:fixed;left:15mm;bottom:7mm;font-family:var(--font-serif);font-weight:600;font-size:10pt;letter-spacing:.3pt;color:#b34a3a!important}.recipe-page #nav-mount,.recipe-page .nav,.recipe-page .footer,.recipe-page .toast-container,.recipe-page #chat-drawer-mount,.recipe-page .chat-drawer,.recipe-page .fab,.recipe-page .modal,.recipe-page .skeleton,.recipe-page .skeleton-container,.recipe-page .print-hide{display:none!important}.recipe-page .container{max-width:100%!important;width:100%!important;margin:0!important;padding:0!important}.recipe-page .recipe-hero__title{font-family:var(--font-serif);font-weight:500;font-size:30pt;line-height:1.05;letter-spacing:-.4pt;color:#0c2a4a!important;margin:0 0 6pt}.recipe-page .recipe-hero__description{font-family:var(--font-serif);font-style:italic;font-size:13.5pt;line-height:1.35;color:#566b80!important;margin:0 0 8pt}.recipe-page .muted-text{font-family:var(--font-sans);font-size:9.5pt;color:#566b80!important;margin:0 0 10pt}.recipe-page .muted-text a,.recipe-page .muted-text .link{color:#b34a3a!important;text-decoration:none;font-weight:600}.recipe-page .recipe-metadata{display:flex;flex-wrap:wrap;gap:8pt;margin:0 0 14pt}.recipe-page .recipe-metadata .chip{display:inline-flex;align-items:baseline;gap:4pt;padding:2pt 8pt;border:.75pt solid #d7dcdd;border-radius:99px;background:none!important;font-family:var(--font-sans);font-size:9pt;color:#0c2a4a!important}.recipe-page .recipe-metadata .chip:before{display:none!important}.recipe-page .recipe-metadata .chip .chip__label{color:#566b80!important;text-transform:uppercase;letter-spacing:.5pt;font-size:7.5pt}.recipe-page .recipe-metadata .chip .chip__value{font-weight:600}.recipe-page .recipe-section-heading{font-family:var(--font-serif);font-weight:500;font-size:18pt;color:#0c2a4a!important;margin:16pt 0 8pt;padding-bottom:3pt;border-bottom:1pt solid #b34a3a;break-after:avoid}.recipe-page .hatch-border{border:.75pt solid #e3e6e2!important;border-radius:3pt;background:#f4f5f2!important;margin:0 0 8pt!important;padding:11pt 14pt!important}.recipe-page .hatch-border .row{display:flex!important;gap:22pt;margin:0}.recipe-page .hatch-border .col-12,.recipe-page .hatch-border [class*=col-md-6]{flex:1 1 0!important;width:50%!important;max-width:50%!important;padding:0!important}.recipe-page .ingredient-list{list-style:none;margin:0;padding:0}.recipe-page .ingredient-list__item,.recipe-page .ingredient{display:flex;align-items:flex-start;gap:7pt;font-family:var(--font-sans);font-size:9pt;line-height:1.3;color:#0c2a4a!important;margin:0!important;padding:3pt 0;break-inside:avoid}.recipe-page .ingredient__amount{flex:0 0 auto;min-width:40pt!important;margin-right:0!important;padding:2.5pt 6pt!important;border:.75pt solid #e0c4bd!important;border-radius:99px!important;background:none!important;font-size:8pt!important;font-weight:700;text-align:center;color:#b34a3a!important;white-space:nowrap}.recipe-page .ingredient__name{flex:1 1 auto}.recipe-page .ingredient--no-amount .ingredient__name{padding-left:46pt!important}.recipe-page ol.steps{list-style:none!important;counter-reset:print-step;margin:0;padding:0}.recipe-page .steps__item,.recipe-page .step{counter-increment:print-step;position:relative;display:block!important;margin:0 0 20pt!important;padding:0 0 0 30pt!important;border:none!important;background:none!important;box-shadow:none!important;break-inside:avoid;cursor:auto}.recipe-page .steps__item:before{content:counter(print-step);position:absolute;left:0;top:0;width:21pt;height:21pt;display:flex;align-items:center;justify-content:center;border:1pt solid #b34a3a;border-radius:99px;color:#b34a3a!important;background:none!important;font-family:var(--font-serif);font-weight:600;font-size:11pt;line-height:1;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}.recipe-page .step__text{font-family:var(--font-sans);font-size:9.5pt;line-height:1.5;color:#0c2a4a!important;margin:1pt 0 0}.recipe-page .step__meta{display:none!important}.recipe-page .step__ingredients{display:grid!important;grid-template-columns:1fr 1fr;column-gap:20pt;row-gap:3.5pt;margin:5pt 0 0!important;padding:5pt 0 0!important;border-top:.5pt dashed #d7dcdd}.recipe-page .step__ingredients .ingredient,.recipe-page .step__ingredients .ingredient-list__item{display:block;break-inside:avoid;margin:0!important;padding:0!important;font-size:8.5pt;line-height:1.35;color:#566b80!important}.recipe-page .step__ingredients .ingredient__amount{display:inline!important;min-width:0!important;margin-right:3pt!important;padding:0!important;border:none!important;border-radius:0!important;background:none!important;font-size:8.5pt!important;font-weight:700;text-align:left;color:#b34a3a!important}.recipe-page .step__ingredients .ingredient--no-amount .ingredient__name{padding-left:0!important}.recipe-page .recipe-print-cta{display:block;break-inside:avoid;margin-top:22pt;padding-top:14pt;border-top:1.5pt solid #b34a3a;text-align:center}.recipe-page .recipe-print-cta__brand{display:flex;align-items:center;justify-content:center;margin-bottom:4pt}.recipe-page .recipe-print-cta__wordmark{font-family:var(--font-serif);font-weight:600;font-size:22pt;letter-spacing:.5pt;color:#0c2a4a!important}.recipe-page .recipe-print-cta__tagline{font-family:var(--font-serif);font-style:italic;font-size:12pt;color:#b34a3a!important;margin:0 0 5pt}.recipe-page .recipe-print-cta__body{font-family:var(--font-sans);font-size:9pt;line-height:1.5;color:#566b80!important;max-width:78%;margin:0 auto 6pt}.recipe-page .recipe-print-cta__url{font-family:var(--font-sans);font-size:10.5pt;color:#0c2a4a!important;margin:0}.recipe-page .recipe-print-cta__url strong{color:#b34a3a!important;font-weight:700}}.carousel{position:relative;width:100%;overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none}.carousel__container{position:relative;width:100%}.carousel__track{display:flex;gap:var(--spacing-md);transition:transform .3s ease-in-out;will-change:transform;touch-action:pan-y;cursor:grab}.carousel__track:active{cursor:grabbing}.carousel__slide{flex:0 0 calc(100% - var(--spacing-md));width:calc(100% - var(--spacing-md))}.carousel__slide--half{flex:0 0 calc(50% - var(--spacing-md) / 2);width:calc(50% - var(--spacing-md) / 2)}.carousel__slide--third{flex:0 0 calc(33.333% - var(--spacing-md) * 2 / 3);width:calc(33.333% - var(--spacing-md) * 2 / 3)}.carousel__slide--quarter{flex:0 0 calc(25% - var(--spacing-md) * 3 / 4);width:calc(25% - var(--spacing-md) * 3 / 4)}.carousel__controls{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md);gap:var(--spacing-md)}.carousel__nav-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;border-radius:4px;background-color:transparent;color:var(--body-text);cursor:pointer;transition:all .2s ease}.carousel__nav-button:hover{background-color:var(--surface-medium-contrast);color:var(--color-action)}.carousel__nav-button:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.carousel__nav-button:disabled{opacity:.5;cursor:not-allowed}.carousel__nav-button:disabled:hover{background-color:transparent;color:var(--body-text)}.carousel__nav-button svg{width:20px;height:20px;fill:currentColor}.carousel__pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-xs)}.carousel__dot{display:block;width:6px;height:6px;min-width:6px;min-height:6px;padding:0;border-radius:50%;background-color:var(--line-medium-contrast);border:none;cursor:pointer;transition:all .2s ease;flex:0 0 auto}.carousel__dot:hover{background-color:var(--color-action);transform:scale(1.1)}.carousel__dot:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.carousel__dot--active{background-color:var(--color-action);transform:scale(1.1)}.carousel__sr-only,.carousel__live-region{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.carousel__play-pause{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:32px;height:32px;border:1px solid var(--line-medium-contrast);border-radius:4px;background-color:var(--surface-bg);color:var(--body-text);cursor:pointer;transition:all .2s ease}.carousel__play-pause:hover{background-color:var(--surface-medium-contrast);border-color:var(--color-action)}.carousel__play-pause:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.carousel__play-pause svg{width:16px;height:16px;fill:currentColor}@media (max-width: 640px){.carousel__track{gap:var(--spacing-sm)}.carousel__slide{flex:0 0 calc(100% - var(--spacing-sm));width:calc(100% - var(--spacing-sm))}.carousel__slide--third{flex:0 0 calc(50% - var(--spacing-sm) / 2);width:calc(50% - var(--spacing-sm) / 2)}.carousel__slide--half,.carousel__slide--quarter{flex:0 0 calc(100% - var(--spacing-sm));width:calc(100% - var(--spacing-sm))}.carousel__nav-button{width:40px;height:40px}.carousel__nav-button svg{width:18px;height:18px}}@media (max-width: 768px){.carousel__slide--quarter{flex:0 0 calc(50% - var(--spacing-md) / 2);width:calc(50% - var(--spacing-md) / 2)}}.carousel--touch-enabled{touch-action:pan-y pinch-zoom}.carousel--touch-enabled .carousel__track{cursor:grab}.carousel--touch-enabled .carousel__track:active{cursor:grabbing}@media (prefers-reduced-motion: reduce){.carousel .carousel__track,.carousel .carousel__nav-button,.carousel .carousel__dot{transition:none}.carousel .carousel__nav-button:hover,.carousel .carousel__dot:hover{transform:none}}.prompt-card{position:relative;display:block;padding:calc(var(--spacing-md) + 16px) var(--spacing-md) var(--spacing-sm);border:1px solid var(--color-accent);border-radius:var(--border-radius-lg);background-color:var(--surface-low-contrast);color:var(--color-accent);text-decoration:none;cursor:default;min-height:100px;display:flex;align-items:center;justify-content:center;text-align:center}.prompt-card:before{content:"";position:absolute;top:var(--spacing-sm);left:var(--spacing-sm);width:28px;height:28px;background-color:var(--color-accent);mask-image:var(--quote-icon-mask);mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-image:var(--quote-icon-mask);-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;opacity:.8}.prompt-card__content{font-size:var(--font-size-xs);line-height:1.3;color:inherit;font-style:italic;font-weight:600}@media (max-width: 640px){.prompt-card{min-height:80px;padding:calc(var(--spacing-sm) + 12px) var(--spacing-sm) var(--spacing-sm)}.prompt-card__content{font-size:.7rem}.prompt-card:before{width:20px;height:20px}}:root{--quote-icon-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.583 17.321C3.553 16.227 3 15 3 13.011c0-3.5 2.457-6.637 6.03-8.188l.893 1.378c-3.335 1.804-3.987 4.145-4.247 5.621.537-.278 1.24-.375 1.929-.311 1.804.167 3.226 1.648 3.226 3.489a3.5 3.5 0 01-3.5 3.5c-1.073 0-2.099-.49-2.748-1.179zm10 0C13.553 16.227 13 15 13 13.011c0-3.5 2.457-6.637 6.03-8.188l.893 1.378c-3.335 1.804-3.987 4.145-4.247 5.621.537-.278 1.24-.375 1.929-.311 1.804.167 3.226 1.648 3.226 3.489a3.5 3.5 0 01-3.5 3.5c-1.073 0-2.099-.49-2.748-1.179z' fill='black'/%3E%3C/svg%3E")}.recipe-actions__row{display:flex;justify-content:flex-start;align-items:center;gap:1rem}.wake-lock-control{display:flex;align-items:center}.wake-lock-control__label{display:flex;align-items:center;gap:.75rem;cursor:pointer;user-select:none}.wake-lock-control__text{font-size:.875rem;font-weight:500;color:var(--body-text-muted)}.wake-lock-control__toggle{position:relative;display:inline-block;width:48px;height:28px;background-color:var(--surface-low-contrast);border-radius:14px;cursor:pointer;transition:background-color .3s ease}.wake-lock-control__toggle:focus{outline:2px solid var(--color-action);outline-offset:2px}.wake-lock-control__toggle--active{background-color:var(--color-action)}.wake-lock-control__slider{position:absolute;top:3px;left:3px;width:22px;height:22px;background-color:#fff;border-radius:11px;box-shadow:0 2px 4px #0003;transition:left .3s ease}.wake-lock-control__toggle--active .wake-lock-control__slider{left:23px}.wake-lock-control__toggle:hover{opacity:.8}.wake-lock-control__toggle--active:hover{opacity:.9}@media (max-width: 768px){.recipe-actions__row{flex-direction:column;gap:1rem;align-items:stretch}.wake-lock-control{order:-1}.wake-lock-control__label{justify-content:space-between}}[data-high-contrast=true] .wake-lock-control__toggle{box-shadow:inset 0 0 0 2px var(--body-text)}[data-high-contrast=true] .wake-lock-control__toggle--active{background-color:var(--color-action);box-shadow:inset 0 0 0 2px var(--color-action)}@media (prefers-reduced-motion: reduce){.wake-lock-control__toggle,.wake-lock-control__slider{transition:none}}.collection-card{padding:var(--spacing-md);background-color:var(--surface-low-contrast);border-radius:var(--border-radius-lg);border:solid 1px var(--line-extra-low-contrast);box-shadow:0 6px 24px var(--surface-shadow);cursor:pointer;transition:all .3s ease;position:relative}.collection-card:hover{background-color:var(--surface-medium-contrast);transform:translateY(-2px);box-shadow:0 8px 32px var(--surface-shadow)}.collection-card:focus{outline:2px solid var(--color-action);outline-offset:2px}.collection-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm);gap:var(--spacing-sm)}.collection-card__title{font-size:var(--font-size-md);font-weight:500;color:var(--body-text);margin:0;flex:1;line-height:1.4}.collection-card__actions{display:flex;gap:var(--spacing-xs);opacity:0;transition:opacity .2s ease;flex-shrink:0}.collection-card:hover .collection-card__actions{opacity:1}.collection-card__action{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:var(--spacing-xs);background:none;border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:all .2s ease;color:var(--body-text-muted)}.collection-card__action:hover{background-color:var(--surface-high-contrast);color:var(--body-text)}.collection-card__action:focus{outline:2px solid var(--color-action);outline-offset:1px}.collection-card__action--danger:hover{background-color:var(--color-error);color:#fff}.collection-card__action svg{width:16px;height:16px;fill:currentColor}.collection-card__content{display:flex;flex-direction:column;gap:var(--spacing-sm)}.collection-card__description{font-size:var(--font-size-sm);color:var(--body-text);line-height:1.5;margin:0}.collection-card__description.muted-text{color:var(--body-text-muted);font-style:italic}.collection-card__meta{display:flex;align-items:center;gap:var(--spacing-md);margin-top:auto}.collection-card__count{font-size:var(--font-size-xs);color:var(--body-text-muted);font-weight:500}.collection-list .row{margin-bottom:var(--spacing-md)}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-xxl) var(--space-xl);background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);max-width:640px;margin-left:auto;margin-right:auto;gap:var(--space-md)}.empty-state__icon{font-size:56px;line-height:1;margin-bottom:var(--space-xs);color:var(--color-tertiary)}.empty-state__icon svg{width:72px;height:72px;display:block}.empty-state__title{font-family:var(--font-serif);font-style:italic;font-size:clamp(28px,2.5vw + 14px,36px);font-weight:500;line-height:1.1;color:var(--color-on-surface);margin:0}.empty-state__body{font-family:var(--font-serif);font-style:italic;font-size:var(--type-item-size);font-weight:400;line-height:1.45;color:var(--color-on-surface-muted);max-width:52ch;margin:0}.empty-state .button{margin-top:var(--space-md)}.empty-state h2{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--color-on-surface);margin:0}.empty-state p:not([class]){color:var(--color-on-surface-muted);max-width:52ch;line-height:1.5;margin:0}.collection-card-compact{display:block;padding:var(--spacing-md);border:1px solid var(--line-extra-low-contrast);border-radius:var(--border-radius-lg);background-color:var(--surface-low-contrast);color:var(--body-text);text-decoration:none;transition:background-color .3s ease}.collection-card-compact:hover{background-color:var(--surface-medium-contrast);text-decoration:none}.collection-card-compact__title{margin-bottom:var(--spacing-md);font-size:var(--font-size-base);font-weight:400;color:inherit}.collection-card-compact__meta{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.collection-selector{display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:320px;overflow-y:auto;padding-right:var(--spacing-xs)}.collection-selector::-webkit-scrollbar{width:4px}.collection-selector::-webkit-scrollbar-track{background:var(--surface-low-contrast);border-radius:2px}.collection-selector::-webkit-scrollbar-thumb{background:var(--line-medium-contrast);border-radius:2px}.collection-selector::-webkit-scrollbar-thumb:hover{background:var(--body-text-muted)}.collection-option{display:flex;align-items:flex-start;padding:var(--spacing-md);background:var(--surface-low-contrast);border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-md);cursor:pointer;transition:all .2s ease;position:relative}.collection-option:hover{background:var(--surface-medium-contrast);border-color:var(--line-medium-contrast);transform:translateY(-1px);box-shadow:0 2px 8px var(--surface-shadow)}.collection-option:has(input:checked){background:var(--color-action-background);border-color:var(--color-action)}.collection-option:has(input:checked) .collection-option__name{color:var(--color-action);font-weight:600}.collection-option:has(input:focus-visible){outline:2px solid var(--color-action);outline-offset:2px}.collection-option:has(input:disabled){opacity:.6;cursor:not-allowed;pointer-events:none}.collection-option__input{margin:4px var(--spacing-md) 0 0;width:20px;height:20px;accent-color:var(--color-action);cursor:pointer;flex-shrink:0}.collection-option__input:focus{outline:none}.collection-option__content{display:flex;align-items:center;flex:1;min-width:0}.collection-option__name{color:var(--body-text);font-size:var(--font-size-sm);font-weight:500;margin:0;line-height:1.4;word-wrap:break-word;transition:color .2s ease,font-weight .2s ease}.collection-selector+.text-center{padding:var(--spacing-xl) var(--spacing-md)}.collection-selector+.text-center .spinner{width:32px;height:32px;margin:0 auto var(--spacing-md)}.collection-selector+.text-center p{margin:0;color:var(--body-text-muted);font-size:var(--font-size-sm)}@media (max-width: 640px){.collection-selector{max-height:280px;gap:var(--spacing-xs)}.collection-option{padding:var(--spacing-sm) var(--spacing-md)}.collection-option__input{margin-right:var(--spacing-sm)}}.recipe-collections__content{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm)}.recipe-collections__label{font-size:var(--font-size-sm);font-weight:500;color:var(--body-text);white-space:nowrap}.recipe-collections__add-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:none;border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:all .2s ease;color:var(--color-action);margin-left:var(--spacing-xs);white-space:nowrap}.recipe-collections__add-button:hover{background-color:var(--color-action);color:#fff;transform:scale(1.05)}.recipe-collections__add-button:focus{outline:2px solid var(--color-action);outline-offset:1px}.recipe-collections__add-button:active{transform:scale(.95)}.recipe-collections__add-button svg{width:14px;height:14px;fill:currentColor;flex-shrink:0}.recipe-collections__add-text{font-size:var(--font-size-sm);font-weight:500;color:inherit}.recipe-collections__list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.recipe-collections__loading{display:flex;align-items:center;gap:var(--spacing-sm)}.recipe-collections__loading-text{font-size:var(--font-size-sm);color:var(--body-text-muted);font-style:italic}.recipe-collections__wrapper{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm)}.recipe-collections__empty .muted-text{font-size:var(--font-size-xs);color:var(--body-text-muted);font-style:italic}.collection-tag{position:relative;display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background-color:var(--color-surface);color:var(--color-tertiary);border-radius:var(--radius-pill);font-family:var(--font-sans);font-size:var(--type-body-size);font-weight:500;line-height:1.2;border:1px solid var(--color-rule);transition:background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.collection-tag:before{content:"";position:absolute;inset:4px;border:1px dashed color-mix(in srgb,var(--color-on-surface) 18%,transparent);border-radius:var(--radius-pill);pointer-events:none}.collection-tag:hover{background-color:color-mix(in srgb,var(--color-tertiary) 6%,var(--color-surface));border-color:color-mix(in srgb,var(--color-tertiary) 35%,var(--color-rule))}.collection-tag__link{color:inherit;text-decoration:none}.collection-tag__link:hover{text-decoration:underline}.collection-tag__remove{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-left:var(--spacing-xs);background:none;border:none;border-radius:50%;cursor:pointer;color:inherit;transition:all .2s ease;opacity:.7}.collection-tag__remove:hover{opacity:1;background-color:#fff3}.collection-tag__remove:focus{outline:2px solid currentColor;outline-offset:1px}.collection-tag__remove svg{width:14px;height:14px;fill:currentColor}.plan-list{list-style:none;padding:0;margin:0}.plan-item{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--surface-low-contrast);border:solid 1px var(--line-extra-low-contrast);border-radius:0;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);box-shadow:0 6px 24px var(--surface-shadow);margin-bottom:0;transition:all .2s ease-out}.plan-item:last-child{border-bottom-left-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg)}.plan-item:hover{background-color:var(--surface-bg)}.plan-item__content{flex:1;min-width:0}.plan-item__title{font-size:var(--font-size-sm);font-weight:500;color:var(--body-text);margin:0 0 var(--spacing-sm) 0;line-height:1.4}.plan-item__meta{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);align-items:center}.plan-item__remove{flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-sm);color:var(--color-danger);font-size:28px;line-height:1;cursor:pointer;transition:all .2s ease-out}.plan-item__remove:hover:not(:disabled){background-color:#ff5c501a;border-color:var(--color-danger)}.plan-item__remove:active:not(:disabled){transform:scale(.95)}.plan-item__remove:disabled{opacity:.5;cursor:not-allowed}.shopping-list{padding-bottom:var(--spacing-xxxl)}.shopping-category{margin-bottom:var(--spacing-xl)}.shopping-category__header{position:sticky;top:0;z-index:10;background-color:var(--body-bg);padding:var(--spacing-md) 0;margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-md);font-weight:600;color:var(--body-text);display:flex;align-items:center;gap:var(--spacing-sm);border-bottom:2px solid var(--line-low-contrast)}.shopping-category__header:before{content:"";position:absolute;top:calc(var(--spacing-md) * -1);left:0;right:0;height:var(--spacing-md);background:linear-gradient(to bottom,var(--body-bg),transparent)}.shopping-category__items{display:flex;flex-direction:column;gap:0}.shopping-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) 0;min-height:44px;cursor:pointer;transition:background-color .2s ease-out;border-bottom:1px solid var(--line-extra-low-contrast)}.shopping-item:last-child{border-bottom:none}.shopping-item:hover{background-color:var(--surface-low-contrast)}.shopping-item:active{background-color:var(--surface-bg)}.shopping-item__checkbox{flex-shrink:0;width:24px;height:24px;margin:0;cursor:pointer;accent-color:var(--color-action);position:relative}.shopping-item__checkbox:before{content:"";position:absolute;inset:-12px;z-index:1}.shopping-item__text{flex:1;font-size:var(--font-size-xs);color:var(--body-text);line-height:1.5;user-select:none}.shopping-item__text--checked{text-decoration:line-through;opacity:.6}.shopping-item__name{text-transform:capitalize;font-size:var(--font-size-xs)}.shopping-item__amount{padding:7px var(--spacing-sm);border-radius:100px;background-color:var(--surface-bg);font-size:var(--font-size-xxs);margin-left:var(--spacing-sm);font-weight:600;min-width:70px;text-align:center;color:var(--color-accent);border:1px solid var(--line-extra-low-contrast);display:inline-flex;align-items:center;justify-content:center;gap:4px}.shopping-item--purchased{opacity:.7}.shopping-purchased{padding-top:var(--spacing-xl);margin-top:var(--spacing-xl);border-top:2px solid var(--line-low-contrast)}.shopping-purchased__divider{font-size:var(--font-size-md);font-weight:600;color:var(--body-text-muted);margin:0 0 var(--spacing-lg) 0;text-transform:uppercase;letter-spacing:.5px}.shopping-list-loading{padding:var(--spacing-md) 0}.skeleton--category-header{height:28px;width:150px;border-radius:var(--border-radius-sm)}.skeleton--shopping-item{height:20px;width:200px;border-radius:var(--border-radius-sm)}.alert{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);line-height:1.5}.alert--info{background-color:#5096ff1a;border:1px solid rgba(80,150,255,.3);color:var(--body-text)}.alert--offline{background-color:#ffc0501a;border:1px solid rgba(255,192,80,.3);color:var(--body-text)}.alert--syncing{background-color:#50c8781a;border:1px solid rgba(80,200,120,.3);color:var(--body-text)}.alert__icon{font-size:var(--font-size-lg);flex-shrink:0}.alert__content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.alert__content strong{font-weight:600}.alert__message{font-size:var(--font-size-xs);color:var(--body-text-muted);margin:0}.spinner-small{width:16px;height:16px;border:2px solid var(--line-low-contrast);border-top-color:var(--color-action);border-radius:50%;animation:spin .8s linear infinite}.spinner-tiny{width:12px;height:12px;border:2px solid var(--line-low-contrast);border-top-color:var(--body-text);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.chip--small{padding:2px 8px;font-size:12px;line-height:1.4}.chip--meal{background-color:#5096ff1a;color:#64aaff}.chip--recipe{background-color:#ffc0501a;color:var(--color-action)}.modal__hint{padding:var(--spacing-xl);text-align:center;background-color:var(--surface-low-contrast);border-radius:var(--border-radius-md)}@media (max-width: 768px){.plan-item{padding:var(--spacing-md)}.plan-item__remove{width:48px;height:48px}.shopping-item{padding:var(--spacing-sm);min-height:48px}.shopping-item__checkbox{width:28px;height:28px}.shopping-category__header{font-size:var(--font-size-base);padding:var(--spacing-lg) 0}.shopping-list{padding-bottom:100px}}.plan-item__remove:focus-visible,.shopping-item__checkbox:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}@media (prefers-reduced-motion: reduce){.plan-item,.plan-item__remove,.shopping-item,.search-result-item{transition:none}.spinner-small,.spinner-tiny{animation:none}}.block{background-color:var(--surface-low-contrast);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);border:1px solid var(--line-extra-low-contrast);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:200px}.block>*:first-child{margin-top:0}.block--compact{padding:var(--spacing-lg)}.block--flush{padding:0}.block--no-border{border:none}.attribution-banner{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-muted-bg);border-left:3px solid var(--color-primary);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm)}.attribution-banner svg{width:20px;height:20px;flex-shrink:0;fill:var(--color-primary)}.attribution-banner strong{font-weight:600}.sticky-action-bar{position:sticky;bottom:0;background:var(--color-bg);border-top:1px solid var(--color-border);padding:var(--spacing-lg);margin-top:var(--spacing-xxl);text-align:center}.sticky-action-bar .button--large{min-width:200px;padding:var(--spacing-md) var(--spacing-xl)}.sticky-action-bar .warning-message{color:var(--color-warning);margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm)}.fab{position:fixed;z-index:900;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:var(--color-action);color:var(--body-bg);border:none;box-shadow:0 4px 12px #00000026;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease}@media (min-width: 768px){.fab{bottom:var(--spacing-lg);right:var(--spacing-lg)}}@media (max-width: 767px){.fab{bottom:var(--spacing-lg);right:var(--spacing-lg)}.fab:hover{transform:scale(1.05)}.fab:active{transform:scale(.95)}}@media (min-width: 768px){.fab:hover{transform:scale(1.05);box-shadow:0 6px 16px #0003}.fab:active{transform:scale(.95)}}.fab:focus-visible{outline:2px solid var(--color-action, #0066CC);outline-offset:2px}.fab__icon{width:1.5rem;height:1.5rem;fill:currentColor}.fab:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.chat-drawer{position:fixed;z-index:1001;background-color:var(--body-bg);box-shadow:-4px 0 12px #0003;display:flex;flex-direction:column;transition:transform .3s ease}@media (min-width: 768px){.chat-drawer{top:0;right:0;max-width:480px;width:100%;height:100vh;transform:translate(100%)}.chat-drawer--open{transform:translate(0)}}@media (min-width: 1024px){.chat-drawer{max-width:640px}}@media (max-width: 767px){.chat-drawer{bottom:0;left:0;right:0;width:100%;height:85vh;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);transform:translateY(100%)}.chat-drawer--open{transform:translateY(0)}}.chat-drawer__content{display:flex;flex-direction:column;height:100%;width:100%}.chat-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background-color:var(--surface-high-contrast);color:var(--surface-high-contrast-complement);flex-shrink:0}@media (max-width: 767px){.chat-drawer__header{border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg)}}.chat-drawer__title{font-size:var(--font-size-md);font-weight:700;margin:0}.chat-drawer__close-btn{background:none;border:none;color:currentColor;cursor:pointer;padding:var(--spacing-xs);min-width:24px;min-height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);transition:background-color .2s ease}.chat-drawer__close-btn:hover{background-color:#ffffff1a}.chat-drawer__close-btn:focus-visible{outline:2px solid var(--color-action, #0066CC);outline-offset:2px}.chat-drawer__close-btn svg{width:20px;height:20px}.chat-drawer__messages{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md)}.chat-drawer__messages--dragover{outline:2px dashed var(--color-action);outline-offset:-8px;background:color-mix(in srgb,var(--color-action) 8%,transparent)}.chat-drawer__empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-xl);color:var(--body-text-muted);height:100%}.chat-drawer__empty-state p{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-sm);line-height:1.5}.chat-drawer__empty-state-icon{width:48px;height:48px;margin-bottom:var(--spacing-md);opacity:.5}.chat-drawer__empty-state-inner{width:100%}.chat-drawer__empty-icon{display:block;width:64px;height:64px;margin:0 auto var(--spacing-md);color:var(--color-action);fill:currentColor}.chat-drawer__empty-title{font-family:var(--font-serif);font-size:var(--font-size-xl);font-weight:600;line-height:1.1;color:var(--body-text);margin:0 0 var(--spacing-md)}.chat-drawer__empty-state .chat-drawer__empty-blurb{max-width:460px;margin:0 auto var(--spacing-lg);font-size:var(--font-size-sm);line-height:1.6;color:var(--body-text-muted)}.chat-drawer__prompts{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%;max-width:300px;margin:0 auto}.chat-drawer__prompt{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--surface-low-contrast);border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-md);color:var(--body-text);font-size:var(--font-size-xs);cursor:pointer;transition:all .2s ease;text-align:left;min-height:42px}.chat-drawer__prompt:hover{background-color:var(--surface-high-contrast);border-color:var(--line-medium-contrast);transform:translateY(-1px)}.chat-drawer__prompt:focus-visible{outline:2px solid var(--color-action, #0066CC);outline-offset:2px}.chat-drawer__dropzone{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;margin-bottom:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--surface-low-contrast);border:1.5px dashed var(--line-medium-contrast);border-radius:var(--border-radius-md);color:var(--body-text);text-align:left;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.chat-drawer__dropzone:hover{border-color:var(--color-action);background-color:var(--surface-high-contrast)}.chat-drawer__dropzone:focus-visible{outline:2px solid var(--color-action, #0066CC);outline-offset:2px}.chat-drawer__dropzone--dragover{border-style:solid;border-color:var(--color-action);background-color:color-mix(in srgb,var(--color-action) 10%,transparent)}.chat-drawer__dropzone-icon{width:24px;height:24px;flex-shrink:0;color:var(--color-action);pointer-events:none}.chat-drawer__dropzone-text{display:flex;flex-direction:column;min-width:0;line-height:1.3;pointer-events:none}.chat-drawer__dropzone-title{font-size:var(--font-size-sm);font-weight:600}.chat-drawer__dropzone-hint{font-size:var(--font-size-xs);color:var(--body-text-muted)}.chat-drawer__footer{padding:var(--spacing-md);background-color:var(--surface-bg);border-top:1px solid var(--line-low-contrast);flex-shrink:0}.chat-drawer__input-wrapper{position:relative}.chat-drawer__file-input{display:none}.chat-drawer__attachments{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.chat-drawer__attachment{display:grid;grid-template-columns:1fr auto auto;gap:var(--spacing-xs);align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:var(--surface-low-contrast);border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs)}.chat-drawer__attachment button{border:none;background:transparent;color:var(--body-text);cursor:pointer;font-size:18px;line-height:1;min-width:24px;min-height:24px}.chat-drawer__attachment-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-drawer__attachment-size{color:var(--body-text-muted);white-space:nowrap}.chat-drawer__input{display:block;width:100%;box-sizing:border-box;min-height:84px;max-height:168px;padding:var(--spacing-sm) var(--spacing-md);padding-right:calc(40px + var(--spacing-sm) * 2);border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-md);background-color:var(--body-bg);color:var(--body-text);font-size:var(--font-size-sm);font-family:inherit;line-height:1.5;resize:none;overflow-y:auto;transition:border-color .2s ease}.chat-drawer__input:focus-visible{outline:2px solid var(--color-action, #0066CC);outline-offset:2px;border-color:var(--color-action)}.chat-drawer__input::placeholder{color:var(--body-text-muted)}.chat-drawer__send-btn{position:absolute;right:var(--spacing-sm);bottom:var(--spacing-sm);z-index:1;width:40px;height:40px;padding:0;background-color:var(--color-action);color:var(--color-action-contrast, white);border:none;border-radius:50%;cursor:pointer;transition:opacity .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-drawer__send-btn svg{width:20px;height:20px;fill:currentColor}.chat-drawer__send-btn:hover:not(:disabled){opacity:.9}.chat-drawer__send-btn:disabled{opacity:.5;cursor:not-allowed}.chat-drawer__send-btn:focus-visible{outline:2px solid var(--color-action, #0066CC);outline-offset:2px}.chat-drawer__loading{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);color:var(--body-text-muted);font-size:var(--font-size-sm)}.chat-drawer__loading-dots{display:inline-block}.chat-drawer__loading-dots:after{content:"";animation:ellipsis 1.5s infinite}.chat-drawer__error{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-danger);color:#fff;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);margin:var(--spacing-sm);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.chat-drawer__error-close{background:none;border:none;color:currentColor;cursor:pointer;padding:0;font-size:18px;line-height:1}.chat-drawer__error-close:hover{opacity:.8}.chat-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:1000;opacity:0;pointer-events:none;transition:opacity .3s ease}.chat-backdrop--visible{opacity:1;pointer-events:auto}@keyframes ellipsis{0%,to{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.chat-bubble{--bubble-radius: 22px;--bubble-tail-radius: 4px;display:flex;gap:var(--spacing-sm);border-radius:30px;margin-left:7.5%;margin-right:0;margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);border:solid 1px transparent;z-index:2}@media (max-width: 993px){.chat-bubble{margin-left:0}}@media (max-width: 767px){.chat-bubble{gap:var(--spacing-xs)}.chat-bubble .chat-bubble__avatar-wrapper{flex-basis:2.25rem;height:2.25rem;width:2.25rem}.chat-bubble .chat-bubble__avatar-icon{width:1.125rem;height:1.125rem}.chat-bubble .chat-bubble__message-wrapper{width:calc(100% - 2.25rem - var(--spacing-xs));flex-basis:calc(100% - 2.25rem - var(--spacing-xs))}}.chat-bubble__avatar-wrapper{flex-basis:3rem;flex-shrink:0;margin-top:1rem;align-self:flex-end;background-color:var(--surface-low-contrast);border:1px solid var(--line-low-contrast);height:3rem;width:3rem;border-radius:9999px;display:flex;align-items:center;justify-content:center}.chat-bubble__avatar-icon{width:1.5rem;height:1.5rem;fill:var(--body-text)}.chat-bubble__message-wrapper{padding-top:.5rem;width:calc(100% - 5rem);flex-basis:calc(100% - 5rem);min-width:0}.chat-bubble__meta-wrapper{display:flex;justify-content:flex-end;align-items:center;margin-top:var(--spacing-xs)}.chat-bubble__message{padding:var(--spacing-md) var(--spacing-lg);font-size:15px;background-color:var(--surface-low-contrast);border:1px solid var(--line-low-contrast);border-top-left-radius:var(--bubble-radius);border-bottom-left-radius:var(--bubble-tail-radius);border-top-right-radius:var(--bubble-radius);border-bottom-right-radius:var(--bubble-radius);color:var(--body-text);line-height:1.4;overflow-wrap:break-word;word-wrap:break-word}.chat-bubble__message h1{font-size:1.5rem;margin-bottom:1rem}.chat-bubble__message h2{font-size:1.25rem}.chat-bubble__message h3{font-size:1rem}.chat-bubble__message p{margin-bottom:var(--spacing-sm)}.chat-bubble__message p:last-child{margin-bottom:0}.chat-bubble__message code{background-color:var(--surface-high-contrast);padding:.125rem .25rem;border-radius:var(--border-radius-xs);font-size:.9em}.chat-bubble__message pre{background-color:var(--surface-high-contrast);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);overflow-x:auto;margin:var(--spacing-sm) 0}.chat-bubble__message pre code{background-color:transparent;padding:0}.chat-bubble__message ul,.chat-bubble__message ol{margin:var(--spacing-md) 0;padding-left:var(--spacing-xl);background-color:#00000008;padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-left:3px solid var(--line-medium-contrast)}.chat-bubble__message ul:last-child,.chat-bubble__message ol:last-child{margin-bottom:0}.chat-bubble__message ul{list-style-type:disc}.chat-bubble__message ol{list-style-type:decimal}.chat-bubble__message li{margin-bottom:var(--spacing-sm);padding-left:var(--spacing-xs);line-height:1.6}.chat-bubble__message li:last-child{margin-bottom:0}.chat-bubble__message li ul,.chat-bubble__message li ol{margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs);background-color:#00000005;border-left-color:var(--line-low-contrast)}.chat-bubble__speaker{font-size:var(--font-size-xs);text-align:left;font-style:italic;font-weight:var(--font-bold-weight);margin-top:var(--spacing-sm);margin-bottom:0;color:var(--body-text-muted)}.chat-bubble__timestamp{font-size:var(--font-size-xs);font-style:italic;color:var(--body-text-muted)}.chat-bubble__timestamp:after{content:" • "}.chat-bubble__actions{padding:.5rem 0 0}.chat-bubble__cta{width:100%;justify-content:center}.chat-bubble__status-msg{margin:0;color:var(--body-text-muted);font-style:italic}.chat-bubble__status-inner{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-sm);min-width:0}.chat-bubble__status-icon{width:1.75rem;height:1.75rem;flex:0 0 1.75rem;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;color:var(--color-action);background:color-mix(in srgb,var(--color-action) 10%,var(--surface-bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-action) 24%,transparent)}.chat-bubble__status-icon svg{width:1rem;height:1rem;display:block}.chat-bubble--status{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}.chat-bubble--status .chat-bubble__message-wrapper{padding-top:.5rem}.chat-bubble--status .chat-bubble__message{width:fit-content;max-width:100%;margin:0;border-style:solid;border-top-left-radius:var(--bubble-radius);border-bottom-left-radius:var(--bubble-tail-radius);border-top-right-radius:var(--bubble-radius);border-bottom-right-radius:var(--bubble-radius);background:linear-gradient(120deg,var(--surface-bg) 0%,color-mix(in srgb,var(--surface-low-contrast) 88%,var(--color-action) 12%) 100%);padding:var(--spacing-sm) var(--spacing-md)}.chat-bubble--status .chat-bubble__status-msg{font-family:var(--font-heading, inherit);font-size:15px;line-height:1.4;font-style:normal;color:transparent;background:linear-gradient(90deg,var(--body-text-muted) 0%,var(--body-text) 34%,color-mix(in srgb,var(--color-action) 68%,var(--body-text)) 50%,var(--body-text) 66%,var(--body-text-muted) 100%);background-size:240% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:chat-status-shimmer 2.4s ease-in-out infinite}.chat-bubble--error .chat-bubble__message{background:linear-gradient(120deg,var(--surface-bg) 0%,color-mix(in srgb,var(--surface-low-contrast) 86%,var(--color-warning, #9a6500) 14%) 100%);border-color:color-mix(in srgb,var(--color-warning, #9a6500) 26%,var(--line-low-contrast));border-top-left-radius:var(--bubble-radius);border-bottom-left-radius:var(--bubble-tail-radius);border-top-right-radius:var(--bubble-radius);border-bottom-right-radius:var(--bubble-radius);padding-right:var(--spacing-sm)}.chat-bubble--error .chat-bubble__status-icon{color:var(--color-warning, #9a6500);background:color-mix(in srgb,var(--color-warning, #9a6500) 10%,var(--surface-bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-warning, #9a6500) 24%,transparent)}.chat-bubble--error .chat-bubble__status-msg{color:var(--body-text);background:none;-webkit-text-fill-color:currentColor;animation:none}.chat-bubble__retry-btn{flex:0 0 auto}.chat-bubble__image-wrapper{border:none;background-color:transparent;margin:1rem 0;padding:0;text-align:left}.chat-bubble__image-wrapper:first-child{margin-top:0}.chat-bubble__image{max-width:600px;max-height:300px;height:auto;width:auto;object-fit:contain;border-radius:10px;display:inline-block}@media (max-width: 993px){.chat-bubble__image{max-width:80%}}.chat-bubble--reply{margin-right:7.5%;margin-left:0;border:none;color:var(--surface-high-contrast-complement)}@media (max-width: 993px){.chat-bubble--reply{margin-right:0}}.chat-bubble--reply .chat-bubble__message{border:1px solid var(--line-low-contrast);border-top-left-radius:var(--bubble-radius);border-bottom-left-radius:var(--bubble-radius);border-bottom-right-radius:var(--bubble-tail-radius);border-top-right-radius:var(--bubble-radius);background-color:var(--surface-high-contrast);color:var(--surface-high-contrast-complement)}.chat-bubble--reply .chat-bubble__speaker{text-align:right;color:var(--body-text)}.chat-bubble--reply .chat-bubble__meta-wrapper{justify-content:flex-start}.chat-bubble--reply .chat-bubble__timestamp:after{content:""}.chat-bubble--reply .chat-bubble__timestamp:before{content:" • "}.chat-drawer .chat-bubble{margin-left:0;margin-right:0}@keyframes chat-status-shimmer{0%{background-position:120% 50%}to{background-position:-120% 50%}}@media (prefers-reduced-motion: reduce){.chat-bubble--status .chat-bubble__status-msg{animation:none;color:var(--body-text);-webkit-text-fill-color:var(--body-text)}}.chat-proposal{background:var(--surface-bg);border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-md);margin-top:var(--spacing-sm);overflow:hidden}.chat-proposal__header{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--surface-high-contrast);border-bottom:1px solid var(--line-extra-low-contrast)}.chat-proposal__header svg{width:16px;height:16px;fill:var(--color-action)}.chat-proposal__title{font-size:var(--font-size-sm);font-weight:600;color:var(--body-text)}.chat-proposal__summary{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--type-body-size);line-height:1.5;color:var(--body-text);font-style:italic;border-bottom:1px solid var(--line-extra-low-contrast)}.chat-proposal__sections{padding:var(--spacing-xs) 0}.chat-proposal__section{border-bottom:1px solid var(--line-extra-low-contrast)}.chat-proposal__section:last-child{border-bottom:none}.chat-proposal__section-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;user-select:none;transition:background-color .2s ease;background-color:transparent;border:none;border-bottom:1px solid var(--line-low-contrast);width:100%}.chat-proposal__section-header:hover{background:var(--surface-high-contrast)}.chat-proposal__section-header:focus{outline:2px solid var(--color-action);outline-offset:-2px}.chat-proposal__section-title{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:500;color:var(--body-text)}.chat-proposal__section-title .chevron{width:12px;height:12px;fill:var(--body-text-muted);transition:transform .2s ease}.chat-proposal__section-title .chevron.expanded{transform:rotate(90deg)}.chat-proposal__section-chips{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.chat-proposal__section-content{padding:0 var(--spacing-md) var(--spacing-sm);display:none;overflow-wrap:break-word;word-wrap:break-word}.chat-proposal__section-content.expanded{display:block}.chat-proposal__change-list{list-style:none;padding:0;margin:0;font-size:var(--font-size-xs)}.chat-proposal__change-item{padding:var(--spacing-xs) 0;display:flex;align-items:flex-start;gap:var(--spacing-xs);min-width:0}.chat-proposal__change-item--added .chat-proposal__change-icon{color:var(--color-success, #22c55e)}.chat-proposal__change-item--removed .chat-proposal__change-icon{color:var(--color-error, #ef4444)}.chat-proposal__change-item--modified .chat-proposal__change-icon{color:var(--color-warning, #f59e0b)}.chat-proposal__change-icon{flex-shrink:0;font-weight:700;width:16px;text-align:center}.chat-proposal__change-text{color:var(--body-text);line-height:1.4;width:100%}.chat-proposal__change-arrow{color:var(--body-text-muted);margin:0 var(--spacing-xs)}.chat-proposal__change-before{text-decoration:line-through;color:var(--body-text-muted)}.chat-proposal__change-after{color:var(--body-text);font-weight:500}.chat-proposal__step-label{display:block;margin-bottom:var(--spacing-xs)}.chat-proposal__step-detail{padding:var(--spacing-sm);background:var(--surface-high-contrast);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);line-height:1.5;overflow-wrap:break-word;word-wrap:break-word}.chat-proposal__step-before,.chat-proposal__step-after{margin-bottom:var(--spacing-sm)}.chat-proposal__step-before:last-child,.chat-proposal__step-after:last-child{margin-bottom:0}.chat-proposal__step-label{display:block;font-weight:600;color:var(--body-text-muted);margin-bottom:var(--spacing-xs);text-transform:uppercase;font-size:10px;letter-spacing:.5px}.chat-proposal del{background-color:#ef444433;color:var(--color-error, #ef4444);text-decoration:line-through;padding:1px 2px;border-radius:2px}.chat-proposal ins{background-color:#22c55e33;color:var(--color-success, #22c55e);text-decoration:none;padding:1px 2px;border-radius:2px;font-weight:500}.chat-proposal__rewrite{display:flex;flex-direction:column;gap:var(--spacing-sm)}.chat-proposal__rewrite-before,.chat-proposal__rewrite-after{padding:var(--spacing-sm);border-radius:var(--border-radius-sm);border:1px solid var(--color-rule);font-size:var(--font-size-xs);line-height:1.5}.chat-proposal__rewrite-before{background-color:#ef44441a}.chat-proposal__rewrite-after{background-color:#22c55e1a}.chat-proposal__rewrite-label{display:block;font-weight:600;color:var(--body-text-muted);margin-bottom:var(--spacing-xs);text-transform:uppercase;font-size:10px;letter-spacing:.5px}.chat-proposal__actions{display:flex;gap:var(--space-md);padding:var(--space-lg) var(--space-lg);background:var(--surface-high-contrast);border-top:1px solid var(--line-extra-low-contrast);justify-content:stretch}.chat-proposal__actions .button{flex:1;padding-top:var(--space-md);padding-bottom:var(--space-md)}.chat-proposal--applied{opacity:.7}.chat-proposal--applied .chat-proposal__actions{display:none}.chat-proposal--applied:after{content:"Changes applied";display:block;padding:var(--spacing-sm) var(--spacing-md);text-align:center;font-size:var(--font-size-xs);color:var(--color-success, #22c55e);background:var(--surface-high-contrast);font-weight:500}.chat-proposal--discarded{opacity:.5}.chat-proposal--discarded .chat-proposal__actions{display:none}.chat-proposal--discarded:after{content:"Changes discarded";display:block;padding:var(--spacing-sm) var(--spacing-md);text-align:center;font-size:var(--font-size-xs);color:var(--body-text-muted);background:var(--surface-high-contrast)}.documentation{min-height:calc(100vh - 200px)}.documentation .row{align-items:flex-start}.doc-loading{padding:var(--spacing-xl) 0}.doc-error{padding:var(--spacing-xl) 0;text-align:center}.help-tip,.mod-example{margin-bottom:var(--spacing-md)}.doc-nav--desktop{position:sticky;top:var(--spacing-xl);padding-right:var(--spacing-lg);max-height:calc(100vh - 120px);overflow-y:auto}.doc-nav__title{font-size:var(--font-size-sm);font-weight:600;color:var(--body-text-muted);margin:0 0 var(--spacing-md) 0;text-transform:uppercase;letter-spacing:.5px}.doc-nav__list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.doc-nav__link{display:block;padding:var(--spacing-sm) var(--spacing-md);color:var(--body-text-muted);text-decoration:none;border-radius:0;font-size:var(--font-size-sm);line-height:1.4;transition:all .2s ease;border-left:3px solid transparent}.doc-nav__link:hover{color:var(--body-text)}.doc-nav__link--active{color:var(--color-accent);background-color:var(--color-accent-background);border-left-color:var(--color-accent);font-weight:500}.doc-nav--mobile{position:relative;margin-bottom:var(--spacing-lg)}.doc-nav__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-md);background-color:var(--surface-bg);border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-md);color:var(--body-text);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .2s ease}.doc-nav__toggle:hover{border-color:var(--line-medium-contrast);background-color:var(--surface-high-contrast)}.doc-nav__toggle:focus{outline:2px solid var(--color-action);outline-offset:2px}.doc-nav__chevron{width:20px;height:20px;color:var(--body-text-muted);transition:transform .2s ease}.doc-nav__chevron--open{transform:rotate(180deg)}.doc-nav__mobile-menu{position:absolute;top:calc(100% + var(--spacing-xs));left:0;right:0;background-color:var(--surface-bg);border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-md);box-shadow:0 4px 12px var(--surface-shadow);z-index:10;overflow:hidden}.doc-nav__mobile-menu--entering{transition:opacity .2s ease,transform .2s ease}.doc-nav__mobile-menu--enter-start{opacity:0;transform:translateY(-8px)}.doc-nav__mobile-menu--enter-end{opacity:1;transform:translateY(0)}.doc-nav__mobile-menu--leaving{transition:opacity .2s ease,transform .2s ease}.doc-nav__mobile-menu--leave-start{opacity:1;transform:translateY(0)}.doc-nav__mobile-menu--leave-end{opacity:0;transform:translateY(-8px)}.doc-nav__mobile-link{display:block;padding:var(--spacing-md);color:var(--body-text-muted);text-decoration:none;font-size:var(--font-size-sm);line-height:1.4;border-bottom:1px solid var(--line-extra-low-contrast);transition:all .2s ease}.doc-nav__mobile-link:last-child{border-bottom:none}.doc-nav__mobile-link:hover{color:var(--body-text);background-color:var(--surface-low-contrast)}.doc-nav__mobile-link--active{color:var(--color-action);background-color:var(--color-action-background);font-weight:500}.doc-content{padding-left:var(--spacing-lg)}@media (max-width: 991px){.doc-content{padding-left:0}}.doc-content h1{margin-top:0}.doc-content p{font-size:var(--font-size-sm);color:var(--body-text-muted);line-height:1.5;font-weight:300}.doc-content ul{list-style:square;padding-left:0;margin:0 0 var(--spacing-md) 0}.doc-content ol{padding-left:var(--spacing-lg);margin:0}.doc-content li{margin-bottom:var(--spacing-xs);color:var(--body-text-muted);line-height:1.5;margin-left:var(--spacing-md)}.doc-section{margin-bottom:var(--spacing-xxxl)}.doc-section:last-child{margin-bottom:0}.doc-section__content>*:first-child{margin-top:0}.doc-section__content>*:last-child{margin-bottom:0}.doc-heading{color:var(--body-text);font-family:var(--accent-font);font-variation-settings:var(--accent-font-variation-settings);font-weight:var(--accent-font-weight);line-height:1.2;margin:var(--spacing-xxl) 0 var(--spacing-lg) 0;position:relative}.doc-heading:first-child{margin-top:0}.doc-heading--h1{font-size:var(--font-size-xxl);margin-bottom:var(--spacing-xl);border-bottom:2px solid var(--line-low-contrast);padding-bottom:var(--spacing-lg)}.doc-heading--h2{font-size:var(--font-size-xl);margin-top:var(--spacing-xxxl);margin-bottom:var(--spacing-lg)}.doc-heading--h3{font-size:var(--font-size-lg);margin-top:var(--spacing-xxl);margin-bottom:var(--spacing-md)}.doc-heading--h4{font-size:var(--font-size-md);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);font-weight:600}.doc-heading--h5,.doc-heading--h6{font-size:var(--font-size-sm);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm);font-weight:600;color:var(--body-text-muted)}.doc-heading__anchor{position:absolute;left:-24px;top:50%;transform:translateY(-50%);color:var(--body-text-muted);text-decoration:none;opacity:0;transition:opacity .2s ease;font-weight:400;font-size:.8em}@media (max-width: 768px){.doc-heading__anchor{display:none}}.doc-heading:hover .doc-heading__anchor{opacity:.7}.doc-heading__anchor:hover{opacity:1;color:var(--color-action)}.doc-paragraph{margin:var(--spacing-lg) 0;line-height:1.6;font-size:var(--font-size-sm);color:var(--body-text)}.doc-paragraph+.doc-paragraph{margin-top:var(--spacing-md)}.doc-paragraph strong{font-weight:600;color:var(--body-text)}.doc-paragraph em{font-style:italic;color:var(--body-text-muted)}.doc-paragraph code{background-color:var(--surface-low-contrast);padding:.15em .4em;border-radius:var(--border-radius-xs);font-size:.9em;color:var(--color-action);font-family:Monaco,Menlo,Ubuntu Mono,monospace}.doc-list{margin:var(--spacing-lg) 0;padding-left:var(--spacing-xl)}.doc-list__item{margin:var(--spacing-sm) 0;line-height:1.6;font-size:var(--font-size-sm);color:var(--body-text)}.doc-list__item .doc-list{margin:var(--spacing-sm) 0;font-size:.95em}.doc-list__item p{margin:var(--spacing-xs) 0}.doc-list__item strong{font-weight:600;color:var(--body-text)}.doc-list[type="1"]{list-style-type:decimal}.doc-list[type=a]{list-style-type:lower-alpha}.doc-list[type=i]{list-style-type:lower-roman}.doc-blockquote{margin:var(--spacing-xl) 0;padding:var(--spacing-lg);background-color:var(--surface-low-contrast);border-left:4px solid var(--line-medium-contrast);border-radius:var(--border-radius-sm)}.doc-blockquote p{margin:0;font-style:italic;color:var(--body-text-muted)}.doc-callout{margin:var(--spacing-xl) 0;padding:var(--spacing-lg);border-radius:var(--border-radius-md);border:1px solid;position:relative}.doc-callout__header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);font-weight:600;font-size:var(--font-size-sm)}.doc-callout__icon{font-size:1.2em}.doc-callout__title{margin:0}.doc-callout__content p:first-child{margin-top:0}.doc-callout__content p:last-child{margin-bottom:0}.doc-callout--note{background-color:#3b82f61a;border-color:#3b82f64d;color:var(--body-text)}.doc-callout--note .doc-callout__header{color:#3b82f6}.doc-callout--tip{background-color:#22c55e1a;border-color:#22c55e4d;color:var(--body-text)}.doc-callout--tip .doc-callout__header{color:#22c55e}.doc-callout--warning{background-color:#f59e0b1a;border-color:#f59e0b4d;color:var(--body-text)}.doc-callout--warning .doc-callout__header{color:#f59e0b}.doc-callout--danger{background-color:#ef44441a;border-color:#ef44444d;color:var(--body-text)}.doc-callout--danger .doc-callout__header{color:#ef4444}.doc-code{margin:var(--spacing-lg) 0;padding:var(--spacing-md);background-color:var(--surface-high-contrast);border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-sm);overflow-x:auto;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875em;line-height:1.5;color:var(--body-text)}.doc-code-block{margin:var(--spacing-xl) 0;border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-md);overflow:hidden;background-color:var(--surface-high-contrast)}.doc-code-block__header{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--surface-medium-contrast);border-bottom:1px solid var(--line-low-contrast);font-size:var(--font-size-xs);color:var(--body-text-muted);font-weight:500}.doc-code-block__language{text-transform:uppercase;letter-spacing:.5px}.doc-code-block__content{margin:0;padding:var(--spacing-lg);background-color:var(--surface-high-contrast);overflow-x:auto;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875em;line-height:1.5;color:var(--body-text)}.doc-code-block__content code{background:none;padding:0;border-radius:0;color:inherit;font-size:inherit}.doc-link{color:var(--color-action);text-decoration:none;border-bottom:1px solid transparent;transition:all .2s ease}.doc-link:hover{border-bottom-color:var(--color-action)}.doc-link__external-icon{font-size:.8em;margin-left:.2em;opacity:.7}.doc-table{margin:var(--spacing-xl) 0;width:100%;border-collapse:collapse;border:1px solid var(--line-low-contrast);border-radius:var(--border-radius-sm);overflow:hidden}.doc-table th,.doc-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--line-extra-low-contrast);font-size:var(--font-size-sm)}.doc-table th{background-color:var(--surface-medium-contrast);font-weight:600;color:var(--body-text)}.doc-table td{color:var(--body-text)}.doc-table tr:last-child th,.doc-table tr:last-child td{border-bottom:none}.doc-media{margin:var(--spacing-xl) 0;text-align:center}.doc-media img{max-width:100%;height:auto;border-radius:var(--border-radius-md);box-shadow:0 4px 12px var(--surface-shadow)}.doc-media figcaption{margin-top:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--body-text-muted);font-style:italic}.doc-media--placeholder .doc-media__placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);min-height:200px;padding:var(--spacing-xl);border:1.5px dashed var(--line-medium-contrast);border-radius:var(--border-radius-md);background-color:var(--surface-low-contrast);text-align:center}.doc-media--placeholder .doc-media__placeholder-label{font-family:var(--accent-font);font-variation-settings:var(--accent-font-variation-settings);font-size:var(--font-size-md);color:var(--body-text)}.doc-media--placeholder .doc-media__placeholder-meta{font-size:var(--font-size-xs);letter-spacing:.5px;text-transform:uppercase;color:var(--body-text-muted)}hr.doc-divider{margin:var(--spacing-xxxl) 0;border:none;height:1px;background-color:var(--line-low-contrast)}@media (max-width: 768px){.doc-content{padding-left:0}.doc-heading--h1{font-size:var(--font-size-xl)}.doc-heading--h2{font-size:var(--font-size-lg)}.doc-code,.doc-code-block__content{font-size:.8em}}.form{display:flex;flex-direction:column;gap:var(--space-lg)}.form--inline{flex-direction:row;align-items:flex-end;gap:var(--space-md);flex-wrap:wrap}.form--compact{gap:var(--space-md)}.field{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-lg)}.field:last-child{margin-bottom:0}.field--error .input{border-color:var(--color-danger)}.field--error .label{color:var(--color-danger)}.field--required .label:after{content:" *";color:var(--color-danger)}.field--inline{flex-direction:row;align-items:center;gap:var(--spacing-md)}.field--inline .label{margin-bottom:0;flex-shrink:0}.field--compact{gap:var(--spacing-xs)}.field-toggle{display:flex;flex-direction:column;gap:var(--spacing-sm)}.field-toggle__summary{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;color:var(--body-text-muted);font-size:var(--font-size-sm);user-select:none;list-style:none;transition:color .2s ease}.field-toggle__summary::-webkit-details-marker{display:none}.field-toggle__summary::marker{display:none}.field-toggle__summary:hover{color:var(--body-text)}.field-toggle__label{font-variation-settings:var(--body-font-variation-settings-bold)}.field-toggle__hint{color:var(--body-text-muted);opacity:.7;font-size:var(--font-size-xs)}.field-toggle__chevron{width:14px;height:14px;margin-left:auto;transition:transform .25s cubic-bezier(.34,1.56,.64,1);color:var(--body-text-muted)}.field-toggle[open] .field-toggle__summary{color:var(--body-text)}.field-toggle[open] .field-toggle__chevron{transform:rotate(180deg)}.field-toggle__body{display:flex;flex-direction:column;gap:var(--spacing-xs)}.fieldset{border:none;padding:0;margin:0 0 var(--spacing-lg) 0}.fieldset--no-margin{margin-bottom:0}.fieldset--compact{margin-bottom:var(--spacing-md)}.fieldset__legend{margin:0 0 var(--space-xs) 0;padding:0;font-family:var(--font-sans);font-size:var(--type-meta-size);font-weight:700;letter-spacing:var(--type-meta-letter-spacing);text-transform:uppercase;color:var(--color-on-surface);line-height:1.4}.fieldset__description{margin:0 0 var(--space-md) 0;font-family:var(--font-serif);font-style:italic;font-size:var(--type-body-size);color:var(--color-on-surface-muted);line-height:1.45}.label{display:block;margin-bottom:0;font-family:var(--font-sans);font-size:var(--type-meta-size);font-weight:700;letter-spacing:var(--type-meta-letter-spacing);text-transform:uppercase;color:var(--color-on-surface);line-height:1.4}.label--small{font-size:var(--font-size-xs);font-weight:500}.label--large{font-size:var(--font-size-md)}.label--inline{display:inline-block;margin-bottom:0;margin-right:var(--spacing-sm)}.label--muted{color:var(--body-text-muted)}.label--bold{font-weight:700}.help-toggle{margin:0}.help-toggle[open] .help-toggle__chevron{transform:rotate(90deg)}.help-toggle__summary{display:inline-flex;align-items:center;gap:var(--space-xs);font-family:var(--font-serif);font-style:italic;font-size:var(--type-item-size);color:var(--color-on-surface-muted);cursor:pointer;list-style:none;user-select:none;padding:0;transition:color var(--motion-fast) var(--ease-standard)}.help-toggle__summary::-webkit-details-marker{display:none}.help-toggle__summary::marker{display:none}.help-toggle__summary:hover{color:var(--color-tertiary)}.help-toggle__summary:focus-visible{outline:2px solid var(--color-tertiary);outline-offset:4px;border-radius:2px}.help-toggle__chevron{display:inline-block;width:10px;height:10px;flex-shrink:0;transition:transform var(--motion-fast) var(--ease-standard);background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M9 6l6 6-6 6'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M9 6l6 6-6 6'/%3E%3C/svg%3E") no-repeat center/contain}.help-toggle__body{margin-top:var(--space-sm);font-family:var(--font-serif);font-style:italic;font-size:var(--type-item-size);color:var(--color-on-surface-muted);line-height:1.5}.help-text{font-family:var(--font-serif);font-style:italic;font-size:var(--type-body-size);color:var(--color-on-surface-muted);line-height:1.45;margin:0}.help-text--error{color:var(--color-danger)}.help-text--warning{color:var(--color-action)}.help-text--success{color:var(--color-accent)}.help-text--with-counter{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm)}.help-text--small{font-size:var(--font-size-xxs)}.help-text--large{font-size:var(--font-size-sm)}.character-counter{font-size:var(--font-size-xs);color:var(--body-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0}.character-counter--warning{color:var(--color-action);font-weight:500}.character-counter--danger{color:var(--color-danger);font-weight:600}.character-counter--success{color:var(--color-accent)}.character-counter--small{font-size:var(--font-size-xxs)}.character-counter--large{font-size:var(--font-size-sm)}.section{margin-bottom:var(--spacing-xl)}.section__header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--line-low-contrast)}.section__title{margin:0 0 var(--spacing-sm) 0;color:var(--body-text);line-height:1.2}.section__description{margin:0;font-family:var(--font-serif);font-style:italic;font-size:var(--type-item-size);color:var(--color-on-surface-muted);line-height:1.45}.section--compact{margin-bottom:var(--spacing-lg)}.section--compact .section__header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md)}.section--borderless .section__header{border-bottom:none;padding-bottom:0}.section--large{margin-bottom:var(--spacing-xxl)}.section--large .section__title{font-size:var(--font-size-xl)}.section--card{margin-bottom:var(--space-lg);padding:var(--space-xl);background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.section--card .section__header{border-bottom-color:var(--color-rule)}.section--card .section__header+.section__body .section__header,.section--card .section__body .section__header{margin-top:var(--space-xl)}@media (max-width: 640px){.section--card{padding:var(--space-lg)}}.recipe-form .section__title{font-size:var(--font-size-lg)}.divider{border:0;height:1px;background:var(--line-low-contrast);margin:var(--spacing-lg) 0}.divider--thick{height:2px;background:var(--line-medium-contrast)}.divider--spaced{margin:var(--spacing-xl) 0}.divider--compact{margin:var(--spacing-md) 0}.divider--tight{margin:var(--spacing-sm) 0}.divider--vertical{width:1px;height:auto;margin:0 var(--spacing-lg);display:inline-block;vertical-align:middle}.divider--dashed{background:none;border-top:1px dashed var(--line-low-contrast)}.alert{padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-md);border:1px solid transparent;border-radius:8px;font-size:var(--font-size-sm);line-height:1.4}.alert__title{font-weight:600;margin:0 0 var(--spacing-xs) 0;display:block}.alert__message{margin:0}.alert--success{color:var(--body-text);background-color:#82b2c81a;border-color:var(--color-accent)}.alert--error{color:var(--body-text);background-color:#ff5c501a;border-color:var(--color-danger)}.alert--warning{color:var(--body-text);background-color:#ffc0501a;border-color:var(--color-action)}.alert--info{color:var(--body-text);background-color:var(--surface-medium-contrast);border-color:var(--line-medium-contrast)}.alert--compact{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-sm)}.alert--large{padding:var(--spacing-lg) var(--spacing-xl);font-size:var(--font-size-md)}.alert--borderless{border:none}.toast-container{position:fixed;bottom:var(--spacing-lg);left:var(--spacing-lg);z-index:1050;display:flex;flex-direction:column;gap:var(--spacing-sm);max-width:400px;pointer-events:none}@media (max-width: 640px){.toast-container{bottom:var(--spacing-md);left:var(--spacing-md);right:var(--spacing-md);max-width:none}}.toast{background-color:var(--surface-high-contrast);color:var(--body-text);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);box-shadow:0 8px 24px var(--surface-shadow),0 4px 8px #0000001a;border:1px solid var(--line-medium-contrast);display:flex;align-items:flex-start;gap:var(--spacing-sm);min-width:280px;position:relative;pointer-events:auto;overflow:hidden}.toast--enter{animation:toastSlideIn .4s cubic-bezier(.34,1.56,.64,1) forwards}.toast--leave{animation:toastSlideOut .3s ease-in-out forwards}.toast__icon{width:20px;height:20px;flex-shrink:0;margin-top:2px}.toast__content{flex:1;min-width:0}.toast__title{font-weight:600;font-size:var(--font-size-sm);margin:0 0 var(--spacing-xs) 0;line-height:1.3}.toast__message{font-size:var(--font-size-sm);margin:0;line-height:1.4;opacity:.9}.toast__action{background:none;border:1px solid currentColor;color:inherit;cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:600;flex-shrink:0;margin-left:var(--spacing-sm);transition:all .2s ease;opacity:.9}.toast__action:hover{background-color:var(--surface-medium-contrast);opacity:1}.toast__action:focus{outline:2px solid var(--color-action);outline-offset:2px}.toast__dismiss{background:none;border:none;color:var(--body-text-muted);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius-xs);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:-2px -4px -2px 0;transition:all .2s ease}.toast__dismiss:hover{background-color:var(--surface-medium-contrast);color:var(--body-text)}.toast__dismiss:focus{outline:2px solid var(--color-action);outline-offset:2px}.toast__dismiss svg{width:14px;height:14px}.toast:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background-color:var(--line-medium-contrast);opacity:.3}.toast__progress{position:absolute;bottom:0;left:0;height:4px;background-color:currentColor;opacity:.6;transition:width .1s linear;z-index:1}.toast--success .toast__icon{color:var(--color-accent)}.toast--success .toast__progress{background-color:var(--color-accent)}.toast--error .toast__icon{color:var(--color-danger)}.toast--error .toast__progress{background-color:var(--color-danger)}.toast--info .toast__icon{color:var(--color-action)}.toast--info .toast__progress{background-color:var(--color-action)}.toast--warning .toast__icon{color:var(--color-warning, #f59e0b)}.toast--warning .toast__progress{background-color:var(--color-warning, #f59e0b)}@keyframes toastSlideIn{0%{transform:translate(-100%) scale(.95);opacity:0}60%{transform:translate(8px) scale(1.02);opacity:.95}to{transform:translate(0) scale(1);opacity:1}}@keyframes toastSlideOut{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(-100%) scale(.95);opacity:0}}.toast:not(:first-child){margin-top:calc(var(--spacing-sm) * -1)}.toast:not(:first-child).toast--entering{animation:toastStackSlideIn .3s ease-out forwards}@keyframes toastStackSlideIn{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.toast__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}.focus-base:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.focus-interactive:focus-visible{outline:2px solid var(--color-action);outline-offset:2px;border-radius:4px}.focus-danger:focus-visible{outline:2px solid var(--color-danger);outline-offset:2px}.focus-inset:focus-visible{outline:2px solid var(--color-action);outline-offset:-2px}.skip-link{position:absolute;top:-40px;left:8px;background:var(--color-action);color:var(--body-bg);padding:8px 16px;text-decoration:none;border-radius:4px;font-weight:600;z-index:1000}.skip-link:focus{top:8px}.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}.radio-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.radio-group--horizontal{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-md)}.radio-group--compact{gap:var(--spacing-xs)}.radio-group--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-sm)}.radio-group input[type=radio]:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}@media (max-width: 768px){.radio-group--horizontal{flex-direction:column}.radio-group--grid{grid-template-columns:1fr}}.radio-option{display:flex;align-items:center;padding:var(--spacing-md);background:var(--surface-bg);border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative}.radio-option:hover{background:var(--surface-medium-contrast);border-color:var(--line-medium-contrast)}.radio-option:has(input:checked){background:var(--surface-medium-contrast);border-color:var(--color-action)}.radio-option:has(input:focus-visible){outline:2px solid var(--color-action);outline-offset:2px}.radio-option--compact{padding:var(--spacing-sm) var(--spacing-md)}.radio-option--large{padding:var(--spacing-lg)}.radio-option__input{margin:0 var(--spacing-md) 0 0;width:20px;height:20px;accent-color:var(--color-action);cursor:pointer}.radio-option__input:focus{outline:none}.radio-option__content{display:flex;flex-direction:column;gap:2px;flex:1}.radio-option__title{color:var(--body-text);font-size:var(--font-size-sm);font-weight:600;margin:0}.radio-option__description{color:var(--body-text-muted);font-size:var(--font-size-xs);margin:0}.radio-option:has(input:disabled){opacity:.6;cursor:not-allowed;pointer-events:none}.theme-card{--theme-card-bg: var(--color-surface);--theme-card-ink: var(--color-on-surface);--theme-card-meta: var(--color-on-surface-muted);--theme-card-period: var(--color-tertiary);--theme-card-ring: var(--color-tertiary);--theme-card-dot-1: var(--color-tertiary);--theme-card-dot-2: var(--color-accent);--theme-card-dot-3: var(--color-primary);display:block;position:relative;padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);cursor:pointer;transition:box-shadow var(--motion-fast, .15s) var(--ease-standard, ease-out)}.theme-card+.theme-card{margin-top:var(--space-md)}.theme-card:hover{box-shadow:var(--shadow-pill)}.theme-card:has(:focus-visible){outline:2px solid var(--color-primary);outline-offset:3px}.theme-card--selected{box-shadow:0 0 0 2px var(--theme-card-ring),var(--shadow-card)}.theme-card[data-theme=salt]{--theme-card-bg: #eef0ee;--theme-card-ink: #0c2a4a;--theme-card-meta: #566b80;--theme-card-period: #b34a3a;--theme-card-ring: #b34a3a;--theme-card-dot-1: #b34a3a;--theme-card-dot-2: #86a08e;--theme-card-dot-3: #0c2a4a}.theme-card[data-theme=fog]{--theme-card-bg: #eaeae3;--theme-card-ink: #152a44;--theme-card-meta: #5d6b7a;--theme-card-period: #bb4a44;--theme-card-ring: #bb4a44;--theme-card-dot-1: #bb4a44;--theme-card-dot-2: #5d7d6e;--theme-card-dot-3: #152a44}.theme-card[data-theme=verandah]{--theme-card-bg: #f4ebde;--theme-card-ink: #2b2f5c;--theme-card-meta: #6a6e85;--theme-card-period: #b34a3a;--theme-card-ring: #b34a3a;--theme-card-dot-1: #b34a3a;--theme-card-dot-2: #91a08a;--theme-card-dot-3: #2b2f5c}.theme-card__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.theme-card__preview{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg);background:var(--theme-card-bg);color:var(--theme-card-ink);border-radius:var(--radius-card);margin-bottom:var(--space-md)}.theme-card__meta{font-family:var(--font-sans);font-size:var(--type-meta-size);font-weight:var(--type-meta-weight);letter-spacing:var(--type-meta-letter-spacing);text-transform:var(--type-meta-transform);color:var(--theme-card-meta)}.theme-card__title{font-family:var(--font-serif);font-size:clamp(28px,2vw + 16px,32px);line-height:1.05;letter-spacing:-.4px;color:var(--theme-card-ink)}.theme-card__accent{color:var(--theme-card-period)}.theme-card__dots{display:flex;gap:var(--space-sm)}.theme-card__dot{display:inline-block;width:14px;height:14px;border-radius:var(--radius-pill);background:var(--dot-color, var(--theme-card-ink))}.theme-card__dot--1{--dot-color: var(--theme-card-dot-1)}.theme-card__dot--2{--dot-color: var(--theme-card-dot-2)}.theme-card__dot--3{--dot-color: var(--theme-card-dot-3)}.theme-card__row{display:flex;align-items:center;gap:var(--space-md);padding:0 var(--space-sm)}.theme-card__radio{flex:0 0 auto;width:22px;height:22px;border-radius:var(--radius-pill);border:1.5px solid var(--color-rule);background:var(--color-surface);position:relative;transition:background-color var(--motion-fast, .15s) var(--ease-standard, ease-out),border-color var(--motion-fast, .15s) var(--ease-standard, ease-out)}.theme-card__input:checked~.theme-card__row .theme-card__radio{background:var(--theme-card-ring);border-color:var(--theme-card-ring)}.theme-card__input:checked~.theme-card__row .theme-card__radio:after{content:"";position:absolute;inset:0;background-color:#fff;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:14px 14px;mask-size:14px 14px}.theme-card__details{display:flex;flex-direction:column;gap:2px;min-width:0}.theme-card__name{font-family:var(--font-serif);font-size:var(--type-h2-size);line-height:1.1;color:var(--color-on-surface)}.theme-card__desc{font-family:var(--font-serif);font-style:italic;font-size:var(--type-body-size);color:var(--color-on-surface-muted)}.mode-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}@media (max-width: 600px){.mode-picker{grid-template-columns:1fr}}.mode-card{display:block;position:relative;padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);cursor:pointer;transition:box-shadow var(--motion-fast, .15s) var(--ease-standard, ease-out)}.mode-card:hover{box-shadow:var(--shadow-pill)}.mode-card:has(:focus-visible){outline:2px solid var(--color-primary);outline-offset:3px}.mode-card--selected{box-shadow:0 0 0 2px var(--color-tertiary),var(--shadow-card)}.mode-card__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mode-card__preview{display:grid;place-items:center;aspect-ratio:4/3;padding:var(--space-md);margin-bottom:var(--space-md);border-radius:var(--radius-card);overflow:hidden;background:var(--mode-preview-bg, var(--color-surface-alt));color:var(--mode-preview-ink, var(--color-on-surface))}.mode-card__mock{width:100%;max-width:160px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;background:var(--mode-preview-card, #ffffff);border-radius:6px;box-shadow:0 1px #0000000a,0 4px 10px #0000000f}.mode-card__mock-title{font-family:var(--font-serif);font-size:14px;line-height:1.1;color:var(--mode-preview-ink)}.mode-card__mock-accent{color:var(--mode-preview-accent)}.mode-card__mock-line{height:3px;width:90%;background:var(--mode-preview-ink);opacity:.2;border-radius:99px}.mode-card__mock-line--short{width:55%}.mode-card__mock-line--med{width:72%}[data-theme=salt] .mode-card--light .mode-card__preview{--mode-preview-bg: #eef0ee;--mode-preview-card: #ffffff;--mode-preview-ink: #0c2a4a;--mode-preview-accent: #b34a3a}[data-theme=salt] .mode-card--dark .mode-card__preview{--mode-preview-bg: #0a1d33;--mode-preview-card: #13283f;--mode-preview-ink: #eef0ee;--mode-preview-accent: #d96550}[data-theme=salt] .mode-card--auto .mode-card__preview{background:linear-gradient(135deg,#eef0ee 0% 49.5%,#0a1d33 50.5% 100%);--mode-preview-card: #ffffff;--mode-preview-ink: #0c2a4a;--mode-preview-accent: #b34a3a}[data-theme=fog] .mode-card--light .mode-card__preview{--mode-preview-bg: #eaeae3;--mode-preview-card: #ffffff;--mode-preview-ink: #152a44;--mode-preview-accent: #bb4a44}[data-theme=fog] .mode-card--dark .mode-card__preview{--mode-preview-bg: #1c1d1a;--mode-preview-card: #272826;--mode-preview-ink: #eaeae3;--mode-preview-accent: #d65a52}[data-theme=fog] .mode-card--auto .mode-card__preview{background:linear-gradient(135deg,#eaeae3 0% 49.5%,#1c1d1a 50.5% 100%);--mode-preview-card: #ffffff;--mode-preview-ink: #152a44;--mode-preview-accent: #bb4a44}[data-theme=verandah] .mode-card--light .mode-card__preview{--mode-preview-bg: #f4ebde;--mode-preview-card: #fcf6ea;--mode-preview-ink: #2b2f5c;--mode-preview-accent: #b34a3a}[data-theme=verandah] .mode-card--dark .mode-card__preview{--mode-preview-bg: #1a1f3a;--mode-preview-card: #252a48;--mode-preview-ink: #f4ebde;--mode-preview-accent: #d96550}[data-theme=verandah] .mode-card--auto .mode-card__preview{background:linear-gradient(135deg,#f4ebde 0% 49.5%,#1a1f3a 50.5% 100%);--mode-preview-card: #fcf6ea;--mode-preview-ink: #2b2f5c;--mode-preview-accent: #b34a3a}.mode-card__row{display:flex;align-items:center;gap:var(--space-sm);padding:0 var(--space-xs)}.mode-card__radio{flex:0 0 auto;width:20px;height:20px;border-radius:var(--radius-pill);border:1.5px solid var(--color-rule);background:var(--color-surface);position:relative;transition:background-color var(--motion-fast, .15s) var(--ease-standard, ease-out),border-color var(--motion-fast, .15s) var(--ease-standard, ease-out)}.mode-card__input:checked~.mode-card__row .mode-card__radio{background:var(--color-tertiary);border-color:var(--color-tertiary)}.mode-card__input:checked~.mode-card__row .mode-card__radio:after{content:"";position:absolute;inset:0;background-color:var(--color-on-tertiary);-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:12px 12px;mask-size:12px 12px}.mode-card__details{display:flex;flex-direction:column;gap:1px;min-width:0}.mode-card__name{font-family:var(--font-serif);font-size:var(--type-item-size);line-height:1.1;color:var(--color-on-surface)}.mode-card__desc{font-family:var(--font-serif);font-style:italic;font-size:var(--type-italic-quiet-size);color:var(--color-on-surface-muted)}.checkbox-field{display:flex;align-items:flex-start;gap:var(--space-lg);padding:var(--space-md) var(--space-lg);background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:2px;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard);position:relative}.checkbox-field:hover{border-color:color-mix(in srgb,var(--color-tertiary) 35%,var(--color-rule))}.checkbox-field:has(input:checked){background-color:color-mix(in srgb,var(--color-tertiary) 5%,var(--color-surface));border-color:color-mix(in srgb,var(--color-tertiary) 35%,var(--color-rule))}.checkbox-field:has(input:focus-visible){outline:2px solid var(--color-tertiary);outline-offset:2px}.checkbox-field--compact{padding:var(--space-sm) var(--space-md)}.checkbox-field--large{padding:var(--space-lg)}.checkbox-field--inline{display:inline-flex;width:auto;background:transparent;padding:0;border:none}.checkbox-field--inline:hover{background:transparent}.checkbox-field__input{appearance:none;-webkit-appearance:none;flex-shrink:0;order:2;align-self:center;margin:0;width:44px;height:24px;background-color:var(--color-rule);border:1px solid transparent;border-radius:999px;cursor:pointer;position:relative;transition:background-color var(--motion-normal) var(--ease-standard)}.checkbox-field__input:before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background-color:var(--color-surface);box-shadow:0 1px 2px #0c2a4a2e,0 0 0 .5px #0c2a4a14;transition:transform var(--motion-normal) var(--ease-emphasized)}.checkbox-field__input:checked{background-color:var(--color-tertiary)}.checkbox-field__input:checked:before{transform:translate(20px)}.checkbox-field__input:focus{outline:none}.checkbox-field__content{display:flex;flex-direction:column;gap:var(--space-xs);flex:1;order:1;min-width:0}.checkbox-field__title{font-family:var(--font-sans);font-size:var(--type-control-size);font-weight:600;color:var(--color-on-surface);margin:0;line-height:1.3}.checkbox-field__description{font-family:var(--font-serif);font-style:italic;font-size:var(--type-body-size);color:var(--color-on-surface-muted);line-height:1.45;margin:0}.checkbox-field:has(input:disabled){opacity:.55;cursor:not-allowed;pointer-events:none}.checkbox-field--error{border-color:var(--color-danger)}.checkbox-field--error .checkbox-field__title{color:var(--color-danger)}.progress-bar{width:100%;margin:var(--spacing-md) 0}.progress-bar__label{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-color-muted)}.progress-bar__text{flex:1}.progress-bar__percentage{font-weight:var(--font-weight-medium);color:var(--text-color);min-width:3rem;text-align:right}.progress-bar__track{width:100%;height:8px;background-color:color-mix(in srgb,var(--color-on-surface) 12%,transparent);border-radius:var(--radius-pill);overflow:hidden;position:relative}.progress-bar__fill{height:100%;background:var(--color-tertiary);border-radius:var(--radius-pill);transition:width var(--motion-normal) var(--ease-standard);position:relative}.progress-bar__fill:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-on-tertiary) 25%,transparent) 50%,transparent 100%);animation:shimmer 2s infinite}.progress-bar--completed .progress-bar__fill{background:#22c55e}.progress-bar--completed .progress-bar__fill:after{animation:none}.progress-bar--error .progress-bar__fill,.progress-bar--danger .progress-bar__fill{background:var(--color-danger)}.progress-bar--error .progress-bar__fill:after,.progress-bar--danger .progress-bar__fill:after{animation:none}.progress-bar--warning .progress-bar__fill{background:#f59e0b}.progress-bar--warning .progress-bar__fill:after{animation:none}.progress-bar--small .progress-bar__track{height:4px}.progress-bar--small .progress-bar__label{font-size:var(--font-size-xs)}.progress-bar--large .progress-bar__track{height:12px}.progress-bar--large .progress-bar__label{font-size:var(--font-size-base)}@keyframes shimmer{0%{left:-100%}to{left:100%}}@media (prefers-contrast: high){.progress-bar__track{border:1px solid var(--text-color)}.progress-bar__fill{background:var(--text-color)}.progress-bar__fill:after{display:none}}@media (prefers-reduced-motion: reduce){.progress-bar__fill{transition:none}.progress-bar__fill:after{animation:none}}.progress-dots{display:flex;justify-content:center;gap:var(--spacing-sm)}.progress-dots__dot{width:8px;height:8px;border-radius:50%;background-color:var(--line-low-contrast);transition:all .3s ease}.progress-dots__dot--active{background-color:var(--color-accent);transform:scale(1.25)}.progress-dots__dot--completed{background-color:var(--color-accent)}.feature-card{text-align:center;padding:var(--spacing-lg)}.feature-card__icon{width:64px;height:64px;margin:0 auto var(--spacing-md);display:flex;align-items:center;justify-content:center;background:var(--line-low-contrast);border-radius:50%}.feature-card__icon svg{width:32px;height:32px;color:var(--body-text-muted)}.feature-card__title{font-family:var(--accent-font);font-size:var(--font-size-md);font-weight:600;margin:0 0 var(--spacing-sm);color:var(--body-text)}.feature-card__description{font-size:var(--font-size-sm);color:var(--body-text-muted);margin:0;line-height:1.5}.feature-cards{display:flex;gap:var(--spacing-md);margin:var(--spacing-lg) 0}@media (max-width: 768px){.feature-cards{flex-direction:column}}.feature-cards .feature-card{flex:1}.quota-display{padding:var(--space-md);background:var(--color-surface);border-radius:var(--radius-card);border:1px solid var(--color-rule);box-shadow:var(--shadow-card)}.quota-display__header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.quota-display__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-color)}.quota-display__reset{font-size:var(--font-size-xs)}.quota-display .progress-bar{margin:0}.marketing-wrap{max-width:1080px;margin-inline:auto;padding-inline:var(--space-lg)}@media (max-width: 640px){.marketing-wrap{padding-inline:var(--space-md)}}.wordmark{font-family:var(--font-serif);font-size:var(--type-h2-size);font-weight:500;line-height:1;letter-spacing:-.3px;color:var(--color-on-surface);text-decoration:none}.wordmark__dot{color:var(--color-tertiary)}.wordmark--lg{font-size:clamp(28px,2vw + 18px,38px)}.marketing-header{position:sticky;top:0;z-index:20;background-color:var(--color-surface-alt);border-bottom:1px solid var(--color-rule)}.marketing-header__inner{max-width:1080px;margin-inline:auto;padding:var(--space-md) var(--space-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.marketing-header__actions{display:flex;align-items:center;gap:var(--space-sm)}.marketing-header .button{width:auto}@media (max-width: 640px){.marketing-header__inner{padding-inline:var(--space-md)}.marketing-header .button{padding:10px var(--space-md);font-size:var(--type-meta-size)}}.hero{text-align:center;padding-block:clamp(var(--space-xl),8vw,96px) var(--space-xl)}.hero__eyebrow{display:block;margin-bottom:var(--space-md);color:var(--color-tertiary)}.hero__title{max-width:18ch;margin-inline:auto}.hero__subhead{max-width:56ch;margin:var(--space-lg) auto 0;font-family:var(--font-sans);font-size:clamp(16px,.6vw + 14px,18px);line-height:1.6;color:var(--color-on-surface)}.hero__actions{margin-top:var(--space-xl)}.hero-video{margin:clamp(var(--space-xl),6vw,64px) auto 0;max-width:900px}.hero-video__frame{position:relative;aspect-ratio:16/9;border-radius:var(--radius-card);overflow:hidden;background-color:var(--color-surface);border:1px solid var(--color-rule);box-shadow:var(--shadow-floating);display:flex;align-items:center;justify-content:center}.hero-video video,.hero-video img{width:100%;height:100%;object-fit:cover;display:block}.hero-video__placeholder{text-align:center;padding:var(--space-xl);color:var(--color-on-surface-muted)}.hero-video__placeholder-mark{font-family:var(--font-serif);font-size:clamp(40px,6vw,72px);line-height:1;color:var(--color-on-surface-quiet)}.hero-video__caption{margin-top:var(--space-md);text-align:center}.m-section{padding-block:clamp(var(--space-xl),7vw,80px)}.m-section__head{max-width:60ch;margin:0 auto var(--space-xl);text-align:center}.m-section__overline{display:block;margin-bottom:var(--space-sm)}.m-section__lead{max-width:60ch;margin:var(--space-md) auto 0;font-family:var(--font-sans);font-size:clamp(15px,.5vw + 14px,17px);line-height:1.6;color:var(--color-on-surface)}.m-section--card .m-section__panel{background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:clamp(var(--space-lg),5vw,56px);text-align:center}.m-section--card .m-section__lead{color:var(--color-on-surface-muted)}.m-ways{align-items:stretch}.m-ways .feature-card{text-align:left;background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-xl);display:flex;flex-direction:column}.m-ways .feature-card__icon{margin:0 0 var(--space-md);background:color-mix(in srgb,var(--color-accent) 16%,transparent)}.m-ways .feature-card__icon svg{color:var(--color-accent)}.m-ways .feature-card__title{font-weight:500;line-height:1.2}.m-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(var(--space-lg),4vw,56px);align-items:center}@media (max-width: 760px){.m-split{grid-template-columns:1fr;text-align:center}}.m-split__visual{background-color:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:clamp(var(--space-lg),4vw,var(--space-xl))}.m-split .m-section__lead{margin-inline:0;max-width:52ch}.m-chips{display:flex;flex-wrap:wrap;gap:var(--space-sm)}@media (max-width: 760px){.m-chips{justify-content:center}}.m-chips .chip:before{display:none}.m-chips__label{display:block;margin:var(--space-lg) 0 var(--space-sm)}.m-touches{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);text-align:center}@media (max-width: 760px){.m-touches{grid-template-columns:1fr}}.m-touches__item{padding:var(--space-lg)}@media (min-width: 761px){.m-touches__item+.m-touches__item{border-left:1px solid var(--color-rule)}}.m-touches__title{font-family:var(--font-serif);font-size:var(--type-item-size);line-height:1.25;margin:0 0 var(--space-xs);color:var(--color-on-surface)}.m-touches__text{font-family:var(--font-sans);font-size:var(--type-body-size);line-height:1.55;color:var(--color-on-surface);margin:0}.m-cta{text-align:center;padding-block:clamp(var(--space-xl),8vw,96px)}.m-cta__title{margin:0 auto var(--space-lg);max-width:18ch}.marketing-footer{border-top:1px solid var(--color-rule);padding-block:var(--space-xl);text-align:center}.marketing-footer__brand{margin-bottom:var(--space-sm);display:inline-block}.marketing-footer__line{font-family:var(--font-sans);font-size:var(--type-meta-size);color:var(--color-on-surface);margin:var(--space-xs) 0 0}.marketing-footer__tag{font-family:var(--font-sans);font-size:var(--type-meta-size);font-weight:var(--type-meta-weight);letter-spacing:var(--type-meta-letter-spacing);text-transform:var(--type-meta-transform);color:var(--color-tertiary);margin-top:var(--space-sm)}.m-section__head h2,.m-section--card h2,.m-cta__title{font-size:clamp(27px,1.6vw + 18px,34px);line-height:1.12;letter-spacing:-.4px}[x-cloak]{display:none!important}.status-list{list-style:none;padding:0;margin:0}.status-list li{display:flex;align-items:center;margin-bottom:.5rem;opacity:.5;transition:opacity .3s ease}.status-list li.status-list__item--active{opacity:1;font-weight:500}.status-list li.status-list__item--active .status-list__icon{color:var(--color-primary)}.status-list__icon{margin-right:.5rem;font-size:1rem;transition:color .3s ease}.status-list__text{font-size:.9rem}
