@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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.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}@layer tokens,base,components,layout,pages,utilities,print;@layer tokens{:root{--ink-hue: 278;--ink-1000: oklch(.11 .02 var(--ink-hue));--ink-950: oklch(.13 .024 var(--ink-hue));--ink-900: oklch(.155 .028 var(--ink-hue));--ink-850: oklch(.185 .03 var(--ink-hue));--ink-800: oklch(.215 .032 var(--ink-hue));--ink-750: oklch(.25 .034 var(--ink-hue));--ink-700: oklch(.29 .034 var(--ink-hue));--ink-600: oklch(.38 .03 var(--ink-hue));--ink-500: oklch(.5 .024 var(--ink-hue));--ink-400: oklch(.67 .02 var(--ink-hue));--ink-300: oklch(.77 .016 var(--ink-hue));--ink-200: oklch(.86 .012 var(--ink-hue));--ink-100: oklch(.93 .008 var(--ink-hue));--ink-50: oklch(.975 .005 var(--ink-hue));--star-400: oklch(.85 .13 82);--sky-400: oklch(.8 .1 222);--plum-400: oklch(.77 .12 305);--sage-400: oklch(.8 .11 155);--coral-400: oklch(.75 .14 34);--amber-400: oklch(.83 .13 68);--periwinkle-400: oklch(.8 .09 268);--space-0: 0;--space-px: 1px;--space-0-5: 2px;--space-1: 4px;--space-1-5: 6px;--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;--space-20: 80px;--radius-xs: 6px;--radius-sm: 9px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-2xl: 28px;--radius-full: 999px;--family-display: "Bricolage Grotesque Variable", "Figtree Variable", ui-sans-serif, system-ui, sans-serif;--family-body: "Figtree Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--family-mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--size-11: .6875rem;--size-12: .75rem;--size-13: .8125rem;--size-14: .875rem;--size-15: .9375rem;--size-16: 1rem;--size-18: 1.125rem;--size-20: 1.25rem;--size-24: 1.5rem;--size-28: 1.75rem;--size-34: 2.125rem;--size-44: 2.75rem;--size-52: 3.25rem;--size-64: 4rem;--duration-1: .12s;--duration-2: .2s;--duration-3: .32s;--duration-4: .52s;--curve-out: cubic-bezier(.22, 1, .36, 1);--curve-in-out: cubic-bezier(.65, 0, .35, 1);--curve-spring: cubic-bezier(.34, 1.56, .64, 1);--canvas: var(--ink-900);--canvas-deep: var(--ink-950);--surface: var(--ink-850);--surface-raised: var(--ink-800);--surface-hover: var(--ink-750);--surface-pressed: var(--ink-700);--well: var(--ink-1000);--scrim: rgb(8 6 4 / .62);--canvas-glow: radial-gradient(900px 420px at 50% -200px, oklch(.85 .13 82 / .06), transparent 70%), radial-gradient(1400px 700px at 85% -300px, oklch(.5 .14 285 / .14), transparent 70%);--line-faint: rgb(214 220 255 / .05);--line: rgb(214 220 255 / .09);--line-strong: rgb(214 220 255 / .16);--text-strong: var(--ink-50);--text: var(--ink-100);--text-secondary: var(--ink-300);--text-muted: var(--ink-400);--text-disabled: var(--ink-500);--text-on-light: var(--ink-950);--inverse: var(--ink-100);--inverse-strong: var(--ink-50);--on-inverse: var(--ink-950);--brand: #1c7256;--accent: #86d3b0;--accent-strong: #a7e3c7;--accent-tint: rgb(134 211 176 / .14);--accent-line: rgb(134 211 176 / .4);--on-accent: var(--ink-950);--odr: var(--plum-400);--minor: var(--sky-400);--positive: var(--star-400);--positive-strong: oklch(.91 .1 86);--positive-on-light: oklch(.62 .15 70);--chart-positive: oklch(.66 .13 75);--chart-minor: oklch(.6 .11 215);--chart-odr: oklch(.53 .16 300);--chart-neutral: var(--ink-400);--chart-track: var(--line-faint);--success: var(--sage-400);--danger: var(--coral-400);--caution: var(--amber-400);--info: var(--periwinkle-400);--tint-alpha: 14%;--line-alpha: 38%;--avatar-1: oklch(.8 .09 50);--avatar-2: oklch(.8 .09 150);--avatar-3: oklch(.8 .08 230);--avatar-4: oklch(.8 .09 300);--avatar-5: oklch(.83 .1 85);--avatar-6: oklch(.8 .08 190);--font-display: var(--family-display);--font-body: var(--family-body);--font-mono: var(--family-mono);--text-caption: var(--size-12);--text-small: var(--size-13);--text-body: var(--size-15);--text-control: var(--size-16);--text-lead: var(--size-18);--text-title-sm: var(--size-20);--text-title: var(--size-28);--text-display: var(--size-34);--text-hero: var(--size-44);--text-mega: var(--size-52);--weight-regular: 400;--weight-medium: 520;--weight-semibold: 620;--weight-bold: 720;--leading-tight: 1.12;--leading-snug: 1.3;--leading-body: 1.5;--tracking-display: -.025em;--tracking-tight: -.01em;--tracking-caps: .09em;--radius-chip: var(--radius-full);--radius-control: var(--radius-md);--radius-tile: var(--radius-lg);--radius-card: var(--radius-xl);--radius-sheet: var(--radius-2xl);--highlight: inset 0 1px 0 rgb(214 220 255 / .06);--raise-1: inset 0 1px 0 rgb(214 220 255 / .08), inset 0 -1px 0 rgb(0 0 0 / .22), 0 1px 2px rgb(0 0 0 / .38);--raise-accent: inset 0 1px 0 rgb(255 255 255 / .35), inset 0 -1px 0 rgb(0 0 0 / .18), 0 1px 2px rgb(0 0 0 / .4), 0 6px 18px -6px var(--accent-line);--recess: inset 0 1px 2px rgb(0 0 0 / .5), inset 0 0 0 1px var(--line);--elevation-1: var(--highlight), 0 1px 2px rgb(0 0 0 / .3), 0 8px 24px -12px rgb(0 0 0 / .55);--elevation-2: var(--highlight), 0 2px 6px rgb(0 0 0 / .3), 0 18px 40px -12px rgb(0 0 0 / .65);--elevation-3: 0 -1px 0 rgb(214 220 255 / .06), 0 -12px 48px -8px rgb(0 0 0 / .7);--mark-shadow: inset 0 -1px 0 rgb(0 0 0 / .12), 0 1px 2px rgb(0 0 0 / .4), 0 8px 20px -8px oklch(.85 .13 82 / .35);--focus-ring: 0 0 0 2px var(--canvas), 0 0 0 4px var(--accent);--tap: 44px;--control-height: 44px;--control-height-sm: 34px;--icon-sm: 16px;--icon-md: 18px;--icon-lg: 22px;--icon-stroke: 1.8;--gutter: var(--space-4);--section-gap: var(--space-5);--card-padding: var(--space-4);--content-max: 1240px;--reading-max: 68ch;--sidebar-width: 260px;--topbar-height: 56px;--tabbar-height: 64px;--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-top: env(safe-area-inset-top, 0px);--motion-fast: var(--duration-1);--motion-base: var(--duration-2);--motion-slow: var(--duration-3);--motion-celebrate: var(--duration-4);--ease: var(--curve-out);--ease-spring: var(--curve-spring);--layer-sticky: 10;--layer-nav: 20;--layer-menu: 30;--layer-sheet: 40;--layer-toast: 60;color-scheme:dark}@supports (color: oklch(from red l c h)){:root{--accent: oklch(from var(--brand) .8 clamp(.07, c, .12) h);--accent-strong: oklch(from var(--brand) .87 clamp(.06, c, .1) h);--accent-tint: oklch(from var(--brand) .8 clamp(.07, c, .12) h / var(--tint-alpha));--accent-line: oklch(from var(--brand) .8 clamp(.07, c, .12) h / var(--line-alpha))}}@media(min-width:760px){:root{--gutter: var(--space-6);--section-gap: var(--space-6);--card-padding: var(--space-5);--control-height: 40px;--text-title: var(--size-34);--text-mega: var(--size-64)}}@media(min-width:1024px){:root{--gutter: var(--space-8)}}@media(prefers-reduced-motion:reduce){:root{--motion-fast: 1ms;--motion-base: 1ms;--motion-slow: 1ms;--motion-celebrate: 1ms}}[data-kind]{--kind-tint: color-mix(in oklch, var(--kind) var(--tint-alpha), transparent);--kind-line: color-mix(in oklch, var(--kind) var(--line-alpha), transparent)}[data-kind=odr]{--kind: var(--odr);--kind-chart: var(--chart-odr)}[data-kind=minor]{--kind: var(--minor);--kind-chart: var(--chart-minor)}[data-kind=positive]{--kind: var(--positive);--kind-chart: var(--chart-positive)}[data-kind=accent]{--kind: var(--accent)}[data-kind=success]{--kind: var(--success)}[data-kind=danger]{--kind: var(--danger)}[data-kind=caution]{--kind: var(--caution)}[data-kind=info]{--kind: var(--info)}[data-kind=neutral]{--kind: var(--text-secondary)}@media print{:root{--canvas: white;--canvas-deep: white;--surface: white;--surface-raised: white;--well: white;--canvas-glow: none;--line-faint: #ddd;--line: #ccc;--line-strong: #999;--text-strong: black;--text: #111;--text-secondary: #333;--text-muted: #555;--odr: #5b3a9a;--minor: #22579a;--positive: #8a6300;--accent: #1d5f48;--tint-alpha: 10%;--elevation-1: none;--elevation-2: none;--raise-1: none;--recess: none;color-scheme:light;--text-caption: 7.5pt;--text-small: 9pt;--text-body: 10pt;--text-lead: 11.5pt;--text-title-sm: 15pt;--print-rule: .75pt;--print-rule-heavy: 2pt;--print-band: #ececec;--print-box: 9pt;--print-blank: 32pt;--print-cell-height: 30pt;--print-text-height: 66pt;--print-sign-height: 22pt}}}@layer base{*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent;background:var(--canvas)}body{margin:0;min-height:100dvh;font-family:var(--font-body);font-size:var(--text-body);line-height:var(--leading-body);font-weight:var(--weight-regular);color:var(--text);background:var(--canvas-glow),var(--canvas);background-attachment:fixed;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);color:var(--text-strong);text-wrap:balance}h1{font-size:var(--text-title)}h2{font-size:var(--text-title-sm)}h3{font-size:var(--text-lead);letter-spacing:var(--tracking-tight)}h4{font-family:var(--font-body);font-size:var(--text-body);letter-spacing:0}p{margin:0;text-wrap:pretty}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}strong,b{font-weight:var(--weight-semibold);color:var(--text-strong)}small{font-size:var(--text-small)}code,kbd{font-family:var(--font-mono);font-size:.92em;padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-xs);background:var(--well);color:var(--text)}img,svg{display:block;max-width:100%}.lucide{flex:none;stroke-width:var(--icon-stroke)}hr{border:0;border-top:1px solid var(--line);margin:var(--space-4) 0}::selection{background:var(--accent-tint);color:var(--text-strong)}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--focus-ring)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}button:disabled{cursor:not-allowed}input:not([type=checkbox],[type=radio],[type=color],[type=file],[type=range]),select,textarea{width:100%;min-height:var(--control-height);padding:var(--space-2) var(--space-3);font-size:var(--text-control);line-height:var(--leading-snug);color:var(--text-strong);background:var(--well);border:0;border-radius:var(--radius-control);box-shadow:var(--recess);transition:box-shadow var(--motion-fast) var(--ease);appearance:none}@media(min-width:760px){input:not([type=checkbox],[type=radio],[type=color],[type=file],[type=range]),select,textarea{font-size:var(--text-body)}}input:focus-visible,select:focus-visible,textarea:focus-visible,input:focus,select:focus,textarea:focus{box-shadow:var(--recess),0 0 0 2px var(--accent-line)}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}input:disabled,select:disabled,textarea:disabled{color:var(--text-muted);cursor:not-allowed}textarea{resize:vertical;min-height:calc(var(--control-height) * 2);line-height:var(--leading-body)}select{padding-right:var(--space-8);background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:right var(--space-4) center,right calc(var(--space-4) - 5px) center;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer}select option{background:var(--surface-raised);color:var(--text)}input[type=datetime-local],input[type=date]{color-scheme:dark}input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=date]::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}input[type=checkbox],input[type=radio]{width:20px;height:20px;margin:0;flex:none;accent-color:var(--accent);cursor:pointer}input[type=color]{width:100%;height:var(--control-height);padding:var(--space-1);border:0;border-radius:var(--radius-control);background:var(--well);box-shadow:var(--recess);cursor:pointer}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:0;border-radius:var(--radius-sm)}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th{text-align:left;font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--line);white-space:nowrap}td{padding:var(--space-3);border-bottom:1px solid var(--line-faint);vertical-align:top}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}}@layer components{.btn{--btn-bg: var(--surface-raised);--btn-bg-hover: var(--surface-hover);--btn-fg: var(--text-strong);--btn-shadow: var(--raise-1);--btn-height: var(--control-height);--btn-pad: var(--space-4);--btn-radius: var(--radius-control);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--btn-height);padding:0 var(--btn-pad);border-radius:var(--btn-radius);background:var(--btn-bg);color:var(--btn-fg);box-shadow:var(--btn-shadow);font-size:var(--text-body);font-weight:var(--weight-semibold);line-height:1;white-space:nowrap;text-decoration:none;-webkit-user-select:none;user-select:none;transition:background-color var(--motion-fast) var(--ease),transform var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}.btn:hover:not(:disabled){background:var(--btn-bg-hover)}.btn:active:not(:disabled){transform:translateY(1px);box-shadow:none}.btn:focus-visible{box-shadow:var(--btn-shadow),var(--focus-ring)}.btn:disabled,.btn.is-busy{opacity:.5}label.btn{cursor:pointer}.btn-primary{--btn-bg: linear-gradient(180deg, var(--accent-strong), var(--accent));--btn-bg-hover: var(--accent-strong);--btn-fg: var(--on-accent);--btn-shadow: var(--raise-accent)}.btn-star{--btn-bg: linear-gradient(180deg, var(--positive-strong), var(--positive));--btn-bg-hover: var(--positive-strong);--btn-fg: var(--on-accent)}.btn-star .lucide{fill:currentColor}.btn-ghost{--btn-bg: transparent;--btn-bg-hover: var(--surface-hover);--btn-fg: var(--text-secondary);--btn-shadow: none}.btn-ghost:hover:not(:disabled){color:var(--text-strong)}.btn-danger{--btn-fg: var(--danger)}.btn-ghost.btn-danger:hover:not(:disabled){color:var(--danger);background:color-mix(in oklch,var(--danger) var(--tint-alpha),transparent)}.btn-sm{--btn-height: var(--control-height-sm);--btn-pad: var(--space-3);--btn-radius: var(--radius-sm);font-size:var(--text-small)}.btn-icon{--btn-pad: 0;width:var(--btn-height);flex:none}.btn-block{width:100%}.btn-lg{--btn-height: 52px;--btn-pad: var(--space-6);--btn-radius: var(--radius-lg);font-size:var(--text-lead)}.link{display:inline;color:var(--accent);font-weight:var(--weight-semibold);text-decoration:underline;text-decoration-color:var(--accent-line);text-underline-offset:3px}.link:hover{text-decoration-color:currentColor}.field{display:grid;gap:var(--space-1-5);min-width:0}.field-label{font-size:var(--text-small);font-weight:var(--weight-semibold);color:var(--text-secondary)}.field-label .optional{font-weight:var(--weight-regular);color:var(--text-muted)}.field-hint{font-size:var(--text-small);color:var(--text-muted)}.form{display:grid;gap:var(--space-5)}.form-grid{display:grid;gap:var(--space-4)}@media(min-width:640px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid>.span-all{grid-column:1 / -1}}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.check{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap);font-size:var(--text-body);color:var(--text);cursor:pointer}.form-error{display:flex;gap:var(--space-2);align-items:flex-start;padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);font-size:var(--text-small);color:var(--danger);background:color-mix(in oklch,var(--danger) var(--tint-alpha),transparent)}.search{position:relative;display:block;min-width:0}.search>.lucide{position:absolute;left:var(--space-3);top:50%;translate:0 -50%;width:var(--icon-md);height:var(--icon-md);color:var(--text-muted);pointer-events:none}.search>input{padding-left:var(--space-10)}.chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip{--chip-bg: var(--surface-raised);--chip-fg: var(--text-secondary);--chip-line: var(--line);display:inline-flex;align-items:center;gap:var(--space-1-5);min-height:38px;padding:0 var(--space-4);border-radius:var(--radius-chip);background:var(--chip-bg);color:var(--chip-fg);box-shadow:inset 0 0 0 1px var(--chip-line),var(--highlight);font-size:var(--text-small);font-weight:var(--weight-medium);transition:background-color var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease),transform var(--motion-fast) var(--ease-spring)}.chip:hover{--chip-fg: var(--text-strong);--chip-bg: var(--surface-hover)}.chip[aria-pressed=true]{--chip-bg: var(--kind-tint, var(--accent-tint));--chip-fg: var(--kind, var(--accent));--chip-line: var(--kind-line, var(--accent-line))}.chip[aria-pressed=true]:active{transform:scale(.96)}.chip .lucide{width:var(--icon-sm);height:var(--icon-sm)}.tags{display:flex;flex-wrap:wrap;gap:var(--space-1-5)}.tag{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-xs);font-size:var(--text-caption);font-weight:var(--weight-medium);line-height:var(--leading-snug);color:var(--kind, var(--text-secondary));background:var(--kind-tint, var(--surface-hover))}.badge{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-width:22px;height:22px;padding:0 var(--space-1-5);border-radius:var(--radius-full);font-size:var(--text-caption);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--kind, var(--text-secondary));background:var(--kind-tint, var(--surface-hover));white-space:nowrap}.badge .lucide{width:12px;height:12px}.badge-solid{color:var(--on-accent);background:var(--kind, var(--accent))}.count{display:inline-flex;align-items:baseline;gap:var(--space-1);font-size:var(--text-small);color:var(--text-muted);white-space:nowrap}.count b{font-family:var(--font-display);font-size:var(--text-body);font-weight:var(--weight-bold);color:var(--kind, var(--text-strong));font-variant-numeric:tabular-nums}.count.is-zero b{color:var(--text-disabled)}.status{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-small);color:var(--text-secondary)}.status:before{content:"";width:8px;height:8px;border-radius:var(--radius-full);background:var(--kind, var(--text-muted));box-shadow:0 0 0 3px var(--kind-tint, transparent)}.avatar{--avatar-size: 40px;--avatar-hue: var(--avatar-1);display:grid;place-items:center;flex:none;width:var(--avatar-size);height:var(--avatar-size);border-radius:var(--radius-md);font-family:var(--font-display);font-size:calc(var(--avatar-size) * .38);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);color:var(--avatar-hue);background:color-mix(in oklch,var(--avatar-hue) 16%,var(--surface-raised));box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--avatar-hue) 22%,transparent),var(--highlight)}.avatar-sm{--avatar-size: 32px;border-radius:var(--radius-sm)}.avatar-lg{--avatar-size: 56px;border-radius:var(--radius-lg)}.avatar[data-hue="1"]{--avatar-hue: var(--avatar-1)}.avatar[data-hue="2"]{--avatar-hue: var(--avatar-2)}.avatar[data-hue="3"]{--avatar-hue: var(--avatar-3)}.avatar[data-hue="4"]{--avatar-hue: var(--avatar-4)}.avatar[data-hue="5"]{--avatar-hue: var(--avatar-5)}.avatar[data-hue="6"]{--avatar-hue: var(--avatar-6)}.mark{--mark-size: 40px;flex:none;width:var(--mark-size);height:var(--mark-size);padding:calc(var(--mark-size) * .08);border-radius:calc(var(--mark-size) * .28);background:linear-gradient(180deg,var(--inverse-strong),var(--inverse));box-shadow:var(--mark-shadow)}.mark img{width:100%;height:100%}.mark-lg{--mark-size: 72px}.card{position:relative;padding:var(--card-padding);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--elevation-1);min-width:0}.card-flush{padding:0;overflow:hidden}.card-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.card-header>:first-child{flex:1;min-width:0}.card-title{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--text-lead);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);color:var(--text-strong)}.card-title .lucide{color:var(--kind, var(--text-muted))}.card-callout{background:linear-gradient(180deg,var(--kind-tint, var(--accent-tint)),transparent 120%),var(--surface);box-shadow:var(--elevation-1),inset 0 0 0 1px var(--kind-line, var(--accent-line))}.segmented{display:flex;gap:var(--space-1);padding:var(--space-1);border-radius:calc(var(--radius-control) + var(--space-1));background:var(--well);box-shadow:var(--recess);overflow-x:auto;scrollbar-width:none;max-width:100%;width:max-content}.segmented::-webkit-scrollbar{display:none}.segmented>button{display:inline-flex;align-items:center;gap:var(--space-2);min-height:calc(var(--control-height) - var(--space-2));padding:0 var(--space-3);border-radius:var(--radius-control);font-size:var(--text-small);font-weight:var(--weight-semibold);color:var(--text-muted);white-space:nowrap;transition:background-color var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease)}.segmented>button:hover{color:var(--text-strong)}.segmented>button[aria-selected=true],.segmented>button[aria-pressed=true]{color:var(--text-strong);background:var(--surface-hover);box-shadow:var(--raise-1)}.segmented>button .badge{height:20px;min-width:20px}.segmented-fill{width:100%}.segmented-fill>button{flex:1;justify-content:center}.sheet-scrim{position:fixed;inset:0;z-index:var(--layer-sheet);display:flex;align-items:flex-end;justify-content:center;background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in var(--motion-base) var(--ease)}.sheet{--sheet-width: 560px;position:relative;display:flex;flex-direction:column;width:100%;max-height:calc(100dvh - var(--safe-top) - var(--space-6));background:var(--surface-raised);border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;box-shadow:var(--elevation-3);animation:sheet-up var(--motion-slow) var(--ease);touch-action:pan-y}.sheet.is-closing{animation:sheet-down var(--motion-base) var(--ease) forwards}.sheet-scrim:has(.is-closing){animation:fade-out var(--motion-base) var(--ease) forwards}.sheet-lg{--sheet-width: 760px}.sheet-panel{height:100dvh;max-height:none;border-radius:0}.sheet-handle{display:grid;place-items:center;height:var(--space-5);cursor:grab;flex:none}.sheet-handle:before{content:"";width:40px;height:5px;border-radius:var(--radius-full);background:var(--line-strong)}.sheet-panel .sheet-handle{display:none}.sheet-header{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-1) var(--gutter) var(--space-3);flex:none}.sheet-panel .sheet-header{padding-top:calc(var(--space-4) + var(--safe-top));border-bottom:1px solid var(--line-faint);padding-bottom:var(--space-4)}.sheet-header-text{flex:1;min-width:0}.sheet-header .eyebrow{margin-bottom:var(--space-1)}.sheet-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-2) var(--gutter) var(--space-6)}.sheet-footer{display:flex;gap:var(--space-2);justify-content:flex-end;padding:var(--space-3) var(--gutter) calc(var(--space-3) + var(--safe-bottom));border-top:1px solid var(--line-faint);background:var(--surface-raised);flex:none}.sheet-footer>.btn{flex:1}@media(min-width:640px){.sheet-footer>.btn{flex:none}}@media(min-width:760px){.sheet-scrim{align-items:center;padding:var(--space-6)}.sheet{width:min(var(--sheet-width),100%);max-height:min(860px,100dvh - var(--space-12));border-radius:var(--radius-sheet);box-shadow:var(--elevation-2),inset 0 0 0 1px var(--line-faint);animation-name:sheet-pop}.sheet.is-closing{animation-name:sheet-unpop}.sheet-handle{display:none}.sheet-header{padding-top:var(--space-6)}.sheet-footer{border-radius:0 0 var(--radius-sheet) var(--radius-sheet)}.sheet-scrim:has(.sheet-panel){justify-content:flex-end;align-items:stretch;padding:var(--space-3)}.sheet-panel{--sheet-width: 640px;height:auto;max-height:none;border-radius:var(--radius-sheet);animation-name:panel-in}.sheet-panel.is-closing{animation-name:panel-out}.sheet-panel .sheet-header{padding-top:var(--space-6)}}.menu{position:absolute;z-index:var(--layer-menu);inset-inline:0;top:calc(100% + var(--space-1-5));max-height:340px;overflow-y:auto;padding:var(--space-1-5);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--elevation-2),inset 0 0 0 1px var(--line);animation:menu-in var(--motion-fast) var(--ease)}.menu-item{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap);padding:var(--space-2);border-radius:var(--radius-md);text-align:left}.menu-item:hover,.menu-item:focus-visible,.menu-item[aria-selected=true]{background:var(--surface-hover);box-shadow:none}.menu-item-text{display:grid;min-width:0}.menu-item-text span{font-size:var(--text-small);color:var(--text-muted)}.list{list-style:none;margin:0;padding:0}.list>li+li{border-top:1px solid var(--line-faint)}.row{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--card-padding);text-align:left;min-height:60px}button.row,a.row{color:inherit;text-decoration:none;transition:background-color var(--motion-fast) var(--ease)}button.row:hover,a.row:hover{background:var(--surface-hover)}.row-main{flex:1;min-width:0;display:grid;gap:var(--space-0-5)}.row-title{font-weight:var(--weight-semibold);color:var(--text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-meta{font-size:var(--text-small);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-end{display:flex;align-items:center;gap:var(--space-2);flex:none}.table-scroll{overflow-x:auto}.table td{font-size:var(--text-body)}.table tbody tr{transition:background-color var(--motion-fast) var(--ease)}.table tbody tr:hover{background:var(--line-faint)}.table th:first-child,.table td:first-child{padding-left:var(--card-padding)}.table th:last-child,.table td:last-child{padding-right:var(--card-padding)}.table .num{text-align:right}.table .actions{text-align:right;white-space:nowrap}.table tr.is-muted td{opacity:.55}@media(max-width:759px){.table-stack thead{display:none}.table-stack tr{display:grid;grid-template-columns:1fr auto;gap:var(--space-1) var(--space-3);padding:var(--space-4) var(--card-padding);border-bottom:1px solid var(--line-faint)}.table-stack td{display:block;padding:0!important;border:0;grid-column:1 / -1}.table-stack td[data-label]:before{content:attr(data-label);display:block;font-size:var(--text-caption);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted);margin-top:var(--space-2)}.table-stack td.cell-lead{grid-column:1}.table-stack td.actions{grid-column:2;grid-row:1}.table-stack td:empty{display:none}}.stat{display:grid;gap:var(--space-1);min-width:0}.stat-value{font-family:var(--font-display);font-size:var(--text-display);font-weight:var(--weight-bold);line-height:1;letter-spacing:var(--tracking-display);font-variant-numeric:tabular-nums;color:var(--kind, var(--text-strong))}.stat-label{font-size:var(--text-small);color:var(--text-muted)}.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:var(--space-1)}.rail-step{height:4px;border-radius:var(--radius-full);background:var(--line)}.rail-step.is-done{background:var(--text-muted)}.rail-step.is-current{background:var(--text-strong)}.rail.is-your-turn .rail-step.is-current{background:var(--accent);box-shadow:0 0 10px var(--accent-line)}.rail.is-returned .rail-step.is-current{background:var(--caution)}.rail.is-complete .rail-step{background:var(--success)}.steps{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:var(--space-2);list-style:none;margin:0;padding:0}.step{display:grid;grid-row:span 3;grid-template-rows:subgrid;align-items:start;gap:var(--space-1-5);font-size:var(--text-caption);color:var(--text-muted);min-width:0}.step:before{content:"";height:4px;border-radius:var(--radius-full);background:var(--line)}.step b{font-size:var(--text-small);font-weight:var(--weight-semibold);color:var(--text-secondary);line-height:var(--leading-snug)}.step.is-done:before{background:var(--text-muted)}.step.is-current:before{background:var(--text-strong)}.step.is-current b{color:var(--text-strong)}.steps.is-your-turn .step.is-current:before{background:var(--accent);box-shadow:0 0 10px var(--accent-line)}.steps.is-your-turn .step.is-current b{color:var(--accent)}.steps.is-complete .step:before{background:var(--success)}.steps.is-returned .step.is-current:before{background:var(--caution)}.steps.is-returned .step.is-current b{color:var(--caution)}.note{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-card);background:linear-gradient(180deg,var(--kind-tint),transparent 140%),var(--surface);box-shadow:var(--elevation-1),inset 0 0 0 1px var(--kind-line)}.note-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:var(--radius-md);color:var(--kind);background:var(--kind-tint)}.note-icon .lucide{width:var(--icon-md);height:var(--icon-md)}.note-body{display:grid;gap:var(--space-1);min-width:0}.note-body .eyebrow{color:var(--kind)}.note-body .prose{color:var(--text-strong)}.note-thread{list-style:none;margin:0;padding:0 0 0 var(--space-4);display:grid;gap:var(--space-4);border-left:2px solid var(--line)}.note-thread li{display:grid;gap:var(--space-1)}.note-thread .row-meta{white-space:normal}.disclosure>summary{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap);margin:calc(var(--space-2) * -1) 0;font-weight:var(--weight-semibold);color:var(--text-secondary);cursor:pointer;list-style:none}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:before{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;rotate:-45deg;transition:rotate var(--motion-fast) var(--ease)}.disclosure[open]>summary{margin-bottom:var(--space-4)}.disclosure[open]>summary:before{rotate:45deg}.empty{display:grid;justify-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);text-align:center;color:var(--text-muted)}.empty-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:var(--space-1);border-radius:var(--radius-lg);color:var(--kind, var(--text-muted));background:var(--kind-tint, var(--surface-raised));box-shadow:var(--highlight)}.empty-title{font-family:var(--font-display);font-size:var(--text-lead);font-weight:var(--weight-semibold);color:var(--text-strong)}.empty p{max-width:36ch;font-size:var(--text-small)}.banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-small);color:var(--kind, var(--text));background:var(--kind-tint, var(--surface-raised));box-shadow:inset 0 0 0 1px var(--kind-line, var(--line))}.banner>:not(.lucide){flex:1}.toast{position:fixed;z-index:var(--layer-toast);left:50%;bottom:calc(var(--toast-offset, var(--space-6)) + var(--safe-bottom));translate:-50% 0;display:flex;align-items:center;gap:var(--space-2);max-width:calc(100vw - var(--space-8));padding:var(--space-3) var(--space-5) var(--space-3) var(--space-4);border-radius:var(--radius-full);background:var(--inverse);color:var(--on-inverse);font-size:var(--text-small);font-weight:var(--weight-semibold);box-shadow:var(--elevation-2);animation:toast-in var(--motion-slow) var(--ease-spring)}.toast .lucide{width:var(--icon-md);height:var(--icon-md)}.toast-star .toast-star-icon{position:relative;color:var(--positive-on-light);animation:star-pop var(--motion-celebrate) var(--ease-spring)}.toast-star .toast-star-icon .lucide{fill:currentColor}.toast-star .toast-star-icon:before,.toast-star .toast-star-icon:after{content:"";position:absolute;inset:50% auto auto 50%;width:4px;height:4px;border-radius:var(--radius-full);background:var(--positive-on-light);opacity:0;animation:spark var(--motion-celebrate) var(--ease) 80ms}.toast-star .toast-star-icon:after{--spark-x: 12px;--spark-y: -14px;animation-delay:.14s}.loading{display:grid;place-items:center;gap:var(--space-4);min-height:40vh;color:var(--text-muted);font-size:var(--text-small)}.loading .mark{animation:breathe 1.6s var(--curve-in-out) infinite}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes sheet-up{0%{translate:0 100%}}@keyframes sheet-down{to{translate:0 100%}}@keyframes sheet-pop{0%{opacity:0;scale:.96;translate:0 8px}}@keyframes sheet-unpop{to{opacity:0;scale:.97}}@keyframes panel-in{0%{translate:24px 0;opacity:0}}@keyframes panel-out{to{translate:24px 0;opacity:0}}@keyframes menu-in{0%{opacity:0;translate:0 -4px}}@keyframes toast-in{0%{opacity:0;translate:-50% 12px;scale:.96}}@keyframes star-pop{0%{scale:.2;rotate:-50deg}60%{scale:1.25;rotate:8deg}to{scale:1;rotate:0deg}}@keyframes spark{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(calc(-50% + var(--spark-x, -13px)),calc(-50% + var(--spark-y, -10px))) scale(.4)}}@keyframes breathe{50%{scale:.94;opacity:.75}}@media(prefers-reduced-motion:reduce){.loading .mark{animation:none}}}@layer layout{.app{min-height:100dvh}.topbar{position:sticky;top:0;z-index:var(--layer-nav);display:flex;align-items:center;gap:var(--space-3);height:calc(var(--topbar-height) + var(--safe-top));padding:var(--safe-top) var(--gutter) 0;background:color-mix(in oklch,var(--canvas) 82%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line-faint)}.topbar .mark{--mark-size: 32px}.topbar-title{flex:1;min-width:0;display:grid;line-height:var(--leading-snug)}.topbar-title strong{font-family:var(--font-display);font-size:var(--text-body);letter-spacing:var(--tracking-tight)}.topbar-title span{font-size:var(--text-caption);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabbar{position:fixed;inset:auto 0 0;z-index:var(--layer-nav);display:grid;grid-template-columns:repeat(5,1fr);align-items:center;height:calc(var(--tabbar-height) + var(--safe-bottom));padding:0 var(--space-2) var(--safe-bottom);background:color-mix(in oklch,var(--canvas-deep) 88%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(16px);backdrop-filter:saturate(1.4) blur(16px);border-top:1px solid var(--line-faint)}.tab{position:relative;display:grid;justify-items:center;align-content:center;gap:var(--space-1);height:100%;font-size:var(--size-11);font-weight:var(--weight-semibold);color:var(--text-muted);text-decoration:none;transition:color var(--motion-fast) var(--ease)}.tab .lucide{width:var(--icon-lg);height:var(--icon-lg)}.tab[aria-current=page]{color:var(--text-strong)}.tab[aria-current=page] .lucide{color:var(--accent)}.tab .badge{position:absolute;top:var(--space-2);left:calc(50% + var(--space-1-5));height:18px;min-width:18px;font-size:var(--size-11)}.fab{justify-self:center;display:grid;place-items:center;width:56px;height:56px;margin-top:calc(var(--space-5) * -1);border-radius:var(--radius-xl);color:var(--on-accent);background:linear-gradient(180deg,var(--accent-strong),var(--accent));box-shadow:var(--raise-accent),0 0 0 5px var(--canvas-deep);transition:transform var(--motion-fast) var(--ease-spring),border-radius var(--motion-base) var(--ease)}.fab .lucide{width:26px;height:26px;stroke-width:2.2;transition:rotate var(--motion-base) var(--ease-spring)}.fab:active{transform:scale(.94)}.fab[aria-expanded=true]{border-radius:var(--radius-full)}.fab[aria-expanded=true] .lucide{rotate:45deg}.sidebar{display:none}.main{padding:var(--space-5) var(--gutter) calc(var(--tabbar-height) + var(--safe-bottom) + var(--space-10))}.page{width:100%;max-width:var(--content-max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--section-gap);animation:page-in var(--motion-slow) var(--ease)}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.page-heading{display:grid;gap:var(--space-1-5);min-width:0}.page-lede{color:var(--text-secondary);max-width:var(--reading-max)}.page-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.toolbar{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.toolbar>.search{flex:1 1 240px}.toolbar>select{width:auto;flex:0 1 auto}.split,.with-aside{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--section-gap);align-items:start}.grid-cards{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.grid-tiles{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr))}@media(min-width:760px){.main{padding-top:var(--space-8)}}:root:has(.tabbar){--toast-offset: calc(var(--tabbar-height) + var(--space-4))}.app-simple{--tabbar-height: 0px}.page-narrow{max-width:960px}@media(min-width:1024px){.app{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.topbar,.tabbar{display:none}:root:has(.tabbar){--toast-offset: var(--space-6)}.app.app-simple{display:block}.app-simple .topbar{display:flex}.main{padding-bottom:var(--space-16)}.sidebar{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6) var(--space-4) var(--space-4);background:color-mix(in oklch,var(--canvas-deep) 70%,transparent);border-right:1px solid var(--line-faint)}.sidebar-brand{display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-2)}.sidebar-brand div{display:grid;min-width:0;line-height:var(--leading-snug)}.sidebar-brand strong{font-family:var(--font-display);font-size:var(--text-lead);letter-spacing:var(--tracking-display)}.sidebar-brand span{font-size:var(--text-caption);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav{display:grid;gap:var(--space-0-5)}.nav-label{padding:var(--space-3) var(--space-3) var(--space-1-5);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-disabled)}.nav-item{display:flex;align-items:center;gap:var(--space-3);min-height:42px;padding:0 var(--space-3);border-radius:var(--radius-control);font-weight:var(--weight-medium);color:var(--text-secondary);text-decoration:none;transition:background-color var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease)}.nav-item:hover{color:var(--text-strong);background:var(--surface)}.nav-item .lucide{width:var(--icon-md);height:var(--icon-md);color:var(--text-muted)}.nav-item>span:not(.badge){flex:1}.nav-item[aria-current=page]{color:var(--text-strong);background:var(--surface-raised);box-shadow:var(--raise-1)}.nav-item[aria-current=page] .lucide{color:var(--accent)}.sidebar-foot{margin-top:auto;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--elevation-1)}.sidebar-foot .row-main{line-height:var(--leading-snug)}.split{grid-template-columns:minmax(0,1fr)}.with-aside{grid-template-columns:minmax(0,1fr) 320px}.with-aside>aside{order:2;position:sticky;top:var(--space-8)}}@media(min-width:1280px){.split{grid-template-columns:minmax(340px,400px) minmax(0,1fr)}.split>.split-detail{position:sticky;top:var(--space-8);max-height:calc(100dvh - var(--space-16));overflow-y:auto}}@keyframes page-in{0%{opacity:0;translate:0 6px}}}@layer pages{.auth{min-height:100dvh;display:grid;place-items:center;padding:calc(var(--space-10) + var(--safe-top)) var(--gutter) calc(var(--space-10) + var(--safe-bottom));background:radial-gradient(560px 360px at 50% 0%,color-mix(in oklch,var(--positive) 7%,transparent),transparent 70%),var(--canvas-glow),var(--canvas)}.auth-card{width:min(420px,100%);display:grid;gap:var(--space-6)}.auth-heading{display:grid;gap:var(--space-2)}.auth-heading h1{font-size:var(--text-display)}.divider{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-small);color:var(--text-muted)}.divider:before,.divider:after{content:"";flex:1;border-top:1px solid var(--line)}.demo{display:grid;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-card);background:var(--kind-tint);box-shadow:inset 0 0 0 1px var(--kind-line)}.demo .eyebrow{color:var(--kind)}.demo .chips{margin-top:var(--space-1)}.auth-fine{font-size:var(--text-caption);color:var(--text-muted);text-align:center}@media(min-width:760px){.auth-card{padding:var(--space-10);border-radius:var(--radius-sheet);background:color-mix(in oklch,var(--surface) 88%,transparent);box-shadow:var(--elevation-2)}}.nav-group{display:grid;gap:var(--space-0-5)}.sidebar-foot{width:100%;text-align:left;color:inherit}.sidebar-foot:hover,.more-list .row[aria-current=page]{background:var(--surface-hover)}.more-list .row[aria-current=page] .lucide{color:var(--accent)}.capture{display:grid;gap:var(--space-2);padding-bottom:var(--space-2)}.capture-option{display:flex;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-4);border-radius:var(--radius-card);text-align:left;background:var(--surface);box-shadow:var(--elevation-1);transition:background-color var(--motion-fast) var(--ease),transform var(--motion-fast) var(--ease)}.capture-option:hover{background:var(--surface-hover)}.capture-option:active{transform:scale(.985)}.capture-option strong{font-size:var(--text-lead);font-family:var(--font-display);letter-spacing:var(--tracking-tight)}.capture-icon{display:grid;place-items:center;width:52px;height:52px;flex:none;border-radius:var(--radius-tile);color:var(--kind);background:var(--kind-tint);box-shadow:inset 0 0 0 1px var(--kind-line)}.capture-icon .lucide{width:26px;height:26px}.capture-option[data-kind=positive] .capture-icon .lucide{fill:currentColor}.capture-option .row-meta{white-space:normal}.capture-chevron{color:var(--text-muted)}.picker{position:relative}.picked{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-2);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--elevation-1)}.picker-note{padding:var(--space-3)}.picker-add{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2);margin-top:var(--space-1);padding:var(--space-2);border-top:1px solid var(--line-faint)}.picker-add-label{grid-column:1 / -1;display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-small);color:var(--text-secondary);min-width:0}.picker-add input{min-height:var(--control-height-sm)}.odr-list{display:grid;gap:var(--space-2)}.odr-list>li+li{border-top:0}.odr-card{display:flex;gap:var(--space-3);width:100%;padding:var(--space-4);border-radius:var(--radius-card);text-align:left;background:var(--surface);box-shadow:var(--elevation-1);transition:background-color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}.odr-card:hover{background:var(--surface-raised)}.odr-card.is-selected{background:var(--surface-raised);box-shadow:var(--elevation-1),inset 0 0 0 1px var(--line-strong)}.odr-card-main{flex:1;min-width:0;display:grid;gap:var(--space-1-5)}.odr-card-top{display:flex;align-items:baseline;gap:var(--space-2)}.odr-card-top .row-title{flex:1}.odr-card-top time,.entry-top time,.timeline-meta time{flex:none;font-size:var(--text-caption);color:var(--text-muted)}.odr-card-stage{display:grid;gap:var(--space-1-5);margin-top:var(--space-1)}.odr-card-stage-label{font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--text-muted)}.odr-card-stage-label.is-your-turn{color:var(--accent)}.odr-card-stage-label.is-returned{color:var(--caution)}.glance{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}@media(min-width:760px){.glance{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}}.glance-tile{display:grid;align-content:start;gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-tile);text-align:left;background:var(--surface);box-shadow:var(--elevation-1);transition:background-color var(--motion-fast) var(--ease)}button.glance-tile:hover{background:var(--surface-raised)}.glance-tile[data-kind]{background:linear-gradient(160deg,var(--kind-tint),transparent 90%),var(--surface)}.glance-value{font-family:var(--font-display);font-size:var(--text-title);font-weight:var(--weight-bold);line-height:1;letter-spacing:var(--tracking-display);font-variant-numeric:tabular-nums;color:var(--kind, var(--text-strong))}.glance-value small{font-size:var(--text-body);font-weight:var(--weight-semibold);letter-spacing:0;color:var(--text-muted)}.glance-label{font-size:var(--text-small);line-height:var(--leading-snug);color:var(--text-muted)}.files .row{min-height:56px}.file-link{color:inherit;text-decoration:none}.file-link:hover .row-title{text-decoration:underline}.detail{display:grid;gap:var(--space-6)}.detail-head{display:flex;align-items:flex-start;gap:var(--space-4)}.detail-title{flex:1;min-width:0;display:grid;gap:var(--space-1)}.detail-title h2{font-size:var(--text-title)}.detail-tools{display:flex;gap:var(--space-1);flex:none}.sheet .detail-tools{margin-top:calc(var(--space-2) * -1)}.history{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--well);box-shadow:var(--recess)}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5) var(--space-4);margin:0}.facts dt{font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-1)}.facts dd{margin:0;color:var(--text-strong)}.facts .fact-wide{grid-column:1 / -1}.next-step{display:grid;gap:var(--space-4)}.next-step h3{margin:var(--space-1) 0}.insight{display:grid;gap:var(--space-4);padding:0;overflow:hidden}.insight-stat{display:grid;align-content:start;gap:var(--space-1);padding:var(--card-padding);background:linear-gradient(160deg,var(--kind-tint),transparent 80%);border-bottom:1px solid var(--line-faint)}.insight-stat .stat-value{font-family:var(--font-display);font-size:var(--text-hero);font-weight:var(--weight-bold);line-height:1;letter-spacing:var(--tracking-display);color:var(--kind)}.insight-stat .stat-label{font-size:var(--text-small);color:var(--text-secondary)}.insight-body{display:grid;gap:var(--space-1);padding:0 0 var(--space-2)}.insight-body>h3,.insight-body>p{padding:0 var(--card-padding)}.spotlight{margin-top:var(--space-2)}.spotlight .row{min-height:52px;padding-block:var(--space-2)}.spotlight .badge{color:var(--kind);background:var(--kind-tint)}.spotlight .badge .lucide{fill:currentColor}.rank{width:var(--space-4);flex:none;font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--text-muted);text-align:center}.spotlight-more{margin:var(--space-1) var(--card-padding) 0;justify-self:start}.spotlight-empty{padding:var(--space-3) var(--card-padding) var(--space-2)}@media(min-width:640px)and (max-width:1023px){.insight{grid-template-columns:220px 1fr;gap:0}.insight-stat{border-bottom:0;border-right:1px solid var(--line-faint)}.insight-body{padding-top:var(--card-padding)}}.entry{display:flex;gap:var(--space-3);padding:var(--space-4) var(--card-padding)}.entry-main{flex:1;min-width:0;display:grid;gap:var(--space-1-5)}.entry-top{display:flex;align-items:baseline;gap:var(--space-2)}.entry-top .row-title{flex:1}.entry-text{color:var(--text-secondary);font-size:var(--text-small);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.entry-meta{white-space:normal}.entry-actions{display:flex;flex-direction:column;gap:var(--space-1);margin:calc(var(--space-1) * -1) calc(var(--space-2) * -1) 0 0}@media(min-width:760px){.entry-actions{flex-direction:row;opacity:.55;transition:opacity var(--motion-fast) var(--ease)}.entry:hover .entry-actions,.entry:focus-within .entry-actions{opacity:1}}.quick-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.action-tile{display:flex;align-items:center;gap:var(--space-4);width:100%;min-height:88px;padding:var(--space-4) var(--space-5);border-radius:var(--radius-card);text-align:left;background:linear-gradient(160deg,var(--kind-tint),transparent 70%),var(--surface);box-shadow:var(--elevation-1),inset 0 0 0 1px var(--line-faint);transition:transform var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}.action-tile:hover{box-shadow:var(--elevation-2),inset 0 0 0 1px var(--kind-line)}.action-tile:active{transform:scale(.985)}.action-tile[data-kind=positive] .capture-icon .lucide{fill:currentColor}.action-tile-text{flex:1;display:grid;gap:var(--space-1);min-width:0}.action-tile-text strong{font-family:var(--font-display);font-size:var(--text-lead);letter-spacing:var(--tracking-tight)}.action-tile-text span{font-size:var(--text-small);color:var(--text-secondary)}@media(min-width:760px){.quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.action-tile{flex-direction:column;align-items:flex-start;min-height:200px;padding:var(--space-6)}.action-tile .capture-icon{width:60px;height:60px}.action-tile .capture-chevron{display:none}.action-tile-text strong{font-size:var(--text-title-sm)}}.eyebrow-kind{color:var(--kind)}.returned-row{padding-inline:0;align-items:flex-start}.returned-note{font-size:var(--text-small);color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.staff-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--section-gap);align-items:start}@media(min-width:900px){.staff-columns{grid-template-columns:300px minmax(0,1fr)}}.week{display:grid;gap:var(--space-3)}.week-counts{display:grid;gap:var(--space-2)}.week-counts .count b{font-size:var(--text-title-sm)}.student-row{flex-wrap:wrap}.student-row.is-inactive{opacity:.55}.student-name{display:flex;align-items:center;gap:var(--space-2);min-width:0}.student-counts{display:flex;gap:var(--space-3);flex:none}.student-last,.row-chevron{display:none}@media(max-width:639px){.student-row .row-main{flex-basis:calc(100% - 56px)}.student-counts{width:100%;padding-left:52px}}@media(min-width:640px){.student-row{flex-wrap:nowrap}.row-chevron{display:block}}@media(min-width:900px){.student-last{display:block;width:110px;text-align:right}}.quick-add{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.quick-add .btn{--btn-pad: var(--space-2)}.tally{grid-template-columns:repeat(3,1fr)}.tally .card{padding:var(--space-3) var(--space-4)}.tally .stat-value{font-size:var(--text-title)}.timeline{list-style:none;margin:0;padding:0;display:grid}.timeline li{position:relative;display:grid;gap:var(--space-1);padding:0 0 var(--space-5) var(--space-6)}.timeline li:before{content:"";position:absolute;left:3px;top:7px;width:10px;height:10px;border-radius:var(--radius-full);background:var(--kind);box-shadow:0 0 0 4px var(--kind-tint)}.timeline li:after{content:"";position:absolute;left:7px;top:24px;bottom:4px;width:2px;border-radius:var(--radius-full);background:var(--line)}.timeline li:last-child:after{display:none}.timeline-meta{display:flex;align-items:center;gap:var(--space-2)}.timeline-text{color:var(--text-secondary);font-size:var(--text-small)}.report-filter-student{flex:1 1 280px;min-width:0}.report-filter-student .picked{min-height:var(--control-height);padding-block:var(--space-1)}.report-top{display:grid;gap:var(--space-4)}@media(min-width:1100px){.report-top{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}}.ratio{display:grid;gap:var(--space-3);background:radial-gradient(420px 220px at 0% 0%,var(--kind-tint),transparent 70%),var(--surface)}.ratio-value{font-family:var(--font-display);font-size:var(--text-hero);font-weight:var(--weight-bold);line-height:1;letter-spacing:var(--tracking-display);color:var(--text-strong);font-variant-numeric:tabular-nums}.ratio-value span{color:var(--text-muted);font-weight:var(--weight-semibold)}.ratio-meter{position:relative;height:12px;margin:var(--space-6) 0 var(--space-1);border-radius:var(--radius-full);background:var(--chart-neutral)}.ratio-fill{position:absolute;inset:0 auto 0 0;border-radius:var(--radius-full);background:var(--chart-positive);box-shadow:2px 0 0 var(--surface)}.ratio-goal{position:absolute;top:-6px;bottom:-6px;width:2px;border-radius:var(--radius-full);background:var(--text-strong)}.ratio-goal span{position:absolute;bottom:calc(100% + var(--space-1));right:0;font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--text-secondary);white-space:nowrap}.ratio-status{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-small);color:var(--text-secondary)}.ratio-status .lucide{color:var(--kind);margin-top:var(--space-0-5)}.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.kpis .card{align-content:space-between}.chart-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}@media(min-width:1100px){.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid .hbars li{grid-template-columns:minmax(0,16rem) 1fr 2.5rem}}.chart-card{display:grid;gap:var(--space-4);align-content:start}.chart-card .card-header{margin:0;flex-wrap:wrap}.chart-card .card-header>:first-child{flex:1 0 auto}.hbars{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.hbars li{display:grid;grid-template-columns:minmax(0,7rem) 1fr 2rem;align-items:center;gap:var(--space-3);font-size:var(--text-small)}.hbar-label{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbar-track{height:10px;border-radius:var(--radius-full);background:var(--chart-track)}.hbar{display:block;height:100%;min-width:4px;border-radius:var(--radius-full);background:var(--kind-chart, var(--chart-neutral))}.hbar-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-strong)}.legend{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:var(--text-small);color:var(--text-secondary)}.legend span{display:inline-flex;align-items:center;gap:var(--space-1-5)}.legend span:before{content:"";width:10px;height:10px;border-radius:var(--radius-xs);background:var(--kind-chart)}.columns{display:flex;justify-content:space-around;align-items:stretch;gap:var(--space-2);height:220px;overflow-x:auto;padding-bottom:var(--space-1)}.column{position:relative;flex:1 0 44px;max-width:120px;display:grid;grid-template-rows:1fr auto;gap:var(--space-2);border-radius:var(--radius-sm)}.column:hover,.column:focus-visible{background:var(--line-faint)}.column-bars{display:flex;align-items:flex-end;justify-content:center;gap:var(--space-0-5);border-bottom:1px solid var(--line)}.vbar{display:block;width:14px;border-radius:var(--radius-xs) var(--radius-xs) 0 0;background:var(--kind-chart)}.vstack{display:flex;flex-direction:column-reverse;justify-content:flex-start;height:100%;gap:var(--space-0-5)}.vstack .vbar:first-child{border-radius:0}.column-label{font-size:var(--text-caption);color:var(--text-muted);text-align:center}.column-tip{position:absolute;z-index:var(--layer-menu);bottom:calc(100% - var(--space-6));left:50%;translate:-50% 0;display:none;gap:var(--space-0-5);min-width:140px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:var(--elevation-2),inset 0 0 0 1px var(--line);font-size:var(--text-small);color:var(--text-secondary);pointer-events:none}.column-tip span{display:inline-flex;align-items:center;gap:var(--space-1-5)}.column-tip span:before{content:"";width:8px;height:8px;border-radius:var(--radius-full);background:var(--kind-chart)}.column:hover .column-tip,.column:focus-visible .column-tip{display:grid}@media(min-width:760px){.hbars li{grid-template-columns:minmax(0,9rem) 1fr 2.5rem}}.secret{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--well);box-shadow:var(--recess)}.secret code{flex:1;background:none;padding:0;font-size:var(--text-lead);color:var(--text-strong)}.nowrap-cell{flex-wrap:nowrap;gap:var(--space-3)}.table select{min-height:var(--control-height-sm);width:auto;font-size:var(--text-small)}.table-more{padding:var(--space-3) var(--card-padding)}.audit-detail{max-width:360px;word-break:break-word}.narrow{max-width:480px}.settings .card{align-content:start}.sticky-actions{position:sticky;bottom:calc(var(--tabbar-height) + var(--safe-bottom) + var(--space-3));display:flex;justify-content:flex-end;pointer-events:none}.sticky-actions .btn{pointer-events:auto;box-shadow:var(--raise-accent),var(--elevation-2)}@media(min-width:1024px){.sticky-actions{bottom:var(--space-6)}}.export{display:grid;gap:var(--space-2);align-content:start;color:inherit;text-decoration:none;transition:background-color var(--motion-fast) var(--ease)}.export:hover{background:var(--surface-raised)}.export .lucide{color:var(--kind, var(--text-muted))}.sb{padding-top:calc(var(--space-10) + var(--safe-top))}.sb .page{gap:var(--space-12)}.sb-hero{display:flex;gap:var(--space-5);align-items:center;flex-wrap:wrap}.sb-section{display:grid;gap:var(--space-4)}.sb-heading{display:grid;gap:var(--space-1);max-width:var(--reading-max)}.sb-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-3)}.sb-swatch{display:grid;gap:var(--space-2)}.sb-swatch code{background:none;padding:0;font-size:var(--text-caption);color:var(--text-muted)}.sb-chip{height:64px;border-radius:var(--radius-tile);box-shadow:inset 0 0 0 1px var(--line)}.sb-type{display:grid;gap:var(--space-4)}.sb-type-row{display:grid;gap:var(--space-1)}.sb-type-row code,.sb-space-row code,.sb-radius code{background:none;padding:0;font-size:var(--text-caption);color:var(--text-muted)}.sb-display{font-weight:var(--weight-semibold);letter-spacing:var(--tracking-display);color:var(--text-strong)}.sb-space{display:grid;gap:var(--space-2)}.sb-space-row{display:grid;grid-template-columns:120px 1fr;align-items:center}.sb-space-row span{height:12px;border-radius:var(--radius-xs);background:var(--accent)}.sb-radii{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-4)}.sb-radius{display:grid;gap:var(--space-2)}.sb-radius span{height:72px;background:var(--surface-raised);box-shadow:var(--raise-1)}.sb-relief{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:center}}.legal{padding-top:calc(var(--space-10) + var(--safe-top))}.legal .page{gap:var(--space-5);max-width:880px}.legal-hero{display:flex;gap:var(--space-5);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-2)}.legal-section{scroll-margin-top:var(--space-6)}.legal-body{display:grid;gap:var(--space-3);color:var(--text-secondary);line-height:var(--leading-body);max-width:var(--reading-max)}.legal-body p{text-wrap:pretty}.legal-body strong{color:var(--text-strong)}.promises{background:linear-gradient(160deg,var(--kind-tint),transparent 80%),var(--surface)}.promise-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}@media(min-width:640px){.promise-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.promise-list li{display:flex;align-items:flex-start;gap:var(--space-2);font-weight:var(--weight-medium);color:var(--text-strong)}.promise-list .lucide{flex:none;margin-top:var(--space-0-5);color:var(--kind)}.legal-pairs{display:grid;gap:var(--space-4);margin:0}.legal-pairs dt{font-weight:var(--weight-semibold);color:var(--text-strong);margin-bottom:var(--space-0-5)}.legal-pairs dd{margin:0;color:var(--text-secondary)}.legal-list{margin:0;padding-left:var(--space-5);display:grid;gap:var(--space-2)}.legal-list li{color:var(--text-secondary)}.legal-checks{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.legal-checks li{display:flex;align-items:center;gap:var(--space-2);color:var(--text)}.legal-checks .lucide{flex:none;color:var(--kind)}.legal-meta{margin-top:var(--space-2)}.legal-foot{padding:var(--space-4) 0 var(--space-10);text-align:center}.landing{--gutter: var(--space-5);min-height:100dvh}.landing main{display:block}.landing-bar{position:sticky;top:0;z-index:var(--layer-nav);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);max-width:var(--content-max);margin:0 auto;padding:var(--space-3) var(--gutter);background:color-mix(in oklch,var(--canvas) 82%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px)}.landing-brand{display:flex;align-items:center;gap:var(--space-2);color:var(--text-strong);text-decoration:none;font-family:var(--font-display);font-size:var(--text-lead);letter-spacing:var(--tracking-tight)}.landing-brand .mark{--mark-size: 34px}.landing-nav{display:flex;align-items:center;gap:var(--space-5)}.landing-nav>a:not(.btn){color:var(--text-secondary);text-decoration:none;font-size:var(--text-small);font-weight:var(--weight-semibold)}.landing-nav>a:not(.btn):hover{color:var(--text-strong)}@media(max-width:519px){.landing-nav>a[href="#security"]{display:none}}.landing-section{max-width:var(--content-max);margin:0 auto;padding:var(--space-12) var(--gutter)}.landing-head{max-width:44rem;margin:0 auto var(--space-8);text-align:center;display:grid;gap:var(--space-3)}.landing-head h2{font-size:var(--text-title)}.landing-head p{color:var(--text-secondary)}.landing-hero{max-width:52rem;margin:0 auto;padding:var(--space-16) var(--gutter) var(--space-12);text-align:center;display:grid;gap:var(--space-5);justify-items:center}.landing-hero h1{font-size:var(--text-mega);line-height:var(--leading-tight);letter-spacing:var(--tracking-display)}.landing-lede{max-width:42rem;font-size:var(--text-lead);color:var(--text-secondary)}.landing-cta{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-top:var(--space-2)}.landing-subtle{font-size:var(--text-small);color:var(--text-muted)}.landing-feature{display:grid;gap:var(--space-2);align-content:start}.landing-feature-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:var(--space-2);border-radius:var(--radius-tile);color:var(--kind, var(--accent));background:var(--kind-tint, var(--accent-tint));box-shadow:inset 0 0 0 1px var(--kind-line, var(--accent-line))}.landing-feature h3,.landing-security-card h3{font-size:var(--text-lead)}.landing-feature p{color:var(--text-secondary);font-size:var(--text-small)}.landing-roles .card{display:grid;gap:var(--space-2);align-content:start}.landing-roles p{color:var(--text-secondary);font-size:var(--text-small)}.landing-security{border-radius:var(--radius-sheet);background:radial-gradient(900px 400px at 50% -120px,var(--accent-tint),transparent 70%),var(--surface);box-shadow:var(--elevation-1);max-width:calc(var(--content-max) - var(--space-8))}.landing-security-card{display:flex;gap:var(--space-3);align-items:flex-start}.landing-security-card>div{display:grid;gap:var(--space-1)}.landing-security-card p{color:var(--text-secondary);font-size:var(--text-small)}.landing-security-note{max-width:44rem;margin:var(--space-6) auto 0;text-align:center;color:var(--text-secondary);font-size:var(--text-small)}.landing-form{max-width:44rem;margin:0 auto;display:grid;gap:var(--space-5)}.landing-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.landing-thanks{max-width:44rem;margin:0 auto;display:grid;justify-items:center;gap:var(--space-2);text-align:center;padding:var(--space-10) var(--space-6)}.landing-thanks .lucide{color:var(--kind)}.landing-foot{max-width:var(--content-max);margin:0 auto;padding:var(--space-10) var(--gutter) calc(var(--space-10) + var(--safe-bottom));border-top:1px solid var(--line-faint);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-6)}.landing-foot-brand{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-weight:var(--weight-semibold)}.landing-foot-brand .mark{--mark-size: 28px}.landing-foot-links{display:flex;flex-wrap:wrap;gap:var(--space-5)}.landing-foot-links a{color:var(--text-secondary);text-decoration:none;font-size:var(--text-small)}.landing-foot-links a:hover{color:var(--text-strong)}.landing-foot-fine{flex:1;text-align:right;color:var(--text-muted);font-size:var(--text-caption);min-width:12rem}@layer utilities{.eyebrow{font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.eyebrow-accent{color:var(--accent)}.muted{color:var(--text-muted)}.small{font-size:var(--text-small)}.mono{font-family:var(--font-mono);font-size:.92em;letter-spacing:0}.nowrap{white-space:nowrap}.grow{flex:1;min-width:0}.reading{max-width:var(--reading-max)}.prose{white-space:pre-wrap;line-height:var(--leading-body)}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stack{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-content:start}.stack-sm{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);align-content:start;min-width:0}.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.space-between{justify-content:space-between}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:1023px){.hide-compact{display:none}}.print-only{display:none}}@layer print{@media screen{.print-form{display:none}}@media print{@page{size:letter portrait;margin:.5in .6in}body{background:var(--canvas)}.sidebar,.topbar,.tabbar,.toast,.no-print,.sheet-handle,.sheet-header,.sheet-footer{display:none}.print-only{display:block}body:has(.sheet .print-area) .app{display:none}.sheet-scrim{position:static;display:block;padding:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;animation:none}.sheet{width:100%;height:auto;max-height:none;box-shadow:none;animation:none;background:none}.sheet-body{overflow:visible;padding:0}.app{display:block}.main{padding:0}.page{animation:none}.split{display:block}.split-detail{position:static;max-height:none;overflow:visible;padding:0;box-shadow:none;background:none}.detail>:not(.print-form){display:none}.print-form{display:block;font-size:var(--text-body);line-height:var(--leading-snug);color:var(--text-strong);print-color-adjust:exact;-webkit-print-color-adjust:exact}.pf-head{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:var(--print-rule-heavy) solid var(--text-strong)}.pf-head .mark{--mark-size: 44px;padding:0;background:none;box-shadow:none}.pf-school{flex:1;display:grid;gap:var(--space-0-5)}.pf-school strong{font-family:var(--font-display);font-size:var(--text-title-sm);letter-spacing:var(--tracking-tight)}.pf-school span,.pf-section,.pf-label{font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase}.pf-number{display:grid;gap:var(--space-0-5);text-align:right}.pf-number strong{font-family:var(--font-mono);font-size:var(--text-lead)}.pf-number span{font-size:var(--text-small);color:var(--text-secondary)}.pf-section{margin:var(--space-3) 0 var(--space-1-5);padding:var(--space-1) var(--space-2);font-family:var(--font-body);color:var(--text-strong);background:var(--print-band)}.pf-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:var(--print-rule) solid var(--text-strong);border-left:var(--print-rule) solid var(--text-strong)}.pf-cell{display:grid;align-content:start;gap:var(--space-0-5);min-height:var(--print-cell-height);padding:var(--space-1) var(--space-1-5);border-right:var(--print-rule) solid var(--text-strong);border-bottom:var(--print-rule) solid var(--text-strong)}.pf-grid-student{grid-template-columns:2fr 1fr 1fr 1fr}.pf-wide{grid-column:span 2}.pf-label{color:var(--text-muted)}.pf-value{font-size:var(--text-body)}.pf-caption{margin:var(--space-3) 0 var(--space-1)}.pf-checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-1) var(--space-3);font-size:var(--text-small)}.pf-checks-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-box{display:inline-grid;place-items:center;width:var(--print-box);height:var(--print-box);margin-right:var(--space-1);vertical-align:-1px;border:var(--print-rule) solid var(--text-strong);font-size:var(--text-caption);font-weight:var(--weight-bold);line-height:1}.pf-box[data-checked]:after{content:"✓"}.pf-inline .pf-box{margin-left:var(--space-2)}.pf-blank{display:inline-block;min-width:var(--print-blank);border-bottom:var(--print-rule) solid var(--text-strong);text-align:center}.pf-text{min-height:var(--print-text-height);padding:var(--space-1-5) var(--space-2);border:var(--print-rule) solid var(--text-strong);white-space:pre-wrap}.pf-text-short{min-height:calc(var(--print-text-height) * .55)}.pf-inline{margin-top:var(--space-2);font-size:var(--text-small)}.pf-fine{margin-bottom:var(--space-2);font-size:var(--text-caption);color:var(--text-muted)}.pf-signatures{display:grid;grid-template-columns:3fr 1fr;gap:var(--space-4) var(--space-6);break-inside:avoid}.pf-sign{display:grid;gap:var(--space-1)}.pf-line{height:var(--print-sign-height);border-bottom:var(--print-rule) solid var(--text-strong)}.pf-foot{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-5);padding-top:var(--space-1-5);border-top:var(--print-rule) solid var(--line);font-size:var(--text-caption);color:var(--text-muted)}}}
