@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.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}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--radius:.375rem;--radius-lg:.75rem;--shadow-sm:0 1px 2px #0000000d;--touch-target:2.75rem;--content-max:72rem;--font-body:"DM Sans Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, monospace;--text-sm:.875rem;--text-base:1rem;--text-lg:1.25rem;--text-xl:1.75rem;--line-body:1.5;--border-width:1px;--focus-width:2px;--focus-offset:2px;--motion-fast:.12s;--motion-easing:ease-out}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;color:var(--color-text);-webkit-text-fill-color:currentColor}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text);background:var(--color-bg);overflow-wrap:anywhere;letter-spacing:0;margin:0}#app{max-width:var(--content-max);padding:max(var(--space-4), env(safe-area-inset-top)) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-6), env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));margin:0 auto}@media (width>=48rem){#app{padding-left:max(var(--space-8), env(safe-area-inset-left));padding-right:max(var(--space-8), env(safe-area-inset-right))}}h1{font-size:var(--text-xl);letter-spacing:-.03em;margin:0;font-weight:600}h2{font-size:var(--text-lg);letter-spacing:-.02em;margin:var(--space-6) 0 var(--space-3);font-weight:650}h3{font-size:var(--text-base);margin:var(--space-4) 0 var(--space-2)}p{margin:var(--space-2) 0}code{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:.9em}img,svg,video{max-width:100%;height:auto}.native-control{font:inherit;min-height:var(--touch-target);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:inherit;width:100%}input[type=checkbox],input[type=radio]{width:auto;min-height:0}button.native-control{cursor:pointer;background:var(--color-primary);width:auto;color:var(--color-on-primary);border-color:#0000;font-weight:550}button.native-control:disabled{opacity:.6;cursor:not-allowed}button.native-control.secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}button.native-control.danger{background:var(--color-danger)}:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.touch-control{min-height:44px}select.native-control{height:var(--touch-target)}label{gap:var(--space-1);font-size:var(--text-sm);font-weight:600;display:grid}.stack,.inline{gap:var(--space-3);display:grid}@media (width>=36rem){.inline{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));align-items:end}}.table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--table-border);border-radius:var(--radius-lg);width:100%;overflow-x:auto}.table-wrap table{color:var(--table-fg);background:var(--table-bg);border-collapse:collapse;width:100%;min-width:max-content}.table-wrap th,.table-wrap td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid color-mix(in srgb, var(--table-border) 45%, transparent);white-space:nowrap}.table-wrap thead th{letter-spacing:.04em;text-transform:uppercase;color:var(--table-header-fg);background:var(--table-header-bg);font-size:.75rem;font-weight:600;position:sticky;top:0}.table-wrap tbody tr:hover{background:var(--table-row-hover)}.table-wrap tbody tr[aria-selected=true]{background:var(--table-row-selected)}.table-wrap tbody tr:last-child td{border-bottom:0}@media (width>=64rem){.table-wrap table{min-width:100%}.table-wrap th,.table-wrap td{white-space:normal}}.card-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}@media (width>=36rem){.card-list{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr))}}.card{color:var(--card-fg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-4);background:var(--card-bg)}.muted{color:var(--color-text-muted);font-size:var(--text-sm)}.eyebrow{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:600}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.ui-button[data-variant]{--button-bg:var(--button-primary-bg);--button-fg:var(--button-primary-fg);--button-hover:var(--button-primary-hover);--button-active:var(--button-primary-active);min-height:var(--touch-target);min-width:var(--touch-target);padding:var(--space-2) var(--space-4);border:var(--border-width) solid transparent;border-radius:var(--radius);background:var(--button-bg);color:var(--button-fg);font:inherit;letter-spacing:0;text-transform:none;cursor:pointer;transition:background-color var(--motion-fast) var(--motion-easing), border-color var(--motion-fast) var(--motion-easing);font-weight:550}.ui-button[data-variant=secondary]{--button-bg:var(--button-secondary-bg);--button-fg:var(--button-secondary-fg);--button-hover:var(--button-secondary-hover);--button-active:var(--button-secondary-active);border-color:var(--button-secondary-border)}.ui-button[data-variant=danger]{--button-bg:var(--button-danger-bg);--button-fg:var(--button-danger-fg);--button-hover:var(--button-danger-hover);--button-active:var(--button-danger-active)}.ui-button[data-variant]:hover:not(:disabled),.ui-button[data-variant][data-state=hover]{background:var(--button-hover)}.ui-button[data-variant]:active:not(:disabled),.ui-button[data-variant][data-state=active]{background:var(--button-active)}.ui-button[data-variant]:disabled{background:var(--button-disabled-bg);color:var(--button-disabled-fg);border-color:var(--button-disabled-border);opacity:1;cursor:not-allowed}.ui-button[data-variant][aria-busy=true]{cursor:progress}.ui-button[data-variant]:focus-visible,.ui-button[data-variant][data-state=focus],.ui-input:focus-visible,.ui-input[data-state=focus]{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}input.ui-input{min-height:var(--touch-target);width:100%;padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--input-border);border-radius:var(--radius);background:var(--input-bg);color:var(--input-fg);font:inherit;transition:border-color var(--motion-fast) var(--motion-easing)}input.ui-input:hover:not(:disabled):not([aria-invalid=true]){border-color:var(--color-text-muted)}input.ui-input:focus-visible{border-color:var(--color-focus)}input.ui-input[aria-invalid=true]{border-color:var(--input-invalid-border)}input.ui-input::placeholder{color:var(--input-placeholder)}input.ui-input:disabled{background:var(--input-disabled-bg);color:var(--input-disabled-fg);opacity:1}@media (prefers-reduced-motion:reduce){.ui-button[data-variant],input.ui-input{transition:none}}.session-status__links{gap:var(--space-3);flex-wrap:wrap;display:flex}.session-status__link{min-height:var(--touch-target);align-items:center;display:inline-flex}.session-status{align-items:center;gap:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.session-status__text{overflow-wrap:anywhere;flex:12rem;min-width:0;margin:0}.admin-nav{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.admin-nav__link{min-height:var(--touch-target);align-items:center;display:inline-flex}.admin-nav__link[aria-current=page]{font-weight:650;text-decoration:underline}.admin-section{gap:var(--space-4);min-width:0;display:grid}.admin-panel{gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--card-border);border-radius:var(--radius-lg);background:var(--card-bg);color:var(--card-fg);display:grid}.admin-message{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);margin:0}.admin-message[data-tone=warning]{border-color:var(--color-warning)}.admin-message[data-tone=danger]{border-color:var(--color-danger);color:var(--color-danger)}.admin-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-choices{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);margin:0;display:grid}.admin-choice{align-items:center;gap:var(--space-2);min-height:var(--touch-target);font-weight:500;display:flex}.admin-field-error{color:var(--color-danger);font-size:var(--text-sm);margin:0}.admin-filters{gap:var(--space-3);min-width:0;display:grid}@media (width>=48rem){.admin-filters{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));align-items:end}}.admin-table-scroll:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.account-notice{gap:var(--space-3);max-width:28rem;margin:var(--space-8) auto 0;padding:var(--space-6);border:1px solid var(--card-border);border-radius:var(--radius-lg);background:var(--card-bg);color:var(--card-fg);display:grid}.home{gap:var(--space-4);min-width:0;display:grid}.home h1,.home h2,.home p{overflow-wrap:anywhere;margin:0}.home__lines{gap:var(--space-3);min-width:0;display:grid}.home__list{gap:var(--space-3);grid-template-columns:1fr;margin:0;padding:0;list-style:none;display:grid}.home__item{min-width:0;padding:var(--space-4);border:1px solid var(--card-border);border-radius:var(--radius-lg);background:var(--card-bg);color:var(--card-fg)}@media (width>=48rem){.home__list{grid-template-columns:repeat(2,1fr)}}
