:root{--font-display:"Instrument Serif", serif;--font-body:"DM Sans", sans-serif;--surface:#faf8f4;--surface-2:#f0ede8;--surface-3:#e8e4dc;--text:#1c1814;--text-muted:#8a7e74;--accent:#b85c3f;--accent-hover:#9e4e35;--accent-bg:#b85c3f12;--user-tint:#f0ede8;--border:#1c18141a;--border-light:#1c18140f;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--space-6:48px;--space-8:64px;--chat-max:640px;--page-max:640px;--duration-exit:90ms;--duration-enter:.12s;--duration-move:.18s;--slide-offset:32px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface:#1c1814;--surface-2:#2a2420;--surface-3:#332e28;--text:#f5f0e8;--text-muted:#7a6e64;--accent:#c96a4a;--accent-hover:#d4745a;--accent-bg:#c96a4a1f;--user-tint:#2a2420;--border:#f5f0e817;--border-light:#f5f0e80d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-body);scroll-behavior:smooth}body{background:var(--surface);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.7;transition:background .18s,color .18s}.skip-link{z-index:100;background:var(--accent);color:#faf8f4;font-family:var(--font-body);border-radius:3px;padding:8px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:transform .18s;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.font-loader{transition:opacity .1s;display:inline-block}.skip-link:focus-visible{outline:2px solid var(--text);outline-offset:2px;transform:translateY(0)}.focus-ring:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.recap-segment{color:var(--text-muted);background:0 0;transition:background .18s,color .18s}.recap-segment:hover{color:var(--accent)}.recap-segment:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.recap-segment-active{background:var(--accent-bg);color:var(--accent)}@keyframes fade{0%{filter:blur(3px);opacity:0}to{filter:blur();opacity:1}}@keyframes slide{0%{translate:var(--slide-offset)}to{translate:0}}::view-transition-old(.fade-out){animation:var(--duration-exit) ease-in fade reverse}::view-transition-new(.fade-in){animation:var(--duration-enter) ease-out var(--duration-exit) both fade}::view-transition-old(.nav-forward){--slide-offset:-32px;animation:var(--duration-exit) ease-in both fade reverse, var(--duration-move) ease-in-out both slide reverse}::view-transition-new(.nav-forward){--slide-offset:32px;animation:var(--duration-enter) ease-out var(--duration-exit) both fade, var(--duration-move) ease-in-out both slide}::view-transition-old(.nav-back){--slide-offset:32px;animation:var(--duration-exit) ease-in both fade reverse, var(--duration-move) ease-in-out both slide reverse}::view-transition-new(.nav-back){--slide-offset:-32px;animation:var(--duration-enter) ease-out var(--duration-exit) both fade, var(--duration-move) ease-in-out both slide}::view-transition-group(.morph){animation-duration:var(--duration-move)}::view-transition-image-pair(.morph){animation-name:via-blur}@keyframes via-blur{30%{filter:blur(3px)}}::view-transition-group(persistent-nav){z-index:100;animation:none}.shell{max-width:var(--page-max);flex-direction:column;min-height:100dvh;margin:0 auto;padding:0 24px;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.font-loader{transition:none}::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}}@media (max-width:767px){.shell{padding:0 16px}}@keyframes typing-pulse{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
