:root{--bg-primary:#121212;--bg-secondary:#1a1a1a;--bg-card:#1e1e1e;--bg-card-hover:#252525;--border-color:#333;--border-light:#444;--text-primary:#f5f5f5;--text-secondary:#aaa;--text-muted:#777;--accent:#e0e0e0;--accent-glow:#ffffff14;--highlight-color:#fff;--highlight-bg:#ffffff1f;--font-ui:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-serif:"Playfair Display","Old Standard TT",Georgia,serif;--font-body-serif:"Libre Baskerville","Old Standard TT",Georgia,serif;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-ui);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#333;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#555}input:focus,textarea:focus,select:focus,button:focus-visible{outline-offset:2px;outline:1px solid #ffffff4d}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes matchCutReveal{0%{clip-path:inset(50%);opacity:0}30%{clip-path:inset(20%);opacity:.5}to{clip-path:inset(0%);opacity:1}}@keyframes textHighlightPulse{0%,to{background-size:100% 100%}50%{background-size:105% 105%}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes paperSlideIn{0%{opacity:0;transform:scale(.9)rotateX(5deg)}to{opacity:1;transform:scale(1)rotateX(0)}}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes subtlePulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes orbFloat{0%,to{transform:translate(0)}25%{transform:translate(20px,-30px)}50%{transform:translate(-15px,20px)}75%{transform:translate(25px,15px)}}
