@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Fraunces-Text-400.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/Fraunces-400-italic.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Inter-400.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Inter-500.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Inter-600.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-paper:#f6f1e6;--color-surface:#fffdf7;--color-surface-sunken:#efe8da;--color-border:#e7e0d0;--color-border-strong:#d6cdb8;--color-ink:#3f3c35;--color-text:#524e46;--color-text-muted:#6b665c;--color-text-subtle:#7e786b;--color-primary:#3f3c35;--color-primary-hover:#2f2c27;--color-primary-fg:#f6f1e6;--color-accent:#5a564c;--color-focus:#3f3c35;--tone-neutral-bg:#ece9e1;--tone-neutral-fg:#5b574e;--tone-positive-bg:#e7efe2;--tone-positive-fg:#3c6235;--tone-warning-bg:#f3e9cf;--tone-warning-fg:#74571a;--tone-danger-bg:#f2ddd6;--tone-danger-fg:#8c3a2d;--tone-info-bg:#dfe8e6;--tone-info-fg:#3a5754;--font-display:"Fraunces", "Hoefler Text", Georgia, "Times New Roman", serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, system-ui, sans-serif;--font-mono:"Berkeley Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--text-4xl:3rem;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.55;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.14em;--tracking-wider:.22em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:999px;--shadow-sm:0 1px 2px #211c160f;--shadow-md:0 4px 12px #211c1614;--shadow-lg:0 12px 32px #211c161f;--ring:0 0 0 3px color-mix(in srgb, var(--color-focus) 35%, transparent);--duration-fast:.12s;--duration-base:.2s;--duration-slow:.32s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-emphasized:cubic-bezier(.2, 0, 0, 1.2);--max-width:960px;--tap-target:44px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--color-paper:#15140f;--color-surface:#1e1c15;--color-surface-sunken:#100f0b;--color-border:#322f25;--color-border-strong:#454135;--color-ink:#f3efe6;--color-text:#e9e5da;--color-text-muted:#a8a395;--color-text-subtle:#827d70;--color-primary:#f3efe6;--color-primary-hover:#fff;--color-primary-fg:#1e1c15;--color-accent:#cabfa9;--color-focus:#cabfa9;--tone-neutral-bg:#292419;--tone-neutral-fg:#bbb094;--tone-positive-bg:#1d3120;--tone-positive-fg:#9ed098;--tone-warning-bg:#382c12;--tone-warning-fg:#e6c477;--tone-danger-bg:#371912;--tone-danger-fg:#ec9d8d;--tone-info-bg:#16302e;--tone-info-fg:#8cc7c1;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000073;--shadow-lg:0 12px 32px #0000008c}}[data-theme=dark]{--color-paper:#15140f;--color-surface:#1e1c15;--color-surface-sunken:#100f0b;--color-border:#322f25;--color-border-strong:#454135;--color-ink:#f3efe6;--color-text:#e9e5da;--color-text-muted:#a8a395;--color-text-subtle:#827d70;--color-primary:#f3efe6;--color-primary-hover:#fff;--color-primary-fg:#1e1c15;--color-accent:#cabfa9;--color-focus:#cabfa9;--tone-neutral-bg:#292419;--tone-neutral-fg:#bbb094;--tone-positive-bg:#1d3120;--tone-positive-fg:#9ed098;--tone-warning-bg:#382c12;--tone-warning-fg:#e6c477;--tone-danger-bg:#371912;--tone-danger-fg:#ec9d8d;--tone-info-bg:#16302e;--tone-info-fg:#8cc7c1;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000073;--shadow-lg:0 12px 32px #0000008c}*{box-sizing:border-box}html,body{background:var(--color-paper);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0}h1,h2,h3{font-family:var(--font-display);font-weight:var(--weight-regular);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-ink);margin:0}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}code{font-family:var(--font-mono);font-size:.875em}:where(a,button,input,select,textarea,[tabindex]):focus-visible{box-shadow:var(--ring);border-radius:var(--radius-sm);outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.tabular-nums{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.eyebrow{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-accent)}.page-shell{max-width:var(--max-width);padding:var(--space-6) var(--space-4);margin:0 auto}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.page-header__eyebrow{margin-bottom:var(--space-2);display:block}.page-header__title{font-size:var(--text-2xl)}.page-header__subtitle{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--text-base)}.page-header__actions{gap:var(--space-2);align-items:center;display:flex}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:0 var(--space-4);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);border:1px solid #0000;line-height:1;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--color-primary);color:var(--color-primary-fg)}.btn--primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong)}.btn--secondary:hover:not(:disabled){background:var(--color-surface-sunken)}.btn--ghost{color:var(--color-text);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--color-surface-sunken)}.btn--danger{background:var(--tone-danger-fg);color:var(--color-surface)}.btn--danger:hover:not(:disabled){filter:brightness(.92)}.btn--sm{min-height:36px;padding:0 var(--space-3);font-size:var(--text-xs)}.btn--block{width:100%}.field{gap:var(--space-2);flex-direction:column;display:flex}.field__label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text)}.field__hint{font-size:var(--text-xs);color:var(--color-text-muted)}.field__error{font-size:var(--text-xs);color:var(--tone-danger-fg)}.input{width:100%;min-height:var(--tap-target);padding:var(--space-2) var(--space-3);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-snug);transition:border-color var(--duration-fast) var(--ease-standard)}.input::placeholder{color:var(--color-text-subtle)}.input:hover:not(:disabled){border-color:var(--color-accent)}.input:disabled{background:var(--color-surface-sunken);cursor:not-allowed}.input--invalid{border-color:var(--tone-danger-fg)}textarea.input{min-height:calc(var(--tap-target) * 2);resize:vertical}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card--interactive{transition:box-shadow var(--duration-base) var(--ease-standard), transform var(--duration-base) var(--ease-standard)}.card--interactive:hover{box-shadow:var(--shadow-md)}.card__body{padding:var(--space-5)}.card__header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);display:flex}.card__title{font-size:var(--text-lg);font-family:var(--font-display);font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight)}.register-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.register-table th,.register-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border);text-align:left}.register-table thead th{background:var(--color-surface-sunken);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.register-table tbody tr:hover{background:var(--color-surface-sunken)}.align-right{text-align:right!important}.align-center{text-align:center!important}.status-pill{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-semibold);white-space:nowrap;align-items:center;line-height:1.4;display:inline-flex}.status-pill--neutral{background:var(--tone-neutral-bg);color:var(--tone-neutral-fg)}.status-pill--positive{background:var(--tone-positive-bg);color:var(--tone-positive-fg)}.status-pill--warning{background:var(--tone-warning-bg);color:var(--tone-warning-fg)}.status-pill--danger{background:var(--tone-danger-bg);color:var(--tone-danger-fg)}.status-pill--info{background:var(--tone-info-bg);color:var(--tone-info-fg)}.empty-state{border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);padding:var(--space-7) var(--space-5);text-align:center;color:var(--color-text-muted)}.empty-state__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);color:var(--color-text);margin:0}.empty-state__description{margin:var(--space-2) auto 0;max-width:42ch}.empty-state__action{margin-top:var(--space-5)}.logo{font-family:var(--font-display);font-style:italic;font-weight:var(--weight-regular);letter-spacing:var(--tracking-tight);color:var(--color-ink);align-items:baseline;display:inline-flex}.alert{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);display:flex}.alert__icon{flex:none;margin-top:1px}.alert__body{flex:1;min-width:0}.alert__title{font-weight:var(--weight-semibold);margin:0}.alert__msg{margin:var(--space-1) 0 0}.alert__title+.alert__msg{opacity:.9}.alert__action{flex:none}.alert--info{background:var(--tone-info-bg);color:var(--tone-info-fg)}.alert--positive{background:var(--tone-positive-bg);color:var(--tone-positive-fg)}.alert--warning{background:var(--tone-warning-bg);color:var(--tone-warning-fg)}.alert--danger{background:var(--tone-danger-bg);color:var(--tone-danger-fg)}.toast-stack{left:50%;bottom:var(--space-5);gap:var(--space-2);z-index:50;width:max-content;max-width:calc(100vw - var(--space-6));flex-direction:column;display:flex;position:fixed;transform:translate(-50%)}.toast{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-ink);color:var(--color-paper);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--text-sm);display:flex}.toast--positive{background:var(--tone-positive-fg);color:var(--color-surface)}.toast--danger{background:var(--tone-danger-fg);color:var(--color-surface)}.toast__msg{flex:1}.toast__action{color:inherit;font:inherit;font-weight:var(--weight-semibold);text-underline-offset:.15em;cursor:pointer;background:0 0;border:0;flex:none;padding:0;text-decoration:underline}.toast__close{color:inherit;opacity:.7;cursor:pointer;padding:0 var(--space-1);background:0 0;border:0;flex:none;font-size:1.1rem;line-height:1}.toast__close:hover{opacity:1}@media (prefers-reduced-motion:no-preference){.toast{animation:toast-in var(--duration-base) var(--ease-emphasized)}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}
