:root{--text-xs:.75rem;--text-sm:.8125rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.75rem;--text-2xl:2.5rem;--text-3xl:3.5rem;--leading-tight:1.12;--leading-body:1.45;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-pill:999px;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.12s;--dur-med:.24s;--dur-slow:.48s;--safe-top:calc(max(env(safe-area-inset-top,0px), var(--tg-viewport-safe-area-inset-top,0px)) + var(--tg-viewport-content-safe-area-inset-top,0px));--safe-bottom:max(env(safe-area-inset-bottom,0px), var(--tg-viewport-safe-area-inset-bottom,0px));--safe-left:max(env(safe-area-inset-left,0px), var(--tg-viewport-safe-area-inset-left,0px));--safe-right:max(env(safe-area-inset-right,0px), var(--tg-viewport-safe-area-inset-right,0px));--tabbar-height:64px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg,#101010);color:var(--ink,#f5f5f5);font-family:var(--font-body,system-ui, sans-serif);font-size:var(--text-md);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}button{font:inherit;color:inherit}h1,h2,h3,p{margin:0}::view-transition-old(root){animation:door-out var(--dur-med) var(--ease-out) both}::view-transition-new(root){animation:door-in var(--dur-med) var(--ease-out) both}@keyframes door-out{to{opacity:0;transform:scale(.97)}}@keyframes door-in{0%{opacity:0;transform:scale(1.03)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.ui-panel{padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);border:1px solid var(--line);position:relative}.ui-panel--raised{box-shadow:inset 0 1px #ffffff2e,0 10px 24px -12px #0000008c}.ui-panel--inset{background:var(--surface-2);box-shadow:inset 0 2px 10px #0000004d}.ui-panel--flat{background:0 0}.ui-sign{padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);background:var(--accent);color:var(--accent-ink);text-align:center;box-shadow:0 0 0 3px var(--accent), 0 0 0 5px color-mix(in srgb, var(--accent-ink) 55%, transparent), 0 14px 22px -12px #0009;background-image:linear-gradient(160deg,#ffffff59,#0000 40%,#0000001f);position:relative}.ui-sign:before,.ui-sign:after{content:"";background:radial-gradient(circle at 35% 30%,#fff,#9aa3ad 55%,#5b636d);border-radius:50%;width:8px;height:8px;position:absolute;top:10px;box-shadow:0 1px 1px #0006}.ui-sign:before{left:12px}.ui-sign:after{right:12px}.ui-sign__title{font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--leading-tight);letter-spacing:.02em;text-transform:uppercase}.ui-sign__caption{margin-top:var(--space-1);font-size:var(--text-sm);opacity:.85}.ui-button{min-height:44px;padding:0 var(--space-5);border-radius:var(--radius-pill);font-family:var(--font-body);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), filter var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);border:1px solid #0000;font-weight:600}.ui-button:active:not(:disabled){transform:translateY(1px)scale(.98)}.ui-button:disabled{opacity:.4;cursor:default}.ui-button--primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 6px 14px -8px var(--accent)}.ui-button--ghost{border-color:var(--line);color:var(--ink);background:0 0}.ui-button--lever{border-radius:var(--radius-sm);color:#20242a;background:linear-gradient(#f5f7fa 0%,#b9c0c9 48%,#8c949e 52%,#d8dde3 100%);border-color:#6d747d;box-shadow:0 6px #5a6068,0 12px 14px -6px #00000080}.ui-button--lever:active:not(:disabled){transform:translateY(5px);box-shadow:0 1px #5a6068,0 4px 8px -4px #00000080}.ui-segmented{grid-template-columns:repeat(var(--count), 1fr);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-2);padding:3px;display:grid;position:relative}.ui-segmented__thumb{width:calc((100% - 6px) / var(--count));border-radius:var(--radius-pill);background:var(--accent);transform:translateX(calc(var(--index) * 100%));transition:transform var(--dur-med) var(--ease-spring);position:absolute;inset:3px auto 3px 3px}.ui-segmented__option{min-height:36px;color:var(--ink-dim);cursor:pointer;transition:color var(--dur-fast);background:0 0;border:0;font-weight:600;position:relative}.ui-segmented__option[aria-pressed=true]{color:var(--accent-ink)}.ui-stepper{gap:var(--space-2);display:grid}.ui-stepper__head,.ui-stepper__bounds{justify-content:space-between;align-items:baseline;display:flex}.ui-stepper__label{color:var(--ink-dim);font-size:var(--text-sm)}.ui-stepper__value{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:700}.ui-stepper__row{align-items:center;gap:var(--space-3);display:flex}.ui-stepper__gauge{border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--line);flex:1;height:10px;position:relative;overflow:hidden}.ui-stepper__fill{background:var(--accent);border-radius:inherit;transition:width var(--dur-med) var(--ease-out);position:absolute;inset:0 auto 0 0}.ui-stepper__bounds{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-dim)}.ui-ticker{border-block:1px solid var(--line);background:var(--surface);font-family:var(--font-mono);font-size:var(--text-sm);white-space:nowrap;overflow:hidden}.ui-ticker__track{width:max-content;animation:28s linear infinite ticker-scroll;display:flex}.ui-ticker__row{gap:var(--space-5);padding:var(--space-2) var(--space-5) var(--space-2) 0;margin:0;list-style:none;display:flex}.ui-ticker__item{font-weight:700}.ui-ticker__item--up{color:var(--good)}.ui-ticker__item--down{color:var(--bad)}.ui-ticker__item--flat{color:var(--ink-dim)}@keyframes ticker-scroll{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.ui-ticker{white-space:normal}.ui-ticker__track{flex-direction:column;width:auto;animation:none}.ui-ticker__row{flex-wrap:wrap}.ui-ticker__row[aria-hidden=true]{display:none}}.ui-sheet{z-index:30;pointer-events:none;position:fixed;inset:0}.ui-sheet[data-open=true]{pointer-events:auto}.ui-sheet__backdrop{opacity:0;transition:opacity var(--dur-med) var(--ease-out);background:#0000008c;border:0;position:absolute;inset:0}.ui-sheet[data-open=true] .ui-sheet__backdrop{opacity:1}.ui-sheet__body{max-height:82%;padding:var(--space-3) var(--space-5) calc(var(--space-5) + var(--safe-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--surface);color:var(--ink);transition:transform var(--dur-med) var(--ease-out);position:absolute;inset:auto 0 0;overflow:auto;transform:translateY(105%)}.ui-sheet[data-open=true] .ui-sheet__body{transform:none}.ui-sheet__grip{width:40px;height:4px;margin:0 auto var(--space-3);border-radius:var(--radius-pill);background:var(--line)}.ui-sheet__title{margin-bottom:var(--space-3);font-family:var(--font-display);font-size:var(--text-lg)}.ui-toast-host{inset:auto var(--space-4) calc(var(--tabbar-height) + var(--safe-bottom) + var(--space-3)) var(--space-4);z-index:40;pointer-events:none;justify-items:center;display:grid;position:fixed}.ui-toast{padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);background:var(--ink);color:var(--bg);animation:toast-in var(--dur-med) var(--ease-spring) both;font-weight:600;box-shadow:0 10px 24px -8px #00000080}.ui-toast--good{background:var(--good);color:var(--bg)}.ui-toast--bad{background:var(--bad);color:var(--bg)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.96)}}.ui-stat{align-content:start;gap:2px;display:grid}.ui-stat__label{color:var(--ink-dim);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.ui-stat__value{font-family:var(--font-display);font-size:var(--text-2xl);line-height:var(--leading-tight);font-variant-numeric:tabular-nums}.ui-stat__hint{color:var(--ink-dim);font-size:var(--text-sm)}.ui-stat__extra{margin-top:var(--space-2)}.ui-spark{display:block;overflow:visible}.ui-spark__line,.ui-chart__line{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.ui-spark__dot{fill:var(--accent)}.ui-spark--good .ui-spark__line{stroke:var(--good)}.ui-spark--good .ui-spark__dot{fill:var(--good)}.ui-spark--bad .ui-spark__line{stroke:var(--bad)}.ui-spark--bad .ui-spark__dot{fill:var(--bad)}.ui-chart{width:100%;height:auto;display:block}.ui-chart__area{fill:color-mix(in srgb, var(--accent) 16%, transparent)}.ui-chart__base{stroke:var(--line);stroke-width:1px}.ui-chart__dot{fill:var(--surface);stroke:var(--accent);stroke-width:2px}.ui-chart__dot--mark{fill:var(--accent)}.ui-chart__value,.ui-chart__label{font-family:var(--font-mono);font-size:10px}.ui-chart__value{fill:var(--ink);font-weight:700}.ui-chart__label{fill:var(--ink-dim)}.ui-hemicycle{width:100%;height:auto;display:block}.ui-seat{stroke:#0006;stroke-width:.6px}.ui-seat--empty{fill:color-mix(in srgb, var(--ink) 14%, transparent)}.ui-seat--yes{fill:var(--good)}.ui-seat--no{fill:var(--bad)}.ui-seat--mine{stroke:var(--ink);stroke-width:2.2px}.ui-led{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:2px solid color-mix(in srgb, var(--line) 80%, black);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.08em;background:#060606 radial-gradient(circle,#ffffff1a 0 .6px,#0000 1.2px) 0 0/4px 4px;font-weight:700;display:inline-flex}.ui-led__side--yes{color:var(--good);text-shadow:0 0 6px color-mix(in srgb, var(--good) 80%, transparent)}.ui-led__side--no{color:var(--bad);text-shadow:0 0 6px color-mix(in srgb, var(--bad) 80%, transparent)}.ui-led__slash{color:#707070}.ui-document{gap:var(--space-2);padding:var(--space-4) var(--space-4) var(--space-5);background:var(--paper);color:var(--paper-ink);background-image:linear-gradient(#ffffff59,#0000 30%),repeating-linear-gradient(0deg,#00000005 0 1px,#0000 1px 4px);border-radius:3px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff80,0 12px 18px -10px #000000a6}.ui-document--highlighted{outline:3px solid var(--accent);outline-offset:3px}.ui-document__head{align-items:baseline;gap:var(--space-3);border-bottom:1px solid color-mix(in srgb, var(--paper-ink) 35%, transparent);padding-bottom:var(--space-2);display:flex}.ui-document__number{font-family:var(--font-mono);font-weight:700;font-size:var(--text-sm);opacity:.75}.ui-document__title{font-family:var(--font-display);font-size:var(--text-md);line-height:var(--leading-tight)}.ui-document__meta{font-size:var(--text-sm);opacity:.78}.ui-document__body{font-size:var(--text-sm)}.ui-document__stamp{right:var(--space-3);bottom:var(--space-2);position:absolute}.ui-stamp{padding:2px var(--space-2);font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;mix-blend-mode:multiply;opacity:.9;animation:stamp-down var(--dur-med) var(--ease-spring) both;border:2px double;border-radius:4px;font-weight:700;display:inline-block;transform:rotate(-7deg)}.ui-stamp--approve{color:#1f6b34}.ui-stamp--reject{color:#a3261c}.ui-stamp--neutral{color:#3c4a8a}@keyframes stamp-down{0%{opacity:0;transform:rotate(-7deg)scale(1.7)}}.ui-neon{font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--leading-tight);letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--neon) 35%, white);text-shadow:0 0 4px color-mix(in srgb, var(--neon) 90%, white), 0 0 12px var(--neon), 0 0 28px var(--neon), 0 0 52px color-mix(in srgb, var(--neon) 70%, transparent)}.ui-neon--glow{--neon:var(--glow)}.ui-neon--accent{--neon:var(--accent)}.ui-neon--flicker{animation:5.5s linear infinite neon-flicker}@keyframes neon-flicker{0%,18%,22%,62%,64%,to{opacity:1}20%,63%{opacity:.55}}.ui-bingo{gap:var(--space-2);grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.ui-bingo__cell{gap:var(--space-1);min-height:104px;padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-xs);align-content:space-between;line-height:1.25;display:grid;position:relative;overflow:hidden}.ui-bingo__cell--done{border-color:var(--good);background:color-mix(in srgb, var(--good) 14%, var(--surface))}.ui-bingo__cell--line{box-shadow:0 0 0 1px var(--good), 0 0 18px -2px var(--good)}.ui-bingo__label{color:var(--ink)}.ui-bingo__progress{font-family:var(--font-mono);font-size:var(--text-md);font-weight:700}.ui-bingo__cell--done .ui-bingo__progress{color:var(--good)}.ui-bingo__bar{background:linear-gradient(90deg, var(--accent) var(--share), transparent var(--share));height:4px;position:absolute;inset:auto 0 0}.ui-countdown{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700}.ui-countdown--over{color:var(--bad)}.ui-avatar{background:hsl(var(--hue) 55% 34%);color:#fff;font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid;box-shadow:inset 0 0 0 2px #ffffff2e}.ui-avatar--sm{width:28px;height:28px;font-size:var(--text-xs)}.ui-avatar--md{width:40px;height:40px;font-size:var(--text-md)}.ui-avatar--lg{width:64px;height:64px;font-size:var(--text-xl)}.ui-member{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;display:flex}.ui-member--mine{margin-inline:calc(var(--space-2) * -1);padding-inline:var(--space-2);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent) 16%, transparent)}.ui-member__text{flex:1;min-width:0;display:grid}.ui-member__name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.ui-member__subtitle{color:var(--ink-dim);font-size:var(--text-sm)}.ui-member__trailing{font-family:var(--font-mono);flex:none;font-weight:700}.ui-proposal{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);display:grid}.ui-proposal__head{justify-content:space-between;gap:var(--space-3);display:flex}.ui-proposal__title{font-size:var(--text-md);font-weight:600}.ui-proposal__meta{color:var(--ink-dim);font-size:var(--text-sm)}.ui-proposal__tally{gap:2px;height:6px;display:flex}.ui-proposal__yes{background:var(--good);border-radius:3px 0 0 3px}.ui-proposal__no{background:var(--bad);border-radius:0 3px 3px 0}.ui-tabbar{z-index:20;height:calc(var(--tabbar-height) + var(--safe-bottom));padding:0 var(--safe-right) var(--safe-bottom) var(--safe-left);border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4);display:flex;position:fixed;inset:auto 0 0}.ui-tabbar__tab{color:var(--ink-dim);cursor:pointer;transition:color var(--dur-fast);background:0 0;border:0;flex:1;align-content:center;place-items:center;gap:2px;font-size:.6875rem;font-weight:600;display:grid}.ui-tabbar__tab[aria-current=page]{color:var(--accent)}.ui-tabbar__icon{transition:transform var(--dur-med) var(--ease-spring);font-size:1.4rem;line-height:1}.ui-tabbar__tab[aria-current=page] .ui-tabbar__icon{transform:translateY(-2px)scale(1.18)}.ui-notice{justify-items:center;gap:var(--space-4);padding:var(--space-7) var(--space-5);text-align:center;display:grid}.ui-notice__mark{font-size:3rem;animation:2.4s ease-in-out infinite notice-bob}.ui-notice__text{max-width:28ch;color:var(--ink-dim)}@keyframes notice-bob{50%{transform:translateY(-6px)rotate(-4deg)}}.shell{min-height:100%;padding:calc(var(--safe-top) + var(--space-4)) calc(var(--safe-right) + var(--space-4)) calc(var(--tabbar-height) + var(--safe-bottom) + var(--space-5)) calc(var(--safe-left) + var(--space-4));background-color:var(--bg);background-image:var(--texture-image);background-size:var(--texture-size);background-attachment:local}.shell>*{max-width:640px;margin-inline:auto}.ui-profile{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);display:grid}.ui-profile__photo{border-radius:var(--radius-md);object-fit:cover;width:72px;height:72px}.ui-profile__name{font-family:var(--font-display);font-size:var(--text-lg);display:block}.ui-profile__title,.ui-profile__until,.ui-profile__empty,.ui-profile__line{color:var(--ink-dim);font-size:var(--text-sm)}.ui-profile__labels{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.ui-profile__heading{font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;margin:0}.ui-profile__dossier{margin:0;font-style:italic}.ui-profile__perks{gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-profile--dossier{--ink:var(--paper-ink);background:var(--paper);color:var(--paper-ink)}.ui-profile__file{justify-content:space-between;align-items:center;display:flex}.ui-profile__stamp{padding:var(--space-1) var(--space-2);border:2px solid var(--bad);color:var(--bad);font-family:var(--font-display);text-transform:uppercase;transform:rotate(-4deg)}.ui-profile__rows,.ui-profile__attributes{gap:var(--space-1) var(--space-3);grid-template-columns:max-content 1fr;margin:0;display:grid}.ui-profile__rows dt,.ui-profile__attributes dt{font-weight:600}.ui-profile__rows dd,.ui-profile__attributes dd{margin:0}.ui-profile--plaque{border-width:3px;border-color:var(--accent);background:var(--surface-2)}.ui-profile__plate{align-items:center;gap:var(--space-3);display:flex}.ui-profile--ticker{font-family:var(--font-mono)}.ui-profile__quote{align-items:baseline;gap:var(--space-3);display:flex}.ui-profile__symbol{text-transform:uppercase;font-weight:700}.ui-profile__price{font-size:var(--text-lg)}.ui-profile__change{color:var(--bad)}.ui-profile__change--up{color:var(--good)}.ui-profile--fighter{border-color:var(--glow);box-shadow:0 0 12px color-mix(in srgb, var(--glow) 45%, transparent)}.ui-profile__corner{justify-items:center;gap:var(--space-1);text-align:center;display:grid}.ui-parts__bg--tile{fill:var(--surface-2)}.ui-parts__bg--night{fill:var(--bg)}.ui-parts__bg--gold{fill:var(--accent)}.ui-parts__bg--mint{fill:var(--good)}.ui-parts__bg--rose{fill:var(--bad)}.ui-parts__face{fill:var(--paper);stroke:var(--paper-ink);stroke-width:1.5px}.ui-parts__ink{fill:var(--paper-ink)}.ui-parts__line{fill:none;stroke:var(--paper-ink);stroke-width:2px;stroke-linecap:round}.ui-parts__gold{fill:var(--glow)}.ui-parts__accent{fill:var(--accent)}
