@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";.landing{background:var(--color-bg-primary);color:var(--color-text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Google Sans,Roboto,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;transition:background .3s ease,color .3s ease}.landing-nav{position:fixed;top:0;left:0;right:0;z-index:1000;pointer-events:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.landing-nav.scrolled{background:transparent}.landing-nav-top{max-width:900px;margin:1rem auto 0;padding:.3rem .3rem .3rem 1.25rem;display:flex;align-items:center;gap:0;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:100px;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);box-shadow:0 4px 24px #0000001f,0 1px 4px #00000014;pointer-events:all}.landing-logo{font-size:.9375rem;font-weight:600;letter-spacing:.06em;color:var(--color-text-primary);flex-shrink:0;margin-right:.5rem}.landing-nav-center{display:flex;gap:0;align-items:center;justify-content:center;flex:1}.landing-nav-text-link{background:transparent;border:none;color:var(--color-text-muted);font-size:.8125rem;font-weight:400;cursor:pointer;transition:all .25s ease;padding:.45rem 1rem;border-radius:100px;font-family:inherit;white-space:nowrap}.landing-nav-text-link:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.landing-nav-text-link.active{background:var(--color-text-primary);color:var(--color-bg-primary);font-weight:500}[data-theme=light] .landing-nav-text-link.active{background:#111;color:#fff}.landing-nav-right{display:flex;gap:.25rem;align-items:center;flex-shrink:0;margin-left:.5rem}.landing-nav-cta-outline{padding:.45rem .875rem;border:none;background:transparent;color:var(--color-text-muted);text-decoration:none;font-size:.8125rem;font-weight:400;transition:all .2s;border-radius:100px;font-family:inherit;white-space:nowrap}.landing-nav-cta-outline:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.landing-nav-cta-filled{padding:.45rem 1.125rem;background:var(--color-text-primary);border-radius:100px;color:var(--color-bg-primary);text-decoration:none;font-size:.8125rem;font-weight:500;transition:all .2s ease;border:none;white-space:nowrap}[data-theme=light] .landing-nav-cta-filled{background:#111;color:#fff}.landing-nav-cta-filled:hover{opacity:.85;transform:translateY(-1px)}.landing-nav.scrolled .landing-nav-pill-container{margin-top:.5rem;margin-bottom:.5rem}.landing-nav-pill-container{max-width:fit-content;margin:0 auto;padding:.375rem;display:flex;gap:.5rem;align-items:center;background:var(--color-bg-elevated);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--color-border);border-radius:50px;box-shadow:var(--shadow-lg);animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.landing-pill{padding:.35rem 1.75rem;background:transparent;border:none;border-radius:50px;color:var(--color-text-secondary);font-size:.875rem;font-weight:500;letter-spacing:.2px;line-height:1.4;cursor:pointer;transition:all .4s cubic-bezier(.23,1,.32,1);white-space:nowrap;text-decoration:none;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.landing-pill:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.landing-pill.active{background:var(--color-text-primary);color:var(--color-bg-primary);font-weight:600;box-shadow:0 4px 20px #00000026;transform:scale(1.05)}[data-theme=light] .landing-pill.active{background:#000;color:#fff;box-shadow:0 8px 24px #0003}.landing-pill.active:hover{background:var(--color-bg-primary)}.landing-pill-outline{border:1px solid rgba(255,255,255,.2);background:transparent}.landing-pill-outline:hover{background:#ffffff0d;border-color:#ffffff4d}.landing-pill-filled{background:var(--color-text-primary);color:var(--color-bg-primary);font-weight:600}.landing-pill-filled:hover{background:var(--color-text-secondary)}.landing-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:8rem 2rem 4rem}.landing-hero-bg{position:absolute;inset:-100px 0 0;background:radial-gradient(circle at 50% 20%,var(--color-accent-light) 0%,transparent 50%)}.landing-hero-content{position:relative;max-width:900px;animation:fadeInUp .8s ease-out}.landing-hero-title{font-size:4.5rem;font-weight:400;letter-spacing:-.04em;line-height:1.1;margin-bottom:1.5rem;color:var(--color-text-primary)}.landing-hero-subtitle{font-size:1.5rem;color:var(--color-text-secondary);line-height:1.6;margin-bottom:3.5rem;font-weight:300;max-width:800px;margin-left:auto;margin-right:auto}.landing-hero-actions{display:flex;gap:1rem;justify-content:center}.landing-btn-primary{padding:1rem 2rem;background:var(--color-text-primary);border:none;border-radius:28px;color:var(--color-bg-primary);text-decoration:none;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.landing-btn-primary:hover{opacity:.9;transform:translateY(-2px)}.landing-btn-secondary{padding:1rem 2rem;background:transparent;border:1px solid var(--color-border);border-radius:28px;color:var(--color-text-primary);text-decoration:none;font-size:1rem;cursor:pointer;transition:all .2s}.landing-btn-secondary:hover{background:var(--color-bg-hover);border-color:var(--color-text-secondary)}.landing-section{padding:8rem 2rem;max-width:1400px;margin:0 auto}.landing-section-content{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.landing-section-title{font-size:3rem;font-weight:400;letter-spacing:-.03em;line-height:1.2;margin-bottom:1.5rem;color:var(--color-text-primary)}.landing-section-desc{font-size:1.125rem;color:var(--color-text-secondary);line-height:1.7;font-weight:300}.landing-hero-secondary{position:relative;width:100vw;height:100vh;margin:0;padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.landing-hero-secondary-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.landing-hero-secondary-overlay{position:absolute;inset:0;background:linear-gradient(to top,#000c,#00000080,#0009);box-shadow:inset 0 0 150px #0006}.landing-hero-secondary-content{position:relative;z-index:10;max-width:900px;padding:0 3rem;text-align:center;animation:fadeInUp 1s ease-out}.landing-hero-secondary-title{font-size:5rem;font-weight:700;letter-spacing:-.04em;line-height:1.1;margin-bottom:2rem;color:#fff;text-shadow:0 4px 30px rgba(0,0,0,.8),0 0 40px rgba(255,255,255,.1)}.landing-hero-secondary-subtitle{font-size:1.75rem;font-weight:400;color:#fffffff2;margin-bottom:2rem;letter-spacing:-.02em;text-shadow:0 2px 20px rgba(0,0,0,.6)}.landing-hero-secondary-body{font-size:1.125rem;color:#fffc;line-height:1.7;font-weight:300;max-width:700px;margin:0 auto;text-shadow:0 2px 15px rgba(0,0,0,.5)}.landing-features-premium{padding:8rem 2rem;max-width:1400px;margin:0 auto}.landing-features-header{max-width:800px;margin:0 auto 4rem;text-align:center}.landing-features-label{font-size:.875rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}.landing-features-heading{font-size:3rem;font-weight:400;letter-spacing:-.03em;line-height:1.2;margin-bottom:1rem;color:var(--color-text-primary)}.landing-features-subtext{font-size:1.125rem;color:var(--color-text-secondary);line-height:1.6;font-weight:300}.landing-features-tabs{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.landing-tab{padding:.75rem 1.5rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:24px;color:var(--color-text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.landing-tab:hover{background:var(--color-bg-hover);border-color:var(--color-text-secondary);color:var(--color-text-primary)}.landing-tab.active{background:var(--color-text-primary);border-color:var(--color-text-primary);color:var(--color-bg-primary);font-weight:600}.landing-tab-subtitle{text-align:center;font-size:.95rem;color:#ffffff80;margin-bottom:3rem;font-weight:300;min-height:1.5rem}.landing-features-grid-spacious{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-bottom:3rem;animation:tabFadeIn .5s ease}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.landing-features-grid-advanced{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:3rem;animation:slideDown .3s ease}.landing-show-more-btn{display:flex;align-items:center;gap:.5rem;margin:0 auto;padding:.875rem 1.5rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:24px;color:var(--color-text-secondary);font-size:.9rem;cursor:pointer;transition:all .3s}.landing-show-more-btn:hover{background:var(--color-bg-hover);border-color:var(--color-text-secondary);color:var(--color-text-primary)}.landing-feature-card-spacious{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:20px;padding:3rem;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.landing-feature-card-spacious:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,var(--color-accent-light) 0%,transparent 70%);opacity:0;transition:opacity .4s}.landing-feature-card-spacious:hover{background:var(--color-bg-hover);border-color:var(--color-border-focus);transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-lg)}.landing-feature-card-spacious:hover:before{opacity:1}.landing-feature-icon{width:64px;height:64px;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:16px;color:var(--color-text-secondary);transition:all .4s}.landing-feature-card-spacious:hover .landing-feature-icon{background:var(--color-bg-hover);border-color:var(--color-text-primary);color:var(--color-text-primary);transform:scale(1.1);box-shadow:var(--shadow-sm)}.landing-feature-card-title{font-size:1.125rem;font-weight:500;margin-bottom:.75rem;color:var(--color-text-primary);letter-spacing:-.01em}.landing-feature-card-desc{font-size:.875rem;color:var(--color-text-secondary);line-height:1.5;font-weight:300;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.landing-learn{width:100vw;padding:8rem 4rem 4rem;margin:0;background:var(--color-bg-primary)}.landing-learn-hero{max-width:800px;margin:0 auto 8rem;text-align:center;opacity:0;transform:translateY(20px);animation:fadeSlideUp .8s ease-out .2s forwards}.landing-learn-title{font-size:5rem;font-weight:400;color:var(--color-text-primary);margin-bottom:1rem;letter-spacing:.01em}.landing-learn-subtitle{font-size:1.25rem;font-weight:300;color:var(--color-text-secondary)}.landing-learn-section{max-width:1000px;margin:0 auto 6rem;opacity:0;transform:translateY(20px);animation:fadeSlideUp .8s ease-out forwards}.landing-learn-section:nth-of-type(2){animation-delay:.3s}.landing-learn-section:nth-of-type(3){animation-delay:.5s}.landing-learn-section:nth-of-type(4){animation-delay:.7s}.landing-learn-section:nth-of-type(5){animation-delay:.9s}.landing-learn-section:nth-of-type(6){animation-delay:1.1s}.landing-learn-heading{font-size:2rem;font-weight:400;color:var(--color-text-primary);margin-bottom:2.5rem}.landing-learn-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.landing-learn-step{text-align:center}.landing-learn-step-number{display:block;font-size:2.5rem;font-weight:300;color:var(--color-text-muted);margin-bottom:1rem}.landing-learn-step h3{font-size:1.25rem;font-weight:500;color:var(--color-text-primary);margin-bottom:.75rem}.landing-learn-step p{font-size:1rem;font-weight:300;color:var(--color-text-secondary);line-height:1.6}.landing-learn-tips{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem 3rem}.landing-learn-tip h3{font-size:1.125rem;font-weight:500;color:var(--color-text-primary);margin-bottom:.5rem}.landing-learn-tip p{font-size:.95rem;font-weight:300;color:var(--color-text-secondary);line-height:1.6}.landing-learn-ai-text{font-size:1.125rem;font-weight:300;color:var(--color-text-secondary);line-height:1.8;max-width:800px}.landing-learn-actions{display:flex;gap:1.5rem;flex-wrap:wrap}.landing-learn-action{padding:.75rem 1.5rem;font-size:1rem;font-weight:400;color:#fff;background:#ffffff0d;text-decoration:none;transition:all .3s ease}.landing-learn-action:hover{background:#ffffff1a;transform:translateY(-2px)}.landing-learn-help{display:flex;gap:2rem;justify-content:flex-start}.landing-learn-help-link{font-size:1rem;font-weight:400;color:#888;text-decoration:none;transition:color .3s ease}.landing-learn-help-link:hover{color:#fff}.landing-vision-clean{width:100vw;min-height:100vh;padding:10rem 4rem;margin:0;background:var(--color-bg-primary);display:flex;align-items:center;justify-content:center}.landing-vision-container{max-width:1100px;width:100%;text-align:center}.landing-vision-title{font-size:4.5rem;font-weight:400;letter-spacing:.02em;line-height:1.2;color:var(--color-text-primary);margin-bottom:6rem;opacity:0;transform:translateY(20px);animation:fadeSlideUp .8s ease-out .2s forwards}.hover-word{position:relative;display:inline-block;text-decoration:underline;text-decoration-color:var(--color-text-muted);text-underline-offset:8px;text-decoration-thickness:2px;cursor:pointer;font-family:Inter,-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;transition:color 0s,-webkit-text-stroke 0s,text-decoration 0s,letter-spacing 1.5s,transform 1.5s,text-shadow 1.5s}.hover-word:hover{color:transparent;-webkit-text-stroke:2px #a78bfa;text-decoration:none;letter-spacing:.15em;transform:scale(1.08);text-shadow:0 0 30px rgba(167,139,250,.6)}@keyframes fadeSlideUp{to{opacity:1;transform:translateY(0)}}.landing-vision-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem 6rem;max-width:900px;margin:0 auto 6rem}.landing-vision-item{font-size:1.5rem;font-weight:300;color:var(--color-text-muted);letter-spacing:.01em;line-height:1.6;opacity:0;transform:translateY(15px);animation:fadeSlideUp .7s ease-out forwards}.landing-vision-item:nth-child(1){animation-delay:.6s}.landing-vision-item:nth-child(2){animation-delay:.8s}.landing-vision-item:nth-child(3){animation-delay:1s}.landing-vision-item:nth-child(4){animation-delay:1.2s}.landing-vision-finale{font-size:1.25rem;font-weight:300;color:var(--color-text-primary);letter-spacing:.02em;line-height:1.8;opacity:0;transform:translateY(15px);animation:fadeSlideUp .8s ease-out 1.6s forwards}.aivy-marquee{min-height:100vh;width:100%;position:relative;background:var(--color-bg-primary);padding:3rem 0 3.5rem}.marquee-row{white-space:nowrap;overflow-x:hidden;margin-bottom:-2vw}.marquee-row .track{display:inline-block}.marquee-row .track p{font-size:7vw;-webkit-text-stroke:1px var(--color-text-primary);font-weight:400;text-transform:uppercase;color:transparent;display:inline-block;margin-right:16px;animation-timing-function:linear;animation-iteration-count:infinite}.speed1 .track p{animation:anime 17s linear infinite}.speed2 .track p{animation:anime 18s linear infinite}.speed3 .track p{animation:anime 19s linear infinite reverse;transform:translate(calc(-100% - 20px))}.speed4 .track p{animation:anime 20s linear infinite reverse;transform:translate(calc(-100% - 20px))}@keyframes anime{0%{transform:translate(0)}to{transform:translate(calc(-100% - 20px))}}.landing-cta{padding:8rem 2rem;text-align:center;background:var(--color-bg-primary)}.landing-cta-content{max-width:800px;margin:0 auto}.landing-cta-title{font-size:3rem;font-weight:400;letter-spacing:-.03em;margin-bottom:1rem;color:var(--color-text-primary)}.landing-cta-subtitle{font-size:1.125rem;color:var(--color-text-secondary);margin-bottom:2.5rem}.landing-cta-actions{display:flex;gap:1rem;justify-content:center}#footer-text{width:100%;text-align:center;padding:4rem 2rem;background:var(--color-bg-primary)}.connect-wrap{position:relative;display:inline-block}.connect-solid{font-size:7.2vw;text-transform:uppercase;font-weight:600;display:block;color:var(--color-text-primary)}.connect-outline{position:absolute;top:0;left:0;font-size:7.2vw;text-transform:uppercase;font-weight:600;display:block;font-family:system-ui,-apple-system,sans-serif;color:transparent;-webkit-text-stroke:1px var(--color-text-primary);opacity:0;animation:connectReveal 3s ease-in-out infinite}@keyframes connectReveal{0%{opacity:0;letter-spacing:.4vw}40%{opacity:1;letter-spacing:0vw}60%{opacity:1;letter-spacing:0vw}to{opacity:0;letter-spacing:.4vw}}.landing-footer{border-top:1px solid var(--color-border);padding:4rem 2rem 2rem;background:var(--color-bg-primary)}.landing-footer-content{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:2fr 3fr;gap:4rem}.landing-footer-brand p{margin-top:.5rem;font-size:.875rem;color:var(--color-text-secondary)}.landing-footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.landing-footer-col h4{font-size:.875rem;font-weight:500;margin-bottom:1rem;color:var(--color-text-muted)}.landing-footer-col a{display:block;font-size:.875rem;color:var(--color-text-secondary);text-decoration:none;margin-bottom:.75rem;transition:color .2s}.landing-footer-col a:hover{color:var(--color-text-primary)}.landing-hero-banner{display:grid;grid-template-columns:45fr 55fr;gap:5rem;align-items:center;padding:10rem 4rem;max-width:1400px;margin:0 auto;background:var(--color-bg-primary)}.landing-hero-banner-text{display:flex;flex-direction:column;justify-content:center}.landing-hero-banner-title{font-size:3.5rem;font-weight:600;letter-spacing:-.03em;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Inter,sans-serif;margin-bottom:2rem;color:var(--color-text-primary)}.landing-hero-banner-subtitle{font-size:1.25rem;color:var(--color-text-secondary);line-height:1.7;max-width:550px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Inter,sans-serif}.landing-hero-banner-image-container{border-radius:32px;overflow:hidden;box-shadow:0 40px 100px -20px #0006,0 0 40px #7c3aed1a;border:1px solid var(--color-border);background:var(--color-bg-elevated);transition:transform .6s cubic-bezier(.16,1,.3,1),box-shadow .6s ease;width:100%}.landing-hero-banner-image-container:hover{transform:scale(1.02) translateY(-4px);box-shadow:0 50px 120px -25px #00000080,0 0 50px #7c3aed26}.hero-video{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;display:block;opacity:.95;transition:opacity .4s ease}.landing-hero-banner-image-container:hover .hero-video{opacity:1}.landing-hero-banner-image{width:100%;height:auto;display:block;object-fit:cover;aspect-ratio:16 / 9}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:all .8s ease-out}.animate-on-scroll.animate-in{opacity:1;transform:translateY(0)}@media(max-width:1024px){.landing-hero-title,.landing-hero-secondary-title{font-size:3.5rem}.landing-hero-secondary-subtitle{font-size:1.5rem}.landing-hero-secondary-body{font-size:1rem}.landing-hero-banner-text{padding:2.5rem 3rem 1.5rem}.landing-hero-banner-image-container{padding:0 3rem 3rem}.landing-section-content{grid-template-columns:1fr;gap:3rem}.landing-features-grid-spacious,.landing-features-grid-advanced{grid-template-columns:repeat(2,1fr);gap:2rem}.landing-learn{padding:6rem 3rem}.landing-learn-title{font-size:3.5rem}.landing-learn-steps,.landing-learn-tips{grid-template-columns:1fr;gap:2rem}.landing-learn-step{text-align:left}.landing-vision-clean{padding:8rem 3rem}.landing-vision-title{font-size:3.5rem;margin-bottom:5rem}.landing-vision-grid{gap:2.5rem 4rem}.landing-vision-item{font-size:1.25rem}}@media(max-width:768px){.landing-nav-top{padding:1rem 1.5rem}.landing-nav-center{display:none}.landing-nav-pill-container{padding:.25rem;gap:.125rem;flex-wrap:wrap;justify-content:center;max-width:90%}.landing-pill{padding:.5rem 1rem;font-size:.875rem;letter-spacing:.2px}.landing-hero-title{font-size:2.5rem}.landing-hero-subtitle{font-size:1rem}.landing-hero-secondary-content{padding:0 2rem}.landing-hero-secondary-title{font-size:2.5rem}.landing-hero-secondary-subtitle{font-size:1.25rem;margin-bottom:1.5rem}.landing-hero-secondary-body{font-size:.95rem}.landing-hero-banner{grid-template-columns:1fr;padding:6rem 1.5rem;gap:3.5rem;text-align:center}.landing-hero-banner-text{padding:0}.landing-hero-banner-title{font-size:2.2rem;line-height:1.1}.landing-hero-banner-subtitle{font-size:1.1rem;max-width:100%;margin:1.5rem auto}.landing-hero-banner-image-container{padding:0;width:100%;max-width:100%;border-radius:20px}.hero-video{border-radius:20px}.landing-section{padding:4rem 1.5rem}.landing-section-title{font-size:2rem}.landing-vision-clean{padding:6rem 2rem;min-height:auto}.landing-vision-title{font-size:2.25rem;margin-bottom:4rem}.landing-vision-grid{grid-template-columns:1fr;gap:2rem;margin-bottom:4rem}.landing-vision-item{font-size:1.125rem}.landing-vision-finale{font-size:1rem}.landing-features-heading{font-size:2rem}.landing-features-grid-spacious,.landing-features-grid-advanced{grid-template-columns:1fr;gap:1.5rem}.landing-features-tabs{flex-wrap:wrap}.landing-footer-content{grid-template-columns:1fr;gap:2rem}.landing-footer-links{grid-template-columns:1fr}.landing-learn{padding:5rem 2rem}.landing-learn-hero{margin-bottom:5rem}.landing-learn-title{font-size:2.5rem}.landing-learn-subtitle{font-size:1rem}.landing-learn-section{margin-bottom:4rem}.landing-learn-heading{font-size:1.5rem;margin-bottom:2rem}.landing-learn-actions{flex-direction:column}.landing-learn-action{text-align:center}.landing-learn-help{flex-direction:column;gap:1rem}.aivy-marquee{padding:2rem 0 2.5rem;min-height:auto}.marquee-row{margin-bottom:-1vw}.marquee-row .track p{font-size:10vw;-webkit-text-stroke:.7px #fff;margin-right:12px}#footer-text{padding:3rem 1.5rem}.connect-solid,.connect-outline{font-size:10vw}}@media(max-width:480px){.landing-nav-top{margin:1rem;gap:1rem;grid-template-columns:auto 1fr;border-radius:20px}.landing-nav-right{display:none}.landing-hero{padding-top:8rem}.landing-hero-title{font-size:2.25rem;letter-spacing:-.02em}.landing-hero-subtitle{font-size:.9375rem}.landing-btn-primary,.landing-btn-secondary{padding:.875rem 1.25rem;font-size:.875rem;width:100%}.landing-hero-actions{flex-direction:column;width:100%;padding:0 1rem}.landing-section-title,.landing-features-heading{font-size:1.75rem}.landing-feature-card-spacious{padding:2rem 1.5rem}.landing-vision-title{font-size:1.75rem}.landing-learn-title{font-size:2rem}.landing-learn-steps{grid-template-columns:1fr;gap:2rem}.landing-learn-tips{grid-template-columns:1fr}}.signup-split{display:flex;height:100vh;background:#000;overflow:hidden;position:relative}.back-button{position:absolute;top:2rem;left:2rem;z-index:100;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;text-decoration:none;font-size:.9rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);animation:slideInLeft .6s cubic-bezier(.4,0,.2,1)}.back-button:hover{background:#ffffff26;border-color:#ffffff4d;transform:translate(-4px)}.back-button svg{transition:transform .3s cubic-bezier(.4,0,.2,1)}.back-button:hover svg{transform:translate(-2px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.signup-left{flex:1;padding:2rem 3rem;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(180deg,#b07ad8,#6b2fa3 40%,#2a0e3f 75%,#08080c);position:relative;overflow:hidden;animation:slideInLeft .6s cubic-bezier(.4,0,.2,1)}.signup-left:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");opacity:.15;mix-blend-mode:overlay}.signup-brand-card{position:relative;z-index:1;max-width:400px;width:100%;padding-bottom:2rem;animation:slideInUp .8s cubic-bezier(.4,0,.2,1) .2s both}.signup-logo{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .3s both}.signup-logo-icon{width:36px;height:36px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#6b2fa3}.signup-logo-text{font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:-.02em}.signup-brand-title{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.75rem;line-height:1.2;letter-spacing:-.03em;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .4s both}.signup-brand-subtitle{font-size:1rem;color:#ffffffb3;margin-bottom:2rem;line-height:1.5;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .5s both}.signup-steps{display:flex;flex-direction:column;gap:1rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .6s both}.signup-step-item{background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:1rem 1.25rem;color:#ffffffb3;font-size:.9rem;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center;font-weight:500}.signup-step-item.active{background:#fff;color:#000;border-color:#fff;transform:scale(1.02)}.signup-step-item.active.primary{background:linear-gradient(135deg,#b07ad8,#6b2fa3);color:#fff;border-color:#b07ad8;box-shadow:0 4px 16px #b07ad866;font-weight:600}.signup-step-item.clickable{cursor:pointer;text-decoration:none;display:block}.signup-step-item.clickable:hover{background:#ffffff26;border-color:#ffffff4d;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #ffffff1a}.signup-step-item.clickable:active{transform:translateY(0);box-shadow:0 2px 8px #ffffff1a}.signup-step-item.clickable:focus{outline:2px solid rgba(176,122,216,.5);outline-offset:2px}.signup-right{flex:1;padding:2rem 3rem;display:flex;align-items:center;justify-content:center;background:#000;overflow-y:auto;animation:slideInRight .6s cubic-bezier(.4,0,.2,1)}.signup-form-container{max-width:440px;width:100%;animation:slideInUp .8s cubic-bezier(.4,0,.2,1) .2s both}.signup-form-title{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.5rem;letter-spacing:-.02em;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .3s both}.signup-form-subtitle{font-size:.9rem;color:#fff9;margin-bottom:1.5rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .4s both}.signup-social-buttons{display:flex;gap:.75rem;margin-bottom:1.5rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .5s both}.signup-social-btn{flex:1;padding:.875rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:.75rem}.signup-social-btn:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-2px)}.signup-divider{text-align:center;color:#fff6;margin:1.25rem 0;position:relative;font-size:.85rem;animation:fadeIn .6s ease .6s both}.signup-divider:before,.signup-divider:after{content:"";position:absolute;top:50%;width:45%;height:1px;background:#ffffff1a}.signup-divider:before{left:0}.signup-divider:after{right:0}.signup-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .7s both}.signup-input-group{margin-bottom:.75rem}.signup-input-group.full-width{grid-column:span 2}.signup-input{width:100%;padding:.875rem 1.125rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-size:.9rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.signup-input::placeholder{color:#fff6}.signup-input:focus{outline:none;background:#ffffff14;border-color:#6b2fa3;transform:translateY(-2px);box-shadow:0 4px 12px #6b2fa333}.signup-input-helper{font-size:.8rem;color:#ffffff80;margin-top:.35rem}.signup-submit-btn{width:100%;padding:.875rem;background:#fff;border:none;border-radius:10px;color:#000;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);margin-top:1rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .8s both}.signup-submit-btn:hover{background:#ffffffe6;transform:translateY(-2px);box-shadow:0 8px 20px #fff3}.signup-submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.signup-footer-text{text-align:center;color:#fff9;font-size:.875rem;margin-top:1.25rem;animation:fadeIn .6s ease .9s both}.signup-footer-text a{color:#b07ad8;text-decoration:none;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.signup-footer-text a:hover{text-decoration:underline}.signup-error{background:#ea43351a;border:1px solid rgba(234,67,53,.3);color:#ea4335;padding:1rem;border-radius:12px;margin-bottom:1rem;font-size:.9rem;animation:slideInUp .4s cubic-bezier(.4,0,.2,1)}.signup-success{background:#34a8531a;border:1px solid rgba(52,168,83,.3);color:#34a853;padding:1rem;border-radius:12px;margin-bottom:1rem;font-size:.9rem;animation:slideInUp .4s cubic-bezier(.4,0,.2,1)}@media(max-width:1024px){.signup-split{flex-direction:column}.signup-left{min-height:40vh}.signup-brand-title{font-size:2rem}.signup-steps{flex-direction:row;gap:.75rem}.signup-step-item{font-size:.8rem;padding:.75rem 1rem}}@media(max-width:768px){.signup-left,.signup-right{padding:2rem}.signup-form-grid{grid-template-columns:1fr}.signup-input-group.full-width{grid-column:span 1}.signup-steps{flex-direction:column;gap:.75rem}.signup-step-item{font-size:.85rem}.back-button{top:1rem;left:1rem;padding:.625rem 1rem;font-size:.85rem}}.onboarding-container{width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;animation:fadeIn .5s cubic-bezier(.4,0,.2,1)}.onboarding-step{max-width:600px;width:100%;animation:slideInUp .6s cubic-bezier(.4,0,.2,1)}.step-indicator{display:flex;gap:.5rem;justify-content:center;margin-bottom:2rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .1s both}.step-dot{width:8px;height:8px;border-radius:50%;background:#fff3;transition:all .4s cubic-bezier(.4,0,.2,1)}.step-dot.active{width:24px;border-radius:4px;background:#fff}.step-title{font-size:2rem;font-weight:700;color:#fff;text-align:center;margin-bottom:.5rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .2s both}.step-subtitle{font-size:1rem;color:#fff9;text-align:center;margin-bottom:2.5rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .3s both}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .4s both}.option-card{background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:16px;padding:1.5rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center}.option-card:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-4px)}.option-card.selected{background:#6b2fa333;border-color:#b07ad8;transform:scale(1.02)}.option-icon{font-size:2.5rem;margin-bottom:.75rem}.option-label{font-size:1.1rem;font-weight:600;color:#fff;margin-bottom:.25rem}.option-desc{font-size:.85rem;color:#fff9}.chip-container{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:2rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .4s both}.interest-chip{padding:.75rem 1.25rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:24px;color:#fff;font-size:.9rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.interest-chip:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-2px)}.interest-chip.selected{background:#6b2fa34d;border-color:#b07ad8;transform:scale(1.05)}.step-actions{display:flex;gap:1rem;margin-top:2rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1) .5s both}.btn-back,.btn-next{flex:1;padding:.875rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:none}.btn-back{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#fff}.btn-back:hover{background:#ffffff14;transform:translateY(-2px)}.btn-next{background:#fff;color:#000}.btn-next:hover{background:#ffffffe6;transform:translateY(-2px);box-shadow:0 8px 20px #fff3}.btn-next:disabled{opacity:.5;cursor:not-allowed;transform:none}.auth-error{background:#ea43351a;border:1px solid rgba(234,67,53,.3);color:#ea4335;padding:1rem;border-radius:12px;margin-bottom:1rem;font-size:.9rem;text-align:center;animation:slideInUp .4s cubic-bezier(.4,0,.2,1)}@media(max-width:640px){.option-grid{grid-template-columns:1fr}.step-title{font-size:1.5rem}}.privacy-container{min-height:100vh;background:linear-gradient(180deg,#b07ad8,#6b2fa3 40%,#2a0e3f 75%,#08080c);padding:2rem;position:relative}.privacy-content{max-width:800px;margin:4rem auto 0;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:3rem;animation:slideInUp .6s cubic-bezier(.4,0,.2,1)}.privacy-content h1{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:.5rem;letter-spacing:-.02em}.last-updated{color:#fff9;font-size:.9rem;margin-bottom:2rem}.privacy-content section{margin-bottom:2rem}.privacy-content h2{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:.75rem}.privacy-content p{color:#fffc;line-height:1.6;font-size:1rem}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.privacy-content{padding:2rem;margin-top:3rem}.privacy-content h1{font-size:2rem}.privacy-content h2{font-size:1.25rem}}.gamification-container{width:100%;max-width:800px;margin:0 auto}.gamification-loading{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:var(--text-sm)}.xp-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.xp-icon{width:48px;height:48px;background:var(--color-accent-light);color:var(--color-accent);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.xp-info{flex:1}.xp-label{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wider);margin-bottom:.25rem}.xp-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text-primary);letter-spacing:var(--tracking-tight)}.streak-info{display:flex;align-items:center;gap:var(--spacing-xs);padding:.5rem .75rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md)}.streak-icon{font-size:1.25rem}.streak-value{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.gamification-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.gamification-tabs .tab{background:transparent;border:none;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;gap:var(--spacing-xs);border-bottom:2px solid transparent;transition:all var(--transition-base)}.gamification-tabs .tab:hover{color:var(--color-text-secondary)}.gamification-tabs .tab.active{color:var(--color-text-primary);border-bottom-color:var(--color-accent)}.badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--spacing-md)}.badge-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;position:relative;transition:all var(--transition-base)}.badge-card.earned{border-color:var(--color-accent);background:var(--color-bg-elevated)}.badge-card.locked{opacity:.4}.badge-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.badge-icon{font-size:2.5rem;margin-bottom:var(--spacing-sm)}.badge-name{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:.25rem}.badge-desc{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--leading-relaxed)}.badge-earned-mark{position:absolute;top:.5rem;right:.5rem;width:20px;height:20px;background:var(--color-accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.leaderboard-container{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.leaderboard-empty{padding:var(--spacing-xl);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm)}.leaderboard-list{display:flex;flex-direction:column}.leaderboard-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);transition:background var(--transition-base)}.leaderboard-item:last-child{border-bottom:none}.leaderboard-item:hover{background:var(--color-bg-elevated)}.leaderboard-rank{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text-secondary);width:40px;text-align:center;flex-shrink:0}.leaderboard-user{flex:1}.leaderboard-name{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:.125rem}.leaderboard-badges{font-size:var(--text-xs);color:var(--color-text-muted)}.leaderboard-xp{display:flex;align-items:center;gap:.25rem;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-accent)}.gamification-summary{display:flex;align-items:center;gap:var(--spacing-sm);margin-right:var(--spacing-md)}.summary-pill{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);border:1px solid transparent}.xp-pill{background:var(--color-accent-light);color:var(--color-accent);border-color:rgba(var(--color-accent-rgb),.2)}.level-pill{background:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border)}.pill-icon{flex-shrink:0}@media(max-width:768px){.badges-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--spacing-sm)}.xp-card{flex-direction:column;text-align:center;padding:var(--spacing-md)}.streak-info{width:100%;justify-content:center}.gamification-summary{display:flex;gap:.25rem}.summary-pill span:not(.pill-icon){display:none}}@media(max-width:480px){.badges-grid{grid-template-columns:repeat(2,1fr)}.badge-icon{font-size:2rem}.gamification-tabs .tab{padding:var(--spacing-sm);font-size:var(--text-xs)}}:root{--color-bg-primary: #050508;--color-bg-secondary: #0a0a14;--color-bg-tertiary: #10101a;--color-bg-elevated: rgba(20, 20, 35, .7);--color-bg-card: rgba(28, 28, 45, .6);--color-bg-hover: rgba(45, 45, 70, .4);--color-accent: #6366f1;--color-accent-secondary: #8b5cf6;--color-accent-hover: #818cf8;--color-accent-glow: rgba(99, 102, 241, .15);--color-accent-light: rgba(99, 102, 241, .1);--color-text-primary: #f8fafc;--color-text-secondary: #94a3b8;--color-text-muted: #64748b;--color-text-disabled: #475569;--color-success: #10b981;--color-success-light: rgba(16, 185, 129, .1);--color-error: #f43f5e;--color-error-light: rgba(244, 63, 94, .1);--color-warning: #f59e0b;--color-warning-light: rgba(245, 158, 11, .1);--color-border: rgba(255, 255, 255, .08);--color-border-light: rgba(255, 255, 255, .04);--color-border-focus: rgba(99, 102, 241, .4);--glass-blur: blur(12px);--glass-border: 1px solid rgba(255, 255, 255, .1);--glass-bg: rgba(15, 15, 25, .7);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 12px 24px -6px rgba(0, 0, 0, .3);--shadow-lg: 0 20px 40px -8px rgba(0, 0, 0, .4);--shadow-glow: 0 0 20px rgba(99, 102, 241, .2);--color-accent-soft: rgba(99, 102, 241, .12);--color-text: var(--color-text-primary);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .375rem;--radius-md: .625rem;--radius-lg: .875rem;--radius-xl: 1.25rem;--radius-full: 9999px;--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .5)}[data-theme=light]{--color-bg-primary: #f8fafc;--color-bg-secondary: #f1f5f9;--color-bg-tertiary: #e2e8f0;--color-bg-elevated: rgba(255, 255, 255, .8);--color-bg-card: rgba(255, 255, 255, .9);--color-bg-hover: rgba(241, 245, 249, .6);--color-text-primary: #0f172a;--color-text-secondary: #334155;--color-text-muted: #64748b;--color-text-disabled: #94a3b8;--color-text: var(--color-text-primary);--color-accent: #4f46e5;--color-accent-hover: #4338ca;--color-accent-glow: rgba(79, 70, 229, .1);--color-accent-soft: rgba(79, 70, 229, .1);--glass-bg: rgba(255, 255, 255, .7);--color-border: rgba(0, 0, 0, .06);--color-border-focus: rgba(79, 70, 229, .3);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -2px rgba(0, 0, 0, .02);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .08), 0 10px 10px -5px rgba(0, 0, 0, .04)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg-primary);color:var(--color-text-primary);line-height:normal;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle at 0% 0%,rgba(99,102,241,.15) 0%,transparent 40%),radial-gradient(circle at 100% 100%,rgba(139,92,246,.15) 0%,transparent 40%),radial-gradient(circle at 100% 0%,rgba(99,102,241,.1) 0%,transparent 30%),radial-gradient(circle at 0% 100%,rgba(139,92,246,.1) 0%,transparent 30%);z-index:-1;pointer-events:none}[data-theme=light] body:before{background:radial-gradient(circle at 0% 0%,rgba(79,70,229,.05) 0%,transparent 40%),radial-gradient(circle at 100% 100%,rgba(124,58,237,.05) 0%,transparent 40%)}#root{position:relative;z-index:1}:root{--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--text-4xl: 3rem;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 1.75;--tracking-tighter: -.03em;--tracking-tight: -.015em;--tracking-normal: 0;--tracking-wide: .015em;--tracking-wider: .05em}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-text-primary);margin:0}h1{font-size:var(--text-4xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-tighter)}h2{font-size:var(--text-3xl);font-weight:var(--font-semibold)}h3{font-size:var(--text-2xl);font-weight:var(--font-semibold)}h4{font-size:var(--text-xl);font-weight:var(--font-medium)}h5{font-size:var(--text-lg);font-weight:var(--font-medium)}h6{font-size:var(--text-base);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:var(--tracking-wide)}p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text-secondary);margin:0}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.font-light{font-weight:var(--font-light)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.uppercase{text-transform:uppercase;letter-spacing:var(--tracking-wider)}.tracking-tight{letter-spacing:var(--tracking-tight)}.tracking-wide{letter-spacing:var(--tracking-wide)}.inline-icon{display:inline-block;vertical-align:middle;margin-right:var(--spacing-sm);color:var(--color-accent)}.spin-icon{animation:spin 2s linear infinite}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-lg);transition:all var(--transition-base)}.card:hover{border-color:var(--color-border-focus);transform:translateY(-2px);box-shadow:var(--shadow-xl)}.card-primary{background:var(--color-bg-elevated);border:1px solid var(--color-border)}.card-glow{box-shadow:var(--shadow-xl)}.card-header{display:flex;align-items:flex-start;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.card-header-icon{flex-shrink:0;color:var(--color-accent)}.card-title{font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-xs);color:var(--color-text-primary)}.card-subtitle{font-size:.875rem;color:var(--color-text-muted);line-height:1.5}.alert{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;border:1px solid;background:var(--color-bg-elevated)}.alert-success,.alert-error{border-color:var(--color-border-focus);color:var(--color-text-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-lg);border:1px solid var(--color-border);cursor:pointer;transition:all var(--transition-base);text-decoration:none;font-family:inherit;white-space:nowrap;position:relative;overflow:hidden;background:var(--color-bg-elevated);color:var(--color-text-primary)}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.5)}.btn-primary{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-secondary));color:#fff;border:none;box-shadow:0 4px 12px #6366f14d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-accent-hover),var(--color-accent-secondary));box-shadow:0 8px 20px #6366f166,var(--shadow-glow)}.btn-secondary{background:var(--color-bg-elevated);color:var(--color-text-primary);border:var(--glass-border);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-focus)}.btn-outline{background:transparent;border:1px solid var(--color-border);color:var(--color-text-primary)}.btn-outline:hover:not(:disabled){background:var(--color-bg-elevated);border-color:var(--color-border-focus)}.btn-large{padding:1.125rem 2.5rem;font-size:1rem;width:100%;letter-spacing:.01em}.btn-icon{display:inline-flex;align-items:center;gap:var(--spacing-sm)}.info-box{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.info-box-header{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-primary);font-size:.875rem;font-weight:600;margin-bottom:var(--spacing-md)}.info-list{font-size:.875rem;color:var(--color-text-secondary);line-height:1.8;padding-left:1.25rem;margin:0}.info-list li{margin-bottom:var(--spacing-xs)}.upload-area{display:block;cursor:pointer;transition:all var(--transition-base);margin-bottom:var(--spacing-lg)}.upload-content{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);border:2px dashed var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-secondary);transition:all var(--transition-base)}.upload-area:hover .upload-content{border-color:var(--color-border-focus);background:var(--color-bg-tertiary);transform:translateY(-2px)}.upload-icon-wrapper{margin-bottom:var(--spacing-lg)}.upload-icon-main,.file-icon{color:var(--color-accent);transition:all var(--transition-base)}.upload-area:hover .upload-icon-main,.upload-area:hover .file-icon{transform:scale(1.05);color:var(--color-accent-hover)}.spinner{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.upload-text{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.upload-hint{font-size:.75rem;color:var(--color-text-muted)}.progress-bar{width:100%;height:.75rem;background:var(--color-bg-secondary);border-radius:var(--radius-full);overflow:hidden;position:relative;border:1px solid var(--color-border)}.progress-fill{height:100%;background:var(--color-text-primary);border-radius:var(--radius-full);transition:width var(--transition-slow);position:relative;display:flex;align-items:center;justify-content:flex-end;padding-right:var(--spacing-sm)}.progress-percentage{font-size:.625rem;font-weight:700;color:var(--color-bg-primary);position:relative;z-index:1}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-2xl)}.feature-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);transition:all var(--transition-base)}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--color-border-focus)}.feature-icon{width:56px;height:56px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-lg);transition:all var(--transition-base);background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-accent)}.feature-icon-purple,.feature-icon-cyan,.feature-icon-green{background:var(--color-bg-elevated);color:var(--color-accent);border:1px solid var(--color-border)}.feature-card:hover .feature-icon{transform:scale(1.05);border-color:var(--color-border-focus)}.feature-title{font-size:var(--text-md);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-sm);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight)}.feature-text{font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.dashboard{min-height:100vh;padding-bottom:var(--spacing-3xl);background:var(--color-bg-primary)}.dashboard-header{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding:var(--spacing-xl) 0;margin-bottom:var(--spacing-2xl)}.dashboard-header-content{max-width:1200px;margin:0 auto;padding:0 var(--spacing-xl);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-lg)}.dashboard-greeting{flex:1}.greeting-title{font-size:var(--text-3xl);font-weight:var(--font-semibold);margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-md);color:var(--color-text-primary);letter-spacing:var(--tracking-tight)}.greeting-subtitle{font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--color-text-muted)}.dashboard-user{display:flex;align-items:center;gap:var(--spacing-md)}.user-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.dashboard-content{max-width:1200px;margin:0 auto;padding:0 var(--spacing-xl)}.quiz-page{min-height:100vh;padding:1.5rem 1rem;background:var(--color-bg-primary);display:flex;align-items:center;justify-content:center}.quiz-container{max-width:800px;margin:0 auto}.quiz-container-minimal{max-width:700px;width:100%}.loading-state{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-3xl);color:var(--color-text-muted)}.loading-spinner{animation:spin 1s linear infinite;color:var(--color-accent)}.quiz-header-minimal{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.btn-minimal{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-base);font-family:inherit}.btn-minimal:hover{background:var(--color-bg-elevated);border-color:var(--color-border-focus);color:var(--color-text-primary)}.quiz-meta{display:flex;gap:var(--spacing-sm)}.quiz-type-badge{padding:.375rem .75rem;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.quiz-progress-minimal{margin-bottom:1.5rem}.progress-dots{display:flex;gap:var(--spacing-sm);justify-content:center;margin-bottom:.5rem}.progress-dot{width:8px;height:8px;border-radius:50%;background:var(--color-bg-elevated);border:1px solid var(--color-border);transition:all var(--transition-base)}.progress-dot.active{background:var(--color-text-primary);border-color:var(--color-text-primary);transform:scale(1.25)}.progress-dot.answered{background:var(--color-accent);border-color:var(--color-accent)}.progress-text-minimal{text-align:center;font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.quiz-question-minimal{margin-bottom:1.25rem}.question-text-minimal{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin-bottom:1.5rem;line-height:1.35;text-align:center}.quiz-options-grid{display:grid;gap:var(--spacing-md)}.quiz-option-minimal{display:flex;align-items:center;gap:var(--spacing-md);padding:.75rem 1rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;transition:all var(--transition-fast);text-align:left;font-family:inherit;width:100%}.quiz-option-minimal:hover{border-color:var(--color-border-focus);background:var(--color-bg-hover);transform:translate(4px)}.quiz-option-minimal.selected{border-color:var(--color-text-primary);background:var(--color-bg-elevated)}.option-indicator{width:28px;height:28px;border-radius:50%;background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-base)}.quiz-option-minimal.selected .option-indicator{background:var(--color-text-primary);border-color:var(--color-text-primary);color:var(--color-bg-primary)}.option-letter{font-size:.875rem;font-weight:600;color:var(--color-text-muted)}.quiz-option-minimal.selected .option-letter{color:var(--color-bg-primary)}.option-text{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5;flex:1}.quiz-option-minimal.selected .option-text{color:var(--color-text-primary);font-weight:500}.quiz-navigation-minimal{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-3xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}.nav-center-info{flex:1;text-align:center}.answered-count{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.quiz-progress{margin-bottom:var(--spacing-2xl)}.quiz-progress-text{font-size:.875rem;color:var(--color-text-muted);font-weight:600}.quiz-question-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-2xl);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-lg)}.quiz-question-text{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-xl);line-height:1.5}.quiz-option{background:var(--color-bg-elevated);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);cursor:pointer;transition:all var(--transition-base)}.quiz-option:hover{border-color:var(--color-border-focus);background:var(--color-bg-hover);transform:translate(4px)}.quiz-option.selected{border-color:var(--color-text-primary);background:var(--color-bg-tertiary)}.quiz-option-text{font-size:var(--text-base);font-weight:var(--font-normal);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin:0}.quiz-option.selected .quiz-option-text{color:var(--color-text-primary);font-weight:var(--font-semibold)}.quiz-navigation{display:flex;justify-content:space-between;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.results-page{min-height:100vh;padding:var(--spacing-2xl) var(--spacing-xl);background:var(--color-bg-primary)}.results-container{max-width:900px;margin:0 auto}.empty-results-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:60vh;padding:var(--spacing-3xl)}.empty-results-icon{width:120px;height:120px;border-radius:var(--radius-2xl);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-xl);color:var(--color-accent)}.empty-results-state h2{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.empty-results-state p{font-size:.9375rem;color:var(--color-text-muted);max-width:400px;line-height:1.6}.results-header-minimal{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl)}.results-meta{display:flex;gap:var(--spacing-sm)}.results-badge{padding:.375rem .75rem;font-size:.75rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.results-document-info{text-align:center;margin-bottom:var(--spacing-3xl)}.results-document-info h1{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.document-name{display:inline-flex;align-items:center;gap:var(--spacing-sm);font-size:.9375rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.completion-time{font-size:.8125rem;color:var(--color-text-muted)}.results-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-2xl);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-lg)}.section-header-results{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.section-header-results svg{color:var(--color-accent)}.section-header-results h2{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0}.score-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl)}.score-card-main,.accuracy-card-main{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xl);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.score-display-large{display:flex;align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.score-number-large{font-size:4rem;font-weight:800;color:var(--color-text-primary);line-height:1}.score-divider{font-size:2.5rem;font-weight:300;color:var(--color-text-muted)}.score-total{font-size:2.5rem;font-weight:600;color:var(--color-text-secondary)}.score-label-main{font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.accuracy-circle{margin-bottom:var(--spacing-md)}.accuracy-label-main{font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-md)}.performance-badge-main{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:.5rem 1rem;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.performance-icon{font-size:1.25rem}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-xl)}.chart-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl)}.chart-title-minimal{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-lg)}.bar-chart-container{display:flex;gap:var(--spacing-xl);align-items:flex-end;height:200px;padding:var(--spacing-lg) 0}.bar-chart-item{flex:1;display:flex;flex-direction:column;align-items:center}.bar-chart-bar{width:100%;min-height:60px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);position:relative}.bar-correct{background:var(--color-text-primary)}.bar-wrong{background:var(--color-accent)}.bar-value{font-size:1.5rem;font-weight:700;color:var(--color-bg-primary)}.bar-chart-label{display:flex;align-items:center;gap:var(--spacing-xs);margin-top:var(--spacing-md);font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.accuracy-breakdown{padding:var(--spacing-md) 0}.accuracy-stat{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.stat-label{font-size:.875rem;color:var(--color-text-secondary);font-weight:500}.stat-value{font-size:1.5rem;font-weight:700;color:var(--color-text-primary)}.progress-bar-minimal{height:32px;background:var(--color-bg-secondary);border-radius:var(--radius-full);overflow:hidden;border:1px solid var(--color-border);margin-bottom:var(--spacing-lg)}.progress-fill-minimal{height:100%;background:var(--color-text-primary);border-radius:var(--radius-full);transition:width var(--transition-slow)}.benchmark-info{padding:var(--spacing-md);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md)}.benchmark-line{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.benchmark-line span:first-child{color:var(--color-text-secondary)}.benchmark-status{font-weight:600}.benchmark-status.success{color:var(--color-text-primary)}.benchmark-status.below{color:var(--color-accent)}.swot-loading{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-3xl);color:var(--color-text-muted)}.swot-grid-minimal{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--spacing-lg)}.swot-card-minimal{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-base)}.swot-card-minimal:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-border-focus)}.swot-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.swot-header svg{color:var(--color-accent);flex-shrink:0}.swot-header h4{font-size:.9375rem;font-weight:600;color:var(--color-text-primary);margin:0}.swot-card-minimal p{font-size:.875rem;color:var(--color-text-secondary);line-height:1.6;margin:0}.results-actions{display:flex;justify-content:center;gap:var(--spacing-md);margin-top:var(--spacing-2xl)}.results-header{text-align:center;margin-bottom:var(--spacing-2xl)}.score-display{text-align:center;padding:var(--spacing-2xl)}.score-number{font-size:4rem;font-weight:800;color:var(--color-text-primary);line-height:1;margin-bottom:var(--spacing-sm)}.score-label{font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--spacing-md)}.score-accuracy{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-lg)}.chart-container{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-lg)}.chart-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-lg)}.swot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.swot-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-base)}.swot-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-border-focus)}.swot-icon{font-size:2rem;margin-bottom:var(--spacing-md)}.swot-title{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.swot-text{font-size:.875rem;color:var(--color-text-secondary);line-height:1.6}.swot-strength,.swot-weakness,.swot-opportunity,.swot-threat{border-left:3px solid var(--color-accent)}.badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:.375rem .75rem;font-size:.75rem;font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border)}.badge-success,.badge-warning,.badge-error{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border)}input[type=text],input[type=email],input[type=password],textarea{width:100%;padding:.875rem 1rem;font-size:.875rem;font-family:inherit;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);transition:all var(--transition-base)}input:focus,textarea:focus{outline:none;border-color:var(--color-border-focus);background:var(--color-bg-tertiary)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}label{display:block;font-size:.875rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.container-sm{max-width:600px;margin:0 auto}.container-md{max-width:900px;margin:0 auto}.container-lg{max-width:1200px;margin:0 auto}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mb-2xl{margin-bottom:var(--spacing-2xl)}.mt-xs{margin-top:var(--spacing-xs)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fade-in .6s ease-out}.slide-up{animation:slide-up .5s ease-out}.text-gradient{color:var(--color-text-primary)}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.dashboard-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-lg);transition:all var(--transition-base)}.dashboard-section:hover{border-color:var(--color-border-focus);box-shadow:0 8px 32px #0000002e;transform:translateY(-2px)}.dashboard-section-primary{grid-column:span 2}.section-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.section-header h2{font-size:1.375rem;font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;margin:0}.section-header svg{color:var(--color-accent);flex-shrink:0}.section-badge{margin-left:auto;padding:.2rem .8rem;font-size:.6875rem;font-weight:700;color:var(--color-accent);background:transparent;border:1.5px solid var(--color-accent);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.08em}.section-unlocked{border-color:var(--color-border-focus)}.processing-banner{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;color:var(--color-text-secondary)}.processing-spinner{animation:spin 1s linear infinite;color:var(--color-accent)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.survey-complete-badge{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;color:var(--color-text-secondary)}.survey-complete-badge svg{color:var(--color-accent);flex-shrink:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-3xl) var(--spacing-xl);min-height:200px}.empty-icon{width:80px;height:80px;border-radius:var(--radius-xl);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-lg);color:var(--color-accent)}.empty-state h3{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.empty-state p{font-size:.875rem;color:var(--color-text-muted);max-width:320px;line-height:1.6}.overview-content{display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.stat-card{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-bg-elevated);transition:background var(--transition-fast);gap:var(--spacing-md)}.stat-card:last-child{border-bottom:none}.stat-card:hover{background:var(--color-bg-hover)}.stat-card-left{display:flex;align-items:center;gap:var(--spacing-sm)}.stat-card svg{color:var(--color-accent);flex-shrink:0;width:16px;height:16px}.stat-value{font-size:.9375rem;font-weight:600;color:var(--color-text-primary);letter-spacing:-.01em}.stat-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.insights-content,.performance-content{padding:0}.insight-text{font-size:.9375rem;color:var(--color-text-secondary);text-align:center;padding:var(--spacing-xl)}.study-guidance-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.guidance-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-border);background:var(--color-bg-card)}.guidance-header h3{font-size:1rem;font-weight:700;color:var(--color-text-primary);letter-spacing:-.01em;margin:0}.guidance-content{display:flex;flex-direction:column;gap:0}.guidance-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-lg);padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}.guidance-row:last-child{border-bottom:none}.guidance-row:hover{background:var(--color-bg-hover)}.guidance-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.07em;flex-shrink:0;padding-top:.125rem;min-width:140px}.guidance-value{font-size:.9375rem;font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:var(--spacing-sm);flex:1;justify-content:flex-end;text-align:right}.guidance-value svg{color:var(--color-accent);flex-shrink:0}.level-badge{display:inline-flex;padding:.25rem .875rem;background:var(--color-accent);color:var(--color-bg-base);border-radius:var(--radius-full);font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.guidance-action{padding:var(--spacing-lg) var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-sm);border-bottom:none}.guidance-action .guidance-label{margin-bottom:var(--spacing-xs)}.next-action-text{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.65;margin:0;font-style:italic}.priority-topics-list{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;padding:0;margin:0;flex:1;align-items:flex-end}.priority-topics-list li{font-size:.875rem;color:var(--color-text-secondary);padding:.2rem .75rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-full);text-align:right}.insight-card,.performance-card{display:flex;align-items:flex-start;gap:var(--spacing-lg);padding:var(--spacing-xl);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-xl);transition:all var(--transition-base)}.insight-card:hover,.performance-card:hover{border-color:var(--color-border-focus);transform:translateY(-2px)}.insight-card svg,.performance-card svg{color:var(--color-accent);flex-shrink:0;margin-top:.125rem}.insight-card h4,.performance-card h4{font-size:1rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-xs);letter-spacing:-.01em}.insight-card p,.performance-card p{font-size:.9rem;color:var(--color-text-secondary);line-height:1.65;margin:0}.performance-placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl);text-align:center}.section-lock{color:var(--color-text-muted);opacity:.5;margin-left:auto}.state-status-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg) var(--spacing-xl);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-xl);margin-bottom:var(--spacing-lg);transition:all var(--transition-base)}.state-status-card:hover,.state-status-card.success,.state-status-card.progress{border-color:var(--color-border-focus)}.state-status-card svg{color:var(--color-accent);flex-shrink:0;width:24px;height:24px}.state-status-card.success svg{color:var(--color-text-primary)}.state-status-card h4{font-size:1rem;font-weight:700;color:var(--color-text-primary);margin:0 0 .2rem;letter-spacing:-.01em}.state-status-card p{font-size:.875rem;color:var(--color-text-muted);line-height:1.5;margin:0}.state-guidance{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--color-text-muted);padding:var(--spacing-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);line-height:var(--leading-normal);text-align:center;justify-content:center}.state-guidance svg{flex-shrink:0;color:var(--color-accent)}.dashboard-section:not(.section-unlocked){opacity:.6}.dashboard-section:not(.section-unlocked) .empty-state{opacity:1}.section-header{position:relative}.section-header .section-lock{position:absolute;right:0;top:50%;transform:translateY(-50%)}.performance-placeholder svg{color:var(--color-accent)}.performance-placeholder p{font-size:.875rem;color:var(--color-text-muted)}.quiz-actions-content{padding:0;display:flex;flex-direction:column;gap:var(--spacing-md)}.upload-area-compact{display:block;cursor:pointer;transition:all var(--transition-base)}.upload-content-compact{display:flex;align-items:center;gap:var(--spacing-xl);padding:var(--spacing-xl);border:2px dashed var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-elevated);transition:all var(--transition-base)}.upload-area-compact:hover .upload-content-compact{border-color:var(--color-accent);background:var(--color-bg-hover);transform:translateY(-2px)}.upload-icon-wrapper{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:var(--color-bg-card);border:1px solid var(--color-border);flex-shrink:0;color:var(--color-accent)}.upload-icon-main{color:var(--color-text-muted)}.file-icon{color:var(--color-accent)}.upload-text-wrapper{flex:1}.upload-text-compact{font-size:1rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-xs);letter-spacing:-.01em}.upload-hint{font-size:.8125rem;color:var(--color-text-muted)}.info-section{max-width:900px;margin:0 auto}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl)}.auth-card{width:100%;max-width:450px}.auth-error{background:var(--color-error-light);border:1px solid var(--color-border);color:var(--color-text-primary);padding:var(--spacing-md);border-radius:var(--radius-md);font-size:.875rem;margin-bottom:var(--spacing-lg)}@media(max-width:768px){html{font-size:15px}:root{--spacing-2xl: 1.5rem;--spacing-xl: 1.25rem;--spacing-lg: 1rem;--spacing-md: .875rem}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}.dashboard-header-content{flex-direction:column;text-align:center;gap:var(--spacing-md)}.greeting-title{justify-content:center;font-size:var(--text-2xl)}.dashboard-user{width:100%;justify-content:center}.dashboard-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.card{padding:var(--spacing-xl)}.feature-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.overview-content{grid-template-columns:1fr}.quiz-container{padding:var(--spacing-lg)}}@media(max-width:480px){html{font-size:14px}:root{--spacing-3xl: 2rem;--spacing-2xl: 1.5rem;--spacing-xl: 1rem;--spacing-lg: .75rem}.dashboard-header{padding:var(--spacing-lg) 0}.user-avatar{width:40px;height:40px;font-size:1rem}.upload-content{padding:var(--spacing-2xl) var(--spacing-md)}.upload-text{font-size:.9375rem}.card-header{flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-md)}.card-title{font-size:1.25rem}.question-text-minimal{font-size:1.125rem;line-height:1.5}.quiz-option-minimal{padding:1rem}.quiz-navigation-minimal{position:fixed;bottom:0;left:0;right:0;background:var(--color-bg-elevated);border-top:1px solid var(--color-border);padding:var(--spacing-md);flex-direction:row;justify-content:space-between;z-index:100}.quiz-page{padding-bottom:5rem}.nav-center-info{display:none}.score-number{font-size:3rem}.accuracy-label{font-size:.875rem}.charts-grid,.topics-grid{grid-template-columns:1fr}.modal-content{padding:0;max-width:100%;border-radius:var(--radius-xl) var(--radius-xl) 0 0;position:fixed;bottom:0;left:0;right:0}}.new-document-divider{margin-top:var(--spacing-2xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border);display:flex;justify-content:center}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-xl);animation:fade-in .2s ease-out}.modal-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);max-width:500px;width:100%;box-shadow:var(--shadow-2xl);animation:slide-up .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xl);border-bottom:1px solid var(--color-border)}.modal-header h3{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0}.modal-close{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-md);transition:all var(--transition-base);display:flex;align-items:center;justify-content:center}.modal-close:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.modal-body{padding:var(--spacing-xl)}.modal-body p{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--spacing-md)}.modal-info{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);font-size:.875rem;color:var(--color-text-muted);line-height:1.5}.modal-info svg{flex-shrink:0;margin-top:.125rem;color:var(--color-accent)}.modal-actions{display:flex;gap:var(--spacing-md);padding:var(--spacing-xl);border-top:1px solid var(--color-border)}.modal-actions .btn{flex:1}.study-guidance-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-lg);overflow:hidden}.guidance-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border)}.guidance-header svg{color:var(--color-accent);flex-shrink:0}.guidance-header h3{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin:0}.guidance-content{padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-lg)}.guidance-row{display:flex;flex-direction:column;gap:var(--spacing-sm)}.guidance-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.guidance-value{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.9375rem;color:var(--color-text-primary);font-weight:500}.level-badge{display:inline-flex;padding:.375rem .75rem;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.priority-topics-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.priority-topics-list li{display:flex;align-items:flex-start;gap:var(--spacing-sm);font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5;padding-left:var(--spacing-md);position:relative}.priority-topics-list li:before{content:"•";position:absolute;left:0;color:var(--color-accent);font-weight:700}.guidance-action{padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.next-action-text{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.6;margin:var(--spacing-sm) 0 0 0;font-style:italic}.theme-toggle{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:.375rem;cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.theme-toggle:hover{background:var(--color-bg-hover);border-color:var(--color-border-focus);color:var(--color-text-primary)}.theme-toggle svg{width:20px;height:20px}.topic-summary-container{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-top:var(--spacing-lg)}.topic-summary-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.topic-summary-header h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0;letter-spacing:var(--tracking-tight)}.topic-summary-header svg{color:var(--color-accent)}.topic-summary-subtitle{font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--color-text-muted);margin:var(--spacing-xs) 0 var(--spacing-lg) 0;line-height:var(--leading-relaxed)}.topics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.topic-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-base);position:relative;overflow:hidden}.topic-card:hover{border-color:var(--color-border-focus);transform:translateY(-2px);box-shadow:var(--shadow-md)}.topic-number{position:absolute;top:var(--spacing-md);right:var(--spacing-md);width:26px;height:26px;background:var(--color-accent-light);color:var(--color-accent);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--font-bold)}.topic-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0;padding-right:var(--spacing-xl);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight)}.topic-summary{font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin:0 0 var(--spacing-md) 0}.topic-points{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.topic-points li{font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--color-text-muted);line-height:var(--leading-relaxed);padding-left:var(--spacing-md);position:relative}.topic-points li:before{content:"→";position:absolute;left:0;color:var(--color-accent);font-weight:600}@media(max-width:768px){.topics-grid{grid-template-columns:1fr}.topic-summary-container{padding:var(--spacing-lg)}}.app-layout{display:flex;min-height:100vh;background:transparent}.app-main{flex:1;min-width:0;padding:var(--spacing-2xl);overflow-y:auto;display:flex;flex-direction:column}.intelligence-mode.app-main{height:100vh;overflow:hidden;padding:1.25rem 1.5rem}.intelligence-mode .page-header{flex-shrink:0;position:relative;margin-bottom:1rem;border-bottom:1px solid var(--color-border);padding-bottom:.75rem}.intelligence-mode .tutor-layout{flex:1;min-height:0;display:grid;grid-template-columns:1fr 260px;gap:1.25rem}.chat-window{display:flex;flex-direction:column;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:16px;overflow:hidden}.chat-messages{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.sidebar{width:240px;min-height:100vh;background:#0a0a14cc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;padding:var(--spacing-lg) 0;transition:all var(--transition-base);position:sticky;top:0;height:100vh;flex-shrink:0;z-index:100}[data-theme=light] .sidebar{background:#fffc;border-right:1px solid rgba(0,0,0,.05)}.sidebar-collapsed{width:68px}.sidebar-logo{display:flex;align-items:center;gap:var(--spacing-md);padding:0 var(--spacing-lg) var(--spacing-lg);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-md)}.sidebar-logo-icon{width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-text-primary);flex-shrink:0}.sidebar-logo-text{font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:var(--tracking-tight);color:var(--color-text-primary)}.sidebar-toggle{position:absolute;top:var(--spacing-lg);right:-12px;width:24px;height:24px;border-radius:var(--radius-full);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-muted);z-index:10;transition:all var(--transition-fast)}.sidebar-toggle:hover{color:var(--color-text-primary);border-color:var(--color-border-focus)}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:0 var(--spacing-sm);overflow-y:auto}.sidebar-nav-item{display:flex;align-items:center;gap:var(--spacing-md);padding:.6rem var(--spacing-md);border-radius:var(--radius-md);border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);font-family:inherit;cursor:pointer;text-decoration:none;transition:all var(--transition-fast);white-space:nowrap;overflow:hidden;width:100%;text-align:left}.sidebar-nav-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar-nav-item-active{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border)}.sidebar-nav-icon{flex-shrink:0}.sidebar-nav-label{overflow:hidden;text-overflow:ellipsis}.sidebar-bottom{display:flex;flex-direction:column;gap:2px;padding:var(--spacing-md) var(--spacing-sm) 0;border-top:1px solid var(--color-border);margin-top:var(--spacing-md)}.sidebar-user{display:flex;align-items:center;gap:var(--spacing-md);padding:.6rem var(--spacing-md)}.sidebar-user-avatar{width:28px;height:28px;border-radius:var(--radius-full);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--color-text-primary);flex-shrink:0}.sidebar-user-info{overflow:hidden}.sidebar-user-email{font-size:var(--text-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.sidebar-logout-btn{color:var(--color-text-muted)}.sidebar-logout-btn:hover{color:var(--color-text-primary)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-border)}.page-title{font-size:1.5rem;font-weight:800;letter-spacing:-.015em;color:var(--color-text-primary);margin-bottom:.25rem}.page-subtitle{font-size:var(--text-sm);color:var(--color-text-muted);margin:0}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-3xl);color:var(--color-text-muted)}.empty-page-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-3xl);text-align:center;color:var(--color-text-muted)}.empty-page-state h2{font-size:var(--text-xl);color:var(--color-text-primary)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.form-input{padding:.65rem var(--spacing-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--text-sm);font-family:inherit;transition:border-color var(--transition-fast);outline:none}.form-input:focus{border-color:var(--color-border-focus)}.form-error{font-size:var(--text-sm);color:var(--color-text-secondary);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-top:var(--spacing-sm)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mt-2xl{margin-top:var(--spacing-2xl)}.tutor-layout{display:grid;grid-template-columns:1fr 280px;gap:var(--spacing-xl);height:100%}.chat-window{display:flex;flex-direction:column;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-lg);scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.chat-bubble-row{display:flex;align-items:flex-end;gap:var(--spacing-sm)}.chat-row-user{flex-direction:row-reverse}.chat-avatar{width:28px;height:28px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--font-bold);flex-shrink:0}.chat-avatar-ai{background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-text-secondary)}.chat-avatar-user{background:var(--color-text-primary);color:var(--color-bg-primary)}.chat-bubble{max-width:80%;padding:.75rem 1rem;border-radius:12px;font-size:.825rem;line-height:1.55;box-shadow:0 1px 4px #00000008}.chat-bubble-ai{background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-text-primary)}.chat-bubble-user{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-secondary));color:#fff;box-shadow:0 4px 12px #6366f133;border:none}.chat-bubble-user p{color:#fff!important}.chat-bubble-loading{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-muted)}.chat-input-area{display:flex;align-items:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border);background:var(--color-bg-secondary)}.chat-input{flex:1;padding:.65rem var(--spacing-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:var(--text-sm);font-family:inherit;resize:none;outline:none;line-height:1.5;max-height:120px;transition:border-color var(--transition-fast)}.chat-input:focus{border-color:var(--color-border-focus)}.chat-send-btn{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--color-text-primary);border:none;color:var(--color-bg-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.chat-send-btn:hover:not(:disabled){opacity:.85}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.tutor-sidebar-panel{display:flex;flex-direction:column;gap:var(--spacing-md);overflow-y:auto}.tutor-tip-card{background:var(--color-bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:var(--glass-border);border-radius:24px;padding:1.5rem;margin-bottom:var(--spacing-md)}.tutor-tip-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.tutor-tip-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.tutor-tip-list li{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.5;padding-left:var(--spacing-md);position:relative}.tutor-tip-list li:before{content:"";position:absolute;left:0;top:.45em;width:4px;height:4px;border-radius:50%;background:var(--color-border-focus)}.tutor-suggestion-btn{display:block;width:100%;text-align:left;padding:.85rem 1.125rem;margin-bottom:.75rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-primary);font-size:.825rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--transition-fast)}.tutor-suggestion-btn:hover{transform:translateY(-2px);border-color:var(--color-accent);background:var(--color-bg-hover);box-shadow:0 4px 12px #6366f11a}.planner-config-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.planner-doc-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:var(--spacing-xs) var(--spacing-md);margin-bottom:var(--spacing-lg)}.planner-form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:var(--spacing-md)}.planner-countdown{display:flex;align-items:baseline;gap:var(--spacing-xs);margin-top:var(--spacing-lg)}.countdown-number{font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-tighter);color:var(--color-text-primary)}.countdown-label{font-size:var(--text-sm);color:var(--color-text-muted)}.planner-output{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl)}.planner-output-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.planner-output-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary)}.planner-output-meta{font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:var(--spacing-xs) var(--spacing-md)}.planner-overview{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.planner-progress-row{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.planner-progress-label{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap}.planner-progress-bar{flex:1;height:4px;background:var(--color-bg-elevated);border-radius:var(--radius-full);overflow:hidden}.planner-progress-fill{height:100%;background:var(--color-text-primary);border-radius:var(--radius-full);transition:width var(--transition-slow)}.plan-days-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.plan-day-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition-fast)}.plan-day-done{opacity:.6}.plan-day-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);cursor:pointer}.plan-day-header:hover{background:var(--color-bg-hover)}.plan-day-left{display:flex;align-items:center;gap:var(--spacing-md)}.plan-day-right{display:flex;align-items:center;gap:var(--spacing-md);color:var(--color-text-muted)}.plan-day-check{background:none;border:1.5px solid var(--color-border);border-radius:var(--radius-full);width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-border-focus);transition:all var(--transition-fast);flex-shrink:0}.plan-day-check.checked{background:var(--color-text-primary);border-color:var(--color-text-primary);color:var(--color-bg-primary)}.plan-day-label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.plan-day-topic{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-primary)}.plan-day-duration{font-size:var(--text-xs);color:var(--color-text-muted)}.plan-day-body{padding:0 var(--spacing-lg) var(--spacing-lg);border-top:1px solid var(--color-border)}.plan-day-goal{font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--spacing-md) 0;font-style:italic}.plan-task-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.plan-task-item{font-size:var(--text-sm);color:var(--color-text-secondary);padding-left:var(--spacing-lg);position:relative;line-height:1.5}.plan-task-item:before{content:"";position:absolute;left:var(--spacing-xs);top:.55em;width:5px;height:5px;border-radius:50%;border:1.5px solid var(--color-border-focus)}.flashcard-setup{display:flex;justify-content:center;padding-top:var(--spacing-2xl)}.flashcard-setup-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-2xl);max-width:480px;width:100%;text-align:center}.setup-title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.setup-subtitle{font-size:var(--text-sm);color:var(--color-text-muted)}.flashcard-header-actions{display:flex;gap:var(--spacing-sm)}.flashcard-study{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xl);padding-bottom:var(--spacing-2xl)}.flashcard-stats-row{display:flex;align-items:center;gap:var(--spacing-xl);width:100%;justify-content:flex-start}.flashcard-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.flashcard-stat-value{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-text-primary)}.flashcard-stat-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.flashcard-mode-toggle{margin-left:auto;display:flex;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.mode-btn{padding:var(--spacing-xs) var(--spacing-md);background:none;border:none;font-size:var(--text-xs);font-family:inherit;font-weight:var(--font-medium);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.mode-btn:hover:not(:disabled){color:var(--color-text-primary)}.mode-btn-active{background:var(--color-bg-hover);color:var(--color-text-primary)}.mode-btn:disabled{opacity:.4;cursor:not-allowed}.flashcard-progress-row{display:flex;align-items:center;gap:var(--spacing-md);width:100%}.flashcard-progress-text{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap}.flashcard-progress-bar{flex:1;height:3px;background:var(--color-bg-elevated);border-radius:var(--radius-full);overflow:hidden}.flashcard-progress-fill{height:100%;background:var(--color-text-primary);border-radius:var(--radius-full);transition:width var(--transition-slow)}.flashcard-wrapper{width:100%;max-width:580px;height:320px;perspective:1200px;cursor:pointer}.flashcard-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.4,0,.2,1)}.flashcard-wrapper.flipped .flashcard-inner{transform:rotateY(180deg)}.flashcard-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:var(--radius-xl);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);border:1px solid var(--color-border);gap:var(--spacing-md)}.flashcard-front{background:var(--color-bg-secondary)}.flashcard-back{background:var(--color-bg-elevated);transform:rotateY(180deg)}.flashcard-face-label{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-muted);position:absolute;top:var(--spacing-lg);left:var(--spacing-xl)}.flashcard-text{font-size:var(--text-md);font-weight:var(--font-medium);color:var(--color-text-primary);text-align:center;line-height:var(--leading-relaxed);margin:0}.flashcard-tap-hint{font-size:var(--text-xs);color:var(--color-text-muted);position:absolute;bottom:var(--spacing-lg);letter-spacing:var(--tracking-wide)}.flashcard-nav{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:580px}.flashcard-mark-btns{display:flex;gap:var(--spacing-sm)}.flashcard-mark-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-elevated);font-size:var(--text-sm);font-family:inherit;font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary)}.flashcard-mark-btn:hover{border-color:var(--color-border-focus);color:var(--color-text-primary)}.mark-known:hover{background:var(--color-text-primary);color:var(--color-bg-primary);border-color:var(--color-text-primary)}.flashcard-complete{text-align:center;padding:var(--spacing-3xl)}.your-rank-badge{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-primary)}.leaderboard-layout{display:flex;flex-direction:column;gap:var(--spacing-xl)}.podium-row{display:flex;align-items:flex-end;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-xl) 0}.podium-block{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-lg) var(--spacing-xl);min-width:140px;transition:border-color var(--transition-fast)}.podium-rank-1{order:2;padding-top:var(--spacing-2xl);border-color:var(--color-border-focus)}.podium-rank-2{order:1}.podium-rank-3{order:3}.podium-me{border-color:var(--color-accent)}.podium-crown{color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.podium-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text-primary)}.podium-name{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-primary)}.podium-xp{font-size:var(--text-xs);color:var(--color-text-muted)}.podium-base{font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.leaderboard-list{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.leaderboard-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}.leaderboard-row:last-child{border-bottom:none}.leaderboard-row:hover{background:var(--color-bg-hover)}.leaderboard-row-me{background:var(--color-bg-elevated)}.lb-rank{width:32px;text-align:center;flex-shrink:0}.lb-rank-medal{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-full);background:var(--color-bg-elevated);border:1px solid var(--color-border);font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--color-text-primary)}.lb-rank-num{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:var(--font-medium)}.lb-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--color-text-primary);flex-shrink:0}.lb-info{flex:1;min-width:0}.lb-name{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-meta{font-size:var(--text-xs);color:var(--color-text-muted)}.lb-xp{display:flex;align-items:baseline;gap:3px;flex-shrink:0}.lb-xp-value{font-size:var(--text-md);font-weight:var(--font-bold);color:var(--color-text-primary)}.lb-xp-label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:var(--font-medium)}@media(max-width:900px){.sidebar{width:68px}.sidebar-logo-text,.sidebar-nav-label,.sidebar-user-info{display:none}.app-main{padding:var(--spacing-lg)}.tutor-layout{grid-template-columns:1fr;height:auto}.tutor-sidebar-panel{display:none}.planner-form{grid-template-columns:1fr}.podium-row{flex-direction:column;align-items:stretch}.podium-rank-1,.podium-rank-2,.podium-rank-3{order:unset;padding-top:var(--spacing-lg)}}.db-topbar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-2xl);border-bottom:var(--glass-border);background:var(--color-bg-card);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);gap:var(--spacing-md);flex-wrap:wrap;position:sticky;top:0;z-index:90}.db-topbar-left{display:flex;align-items:center;gap:var(--spacing-md)}.db-title{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text-primary);margin:0}.db-state-pill{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);border:1.5px solid var(--color-accent);border-radius:var(--radius-full);padding:.2rem .65rem}.db-topbar-right{display:flex;align-items:center;gap:var(--spacing-sm)}.db-user-avatar{width:34px;height:34px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-bg-elevated),var(--color-bg-secondary));border:var(--glass-border);display:flex;align-items:center;justify-content:center;color:var(--color-accent);box-shadow:0 4px 10px #0003;flex-shrink:0}.db-user-avatar svg{filter:drop-shadow(0 2px 4px rgba(99,102,241,.4))}.db-alert{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-2xl);font-size:.875rem;border-bottom:var(--glass-border);animation:slideInDown .4s cubic-bezier(.16,1,.3,1)}@keyframes slideInDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.db-alert-error{background:#f43f5e1a;color:var(--color-error)}.db-alert-success{background:#10b9811a;color:var(--color-success)}.db-alert-info{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.db-layout{display:grid;grid-template-columns:380px 1fr;gap:var(--spacing-xl);padding:var(--spacing-xl) var(--spacing-2xl);align-items:start}@media(max-width:900px){.db-layout{grid-template-columns:1fr}}.db-col-left{display:flex;flex-direction:column;gap:var(--spacing-lg)}.db-action-card{background:var(--color-bg-card);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-lg);box-shadow:var(--shadow-md);transition:transform var(--transition-base),box-shadow var(--transition-base)}.db-action-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg),var(--shadow-glow)}.db-action-header{display:flex;align-items:flex-start;gap:var(--spacing-md)}.db-action-icon{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-accent);flex-shrink:0}.db-action-title{font-size:1rem;font-weight:700;color:var(--color-text-primary);letter-spacing:-.01em;margin:0 0 .2rem}.db-action-sub{font-size:.8125rem;color:var(--color-text-muted);margin:0;line-height:1.5}.db-action-btns{display:flex;flex-direction:column;gap:var(--spacing-md)}.db-main-btn{width:100%;justify-content:center}.db-topics-preview{display:flex;flex-direction:column;gap:var(--spacing-xs)}.db-topic-chip{display:flex;align-items:center;gap:var(--spacing-sm);padding:.4rem var(--spacing-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:.8125rem;color:var(--color-text-secondary)}.db-topic-num{font-size:.6875rem;font-weight:700;color:var(--color-accent);background:transparent;border:1.5px solid var(--color-accent);border-radius:var(--radius-full);width:18px;height:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.db-topic-more{color:var(--color-text-muted);font-style:italic}.db-new-session-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);background:none;border:none;color:var(--color-text-muted);font-size:.75rem;cursor:pointer;padding:var(--spacing-xs) 0;transition:color var(--transition-fast)}.db-new-session-btn:hover{color:var(--color-text-secondary)}.db-new-session-btn:disabled{opacity:.4;cursor:not-allowed}.db-steps{display:flex;align-items:center;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-lg) var(--spacing-xl);gap:0}.db-step{display:flex;align-items:center;flex:1}.db-step-dot{width:24px;height:24px;border-radius:var(--radius-full);border:2px solid var(--color-border);background:var(--color-bg-elevated);display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;color:var(--color-text-muted);flex-shrink:0;transition:all var(--transition-base)}.db-step-dot.done{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-bg-base)}.db-step-label{font-size:.6875rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-left:var(--spacing-xs);white-space:nowrap}.db-step-label.done{color:var(--color-text-primary)}.db-step-line{flex:1;height:1px;background:var(--color-border);margin:0 var(--spacing-xs);transition:background var(--transition-base)}.db-step-line.done{background:var(--color-accent)}.db-gamification-wrap>*{margin:0}.db-col-right{display:flex;flex-direction:column;gap:var(--spacing-lg)}.db-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.db-feature-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-bg-card);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-xl);text-decoration:none;transition:all var(--transition-base);cursor:pointer;box-shadow:var(--shadow-sm)}.db-feature-card:hover{border-color:var(--color-accent);transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow-lg),var(--shadow-glow);background:var(--color-bg-hover)}.db-feature-icon{width:36px;height:36px;border-radius:var(--radius-lg);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-accent);flex-shrink:0}.db-feature-name{font-size:.9rem;font-weight:700;color:var(--color-text-primary);letter-spacing:-.01em;margin-bottom:.15rem}.db-feature-desc{font-size:.75rem;color:var(--color-text-muted);line-height:1.4}.db-insights-panel{background:var(--color-bg-card);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-md)}.db-panel-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-bg-elevated)}.db-panel-header svg{color:var(--color-accent);flex-shrink:0}.db-panel-header h3{font-size:.875rem;font-weight:700;color:var(--color-text-primary);letter-spacing:-.01em;margin:0;flex:1}.db-panel-badge{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);border:1.5px solid var(--color-accent);border-radius:var(--radius-full);padding:.15rem .5rem}.db-locked-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-2xl) var(--spacing-xl);text-align:center;color:var(--color-text-muted)}.db-locked-state p{font-size:.8125rem;line-height:1.6;max-width:260px;margin:0}.db-guidance-rows{display:flex;flex-direction:column}.db-guidance-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}.db-guidance-row:last-of-type{border-bottom:none}.db-guidance-row:hover{background:var(--color-bg-hover)}.db-guidance-topics{align-items:flex-start;flex-wrap:wrap}.db-g-label{font-size:.6875rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.07em;flex-shrink:0}.db-g-value{font-size:.875rem;font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:var(--spacing-xs)}.db-g-value svg{color:var(--color-accent)}.db-level-badge{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.25rem .75rem;background:var(--color-accent);color:#fff;border-radius:var(--radius-full)}.db-topic-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:flex-end;flex:1}.db-topic-tag{font-size:.6875rem;padding:.2rem .6rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary)}.db-next-action{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-bg-elevated)}.db-next-action svg{color:var(--color-accent);flex-shrink:0;margin-top:.1rem}.db-next-action p{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.6;margin:0;font-style:italic}.db-perf-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);transition:all var(--transition-fast)}.db-perf-card:hover{border-color:var(--color-border-focus);transform:translateY(-1px)}.db-perf-icon{width:36px;height:36px;border-radius:var(--radius-lg);background:var(--color-bg-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-accent);flex-shrink:0}.db-perf-title{font-size:.875rem;font-weight:700;color:var(--color-text-primary);letter-spacing:-.01em;margin-bottom:.15rem}.db-perf-sub{font-size:.75rem;color:var(--color-text-muted)}.btn-sm{padding:.4rem .875rem;font-size:.8125rem}.quick-access-row{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-xl)}.quick-access-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);text-decoration:none;transition:all var(--transition-fast);white-space:nowrap}.quick-access-card:hover{border-color:var(--color-border-focus);color:var(--color-text-primary);transform:translateY(-1px)}.markdown-content{font-family:inherit;line-height:1.7;color:var(--color-text-primary)}.markdown-content h1,.markdown-content h2,.markdown-content h3{margin-top:1.5rem;margin-bottom:1rem;font-weight:700;color:var(--color-text-primary);line-height:1.3}.markdown-content h1{font-size:1.5rem;border-bottom:1px solid var(--color-border);padding-bottom:.5rem}.markdown-content h2{font-size:1.3rem}.markdown-content h3{font-size:1.15rem}.markdown-content p{margin-bottom:1.25rem}.markdown-content strong{font-weight:800;color:var(--color-text-primary)}.markdown-content ul,.markdown-content ol{margin-bottom:1.25rem;padding-left:1.5rem}.markdown-content li{margin-bottom:.6rem}.markdown-content code{background:#ffffff1a;padding:.2rem .4rem;border-radius:4px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.9em}.markdown-content pre{background:var(--color-bg-tertiary);padding:1rem;border-radius:10px;overflow-x:auto;margin-bottom:1.25rem;border:1px solid var(--color-border)}.markdown-content pre code{background:transparent;padding:0;display:block}.markdown-content blockquote{border-left:4px solid var(--color-accent);padding-left:1.25rem;font-style:italic;color:var(--color-text-secondary);margin-bottom:1.25rem}.chat-bubble-ai .markdown-content p:last-child{margin-bottom:0}
