@import "https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800;900&display=swap";:root{--bg-primary:#0a0e27;--bg-secondary:#1a1f3a;--bg-tertiary:#2a1a4a;--text-primary:#e4e4e7;--text-secondary:#a1a1aa;--accent-primary:#8b5cf6;--accent-secondary:#ec4899;--accent-tertiary:#f59e0b;--border-color:#8b5cf633;--card-bg:#8b5cf60d;--success:#22c55e;--error:#ef4444}[data-theme="light"]{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--text-primary:#1e293b;--text-secondary:#64748b;--accent-primary:#10b981;--accent-secondary:#059669;--accent-tertiary:#047857;--border-color:#10b98133;--card-bg:#10b9810d;--success:#10b981;--error:#ef4444}*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Poppins',sans-serif;background:var(--bg-primary);color:var(--text-primary);overflow-x:hidden;transition:background-color .3s ease,color .3s ease}.bg-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,var(--bg-primary),var(--bg-secondary),var(--bg-tertiary),var(--bg-secondary));background-size:400% 400%;animation:gradientShift 15s ease infinite;z-index:-2;transition:background .3s ease}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}.particle{position:fixed;width:4px;height:4px;background:#8b5cf699;border-radius:50%;pointer-events:none;z-index:-1;animation:float 20s infinite}[data-theme="light"] .particle{background:#10b98199}@keyframes float{0%,100%{transform:translateY(0) translateX(0);opacity:0}10%{opacity:1}90%{opacity:1}100%{transform:translateY(-100vh) translateX(50px);opacity:0}}.container{max-width:1400px;margin:0 auto;padding:0 20px}.header{padding:25px 0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.brand{font-size:2rem;font-weight:800;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary),var(--accent-tertiary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-1px}.nav-menu{display:flex;gap:30px;align-items:center}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color .3s;cursor:pointer}.nav-link:hover{color:var(--accent-primary)}.theme-toggle{background:var(--card-bg);border:1px solid var(--border-color);border-radius:50%;width:45px;height:45px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:var(--text-primary);font-size:1.2rem}.theme-toggle:hover{background:#8b5cf61a;transform:rotate(30deg)}[data-theme="light"] .theme-toggle:hover{background:#10b9811a}.page{display:none;animation:pageSlideIn .4s ease}.page.active{display:block}@keyframes pageSlideIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero{padding:100px 0;text-align:center}.hero-title{font-size:5rem;font-weight:900;line-height:1.1;margin-bottom:25px;background:linear-gradient(135deg,var(--text-primary),var(--accent-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.5rem;color:var(--text-secondary);margin-bottom:50px;font-weight:300}.cta-group{display:flex;gap:20px;justify-content:center;margin-bottom:80px}.btn{padding:18px 45px;font-size:1.1rem;font-weight:600;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;font-family:'Poppins',sans-serif}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:0 10px 40px #8b5cf666}[data-theme="light"] .btn-primary{box-shadow:0 10px 40px #10b98166}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 15px 50px #8b5cf699}[data-theme="light"] .btn-primary:hover{box-shadow:0 15px 50px #10b98199}.btn-secondary{background:#8b5cf61a;color:var(--accent-primary);border:2px solid var(--accent-primary)}[data-theme="light"] .btn-secondary{background:#10b9811a}.btn-secondary:hover{background:#8b5cf633;transform:translateY(-3px)}[data-theme="light"] .btn-secondary:hover{background:#10b98133}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid #3f3f46;padding:12px 30px}[data-theme="light"] .btn-ghost{border-color:#e2e8f0}.btn-ghost:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:60px 0}.stat-box{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;padding:40px 30px;text-align:center;transition:all .3s ease}.stat-box:hover{background:#8b5cf61a;transform:translateY(-5px);border-color:#8b5cf666}[data-theme="light"] .stat-box:hover{background:#10b9811a;border-color:#10b98166}.stat-number{font-size:3rem;font-weight:800;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:block;margin-bottom:10px}.stat-label{color:var(--text-secondary);font-size:.95rem}.features{padding:80px 0}.section-header{text-align:center;margin-bottom:60px}.section-title{font-size:3rem;font-weight:800;margin-bottom:15px}.section-desc{color:var(--text-secondary);font-size:1.2rem}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.feature-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:25px;padding:45px 35px;transition:all .4s ease}.feature-card:hover{background:#8b5cf614;border-color:#8b5cf64d;transform:translateY(-8px)}[data-theme="light"] .feature-card:hover{background:#10b98114;border-color:#10b9814d}.feature-icon{font-size:3rem;margin-bottom:25px;display:block}.feature-title{font-size:1.5rem;font-weight:700;margin-bottom:15px}.feature-desc{color:var(--text-secondary);line-height:1.7}.dashboard{padding:60px 0}.dash-grid{display:grid;grid-template-columns:2fr 1fr;gap:30px;margin-top:40px}.dash-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:25px;padding:40px}.dash-title{font-size:1.8rem;font-weight:700;margin-bottom:30px}.progress-bar-wrapper{margin:25px 0}.progress-label{display:flex;justify-content:space-between;margin-bottom:10px;color:var(--text-secondary)}.progress-bar-track{height:12px;background:#8b5cf61a;border-radius:10px;overflow:hidden}[data-theme="light"] .progress-bar-track{background:#10b9811a}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:10px;transition:width 1s ease}.streak-display{text-align:center;padding:40px;background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-radius:20px;border:1px solid var(--border-color)}[data-theme="light"] .streak-display{background:linear-gradient(135deg,#10b9811a,#0596691a)}.streak-number{font-size:4rem;font-weight:900;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.streak-text{color:var(--text-secondary);margin-top:10px;font-size:1.1rem}.learn-container{max-width:900px;margin:60px auto}.word-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:30px;padding:60px;text-align:center}.word-main{font-size:4.5rem;font-weight:900;margin-bottom:15px;background:linear-gradient(135deg,var(--text-primary),var(--accent-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.word-phonetic{font-size:1.4rem;color:var(--text-secondary);font-style:italic;margin-bottom:40px}.word-level-tag{display:inline-block;padding:8px 20px;border-radius:20px;font-size:.9rem;font-weight:700;margin-bottom:40px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff}.word-info{text-align:left;background:#0003;padding:35px;border-radius:20px;margin:30px 0}[data-theme="light"] .word-info{background:#f1f5f9cc}.word-info-row{margin:20px 0}.word-info-label{color:var(--accent-primary);font-weight:600;font-size:1.1rem;margin-bottom:8px}.word-info-text{color:var(--text-primary);line-height:1.8;font-size:1.05rem}.test-header{display:flex;justify-content:space-between;align-items:center;padding:25px 0;margin-bottom:40px;border-bottom:1px solid var(--border-color)}.test-progress-text{font-size:1.2rem;color:var(--text-secondary)}.test-progress-text span{color:var(--accent-primary);font-weight:700}.question-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:25px;padding:50px;max-width:900px;margin:0 auto}.question-word{font-size:3.5rem;font-weight:800;text-align:center;margin-bottom:40px;color:var(--text-primary)}.question-prompt{text-align:center;color:var(--text-secondary);font-size:1.1rem;margin-bottom:40px}.options-list{display:grid;gap:15px}.option-item{background:var(--card-bg);border:2px solid var(--border-color);border-radius:15px;padding:25px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:20px}.option-item:hover{background:#8b5cf61a;border-color:#8b5cf666;transform:translateX(10px)}[data-theme="light"] .option-item:hover{background:#10b9811a;border-color:#10b98166}.option-item.selected{background:#8b5cf633;border-color:var(--accent-primary)}[data-theme="light"] .option-item.selected{background:#10b98133}.option-item.correct{background:#22c55e33;border-color:var(--success)}.option-item.wrong{background:#ef444433;border-color:var(--error)}.option-letter{width:45px;height:45px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.2rem;flex-shrink:0}.option-text{font-size:1.1rem;flex:1}.setup-container{max-width:800px;margin:80px auto;text-align:center}.setup-title{font-size:3rem;font-weight:800;margin-bottom:20px}.setup-desc{color:var(--text-secondary);font-size:1.2rem;margin-bottom:50px}.test-options{display:grid;gap:20px}.test-option{background:var(--card-bg);border:2px solid var(--border-color);border-radius:20px;padding:40px;cursor:pointer;transition:all .3s ease}.test-option:hover{background:#8b5cf626;border-color:var(--accent-primary);transform:scale(1.02)}[data-theme="light"] .test-option:hover{background:#10b98126}.test-option-title{font-size:1.8rem;font-weight:700;margin-bottom:10px}.test-option-desc{color:var(--text-secondary)}.results-container{max-width:900px;margin:60px auto;text-align:center}.results-score{background:var(--card-bg);border:1px solid var(--border-color);border-radius:30px;padding:60px;margin-bottom:40px}.score-circle{width:220px;height:220px;margin:0 auto 30px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 20px 60px #8b5cf666}[data-theme="light"] .score-circle{box-shadow:0 20px 60px #10b98166}.score-circle::before{content:'';position:absolute;width:190px;height:190px;background:var(--bg-primary);border-radius:50%}.score-value{font-size:4rem;font-weight:900;color:var(--text-primary);position:relative}.score-label{font-size:1.5rem;color:var(--text-secondary);margin-bottom:20px}.cefr-badge{display:inline-block;padding:15px 40px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:30px;font-size:1.5rem;font-weight:800;color:#fff}.results-breakdown{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;margin:40px 0}.breakdown-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;padding:35px}.breakdown-card.correct{border-color:#22c55e66}.breakdown-card.wrong{border-color:#ef444466}.breakdown-number{font-size:3.5rem;font-weight:900;margin-bottom:10px}.breakdown-card.correct .breakdown-number{color:var(--success)}.breakdown-card.wrong .breakdown-number{color:var(--error)}.breakdown-label{color:var(--text-secondary);font-size:1.1rem}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:1fr}.dash-grid{grid-template-columns:1fr}}@media (max-width: 768px){.hero-title{font-size:3rem}.cta-group{flex-direction:column;align-items:center}.btn{width:100%;max-width:400px}.stats-grid{grid-template-columns:1fr}.word-card{padding:40px 25px}.word-main{font-size:3rem}.question-card{padding:30px 20px}.results-breakdown{grid-template-columns:1fr}.header{padding:15px 0;position:relative}.nav-menu{position:fixed;top:0;right:-100%;width:280px;height:100vh;background:var(--bg-secondary);flex-direction:column;justify-content:flex-start;padding-top:80px;gap:0;z-index:1000;transition:right .3s ease;box-shadow:-5px 0 30px #0003;border-left:1px solid var(--border-color)}.nav-menu.active{right:0}.nav-link{width:100%;padding:18px 30px;border-bottom:1px solid var(--border-color);font-size:1.1rem}.nav-link:hover{background:var(--card-bg)}.theme-toggle{margin:20px 30px 0;width:calc(100% - 60px);border-radius:50px;justify-content:center}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;width:45px;height:45px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:50%;cursor:pointer;z-index:1001;transition:all .3s ease}.menu-toggle:hover{background:#8b5cf61a}[data-theme="light"] .menu-toggle:hover{background:#10b9811a}.menu-toggle span{display:block;width:22px;height:2px;background:var(--text-primary);margin:3px 0;transition:all .3s ease;border-radius:2px}.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:999;opacity:0;visibility:hidden;transition:all .3s ease}.menu-overlay.active{opacity:1;visibility:visible}}@media (max-width: 480px){.hero-title{font-size:2.5rem}.section-title{font-size:2.2rem}.brand{font-size:1.7rem}.nav-menu{width:85%}}.support-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:25px;padding:60px;text-align:center;margin:80px auto;max-width:900px}.support-title{font-size:2.5rem;font-weight:800;margin-bottom:20px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.support-desc{color:var(--text-secondary);font-size:1.2rem;line-height:1.6;margin-bottom:40px;max-width:700px;margin-left:auto;margin-right:auto}.support-content{display:flex;flex-direction:column;align-items:center;gap:30px}.coffee-button{margin:20px 0;transition:transform .3s ease}.coffee-button:hover{transform:scale(1.05)}.support-features{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;margin-top:40px;text-align:left}.support-feature{display:flex;align-items:flex-start;gap:15px}.support-feature-icon{width:45px;height:45px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.support-feature-text h4{font-size:1.2rem;font-weight:600;margin-bottom:5px;color:var(--text-primary)}.support-feature-text p{color:var(--text-secondary);font-size:.95rem;line-height:1.5}.support-cta{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-radius:20px;padding:30px;margin-top:40px;border:1px solid var(--border-color)}[data-theme="light"] .support-cta{background:linear-gradient(135deg,#10b9811a,#0596691a)}.support-cta h3{font-size:1.5rem;font-weight:700;margin-bottom:15px;color:var(--text-primary)}.support-cta p{color:var(--text-secondary);margin-bottom:25px}@media (max-width: 768px){.support-section{padding:40px 25px;margin:40px auto}.support-title{font-size:2rem}.support-features{grid-template-columns:1fr}}
/* Footer */
.footer {
    margin-top: 100px;
    padding: 60px 0 30px;
    border-top: 1px solid var(--border-color);
    background: rgba(0, 0, 0, 0.05);
}

[data-theme="light"] .footer {
    background: rgba(241, 245, 249, 0.5);
}

.footer-content {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 50px;
    margin-bottom: 50px;
}

.footer-brand {
    font-size: 2rem;
    font-weight: 800;
    background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 20px;
    display: block;
}

.footer-tagline {
    color: var(--text-secondary);
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 20px;
}

.version-badge {
    display: inline-block;
    padding: 6px 15px;
    background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 700;
    color: white;
    margin-top: 10px;
}

.footer-section h4 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 25px;
    color: var(--text-primary);
}

