@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-vietnamese-wght-normal-CHiFlh_0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}body{min-width:20rem;margin:0;background:var(--color-bg-page);color:var(--color-text-primary);font:400 var(--font-size-md) / var(--font-line-normal) var(--font-family-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}h1,h2,h3,p,ul,ol{margin:0}a{color:var(--color-text-brand)}a:focus-visible{outline:var(--size-border-strong) solid var(--color-border-focus);outline-offset:2px}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-main{flex:1;width:100%;max-width:72rem;margin:0 auto;padding:var(--space-8) var(--space-4)}.app-nav-link{display:inline-flex;align-items:center;min-height:var(--size-control-sm);padding:0 var(--space-3);border-radius:var(--radius-md);font:600 var(--font-size-md) / 1 var(--font-family-body);text-decoration:none}.app-nav-link:hover,.app-nav-link[aria-current=page]{background:var(--color-bg-brand-subtle)}.visually-hidden,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:var(--space-2);left:var(--space-2);z-index:100;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-bg-surface)}.page{display:flex;flex-direction:column;gap:var(--space-6)}.page-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2) var(--space-6)}.page-title{font:800 var(--font-size-3xl) / var(--font-line-tight) var(--font-family-display)}.page-note{color:var(--color-text-secondary)}.filters{display:flex;flex-wrap:wrap;gap:var(--space-4);max-width:20rem}.recipes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:var(--space-6)}.recipe-sections{display:grid;gap:var(--space-8)}@media(min-width:56rem){.recipe-sections{grid-template-columns:minmax(16rem,1fr) 2fr;align-items:start}}.recipe-panel{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);border:var(--size-border) solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-surface)}.page--loading{min-height:100svh}.recipe-source{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:var(--size-border) solid var(--color-border-default);border-left:var(--size-border-strong) solid var(--color-border-focus);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.recipe-source__title{font:700 var(--font-size-md) / var(--font-line-snug) var(--font-family-body)}.recipe-source a{overflow-wrap:anywhere}.section-title{font:700 var(--font-size-2xl) / var(--font-line-snug) var(--font-family-display)}.ingredient-list{display:flex;flex-direction:column;gap:var(--space-2);padding-left:var(--space-5)}.step-list{display:flex;flex-direction:column;gap:var(--space-6);padding:0;list-style:none}.step-item{display:flex;flex-direction:column;gap:var(--space-3)}.step-image{width:100%;max-width:32rem;aspect-ratio:4 / 3;object-fit:contain;background:var(--color-bg-subtle);border-radius:var(--radius-md)}.meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.centered{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding-block:var(--space-8)}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--size-control-md);padding:0 var(--space-5);border:var(--size-border-strong) solid transparent;border-radius:var(--radius-md);font:600 var(--font-size-md) / 1 var(--font-family-body);cursor:pointer;transition:background-color .15s,border-color .15s}.ui-button--sm{min-height:var(--size-control-sm);padding:0 var(--space-4);font-size:var(--font-size-sm)}.ui-button--primary{background:var(--color-bg-brand);color:var(--color-text-on-brand)}.ui-button--primary:hover:not(:disabled),.ui-button--primary[data-forced=hover]{background:var(--color-bg-brand-hover)}.ui-button--secondary{background:var(--color-bg-surface);border-color:var(--color-border-strong);color:var(--color-text-primary)}.ui-button--secondary:hover:not(:disabled),.ui-button--secondary[data-forced=hover]{background:var(--color-bg-subtle)}.ui-button--ghost{background:transparent;color:var(--color-text-brand)}.ui-button--ghost:hover:not(:disabled),.ui-button--ghost[data-forced=hover]{background:var(--color-bg-brand-subtle)}.ui-button--danger{background:var(--color-bg-danger);color:var(--color-text-on-brand)}.ui-button--danger:hover:not(:disabled),.ui-button--danger[data-forced=hover]{background:var(--color-bg-danger-hover)}.ui-button:focus-visible,.ui-button[data-forced=focus]{outline:var(--size-border-strong) solid var(--color-border-focus);outline-offset:2px}.ui-button:disabled{background:var(--color-bg-disabled);border-color:transparent;color:var(--color-text-muted);cursor:not-allowed}.ui-icon{flex:none}.ui-icon-button{width:var(--size-control-md);padding:0}.ui-icon-button.ui-button--sm{width:var(--size-control-sm)}.ui-dialog__overlay{position:fixed;inset:0;z-index:50;background:var(--color-bg-overlay)}.ui-dialog__content{position:fixed;top:50%;left:50%;z-index:51;display:flex;flex-direction:column;gap:var(--space-3);width:min(32rem,calc(100vw - var(--space-8)));max-height:85vh;padding:var(--space-6);overflow:auto;transform:translate(-50%,-50%);border:var(--size-border) solid var(--color-border-default);border-radius:var(--radius-xl);background:var(--color-bg-surface);color:var(--color-text-primary);box-shadow:var(--shadow-raised)}.ui-dialog__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.ui-dialog__title{font:700 var(--font-size-xl) / var(--font-line-snug) var(--font-family-display)}.ui-dialog__description{color:var(--color-text-secondary);font:400 var(--font-size-md) / var(--font-line-normal) var(--font-family-body)}.ui-dialog__footer{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2)}.ui-toast__viewport{position:fixed;right:var(--space-4);bottom:var(--space-4);z-index:70;display:flex;flex-direction:column;gap:var(--space-2);width:min(24rem,calc(100vw - var(--space-8)));margin:0;padding:0;list-style:none}.ui-toast{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:var(--size-border) solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-primary);box-shadow:var(--shadow-raised)}.ui-toast--info .ui-icon{color:var(--color-text-brand)}.ui-toast--success .ui-icon{color:var(--color-text-success)}.ui-toast--danger .ui-icon{color:var(--color-text-danger)}.ui-toast__text{flex:1}.ui-toast__title{font:700 var(--font-size-md) / var(--font-line-snug) var(--font-family-body)}.ui-toast__description{color:var(--color-text-secondary);font:400 var(--font-size-sm) / var(--font-line-normal) var(--font-family-body)}.ui-toast__close{padding:var(--space-1);border:0;border-radius:var(--radius-sm);background:none;color:var(--color-text-secondary);cursor:pointer}.ui-toast__close:focus-visible{outline:var(--size-border-strong) solid var(--color-border-focus)}.ui-footer{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6) var(--space-4);border-top:var(--size-border) solid var(--color-border-default);background:var(--color-bg-subtle);color:var(--color-text-secondary);font:400 var(--font-size-sm) / var(--font-line-normal) var(--font-family-body)}.ui-footer__links{display:flex;flex-wrap:wrap;gap:var(--space-4)}.ui-footer__note{color:var(--color-text-muted)}.ui-header{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-6);min-height:var(--size-control-lg);padding:var(--space-2) var(--space-4);border-bottom:var(--size-border) solid var(--color-border-default);background:var(--color-bg-surface)}.ui-header__brand{color:var(--color-text-brand);font:800 var(--font-size-xl) / 1 var(--font-family-display)}.ui-header__nav{display:flex;flex:1;flex-wrap:wrap;gap:var(--space-2)}.ui-header__actions{display:flex;gap:var(--space-2);margin-left:auto}@media(max-width:40rem){.ui-header__nav{order:3;flex-basis:100%}}.ui-field{display:flex;flex-direction:column;gap:var(--space-1)}.ui-field__label{font:600 var(--font-size-sm) / var(--font-line-snug) var(--font-family-body);color:var(--color-text-primary)}.ui-field__control{min-height:var(--size-control-md);padding:0 var(--space-3);border:var(--size-border) solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-primary);font:400 var(--font-size-md) / var(--font-line-normal) var(--font-family-body)}textarea.ui-field__control{padding:var(--space-3);resize:vertical}.ui-field__control::placeholder{color:var(--color-text-muted)}.ui-field__control:focus-visible{outline:var(--size-border-strong) solid var(--color-border-focus);outline-offset:1px}.ui-field__control--error{border-color:var(--color-border-danger)}.ui-field__control:disabled{background:var(--color-bg-disabled);color:var(--color-text-muted);cursor:not-allowed}.ui-field__note{font:400 var(--font-size-sm) / var(--font-line-snug) var(--font-family-body);color:var(--color-text-secondary)}.ui-field__note--error{color:var(--color-text-danger)}.ui-select__trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);text-align:left;cursor:pointer}.ui-select__trigger[data-placeholder]{color:var(--color-text-muted)}.ui-select__content{z-index:60;min-width:var(--reka-select-trigger-width);padding:var(--space-1);border:var(--size-border) solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);box-shadow:var(--shadow-raised)}.ui-select__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:var(--size-control-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-primary);font:400 var(--font-size-md) / 1 var(--font-family-body);cursor:pointer;outline:none}.ui-select__item[data-highlighted]{background:var(--color-bg-brand-subtle);color:var(--color-text-brand)}.ui-skeleton{display:block;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-bg-subtle) 25%,var(--color-bg-disabled) 50%,var(--color-bg-subtle) 75%);background-size:200% 100%;animation:ui-skeleton-shimmer 1.4s linear infinite}.ui-skeleton--round{border-radius:var(--radius-full)}@keyframes ui-skeleton-shimmer{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.ui-skeleton{animation:none}}.recipe-skeleton{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:var(--size-border) solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-surface)}.ui-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-12) var(--space-6);text-align:center}.ui-empty__icon{display:grid;place-items:center;width:var(--size-avatar-lg);height:var(--size-avatar-lg);border-radius:var(--radius-full);background:var(--color-bg-brand-subtle);color:var(--color-text-brand)}.ui-empty__title{color:var(--color-text-primary);font:700 var(--font-size-xl) / var(--font-line-snug) var(--font-family-display)}.ui-empty__description{max-width:28rem;color:var(--color-text-secondary);font:400 var(--font-size-md) / var(--font-line-normal) var(--font-family-body)}.ui-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font:600 var(--font-size-xs) / 1 var(--font-family-body)}.ui-badge--neutral{background:var(--color-bg-subtle);color:var(--color-text-secondary)}.ui-badge--brand{background:var(--color-bg-brand-subtle);color:var(--color-text-brand)}.ui-badge--success{background:var(--color-bg-success);color:var(--color-text-success)}.ui-badge--highlight{background:var(--color-bg-highlight);color:var(--color-text-highlight)}.ui-badge--danger{background:var(--color-bg-danger-subtle);color:var(--color-text-danger)}.ui-recipe-card{position:relative;display:flex;flex-direction:column;overflow:hidden;border:var(--size-border) solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-surface);box-shadow:var(--shadow-raised)}.ui-recipe-card:focus-within{outline:var(--size-border-strong) solid var(--color-border-focus);outline-offset:2px}.ui-recipe-card__media{position:relative;display:grid;place-items:center;aspect-ratio:16 / 10;background:var(--color-bg-brand-subtle);color:var(--color-text-brand)}.ui-recipe-card__media img{width:100%;height:100%;object-fit:cover}.ui-recipe-card__flag{position:absolute;top:var(--space-3);left:var(--space-3)}.ui-recipe-card__body{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.ui-recipe-card__title{font:700 var(--font-size-lg) / var(--font-line-snug) var(--font-family-display)}.ui-recipe-card__open{padding:0;border:0;background:none;color:var(--color-text-primary);font:inherit;text-align:left;cursor:pointer}.ui-recipe-card__open:after{content:"";position:absolute;inset:0}.ui-recipe-card__open:focus-visible{outline:none}.ui-recipe-card__meta{display:flex;align-items:center;gap:var(--space-3)}.ui-recipe-card__time{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-secondary);font:400 var(--font-size-sm) / 1 var(--font-family-body)}.ui-checkbox{display:inline-flex;align-items:center;gap:var(--space-2)}.ui-checkbox__box{display:grid;place-items:center;width:var(--size-icon-lg);height:var(--size-icon-lg);padding:0;border:var(--size-border-strong) solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-on-brand);cursor:pointer}.ui-checkbox__box[data-state=checked]{background:var(--color-bg-brand);border-color:var(--color-bg-brand)}.ui-checkbox__box:focus-visible{outline:var(--size-border-strong) solid var(--color-border-focus);outline-offset:2px}.ui-checkbox__box[data-disabled]{background:var(--color-bg-disabled);border-color:var(--color-bg-disabled);cursor:not-allowed}.ui-checkbox__label{font:400 var(--font-size-md) / var(--font-line-snug) var(--font-family-body);color:var(--color-text-primary)}:root{--neutral-0: #ffffff;--neutral-50: #f7f6f3;--neutral-100: #efede8;--neutral-200: #e1ded6;--neutral-300: #c9c5ba;--neutral-400: #a8a498;--neutral-500: #6b675c;--neutral-600: #55524a;--neutral-700: #3d3b35;--neutral-800: #2a2925;--neutral-900: #1b1a17;--neutral-950: #12110f;--indigo-50: #eef0ff;--indigo-100: #dde1ff;--indigo-200: #bcc3ff;--indigo-400: #7d89f0;--indigo-500: #5563d6;--indigo-600: #3f4cb8;--indigo-700: #323d96;--indigo-900: #1a2058;--matcha-100: #e3f0d3;--matcha-300: #a8cf7a;--matcha-700: #3c6118;--matcha-900: #1f3010;--saffron-100: #fdefc4;--saffron-400: #f2b630;--saffron-700: #7a4f00;--saffron-900: #3a2900;--berry-100: #fde0e6;--berry-300: #f08aa0;--berry-500: #c2284d;--berry-600: #a81f40;--berry-700: #8a1633;--berry-900: #4a0f1f;--color-bg-page: var(--neutral-50);--color-bg-surface: var(--neutral-0);--color-bg-subtle: var(--neutral-100);--color-bg-disabled: var(--neutral-200);--color-bg-brand: var(--indigo-600);--color-bg-brand-hover: var(--indigo-700);--color-bg-brand-subtle: var(--indigo-50);--color-bg-success: var(--matcha-100);--color-bg-highlight: var(--saffron-100);--color-bg-danger: var(--berry-600);--color-bg-danger-hover: var(--berry-700);--color-bg-danger-subtle: var(--berry-100);--color-bg-overlay: rgb(18 17 15 / 55%);--color-text-primary: var(--neutral-900);--color-text-secondary: var(--neutral-600);--color-text-muted: var(--neutral-500);--color-text-on-brand: var(--neutral-0);--color-text-brand: var(--indigo-700);--color-text-success: var(--matcha-700);--color-text-highlight: var(--saffron-700);--color-text-danger: var(--berry-700);--color-border-default: var(--neutral-300);--color-border-strong: var(--neutral-500);--color-border-focus: var(--indigo-500);--color-border-danger: var(--berry-500);--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 999px;--size-control-sm: 36px;--size-control-md: 44px;--size-control-lg: 52px;--size-icon-sm: 16px;--size-icon-md: 20px;--size-icon-lg: 24px;--size-avatar-sm: 28px;--size-avatar-md: 40px;--size-avatar-lg: 56px;--size-border: 1px;--size-border-strong: 2px;--font-family-display: "Bricolage Grotesque Variable", "Hanken Grotesk Variable", system-ui, sans-serif;--font-family-body: "Hanken Grotesk Variable", system-ui, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.375rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2.25rem;--font-size-4xl: 3rem;--font-line-tight: 1.15;--font-line-snug: 1.3;--font-line-normal: 1.5;--font-line-relaxed: 1.65;--shadow-raised: 0 1px 2px rgb(18 17 15 / 8%), 0 6px 18px rgb(18 17 15 / 10%);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg-page: var(--neutral-950);--color-bg-surface: var(--neutral-900);--color-bg-subtle: var(--neutral-800);--color-bg-disabled: var(--neutral-700);--color-bg-brand: var(--indigo-400);--color-bg-brand-hover: var(--indigo-200);--color-bg-brand-subtle: var(--indigo-900);--color-bg-success: var(--matcha-900);--color-bg-highlight: var(--saffron-900);--color-bg-danger: var(--berry-300);--color-bg-danger-hover: var(--berry-100);--color-bg-danger-subtle: var(--berry-900);--color-bg-overlay: rgb(0 0 0 / 70%);--color-text-primary: var(--neutral-100);--color-text-secondary: var(--neutral-300);--color-text-muted: var(--neutral-400);--color-text-on-brand: var(--neutral-950);--color-text-brand: var(--indigo-200);--color-text-success: var(--matcha-300);--color-text-highlight: var(--saffron-400);--color-text-danger: var(--berry-300);--color-border-default: var(--neutral-700);--color-border-strong: var(--neutral-400);--color-border-focus: var(--indigo-200);--color-border-danger: var(--berry-300);--shadow-raised: 0 1px 2px rgb(0 0 0 / 40%), 0 6px 18px rgb(0 0 0 / 45%);color-scheme:dark}}:root[data-theme=dark]{--color-bg-page: var(--neutral-950);--color-bg-surface: var(--neutral-900);--color-bg-subtle: var(--neutral-800);--color-bg-disabled: var(--neutral-700);--color-bg-brand: var(--indigo-400);--color-bg-brand-hover: var(--indigo-200);--color-bg-brand-subtle: var(--indigo-900);--color-bg-success: var(--matcha-900);--color-bg-highlight: var(--saffron-900);--color-bg-danger: var(--berry-300);--color-bg-danger-hover: var(--berry-100);--color-bg-danger-subtle: var(--berry-900);--color-bg-overlay: rgb(0 0 0 / 70%);--color-text-primary: var(--neutral-100);--color-text-secondary: var(--neutral-300);--color-text-muted: var(--neutral-400);--color-text-on-brand: var(--neutral-950);--color-text-brand: var(--indigo-200);--color-text-success: var(--matcha-300);--color-text-highlight: var(--saffron-400);--color-text-danger: var(--berry-300);--color-border-default: var(--neutral-700);--color-border-strong: var(--neutral-400);--color-border-focus: var(--indigo-200);--color-border-danger: var(--berry-300);--shadow-raised: 0 1px 2px rgb(0 0 0 / 40%), 0 6px 18px rgb(0 0 0 / 45%);color-scheme:dark}.vote-page{display:flex;flex-direction:column;gap:var(--space-6);max-width:56rem;margin:0 auto;padding:var(--space-8) var(--space-4);color:var(--color-text-primary)}.vote-page__title{font:700 var(--font-size-3xl) / var(--font-line-tight) var(--font-family-display)}.vote-page__intro,.vote-page__meta{color:var(--color-text-secondary);font:400 var(--font-size-md) / var(--font-line-normal) var(--font-family-body)}.vote-page__heading{font:700 var(--font-size-xl) / var(--font-line-snug) var(--font-family-display)}.vote-page__row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.vote-page__row>.ui-field{flex:1 1 14rem}.vote-page__section{display:flex;flex-direction:column;gap:var(--space-3)}.vote-picker{display:flex;flex-direction:column;gap:var(--space-3);max-height:24rem;padding:var(--space-4);overflow:auto;border:var(--size-border) solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-surface)}.vote-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:var(--space-4)}.vote-option{display:flex;flex-direction:column;gap:var(--space-2)}.vote-option__tally{display:flex;justify-content:space-between;color:var(--color-text-secondary);font:600 var(--font-size-sm) / var(--font-line-snug) var(--font-family-body)}.vote-people{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.vote-people__item{display:flex;align-items:center;gap:var(--space-3)}.vote-people__name{flex:1}.ui-avatar{display:inline-flex;align-items:center;justify-content:center;width:var(--size-avatar-md);height:var(--size-avatar-md);overflow:hidden;border-radius:var(--radius-full);background:var(--color-bg-brand-subtle);color:var(--color-text-brand);font:700 var(--font-size-sm) / 1 var(--font-family-display)}.ui-avatar--sm{width:var(--size-avatar-sm);height:var(--size-avatar-sm);font-size:var(--font-size-xs)}.ui-avatar--lg{width:var(--size-avatar-lg);height:var(--size-avatar-lg);font-size:var(--font-size-lg)}.ui-avatar__image{width:100%;height:100%;object-fit:cover}.ui-progress{height:var(--space-2);overflow:hidden;border-radius:var(--radius-full);background:var(--color-bg-subtle)}.ui-progress__bar{height:100%;border-radius:var(--radius-full);background:var(--color-bg-brand);transition:width .3s}
