@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Poppins:wght@400;500;600;700;800&display=swap";.navbar{background:#ffffffd9;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 1px 3px #0000000d,0 8px 32px #4a90e214;position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(74,144,226,.1);transition:all var(--transition-base)}.navbar:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color),var(--accent-color));opacity:0;transition:opacity var(--transition-base)}.navbar:hover:before{opacity:1}.navbar-container{max-width:1600px;margin:0 auto;padding:0 2.5rem;display:flex;justify-content:space-between;align-items:center;height:90px}.navbar-brand{display:flex;align-items:center;gap:1rem;text-decoration:none;color:var(--text-primary);font-size:1.75rem;font-weight:800;font-family:Poppins,sans-serif;transition:all var(--transition-base);position:relative}.navbar-brand:hover{transform:translateY(-2px)}.navbar-brand:hover .brand-icon{transform:rotate(10deg) scale(1.1)}.brand-icon{font-size:2.75rem;transition:all var(--transition-bounce);filter:drop-shadow(0 2px 12px rgba(74,144,226,.35))}.brand-name{letter-spacing:-.02em;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-menu{display:flex;list-style:none;gap:.5rem;margin:0;padding:0}.nav-item{display:flex}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.9rem 1.5rem;text-decoration:none;color:var(--text-secondary);border-radius:var(--radius-lg);transition:all var(--transition-base);font-weight:700;font-size:1.05rem;position:relative;overflow:hidden}.nav-link:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));opacity:0;transition:opacity var(--transition-base);border-radius:var(--radius-lg)}.nav-link:hover{color:var(--primary-color);background:#4a90e214;transform:translateY(-2px)}.nav-link:hover .nav-icon{transform:scale(1.15)}.nav-link.active{color:#fff;box-shadow:0 4px 12px #4a90e240;transform:translateY(-1px)}.nav-link.active:before{opacity:1}.nav-link.active .nav-icon,.nav-link.active .nav-label{position:relative;z-index:1}.nav-icon{font-size:1.5rem;transition:all var(--transition-bounce)}.nav-label{font-size:.95rem;letter-spacing:.01em;transition:all var(--transition-base)}.navbar-user{position:relative}.user-button{display:flex;align-items:center;gap:.75rem;padding:.6rem 1.25rem;background:#fff;border:2px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);font-family:Inter,sans-serif;font-weight:700;color:var(--text-primary)}.user-button:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md);transform:translateY(-2px)}.user-avatar{font-size:1.5rem}.user-name{font-size:.95rem}.user-menu{position:absolute;top:calc(100% + .5rem);right:0;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);min-width:200px;padding:.5rem;border:1px solid var(--border-light);animation:fadeInDown .2s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-menu-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;text-decoration:none;color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-base);font-weight:500;width:100%;border:none;background:none;cursor:pointer;font-family:Inter,sans-serif;font-size:.95rem;text-align:left}.user-menu-item:hover{background:var(--background);color:var(--primary-color)}.user-menu-item.logout{color:#ef4444;border-top:1px solid var(--border-light);margin-top:.5rem;padding-top:.75rem}.user-menu-item.logout:hover{background:#fef2f2;color:#dc2626}@media (max-width: 768px){.navbar-container{padding:0 1rem}.nav-menu{gap:.25rem}.nav-link{padding:.5rem .75rem;flex-direction:column;gap:.25rem}.nav-label{font-size:.75rem}.brand-name,.user-name{display:none}.user-button{padding:.5rem}}.landing{width:100%;overflow-x:hidden}.hero-landing{position:relative;min-height:80vh;display:flex;align-items:center;padding:3rem 1.5rem;background:linear-gradient(135deg,#f5f7fa,#e8ecf4);overflow:hidden}.hero-background{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:0}.floating-shape{position:absolute;border-radius:50%;opacity:.1;animation:float 20s infinite ease-in-out}.shape-1{width:400px;height:400px;background:var(--primary-color);top:-100px;right:-100px;animation-delay:0s}.shape-2{width:300px;height:300px;background:var(--secondary-color);bottom:-50px;left:-50px;animation-delay:5s}.shape-3{width:200px;height:200px;background:var(--accent-color);top:50%;right:10%;animation-delay:10s}@keyframes float{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(30px,-30px) rotate(90deg)}50%{transform:translate(-20px,20px) rotate(180deg)}75%{transform:translate(20px,30px) rotate(270deg)}}.hero-content-wrapper{position:relative;z-index:1;max-width:1600px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;align-items:stretch}.hero-text{max-width:600px;height:100%;display:flex;flex-direction:column;justify-content:space-evenly}.hero-title{font-family:Poppins,sans-serif;font-size:3.5rem;font-weight:800;line-height:1.2;color:var(--text-primary);margin-bottom:1.5rem}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-description{font-size:1.5rem;line-height:1.8;color:var(--text-secondary);margin-bottom:2.5rem}.hero-cta{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;border-radius:var(--radius-lg);font-weight:600;font-size:1.5rem;text-decoration:none;transition:all var(--transition-base);cursor:pointer;border:none;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.btn:hover:before{left:100%}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-lg)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.btn-secondary{background:#fff;color:var(--primary-color);border:2px solid var(--primary-color);box-shadow:var(--shadow-md)}.btn-secondary:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-large{padding:1.25rem 2.5rem;font-size:1.125rem}.btn-arrow{transition:transform var(--transition-base);display:inline-block}.btn:hover .btn-arrow{transform:translate(4px)}.hero-note{color:var(--text-tertiary);font-size:.95rem}.hero-visual{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.video-container{position:relative;width:100%;height:600px;max-height:80vh;border-radius:var(--radius-2xl);overflow:hidden;box-shadow:0 18px 60px #141e3c40;border:2px solid rgba(74,144,226,.12)}.hero-video{width:100%;height:100%;object-fit:cover;display:block;transform-origin:center center}.video-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#4a90e22e,#764ba224);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.overlay-content{display:flex;flex-direction:column;gap:.6rem;width:calc(100% - 4rem);height:100%;max-width:none;justify-content:space-between;align-items:stretch}.overlay-item{background:#fff9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-xl);padding:.9rem 2.25rem;display:flex;align-items:center;justify-content:space-around;gap:0rem;box-shadow:0 10px 40px #0a1e3c2e;transition:transform .26s cubic-bezier(.2,.9,.2,1),box-shadow .26s ease;animation:slideInFromRight .9s cubic-bezier(.2,.9,.2,1);animation-fill-mode:both;flex:1;min-height:0;width:100%;text-align:center}.overlay-item-1{animation-delay:.15s}.overlay-item-2{animation-delay:.35s}.overlay-item-3{animation-delay:.55s}.overlay-item-4{animation-delay:.75s}@keyframes slideInFromRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.overlay-item:hover{transform:translate(-8px) scale(1.03);box-shadow:0 20px 60px #0a1e3c40;background:#fffffffa}.overlay-icon{font-size:2.6rem;line-height:1;flex-shrink:0;margin-right:.15rem}.overlay-text{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.3rem}@media (max-width: 900px){.video-container{height:420px}.hero-content-wrapper{grid-template-columns:1fr;gap:2rem}.overlay-content{max-width:100%;height:auto;justify-content:center;gap:.75rem;width:100%}.overlay-item{flex:none}}.overlay-icon{font-size:2.5rem;flex-shrink:0;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.overlay-text{flex:1}.overlay-title{font-size:1.95rem;font-weight:800;font-family:Poppins,sans-serif;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.overlay-subtitle{font-size:1.25rem;color:var(--text-secondary);font-weight:600;opacity:.95}.features-section{padding:4rem 2rem 6rem;background:#fff}.section-header{text-align:center;max-width:800px;margin:0 auto 4rem}.section-title{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem}.section-subtitle{font-size:1.125rem;color:var(--text-secondary);line-height:1.6}.features-grid{max-width:1600px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.feature-card{background:#fff;padding:2.5rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--border-light);transition:all var(--transition-base)}.feature-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-color:var(--primary-light)}.feature-icon-wrapper{width:80px;height:80px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;font-size:2.5rem}.feature-icon-wrapper.primary{background:linear-gradient(135deg,#4a90e21a,#4a90e233)}.feature-icon-wrapper.secondary{background:linear-gradient(135deg,#50c8781a,#50c87833)}.feature-icon-wrapper.accent{background:linear-gradient(135deg,#ff6b9d1a,#ff6b9d33)}.feature-title{font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.feature-description{color:var(--text-secondary);line-height:1.7;margin-bottom:1.5rem}.feature-list{list-style:none;padding:0;margin:0}.feature-list li{padding:.5rem 0;color:var(--text-secondary);display:flex;align-items:center;gap:.5rem}.stats-section{padding:4rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2)}.stats-container{max-width:1600px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:3rem}.stat-item{text-align:center;color:#fff}.stat-number{font-size:3rem;font-weight:800;font-family:Poppins,sans-serif;margin-bottom:.5rem}.stat-label{font-size:1rem;opacity:.9;text-transform:uppercase;letter-spacing:1px}.how-it-works{padding:6rem 2rem;background:var(--background)}.steps-container{max-width:1600px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.step{display:flex;align-items:center;gap:2rem;background:#fff;padding:2rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.step:hover{transform:translate(8px);box-shadow:var(--shadow-lg)}.step-number{width:60px;height:60px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;flex-shrink:0}.step-content h3{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.step-content p{color:var(--text-secondary);line-height:1.6}.cta-section{padding:6rem 2rem;background:linear-gradient(135deg,#f5f7fa,#e8ecf4);text-align:center}.cta-content{max-width:1600px;margin:0 auto}.cta-title{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem}.cta-description{font-size:1.25rem;color:var(--text-secondary);line-height:1.8;margin-bottom:2.5rem}.cta-buttons{margin-bottom:1.5rem}.cta-note{color:var(--text-tertiary);font-size:.95rem}@media (max-width: 900px){.video-container{height:360px}.hero-content-wrapper{grid-template-columns:1fr;gap:1.25rem}.hero-landing{padding:2.5rem 1rem}.hero-title{font-size:2rem;line-height:1.15}.hero-description{font-size:1rem;margin-bottom:1.25rem}.hero-cta{gap:.5rem}.btn{padding:.75rem 1.25rem}.overlay-content{max-width:100%;height:auto;justify-content:center;gap:.6rem;width:100%;padding:0 .5rem}.overlay-item{flex:none;padding:.6rem .8rem;border-radius:12px}.overlay-icon{font-size:1.2rem;margin-right:.25rem}.overlay-title{font-size:1.1rem}.overlay-subtitle{font-size:.95rem}.floating-shape{display:none}}@media (max-width: 640px){.hero-landing{padding:3rem 1.5rem}.hero-title{font-size:2rem}.hero-description{font-size:1rem}.hero-cta{flex-direction:column}.btn{width:100%;justify-content:center}.video-container{height:350px}.overlay-content{gap:1rem;padding:1rem}.overlay-item{padding:1.25rem 1.5rem;gap:1rem}.overlay-icon{font-size:2rem}.overlay-title{font-size:1.1rem}.overlay-subtitle{font-size:.9rem}.stats-container{grid-template-columns:1fr;gap:1.5rem}.step{flex-direction:column;text-align:center}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}.auth-background{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);z-index:0}.auth-shape{position:absolute;border-radius:50%;opacity:.1;background:#fff}.shape-1{width:500px;height:500px;top:-100px;right:-100px;animation:float 20s infinite ease-in-out}.shape-2{width:400px;height:400px;bottom:-100px;left:-100px;animation:float 25s infinite ease-in-out 5s}.auth-content{position:relative;z-index:1;width:100%;max-width:480px}.auth-card{background:#fff;border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);padding:3rem;margin-bottom:1.5rem}.auth-header{text-align:center;margin-bottom:2.5rem}.auth-logo{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;margin-bottom:2rem;transition:transform var(--transition-base)}.auth-logo:hover{transform:scale(1.05)}.logo-icon{font-size:2.5rem}.logo-text{font-family:Poppins,sans-serif;font-size:1.75rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-title{font-family:Poppins,sans-serif;font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.auth-subtitle{color:var(--text-secondary);font-size:1rem;line-height:1.6}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-weight:600;font-size:.95rem;color:var(--text-primary)}.form-input{padding:.875rem 1rem;border:2px solid var(--border);border-radius:var(--radius-md);font-size:1rem;font-family:Inter,sans-serif;transition:all var(--transition-base);background:var(--background)}.form-input:focus{outline:none;border-color:var(--primary-color);background:#fff;box-shadow:0 0 0 3px #4a90e21a}.form-input.error{border-color:#ef4444;background:#fef2f2}.form-input.error:focus{box-shadow:0 0 0 3px #ef44441a}.form-input:disabled{opacity:.6;cursor:not-allowed}.form-error{color:#ef4444;font-size:.875rem;display:flex;align-items:center;gap:.25rem}.form-hint{color:var(--text-tertiary);font-size:.875rem}.form-options{display:flex;align-items:center;justify-content:space-between;margin-top:-.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-color)}.checkbox-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.link-text{color:var(--text-secondary);text-decoration:none;font-size:.95rem;transition:color var(--transition-base)}.link-text:hover{color:var(--primary-color)}.link-primary{color:var(--primary-color);text-decoration:none;font-weight:600;transition:color var(--transition-base)}.link-primary:hover{color:var(--primary-dark);text-decoration:underline}.btn-full{width:100%;justify-content:center;margin-top:.5rem;position:relative}.btn:disabled{opacity:.7;cursor:not-allowed}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-footer{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-light);text-align:center}.auth-footer p{color:var(--text-secondary);font-size:.95rem}.auth-notice{text-align:center;color:#fff;font-size:.875rem;opacity:.9}.auth-notice a{color:#fff;text-decoration:underline;font-weight:600}@media (max-width: 640px){.auth-container{padding:1.5rem}.auth-card{padding:2rem 1.5rem}.auth-title{font-size:1.75rem}.auth-subtitle{font-size:.95rem}.logo-text{font-size:1.5rem}.form-options{flex-direction:column;align-items:flex-start;gap:.75rem}}@media (max-width: 480px){.auth-card{padding:2rem 1.25rem}}.dashboard{max-width:1600px;margin:0 auto;padding:0}.dashboard-hero{position:relative;padding:var(--space-3xl) var(--space-xl);margin-bottom:var(--space-3xl);overflow:hidden;background:linear-gradient(135deg,#667eea14,#764ba214);border-radius:0 0 var(--radius-2xl) var(--radius-2xl)}.hero-background{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(74,144,226,.1) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(80,200,120,.1) 0%,transparent 50%);opacity:.6;animation:pulse 8s ease-in-out infinite}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(20deg)}75%{transform:rotate(-20deg)}}.hero-subtitle{font-size:clamp(1.1rem,2vw,1.4rem);color:var(--text-secondary);margin-bottom:var(--space-2xl);font-weight:500;opacity:0}.hero-stats{display:flex;justify-content:center;align-items:center;gap:var(--space-xl);flex-wrap:wrap;opacity:0}.hero-stat-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.hero-stat-value{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:Poppins,sans-serif}.hero-stat-label{font-size:.9rem;color:var(--text-tertiary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.hero-stat-divider{width:2px;height:50px;background:linear-gradient(to bottom,transparent,var(--border),transparent)}.dashboard-content{padding:0 var(--space-xl)}.section-title{font-size:clamp(1.75rem,3vw,2.25rem);color:var(--text-primary);margin-bottom:var(--space-xl);font-weight:700;opacity:0;padding-left:var(--space-sm);border-left:4px solid var(--primary-color)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-lg);margin-bottom:var(--space-3xl)}.stat-card{background:var(--surface);border-radius:var(--radius-xl);padding:var(--space-xl);display:flex;align-items:center;gap:var(--space-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base);border:1px solid var(--border-light);position:relative;overflow:hidden;opacity:0}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#4a90e208,#50c87808);opacity:0;transition:opacity var(--transition-base)}.stat-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-xl);border-color:var(--primary-color)}.stat-card:hover:before{opacity:1}.stat-icon-wrapper{width:70px;height:70px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;transition:all var(--transition-bounce)}.stat-icon-wrapper.games{background:linear-gradient(135deg,#6366f11a,#8b5cf61a)}.stat-icon-wrapper.score{background:linear-gradient(135deg,#10b9811a,#0596691a)}.stat-icon-wrapper.streak{background:linear-gradient(135deg,#f973161a,#ea580c1a)}.stat-icon-wrapper.assessment{background:linear-gradient(135deg,#3b82f61a,#2563eb1a)}.stat-card:hover .stat-icon-wrapper{transform:rotate(5deg) scale(1.1)}.stat-icon{font-size:2.25rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.stat-content{flex:1;position:relative;z-index:1}.stat-content h3{font-size:2.5rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 var(--space-xs) 0;font-weight:800;font-family:Poppins,sans-serif}.stat-content p{font-size:.95rem;color:var(--text-secondary);margin:0 0 var(--space-xs) 0;font-weight:600}.stat-trend{font-size:.85rem;color:var(--text-tertiary);font-weight:500;display:flex;align-items:center;gap:var(--space-xs)}.stat-trend.positive{color:var(--success-color)}.action-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-xl);margin-bottom:var(--space-3xl);padding:0 var(--space-xl)}.action-card{background:var(--surface);border-radius:var(--radius-2xl);padding:var(--space-2xl);text-decoration:none;color:var(--text-primary);box-shadow:var(--shadow-md);transition:all var(--transition-base);border:2px solid var(--border-light);text-align:center;position:relative;overflow:hidden;opacity:0}.action-card-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(74,144,226,.15) 0%,transparent 70%);opacity:0;transition:opacity var(--transition-slow)}.action-card:hover .action-card-glow{opacity:1;animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.action-card:hover{transform:translateY(-12px) scale(1.02);box-shadow:var(--shadow-2xl);border-color:var(--primary-color)}.action-card.primary{background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff;border:none;box-shadow:0 8px 32px #4a90e24d}.action-card.primary:hover{box-shadow:0 12px 48px #4a90e266}.action-card.primary .action-card-glow{background:radial-gradient(circle,rgba(255,255,255,.15) 0%,transparent 70%)}.action-icon{font-size:3.5rem;margin-bottom:var(--space-lg);filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));transition:all var(--transition-bounce);position:relative;z-index:1}.action-card:hover .action-icon{transform:scale(1.15) rotate(5deg)}.action-card h3{font-size:1.6rem;margin-bottom:var(--space-md);font-weight:700;position:relative;z-index:1}.action-card p{font-size:1.05rem;opacity:.9;line-height:1.6;margin-bottom:var(--space-lg);position:relative;z-index:1}.action-arrow{display:inline-block;font-size:1.5rem;font-weight:700;opacity:0;transform:translate(-10px);transition:all var(--transition-base);position:relative;z-index:1}.action-card:hover .action-arrow{opacity:1;transform:translate(0)}.quick-tips{background:var(--surface);border-radius:var(--radius-2xl);padding:var(--space-2xl);box-shadow:var(--shadow-md);border:1px solid var(--border-light);margin:0 var(--space-xl) var(--space-2xl);opacity:0}.tips-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xl);flex-wrap:wrap;gap:var(--space-md)}.tips-header h2{color:var(--text-primary);font-size:clamp(1.5rem,3vw,2rem);font-weight:700}.tips-badge{background:linear-gradient(135deg,var(--secondary-color),var(--success-color));color:#fff;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full);font-size:.85rem;font-weight:600;letter-spacing:.5px;box-shadow:0 4px 12px #50c8784d}.tips-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg)}.tip-item{display:flex;gap:var(--space-md);padding:var(--space-lg);background:linear-gradient(135deg,#4a90e208,#50c87808);border-radius:var(--radius-lg);border:1px solid var(--border-light);transition:all var(--transition-base)}.tip-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--primary-color)}.tip-icon{font-size:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:var(--radius-md);flex-shrink:0;box-shadow:var(--shadow-sm)}.tip-content h4{color:var(--text-primary);margin-bottom:var(--space-xs);font-size:1.1rem;font-weight:700}.tip-content p{color:var(--text-secondary);font-size:.95rem;line-height:1.6}@media (max-width: 768px){.dashboard{padding:1rem}.dashboard-header h1{font-size:2rem}.stats-grid,.action-cards{grid-template-columns:1fr}}.assessment-page{max-width:1600px;margin:0 auto;padding:2rem}.assessment-header{text-align:center;margin-bottom:2rem}.assessment-header h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:.5rem}.info-banner{background:linear-gradient(135deg,#4a90e21a,#357abd1a);border-radius:12px;padding:1.5rem;margin-bottom:2rem;border-left:4px solid var(--primary-color)}.info-banner h3{color:var(--primary-color);margin-bottom:.75rem}.info-banner p{color:var(--text-secondary);line-height:1.6}.tests-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.test-card{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow);transition:transform .2s,box-shadow .2s;border:2px solid var(--border);text-align:center}.test-card:hover{transform:translateY(-6px);box-shadow:0 6px 20px var(--shadow-hover);border-color:var(--primary-color)}.test-icon{font-size:3rem;margin-bottom:1rem}.test-card h3{color:var(--text-primary);margin-bottom:.75rem;font-size:1.3rem}.test-description{color:var(--text-secondary);margin-bottom:1rem;line-height:1.5}.test-meta{display:flex;justify-content:center;gap:1rem;margin-bottom:1.5rem}.meta-item{font-size:.9rem;color:var(--text-secondary);padding:.4rem .8rem;background:var(--background);border-radius:6px}.start-test-btn{background:var(--primary-color);color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .3s,transform .2s;width:100%}.start-test-btn:hover{background:var(--primary-dark);transform:scale(1.02)}.assessment-history{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow)}.assessment-history h2{color:var(--text-primary);margin-bottom:1.5rem}.history-list{display:flex;flex-direction:column;gap:1rem}.history-item{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:var(--background);border-radius:8px;transition:background .2s}.history-item:hover{background:#4a90e20d}.history-icon{font-size:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:10px}.history-content{flex:1}.history-content h4{color:var(--text-primary);margin-bottom:.25rem}.history-content p{color:var(--text-secondary);font-size:.9rem}.history-score{text-align:center}.score-value{display:block;font-size:1.5rem;font-weight:700;color:var(--secondary-color)}.score-label{font-size:.85rem;color:var(--text-secondary)}.test-view{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow)}.back-btn{background:none;border:1px solid var(--border);padding:.5rem 1rem;border-radius:6px;color:var(--text-secondary);cursor:pointer;margin-bottom:2rem;transition:all .2s}.test-intro,.test-active,.test-result{max-width:700px;margin:0 auto;text-align:center}.test-intro h2,.test-result h2{color:var(--text-primary);margin-bottom:2rem;font-size:2rem}.test-instructions{text-align:left;background:var(--background);padding:1.5rem;border-radius:8px;margin-bottom:2rem}.test-instructions h3{color:var(--primary-color);margin-bottom:1rem}.test-instructions ul{list-style:none;padding:0}.test-instructions li{color:var(--text-secondary);padding:.5rem 0 .5rem 1.5rem;position:relative}.test-instructions li:before{content:"•";position:absolute;left:0;color:var(--primary-color);font-weight:700}.begin-btn,.view-report-btn{background:var(--primary-color);color:#fff;border:none;padding:1rem 3rem;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s;text-decoration:none;display:inline-block}.begin-btn:hover,.view-report-btn:hover{background:var(--primary-dark);transform:scale(1.05)}.test-progress{margin-bottom:2rem}.progress-bar{width:100%;height:8px;background:var(--background);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:var(--secondary-color);transition:width .3s}.progress-text{color:var(--text-secondary);font-size:.9rem}.test-question{margin-bottom:2rem}.test-question h3{color:var(--text-primary);margin-bottom:1.5rem}.sequence-display{display:flex;justify-content:center;gap:1rem;margin:2rem 0}.sequence-item{font-size:3rem}.question-text{font-size:1.2rem;color:var(--text-primary);margin-bottom:2rem}.answer-options{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:500px;margin:0 auto}.answer-btn{padding:1rem;background:var(--surface);border:2px solid var(--border);border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s}.answer-btn:hover{background:var(--background);border-color:var(--primary-color);transform:scale(1.05)}.complete-demo-btn{margin-top:2rem;padding:.75rem 2rem;background:var(--secondary-color);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.95rem}.test-result{padding:2rem}.result-icon{font-size:4rem;margin-bottom:1rem}.result-score{margin:2rem 0}.score-large{display:block;font-size:4rem;font-weight:700;color:var(--secondary-color);margin-bottom:.5rem}.result-details{text-align:left;background:var(--background);padding:1.5rem;border-radius:8px;margin:2rem 0}.result-details h3{color:var(--primary-color);margin-bottom:.75rem}.result-details p{color:var(--text-secondary);line-height:1.6;margin-bottom:1rem}.result-details h4{color:var(--text-primary);margin:1rem 0 .5rem}.result-details ul{list-style:none;padding:0}.result-details li{color:var(--text-secondary);padding:.5rem 0 .5rem 1.5rem;position:relative}.result-details li:before{content:"✓";position:absolute;left:0;color:var(--secondary-color);font-weight:700}@media (max-width: 768px){.assessment-page{padding:1rem}.tests-grid,.answer-options{grid-template-columns:1fr}}.games-page{max-width:1600px;margin:0 auto;padding:2rem}.games-header{text-align:center;margin-bottom:2rem}.games-header h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:.5rem}.category-filters{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.filter-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--surface);border:2px solid var(--border);border-radius:25px;cursor:pointer;transition:all .3s;font-size:1rem;color:var(--text-secondary)}.filter-btn:hover{background:var(--background);border-color:var(--primary-color);color:var(--primary-color)}.filter-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.filter-icon{font-size:1.25rem}.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.game-card{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow);transition:transform .2s,box-shadow .2s;border:2px solid var(--border);text-align:center;display:flex;flex-direction:column}.game-card:hover{transform:translateY(-6px);box-shadow:0 6px 20px var(--shadow-hover);border-color:var(--primary-color)}.game-icon{font-size:3.5rem;margin-bottom:1rem}.game-card h3{color:var(--text-primary);margin-bottom:.75rem;font-size:1.3rem}.game-description{color:var(--text-secondary);margin-bottom:1rem;line-height:1.5;flex:1}.game-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:.75rem;background:var(--background);border-radius:8px}.difficulty-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600;text-transform:uppercase}.difficulty-badge.difficulty-easy{background:#50c87833;color:var(--secondary-color)}.difficulty-badge.difficulty-medium{background:#ffc10733;color:#f57c00}.difficulty-badge.difficulty-hard{background:#f4433633;color:#d32f2f}.plays-count{font-size:.9rem;color:var(--text-secondary)}.play-btn{background:var(--primary-color);color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.play-btn:hover{background:var(--primary-dark);transform:scale(1.05)}.games-stats{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow)}.games-stats h2{color:var(--text-primary);margin-bottom:1.5rem;text-align:center}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem}.stat-box{text-align:center;padding:1.5rem;background:var(--background);border-radius:8px}.stat-box .stat-value{display:block;font-size:2rem;font-weight:700;color:var(--primary-color);margin-bottom:.5rem}.stat-box .stat-label{display:block;font-size:.9rem;color:var(--text-secondary)}.back-btn{background:none;border:1px solid var(--border);padding:.5rem 1rem;border-radius:6px;color:var(--text-secondary);cursor:pointer;margin-bottom:2rem;transition:all .2s;font-size:1rem}.back-btn:hover{background:var(--background);border-color:var(--primary-color);color:var(--primary-color)}.game-play{max-width:800px;margin:0 auto;background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow)}.game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border)}.game-header h2{color:var(--text-primary);font-size:1.8rem}.game-score{font-size:1.5rem;font-weight:700;color:var(--secondary-color)}.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.memory-card{aspect-ratio:1;cursor:pointer;perspective:1000px}.card-inner{width:100%;height:100%;position:relative;transition:transform .6s;transform-style:preserve-3d}.memory-card.flipped .card-inner{transform:rotateY(180deg)}.card-front,.card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:3rem;box-shadow:0 2px 8px var(--shadow)}.card-front{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;font-weight:700}.card-back{background:#fff;border:2px solid var(--border);transform:rotateY(180deg)}.memory-card.matched .card-back{background:#50c8781a;border-color:var(--secondary-color)}.game-instructions{text-align:center;color:var(--text-secondary);font-size:1.1rem}.game-complete{max-width:600px;margin:0 auto;text-align:center;background:var(--surface);border-radius:12px;padding:3rem;box-shadow:0 2px 8px var(--shadow)}.complete-icon{font-size:5rem;margin-bottom:1rem}.game-complete h2{color:var(--text-primary);font-size:2.5rem;margin-bottom:2rem}.final-score{margin:2rem 0;padding:2rem;background:var(--background);border-radius:12px}.final-score .score-value{display:block;font-size:4rem;font-weight:700;color:var(--secondary-color);margin-bottom:.5rem}.final-score .score-label{display:block;font-size:1.2rem;color:var(--text-secondary)}.complete-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.play-again-btn,.done-btn{padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;border:none}.play-again-btn{background:var(--primary-color);color:#fff}.play-again-btn:hover{background:var(--primary-dark)}.done-btn{background:var(--surface);color:var(--text-primary);border:2px solid var(--border)}.done-btn:hover{background:var(--background)}@media (max-width: 768px){.games-page{padding:1rem}.games-grid{grid-template-columns:1fr}.memory-grid{grid-template-columns:repeat(4,1fr);gap:.5rem}.card-front,.card-back{font-size:2rem}}.support-page{max-width:1600px;margin:0 auto;padding:2rem}.support-header{text-align:center;margin-bottom:2rem}.support-header h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:.5rem}.tab-navigation{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.tab-btn{padding:.75rem 2rem;background:var(--surface);border:2px solid var(--border);border-radius:8px;cursor:pointer;transition:all .3s;font-size:1rem;color:var(--text-secondary);font-weight:500}.tab-btn:hover{background:var(--background);border-color:var(--primary-color);color:var(--primary-color)}.tab-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.tab-content{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.search-bar{display:flex;gap:1rem;margin-bottom:2rem}.search-input{flex:1;padding:1rem;border:2px solid var(--border);border-radius:8px;font-size:1rem;transition:border-color .3s}.search-input:focus{outline:none;border-color:var(--primary-color)}.search-btn{padding:1rem 2rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:background .3s}.search-btn:hover{background:var(--primary-dark)}.specialists-list{display:flex;flex-direction:column;gap:1.5rem}.specialist-card{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow);border:1px solid var(--border);transition:box-shadow .3s}.specialist-card:hover{box-shadow:0 4px 16px var(--shadow-hover)}.specialist-header{display:flex;align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.specialist-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;flex-shrink:0}.specialist-info{flex:1;min-width:200px}.specialist-info h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:.25rem}.specialty{color:var(--text-secondary);margin-bottom:.5rem}.rating{display:flex;align-items:center;gap:.5rem}.stars{color:#f59e0b;font-weight:600}.review-count{color:var(--text-secondary);font-size:.9rem}.specialist-status{margin-left:auto}.status-badge{padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}.status-badge.accepting{background:#50c87833;color:var(--secondary-color)}.status-badge.not-accepting{background:#9ca3af33;color:#6b7280}.specialist-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;padding:1.5rem;background:var(--background);border-radius:8px}.detail-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary)}.detail-icon{font-size:1.2rem}.specialist-actions{display:flex;gap:1rem}.view-profile-btn,.book-btn{padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;border:none}.view-profile-btn{background:var(--surface);color:var(--text-primary);border:2px solid var(--border)}.view-profile-btn:hover{background:var(--background);border-color:var(--primary-color)}.book-btn{background:var(--primary-color);color:#fff}.book-btn:hover{background:var(--primary-dark)}.roadmap-section{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow)}.roadmap-section h2{color:var(--text-primary);margin-bottom:1rem;font-size:2rem}.roadmap-intro{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem;line-height:1.6}.roadmap-steps{display:flex;flex-direction:column;gap:2rem}.roadmap-step{display:flex;gap:1.5rem;align-items:flex-start}.step-number{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;flex-shrink:0}.step-content{flex:1;padding:1.5rem;background:var(--background);border-radius:8px;border-left:4px solid var(--primary-color)}.step-content h3{color:var(--text-primary);margin-bottom:.75rem}.step-content p{color:var(--text-secondary);line-height:1.6;margin-bottom:1rem}.step-action{background:var(--primary-color);color:#fff;border:none;padding:.5rem 1.5rem;border-radius:6px;cursor:pointer;font-weight:600;transition:background .3s}.step-action:hover{background:var(--primary-dark)}.info-box{padding:1rem;background:#4a90e21a;border-radius:6px;border-left:3px solid var(--primary-color);margin-top:1rem}.conversation-starters{margin-top:3rem;padding:2rem;background:#50c8780d;border-radius:12px;border:2px solid rgba(80,200,120,.2)}.conversation-starters h3{color:var(--text-primary);margin-bottom:1.5rem}.starter-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.starter-card{padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px var(--shadow)}.starter-card h4{color:var(--primary-color);margin-bottom:.75rem}.starter-card p{color:var(--text-secondary);font-style:italic;line-height:1.5}.resources-section{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow)}.resources-section h2{color:var(--text-primary);margin-bottom:2rem;font-size:2rem}.resource-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.resource-category{background:var(--background);padding:1.5rem;border-radius:8px}.resource-category h3{color:var(--text-primary);margin-bottom:1rem;font-size:1.3rem}.resource-list{list-style:none;padding:0}.resource-list li{padding:1rem 0;border-bottom:1px solid var(--border)}.resource-list li:last-child{border-bottom:none}.resource-link{color:var(--primary-color);text-decoration:none;font-weight:600;transition:color .3s}.resource-link:hover{color:var(--primary-dark);text-decoration:underline}.resource-list p{color:var(--text-secondary);font-size:.95rem;margin-top:.25rem;line-height:1.4}.resource-list strong{color:var(--text-primary)}@media (max-width: 768px){.support-page{padding:1rem}.specialist-header{flex-direction:column;align-items:center;text-align:center}.specialist-status{margin-left:0}.specialist-actions{flex-direction:column}.specialist-actions button{width:100%}.roadmap-step{flex-direction:column}.resource-categories{grid-template-columns:1fr}}.progress-page{max-width:1600px;margin:0 auto;padding:2rem}.progress-header{text-align:center;margin-bottom:3rem}.progress-header h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:.5rem}.date-range{display:inline-block;padding:.5rem 1.5rem;background:var(--background);border-radius:20px;color:var(--text-secondary);font-weight:500;margin-top:1rem}.loading{text-align:center;padding:4rem;font-size:1.2rem;color:var(--text-secondary)}.overview-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem}.overview-card{background:var(--surface);border-radius:12px;padding:2rem;display:flex;align-items:center;gap:1.5rem;box-shadow:0 2px 8px var(--shadow);transition:transform .2s,box-shadow .2s;border:1px solid var(--border)}.overview-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px var(--shadow-hover)}.overview-card.improvement{border-left:4px solid var(--secondary-color)}.card-icon{font-size:2.5rem;width:70px;height:70px;display:flex;align-items:center;justify-content:center;background:var(--background);border-radius:12px;flex-shrink:0}.card-content h3{font-size:2.5rem;color:var(--primary-color);margin:0;line-height:1}.card-content p{font-size:1rem;color:var(--text-secondary);margin:.5rem 0 0}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:2rem;margin-bottom:3rem}.chart-card{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow);border:1px solid var(--border)}.chart-card h2{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.5rem}.cognitive-breakdown{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow);margin-bottom:3rem;border:1px solid var(--border)}.cognitive-breakdown h2{color:var(--text-primary);margin-bottom:2rem;font-size:1.8rem}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.breakdown-item{padding:1.5rem;background:var(--background);border-radius:8px}.breakdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.breakdown-header h3{color:var(--text-primary);font-size:1.2rem;margin:0}.score-change{font-size:1.1rem;font-weight:600;color:var(--secondary-color)}.progress-bar-container{width:100%;height:40px;background:#fff;border-radius:20px;overflow:hidden;position:relative;margin-bottom:.75rem;box-shadow:inset 0 2px 4px #0000001a}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));display:flex;align-items:center;justify-content:flex-end;padding-right:1rem;transition:width 1s ease-out}.progress-value{color:#fff;font-weight:700;font-size:1rem}.comparison{font-size:.9rem;color:var(--text-secondary)}.achievements-section{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow);margin-bottom:3rem;border:1px solid var(--border)}.achievements-section h2{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.8rem}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.achievement-card{padding:2rem 1.5rem;background:var(--background);border-radius:12px;text-align:center;transition:transform .2s;border:2px solid transparent}.achievement-card.earned{border-color:var(--secondary-color);background:#50c8780d}.achievement-card.earned:hover{transform:scale(1.05)}.achievement-card.locked{opacity:.5}.achievement-icon{font-size:3rem;margin-bottom:.75rem}.achievement-card h4{color:var(--text-primary);margin-bottom:.75rem;font-size:1.1rem}.achievement-status{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.earned-badge{background:#50c87833;color:var(--secondary-color)}.locked-badge{background:#9ca3af33;color:#6b7280}.weekly-trend-section{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow);margin-bottom:3rem;border:1px solid var(--border)}.weekly-trend-section h2{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.8rem}.insights-section{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px var(--shadow);border:1px solid var(--border)}.insights-section h2{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.8rem}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.insight-card{padding:1.5rem;background:var(--background);border-radius:8px;display:flex;gap:1rem;align-items:flex-start;border-left:4px solid var(--primary-color)}.insight-card.positive{border-left-color:var(--secondary-color);background:#50c8780d}.insight-icon{font-size:1.8rem;flex-shrink:0}.insight-card p{color:var(--text-secondary);line-height:1.6;margin:0}@media (max-width: 768px){.progress-page{padding:1rem}.overview-cards,.charts-section,.breakdown-grid{grid-template-columns:1fr}.achievements-grid{grid-template-columns:repeat(2,1fr)}.insights-grid{grid-template-columns:1fr}}:root{--primary-color: #4A90E2;--primary-dark: #357ABD;--primary-light: #6BA4EC;--secondary-color: #50C878;--secondary-dark: #3DA863;--accent-color: #FF6B9D;--warning-color: #FFA726;--success-color: #66BB6A;--background: #F5F7FA;--background-secondary: #FFFFFF;--surface: #FFFFFF;--surface-elevated: #FFFFFF;--text-primary: #1A202C;--text-secondary: #4A5568;--text-tertiary: #718096;--border: #E2E8F0;--border-light: #EDF2F7;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .18);--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-secondary: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-success: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-warm: linear-gradient(135deg, #fa709a 0%, #fee140 100%);--gradient-cool: linear-gradient(135deg, #30cfd0 0%, #330867 100%);--gradient-subtle: linear-gradient(135deg, #fdfbfb 0%, #ebedee 100%);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.68, -.55, .265, 1.55);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-2xl: 28px;--radius-full: 9999px;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem}*{margin:0;padding:0;box-sizing:border-box}*:before,*:after{box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--background);color:var(--text-primary);line-height:1.6;font-size:16px;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:Poppins,sans-serif;font-weight:700;line-height:1.2;color:var(--text-primary);margin:0}h1{font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.02em}h2{font-size:clamp(1.5rem,4vw,2.5rem);letter-spacing:-.01em}h3{font-size:clamp(1.25rem,3vw,1.75rem)}p{margin:0;line-height:1.7}button{font-family:Inter,sans-serif;cursor:pointer;border:none;outline:none;transition:all var(--transition-base)}button:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}a{text-decoration:none;color:inherit;transition:all var(--transition-base)}input,textarea,select{font-family:Inter,sans-serif;transition:all var(--transition-base)}html{scroll-behavior:smooth}::selection{background-color:var(--primary-color);color:#fff}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full);transition:background var(--transition-base)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.app{min-height:100vh;display:flex;flex-direction:column;position:relative}.main-container{flex:1;padding-top:var(--space-xl);padding-bottom:var(--space-2xl);background:var(--background);position:relative}.main-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;opacity:.03;background-image:radial-gradient(circle at 25px 25px,var(--text-primary) 2%,transparent 0%),radial-gradient(circle at 75px 75px,var(--text-primary) 2%,transparent 0%);background-size:100px 100px;pointer-events:none}.footer{background:linear-gradient(to top,var(--surface),var(--background-secondary));color:var(--text-secondary);text-align:center;padding:var(--space-2xl) var(--space-md);border-top:1px solid var(--border-light);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:10}.footer p{font-size:.95rem;font-weight:500;letter-spacing:.3px;max-width:1600px;margin:0 auto}.gradient-text{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);box-shadow:var(--shadow-xl)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fadeInUp{animation:fadeInUp .6s var(--transition-base) forwards}.animate-fadeIn{animation:fadeIn .4s var(--transition-base) forwards}.animate-scaleIn{animation:scaleIn .5s var(--transition-bounce) forwards}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}@media (max-width: 768px){.header h1{font-size:2rem}.tagline{font-size:1rem}.main-content{padding:2rem 1rem;grid-template-columns:1fr}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}#root{width:100%}
