:root{--bg-primary:#060a12;--bg-secondary:#0c1118;--bg-card:#101722;--bg-card-hover:#16202e;--bg-elevated:#141d2a;--bg-glass:#101722b8;--border:#1c2634;--border-light:#2a3a4e;--border-subtle:#141c26;--accent:#00b4d8;--accent-glow:#48cae4;--accent-dim:#0077b6;--accent-soft:#00b4d81a;--accent-glow-soft:#48cae414;--gold:#f4a261;--gold-soft:#f4a2611a;--coral:#e63946;--coral-soft:#e639461a;--green:#2dc653;--green-soft:#2dc65314;--red:#e63946;--purple:#7b61ff;--purple-soft:#7b61ff1a;--teal:#06d6a0;--teal-soft:#06d6a01a;--text-primary:#e8ecf1;--text-secondary:#89a;--text-muted:#567;--text-faint:#345;--font-display:"Space Grotesk", "Inter", sans-serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--r-sm:8px;--r-md:12px;--r-lg:20px;--r-xl:28px;--ease:cubic-bezier(.16, 1, .3, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-bounce:cubic-bezier(.68, -.55, .265, 1.55);--shadow-sm:0 1px 3px #00000080;--shadow-md:0 6px 24px #0006;--shadow-lg:0 16px 48px #00000080;--shadow-glow:0 0 50px #00b4d81f;--shadow-glow-gold:0 0 50px #f4a26114}:root[data-theme=light]{--bg-primary:#eef0f2;--bg-secondary:#e4e7ea;--bg-card:#fff;--bg-card-hover:#f4f6f8;--bg-elevated:#fff;--bg-glass:#ffffffc7;--border:#cdd3da;--border-light:#b0b9c3;--border-subtle:#dde1e6;--accent:#0096c7;--accent-glow:#00b4d8;--accent-dim:#0077b6;--accent-soft:#0096c712;--accent-glow-soft:#00b4d80d;--gold:#e76f51;--gold-soft:#e76f5114;--coral:#d62839;--coral-soft:#d628390f;--green:#1b8a3e;--green-soft:#1b8a3e0f;--red:#d62839;--purple:#5a3fd4;--purple-soft:#5a3fd412;--teal:#04a57c;--teal-soft:#04a57c12;--text-primary:#0c1420;--text-secondary:#567;--text-muted:#89a;--text-faint:#b0b9c3;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 6px 24px #00000014;--shadow-lg:0 16px 48px #0000001a;--shadow-glow:0 0 50px #0096c70f;--shadow-glow-gold:0 0 50px #e76f510a}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow-x:hidden}body{background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-feature-settings:"cv02", "cv03", "cv04", "ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6;transition:background-color .4s,color .4s}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--accent-soft);color:var(--accent-glow)}.gradient-bg{background:radial-gradient(ellipse 80% 60% at 50% 0%, var(--accent-soft) 0%, transparent 60%), radial-gradient(ellipse 60% 40% at 100% 100%, var(--gold-soft) 0%, transparent 50%), var(--bg-primary)}.mesh-bg{background:radial-gradient(circle at 15% 15%, var(--accent-soft) 0%, transparent 45%), radial-gradient(circle at 85% 55%, var(--gold-soft) 0%, transparent 45%), radial-gradient(circle at 50% 100%, var(--accent-glow-soft) 0%, transparent 50%), var(--bg-primary)}.ocean-bg{background:radial-gradient(ellipse 120% 80% at 50% -20%, #00b4d80f 0%, transparent 60%), radial-gradient(ellipse 60% 50% at 90% 110%, #f4a2610a 0%, transparent 50%), radial-gradient(ellipse 40% 30% at 10% 90%, #00b4d808 0%, transparent 50%), var(--bg-primary)}.noise-overlay{pointer-events:none;zIndex:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;position:fixed;inset:0}.glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(28px)saturate(150%);border:1px solid var(--border);border-radius:var(--r-lg)}.glass-hover{transition:all .4s var(--ease)}.glass-hover:hover{background:var(--bg-card-hover);border-color:var(--border-light);box-shadow:var(--shadow-md), var(--shadow-glow);transform:translateY(-3px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-48px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(48px)}to{opacity:1;transform:translate(0)}}@keyframes rotateIn{0%{opacity:0;transform:rotate(-10deg)scale(.8)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 24px var(--accent-soft)}50%{box-shadow:0 0 48px #00b4d833}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes barGrow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes drawLine{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes slideUpPanel{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideRightPanel{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes confettiFall{0%{opacity:1;transform:translateY(-10vh)rotate(0)scale(1)}to{opacity:0;transform:translateY(110vh)rotate(720deg)scale(.3)}}@keyframes flameFlicker{0%,to{opacity:.8;transform:scaleY(1)scaleX(1)}25%{opacity:.9;transform:scaleY(1.05)scaleX(.98)}50%{opacity:.7;transform:scaleY(.95)scaleX(1.02)}75%{opacity:.85;transform:scaleY(1.02)scaleX(.99)}}@keyframes radarSweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes waveFlow{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes countUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes sectionEnter{0%{opacity:0;transform:translate(40px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes sectionExit{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(-40px)scale(.98)}}@keyframes particleRise{0%{opacity:0;transform:translateY(0)scale(1)}10%{opacity:.6}90%{opacity:.4}to{opacity:0;transform:translateY(-100vh)scale(.3)}}@keyframes borderGlow{0%,to{border-color:var(--border)}50%{border-color:var(--accent)}}@keyframes magneticPull{0%{transform:translate(0)}to{transform:translate(var(--mx,0), var(--my,0))}}@keyframes typingDot{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.animate-fade-up{animation:fadeInUp .8s var(--ease) both}.animate-fade-in{animation:.6s both fadeIn}.animate-scale-in{animation:scaleIn .6s var(--ease-spring) both}.animate-slide-left{animation:slideInLeft .7s var(--ease) both}.animate-slide-right{animation:slideInRight .7s var(--ease) both}.animate-rotate-in{animation:rotateIn .8s var(--ease-spring) both}.animate-float{animation:5s ease-in-out infinite float}.animate-pulse-glow{animation:3s ease-in-out infinite pulseGlow}.animate-section-enter{animation:sectionEnter .5s var(--ease) both}.stagger-1{animation-delay:80ms}.stagger-2{animation-delay:.16s}.stagger-3{animation-delay:.24s}.stagger-4{animation-delay:.32s}.stagger-5{animation-delay:.4s}.stagger-6{animation-delay:.48s}.stagger-7{animation-delay:.56s}.stagger-8{animation-delay:.64s}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--r-sm);font-size:14px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:background .3s var(--ease), transform .3s var(--ease), box-shadow .3s var(--ease);letter-spacing:-.01em;border:none;align-items:center;gap:8px;padding:13px 26px;display:inline-flex}.btn-primary:hover{background:var(--accent-glow);box-shadow:0 10px 32px var(--accent-soft), var(--shadow-glow);transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.3;cursor:not-allowed;box-shadow:none;transform:none}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--r-sm);font-size:13px;font-weight:500;font-family:var(--font-sans);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:12px 22px;transition:all .25s;display:inline-flex}.btn-ghost:hover{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-light);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-icon{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;justify-content:center;align-items:center;width:36px;height:36px;transition:all .25s;display:flex}.btn-icon:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-light);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.progress-track{background:var(--border-subtle);border-radius:2px;height:3px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), var(--accent-glow));height:100%;transition:width .8s var(--ease);border-radius:2px}.badge{text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600;font-family:var(--font-sans);border-radius:100px;align-items:center;gap:6px;padding:4px 11px;display:inline-flex}.badge-accent{background:var(--accent-soft);color:var(--accent-glow);border:1px solid var(--accent-soft)}.badge-gold{background:var(--gold-soft);color:var(--gold);border:1px solid var(--gold-soft)}.badge-coral{background:var(--coral-soft);color:var(--coral);border:1px solid var(--coral-soft)}.badge-teal{background:var(--teal-soft);color:var(--teal);border:1px solid var(--teal-soft)}.badge-neutral{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border)}.text-gradient{background:linear-gradient(135deg, var(--text-primary) 0%, var(--accent-glow) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-blue{background:linear-gradient(135deg, var(--accent-glow), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-gold{background:linear-gradient(135deg, var(--gold), #ffd7a0);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-ocean{background:linear-gradient(135deg, var(--accent-glow), var(--teal));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.display-xl{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(3rem,8vw,5.5rem);font-weight:700;line-height:1}.display-lg{font-family:var(--font-display);letter-spacing:-.035em;font-size:clamp(2.2rem,5.5vw,3.5rem);font-weight:700;line-height:1.05}.display-md{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(1.6rem,4vw,2.5rem);font-weight:700;line-height:1.1}.display-sm{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(1.2rem,3vw,1.8rem);font-weight:700;line-height:1.15}.kinetic-text{font-family:var(--font-display);letter-spacing:-.035em;font-size:clamp(2rem,5.5vw,3.5rem);font-weight:700;line-height:1.05}.chat-bubble{border-radius:var(--r-md);max-width:85%;padding:13px 17px;font-size:14px;line-height:1.6}.chat-user{background:linear-gradient(135deg, var(--accent), var(--accent-dim));color:#fff;border-bottom-right-radius:4px;margin-left:auto}.chat-ai{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border);border-bottom-left-radius:4px}.source-tag{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);border-top:1px solid var(--border-subtle);align-items:center;gap:4px;width:100%;margin-top:8px;padding-top:6px;display:inline-flex}.nav-dot{background:var(--border-light);width:7px;height:7px;transition:all .35s var(--ease);cursor:pointer;border-radius:50%}.nav-dot:hover{background:var(--text-muted);transform:scale(1.2)}.nav-dot.active{background:var(--accent);box-shadow:0 0 10px var(--accent), 0 0 20px var(--accent-soft);transform:scale(1.4)}.nav-dot.completed{background:var(--green);box-shadow:0 0 6px var(--green-soft)}.typing-cursor:after{content:"|";color:var(--accent);margin-left:1px;animation:1s step-end infinite blink}.input-field{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-primary);font-size:14px;font-family:var(--font-sans);outline:none;flex:1;padding:12px 16px;transition:border-color .25s,box-shadow .25s}.input-field:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft), var(--shadow-glow)}.input-field::placeholder{color:var(--text-muted)}.confetti-particle{pointer-events:none;z-index:9999;animation:linear forwards confettiFall;position:fixed}.float-particle{pointer-events:none;border-radius:50%;animation:linear infinite particleRise;position:absolute}.magnetic{will-change:transform;transition:transform .15s ease-out}.section-enter{animation:sectionEnter .5s var(--ease) both}.section-exit{animation:sectionExit .35s var(--ease) both}@media (width<=768px){.display-xl{font-size:2.4rem}.display-lg{font-size:1.9rem}.display-md{font-size:1.5rem}.display-sm{font-size:1.1rem}.kinetic-text{font-size:1.7rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
