.toast-host[data-v-fb90ad87]{bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px));z-index:9999;align-items:center;gap:var(--space-2);pointer-events:none;flex-direction:column;width:max-content;max-width:min(480px,100vw - 2rem);display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast-list[data-v-fb90ad87]{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.toast[data-v-fb90ad87]{align-items:center;gap:var(--space-3);padding:var(--space-3) 14px;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-2);font-size:var(--text-sm);font-weight:var(--fw-medium);pointer-events:auto;width:max-content;max-width:min(480px,100vw - 2rem);display:flex}.toast-icon[data-v-fb90ad87]{color:#fff;width:22px;height:22px;font-family:var(--font-mono);font-weight:var(--fw-bold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8125rem;display:flex}.toast-icon-ok[data-v-fb90ad87]{background:var(--success)}.toast-icon-err[data-v-fb90ad87]{background:var(--error)}.toast-icon-info[data-v-fb90ad87]{background:var(--info)}.toast-msg[data-v-fb90ad87]{color:var(--fg1);flex:1}.toast-close[data-v-fb90ad87]{color:var(--fg3);padding:0 0 0 var(--space-2);cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:1.125rem;line-height:1}.toast-close[data-v-fb90ad87]:hover{color:var(--fg1)}.toast-enter-active[data-v-fb90ad87]{animation:toastIn-fb90ad87 var(--dur-slow) var(--ease-out)}.toast-leave-active[data-v-fb90ad87]{animation:toastOut-fb90ad87 var(--dur-base) var(--ease-standard)}@keyframes toastIn-fb90ad87{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toastOut-fb90ad87{to{opacity:0;transform:translateY(6px)scale(.97)}}@media (prefers-reduced-motion:reduce){.toast-enter-active[data-v-fb90ad87],.toast-leave-active[data-v-fb90ad87]{animation:none}}.avatar[data-v-49319263]{color:#fff;font-family:var(--font-body);font-weight:var(--fw-bold);-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.locale-btn[data-v-a266123a]{border-radius:var(--radius-md);width:40px;height:40px;color:var(--fg2);cursor:pointer;font-family:var(--font-mono);transition:background var(--dur-fast), color var(--dur-fast);background:0 0;border:none;align-items:center;gap:4px;font-size:.6875rem;font-weight:700;display:flex}.locale-btn[data-v-a266123a]:hover{background:var(--surface-2);color:var(--fg1)}.locale-btn[data-v-a266123a]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.locale-label[data-v-a266123a]{letter-spacing:.04em;font-size:.625rem}.sheet-scrim[data-v-f4673605]{background:var(--scrim);z-index:400;animation:scrimIn-f4673605 var(--dur-base) var(--ease-out);align-items:flex-end;display:flex;position:fixed;inset:0}.sheet-box[data-v-f4673605]{background:var(--surface);border-top:1px solid var(--border);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;box-shadow:var(--shadow-3);max-height:85dvh;animation:sheetUp-f4673605 var(--dur-slow) var(--ease-out);padding-bottom:env(safe-area-inset-bottom,0px);flex-direction:column;display:flex;overflow:hidden}.sheet-handle[data-v-f4673605]{border-radius:var(--radius-pill);background:var(--border-strong);width:36px;height:4px;margin:var(--space-3) auto var(--space-1);flex-shrink:0}.sheet-header[data-v-f4673605]{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-3);border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.sheet-title[data-v-f4673605]{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--text-h4);color:var(--fg1)}.sheet-close[data-v-f4673605]{color:var(--fg3);padding:var(--space-1);border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:1.375rem;line-height:1}.sheet-close[data-v-f4673605]:hover{color:var(--fg1);background:var(--surface-2)}.sheet-body[data-v-f4673605]{padding:var(--space-4);flex:1;overflow-y:auto}.sheet-footer[data-v-f4673605]{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);gap:var(--space-3);flex-shrink:0;display:flex}@keyframes scrimIn-f4673605{0%{opacity:0}}@keyframes sheetUp-f4673605{0%{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.sheet-scrim[data-v-f4673605],.sheet-box[data-v-f4673605]{animation:none}}.settings[data-v-374f2025]{padding:0 var(--space-2) var(--space-3);margin-bottom:var(--space-2);border-bottom:1px solid var(--border)}.settings-heading[data-v-374f2025]{font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:.06em;text-transform:uppercase;color:var(--fg3);margin:0 0 var(--space-2);font-weight:700}.setting-row[data-v-374f2025]{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.setting-row+.setting-row[data-v-374f2025]{margin-top:var(--space-2)}.admin-row[data-v-374f2025]{align-items:stretch;gap:var(--space-2);border-top:1px dashed var(--border);padding-top:var(--space-2);flex-direction:column}.sim-flag[data-v-374f2025]{font-style:normal;font-family:var(--font-mono);color:var(--warning-fg,#92400e);font-size:.6875rem}.testtime[data-v-374f2025]{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.testtime-input[data-v-374f2025]{width:auto;min-height:0;padding:5px 8px;font-size:.8125rem}.setting-label[data-v-374f2025]{font-size:var(--text-body);color:var(--fg1)}.seg[data-v-374f2025]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);flex-shrink:0;gap:2px;padding:2px;display:inline-flex}.seg-btn[data-v-374f2025]{border-radius:var(--radius-sm);color:var(--fg2);cursor:pointer;transition:background var(--dur-fast), color var(--dur-fast);background:0 0;border:none;padding:5px 12px;font-size:.8125rem;font-weight:700}.seg-btn.on[data-v-374f2025]{background:var(--surface);color:var(--fg1);box-shadow:var(--shadow-1)}.user-menu[data-v-374f2025]{margin:0;padding:0;list-style:none}.user-menu-item[data-v-374f2025]{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-body);color:var(--fg1);cursor:pointer;text-align:left;background:0 0;border:none;font-family:inherit;display:flex}.user-menu-item[data-v-374f2025]:hover{background:var(--surface-2)}.user-menu-item--danger[data-v-374f2025]{color:var(--color-danger,#e53e3e)}.user-menu-item--danger[data-v-374f2025]:hover{background:color-mix(in srgb, var(--color-danger,#e53e3e) 10%, transparent)}.user-menu-version[data-v-374f2025]{font-size:var(--text-caption);color:var(--fg3)}.hdr[data-v-ae404585]{z-index:30;height:var(--header-h,56px);padding:0 var(--space-4);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:saturate(140%)blur(12px);backdrop-filter:saturate(140%)blur(12px);border-bottom:1px solid var(--border);align-items:center;gap:4px;display:flex;position:sticky;top:0}.brand[data-v-ae404585]{align-items:center;gap:var(--space-2);font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg1);flex-shrink:0;font-size:1.1875rem;font-weight:800;text-decoration:none;display:flex}.brand img[data-v-ae404585]{width:24px;height:24px}.brand.busy[data-v-ae404585],.iconbtn.busy[data-v-ae404585]{animation:1s ease-in-out infinite busy-pulse-ae404585}@keyframes busy-pulse-ae404585{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.brand.busy[data-v-ae404585],.iconbtn.busy[data-v-ae404585]{animation:none}}.hdr-title[data-v-ae404585]{font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:1.0625rem;font-weight:700;overflow:hidden}.hdr-spacer[data-v-ae404585]{flex:1}.iconbtn[data-v-ae404585]{border-radius:var(--radius-md);width:40px;height:40px;color:var(--fg2);cursor:pointer;transition:background var(--dur-fast), color var(--dur-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.iconbtn[data-v-ae404585]:hover{background:var(--surface-2);color:var(--fg1)}.iconbtn[data-v-ae404585]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.dot-badge[data-v-ae404585]{background:var(--error);color:#fff;font-family:var(--font-mono);border-radius:var(--radius-pill);text-align:center;pointer-events:none;min-width:16px;height:16px;padding:0 3px;font-size:.625rem;font-weight:700;line-height:16px;position:absolute;top:6px;right:6px}.offline-badge[data-v-ae404585]{font-family:var(--font-mono);color:var(--warning-fg,#92400e);background:var(--warning-bg,#fef3c7);border-radius:var(--radius-pill);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;padding:2px 8px;font-size:.6875rem;font-weight:600;display:inline-flex}.tabbar[data-v-6edc1e35]{z-index:30;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:saturate(140%)blur(12px);backdrop-filter:saturate(140%)blur(12px);border-top:1px solid var(--border);padding:8px 6px calc(8px + env(safe-area-inset-bottom,0px));display:grid;position:sticky;bottom:0}.tab[data-v-6edc1e35]{color:var(--fg3);font-size:.6875rem;font-weight:600;font-family:var(--font-body);border-radius:var(--radius-md);cursor:pointer;transition:color var(--dur-fast);min-height:var(--tap-min,44px);background:0 0;border:none;flex-direction:column;align-items:center;gap:3px;padding:6px 0;display:flex}.tab[data-v-6edc1e35]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.tab.on[data-v-6edc1e35]{color:var(--primary)}.tab.disabled[data-v-6edc1e35]{opacity:.35;cursor:default;pointer-events:none}.btn[data-v-ef0edc5f]{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-weight:var(--fw-semibold);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-standard), transform var(--dur-fast), box-shadow var(--dur-fast);border:1.5px solid #0000;text-decoration:none;display:inline-flex}.btn[data-v-ef0edc5f]:active:not(:disabled){transform:scale(.97)}.btn[data-v-ef0edc5f]:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-sm[data-v-ef0edc5f]{font-size:var(--text-sm);padding:var(--space-2) var(--space-3);min-height:36px}.btn-md[data-v-ef0edc5f]{padding:var(--space-3) var(--space-5);min-height:var(--tap-min);font-size:.9375rem}.btn-lg[data-v-ef0edc5f]{font-size:var(--text-body-lg);padding:14px var(--space-6);min-height:52px}.btn-block[data-v-ef0edc5f]{width:100%}.btn-primary[data-v-ef0edc5f]{background:var(--primary);color:var(--on-accent);box-shadow:var(--glow-primary)}.btn-primary[data-v-ef0edc5f]:hover:not(:disabled){background:var(--primary-hover)}.btn-primary[data-v-ef0edc5f]:active:not(:disabled){background:var(--primary-press)}.btn-secondary[data-v-ef0edc5f]{background:var(--surface-2);color:var(--fg1);border-color:var(--border-strong)}.btn-secondary[data-v-ef0edc5f]:hover:not(:disabled){background:var(--surface-3)}.btn-outline[data-v-ef0edc5f]{color:var(--primary);border-color:var(--primary);background:0 0}.btn-outline[data-v-ef0edc5f]:hover:not(:disabled){background:var(--primary-soft)}.btn-ghost[data-v-ef0edc5f]{color:var(--fg1);background:0 0;border-color:#0000}.btn-ghost[data-v-ef0edc5f]:hover:not(:disabled){background:var(--surface-2)}.btn-danger[data-v-ef0edc5f]{background:var(--error);color:#fff}.btn-danger[data-v-ef0edc5f]:hover:not(:disabled){background:var(--error-fg)}@media (prefers-reduced-motion:reduce){.btn[data-v-ef0edc5f]{transition:none}.btn[data-v-ef0edc5f]:active:not(:disabled){transform:none}}.ui-textarea[data-v-d612895c]{resize:none;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45;overflow-y:hidden}.anns[data-v-f62f08ae]{border-bottom:1px solid var(--border);margin-bottom:14px;padding-bottom:6px}.anns-head[data-v-f62f08ae]{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg3);margin:0 0 8px;font-size:.6875rem;font-weight:700}.ann[data-v-f62f08ae]{border-radius:var(--radius-md);background:var(--info-soft,var(--surface-2));border:1px solid color-mix(in srgb, var(--info,var(--primary)) 24%, transparent);margin-bottom:8px;padding:12px 14px}.ann.unread[data-v-f62f08ae]{box-shadow:inset 3px 0 0 var(--info,var(--primary))}.ann-title[data-v-f62f08ae]{color:var(--fg1);margin:0 0 4px;font-size:.9375rem;font-weight:700}.ann-body[data-v-f62f08ae]{color:var(--fg1);white-space:pre-wrap;margin:0 0 10px;font-size:.875rem}.ann-actions[data-v-f62f08ae]{flex-wrap:wrap;gap:8px;display:flex}.ann-answered[data-v-f62f08ae]{color:var(--success-fg,var(--fg2));margin:0;font-size:.8125rem;font-weight:600}.ann-exit[data-v-f62f08ae]{color:var(--fg2);font-weight:400}.notif-empty[data-v-f62f08ae]{text-align:center;color:var(--fg3);flex-direction:column;align-items:center;gap:10px;padding:40px 16px;font-size:.875rem;display:flex}.notif-empty-icon[data-v-f62f08ae]{color:var(--fg3)}.notif-list[data-v-f62f08ae]{margin:0;padding:0;list-style:none}.notif-item[data-v-f62f08ae]{border-bottom:1px solid var(--border);align-items:flex-start;gap:10px;padding:12px 4px;display:flex}.notif-item[data-v-f62f08ae]:last-child{border-bottom:none}.notif-dot[data-v-f62f08ae]{background:var(--primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.notif-item:not(.unread) .notif-dot[data-v-f62f08ae]{display:none}.notif-item[data-v-f62f08ae]:not(.unread){padding-left:18px}.notif-body[data-v-f62f08ae]{flex:1}.notif-title[data-v-f62f08ae]{color:var(--fg1);margin:0 0 2px;font-size:.875rem;font-weight:600}.notif-text[data-v-f62f08ae]{color:var(--fg2);margin:0;font-size:.8125rem}.notif-time[data-v-f62f08ae]{font-family:var(--font-mono);color:var(--fg3);flex-shrink:0;padding-top:2px;font-size:.6875rem}.notif-loading[data-v-f62f08ae]{flex-direction:column;gap:10px;padding:8px 0;display:flex}.notif-skeleton[data-v-f62f08ae]{border-radius:var(--radius-sm);background:var(--surface-2);height:54px;animation:1.4s ease-in-out infinite pulse-f62f08ae}@keyframes pulse-f62f08ae{0%,to{opacity:1}50%{opacity:.5}}.msg-scrim[data-v-795898a9]{z-index:9000;background:var(--scrim,#1412268c);padding:max(20px, env(safe-area-inset-top)) 18px max(20px, env(safe-area-inset-bottom));justify-content:center;align-items:center;animation:.2s fadeIn-795898a9;display:flex;position:fixed;inset:0}@keyframes fadeIn-795898a9{0%{opacity:0}}.msg-card[data-v-795898a9]{isolation:isolate;--heat-size:11rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:440px;max-height:86dvh;box-shadow:var(--shadow-3,0 24px 60px #0000004d);text-align:center;animation:msgIn-795898a9 .28s var(--ease-out,cubic-bezier(.16, 1, .3, 1));padding:28px 24px;position:relative;overflow:hidden auto}@keyframes msgIn-795898a9{0%{opacity:0;transform:translateY(12px)scale(.97)}}.msg-card[data-v-795898a9]{--msg-scale:1.18}.msg-card[data-msgsize=normal][data-v-795898a9]{--msg-scale:1}.msg-card[data-msgsize=large][data-v-795898a9]{--msg-scale:1.18}.msg-card[data-msgsize=xlarge][data-v-795898a9]{--msg-scale:1.42}.msg-card .heat-mark[data-v-795898a9]{justify-content:center;align-items:center;display:flex;inset:0}.msg-title[data-v-795898a9]{font-family:var(--font-display);font-weight:800;font-size:calc(1.55rem * var(--msg-scale));letter-spacing:-.02em;color:var(--fg1);margin:4px 0 14px;line-height:1.15}.msg-body[data-v-795898a9],.msg-exit[data-v-795898a9]{font-size:calc(1.0625rem * var(--msg-scale));color:var(--fg1);white-space:pre-wrap;margin:0 0 22px;line-height:1.5}.msg-actions[data-v-795898a9]{flex-direction:column;gap:10px;display:flex}.app-layout{flex-direction:column;width:100%;height:100dvh;display:flex;overflow:hidden}.app-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.scroll{flex:1;padding:16px 16px 96px;overflow-y:auto}.screen-title{font-family:var(--font-display);letter-spacing:-.02em;margin:4px 0 2px;font-size:1.875rem;font-weight:800}.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg3);font-size:.6875rem;font-weight:700}.sub{color:var(--fg2);margin-top:2px;font-size:.875rem}.stack{gap:var(--space-3);flex-direction:column;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.card.pad{padding:var(--space-4)}@font-face{font-family:Bricolage Grotesque;src:url(/assets/BricolageGrotesque-variable-IeJf__1j.ttf)format("truetype-variations");font-weight:200 800;font-stretch:75% 100%;font-display:swap}@font-face{font-family:Hanken Grotesk;src:url(/assets/HankenGrotesk-variable-2z-3qhAN.ttf)format("truetype-variations");font-weight:100 900;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/assets/JetBrainsMono-variable--VKQJH3W.ttf)format("truetype-variations");font-weight:100 800;font-display:swap}:root{--font-display:"Bricolage Grotesque", "Hanken Grotesk", system-ui, sans-serif;--font-body:"Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-display-2xl:3.5rem;--text-display-xl:2.75rem;--text-h1:2.125rem;--text-h2:1.6875rem;--text-h3:1.375rem;--text-h4:1.125rem;--text-body-lg:1.125rem;--text-body:1rem;--text-sm:.875rem;--text-caption:.8125rem;--text-micro:.75rem;--lh-tight:1.08;--lh-snug:1.25;--lh-normal:1.5;--lh-relaxed:1.6;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-display:800;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.04em;--tracking-label:.08em;--space-0:0;--space-1:4px;--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:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-pill:999px;--content-max:1120px;--content-narrow:560px;--header-h:60px;--tap-min:44px;--dur-fast:.12s;--dur-base:.18s;--dur-slow:.26s;--ease-standard:cubic-bezier(.2, .7, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-pop:cubic-bezier(.34, 1.56, .64, 1);--violet-500:#7b5cff;--violet-600:#6a3df0;--violet-700:#5a2edb;--violet-300:#b7a6ff;--sent-neg3:#c81e4a;--sent-neg2:#e14b3c;--sent-neg1:#f0883c;--sent-zero:#8a8da0;--sent-pos1:#4fbe8e;--sent-pos2:#1fa567;--sent-pos3:#0b8a60;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f6fb;--surface:#fff;--surface-2:#f0f0f8;--surface-3:#e8e8f3;--scrim:#14122673;--border:#e4e3ef;--border-strong:#cecde0;--fg1:#181826;--fg2:#54546a;--fg3:#6f6f88;--on-accent:#fff;--primary:var(--violet-600);--primary-hover:var(--violet-700);--primary-press:#4e27c2;--primary-soft:#ece7ff;--primary-soft-fg:#4e27c2;--link:var(--violet-600);--focus-ring:#7b5cff;--success:#1fa567;--success-soft:#e2f6ec;--success-fg:#0b7048;--warning:#e89512;--warning-soft:#fcefd6;--warning-fg:#8a5800;--error:#db2e45;--error-soft:#fce5e8;--error-fg:#a01124;--info:#2e73e8;--info-soft:#e5eefd;--info-fg:#14479e;--sent-neg3-soft:#fbe0e6;--sent-neg3-fg:#9c123a;--sent-neg2-soft:#fce5df;--sent-neg2-fg:#b43217;--sent-neg1-soft:#fdeedc;--sent-neg1-fg:#9c5808;--sent-zero-soft:#ececf1;--sent-zero-fg:#4d4f60;--sent-pos1-soft:#dff4ea;--sent-pos1-fg:#0b7048;--sent-pos2-soft:#dbf2e5;--sent-pos2-fg:#0a7a4d;--sent-pos3-soft:#d5efe4;--sent-pos3-fg:#086b4b;--shadow-1:0 1px 2px #1818260f, 0 1px 1px #1818260a;--shadow-2:0 4px 12px #18182614, 0 2px 4px #1818260d;--shadow-3:0 16px 40px #18182629, 0 4px 12px #18182614;--glow-primary:0 4px 18px #7b5cff52}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0d14;--surface:#16161f;--surface-2:#1e1e2a;--surface-3:#272736;--scrim:#0009;--border:#2a2a38;--border-strong:#3a3a4c;--fg1:#f3f3f8;--fg2:#afafc4;--fg3:#7c7c95;--on-accent:#fff;--primary:var(--violet-500);--primary-hover:#8e72ff;--primary-press:#6a3df0;--primary-soft:#221c40;--primary-soft-fg:#b7a6ff;--link:#a892ff;--focus-ring:#9d86ff;--success:#34c27e;--success-soft:#11291f;--success-fg:#6fe0ab;--warning:#f0a938;--warning-soft:#2e2310;--warning-fg:#f4c57a;--error:#f0566b;--error-soft:#2e1218;--error-fg:#ff9aa8;--info:#5b97f5;--info-soft:#121f33;--info-fg:#9dc0fb;--sent-neg3-soft:#2c1019;--sent-neg3-fg:#ff8fa6;--sent-neg2-soft:#2d140e;--sent-neg2-fg:#ff9c84;--sent-neg1-soft:#2c1d0d;--sent-neg1-fg:#fbb873;--sent-zero-soft:#23232f;--sent-zero-fg:#a6a8bc;--sent-pos1-soft:#0e2a1f;--sent-pos1-fg:#74e0ac;--sent-pos2-soft:#0c2619;--sent-pos2-fg:#5fd79a;--sent-pos3-soft:#0b231a;--sent-pos3-fg:#58d196;--shadow-1:0 1px 2px #00000080;--shadow-2:0 6px 16px #00000080;--shadow-3:0 20px 50px #0009;--glow-primary:0 4px 22px #7b5cff73}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0d14;--surface:#16161f;--surface-2:#1e1e2a;--surface-3:#272736;--scrim:#0009;--border:#2a2a38;--border-strong:#3a3a4c;--fg1:#f3f3f8;--fg2:#afafc4;--fg3:#7c7c95;--on-accent:#fff;--primary:var(--violet-500);--primary-hover:#8e72ff;--primary-press:#6a3df0;--primary-soft:#221c40;--primary-soft-fg:#b7a6ff;--link:#a892ff;--focus-ring:#9d86ff;--success:#34c27e;--success-soft:#11291f;--success-fg:#6fe0ab;--warning:#f0a938;--warning-soft:#2e2310;--warning-fg:#f4c57a;--error:#f0566b;--error-soft:#2e1218;--error-fg:#ff9aa8;--info:#5b97f5;--info-soft:#121f33;--info-fg:#9dc0fb;--sent-neg3-soft:#2c1019;--sent-neg3-fg:#ff8fa6;--sent-neg2-soft:#2d140e;--sent-neg2-fg:#ff9c84;--sent-neg1-soft:#2c1d0d;--sent-neg1-fg:#fbb873;--sent-zero-soft:#23232f;--sent-zero-fg:#a6a8bc;--sent-pos1-soft:#0e2a1f;--sent-pos1-fg:#74e0ac;--sent-pos2-soft:#0c2619;--sent-pos2-fg:#5fd79a;--sent-pos3-soft:#0b231a;--sent-pos3-fg:#58d196;--shadow-1:0 1px 2px #00000080;--shadow-2:0 6px 16px #00000080;--shadow-3:0 20px 50px #0009;--glow-primary:0 4px 22px #7b5cff73}[data-contrast=high]{--fg2:#34344a;--fg3:#4a4a60}@media (prefers-color-scheme:dark){:root:not([data-theme])[data-contrast=high]{--fg2:#cacad9;--fg3:#a2a2ba}}[data-theme=dark][data-contrast=high]{--fg2:#cacad9;--fg3:#a2a2ba}[data-textsize=large]{font-size:115%}:root{--shine:#1416266b;--spark:#121422d1}@media (prefers-color-scheme:dark){:root:not([data-theme]){--shine:#ffffff80;--spark:#fffffff2}}[data-theme=dark]{--shine:#ffffff80;--spark:#fffffff2}:root{--heat-blend:multiply;--heat-opacity:.18}@media (prefers-color-scheme:dark){:root:not([data-theme]){--heat-blend:screen;--heat-opacity:.26}}[data-theme=dark]{--heat-blend:screen;--heat-opacity:.26}.t-display-2xl{font-family:var(--font-display);font-size:var(--text-display-2xl);line-height:var(--lh-tight);font-weight:var(--fw-display);letter-spacing:var(--tracking-tight)}.t-display-xl{font-family:var(--font-display);font-size:var(--text-display-xl);line-height:var(--lh-tight);font-weight:var(--fw-display);letter-spacing:var(--tracking-tight)}.t-h1{font-family:var(--font-display);font-size:var(--text-h1);line-height:var(--lh-snug);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight)}.t-h2{font-family:var(--font-display);font-size:var(--text-h2);line-height:var(--lh-snug);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight)}.t-h3{font-family:var(--font-display);font-size:var(--text-h3);line-height:var(--lh-snug);font-weight:var(--fw-semibold)}.t-h4{font-family:var(--font-body);font-size:var(--text-h4);line-height:var(--lh-snug);font-weight:var(--fw-semibold)}.t-body-lg{font-family:var(--font-body);font-size:var(--text-body-lg);line-height:var(--lh-relaxed);font-weight:var(--fw-regular)}.t-body{font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-normal);font-weight:var(--fw-regular)}.t-sm{font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--lh-normal);font-weight:var(--fw-regular)}.t-caption{font-family:var(--font-body);font-size:var(--text-caption);line-height:var(--lh-normal);font-weight:var(--fw-medium);color:var(--fg2)}.t-label{font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--fw-bold);letter-spacing:var(--tracking-label);text-transform:uppercase}.t-mono{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.ds-base{background:var(--bg);color:var(--fg1);font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}.ds-focusable:focus-visible,:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-xs)}*,:before,:after{box-sizing:border-box}@property --spark-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.heat-mark{z-index:-1;font-size:var(--heat-size,3.2rem);pointer-events:none;-webkit-user-select:none;user-select:none;filter:grayscale();opacity:var(--heat-opacity,.16);mix-blend-mode:var(--heat-blend,soft-light);line-height:1;position:absolute;inset:auto -.06em -.18em auto}@keyframes heat-beat{0%{transform:scale(1)}12%{transform:scale(1.06)}22%{transform:scale(1)}34%{transform:scale(1.11)}50%{transform:scale(1)}to{transform:scale(1)}}.heat-mark.heartbeat{transform-origin:50%;animation:1.2s ease-in-out infinite heat-beat}@media (prefers-reduced-motion:reduce){.heat-mark.heartbeat{animation:none}}html,body{overscroll-behavior-x:none;width:100%;max-width:100%;height:100%;margin:0;padding:0;overflow-x:clip}body{background:var(--bg);color:var(--fg1);font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}#app{width:100%;max-width:100%;min-height:100%}button{cursor:pointer;font-family:inherit}a{color:var(--link)}img,svg{display:block}h1,h2,h3,h4,h5,h6,p{margin:0}ul,ol{margin:0;padding:0;list-style:none}:focus-visible{outline:2px solid var(--focus-ring,var(--primary));outline-offset:2px}:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button,[role=button],[role=radio],[role=tab]{min-height:var(--tap-min,44px)}.iconbtn{min-height:unset}.vote-btn{min-height:var(--tap-min,44px)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-weight:var(--fw-semibold);border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);min-height:var(--tap-min);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-standard), transform var(--dur-fast), box-shadow var(--dur-fast);border:1.5px solid #0000;font-size:.9375rem;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-sm{font-size:var(--text-sm);padding:var(--space-2) var(--space-3);min-height:36px}.btn-primary{background:var(--primary);color:var(--on-accent);box-shadow:var(--glow-primary)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-primary:active:not(:disabled){background:var(--primary-press)}.btn-secondary{background:var(--surface-2);color:var(--fg1);border-color:var(--border-strong)}.btn-secondary:hover:not(:disabled){background:var(--surface-3)}.btn-outline{color:var(--primary);border-color:var(--primary);background:0 0}.btn-outline:hover:not(:disabled){background:var(--primary-soft)}.btn-ghost{color:var(--fg1);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}.btn-danger{background:var(--error);color:#fff}.btn-danger:hover:not(:disabled){background:var(--error-fg)}.input{width:100%;font-family:var(--font-body);color:var(--fg1);background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--radius-md);padding:var(--space-3) 14px;min-height:var(--tap-min);transition:border-color var(--dur-fast), box-shadow var(--dur-fast);font-size:.9375rem}.input::placeholder{color:var(--fg3)}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.input:disabled{opacity:.5;cursor:not-allowed}.input-sm{font-size:var(--text-sm);min-height:36px;padding:6px 10px}.error-msg{font-size:var(--text-caption);color:var(--error-fg);margin-top:var(--space-1)}@media (prefers-reduced-motion:reduce){.btn{transition:none}.btn:active:not(:disabled){transform:none}.input{transition:none}}
