:root{--color-bg-primary:#0a0f1c;--color-bg-secondary:#0e1525;--color-bg-tertiary:#131d2f;--color-bg-elevated:#182438;--color-surface:#1c2a40;--color-surface-hover:#22324a;--color-border:#243550;--color-border-subtle:#1a2840;--color-text-primary:#f0f4f8;--color-text-secondary:#94a3b8;--color-text-tertiary:#64748b;--color-text-muted:#475569;--color-accent:#22d3ee;--color-accent-hover:#06b6d4;--color-accent-subtle:#22d3ee1a;--color-accent-glow:#22d3ee66;--color-cta:#22d3ee;--color-cta-hover:#06b6d4;--color-cta-subtle:#22d3ee1a;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--font-display:"Instrument Sans",-apple-system,sans-serif;--font-mono:"DM Mono","SF Mono",monospace;--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;--space-24:96px;--container-max:1200px;--container-wide:1400px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 8px 32px #0009;--shadow-glow:0 0 40px var(--color-accent-glow);--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-display);background:var(--color-bg-primary);color:var(--color-text-primary);min-height:100vh;line-height:1.6}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(at 20% 0,#22d3ee08 0%,#0000 50%),radial-gradient(at 80% 100%,#22d3ee05 0%,#0000 50%);position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:-1;background-image:linear-gradient(#22d3ee05 1px,#0000 1px),linear-gradient(90deg,#22d3ee05 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;font-weight:600;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:700}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}h4{font-size:1.25rem}p{color:var(--color-text-secondary)}a{color:var(--color-accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-accent-hover)}.container{width:100%;max-width:var(--container-max);padding:0 var(--space-6);margin:0 auto}.container-wide{max-width:var(--container-wide)}.mono{font-family:var(--font-mono);letter-spacing:-.02em;font-size:.875em}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-6);font-family:var(--font-display);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-flex}.btn-primary{background:var(--color-cta);color:#0a0f1c;font-weight:600;box-shadow:0 0 20px #22d3ee4d}.btn-primary:hover{background:var(--color-cta-hover);color:#0a0f1c;transform:translateY(-1px);box-shadow:0 0 30px #22d3ee66}.btn-secondary{color:var(--color-text-primary);border:1px solid var(--color-border);background:0 0}.btn-secondary:hover{background:var(--color-surface);border-color:var(--color-accent);color:var(--color-accent)}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:hover{color:var(--color-text-primary);background:var(--color-surface)}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}input,textarea,select{font-family:var(--font-display);padding:var(--space-3)var(--space-4);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);transition:all var(--transition-fast);width:100%;font-size:1rem}input:focus,textarea:focus,select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle);outline:none}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}.card{background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--transition-base)}.card:hover{border-color:var(--color-border);background:var(--color-bg-tertiary)}.measure-mark{position:relative}.measure-mark:before{content:"";background:var(--color-accent);opacity:.5;width:12px;height:1px;position:absolute;top:50%;left:0}section{padding:var(--space-20)0}::selection{background:var(--color-accent);color:var(--color-bg-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{animation:.6s forwards fadeIn}.animate-slide-up{animation:.6s forwards slideUp}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}
