@layer tokens{:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink-0:#0a0911;--ink-1:#141321;--ink-2:#1e1d2f;--ink-3:#2a2940;--ink-4:#3b3a55;--paper:#f5f1e8;--paper-ink:#1a1625;--paper-ink-muted:#5b5668;--text:#f5f1e8;--text-muted:#9b96ad;--text-subtle:#6a6580;--accent:#e85d75;--accent-hover:#f47a8e;--accent-weak:#e85d751f;--accent-ring:#e85d7552;--success:#5ee3b0;--success-weak:#5ee3b024;--danger:#ff6b8a;--danger-weak:#ff6b8a1f;--font-display:"Fraunces", "New York", "Times New Roman", ui-serif, Georgia, serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--fs-xs:12px;--fs-sm:13px;--fs-md:15px;--fs-lg:17px;--fs-xl:clamp(20px, 2.5vw, 22px);--fs-2xl:clamp(24px, 4vw, 30px);--fs-3xl:clamp(30px, 5vw, 42px);--fs-display:clamp(36px, 7vw, 56px);--lh-tight:1.1;--lh-snug:1.25;--lh-normal:1.5;--lh-relaxed:1.6;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.08em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:56px;--space-10:72px;--space-11:96px;--radius-xs:6px;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--radius-pill:999px;--shadow-1:0 1px 2px #0000004d, 0 2px 4px #0003;--shadow-2:0 4px 8px #00000059, 0 8px 16px #00000040;--shadow-3:0 12px 24px #00000073, 0 24px 48px #0000004d;--shadow-focus:0 0 0 3px var(--accent-ring);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.15s;--dur-med:.26s;--dur-slow:.42s;--shell-max:1040px;--shell-pad:clamp(16px, 4vw, 40px)}}@layer reset{*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--ink-3);border-radius:var(--radius-pill)}::-webkit-scrollbar-track{background:0 0}}@layer base{body{font-family:var(--font-body);font-size:var(--fs-md);line-height:var(--lh-normal);color:var(--text);background:radial-gradient(ellipse 120% 80% at 20% -10%, #e85d7514 0%, transparent 55%), radial-gradient(ellipse 100% 60% at 85% 15%, #7a5cff0f 0%, transparent 60%), var(--ink-0);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"kern", "liga", "calt";background-attachment:fixed;min-height:100vh}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}}@layer layout{.app-shell{max-width:var(--shell-max);padding:var(--shell-pad);gap:var(--space-6);flex-direction:column;margin:0 auto;display:flex}}@layer components{.app-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-5);border-bottom:1px solid var(--ink-3);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.app-header h1{font-family:var(--font-display);font-weight:600;font-size:var(--fs-2xl);letter-spacing:var(--tracking-tight);line-height:var(--lh-tight);margin:0}.app-header p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--fs-sm)}.app-header__meta{align-items:center;gap:var(--space-3);color:var(--text-muted);font-size:var(--fs-sm);display:flex}.app-header__meta button{color:var(--text);border:1px solid var(--ink-3);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--fs-sm);transition:border-color var(--dur-fast) var(--ease-out-expo), color var(--dur-fast) var(--ease-out-expo);background:0 0}.app-header__nav-toggle{color:var(--text-subtle);font-size:var(--fs-xs);border-color:#0000}.app-header__nav-toggle:hover:not(:disabled){color:var(--text-muted);border-color:var(--ink-3)}.app-header__meta button:hover:not(:disabled){border-color:var(--ink-4)}.app-error{color:var(--danger);background:var(--danger-weak);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--fs-sm);border:1px solid #ff6b8a4d;margin:0}.auth-panel{background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--radius-lg);max-width:440px;box-shadow:var(--shadow-3);padding:clamp(var(--space-6), 5vw, var(--space-8));gap:var(--space-5);flex-direction:column;margin:8vh auto 0;display:flex}.auth-panel__header h1{margin:0 0 var(--space-2);font-family:var(--font-display);font-weight:600;font-size:var(--fs-3xl);letter-spacing:var(--tracking-tight);line-height:var(--lh-tight)}.auth-panel__header p{color:var(--text-muted);font-size:var(--fs-md);margin:0}.auth-panel__tabs{gap:var(--space-1);padding:var(--space-1);background:var(--ink-2);border-radius:var(--radius-sm);display:flex}.auth-panel__tabs button{color:var(--text-muted);padding:var(--space-3);border-radius:calc(var(--radius-sm) - 2px);font-size:var(--fs-sm);transition:background var(--dur-fast) var(--ease-out-expo), color var(--dur-fast) var(--ease-out-expo);background:0 0;border:none;flex:1;font-weight:500}.auth-panel__tabs button.active{background:var(--ink-1);color:var(--text);box-shadow:var(--shadow-1)}.auth-panel__form{gap:var(--space-3);flex-direction:column;display:flex}.auth-panel__form label{gap:var(--space-1);font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);flex-direction:column;font-weight:600;display:flex}.auth-panel__form input[type=email],.auth-panel__form input[type=password],.auth-panel__form input[type=text]{background:var(--ink-2);border:1px solid var(--ink-3);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);color:var(--text);font-size:var(--fs-md);text-transform:none;letter-spacing:0;transition:border-color var(--dur-fast) var(--ease-out-expo);font-weight:400}.auth-panel__form input[type=email]:hover,.auth-panel__form input[type=password]:hover,.auth-panel__form input[type=text]:hover{border-color:var(--ink-4)}.auth-panel__form input[type=email]:focus-visible,.auth-panel__form input[type=password]:focus-visible,.auth-panel__form input[type=text]:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.auth-panel__error{color:var(--danger);font-size:var(--fs-sm);margin:0}.auth-panel__mode{gap:var(--space-2);border:none;flex-direction:column;margin:0;padding:0;display:flex}.auth-panel__mode legend{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);padding:0;font-weight:600}.auth-panel__mode-grid{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.auth-panel__mode-grid button{text-align:left;background:var(--ink-2);border:1px solid var(--ink-3);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);gap:var(--space-1);color:var(--text-muted);transition:border-color var(--dur-fast) var(--ease-out-expo), background var(--dur-fast) var(--ease-out-expo);flex-direction:column;display:flex}.auth-panel__mode-grid button:hover{border-color:var(--ink-4)}.auth-panel__mode-grid button strong{color:var(--text);font-size:var(--fs-md);font-weight:600}.auth-panel__mode-grid button span{font-size:var(--fs-xs)}.auth-panel__mode-grid button.active{border-color:var(--accent);background:var(--accent-weak)}.auth-panel__mode-grid button.active strong{color:var(--accent-hover)}.auth-panel__checks{gap:var(--space-3);flex-direction:column;display:flex}.auth-panel__form label.auth-panel__check{gap:var(--space-3);font-size:var(--fs-sm);color:var(--text-muted);line-height:var(--lh-normal);text-transform:none;letter-spacing:0;flex-direction:row;align-items:flex-start;font-weight:400;display:flex}.auth-panel__check input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);margin-top:2px}button.primary{background:var(--accent);color:#fff;border-radius:var(--radius-sm);padding:var(--space-3) var(--space-5);font-size:var(--fs-md);transition:background var(--dur-fast) var(--ease-out-expo), transform var(--dur-fast) var(--ease-out-expo), box-shadow var(--dur-fast) var(--ease-out-expo);border:none;font-weight:600}button.primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-2)}button.primary:active:not(:disabled){transform:scale(.98)}button.primary:disabled{opacity:.55;cursor:not-allowed}.app-idle{text-align:center;padding:var(--space-9) var(--space-6);background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--radius-lg);box-shadow:var(--shadow-2)}.app-idle h2{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--fs-2xl);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--lh-tight)}.app-idle p{color:var(--text-muted);margin:0 0 var(--space-5);font-size:var(--fs-md)}.round-board{gap:var(--space-5);flex-direction:column;display:flex}.round-board__header h2{margin:0 0 var(--space-1);font-family:var(--font-display);font-size:var(--fs-2xl);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--lh-tight)}.round-board__header p{color:var(--text-muted);font-size:var(--fs-sm);margin:0}.round-board__grid{gap:var(--space-4);grid-template-columns:1fr;align-items:start;display:grid}@media (width>=720px){.round-board__grid{grid-template-columns:1fr 1fr}}.monogram{color:var(--paper);font-family:var(--font-display);-webkit-user-select:none;user-select:none;text-shadow:0 1px 2px #00000059;box-shadow:inset 0 -6px 14px #00000040, inset 0 1px 0 #ffffff26, var(--shadow-1);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;line-height:1;display:flex}.monogram--sm{width:36px;height:36px;font-size:14px}.monogram--md{width:56px;height:56px;font-size:22px}.monogram--lg{width:72px;height:72px;font-size:28px}.profile-card{background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--radius-lg);padding:var(--space-5);color:var(--text);gap:var(--space-4);box-shadow:var(--shadow-1);animation:cardEnter var(--dur-slow) var(--ease-out-expo) both;transition:transform var(--dur-med) var(--ease-out-expo), border-color var(--dur-med) var(--ease-out-expo), box-shadow var(--dur-med) var(--ease-out-expo);flex-direction:column;display:flex;position:relative}.round-board__grid .profile-card:first-child{animation-delay:0s}.round-board__grid .profile-card:nth-child(2){animation-delay:70ms}.round-board__grid .profile-card:nth-child(3){animation-delay:.14s}.round-board__grid .profile-card:nth-child(4){animation-delay:.21s}@keyframes cardEnter{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0}}.profile-card:not(.profile-card--disabled):hover{border-color:var(--ink-4);box-shadow:var(--shadow-2);transform:translateY(-2px)}.profile-card--picked{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-ring), var(--shadow-2)}.profile-card__header{align-items:center;gap:var(--space-4);display:flex}.profile-card__identity{flex-direction:column;gap:2px;min-width:0;display:flex}.profile-card__identity h3{font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--lh-tight);color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.profile-card__age{color:var(--text-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;font-weight:400}.profile-card__bio{color:var(--text);font-size:var(--fs-sm);line-height:var(--lh-relaxed);overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.profile-card__interests{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.profile-card__interests li{font-size:var(--fs-xs);padding:var(--space-1) var(--space-3);background:var(--ink-2);border:1px solid var(--ink-3);color:var(--text-muted);border-radius:var(--radius-pill);letter-spacing:.01em;font-weight:500}.profile-card__interests li.profile-card__interests-more{color:var(--text-subtle);font-weight:600}.profile-card__desires{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.profile-card__desires li{font-size:var(--fs-xs);padding:var(--space-1) var(--space-3);background:var(--accent-weak);border:1px solid var(--accent-ring);color:var(--accent-hover);border-radius:var(--radius-pill);font-style:italic;font-weight:500}.prompt-card{background:var(--paper);color:var(--paper-ink);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);gap:var(--space-1);box-shadow:var(--shadow-1);flex-direction:column;display:flex}.prompt-card__question{font-family:var(--font-body);font-size:var(--fs-xs);color:var(--paper-ink-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:600}.prompt-card__answer{font-family:var(--font-display);font-size:var(--fs-lg);line-height:var(--lh-snug);color:var(--paper-ink);overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;font-variation-settings:"opsz" 64;font-weight:500}.profile-card__more{margin:0}.profile-card__more summary{justify-content:space-between;align-items:center;gap:var(--space-2);cursor:pointer;color:var(--text-muted);font-size:var(--fs-sm);padding:var(--space-2) 0;border-top:1px dashed var(--ink-3);transition:color var(--dur-fast) var(--ease-out-expo);font-weight:500;list-style:none;display:flex}.profile-card__more summary::-webkit-details-marker{display:none}.profile-card__more summary::marker{content:"";display:none}.profile-card__more summary:hover{color:var(--text)}:where(.profile-card__more summary) svg{width:16px;height:16px;transition:transform var(--dur-med) var(--ease-out-expo)}:where(.profile-card__more[open] summary) svg{transform:rotate(180deg)}.profile-card__more-content{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.profile-card__footer{gap:var(--space-3);padding-top:var(--space-2);flex-direction:column;margin-top:auto;display:flex}.profile-card__reactions{gap:var(--space-2);border:none;min-inline-size:auto;margin:0;padding:0;display:flex}.profile-card__reactions button{background:color-mix(in srgb, var(--ink-2) 80%, transparent);border:1px solid var(--ink-3);border-radius:var(--radius-sm);color:var(--text-muted);padding:var(--space-3) var(--space-4);transition:border-color var(--dur-fast) var(--ease-out-expo), color var(--dur-fast) var(--ease-out-expo), background var(--dur-fast) var(--ease-out-expo), transform var(--dur-fast) var(--ease-out-expo);flex:1;justify-content:center;align-items:center;display:inline-flex}:where(.profile-card__reactions button) svg{width:18px;height:18px}.profile-card__reactions button:hover:not(:disabled){border-color:var(--ink-4);color:var(--text)}.profile-card__reactions button:active:not(:disabled){transform:scale(.94)}.profile-card__reactions button.active{background:var(--accent);border-color:var(--accent);color:#fff}.profile-card__reactions button:disabled{opacity:.4;cursor:not-allowed}.profile-card__interrogate{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--ink-3);border-radius:var(--radius-sm);color:var(--text);padding:var(--space-3) var(--space-4);font-size:var(--fs-sm);transition:border-color var(--dur-fast) var(--ease-out-expo), color var(--dur-fast) var(--ease-out-expo);background:0 0;font-weight:500;display:inline-flex}:where(.profile-card__interrogate) svg{width:16px;height:16px}.profile-card__interrogate:hover:not(:disabled){border-color:var(--accent);color:var(--accent-hover)}.profile-card__interrogate:disabled{opacity:.45;cursor:not-allowed}.profile-card__pick{border:1px solid var(--accent);border-radius:var(--radius-sm);width:100%;color:var(--accent-hover);padding:var(--space-3) var(--space-5);font-size:var(--fs-md);transition:background var(--dur-fast) var(--ease-out-expo), color var(--dur-fast) var(--ease-out-expo), box-shadow var(--dur-fast) var(--ease-out-expo), transform var(--dur-fast) var(--ease-out-expo);background:0 0;font-weight:600}.profile-card__pick:hover:not(:disabled){background:var(--accent);color:#fff;box-shadow:var(--shadow-2)}.profile-card__pick:active:not(:disabled){transform:scale(.98)}.profile-card__pick:disabled{opacity:.55;cursor:not-allowed}.result-panel{background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--radius-lg);padding:var(--space-7);gap:var(--space-5);box-shadow:var(--shadow-2);flex-direction:column;display:flex}.result-panel__verdict{justify-content:space-between;align-items:baseline;gap:var(--space-4);flex-wrap:wrap;display:flex}.result-panel h2{font-family:var(--font-display);font-size:var(--fs-3xl);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--lh-tight);margin:0}.result-panel__xp{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:var(--accent-weak);border:1px solid var(--accent-ring);border-radius:var(--radius-pill);color:var(--accent-hover);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;animation:xpPop var(--dur-slow) var(--ease-out-expo) both;font-weight:600;display:inline-flex}@keyframes xpPop{0%{opacity:0;scale:.85}to{opacity:1;scale:1}}.result-panel__stats{gap:var(--space-7);margin:0;display:flex}.result-panel__stats div{flex-direction:column;display:flex}.result-panel__stats dt{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:600}.result-panel__stats dd{margin:var(--space-1) 0 0;font-family:var(--font-display);font-size:var(--fs-2xl);font-variant-numeric:tabular-nums;font-weight:600}.result-panel__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.result-panel__actions button:not(.primary){border:1px solid var(--ink-3);color:var(--text);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-5);font-size:var(--fs-md);transition:border-color var(--dur-fast) var(--ease-out-expo);background:0 0;font-weight:500}.result-panel__actions button:not(.primary):hover:not(:disabled){border-color:var(--ink-4)}.result-panel__actions button:not(.primary):disabled{opacity:.55;cursor:not-allowed}.progression{gap:var(--space-1);flex-direction:column;min-width:180px;display:flex}.progression__meta{align-items:baseline;gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-muted);display:flex}.progression__level{color:var(--accent);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:700}.progression__title{color:var(--text);flex:1}.progression__xp{font-variant-numeric:tabular-nums;font-weight:500}.progression__bar{background:var(--ink-2);border-radius:var(--radius-pill);height:6px;position:relative;overflow:hidden}.progression__fill{background:linear-gradient(90deg, var(--accent), var(--accent-hover));transform-origin:0;width:100%;transition:transform var(--dur-slow) var(--ease-out-expo);position:absolute;top:0;bottom:0;left:0}.chat-dialog{width:min(540px, calc(100% - 2 * var(--space-4)));background:var(--ink-1);max-height:min(80vh,640px);color:var(--text);border:1px solid var(--ink-3);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);animation:dialogEnter var(--dur-med) var(--ease-out-expo);flex-direction:column;margin:auto;padding:0;display:flex;overflow:hidden}.chat-dialog::backdrop{-webkit-backdrop-filter:blur(8px);animation:backdropEnter var(--dur-med) var(--ease-out-expo);background:#08080eb8}@keyframes dialogEnter{0%{opacity:0;translate:0 16px}to{opacity:1;translate:0}}@keyframes backdropEnter{0%{opacity:0}to{opacity:1}}@media (width<=639px){.chat-dialog{border-bottom-right-radius:0;border-bottom-left-radius:0;margin:auto auto 0}}.chat-dialog__header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--ink-3);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.chat-dialog__header-identity{align-items:center;gap:var(--space-3);min-width:0;display:flex}.chat-dialog__header h2{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:600;line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.chat-dialog__header p{color:var(--text-muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-variant-numeric:tabular-nums;margin:2px 0 0}.chat-dialog__header button{color:var(--text-muted);padding:var(--space-2);border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-out-expo), background var(--dur-fast) var(--ease-out-expo), border-color var(--dur-fast) var(--ease-out-expo);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}:where(.chat-dialog__header) button svg{width:18px;height:18px}.chat-dialog__header button:hover{color:var(--text);background:var(--ink-2);border-color:var(--ink-3)}.chat-dialog__messages{padding:var(--space-5);gap:var(--space-3);scroll-behavior:smooth;flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-dialog__empty{color:var(--text-muted);font-size:var(--fs-sm);text-align:center;max-width:32ch;line-height:var(--lh-relaxed);align-self:center;margin:auto 0}.chat-bubble{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);max-width:80%;font-size:var(--fs-sm);line-height:var(--lh-normal);animation:bubbleEnter var(--dur-med) var(--ease-out-expo) both}@keyframes bubbleEnter{0%{opacity:0;translate:0 6px}to{opacity:1;translate:0}}.chat-bubble--player{background:var(--accent);color:#fff;border-bottom-right-radius:var(--radius-xs);align-self:flex-end}.chat-bubble--profile{background:var(--ink-2);color:var(--text);border-bottom-left-radius:var(--radius-xs);align-self:flex-start}.chat-bubble--typing{padding:var(--space-3) var(--space-4);align-items:center;gap:4px;display:inline-flex}.chat-bubble__dot{background:var(--text-muted);opacity:.4;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite typingBounce}:where(.chat-bubble--typing) .chat-bubble__dot:nth-child(2){animation-delay:.15s}:where(.chat-bubble--typing) .chat-bubble__dot:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{opacity:.35;translate:0}30%{opacity:1;translate:0 -4px}}.chat-dialog__system{padding:var(--space-3) var(--space-5);background:var(--ink-2);border:1px dashed var(--ink-4);border-radius:var(--radius-pill);text-align:center;align-self:center;max-width:80%}.chat-dialog__system p{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);margin:0;font-weight:600}.chat-dialog__error{padding:var(--space-3) var(--space-5);font-size:var(--fs-sm);color:var(--danger);background:var(--danger-weak);border-top:1px solid #ff6b8a4d;margin:0}.chat-dialog__composer{gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--ink-3);background:var(--ink-1);display:flex}.chat-dialog__composer input{background:var(--ink-2);border:1px solid var(--ink-3);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);color:var(--text);transition:border-color var(--dur-fast) var(--ease-out-expo);flex:1}.chat-dialog__composer input:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.chat-dialog__composer input:disabled{opacity:.55}.postmortem{background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--radius-lg);padding:var(--space-7);gap:var(--space-5);box-shadow:var(--shadow-2);flex-direction:column;display:flex}.postmortem__header h2{margin:0 0 var(--space-1);font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:var(--tracking-tight);font-weight:600}.postmortem__header p{color:var(--text-muted);font-size:var(--fs-sm);margin:0}.postmortem__options{gap:var(--space-2);flex-wrap:wrap;display:flex}.postmortem__options button{background:var(--ink-2);border:1px solid var(--ink-3);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);color:var(--text-muted);font-size:var(--fs-sm);transition:border-color var(--dur-fast) var(--ease-out-expo), color var(--dur-fast) var(--ease-out-expo), background var(--dur-fast) var(--ease-out-expo)}.postmortem__options button:hover{border-color:var(--ink-4);color:var(--text)}.postmortem__options button.active{background:var(--accent-weak);border-color:var(--accent);color:var(--accent-hover)}.postmortem__note{gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);flex-direction:column;font-weight:600;display:flex}.postmortem__note textarea{background:var(--ink-2);border:1px solid var(--ink-3);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);color:var(--text);font-family:var(--font-body);font-size:var(--fs-md);line-height:var(--lh-normal);text-transform:none;letter-spacing:0;resize:vertical;transition:border-color var(--dur-fast) var(--ease-out-expo);font-weight:400}.postmortem__note textarea:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.postmortem__actions{gap:var(--space-3);justify-content:flex-end;display:flex}.postmortem__actions button:not(.primary){border:1px solid var(--ink-3);border-radius:var(--radius-sm);color:var(--text);padding:var(--space-3) var(--space-5);transition:border-color var(--dur-fast) var(--ease-out-expo);background:0 0}.postmortem__actions button:not(.primary):hover{border-color:var(--ink-4)}.admin-dashboard{max-width:var(--shell-max);gap:var(--space-6);flex-direction:column;margin:0 auto;display:flex}.admin-dashboard__toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.admin-dashboard__toolbar h1{font-family:var(--font-display);font-weight:600;font-size:var(--fs-2xl);letter-spacing:var(--tracking-tight);line-height:var(--lh-tight);margin:0}.admin-dashboard__toolbar-actions{gap:var(--space-3);display:flex}.admin-dashboard__toolbar button{color:var(--text);border:1px solid var(--ink-3);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--fs-sm);transition:border-color var(--dur-fast) var(--ease-out-expo);background:0 0}.admin-dashboard__toolbar button:hover:not(:disabled){border-color:var(--ink-4)}.admin-dashboard__toolbar button:disabled{opacity:.55;cursor:not-allowed}.admin-dashboard__loading{color:var(--text-muted);font-size:var(--fs-md);text-align:center;padding:var(--space-10) 0}.admin-section{gap:var(--space-4);flex-direction:column;display:flex}.admin-section h2{font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--lh-tight);margin:0}.admin-health{align-items:center;gap:var(--space-3);font-size:var(--fs-sm);color:var(--text-muted);background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);display:flex}.admin-health__dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.admin-health__dot--healthy{background:var(--success);box-shadow:0 0 6px var(--success)}.admin-health__dot--degraded{background:var(--danger);box-shadow:0 0 6px var(--danger)}.admin-stats-grid{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=800px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.admin-stats-grid{grid-template-columns:1fr}}.admin-stat-card{background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--radius-md);padding:var(--space-5);gap:var(--space-2);flex-direction:column;display:flex}.admin-stat-card__value{font-family:var(--font-display);font-size:var(--fs-3xl);font-weight:600;line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.admin-stat-card__label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:600}.admin-chart{gap:var(--space-2);background:var(--ink-1);border:1px solid var(--ink-3);border-radius:var(--radius-md);padding:var(--space-4);flex-direction:column;max-height:480px;display:flex;overflow-y:auto}.admin-chart__bar{align-items:center;gap:var(--space-3);font-size:var(--fs-xs);grid-template-columns:80px 1fr 48px;display:grid}.admin-chart__bar-label{color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-chart__bar-track{background:var(--ink-2);border-radius:var(--radius-xs);height:20px;overflow:hidden}.admin-chart__bar-fill{background:linear-gradient(90deg, var(--accent), var(--accent-hover));border-radius:var(--radius-xs);min-width:2px;height:100%;transition:width var(--dur-med) var(--ease-out-expo)}.admin-chart__bar-value{color:var(--text);font-variant-numeric:tabular-nums;text-align:right;font-weight:600}}@layer utilities{.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}}@layer motion-override{@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition:none;animation:none}}}