.footer-links {
    list-style: none;
}

.footer-links li {
    margin-bottom: 15px;
}

.footer-links a {
    color: var(--text-secondary);
    text-decoration: none;
    transition: color 0.3s ease;
    font-size: 0.95rem;
}

.footer-links a:hover {
    color: var(--accent-primary);
}

.footer-social {
    display: flex;
    gap: 15px;
    margin-top: 20px;
}

.social-icon {
    width: 40px;
    height: 40px;
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-primary);
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 1.1rem;
}

.social-icon:hover {
    background: var(--accent-primary);
    color: white;
    transform: translateY(-3px);
    border-color: var(--accent-primary);
}

.footer-bottom {
    padding-top: 30px;
    border-top: 1px solid var(--border-color);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.copyright {
    color: var(--text-secondary);
    font-size: 0.9rem;
}

.footer-bottom-links {
    display: flex;
    gap: 25px;
}

.footer-bottom-links a {
    color: var(--text-secondary);
    text-decoration: none;
    font-size: 0.9rem;
    transition: color 0.3s ease;
}

.footer-bottom-links a:hover {
    color: var(--accent-primary);
}

/* Responsive Footer */
@media (max-width: 1024px) {
    .footer-content {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }
}

@media (max-width: 768px) {
    .footer {
        margin-top: 60px;
        padding: 40px 0 20px;
    }
    
    .footer-content {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .footer-bottom {
        flex-direction: column;
        text-align: center;
        gap: 15px;
    }
    
    .footer-bottom-links {
        justify-content: center;
        flex-wrap: wrap;
        gap: 15px;
    }
}