:root{--c-void:#060a14;--c-abyss:#0a0e1a;--c-deep:#0f1628;--c-trench:#151d35;--c-shelf:#1c2644;--c-surface:#243054;--c-drift:#8892b0;--c-foam:#ccd6f6;--c-crest:#e6f1ff;--c-glow:#00dc82;--c-glow-dim:#00dc8233;--c-glow-faint:#00dc8211;--c-glow-bright:#3fa;--c-warning:#f59e0b;--c-error:#ef4444;--font-brand:"Space Mono",monospace;--font-body:"DM Sans",system-ui,sans-serif;--font-mono:"JetBrains Mono",monospace;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-base:.9375rem;--fs-md:1.0625rem;--fs-lg:1.25rem;--fs-xl:1.625rem;--fs-2xl:2.25rem;--fs-3xl:3rem;--lh-tight:1.3;--lh-body:1.65;--lh-relaxed:1.8;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.25rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;--sp-12:3rem;--sp-16:4rem;--sp-20:5rem;--max-content:48rem;--max-wide:64rem;--header-h:3.5rem;--prompt-max:42rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-glow:0 0 20px var(--c-glow-dim),0 0 60px var(--c-glow-faint);--shadow-subtle:0 1px 3px rgba(0,0,0,.4);--shadow-card:0 4px 24px rgba(0,0,0,.3);--ease-out:cubic-bezier(.16,1,.3,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--dur-fast:.15s;--dur-normal:.25s;--dur-slow:.4s}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;text-rendering:optimizeLegibility}body{background:var(--c-void);color:var(--c-foam);font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-body);min-height:100dvh;overflow-x:hidden}body:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='a'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='4' stitchTiles='stitch' type='fractalNoise'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");content:"";inset:0;opacity:.015;pointer-events:none;position:fixed;z-index:9999}::-moz-selection{background:var(--c-glow-dim);color:var(--c-crest)}::selection{background:var(--c-glow-dim);color:var(--c-crest)}:focus-visible{outline:2px solid var(--c-glow);outline-offset:2px}a{color:var(--c-glow);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}a:hover{color:var(--c-glow-bright)}h1,h2,h3,h4,h5,h6{color:var(--c-crest);font-family:var(--font-body);font-weight:600;line-height:var(--lh-tight)}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl);margin-bottom:var(--sp-4);margin-top:var(--sp-8)}h3{font-size:var(--fs-lg);margin-bottom:var(--sp-3);margin-top:var(--sp-6)}h4{font-size:var(--fs-md);margin-bottom:var(--sp-2);margin-top:var(--sp-5)}p{margin-bottom:var(--sp-4)}strong{color:var(--c-crest);font-weight:600}code{background:var(--c-trench);border-radius:var(--radius-sm);color:var(--c-glow);font-family:var(--font-mono);font-size:.875em;padding:.15em .4em}pre{background:var(--c-deep);border:1px solid var(--c-trench);border-radius:var(--radius-md);margin-bottom:var(--sp-4);overflow-x:auto;padding:var(--sp-4)}pre code{background:none;color:var(--c-foam);font-size:var(--fs-sm);padding:0}ol,ul{margin-bottom:var(--sp-4);padding-left:var(--sp-6)}li{margin-bottom:var(--sp-2)}li::marker{color:var(--c-glow)}table{border-collapse:collapse;font-size:var(--fs-sm);margin-bottom:var(--sp-4);width:100%}th{border-bottom:2px solid var(--c-trench);color:var(--c-glow);font-size:var(--fs-xs);font-weight:600;letter-spacing:.05em;text-align:left;text-transform:uppercase}td,th{padding:var(--sp-2) var(--sp-3)}td{border-bottom:1px solid var(--c-deep)}tr:hover td{background:var(--c-glow-faint)}blockquote{border-left:3px solid var(--c-glow);color:var(--c-drift);font-style:italic;margin-bottom:var(--sp-4);padding-left:var(--sp-4)}hr{border:none;border-top:1px solid var(--c-trench);margin:var(--sp-8) 0}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--c-shelf);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--c-surface)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes breathe{0%,to{opacity:.4}50%{opacity:.8}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}
