:root{--bg-base:#0e100f;--bg-panel:#171a19;--bg-raised:#222624;--text-primary:#e8ebe9;--text-secondary:#8d9692;--text-muted:#626b67;--border-subtle:#2b302e;--border-strong:#3a413e;--border-focus:#87c4a3;--ai-active:#87c4a3;--ai-thinking:#4a6e59;--ai-soft:rgba(135,196,163,0.14);--human-handoff:#e5a93b;--human-soft:rgba(229,169,59,0.14);--signal-ok:#87c4a3;--signal-warn:#e5a93b;--signal-crit:#d95d51;--signal-warn-soft:rgba(229,169,59,0.14);--signal-crit-soft:rgba(217,93,81,0.14);--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3.25rem;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--radius-sm:3px;--radius-md:8px;--radius-lg:14px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 6px 20px rgba(0,0,0,0.35);--shadow-glass:0 20px 50px rgba(0,0,0,0.45);--font-heading:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:ui-monospace,"SFMono-Regular","Cascadia Code",Consolas,monospace;color-scheme:dark}.caller-theme{--bg-base:#f4f3f0;--bg-panel:#ffffff;--bg-raised:#fafaf8;--text-primary:#0e100f;--text-secondary:#5c6360;--text-muted:#8a908c;--border-subtle:#e4e2dc;--border-strong:#d3d0c8;--border-focus:#4a6e59;--ai-active:#3f6b53;--ai-thinking:#a6c2b2;--ai-soft:rgba(63,107,83,0.1);--human-handoff:#c8850f;--human-soft:rgba(200,133,15,0.12);--signal-ok:#3f6b53;--signal-warn:#c8850f;--signal-crit:#c44133;--signal-warn-soft:rgba(200,133,15,0.12);--signal-crit-soft:rgba(196,65,51,0.1);--shadow-sm:0 1px 2px rgba(14,16,15,0.06);--shadow-md:0 8px 24px rgba(14,16,15,0.1);--shadow-glass:0 16px 48px rgba(14,16,15,0.12);color-scheme:light}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg-base);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0}.mono,code,kbd{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}a{color:var(--ai-active);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--ai-active);color:var(--bg-base)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-track{background:transparent}@media (prefers-reduced-motion:no-preference){@keyframes ap-pulse{0%,to{opacity:.45}50%{opacity:1}}@keyframes ap-dot{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}@keyframes ap-blink{50%{opacity:0}}@keyframes ap-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes ap-crit-pulse{0%,to{box-shadow:0 0 0 0 var(--signal-crit-soft)}50%{box-shadow:0 0 0 5px transparent}}@keyframes ap-halo{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.06);opacity:1}}@keyframes ap-ring{0%{transform:scale(.9);opacity:.8}to{transform:scale(1.8);opacity:0}}.ap-fade-up{animation:ap-fade-up .5s cubic-bezier(.22,1,.36,1) both}.ap-pulse{animation:ap-pulse 1.5s ease-in-out infinite}.ap-caret:after{content:"▍";color:var(--ai-active);animation:ap-blink .9s step-end infinite;margin-left:1px}.ap-crit-pulse{animation:ap-crit-pulse 2s ease-in-out infinite}.ap-halo{animation:ap-halo 2.4s ease-in-out infinite}.ap-ring{animation:ap-ring 1.8s ease-out infinite}.ap-dots span:first-child{animation:ap-dot 1s ease-in-out infinite}.ap-dots span:nth-child(2){animation:ap-dot 1s ease-in-out .15s infinite}.ap-dots span:nth-child(3){animation:ap-dot 1s ease-in-out .3s infinite}}.ap-dots{display:inline-flex;gap:4px;align-items:center}.ap-dots span{width:6px;height:6px;border-radius:var(--radius-full);background:var(--ai-active);display:inline-block}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}