:root{--color-primary:#dc644f;--color-primary-hover:#c5533f;--color-primary-active:#ad422f;--color-primary-glow:#dc644f14;--primary-hue:220, 100, 79;--bg-dark-base:#faf8f5;--bg-dark-surface:#fff;--bg-dark-surface-hover:#ebe7df;--bg-dark-panel:#f4f1eb;--border-subtle:#132b2114;--border-medium:#132b212e;--border-active:var(--color-primary);--text-bright:#132b21;--text-medium:#4b6056;--text-subdued:#7a9084;--text-muted:#a2b5ab;--color-success:#2f5946;--color-success-glow:#2f594614;--color-error:#ef4444;--color-error-glow:#ef444414;--color-warn:#d97706;--color-warn-glow:#d9770614;--font-display:"Space Grotesk", sans-serif;--font-sans:"Space Grotesk", sans-serif;--font-mono:"JetBrains Mono", monospace;--spacing-scale:.7;--space-xs:calc(.25rem * var(--spacing-scale));--space-sm:calc(.5rem * var(--spacing-scale));--space-md:calc(1rem * var(--spacing-scale));--space-lg:calc(1.5rem * var(--spacing-scale));--space-xl:calc(2rem * var(--spacing-scale));--space-xxl:calc(3rem * var(--spacing-scale));--radius-scale:.5;--radius-sm:calc(6px * var(--radius-scale));--radius-md:calc(10px * var(--radius-scale));--radius-lg:calc(16px * var(--radius-scale));--radius-full:9999px;--ease-out-back:cubic-bezier(.34, 1.56, .64, 1);--ease-smooth:cubic-bezier(.2, .8, .2, 1);--transition-fast:.15s;--transition-std:.3s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-dark-base);color:var(--text-medium);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.6}body{overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-dark-base)}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full);border:2px solid var(--bg-dark-base)}::-webkit-scrollbar-thumb:hover{background:var(--text-subdued)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-bright);font-weight:600;line-height:1.25}h1{font-size:calc(2.25rem * var(--spacing-scale))}h2{font-size:calc(1.75rem * var(--spacing-scale))}h3{font-size:calc(1.35rem * var(--spacing-scale))}a{color:var(--color-primary);transition:color var(--transition-fast) var(--ease-smooth);text-decoration:none}a:hover{color:var(--color-primary-hover)}code{font-family:var(--font-mono);background:var(--bg-dark-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-bright);padding:.15rem .35rem;font-size:.9em}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}#root{flex-direction:column;min-height:100vh;display:flex}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.shake-element{animation:.35s cubic-bezier(.36,.07,.19,.97) both shake;border-color:var(--color-error)!important;box-shadow:0 0 16px var(--color-error-glow)!important}@keyframes pulseGlow{0%,to{border-color:var(--border-medium);box-shadow:0 0 8px var(--color-primary-glow)}50%{border-color:var(--color-primary);box-shadow:0 0 16px var(--color-primary-glow)}}.pulse-glow-element{animation:1.8s ease-in-out infinite pulseGlow}@keyframes slideInFade{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.slide-transition{animation:slideInFade .35s var(--ease-smooth) both}.interactive-btn{transition:transform var(--transition-fast) var(--ease-smooth), box-shadow var(--transition-fast) var(--ease-smooth), background-color var(--transition-fast) var(--ease-smooth), border-color var(--transition-fast) var(--ease-smooth)}.interactive-btn:hover{transform:translateY(-1.5px)scale(1.02)}.interactive-btn:active{transform:translateY(0)scale(.98)}.interactive-card{transition:transform var(--transition-fast) var(--ease-smooth), box-shadow var(--transition-fast) var(--ease-smooth), border-color var(--transition-fast) var(--ease-smooth)}.interactive-card:hover{border-color:var(--border-medium);transform:translateY(-2px);box-shadow:0 8px 24px #0003}@keyframes cursor-blink{50%{opacity:0}}.cursor-pulse{animation:1.05s step-end infinite cursor-blink}.grid-bg-overlay{background-image:linear-gradient(#ffffff03 1px,#0000 1px),linear-gradient(90deg,#ffffff03 1px,#0000 1px);background-position:top;background-size:40px 40px}
