*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Oxygen,Ubuntu,sans-serif;background:#000;color:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#000;color:#8a2be2;font-size:18px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#111}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}::selection{background:#8a2be24d;color:#fff}canvas{display:block}.age-gate-icon{font-size:4rem;margin-bottom:20px}.age-gate-privacy{font-size:.8rem;color:#666;margin-top:20px}.age-gate-privacy a{color:#a855f7;text-decoration:none}.age-gate-privacy a:hover{text-decoration:underline}.parental-form{text-align:left}.parental-form .form-group{margin-bottom:20px}.parental-form label{display:block;margin-bottom:8px;color:#888;font-size:.9rem}.parental-form input[type=email]{width:100%;padding:12px 15px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#fff;font-size:1rem;box-sizing:border-box}.parental-form input[type=email]:focus{outline:none;border-color:#a855f7}.form-checkbox{display:flex;gap:10px;align-items:flex-start;margin:20px 0}.form-checkbox input[type=checkbox]{margin-top:3px;accent-color:#a855f7}.form-checkbox label{font-size:.85rem;color:#888;line-height:1.5}.form-checkbox a{color:#a855f7}@media(max-width:768px){.age-gate-modal{padding:30px}.age-gate-modal h2{font-size:1.5rem}}.navbar{position:fixed;top:0;left:0;right:0;height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:#000000e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.05);z-index:1000}.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.logo-icon{font-size:28px}.logo-text{font-size:20px;font-weight:600;color:#fff;letter-spacing:1px}.nav-links{display:flex;gap:35px}.nav-link{color:#aaa;text-decoration:none;font-size:14px;font-weight:500;letter-spacing:.5px;transition:color .3s}.nav-link:hover{color:#fff}.nav-actions{display:flex;align-items:center;gap:15px}.nav-user{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff}.user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#8a2be2,#4a00e0);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}.user-name{font-size:14px;font-weight:500}.nav-btn{padding:10px 20px;border-radius:25px;font-size:14px;font-weight:500;text-decoration:none;transition:all .3s;cursor:pointer;border:none}.nav-btn.secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.2)}.nav-btn.secondary:hover{background:#ffffff1a}.nav-btn.primary{background:linear-gradient(135deg,#8a2be2,#4a00e0);color:#fff}.nav-btn.primary:hover{transform:translateY(-2px);box-shadow:0 5px 20px #8a2be266}.nav-btn.logout{background:#ff6b6b1a;color:#ff6b6b;border:1px solid rgba(255,107,107,.3)}.nav-btn.logout:hover{background:#ff6b6b33}@media(max-width:768px){.nav-links{display:none}.navbar{padding:0 20px}}.footer{background:linear-gradient(180deg,#0a0a1a,#050510);border-top:1px solid rgba(255,255,255,.05);padding:60px 20px 30px;color:#888}.footer-container{max-width:1200px;margin:0 auto}.footer-main{display:grid;grid-template-columns:1fr 2fr;gap:60px;margin-bottom:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.05)}.footer-brand{display:flex;flex-direction:column;gap:10px}.footer-logo{font-size:2.5rem}.footer-name{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#a855f7,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.footer-tagline{color:#666;font-size:.9rem;max-width:250px}.footer-links-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.footer-section h4{color:#fff;font-size:.9rem;margin-bottom:15px;text-transform:uppercase;letter-spacing:1px}.footer-section a{display:block;color:#888;text-decoration:none;font-size:.9rem;padding:6px 0;transition:color .3s ease}.footer-section a:hover{color:#a855f7}.footer-bottom{display:flex;justify-content:space-between;align-items:center}.footer-copyright p{margin:0;font-size:.85rem}.footer-disclaimer{margin-top:8px!important;font-size:.75rem!important;color:#555!important}.footer-social{display:flex;gap:15px}.social-link{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:10px;color:#888;transition:all .3s ease}.social-link:hover{background:#a855f726;color:#a855f7;transform:translateY(-2px)}@media(max-width:768px){.footer-main{grid-template-columns:1fr;gap:40px}.footer-links-grid{grid-template-columns:repeat(2,1fr);gap:30px}.footer-bottom{flex-direction:column;gap:20px;text-align:center}}@media(max-width:480px){.footer-links-grid{grid-template-columns:1fr;text-align:center}}.feedback-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.feedback-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;border:1px solid rgba(255,255,255,.1);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.feedback-header{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1);position:relative}.feedback-header h2{margin:0;color:#fff;font-size:1.5rem}.feedback-header p{margin:.5rem 0 0;color:#fff9;font-size:.9rem}.close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#ffffff80;font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;transition:color .2s}.close-btn:hover{color:#fff}.feedback-form{padding:1.5rem}.form-section{margin-bottom:1.5rem}.form-section label{display:block;color:#fffc;margin-bottom:.5rem;font-size:.9rem;font-weight:500}.category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.category-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1rem;cursor:pointer;text-align:left;transition:all .2s}.category-btn:hover{background:#ffffff1a;border-color:#8a2be280}.category-btn.selected{background:#8a2be233;border-color:#8a2be2}.cat-label{display:block;color:#fff;font-size:.95rem;margin-bottom:.25rem}.cat-desc{display:block;color:#ffffff80;font-size:.75rem}.star-rating{display:flex;align-items:center;gap:.25rem}.star-btn{background:none;border:none;font-size:2rem;color:#ffffff4d;cursor:pointer;transition:all .2s;padding:0}.star-btn:hover{transform:scale(1.1)}.star-btn.filled{color:gold}.rating-text{margin-left:.75rem;color:#ffffff80;font-size:.9rem}.feedback-form textarea,.feedback-form input[type=email]{width:100%;padding:.875rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.95rem;resize:vertical;transition:border-color .2s,background .2s}.feedback-form textarea:focus,.feedback-form input[type=email]:focus{outline:none;border-color:#8a2be2;background:#ffffff14}.feedback-form textarea::placeholder,.feedback-form input[type=email]::placeholder{color:#ffffff4d}.submit-btn{width:100%;padding:1rem;background:linear-gradient(135deg,#8a2be2,#4a0e8f);border:none;border-radius:8px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #8a2be266}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.feedback-success{padding:3rem 2rem;text-align:center}.success-icon{font-size:4rem;display:block;margin-bottom:1rem}.feedback-success h3{margin:0;color:#fff;font-size:1.5rem}.feedback-success p{margin:.5rem 0 0;color:#fff9}.feedback-error{background:#ff3b301a;border:1px solid rgba(255,59,48,.3);color:#ff6b6b;padding:.75rem 1rem;border-radius:8px;margin:1rem 1.5rem 0;font-size:.9rem}.module-rating{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.08)}.module-rating-label{color:#ffffffb3;font-size:.9rem}.module-rating-buttons{display:flex;gap:.5rem}.rating-btn{padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;font-size:1.25rem;transition:all .2s}.rating-btn:hover{background:#ffffff1a;transform:scale(1.05)}.rating-btn.selected.positive{background:#34c75933;border-color:#34c759}.rating-btn.selected.negative{background:#ff3b3033;border-color:#ff3b30}.feedback-fab{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#8a2be2,#4a0e8f);border:none;color:#fff;font-size:1.5rem;cursor:pointer;box-shadow:0 4px 20px #8a2be266;transition:all .2s;z-index:100}.feedback-fab:hover{transform:scale(1.1);box-shadow:0 6px 25px #8a2be280}@media(max-width:600px){.category-grid{grid-template-columns:1fr}.feedback-modal{margin:.5rem;max-height:95vh}.feedback-fab{bottom:1rem;right:1rem;width:48px;height:48px;font-size:1.25rem}}.landing-page{min-height:100vh;background:#000;color:#fff;overflow-x:hidden}.space-canvas{position:fixed!important;top:0;left:0;width:100vw;height:100vh;z-index:0}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:120px 40px 80px;z-index:1}.hero-content{max-width:800px;text-align:center}.hero h1{font-size:72px;font-weight:700;margin-bottom:24px;line-height:1.1}.gradient-text{background:linear-gradient(135deg,#8a2be2,#00d4ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:20px;color:#aaa;line-height:1.6;margin-bottom:40px;max-width:600px;margin-left:auto;margin-right:auto}.hero-actions{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.hero-btn{padding:16px 36px;border-radius:30px;font-size:16px;font-weight:600;text-decoration:none;transition:all .3s}.hero-btn.primary{background:linear-gradient(135deg,#8a2be2,#4a00e0);color:#fff}.hero-btn.primary:hover{transform:translateY(-3px);box-shadow:0 15px 40px #8a2be266}.hero-btn.secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.hero-btn.secondary:hover{background:#ffffff26}.section-header{text-align:center;margin-bottom:50px}.section-header h2{font-size:42px;font-weight:600;margin-bottom:16px}.section-header p{font-size:18px;color:#888}.features-section{position:relative;padding:100px 40px;z-index:1;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.9) 10%,rgba(0,0,0,.95) 100%)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:30px;max-width:1200px;margin:0 auto}.feature-card{position:relative;background:#141428cc;border:1px solid rgba(138,43,226,.2);border-radius:24px;padding:35px;transition:all .3s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.feature-card:hover{transform:translateY(-5px);border-color:#8a2be280;box-shadow:0 20px 50px #8a2be233}.feature-card.pro{border-color:#ffd7004d}.pro-badge{position:absolute;top:20px;right:20px;background:linear-gradient(135deg,gold,#ff9500);color:#000;font-size:10px;font-weight:700;padding:4px 10px;border-radius:10px}.feature-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;font-size:32px;background:linear-gradient(135deg,#8a2be233,#00d4ff33);border-radius:16px;margin-bottom:20px}.feature-card h3{font-size:22px;font-weight:600;margin-bottom:12px}.feature-card p{font-size:14px;color:#888;line-height:1.6;margin-bottom:20px}.feature-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.tag{background:#8a2be226;color:#c4a8ff;font-size:11px;padding:5px 12px;border-radius:15px}.feature-link{color:#8a2be2;font-size:14px;font-weight:500;text-decoration:none;transition:color .3s}.feature-link:hover{color:#a855ff}.stats-section{position:relative;padding:80px 40px;z-index:1;background:#000000f2}.stats-grid{display:flex;justify-content:center;gap:80px;flex-wrap:wrap;max-width:1000px;margin:0 auto}.stat-item{text-align:center}.stat-item h3{font-size:56px;font-weight:700;background:linear-gradient(135deg,#8a2be2,#00d4ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.stat-item p{font-size:14px;color:#888;text-transform:uppercase;letter-spacing:1px}.syllabus-preview{position:relative;padding:100px 40px;z-index:1;background:linear-gradient(180deg,#000000f2,#0a051ef2)}.syllabus-modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;max-width:1000px;margin:0 auto 40px}.module{background:#8a2be214;border:1px solid rgba(138,43,226,.2);border-radius:20px;padding:30px;text-align:center}.module-number{display:block;font-size:36px;font-weight:700;color:#8a2be266;margin-bottom:15px}.module h4{font-size:18px;margin-bottom:10px}.module p{font-size:13px;color:#888}.view-syllabus-btn{display:block;width:fit-content;margin:0 auto;color:#8a2be2;font-size:16px;text-decoration:none}.cta-section{position:relative;padding:100px 40px;text-align:center;z-index:1;background:#0a051ef2}.cta-section h2{font-size:42px;margin-bottom:16px}.cta-section p{font-size:18px;color:#888;margin-bottom:30px}.cta-btn{display:inline-block;padding:18px 50px;background:linear-gradient(135deg,#8a2be2,#4a00e0);color:#fff;font-size:18px;font-weight:600;text-decoration:none;border-radius:35px;transition:all .3s}.cta-btn:hover{transform:translateY(-3px);box-shadow:0 15px 40px #8a2be280}.footer{position:relative;padding:60px 40px;z-index:1;background:#000;border-top:1px solid rgba(255,255,255,.05)}.footer-content{max-width:1000px;margin:0 auto;text-align:center}.footer-logo{font-size:24px;font-weight:600;margin-bottom:20px}.footer-links{display:flex;justify-content:center;gap:30px;margin-bottom:20px}.footer-links a{color:#888;text-decoration:none;font-size:14px}.footer-links a:hover{color:#fff}.copyright{font-size:13px;color:#555}@media(max-width:768px){.hero h1{font-size:42px}.hero-subtitle{font-size:16px}.section-header h2{font-size:32px}.stats-grid{gap:40px}.stat-item h3{font-size:40px}}.explore-page{min-height:100vh;background:radial-gradient(ellipse at top,#0a0520,#000);padding-top:90px;color:#fff}.explore-container{max-width:1200px;margin:0 auto;padding:40px}.explore-header,.viz-header{text-align:center;margin-bottom:40px}.explore-header h1,.viz-header h1{font-size:2.5rem;margin-bottom:10px}.explore-header p,.viz-header p{color:#888;font-size:1.1rem}.back-link{display:inline-block;color:#8a2be2;text-decoration:none;margin-bottom:20px;font-size:14px}.back-link:hover{text-decoration:underline}.viz-meta{display:flex;justify-content:center;gap:20px;margin-top:15px}.viz-meta span{padding:5px 12px;border-radius:20px;font-size:12px}.viz-meta .category{background:#8a2be233;color:#a855f7;text-transform:capitalize}.viz-meta .time{background:#64646433;color:#aaa}.viz-meta .progress{background:#00d4ff33;color:#00d4ff}.modules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:25px}.explore-card{background:#141428cc;border:1px solid rgba(138,43,226,.2);border-radius:20px;overflow:hidden;transition:all .3s}.explore-card:hover{border-color:#8a2be280;transform:translateY(-5px);box-shadow:0 20px 40px #8a2be233}.explore-card a{display:block;padding:30px;color:inherit;text-decoration:none}.card-icon{font-size:3rem;margin-bottom:15px}.explore-card h3{font-size:1.3rem;margin-bottom:8px}.explore-card p{color:#888;font-size:14px;margin-bottom:15px}.card-meta{display:flex;justify-content:space-between;align-items:center}.card-meta .category{background:#8a2be233;color:#a855f7;padding:4px 10px;border-radius:12px;font-size:11px;text-transform:capitalize}.card-meta .progress{color:#00d4ff;font-weight:600}.viz-content{display:grid;grid-template-columns:1fr 350px;gap:30px}.viz-placeholder{background:#141428cc;border:1px solid rgba(138,43,226,.3);border-radius:20px;padding:60px 40px;text-align:center}.placeholder-icon{font-size:5rem;margin-bottom:20px}.viz-placeholder h2{font-size:1.8rem;margin-bottom:15px}.viz-placeholder p{color:#888;margin-bottom:10px}.viz-links{margin-top:30px}.viz-button{display:inline-block;background:linear-gradient(135deg,#8a2be2,#6366f1);color:#fff;padding:15px 30px;border-radius:30px;text-decoration:none;font-weight:600;transition:all .3s}.viz-button:hover{transform:translateY(-2px);box-shadow:0 10px 30px #8a2be24d}.module-lessons{background:#141428cc;border:1px solid rgba(138,43,226,.2);border-radius:20px;padding:25px}.module-lessons h3{font-size:14px;text-transform:uppercase;letter-spacing:1px;color:#888;margin-bottom:20px}.lessons-list{display:flex;flex-direction:column;gap:10px}.lesson-item{display:flex;align-items:center;gap:12px;padding:12px 15px;background:#0003;border-radius:12px}.lesson-number{width:28px;height:28px;background:#8a2be233;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.lesson-name{flex:1;font-size:14px;text-transform:capitalize}.lesson-status{font-size:16px}.quiz-button{display:block;background:linear-gradient(135deg,gold,#ff9500);color:#000;text-align:center;padding:15px;border-radius:15px;text-decoration:none;font-weight:600;margin-top:20px;transition:all .3s}.quiz-button:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ffd7004d}@media(max-width:768px){.viz-content{grid-template-columns:1fr}.explore-header h1{font-size:1.8rem}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0520,#000);padding:20px}.auth-card{width:100%;max-width:420px;background:#0a0a1ef2;border:1px solid rgba(138,43,226,.3);border-radius:24px;padding:40px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 20px 60px #00000080}.auth-header{text-align:center;margin-bottom:30px}.auth-header h1{font-size:28px;font-weight:300;color:#fff;margin-bottom:8px;letter-spacing:2px}.auth-header p{color:#888;font-size:14px}.auth-error{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);color:#ff6b6b;padding:12px 16px;border-radius:12px;margin-bottom:20px;font-size:14px}.auth-success{background:#6bff8a1a;border:1px solid rgba(107,255,138,.3);color:#6bff8a;padding:12px 16px;border-radius:12px;margin-bottom:20px;font-size:14px}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#aaa;font-size:12px;text-transform:uppercase;letter-spacing:1px}.form-group input{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 16px;color:#fff;font-size:15px;transition:all .3s}.form-group input:focus{outline:none;border-color:#8a2be2;background:#8a2be21a}.form-group input::placeholder{color:#555}.form-options{display:flex;justify-content:space-between;align-items:center;margin-top:-10px}.remember-me{display:flex;align-items:center;gap:8px;color:#888;font-size:13px;cursor:pointer}.remember-me input{accent-color:#8a2be2}.forgot-link{color:#8a2be2;font-size:13px;text-decoration:none}.forgot-link:hover{text-decoration:underline}.terms-checkbox{display:flex;align-items:flex-start;gap:10px;color:#888;font-size:12px;cursor:pointer;line-height:1.5}.terms-checkbox a{color:#8a2be2;text-decoration:none}.auth-button{background:linear-gradient(135deg,#8a2be2,#4a00e0);border:none;border-radius:12px;padding:16px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s;margin-top:10px}.auth-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #8a2be266}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;margin-top:24px;color:#888;font-size:14px}.auth-footer a{color:#8a2be2;text-decoration:none;font-weight:500}.auth-divider{display:flex;align-items:center;gap:15px;margin:24px 0;color:#555;font-size:12px;text-transform:uppercase}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.social-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:14px;cursor:pointer;transition:all .3s}.social-button:hover{background:#ffffff1a}.dashboard{min-height:100vh;background:radial-gradient(ellipse at top,#0a0520,#000);padding-top:90px;color:#fff}.dashboard-container{max-width:1200px;margin:0 auto;padding:30px 40px}.welcome-section{display:flex;justify-content:space-between;align-items:center;background:#140a2899;border:1px solid rgba(138,43,226,.2);border-radius:24px;padding:35px 40px;margin-bottom:30px}.welcome-text h1{font-size:28px;font-weight:600;margin-bottom:8px}.welcome-text p{color:#888;font-size:16px}.overall-progress{display:flex;flex-direction:column;align-items:center;gap:8px}.progress-circle{width:80px;height:80px;position:relative}.progress-circle svg{transform:rotate(-90deg)}.progress-bg{fill:none;stroke:#8a2be233;stroke-width:8}.progress-bar{fill:none;stroke:#8a2be2;stroke-width:8;stroke-linecap:round;transition:stroke-dasharray .5s}.progress-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:20px;font-weight:600}.progress-label{font-size:12px;color:#888;text-transform:uppercase;letter-spacing:1px}.dashboard-grid{display:grid;grid-template-columns:1fr 340px;gap:30px}.modules-section h2{font-size:22px;margin-bottom:20px}.modules-list{display:flex;flex-direction:column;gap:15px}.module-card{display:flex;align-items:center;gap:20px;background:#141428cc;border:1px solid rgba(138,43,226,.2);border-radius:16px;padding:20px 25px;transition:all .3s;cursor:pointer}.module-card:hover:not(.locked){border-color:#8a2be280;transform:translate(5px)}.module-card.locked{opacity:.6;cursor:not-allowed}.module-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:28px;background:#8a2be226;border-radius:14px}.module-info{flex:1}.module-info h3{font-size:16px;font-weight:500;margin-bottom:6px}.module-info p{font-size:13px;color:#888;margin-bottom:10px}.module-progress-bar{height:6px;background:#8a2be233;border-radius:3px;overflow:hidden}.module-progress-fill{height:100%;background:linear-gradient(90deg,#8a2be2,#00d4ff);border-radius:3px;transition:width .5s}.module-status{font-size:14px;font-weight:500}.progress-text{color:#8a2be2}.lock-icon,.complete-icon{font-size:20px}.dashboard-sidebar{display:flex;flex-direction:column;gap:20px}.sidebar-card{background:#141428cc;border:1px solid rgba(138,43,226,.2);border-radius:20px;padding:25px}.sidebar-card h3{font-size:14px;text-transform:uppercase;letter-spacing:1px;color:#888;margin-bottom:15px}.quick-action{display:flex;align-items:center;gap:12px;padding:12px;background:#8a2be21a;border-radius:12px;color:#fff;text-decoration:none;font-size:14px;margin-bottom:10px;transition:all .3s}.quick-action:hover{background:#8a2be233}.quick-action:last-child{margin-bottom:0}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.05)}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-text{font-size:13px;color:#ddd;margin-bottom:4px}.activity-time{font-size:11px;color:#666}.upgrade-card{background:linear-gradient(135deg,#8a2be233,#ffd7001a);border:1px solid rgba(255,215,0,.3);border-radius:20px;padding:25px;text-align:center}.upgrade-icon{font-size:32px;display:block;margin-bottom:12px}.upgrade-card h4{font-size:18px;margin-bottom:8px}.upgrade-card p{font-size:13px;color:#888;margin-bottom:20px}.upgrade-btn{background:linear-gradient(135deg,gold,#ff9500);color:#000;border:none;padding:12px 30px;border-radius:25px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s}.upgrade-btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ffd7004d}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}.welcome-section{flex-direction:column;gap:20px;text-align:center}}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.stat-item{background:#8a2be21a;border-radius:12px;padding:15px;text-align:center}.stat-value{display:block;font-size:24px;font-weight:600;color:#8a2be2;margin-bottom:4px}.stat-label{font-size:11px;color:#888;text-transform:uppercase}.xp-display{font-size:14px;color:gold;margin-top:5px}.module-card .module-link{display:flex;align-items:center;gap:20px;color:inherit;text-decoration:none;width:100%}.loading-message{text-align:center;padding:100px 20px;color:#888;font-size:18px}.legal-page{min-height:100vh;padding:100px 20px 60px;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);color:#e0e0e0}.legal-container{max-width:900px;margin:0 auto;background:#ffffff08;border-radius:16px;padding:40px 50px;box-shadow:0 8px 32px #0000004d;border:1px solid rgba(255,255,255,.05)}.legal-page h1{font-size:2.5rem;color:#fff;margin-bottom:10px;text-align:center;background:linear-gradient(135deg,#a855f7,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.legal-updated{text-align:center;color:#888;font-size:.9rem;margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1)}.legal-section{margin-bottom:30px}.legal-section h2{font-size:1.5rem;color:#a855f7;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid rgba(168,85,247,.2)}.legal-section h3{font-size:1.2rem;color:#c084fc;margin:20px 0 10px}.legal-section p{line-height:1.8;margin-bottom:15px;color:silver}.legal-section ul{margin:10px 0 20px 20px;line-height:1.8}.legal-section li{margin-bottom:8px;color:#b0b0b0}.legal-section li strong{color:#e0e0e0}.legal-highlight{background:#a855f71a;border-left:4px solid #a855f7;padding:20px;margin:20px 0;border-radius:0 8px 8px 0}.legal-highlight.warning{background:#f59e0b1a;border-left-color:#f59e0b}.legal-highlight p{margin-bottom:10px}.legal-highlight ul{margin-bottom:0}.age-gate-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.age-gate-modal{background:linear-gradient(135deg,#1a1a2e,#0f0f23);border-radius:20px;padding:50px;max-width:500px;width:90%;text-align:center;border:1px solid rgba(168,85,247,.3);box-shadow:0 20px 60px #00000080}.age-gate-modal h2{font-size:2rem;color:#fff;margin-bottom:20px}.age-gate-modal p{color:#b0b0b0;margin-bottom:30px;line-height:1.6}.age-gate-options{display:flex;flex-direction:column;gap:15px}.age-gate-btn{padding:15px 30px;border-radius:12px;border:none;font-size:1.1rem;cursor:pointer;transition:all .3s ease}.age-gate-btn.primary{background:linear-gradient(135deg,#a855f7,#6366f1);color:#fff}.age-gate-btn.primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #a855f74d}.age-gate-btn.secondary{background:transparent;color:#888;border:1px solid rgba(255,255,255,.2)}.age-gate-btn.secondary:hover{border-color:#fff6;color:#fff}.age-gate-minor{margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.age-gate-minor p{font-size:.9rem;color:#666;margin-bottom:15px}.parental-consent-link{color:#a855f7;text-decoration:none;font-size:.9rem}.parental-consent-link:hover{text-decoration:underline}.footer-legal{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.footer-legal a{color:#888;text-decoration:none;font-size:.85rem;transition:color .3s ease}.footer-legal a:hover{color:#a855f7}@media(max-width:768px){.legal-container{padding:30px 20px}.legal-page h1{font-size:1.8rem}.legal-section h2{font-size:1.3rem}.age-gate-modal{padding:30px}}.about-page,.contact-page{min-height:100vh;padding:100px 20px 60px;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);color:#e0e0e0}.about-container,.contact-container{max-width:1100px;margin:0 auto}.about-hero,.contact-hero{text-align:center;margin-bottom:60px}.about-icon,.contact-icon{font-size:4rem;display:block;margin-bottom:20px}.about-hero h1,.contact-hero h1{font-size:2.5rem;color:#fff;margin-bottom:15px;background:linear-gradient(135deg,#a855f7,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-tagline,.contact-tagline{font-size:1.1rem;color:#888;max-width:600px;margin:0 auto;line-height:1.6}.about-section{margin-bottom:60px}.about-section h2{font-size:1.5rem;color:#fff;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid rgba(168,85,247,.2)}.about-section p{line-height:1.8;color:#b0b0b0;margin-bottom:15px}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;margin-top:25px}.feature-card{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:30px;transition:all .3s ease}.feature-card:hover{transform:translateY(-5px);border-color:#a855f74d;box-shadow:0 10px 30px #a855f71a}.feature-icon{font-size:2.5rem;margin-bottom:15px;display:block}.feature-card h3{color:#fff;margin-bottom:10px}.feature-card p{color:#888;font-size:.95rem;margin:0}.tech-stack{display:flex;gap:20px;flex-wrap:wrap;margin-top:20px}.tech-item{background:#a855f71a;border:1px solid rgba(168,85,247,.2);border-radius:12px;padding:20px 30px;text-align:center;flex:1;min-width:150px}.tech-name{display:block;color:#a855f7;font-weight:600;font-size:1.1rem;margin-bottom:5px}.tech-desc{font-size:.85rem;color:#888}.credits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:20px}.credit-item{background:#ffffff05;border-radius:12px;padding:20px}.credit-item h4{color:#fff;margin-bottom:5px}.credit-item p{color:#888;font-size:.9rem;margin:0}.about-cta{text-align:center;background:linear-gradient(135deg,#a855f71a,#6366f11a);border:1px solid rgba(168,85,247,.2);border-radius:20px;padding:50px;margin-top:40px}.about-cta h2{color:#fff;margin-bottom:10px}.about-cta p{color:#888;margin-bottom:25px}.cta-buttons{display:flex;gap:15px;justify-content:center}.cta-btn{padding:12px 30px;border-radius:12px;text-decoration:none;font-weight:500;transition:all .3s ease}.cta-btn.primary{background:linear-gradient(135deg,#a855f7,#6366f1);color:#fff}.cta-btn.primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #a855f74d}.cta-btn.secondary{background:transparent;color:#a855f7;border:1px solid #a855f7}.cta-btn.secondary:hover{background:#a855f71a}.contact-content{display:grid;grid-template-columns:1fr 1.5fr;gap:40px;margin-bottom:60px}.contact-info{display:flex;flex-direction:column;gap:20px}.info-card{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:25px;transition:all .3s ease}.info-card:hover{border-color:#a855f74d}.info-icon{font-size:1.5rem;margin-bottom:10px;display:block}.info-card h3{color:#fff;margin-bottom:5px;font-size:1rem}.info-card p{color:#666;font-size:.85rem;margin-bottom:8px}.info-card a{color:#a855f7;text-decoration:none;font-size:.95rem}.info-card a:hover{text-decoration:underline}.contact-form{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:40px}.contact-form h2{color:#fff;margin-bottom:25px;font-size:1.3rem}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;color:#888;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:14px 18px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#fff;font-size:1rem;font-family:inherit;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#a855f7;background:#a855f70d}.form-group select{cursor:pointer}.form-group textarea{resize:vertical;min-height:120px}.submit-btn{width:100%;padding:15px;background:linear-gradient(135deg,#a855f7,#6366f1);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #a855f74d}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.form-status{padding:15px;border-radius:10px;margin-bottom:20px;font-size:.95rem}.form-status.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:#22c55e}.form-status.error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#ef4444}.faq-section{margin-top:60px}.faq-section h2{text-align:center;color:#fff;margin-bottom:30px}.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.faq-item{background:#ffffff05;border-radius:12px;padding:25px}.faq-item h4{color:#fff;margin-bottom:10px}.faq-item p{color:#888;font-size:.9rem;line-height:1.6;margin:0}@media(max-width:768px){.feature-grid,.credits-grid,.faq-grid,.contact-content{grid-template-columns:1fr}.tech-stack{flex-direction:column}.tech-item{width:100%}.cta-buttons{flex-direction:column}.about-hero h1,.contact-hero h1{font-size:2rem}}:root{--theme-transition: background-color .3s ease, color .3s ease, border-color .3s ease;--bg-primary: #0a0a1a;--bg-secondary: #12122a;--bg-tertiary: #1a1a3e;--bg-card: #16162e;--bg-hover: #1e1e4a;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .7);--text-muted: rgba(255, 255, 255, .5);--accent-primary: #8a2be2;--accent-secondary: #a855f7;--accent-gradient: linear-gradient(135deg, #8a2be2, #a855f7);--border-color: rgba(255, 255, 255, .1);--border-hover: rgba(138, 43, 226, .5);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 20px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .5);--success: #34c759;--warning: #ff9500;--error: #ff3b30}[data-theme=light]{--bg-primary: #f5f5f7;--bg-secondary: #ffffff;--bg-tertiary: #e8e8ed;--bg-card: #ffffff;--bg-hover: #f0f0f5;--text-primary: #1d1d1f;--text-secondary: rgba(0, 0, 0, .7);--text-muted: rgba(0, 0, 0, .5);--accent-primary: #7c3aed;--accent-secondary: #8b5cf6;--accent-gradient: linear-gradient(135deg, #7c3aed, #8b5cf6);--border-color: rgba(0, 0, 0, .1);--border-hover: rgba(124, 58, 237, .5);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 20px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .15)}body{background-color:var(--bg-primary);color:var(--text-primary);transition:var(--theme-transition)}.theme-toggle{background:transparent;border:1px solid var(--border-color);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;transition:all .3s ease;margin-right:1rem}.theme-toggle:hover{background:var(--bg-hover);border-color:var(--accent-primary);transform:rotate(20deg)}.theme-toggle:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-card{background-color:var(--bg-card)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.skip-to-content{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-to-content:focus{position:fixed;top:10px;left:10px;width:auto;height:auto;padding:1rem 2rem;background:var(--accent-primary);color:#fff;z-index:10000;border-radius:8px}
