@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-cyrillic-ext-opsz-normal.DIwfbPUE.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-cyrillic-opsz-normal.C0olyEE-.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-greek-opsz-normal.DrHU7SY7.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-vietnamese-opsz-normal.BOyYyU_V.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-latin-ext-opsz-normal.HoL-AExg.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-latin-opsz-normal.BpEBLj1O.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(./source-serif-4-cyrillic-ext-opsz-italic.Bl6DJqma.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(./source-serif-4-cyrillic-opsz-italic.Dibx14aP.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(./source-serif-4-greek-opsz-italic.CMW9dfKg.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(./source-serif-4-vietnamese-opsz-italic.C-k5pZlm.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(./source-serif-4-latin-ext-opsz-italic.BhUEwDRF.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(./source-serif-4-latin-opsz-italic.BOLXpvkj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-opsz-normal.CfYZpDVp.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-opsz-normal.BFQXbQ-f.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-opsz-normal.BmPQvyvo.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-opsz-normal.BM0NlUE_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-opsz-normal.Ci9T9ieq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-opsz-normal.DpK-iCPk.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-opsz-normal.BwkfbSeq.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-opsz-italic.fe11NjBs.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-opsz-italic.Ck9oD2H0.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-opsz-italic.BIcRYUEt.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./inter-greek-opsz-italic.mtaF_0H_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-opsz-italic.C7TReJrb.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-opsz-italic.BLMf5All.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./inter-latin-opsz-italic.BbqH_2Ar.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box}:root{--blue-50:#f2f7fe;--blue-100:#e4eefb;--blue-200:#ccdef6;--blue-300:#a9c5e9;--blue-400:#7ea3d2;--blue-500:#5c85bb;--blue-600:#406aa0;--blue-700:#305481;--blue-800:#243f62;--blue-900:#1c2f47;--blue-950:#111f30;--neutral-0:#fff;--neutral-50:#f9fafc;--neutral-100:#f0f3f6;--neutral-200:#e2e7ed;--neutral-300:#d0d6de;--neutral-400:#aab2bb;--neutral-500:#858d97;--neutral-600:#646d78;--neutral-700:#4b535f;--neutral-800:#343d47;--neutral-900:#232b35;--neutral-950:#151c25;--success-50:#eaf8ec;--success-100:#d5f3da;--success-200:#b9e7c1;--success-500:#5a9667;--success-600:#3f774d;--success-700:#315e3c;--warning-50:#fff3df;--warning-100:#fce6c9;--warning-200:#f5d3a6;--warning-500:#cd9a50;--warning-600:#ae7b28;--warning-700:#8a5f18;--danger-50:#ffeeea;--danger-100:#ffdfd9;--danger-200:#ffc8c0;--danger-500:#cd6055;--danger-600:#b6443a;--danger-700:#93342c;--color-bg:var(--neutral-50);--color-bg-subtle:var(--neutral-100);--color-surface:var(--neutral-0);--color-surface-hover:var(--neutral-50);--color-surface-sunken:var(--neutral-100);--color-overlay:#151c258c;--color-text:var(--neutral-900);--color-text-muted:var(--neutral-600);--color-text-subtle:var(--neutral-500);--color-text-inverse:var(--neutral-50);--color-text-on-primary:var(--neutral-0);--color-text-link:var(--blue-700);--color-text-link-hover:var(--blue-800);--color-border:var(--neutral-200);--color-border-strong:var(--neutral-300);--color-border-interactive:var(--neutral-400);--color-primary:var(--blue-600);--color-primary-hover:var(--blue-700);--color-primary-active:var(--blue-800);--color-primary-subtle:var(--blue-50);--color-primary-subtle-hover:var(--blue-100);--color-primary-border:var(--blue-200);--color-primary-text:var(--blue-700);--color-on-primary:var(--neutral-0);--color-action:var(--blue-700);--color-action-hover:var(--blue-800);--color-action-active:var(--blue-900);--color-on-action:var(--neutral-0);--color-focus-ring:var(--blue-600);--color-success-surface:var(--success-50);--color-success-border:var(--success-200);--color-success-text:var(--success-700);--color-success-solid:var(--success-600);--color-on-success:var(--neutral-0);--color-warning-surface:var(--warning-50);--color-warning-border:var(--warning-200);--color-warning-text:var(--warning-700);--color-warning-solid:var(--warning-500);--color-on-warning:var(--neutral-900);--color-danger-surface:var(--danger-50);--color-danger-border:var(--danger-200);--color-danger-text:var(--danger-700);--color-danger-solid:var(--danger-600);--color-on-danger:var(--neutral-0);--color-info-surface:var(--blue-50);--color-info-border:var(--blue-200);--color-info-text:var(--blue-700);--color-info-solid:var(--blue-600);--color-on-info:var(--neutral-0);--gradient-brand:linear-gradient(135deg, var(--blue-600), var(--blue-800));--gradient-action:linear-gradient(135deg, var(--blue-700), var(--blue-900));--gradient-subtle:linear-gradient(135deg, var(--blue-50), var(--blue-100));--gradient-deep:linear-gradient(160deg, var(--blue-900), var(--blue-950));--gradient-glow:radial-gradient(120% 120% at 50% 0%, var(--blue-100), transparent 70%);--font-heading:"Source Serif 4 Variable", "Source Serif 4", Georgia, "Times New Roman", serif;--font-body:"Inter Variable", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-size-2xs:.6875rem;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-md:1.125rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:1.875rem;--font-size-3xl:2.25rem;--font-size-4xl:2.75rem;--font-size-5xl:3.5rem;--font-size-6xl:4.5rem;--line-height-none:1;--line-height-tight:1.15;--line-height-snug:1.3;--line-height-normal:1.5;--line-height-relaxed:1.65;--letter-spacing-tighter:-.03em;--letter-spacing-tight:-.015em;--letter-spacing-normal:0em;--letter-spacing-wide:.02em;--letter-spacing-wider:.08em;--measure:68ch;--space-0:0;--space-px:1px;--space-0-5:.125rem;--space-1:.25rem;--space-1-5:.375rem;--space-2:.5rem;--space-2-5:.625rem;--space-3:.75rem;--space-3-5:.875rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-11:2.75rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--space-40:10rem;--space-48:12rem;--space-gutter:clamp(1rem, 4vw, 2.5rem);--space-section:clamp(3rem, 8vw, 6rem);--container-xs:20rem;--container-sm:30rem;--container-md:48rem;--container-lg:64rem;--container-xl:80rem;--container-2xl:96rem;--container-prose:var(--measure);--radius-none:0;--radius-xs:.25rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-3xl:2rem;--radius-full:9999px;--radius-button:var(--radius-full);--radius-pill:var(--radius-full);--radius-control:var(--radius-md);--radius-card:var(--radius-lg);--radius-modal:var(--radius-xl);--shadow-color:21 28 37;--shadow-xs:0 1px 2px rgb(var(--shadow-color) / .06);--shadow-sm:0 1px 2px rgb(var(--shadow-color) / .05), 0 2px 4px rgb(var(--shadow-color) / .06);--shadow-md:0 2px 4px rgb(var(--shadow-color) / .05), 0 6px 12px -2px rgb(var(--shadow-color) / .1);--shadow-lg:0 4px 8px -2px rgb(var(--shadow-color) / .06), 0 12px 24px -6px rgb(var(--shadow-color) / .12);--shadow-xl:0 8px 16px -4px rgb(var(--shadow-color) / .08), 0 24px 48px -12px rgb(var(--shadow-color) / .16);--shadow-2xl:0 16px 32px -8px rgb(var(--shadow-color) / .12), 0 40px 72px -16px rgb(var(--shadow-color) / .22);--shadow-inner:inset 0 1px 2px rgb(var(--shadow-color) / .07);--elevation-rest:var(--shadow-sm);--elevation-raised:var(--shadow-md);--elevation-overlay:var(--shadow-lg);--elevation-modal:var(--shadow-xl);--z-hide:-1;--z-base:0;--z-raised:10;--z-sticky:100;--z-dropdown:1000;--z-drawer:1100;--z-modal:1200;--z-toast:1300;--z-tooltip:1400;--duration-instant:75ms;--duration-fast:.12s;--duration-base:.18s;--duration-slow:.28s;--duration-slower:.45s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-emphasized:cubic-bezier(.22, 1, .36, 1);font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility}body{background:var(--color-bg);min-width:320px;min-height:100vh;font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}button{font:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.starter{gap:2rem;width:min(100%,68rem);margin:0 auto;padding:clamp(2rem,6vw,5rem) 1rem;display:grid}.starter__hero{gap:1rem;max-width:52rem;display:grid}.starter__eyebrow{color:#587263;letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}p{margin:0}h1,h2,h3,h4,h5,h6,.type-h1,.type-h2,.type-h3,.type-h4,.type-h5,.type-h6{font-family:var(--font-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-tight);color:var(--color-text);text-wrap:balance;margin:0}h1,.type-h1{font-size:var(--font-size-4xl);line-height:var(--line-height-tight)}h2,.type-h2{font-size:var(--font-size-3xl);line-height:var(--line-height-tight)}h3,.type-h3{font-size:var(--font-size-2xl)}h4,.type-h4{font-size:var(--font-size-xl)}h5,.type-h5{font-size:var(--font-size-lg)}h6,.type-h6{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-normal)}.type-display-lg,.type-display-md,.type-display-sm{font-family:var(--font-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tighter);color:var(--color-text);text-wrap:balance;margin:0}.type-display-lg{font-size:var(--font-size-6xl)}.type-display-md{font-size:var(--font-size-5xl)}.type-display-sm{font-size:var(--font-size-4xl)}.type-subheading{font-family:var(--font-heading);font-weight:var(--font-weight-regular);font-size:var(--font-size-xl);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-muted);margin:0}.type-lead{font-family:var(--font-body);font-weight:var(--font-weight-regular);font-size:var(--font-size-md);line-height:var(--line-height-relaxed);color:var(--color-text-muted)}p,.type-body{font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-relaxed);color:var(--color-text);text-wrap:pretty}.type-body-lg,.type-body-sm{font-family:var(--font-body);font-weight:var(--font-weight-regular);color:var(--color-text)}.type-body-lg{font-size:var(--font-size-md);line-height:var(--line-height-relaxed)}.type-body-sm{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.type-label{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-snug);color:var(--color-text)}.type-label-sm{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-snug);color:var(--color-text)}.type-caption{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);color:var(--color-text-muted)}.type-overline{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;color:var(--color-text-muted)}.type-code,code,kbd,samp,pre{font-family:var(--font-mono)}code,kbd{background:var(--color-bg-subtle);border-radius:.35rem;padding:.12em .36em;font-size:.9em}.type-prose{max-width:var(--measure);line-height:var(--line-height-relaxed)}.tabular-nums{font-variant-numeric:tabular-nums}.starter__hero h1{letter-spacing:-.08em;max-width:13ch;font-size:clamp(3rem,12vw,7.5rem);line-height:.88}.starter__lede{color:#43554d;max-width:42rem;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.6}.starter-tabs{gap:1rem;max-width:42rem;display:grid}.starter-tabs__list{background:#ffffff8c;border:1px solid #14211c24;border-radius:999px;gap:.25rem;width:fit-content;padding:.25rem;display:flex;position:relative;box-shadow:0 1rem 3rem #14211c14}.starter-tabs__trigger{z-index:1;color:#4d6158;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.65rem 1rem;font-weight:800;position:relative}.starter-tabs__trigger:hover,.starter-tabs__trigger[data-selected]{color:#10211a}.starter-tabs__trigger:focus-visible{outline-offset:3px;outline:2px solid #2f7657}.starter-tabs__indicator{background:#d6f078;border-radius:999px;box-shadow:0 .35rem 1rem #4d68242e}.starter-tabs__panel{background:#ffffff9e;border:1px solid #14211c1f;border-radius:1.5rem;gap:.75rem;padding:clamp(1.25rem,3vw,2rem);display:grid;box-shadow:0 1.5rem 4rem #14211c1a}.starter-tabs__panel h2{letter-spacing:-.04em;font-size:clamp(1.4rem,3vw,2rem)}.starter-tabs__panel p{color:#43554d;line-height:1.7}@media (width<=520px){.starter-tabs__list{width:100%}.starter-tabs__trigger{flex:1;padding-inline:.65rem}}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:2.5rem;padding:var(--space-1-5) var(--space-5);border-radius:var(--radius-button);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-normal);white-space:nowrap;cursor:pointer;appearance:none;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;line-height:1.1;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .1s;display:inline-flex}.btn svg{flex:none;width:1.15em;height:1.15em}.btn:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}@media (prefers-reduced-motion:no-preference){.btn--primary:hover,.btn--secondary:hover,.btn--neutral:hover,.btn--success:hover,.btn--danger:hover{transform:translateY(-1px)}.btn--primary:active,.btn--secondary:active,.btn--neutral:active,.btn--success:active,.btn--danger:active{transform:translateY(0)}}.btn--primary{background:var(--color-action);color:var(--color-on-action);box-shadow:var(--shadow-xs)}.btn--primary:hover{background:var(--color-action-hover);box-shadow:0 6px 16px -6px color-mix(in srgb, var(--color-action) 50%, transparent)}.btn--primary:active{background:var(--color-action-active)}.btn--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong);box-shadow:var(--shadow-xs)}.btn--secondary:hover{background:var(--color-surface-hover);border-color:var(--color-border-interactive)}.btn--secondary:active{background:var(--color-bg-subtle)}.btn--ghost{color:var(--color-text);background:0 0}.btn--ghost:hover{background:var(--color-bg-subtle)}.btn--ghost:active{background:var(--color-border)}.btn--inline{border-radius:var(--radius-xs);min-height:0;color:var(--color-text-link);transition:color var(--duration-fast) var(--ease-standard), background-size var(--duration-base) var(--ease-out);background-color:#0000;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1.5px;border:0;padding:0}.btn--inline:hover{color:var(--color-text-link-hover);background-size:100% 1.5px}.link{color:var(--color-text-link);transition:color var(--duration-fast) var(--ease-standard), background-size var(--duration-base) var(--ease-out);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1.5px;text-decoration:none}.link:hover{color:var(--color-text-link-hover);background-size:100% 1.5px}.link:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:var(--radius-xs)}.link--always{background-size:100% 1.5px}.link--always:hover{background-size:100% 2px}.btn--neutral{background:var(--neutral-900);color:var(--color-text-inverse);box-shadow:var(--shadow-xs)}.btn--neutral:hover{background:var(--neutral-800)}.btn--neutral:active{background:var(--neutral-950)}.btn--success{background:var(--color-success-solid);color:var(--color-on-success);box-shadow:var(--shadow-xs)}.btn--success:hover{background:var(--success-700)}.btn--danger{background:var(--color-danger-solid);color:var(--color-on-danger);box-shadow:var(--shadow-xs)}.btn--danger:hover{background:var(--danger-700)}.btn--sm{min-height:2rem;padding-inline:var(--space-3-5);font-size:var(--font-size-xs);gap:var(--space-1-5)}.btn--lg{min-height:3rem;padding-inline:var(--space-7);font-size:var(--font-size-base)}.btn--full{width:100%}.icon-btn{border-radius:var(--radius-full);width:2.5rem;height:2.5rem;color:var(--color-text-muted);cursor:pointer;appearance:none;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.icon-btn svg{flex:none;width:1.25rem;height:1.25rem}.icon-btn:hover{background:var(--color-bg-subtle);color:var(--color-text)}.icon-btn:active{background:var(--color-border)}.icon-btn:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.icon-btn:disabled,.icon-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.icon-btn--solid{background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-xs)}.icon-btn--solid:hover{background:var(--color-primary-hover);color:var(--color-on-primary)}.icon-btn--solid:active{background:var(--color-primary-active)}.icon-btn--outline{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong);box-shadow:var(--shadow-xs)}.icon-btn--outline:hover{background:var(--color-surface-hover);border-color:var(--color-border-interactive);color:var(--color-text)}.icon-btn--danger{color:var(--color-danger-text)}.icon-btn--danger:hover{background:var(--color-danger-surface);color:var(--color-danger-text)}.icon-btn--square{border-radius:var(--radius-md)}.icon-btn--sm{width:2rem;height:2rem}.icon-btn--sm svg{width:1rem;height:1rem}.icon-btn--lg{width:3rem;height:3rem}.icon-btn--lg svg{width:1.5rem;height:1.5rem}.chip{align-items:center;gap:var(--space-1-5);min-height:1.75rem;padding:var(--space-1) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap;line-height:1;display:inline-flex}.chip svg{flex:none;width:1em;height:1em}.chip__dot{border-radius:var(--radius-full);background:currentColor;flex:none;width:.5rem;height:.5rem}:is(button,a).chip{cursor:pointer;appearance:none;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s}:is(button,a).chip:hover{background:var(--color-surface-hover);border-color:var(--color-border-interactive)}.chip:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.chip:disabled,.chip[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.chip--selected,.chip[aria-pressed=true],.chip--primary{background:var(--color-primary-subtle);border-color:var(--color-primary-border);color:var(--color-primary-text)}.chip--success{background:var(--color-success-surface);border-color:var(--color-success-border);color:var(--color-success-text)}.chip--warning{background:var(--color-warning-surface);border-color:var(--color-warning-border);color:var(--color-warning-text)}.chip--danger{background:var(--color-danger-surface);border-color:var(--color-danger-border);color:var(--color-danger-text)}.chip--neutral{background:var(--color-bg-subtle);border-color:var(--color-border-strong);color:var(--color-text-muted)}.chip__remove{width:1.15rem;height:1.15rem;margin-right:calc(var(--space-1) * -1);border-radius:var(--radius-full);color:inherit;opacity:.65;cursor:pointer;appearance:none;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.chip__remove svg{width:.8em;height:.8em}.chip__remove:hover{opacity:1;background:rgb(var(--shadow-color) / .12)}.chip__remove:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:1px;opacity:1}.chip--sm{min-height:1.5rem;padding:var(--space-0-5) var(--space-2);font-size:var(--font-size-xs);gap:var(--space-1)}.chip--lg{min-height:2.25rem;padding:var(--space-1-5) var(--space-4);font-size:var(--font-size-base)}.card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);min-width:0;box-shadow:var(--elevation-rest);--card-pad:var(--space-5);flex-direction:column;display:flex;position:relative;overflow:hidden}.card__media{aspect-ratio:16/9;object-fit:cover;background:var(--color-bg-subtle);width:100%;display:block}.card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--card-pad);display:flex}.card__heading{gap:var(--space-1);min-width:0;display:grid}.card__eyebrow{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;color:var(--color-text-muted)}.card__title{font-family:var(--font-heading);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-tight);color:var(--color-text);margin:0}.card__subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.card__body{padding:var(--card-pad);color:var(--color-text)}.card__header+.card__body{padding-top:0}.card__footer{align-items:center;gap:var(--space-3);padding:var(--card-pad);margin-top:auto;padding-top:0;display:flex}.card__footer--divided{padding-top:var(--card-pad);border-top:1px solid var(--color-border)}.card__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.card__link{color:var(--color-text-link);transition:color var(--duration-fast) var(--ease-standard), background-size var(--duration-base) var(--ease-out);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1.5px;text-decoration:none}.card__link:hover{color:var(--color-text-link-hover);background-size:100% 1.5px}.card__link:after{content:"";position:absolute;inset:0}.card--interactive{cursor:pointer;transition:box-shadow .18s,border-color .18s,transform .18s}.card--interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--elevation-raised)}.card--interactive:focus-within{outline:2px solid var(--color-focus-ring);outline-offset:2px}@media (prefers-reduced-motion:no-preference){.card--interactive:hover{transform:translateY(-2px)}}.card--selected{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary), var(--elevation-rest)}.card--flat{box-shadow:none}.card--raised{box-shadow:var(--elevation-overlay)}.card--compact{--card-pad:var(--space-4)}.card--spacious{--card-pad:var(--space-7)}.input,.textarea,.select{width:100%;min-height:2.5rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-interactive);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);appearance:none;transition:border-color .15s,box-shadow .15s;display:block}.input::placeholder,.textarea::placeholder{color:var(--color-text-subtle)}.input:hover,.textarea:hover,.select:hover{border-color:var(--neutral-500)}.input:focus,.textarea:focus,.select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 22%, transparent);outline:none}.input:disabled,.textarea:disabled,.select:disabled{background:var(--color-bg-subtle);color:var(--color-text-subtle);cursor:not-allowed}.textarea{min-height:5rem;padding-block:var(--space-2-5);line-height:var(--line-height-relaxed);resize:vertical}.select{padding-right:var(--space-9);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23646D78' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;cursor:pointer;background-size:1.15em}.input--sm,.select--sm{min-height:2rem;padding-block:var(--space-1);font-size:var(--font-size-sm)}.input--lg,.select--lg{min-height:3rem;font-size:var(--font-size-md)}.input-affix{align-items:center;display:flex;position:relative}.input-affix__icon{color:var(--color-text-subtle);pointer-events:none;display:inline-flex;position:absolute}.input-affix__icon svg{width:1.15rem;height:1.15rem}.input-affix__icon--leading{left:var(--space-3)}.input-affix__icon--trailing{right:var(--space-3)}.input-affix:has(.input-affix__icon--leading) .input{padding-left:var(--space-9)}.input-affix:has(.input-affix__icon--trailing) .input{padding-right:var(--space-9)}.checkbox,.radio{appearance:none;border:1.5px solid var(--color-border-interactive);background:var(--color-surface);cursor:pointer;flex:none;place-content:center;width:1.15rem;height:1.15rem;margin:0;transition:background-color .15s,border-color .15s;display:inline-grid}.checkbox{border-radius:var(--radius-xs)}.radio{border-radius:var(--radius-full)}.checkbox:hover,.radio:hover{border-color:var(--color-primary)}.checkbox:checked,.checkbox:indeterminate,.radio:checked{background:var(--color-primary);border-color:var(--color-primary)}.checkbox:after{content:"";border:solid var(--color-on-primary);opacity:0;border-width:0 2px 2px 0;width:.3rem;height:.55rem;margin-top:-.12rem;transform:rotate(45deg)}.checkbox:checked:after{opacity:1}.checkbox:indeterminate:after{opacity:1;border-width:0 0 2px;width:.6rem;height:0;margin:0;transform:none}.radio:after{content:"";border-radius:var(--radius-full);background:var(--color-on-primary);width:.5rem;height:.5rem;transition:transform .15s;transform:scale(0)}.radio:checked:after{transform:scale(1)}.checkbox:focus-visible,.radio:focus-visible,.switch:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.checkbox:disabled,.radio:disabled,.switch:disabled{opacity:.5;cursor:not-allowed}.switch{appearance:none;border-radius:var(--radius-full);background:var(--color-border-interactive);cursor:pointer;flex:none;width:2.5rem;height:1.5rem;margin:0;transition:background-color .15s;position:relative}.switch:after{content:"";border-radius:var(--radius-full);background:var(--neutral-0);width:1.2rem;height:1.2rem;box-shadow:var(--shadow-xs);transition:transform .15s;position:absolute;top:.15rem;left:.15rem}.switch:checked{background:var(--color-primary)}.switch:checked:after{transform:translate(1rem)}.field{gap:var(--space-1-5);display:grid}.field__label{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.field__required{color:var(--color-danger-text);margin-left:.15rem}.field__hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.field__error{align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-danger-text);display:flex}.field__error svg{flex:none;width:1em;height:1em}.field--invalid .input,.field--invalid .textarea,.field--invalid .select{border-color:var(--color-danger-solid)}.field--invalid .input:focus,.field--invalid .textarea:focus,.field--invalid .select:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-danger-solid) 22%, transparent)}.field-inline{gap:var(--space-1) var(--space-2-5);grid-template-columns:auto 1fr;align-items:center;display:grid}.field-inline__label{font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer}.field-inline__hint{margin-top:calc(var(--space-1) * -1);font-size:var(--font-size-xs);color:var(--color-text-muted);grid-column:2}.dropdown{display:inline-flex;position:relative}.dropdown__chevron{transition:transform .15s}.dropdown [aria-expanded=true] .dropdown__chevron{transform:rotate(180deg)}.dropdown__menu{z-index:var(--z-dropdown);top:calc(100% + var(--space-2));min-width:12rem;max-width:min(92vw,20rem);padding:var(--space-1-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--elevation-overlay);position:absolute;left:0}.dropdown__menu--end{left:auto;right:0}@media (prefers-reduced-motion:no-preference){.dropdown__menu{animation:.12s dropdown-in}}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-.25rem)}}.dropdown__label{padding:var(--space-1-5) var(--space-3) var(--space-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;color:var(--color-text-subtle)}.dropdown__item{align-items:center;gap:var(--space-2-5);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:left;white-space:nowrap;cursor:pointer;appearance:none;background:0 0;border:0;line-height:1.2;text-decoration:none;display:flex}.dropdown__item svg,.dropdown__icon{width:1.1em;height:1.1em;color:var(--color-text-muted);flex:none}.dropdown__item:hover{background:var(--color-bg-subtle)}.dropdown__item:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:-2px;background:var(--color-bg-subtle)}.dropdown__item:disabled,.dropdown__item[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.dropdown__item--danger{color:var(--color-danger-text)}.dropdown__item--danger svg,.dropdown__item--danger .dropdown__icon{color:currentColor}.dropdown__item--danger:hover,.dropdown__item--danger:focus-visible{background:var(--color-danger-surface)}.dropdown__shortcut{padding-left:var(--space-4);color:var(--color-text-subtle);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;margin-left:auto}.dropdown__check{color:var(--color-primary);margin-left:auto}.dropdown__separator{height:1px;margin:var(--space-1-5) calc(var(--space-1-5) * -1);background:var(--color-border);border:0}.select-field{position:relative}.select-field__trigger{align-items:center;gap:var(--space-2);width:100%;min-height:2.5rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-interactive);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);text-align:left;cursor:pointer;appearance:none;transition:border-color .15s,box-shadow .15s;display:flex}.select-field__trigger:hover{border-color:var(--neutral-500)}.select-field__trigger:focus-visible,.select-field__trigger[aria-expanded=true]{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 22%, transparent);outline:none}.select-field__trigger:disabled{background:var(--color-bg-subtle);color:var(--color-text-subtle);cursor:not-allowed}.select-field__trigger--sm{min-height:2rem;padding-block:var(--space-1);font-size:var(--font-size-sm)}.select-field__trigger--lg{min-height:3rem;font-size:var(--font-size-md)}.select-field__value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.select-field__value--placeholder{color:var(--color-text-subtle)}.select-field__chevron{color:var(--color-text-muted);flex:none;transition:transform .15s;display:inline-flex}.select-field__chevron svg{width:1.15em;height:1.15em}.select-field__trigger[aria-expanded=true] .select-field__chevron{transform:rotate(180deg)}.field--invalid .select-field__trigger{border-color:var(--color-danger-solid)}.field--invalid .select-field__trigger:focus-visible,.field--invalid .select-field__trigger[aria-expanded=true]{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-danger-solid) 22%, transparent)}.select-field__menu{z-index:var(--z-dropdown);top:calc(100% + var(--space-1));max-height:16rem;padding:var(--space-1-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--elevation-overlay);margin:0;list-style:none;position:absolute;left:0;right:0;overflow-y:auto}@media (prefers-reduced-motion:no-preference){.select-field__menu{animation:.12s dropdown-in}}.select-field__group-label{padding:var(--space-1-5) var(--space-3) var(--space-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;color:var(--color-text-subtle)}.select-field__option{align-items:center;gap:var(--space-2-5);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);text-align:left;cursor:pointer;appearance:none;background:0 0;border:0;line-height:1.2;display:flex}.select-field__option.is-active,.select-field__option:hover{background:var(--color-bg-subtle)}.select-field__option[aria-selected=true]{font-weight:var(--font-weight-semibold)}.select-field__option[aria-disabled=true]{opacity:.5;cursor:not-allowed}.select-field__check{color:var(--color-primary);opacity:0;flex:none;margin-left:auto}.select-field__option[aria-selected=true] .select-field__check{opacity:1}.badge{align-items:center;gap:var(--space-1);padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-pill);background:var(--color-bg-subtle);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap;line-height:1.4;display:inline-flex}.badge svg{flex:none;width:1em;height:1em}.badge__dot{border-radius:var(--radius-full);background:currentColor;flex:none;width:.4rem;height:.4rem}.badge--primary{background:var(--color-primary-subtle);color:var(--color-primary-text)}.badge--success{background:var(--color-success-surface);color:var(--color-success-text)}.badge--warning{background:var(--color-warning-surface);color:var(--color-warning-text)}.badge--danger{background:var(--color-danger-surface);color:var(--color-danger-text)}.badge--neutral{background:var(--color-bg-subtle);color:var(--color-text-muted)}.badge--solid{background:var(--color-primary);color:var(--color-on-primary)}.badge--solid.badge--success{background:var(--color-success-solid);color:var(--color-on-success)}.badge--solid.badge--warning{background:var(--color-warning-solid);color:var(--color-on-warning)}.badge--solid.badge--danger{background:var(--color-danger-solid);color:var(--color-on-danger)}.badge--solid.badge--neutral{background:var(--neutral-700);color:var(--color-text-inverse)}.badge--count{min-width:1.25rem;height:1.25rem;padding:0 var(--space-1);border-radius:var(--radius-full);background:var(--color-danger-solid);color:var(--color-on-danger);font-size:var(--font-size-2xs);justify-content:center}.badge--dot{border-radius:var(--radius-full);background:var(--color-text-muted);width:.6rem;height:.6rem;box-shadow:0 0 0 2px var(--color-surface);gap:0;padding:0}.badge--dot.badge--primary{background:var(--color-primary)}.badge--dot.badge--success{background:var(--color-success-solid)}.badge--dot.badge--warning{background:var(--color-warning-solid)}.badge--dot.badge--danger{background:var(--color-danger-solid)}.badge-anchor{display:inline-flex;position:relative}.badge-anchor__badge{position:absolute;top:0;right:0;transform:translate(35%,-35%)}.badge-anchor__badge--bottom{top:auto;bottom:0;transform:translate(15%,15%)}.avatar{border-radius:var(--radius-full);background:var(--color-primary-subtle);width:2.5rem;height:2.5rem;color:var(--color-primary-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);-webkit-user-select:none;user-select:none;flex:none;place-items:center;line-height:1;display:inline-grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.avatar--xs{width:1.5rem;height:1.5rem;font-size:var(--font-size-2xs)}.avatar--sm{width:2rem;height:2rem;font-size:var(--font-size-xs)}.avatar--lg{width:3rem;height:3rem;font-size:var(--font-size-base)}.avatar--xl{width:4rem;height:4rem;font-size:var(--font-size-lg)}.avatar--2xl{width:5rem;height:5rem;font-size:var(--font-size-2xl)}.avatar--square{border-radius:var(--radius-md)}.avatar--neutral{background:var(--color-bg-subtle);color:var(--color-text-muted)}.avatar--ring{box-shadow:0 0 0 2px var(--color-surface), 0 0 0 3px var(--color-border)}.avatar-group{align-items:center;display:inline-flex}.avatar-group .avatar{box-shadow:0 0 0 2px var(--color-surface)}.avatar-group .avatar+.avatar{margin-left:-.6rem}.app-bar{z-index:var(--z-sticky);align-items:center;gap:var(--space-4);height:4rem;padding-inline:max(var(--space-gutter), calc((100% - var(--container-xl)) / 2));background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;position:sticky;top:0}.app-bar__brand{align-items:center;gap:var(--space-2);color:var(--color-text);font-family:var(--font-heading);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);white-space:nowrap;text-decoration:none;display:inline-flex}.app-bar__nav{align-items:center;gap:var(--space-1);display:flex}.app-bar__link{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:background-color var(--duration-fast) var(--ease-standard);text-decoration:none;display:inline-flex}.app-bar__link:hover{background:var(--color-bg-subtle);color:var(--color-text)}.app-bar__link[aria-current]{background:var(--color-primary-subtle);color:var(--color-primary-text)}.app-bar__spacer{margin-left:auto}.app-bar__actions{align-items:center;gap:var(--space-2);display:flex}.side-nav{gap:var(--space-3);width:15rem;padding:var(--space-4);background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;display:flex}.side-nav__section{gap:var(--space-1);display:grid}.side-nav__heading{padding:var(--space-2) var(--space-3) var(--space-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;color:var(--color-text-subtle)}.side-nav__item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);background:0 0;border:0;text-decoration:none;display:flex;position:relative}.side-nav__item svg{width:1.2rem;height:1.2rem;color:var(--color-text-subtle);flex:none}.side-nav__item:hover{background:var(--color-bg-subtle);color:var(--color-text)}.side-nav__item:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.side-nav__item[aria-current=page]{background:var(--color-primary-subtle);color:var(--color-primary-text);font-weight:var(--font-weight-semibold)}.side-nav__item[aria-current=page]:before{content:"";border-radius:var(--radius-full);background:var(--color-primary);width:3px;height:1.15rem;position:absolute;top:50%;left:0;transform:translateY(-50%)}.side-nav__item[aria-current=page] svg{color:var(--color-primary)}.side-nav__label{flex:1;min-width:0}.side-nav__badge{margin-left:auto}.tabs{align-items:stretch;gap:var(--space-1);border-bottom:1px solid var(--color-border);display:flex;overflow-x:auto}.tabs__tab{align-items:center;gap:var(--space-2);padding:var(--space-3);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;transition:color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;display:inline-flex}.tabs__tab:hover{color:var(--color-text)}.tabs__tab:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:-2px;border-radius:var(--radius-xs)}.tabs__tab[aria-selected=true]{color:var(--color-primary-text);border-bottom-color:var(--color-primary)}.tabs__tab:disabled{opacity:.5;cursor:not-allowed}.tabs__panel{padding-top:var(--space-4)}.tabs--pill{gap:var(--space-1);width:fit-content;max-width:100%;padding:var(--space-1);border-radius:var(--radius-full);background:var(--color-bg-subtle);border-bottom:0}.tabs--pill .tabs__tab{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border-bottom:0;margin-bottom:0}.tabs--pill .tabs__tab[aria-selected=true]{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-xs)}.breadcrumb{align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--font-size-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.breadcrumb__item{align-items:center;gap:var(--space-2);display:inline-flex}.breadcrumb__link{align-items:center;gap:var(--space-1-5);color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-standard);text-decoration:none;display:inline-flex}.breadcrumb__link:hover{color:var(--color-primary-text)}.breadcrumb__separator{color:var(--color-text-subtle);display:inline-flex}.breadcrumb__separator svg{width:1em;height:1em}.breadcrumb__current{color:var(--color-text);font-weight:var(--font-weight-medium)}.pagination{align-items:center;gap:var(--space-1);display:flex}.pagination__item,.pagination__nav{justify-content:center;align-items:center;gap:var(--space-1);min-width:2.25rem;height:2.25rem;padding:0 var(--space-2);border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard);background:0 0;border:1px solid #0000;text-decoration:none;display:inline-flex}.pagination__item:hover,.pagination__nav:hover{background:var(--color-bg-subtle);color:var(--color-text)}.pagination__item:focus-visible,.pagination__nav:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.pagination__item[aria-current=page]{background:var(--color-primary);color:var(--color-on-primary)}.pagination__nav svg{width:1.1rem;height:1.1rem}.pagination__nav:disabled,.pagination__nav[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.pagination__ellipsis{min-width:2.25rem;height:2.25rem;color:var(--color-text-subtle);justify-content:center;align-items:center;display:inline-flex}.alert{gap:var(--space-3);padding:var(--space-3-5) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);display:flex}.alert__icon{color:var(--color-text-muted);flex:none;margin-top:1px;display:inline-flex}.alert__icon svg{width:1.25rem;height:1.25rem}.alert__content{gap:var(--space-1);flex:1;min-width:0;display:grid}.alert__title{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.alert__body{font-size:var(--font-size-sm);color:var(--color-text-muted)}.alert__actions{gap:var(--space-2);margin-top:var(--space-1);display:flex}.alert__dismiss{flex:none;margin:-2px -4px 0 0}.alert--info{border-color:var(--color-info-border);background:var(--color-info-surface)}.alert--info .alert__icon{color:var(--color-info-text)}.alert--success{border-color:var(--color-success-border);background:var(--color-success-surface)}.alert--success .alert__icon{color:var(--color-success-text)}.alert--warning{border-color:var(--color-warning-border);background:var(--color-warning-surface)}.alert--warning .alert__icon{color:var(--color-warning-text)}.alert--danger{border-color:var(--color-danger-border);background:var(--color-danger-surface)}.alert--danger .alert__icon{color:var(--color-danger-text)}.modal{border:1px solid var(--color-border);border-radius:var(--radius-modal);background:var(--color-surface);width:min(92vw,32rem);max-height:min(85vh,48rem);color:var(--color-text);box-shadow:var(--elevation-modal);padding:0}.modal[open]{flex-direction:column;display:flex}.modal::backdrop{background:var(--color-overlay)}.modal__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-3);display:flex}.modal__title{font-family:var(--font-heading);font-weight:var(--font-weight-bold);font-size:var(--font-size-xl);letter-spacing:var(--letter-spacing-tight);color:var(--color-text);margin:0}.modal__body{min-height:0;padding:0 var(--space-5);color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);flex:1;overflow-y:auto}.modal__footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-5) var(--space-5);flex-wrap:wrap;display:flex}@media (prefers-reduced-motion:no-preference){.modal[open]{animation:modal-in var(--duration-base) var(--ease-out)}.modal[open]::backdrop{animation:fade-in var(--duration-base) var(--ease-standard)}}@keyframes modal-in{0%{opacity:0;transform:translateY(.5rem)scale(.98)}}@keyframes fade-in{0%{opacity:0}}.toast-region{z-index:var(--z-toast);right:var(--space-5);bottom:var(--space-5);gap:var(--space-2);pointer-events:none;flex-direction:column;width:min(92vw,22rem);display:flex;position:fixed}.toast{pointer-events:auto;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--elevation-overlay);color:var(--color-text);display:flex}.toast__icon{color:var(--color-text-muted);flex:none;margin-top:1px;display:inline-flex}.toast__icon svg{width:1.2rem;height:1.2rem}.toast--success .toast__icon{color:var(--color-success-solid)}.toast--warning .toast__icon{color:var(--color-warning-600)}.toast--danger .toast__icon{color:var(--color-danger-solid)}.toast__content{flex:1;gap:.125rem;min-width:0;display:grid}.toast__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.toast__body{font-size:var(--font-size-sm);color:var(--color-text-muted)}.toast__dismiss{flex:none;margin:-2px -4px 0 0}@media (prefers-reduced-motion:no-preference){.toast{animation:toast-in var(--duration-base) var(--ease-emphasized)}}@keyframes toast-in{0%{opacity:0;transform:translate(1rem)}}.empty-state{text-align:center;justify-items:center;gap:var(--space-3);max-width:26rem;padding:var(--space-12) var(--space-6);margin-inline:auto;display:grid}.empty-state__icon{border-radius:var(--radius-full);background:var(--color-primary-subtle);width:3.5rem;height:3.5rem;color:var(--color-primary-text);place-items:center;display:inline-grid}.empty-state__icon svg{width:1.6rem;height:1.6rem}.empty-state__title{font-family:var(--font-heading);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);color:var(--color-text);margin:0}.empty-state__body{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.empty-state__actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.skeleton{background:var(--color-bg-subtle);border-radius:var(--radius-sm);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--neutral-0) 65%, transparent), transparent);animation:skeleton-shimmer 1.4s var(--ease-standard) infinite;position:absolute;inset:0;transform:translate(-100%)}.skeleton--text{border-radius:var(--radius-xs);height:.8em}.skeleton--title{border-radius:var(--radius-xs);height:1.3em}.skeleton--circle{border-radius:var(--radius-full)}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.spinner{border:2.5px solid var(--color-border-strong);border-top-color:var(--color-primary);border-radius:var(--radius-full);width:1.5rem;height:1.5rem;animation:.7s linear infinite spinner-rotate;display:inline-block}.spinner--sm{border-width:2px;width:1rem;height:1rem}.spinner--lg{border-width:3px;width:2.5rem;height:2.5rem}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.rating{align-items:center;gap:var(--space-2);display:inline-flex}.rating__stars{--value:0;letter-spacing:.06em;font-size:1rem;line-height:1;display:inline-block;position:relative}.rating__stars:before{content:"★★★★★";color:var(--color-border-strong)}.rating__stars:after{content:"★★★★★";width:calc(var(--value) / 5 * 100%);white-space:nowrap;color:var(--warning-500);position:absolute;inset:0;overflow:hidden}.rating--lg .rating__stars{font-size:1.4rem}.rating__value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.rating__count{font-size:var(--font-size-sm);color:var(--color-text-muted)}.rating-input{gap:var(--space-1);display:inline-flex}.rating-input__star{color:var(--color-border-strong);cursor:pointer;transition:color var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-emphasized);background:0 0;border:0;padding:0;font-size:1.75rem;line-height:1}.rating-input__star--on{color:var(--warning-500)}.rating-input__star:hover{transform:scale(1.15)}.rating-input__star:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:var(--radius-xs)}.rating-summary{gap:var(--space-4);display:grid}.rating-summary__top{align-items:center;gap:var(--space-4);display:flex}.rating-summary__score{font-family:var(--font-heading);font-weight:var(--font-weight-bold);font-size:var(--font-size-4xl);color:var(--color-text);line-height:1}.rating-summary__meta{gap:var(--space-1);display:grid}.rating-summary__bars{gap:var(--space-1-5);display:grid}.rating-summary__bar{align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-muted);grid-template-columns:1.5rem 1fr 2.5rem;display:grid}.rating-summary__track{border-radius:var(--radius-full);background:var(--color-bg-subtle);height:.5rem;overflow:hidden}.rating-summary__fill{height:100%;width:var(--pct,0%);border-radius:var(--radius-full);background:var(--warning-500)}.review{gap:var(--space-3);display:grid}.review__head{align-items:center;gap:var(--space-3);display:flex}.review__author{gap:.1rem;min-width:0;display:grid}.review__name{align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);display:flex}.review__date{font-size:var(--font-size-xs);color:var(--color-text-muted)}.review__rating{margin-left:auto}.review__text{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text);margin:0}.list{flex-direction:column;display:flex}.list-row{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-3);grid-template-columns:auto 1fr auto;display:grid;position:relative}.list-row:not(:first-child){border-top:1px solid var(--color-border)}.list-row--interactive{cursor:pointer;border-radius:var(--radius-md);transition:background-color var(--duration-fast) var(--ease-standard)}.list-row--interactive:hover{background:var(--color-surface-hover)}.list-row--interactive:focus-within{outline:2px solid var(--color-focus-ring);outline-offset:-2px}.list-row__link{color:var(--color-text-link);transition:color var(--duration-fast) var(--ease-standard), background-size var(--duration-base) var(--ease-out);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1.5px;text-decoration:none}.list-row__link:hover{color:var(--color-text-link-hover);background-size:100% 1.5px}.list-row__link:after{content:"";position:absolute;inset:0}.list-row__body{gap:var(--space-1);min-width:0;display:grid}.list-row__name{align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text);display:flex}.list-row__meta{align-items:center;gap:var(--space-1) var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.list-row__trailing{z-index:1;align-items:center;gap:var(--space-3);flex:none;display:flex;position:relative}.stat{gap:var(--space-2);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--elevation-rest);display:grid}.stat__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.stat__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted)}.stat__icon{border-radius:var(--radius-md);background:var(--color-primary-subtle);width:2.25rem;height:2.25rem;color:var(--color-primary-text);flex:none;place-items:center;display:inline-grid}.stat__icon svg{width:1.2rem;height:1.2rem}.stat__value{font-family:var(--font-heading);font-weight:var(--font-weight-bold);font-size:var(--font-size-3xl);color:var(--color-text);font-variant-numeric:tabular-nums;line-height:1}.stat__delta{align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:inline-flex}.stat__delta svg{width:1em;height:1em}.stat__delta--up{color:var(--color-success-text)}.stat__delta--down{color:var(--color-danger-text)}.table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-family:var(--font-body);font-size:var(--font-size-sm)}.table thead th{padding:var(--space-3) var(--space-4);text-align:left;white-space:nowrap;background:var(--color-bg-subtle);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;border-bottom:1px solid var(--color-border)}.table tbody td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tbody tr{transition:background-color var(--duration-fast) var(--ease-standard)}.table tbody tr:hover{background:var(--color-surface-hover)}.table .table__cell--num{text-align:right;font-variant-numeric:tabular-nums}.table .table__cell--actions{text-align:right;white-space:nowrap}.table--compact thead th,.table--compact tbody td{padding-block:var(--space-2)}.dropzone{justify-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-6);text-align:center;border:1.5px dashed var(--color-border-interactive);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard);display:grid}.dropzone:hover,.dropzone--active{border-color:var(--color-primary);background:var(--color-primary-subtle)}.dropzone:focus-within{outline:2px solid var(--color-focus-ring);outline-offset:2px}.dropzone__icon{border-radius:var(--radius-full);background:var(--color-primary-subtle);width:3rem;height:3rem;color:var(--color-primary-text);place-items:center;display:inline-grid}.dropzone__icon svg{width:1.5rem;height:1.5rem}.dropzone--active .dropzone__icon{background:var(--color-primary);color:var(--color-on-primary)}.dropzone__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.dropzone__title em{font-style:normal;font-weight:var(--font-weight-semibold);color:var(--color-primary-text)}.dropzone__hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.dropzone__input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.file-item{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:auto 1fr auto;display:grid}.file-item__icon{border-radius:var(--radius-sm);background:var(--color-bg-subtle);width:2.25rem;height:2.25rem;color:var(--color-text-muted);flex:none;place-items:center;display:inline-grid}.file-item__icon svg{width:1.2rem;height:1.2rem}.file-item__body{gap:var(--space-1);min-width:0;display:grid}.file-item__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.file-item__meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.file-item__progress{border-radius:var(--radius-full);background:var(--color-bg-subtle);height:.35rem;overflow:hidden}.file-item__bar{height:100%;width:var(--pct,0%);border-radius:inherit;background:var(--color-primary);transition:width var(--duration-base) var(--ease-standard)}.file-item__trailing{flex:none}.file-item--success .file-item__icon{background:var(--color-success-surface);color:var(--color-success-text)}.file-item--error{border-color:var(--color-danger-border)}.file-item--error .file-item__icon{background:var(--color-danger-surface);color:var(--color-danger-text)}.file-item--error .file-item__meta{color:var(--color-danger-text)}.calendar{width:fit-content}.calendar__head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.calendar__title{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.calendar__grid{gap:var(--space-1);grid-template-columns:repeat(7,2.5rem);display:grid}.calendar__dow{height:2rem;font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-subtle);place-items:center;display:grid}.calendar__day{border-radius:var(--radius-md);width:2.5rem;height:2.5rem;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard);background:0 0;border:0;place-items:center;display:grid}.calendar__day:hover{background:var(--color-bg-subtle)}.calendar__day:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:-2px}.calendar__day--muted{color:var(--color-text-subtle)}.calendar__day--today{font-weight:var(--font-weight-bold);box-shadow:inset 0 0 0 1px var(--color-primary-border)}.calendar__day--selected,.calendar__day--selected:hover{background:var(--color-primary);color:var(--color-on-primary);font-weight:var(--font-weight-semibold)}.calendar__day:disabled{color:var(--color-text-subtle);opacity:.45;cursor:not-allowed}.slots{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(5rem,1fr));display:grid}.slot{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums;text-align:center;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard)}.slot:hover{border-color:var(--color-primary)}.slot:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.slot--selected{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.slot:disabled{opacity:.45;cursor:not-allowed;text-decoration:line-through}.search{position:relative}.search__menu{z-index:var(--z-dropdown);top:calc(100% + var(--space-1));max-height:18rem;padding:var(--space-1-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--elevation-overlay);position:absolute;left:0;right:0;overflow-y:auto}@media (prefers-reduced-motion:no-preference){.search__menu{animation:dropdown-in var(--duration-fast) var(--ease-out)}}.search__group{padding:var(--space-1-5) var(--space-3) var(--space-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;color:var(--color-text-subtle)}.search__option{align-items:center;gap:var(--space-2-5);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.search__option svg{width:1.1em;height:1.1em;color:var(--color-text-muted);flex:none}.search__option.is-active,.search__option:hover{background:var(--color-bg-subtle)}.search__option mark{color:var(--color-primary-text);font-weight:var(--font-weight-semibold);background:0 0}.search__empty{padding:var(--space-4) var(--space-3);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.stepper{align-items:flex-start;display:flex}.stepper__step{align-items:center;gap:var(--space-2);text-align:center;flex-direction:column;flex:1;display:flex;position:relative}.stepper__connector{background:var(--color-border);z-index:0;width:100%;height:2px;position:absolute;top:1rem;left:50%}.stepper__step:last-child .stepper__connector{display:none}.stepper__marker{z-index:1;border:1.5px solid var(--color-border-interactive);border-radius:var(--radius-full);background:var(--color-surface);width:2rem;height:2rem;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);place-items:center;display:grid;position:relative}.stepper__marker svg{width:1.1rem;height:1.1rem}.stepper__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted)}.stepper__step--complete .stepper__marker{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.stepper__step--complete .stepper__connector{background:var(--color-primary)}.stepper__step--complete .stepper__label{color:var(--color-text)}.stepper__step--current .stepper__marker{border-color:var(--color-primary);color:var(--color-primary-text);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent)}.stepper__step--current .stepper__label{color:var(--color-text);font-weight:var(--font-weight-semibold)}.convo-list{gap:var(--space-1);flex-direction:column;display:flex}.convo{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3);border-radius:var(--radius-md);text-align:left;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard);background:0 0;border:0;grid-template-columns:auto 1fr auto;display:grid}.convo:hover{background:var(--color-bg-subtle)}.convo:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:-2px}.convo--active{background:var(--color-primary-subtle)}.convo__body{gap:.125rem;min-width:0;display:grid}.convo__top{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.convo__name{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.convo__time{font-size:var(--font-size-2xs);color:var(--color-text-subtle);flex:none}.convo__preview{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.convo--unread .convo__preview{color:var(--color-text);font-weight:var(--font-weight-medium)}.convo__trailing{align-items:center;display:flex}.chat{gap:var(--space-1);flex-direction:column;display:flex}.chat__day{margin:var(--space-3) 0;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-bg-subtle);font-size:var(--font-size-xs);color:var(--color-text-muted);align-self:center}.msg{align-items:flex-end;gap:var(--space-2);max-width:78%;display:flex}.msg--in{align-self:flex-start}.msg--out{flex-direction:row-reverse;align-self:flex-end}.msg__avatar{flex:none}.bubble{padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-lg);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.msg--in .bubble{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-bottom-left-radius:var(--radius-xs)}.msg--out .bubble{background:var(--color-primary);color:var(--color-on-primary);border-bottom-right-radius:var(--radius-xs)}.msg__time{font-size:var(--font-size-2xs);color:var(--color-text-subtle);margin-top:.15rem;display:block}.msg--out .msg__time{text-align:right}.typing{padding:var(--space-3) var(--space-3-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-xs);background:var(--color-surface);align-items:center;gap:.2rem;display:inline-flex}.typing__dot{border-radius:var(--radius-full);background:var(--color-text-subtle);width:.4rem;height:.4rem;animation:1.2s ease-in-out infinite typing-bounce}.typing__dot:nth-child(2){animation-delay:.15s}.typing__dot:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-.25rem)}}.composer{align-items:flex-end;gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--color-border);background:var(--color-surface);display:flex}.composer__field{resize:none;flex:1;min-height:2.5rem;max-height:8rem}.call{aspect-ratio:16/10;border-radius:var(--radius-xl);background:var(--neutral-950);color:var(--color-text-inverse);place-items:center;display:grid;position:relative;overflow:hidden}.call__remote{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.call__status{top:var(--space-4);left:var(--space-4);align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:rgb(var(--shadow-color) / .5);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:inline-flex;position:absolute}.call__name{left:var(--space-4);bottom:var(--space-4);align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:rgb(var(--shadow-color) / .55);color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:inline-flex;position:absolute}.call__self{top:var(--space-4);right:var(--space-4);aspect-ratio:3/4;border-radius:var(--radius-lg);background:var(--neutral-800);width:8rem;box-shadow:var(--shadow-lg);color:var(--color-text-inverse);border:2px solid #ffffff26;place-items:center;display:grid;position:absolute;overflow:hidden}.call__self img{object-fit:cover;width:100%;height:100%}.call-bar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);box-shadow:var(--elevation-overlay);display:inline-flex}.call-btn{border:1px solid var(--color-border-strong);border-radius:var(--radius-full);background:var(--color-surface);width:3.25rem;height:3.25rem;color:var(--color-text);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);place-items:center;display:grid}.call-btn svg{width:1.4rem;height:1.4rem}.call-btn:hover{background:var(--color-bg-subtle)}.call-btn:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.call-btn--off{background:var(--color-danger-surface);border-color:var(--color-danger-border);color:var(--color-danger-text)}.call-btn--end{background:var(--color-danger-solid);border-color:var(--color-danger-solid);width:3.75rem;color:var(--color-on-danger)}.call-btn--end:hover{background:var(--danger-700);color:var(--color-on-danger)}.attachment{align-items:center;gap:var(--space-3);padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:auto 1fr auto;display:grid}.attachment__icon{border-radius:var(--radius-sm);background:var(--color-primary-subtle);width:2.25rem;height:2.25rem;color:var(--color-primary-text);flex:none;place-items:center;display:inline-grid}.attachment__icon svg{width:1.2rem;height:1.2rem}.attachment__body{gap:.125rem;min-width:0;display:grid}.attachment__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.attachment__meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}
