@import"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@100;200;300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100;300;400;500;700;900&display=swap";.auth-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease}.auth-modal{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-2xl);width:100%;max-width:400px;position:relative;animation:slideUp .3s ease}.auth-modal-close{position:absolute;top:var(--space-lg);right:var(--space-lg);background:none;border:none;width:24px;height:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.auth-modal-close:hover{transform:rotate(90deg)}.auth-modal-close span{position:absolute;width:16px;height:1px;background:var(--text-secondary);transition:background .3s ease}.auth-modal-close span:first-child{transform:rotate(45deg)}.auth-modal-close span:last-child{transform:rotate(-45deg)}.auth-modal-close:hover span{background:var(--text-primary)}.auth-content{text-align:center}.auth-content h2{font-size:2rem;font-weight:100;margin-bottom:var(--space-2xl);color:var(--text-primary);letter-spacing:.05em}.auth-form{display:flex;flex-direction:column;gap:var(--space-md)}.form-field{position:relative}.form-field input{width:100%;padding:var(--space-md) 0;background:transparent;border:none;border-bottom:1px solid var(--border-glass);color:var(--text-primary);font-size:1rem;font-weight:300;transition:border-color .3s ease;outline:none}.form-field input::placeholder{color:var(--text-muted)}.form-field input:focus{border-bottom-color:var(--text-secondary)}.form-field input:disabled{opacity:.5;cursor:not-allowed}.error-message{color:var(--error);font-size:.9rem;margin:var(--space-sm) 0;padding:var(--space-sm);background:#ff47571a;border-radius:var(--radius-sm);font-weight:300}.error-message.success{color:var(--success);background:#52e3a41a}.submit-button{width:100%;padding:var(--space-md);background:transparent;color:var(--text-primary);border:1px solid var(--border-glass);border-radius:var(--radius-sm);font-size:1rem;font-weight:300;cursor:pointer;transition:all .3s ease;margin-top:var(--space-md);letter-spacing:.05em;position:relative;overflow:hidden}.submit-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--glass-bg-hover);transition:left .3s ease}.submit-button:hover:not(:disabled){border-color:var(--border-glass-hover);transform:translateY(-1px)}.submit-button:hover:not(:disabled):before{left:0}.submit-button:disabled{opacity:.5;cursor:not-allowed}.submit-button span{position:relative;z-index:1}.auth-divider{margin:var(--space-xl) 0;position:relative}.auth-divider:before{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:var(--border-glass)}.auth-divider span{background:var(--charcoal-black);padding:0 var(--space-md);position:relative;color:var(--text-muted);font-size:.9rem;font-weight:300}.google-button{width:100%;padding:var(--space-md);background:transparent;color:var(--text-primary);border:1px solid var(--border-glass);border-radius:var(--radius-sm);font-size:1rem;font-weight:300;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);letter-spacing:.05em}.google-button:hover:not(:disabled){border-color:var(--border-glass-hover);transform:translateY(-1px)}.google-button:disabled{opacity:.5;cursor:not-allowed}.google-button svg{flex-shrink:0}.auth-switch{margin-top:var(--space-xl);color:var(--text-muted);font-size:.9rem;font-weight:300}.link-button{background:none;border:none;color:var(--text-secondary);cursor:pointer;text-decoration:underline;text-underline-offset:2px;font-size:inherit;font-weight:inherit;padding:0;transition:color .3s ease}.link-button:hover{color:var(--text-primary)}.vocabulary-assessment{height:100vh;height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl);opacity:0;transition:opacity .5s ease;background:var(--void-black);position:relative;overflow:hidden}.vocabulary-assessment:before{content:"";position:absolute;top:50%;left:50%;width:800px;height:800px;background:radial-gradient(circle,var(--accent-purple-dim) 0%,transparent 70%);transform:translate(-50%,-50%);opacity:.1;animation:pulse 8s ease-in-out infinite}.vocabulary-assessment.ready{opacity:1}.vocabulary-assessment.completing{opacity:0;transition:opacity .3s ease}.assessment-progress{position:absolute;top:var(--space-2xl);left:50%;transform:translate(-50%);width:90%;max-width:600px;z-index:10}.progress-track{height:4px;background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:2px;overflow:hidden;margin-bottom:var(--space-md);box-shadow:0 2px 8px #0000001a}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-purple),var(--sunset-orange));transition:width .5s cubic-bezier(.16,1,.3,1);box-shadow:0 0 20px #883aea80}.progress-text{text-align:center;font-size:.875rem;color:var(--text-muted);font-weight:300;font-family:JetBrains Mono,monospace;letter-spacing:.05em}.progress-details{display:flex;justify-content:center;align-items:center;gap:20px}.confidence-indicator{font-size:.813rem;color:var(--accent-purple);font-weight:400;opacity:.8;padding:2px 8px;background:#883aea1a;border-radius:var(--radius-sm);animation:fadeIn .3s ease}.assessment-content{text-align:center;width:100%;max-width:800px}.word-display{margin-bottom:var(--space-3xl)}.word-display-text{font-weight:300;line-height:1.2;margin-bottom:var(--space-lg);opacity:0;animation:fadeInScale .5s cubic-bezier(.16,1,.3,1) forwards;color:var(--text-primary);text-shadow:0 4px 20px rgba(255,255,255,.1);word-break:keep-all;overflow-wrap:break-word;-webkit-hyphens:none;hyphens:none;max-width:90vw;text-align:center;font-size:clamp(3rem,10vw,6rem)}.word-display-text[data-language=chinese]{font-family:Noto Sans SC,sans-serif;font-size:clamp(4rem,12vw,8rem)}.word-display-text[data-language=japanese]{font-family:Noto Sans JP,sans-serif;font-size:clamp(4rem,12vw,8rem);line-height:1.1}.word-display-text[data-language=arabic]{font-family:Noto Sans Arabic,sans-serif;font-size:clamp(4rem,12vw,8rem)}.word-display-text[data-language=korean]{font-family:Noto Sans KR,sans-serif;font-size:clamp(4rem,12vw,8rem)}.word-display-text[data-length=long]{font-size:clamp(2.5rem,8vw,5rem);line-height:1}.word-display-text[data-length=very-long]{font-size:clamp(2rem,6vw,3.5rem);line-height:.95}.word-pinyin,.word-pronunciation{font-size:1rem;color:var(--text-muted);font-weight:300;margin-bottom:var(--space-3xl);opacity:0;animation:fadeIn .5s cubic-bezier(.16,1,.3,1) .1s forwards;font-family:JetBrains Mono,monospace;letter-spacing:.1em;text-transform:lowercase}.word-english{font-size:1.1rem;color:var(--text-secondary);font-weight:300;margin-top:var(--space-xl);opacity:0;animation:fadeIn .3s cubic-bezier(.16,1,.3,1) forwards;font-family:JetBrains Mono,monospace;letter-spacing:.02em;padding:var(--space-sm) var(--space-lg);background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);display:inline-block}.action-area{display:flex;flex-direction:column;align-items:center;gap:var(--space-xl);position:relative;z-index:10}.response-buttons{display:flex;gap:var(--space-xl);justify-content:center}.response-button{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-lg) var(--space-2xl);cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;gap:var(--space-md);min-width:180px;position:relative;overflow:hidden;font-family:JetBrains Mono,monospace}.response-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;transition:left .4s cubic-bezier(.16,1,.3,1);z-index:0}.response-button.know:before{background:linear-gradient(90deg,transparent,rgba(82,227,164,.1))}.response-button.unknown:before{background:linear-gradient(90deg,transparent,rgba(247,100,100,.1))}.response-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0003}.response-button:hover:before{left:0}.response-button.know:hover{border-color:#52e3a44d}.response-button.unknown:hover{border-color:#f764644d}.key-hint{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#ffffff08;border:1px solid var(--border-glass);border-radius:var(--radius-sm);font-size:.813rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;position:relative;z-index:1}.button-text{font-size:1rem;font-weight:300;color:var(--text-primary);letter-spacing:.05em;position:relative;z-index:1}.meaning-toggle{background:transparent;border:1px solid var(--border-glass);border-radius:var(--radius-full);color:var(--text-muted);font-size:.813rem;font-weight:300;font-family:JetBrains Mono,monospace;cursor:pointer;padding:var(--space-xs) var(--space-lg);transition:all .3s cubic-bezier(.16,1,.3,1);text-transform:lowercase;letter-spacing:.05em;position:relative;z-index:10;pointer-events:auto}.meaning-toggle:hover{color:var(--text-primary);border-color:var(--border-glass-hover);transform:translateY(-1px)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.loading-message,.error-message{font-size:1.125rem;color:var(--text-secondary);font-weight:300;text-align:center;font-family:JetBrains Mono,monospace;letter-spacing:.05em}.error-message{color:var(--error-red, #f76464);margin-bottom:var(--space-lg)}.vocabulary-assessment button:disabled{opacity:.5;cursor:not-allowed}.vocabulary-assessment button:disabled:hover{transform:none;box-shadow:none}@media (max-width: 768px){.vocabulary-assessment{padding:var(--space-lg);min-height:100vh;min-height:100svh;padding-top:calc(var(--space-lg) + 80px);padding-bottom:var(--space-lg);box-sizing:border-box}.assessment-progress{position:fixed;top:var(--space-md);left:var(--space-md);right:var(--space-md);width:auto;max-width:none;transform:none;z-index:10}.word-display-text{font-size:clamp(2.5rem,12vw,4rem);margin-bottom:var(--space-md)}.word-display-text[data-language=chinese]{font-size:clamp(2.5rem,14vw,4rem)}.word-display-text[data-language=japanese]{font-size:clamp(2.5rem,14vw,4rem);line-height:1}.word-display-text[data-language=arabic]{font-size:clamp(3rem,16vw,5rem)}.word-display-text[data-length=long]{font-size:clamp(2rem,10vw,3rem)}.word-display-text[data-length=very-long]{font-size:clamp(1.5rem,8vw,2.5rem);line-height:.95}.word-pinyin,.word-pronunciation{font-size:.875rem;margin-bottom:var(--space-2xl)}.word-english{font-size:1rem}.response-buttons{flex-direction:column;width:100%;max-width:300px;gap:var(--space-md)}.response-button{width:100%;min-width:unset}.action-area{gap:var(--space-lg)}.assessment-content{padding-top:0;display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 160px);min-height:calc(100svh - 160px)}.word-display{margin-bottom:var(--space-xl);flex-shrink:0}}.language-selection{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:var(--space-2xl);padding-top:calc(var(--space-3xl) + 40px);opacity:0;transition:opacity .8s ease;background:var(--void-black);position:relative;overflow-x:hidden}.language-selection:before{content:"";position:absolute;top:50%;left:50%;width:800px;height:800px;background:radial-gradient(circle at center,var(--accent-purple-dim) 0%,transparent 70%);transform:translate(-50%,-50%);opacity:.1;pointer-events:none;animation:pulse 8s ease-in-out infinite;z-index:0}.language-selection.ready{opacity:1}.language-header{text-align:center;margin-bottom:var(--space-3xl);position:relative;z-index:2}.language-header h1{font-size:clamp(2rem,6vw,3rem);font-weight:100;margin-bottom:var(--space-md);color:var(--text-primary);font-family:JetBrains Mono,monospace;letter-spacing:.05em;opacity:0;animation:fadeIn .8s ease .2s forwards}.language-header p{font-size:1rem;color:var(--text-secondary);font-weight:300;font-family:JetBrains Mono,monospace;letter-spacing:.05em;opacity:0;animation:fadeIn .8s ease .4s forwards}.language-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-lg);margin-bottom:var(--space-3xl);max-width:1200px;width:100%;position:relative;z-index:2}.language-card{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-xl);cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;opacity:0;animation:fadeInUp .6s ease forwards}.language-card:nth-child(2){animation-delay:.1s}.language-card:nth-child(3){animation-delay:.2s}.language-card:nth-child(4){animation-delay:.3s}.language-card:nth-child(5){animation-delay:.4s}.language-card:nth-child(6){animation-delay:.5s}.language-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(136,58,234,.05));transition:left .4s cubic-bezier(.16,1,.3,1)}.language-card:hover{border-color:var(--border-glass-hover);transform:translateY(-4px);box-shadow:0 8px 20px #0003}.language-card:hover:before{left:0}.language-card.selected{border-color:#883aea4d;background:#883aea0d}.language-card.selected:after{content:"✓";position:absolute;top:var(--space-md);right:var(--space-md);width:20px;height:20px;background:var(--accent-purple);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;z-index:1}.language-flag{font-size:2.5rem;margin-bottom:var(--space-md);position:relative;z-index:1}.language-info h3{font-size:1.125rem;font-weight:400;margin-bottom:var(--space-xs);color:var(--text-primary);font-family:JetBrains Mono,monospace;letter-spacing:.02em;position:relative;z-index:1}.language-native{font-size:1rem;color:var(--text-secondary);margin-bottom:var(--space-sm);font-weight:300;position:relative;z-index:1}.language-system{font-size:.75rem;color:var(--accent-purple);font-weight:400;margin-bottom:var(--space-md);text-transform:uppercase;letter-spacing:.1em;font-family:JetBrains Mono,monospace;opacity:.8;position:relative;z-index:1}.language-description{font-size:.813rem;color:var(--text-muted);line-height:1.4;font-weight:300;font-family:JetBrains Mono,monospace;letter-spacing:.01em;position:relative;z-index:1}.language-actions{display:flex;justify-content:center;position:relative;z-index:2}.continue-button{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);color:var(--text-primary);padding:var(--space-md) var(--space-3xl);font-size:1rem;font-weight:300;font-family:JetBrains Mono,monospace;letter-spacing:.05em;cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;opacity:0;animation:fadeIn .8s ease .6s forwards}.continue-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(136,58,234,.1));transition:left .4s cubic-bezier(.16,1,.3,1)}.continue-button:hover:not(:disabled){transform:translateY(-2px);border-color:var(--border-glass-hover);box-shadow:0 8px 16px #0003}.continue-button:hover:not(:disabled):before{left:0}.continue-button span{position:relative;z-index:1}.continue-button:disabled{opacity:.3;cursor:not-allowed;transform:none;box-shadow:none}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.1}50%{transform:translate(-50%,-50%) scale(1.1);opacity:.15}}@media (max-width: 768px){.language-selection{padding:var(--space-lg)}.language-header h1{font-size:clamp(1.5rem,8vw,2rem)}.language-grid{grid-template-columns:1fr;gap:var(--space-md);margin-bottom:var(--space-2xl)}.language-card{padding:var(--space-lg)}.language-flag{font-size:2rem}.language-info h3{font-size:1rem}.language-description{font-size:.75rem}}.onboarding-tutorial{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--space-2xl);background:var(--void-black);position:relative;opacity:0;transition:opacity .5s ease;overflow:hidden}.onboarding-tutorial:before{content:"";position:absolute;top:50%;left:50%;width:1000px;height:1000px;background:radial-gradient(circle,var(--accent-purple-dim) 0%,transparent 60%);transform:translate(-50%,-50%);opacity:.08;animation:pulse 10s ease-in-out infinite}.onboarding-tutorial.ready{opacity:1}.tutorial-container{width:100%;max-width:800px;position:relative;z-index:1}.tutorial-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2xl)}.progress-dots{display:flex;gap:var(--space-sm)}.progress-dot{width:8px;height:8px;border-radius:50%;background:#ffffff1a;border:1px solid var(--border-glass);transition:all .3s cubic-bezier(.16,1,.3,1)}.progress-dot.active{width:24px;border-radius:4px;background:var(--accent-purple);border-color:var(--accent-purple);box-shadow:0 0 20px #883aea80}.progress-dot.completed{background:#883aea4d;border-color:var(--accent-purple)}.skip-button{background:transparent;border:1px solid var(--border-glass);border-radius:var(--radius-full);color:var(--text-muted);font-size:.813rem;font-weight:300;font-family:JetBrains Mono,monospace;cursor:pointer;padding:var(--space-xs) var(--space-lg);transition:all .3s cubic-bezier(.16,1,.3,1);text-transform:lowercase;letter-spacing:.05em}.skip-button:hover{color:var(--text-primary);border-color:var(--border-glass-hover);transform:translateY(-1px)}.tutorial-content{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:var(--radius-xl);padding:var(--space-3xl);min-height:400px;position:relative;overflow:hidden}.tutorial-content:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(136,58,234,.05) 0%,transparent 50%);animation:rotate 20s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}.tutorial-title{font-size:1.75rem;font-weight:300;color:var(--text-primary);margin-bottom:var(--space-2xl);text-align:center;letter-spacing:.02em;position:relative;z-index:1}.step-content{position:relative;z-index:1}.step-description{font-size:1rem;line-height:1.6;color:var(--text-secondary);text-align:center;max-width:600px;margin:var(--space-xl) auto 0;font-family:JetBrains Mono,monospace}.stat-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);margin-bottom:var(--space-2xl)}.stat-card{background:#ffffff05;border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-xl);text-align:center;transition:all .3s cubic-bezier(.16,1,.3,1)}.stat-card:hover{transform:translateY(-2px);border-color:var(--accent-purple-dim);background:#883aea0d}.stat-card.primary{grid-column:span 2}.stat-number{font-size:3rem;font-weight:300;color:var(--accent-purple);line-height:1;margin-bottom:var(--space-sm);text-shadow:0 0 30px rgba(136,58,234,.5)}.stat-label{font-size:.875rem;color:var(--text-muted);text-transform:lowercase;letter-spacing:.05em}.demo-word-display{text-align:center;margin-bottom:var(--space-2xl)}.demo-word{font-size:4rem;font-weight:300;color:var(--text-primary);margin-bottom:var(--space-md);font-family:Noto Sans SC,sans-serif;animation:pulse-text 2s ease-in-out infinite}@keyframes pulse-text{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.demo-pronunciation{font-size:1rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;letter-spacing:.1em}.demo-controls{display:flex;gap:var(--space-xl);justify-content:center;margin-bottom:var(--space-2xl)}.demo-button{background:var(--glass-bg);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-xl);display:flex;align-items:center;gap:var(--space-md);transition:all .3s cubic-bezier(.16,1,.3,1)}.demo-button.known{animation:demo-pulse-green 3s ease-in-out infinite}.demo-button.unknown{animation:demo-pulse-red 3s ease-in-out infinite 1.5s}@keyframes demo-pulse-green{0%,to{border-color:var(--border-glass)}50%{border-color:#52e3a480;box-shadow:0 0 20px #52e3a433}}@keyframes demo-pulse-red{0%,to{border-color:var(--border-glass)}50%{border-color:#f7646480;box-shadow:0 0 20px #f7646433}}.key-hint{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#ffffff08;border:1px solid var(--border-glass);border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.button-text{font-size:.875rem;color:var(--text-secondary);font-family:JetBrains Mono,monospace;text-transform:lowercase}.comprehension-visual{margin-bottom:var(--space-2xl)}.comprehension-bar{height:60px;border-radius:var(--radius-lg);overflow:hidden;display:flex;background:#ffffff05;border:1px solid var(--border-glass)}.known-portion{background:linear-gradient(135deg,var(--accent-purple),var(--accent-purple-dim));display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.125rem;font-weight:300;letter-spacing:.05em}.unknown-portion{background:linear-gradient(135deg,var(--sunset-orange),rgba(247,147,30,.7));display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;font-weight:500;min-width:40px}.method-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);margin-top:var(--space-2xl)}.benefit{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);text-align:center}.benefit-icon{font-size:2rem}.benefit span:last-child{font-size:.813rem;color:var(--text-muted);line-height:1.4}.learning-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg);margin-bottom:var(--space-2xl)}.flow-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);text-align:center;position:relative}.flow-item:after{content:"→";position:absolute;right:-25px;top:20px;color:var(--text-muted);opacity:.3;font-size:1.25rem}.flow-item:last-child:after{display:none}.flow-icon{font-size:2rem;display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:#883aea1a;border:1px solid rgba(136,58,234,.2);border-radius:50%}.flow-label{font-size:.813rem;color:var(--text-muted);line-height:1.3}.vocabulary-view-callout{background:linear-gradient(135deg,#883aea0d,#52e3a40d);border:1px solid rgba(136,58,234,.2);border-radius:var(--radius-lg);padding:var(--space-xl);margin-top:var(--space-2xl);display:flex;gap:var(--space-lg);align-items:flex-start}.callout-icon{font-size:1.5rem;flex-shrink:0}.callout-content strong{display:block;font-size:1rem;color:var(--text-primary);margin-bottom:var(--space-sm);font-weight:400}.callout-content p{font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin:0}.final-celebration{display:flex;justify-content:center;margin-bottom:var(--space-2xl);height:120px;position:relative}.celebration-icon{position:relative;display:flex;align-items:center;justify-content:center}.icon-main{font-size:4rem;animation:bounce 2s ease-in-out infinite;z-index:2;position:relative}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.icon-orbit{position:absolute;font-size:1.5rem;animation:orbit 4s linear infinite}.orbit-1{animation-duration:3s;animation-delay:0s}.orbit-2{animation-duration:4s;animation-delay:1s}.orbit-3{animation-duration:5s;animation-delay:2s}@keyframes orbit{0%{transform:rotate(0) translate(60px) rotate(0)}to{transform:rotate(360deg) translate(60px) rotate(-360deg)}}.encouragement-message{text-align:center;margin-bottom:var(--space-xl)}.final-heading{font-size:2rem;font-weight:300;background:linear-gradient(135deg,var(--accent-purple),var(--sunset-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-md);animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%,to{opacity:1}50%{opacity:.8}}.encouragement-message p{color:var(--text-secondary);line-height:1.6}.final-stats-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);margin-bottom:var(--space-2xl);padding:var(--space-xl);background:#ffffff05;border-radius:var(--radius-xl);border:1px solid var(--border-glass);animation:slideUpFade .6s ease-out .3s both}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stat-preview{text-align:center;padding:var(--space-md)}.stat-preview-number{display:block;font-size:2rem;font-weight:300;color:var(--accent-purple);margin-bottom:var(--space-xs);text-shadow:0 0 20px rgba(136,58,234,.3)}.stat-preview-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-family:JetBrains Mono,monospace}.tips-container{background:#883aea0d;border:1px solid rgba(136,58,234,.2);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-2xl);animation:slideUpFade .6s ease-out .5s both}.tips-container.floating{position:relative;animation:slideUpFade .6s ease-out .5s both,float 4s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.tips-container h4{font-size:1rem;font-weight:400;color:var(--accent-purple);margin-bottom:var(--space-md)}.tips-list{list-style:none;padding:0;margin:0}.tips-list li{position:relative;padding-left:var(--space-xl);margin-bottom:var(--space-sm);color:var(--text-secondary);font-size:.875rem;line-height:1.5}.tip-item{opacity:0;animation:fadeInLeft .5s ease-out forwards}.tip-item:nth-child(1){animation-delay:.7s}.tip-item:nth-child(2){animation-delay:.9s}.tip-item:nth-child(3){animation-delay:1.1s}.tip-item:nth-child(4){animation-delay:1.3s}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.tips-list li:before{content:"→";position:absolute;left:0;color:var(--accent-purple)}.start-reading-button{width:100%;padding:var(--space-lg) var(--space-2xl);background:linear-gradient(135deg,var(--accent-purple),var(--sunset-orange));border:none;border-radius:var(--radius-lg);color:#fff;font-size:1.125rem;font-weight:300;font-family:JetBrains Mono,monospace;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);text-transform:lowercase;letter-spacing:.05em;box-shadow:0 4px 20px #883aea4d;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:var(--space-md);animation:slideUpFade .6s ease-out 1.5s both}.start-reading-button.glowing{animation:slideUpFade .6s ease-out 1.5s both,glow 2s ease-in-out infinite}@keyframes glow{0%,to{box-shadow:0 4px 20px #883aea4d,0 0 40px #883aea1a}50%{box-shadow:0 8px 30px #883aea80,0 0 60px #883aea33}}.button-text{position:relative;z-index:1}.button-arrow{font-size:1.25rem;transition:transform .3s ease;position:relative;z-index:1}.start-reading-button:hover .button-arrow{transform:translate(5px)}.start-reading-button:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .8s ease}.start-reading-button:hover:after{left:100%}.start-reading-button:hover{transform:translateY(-2px);box-shadow:0 10px 40px #883aea80,0 0 80px #883aea4d}.tutorial-navigation{display:flex;justify-content:space-between;margin-top:var(--space-2xl)}.nav-button{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);color:var(--text-primary);font-size:.875rem;font-weight:300;font-family:JetBrains Mono,monospace;cursor:pointer;padding:var(--space-md) var(--space-xl);transition:all .3s cubic-bezier(.16,1,.3,1);text-transform:lowercase;letter-spacing:.05em}.nav-button:hover{transform:translateY(-2px);border-color:var(--accent-purple-dim);box-shadow:0 4px 16px #0003}.nav-button.next{margin-left:auto}.fade-scale{animation:fadeScale .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.slide-up{animation:slideUp .5s cubic-bezier(.16,1,.3,1) forwards}@media (max-width: 768px){.onboarding-tutorial{padding:var(--space-md)}.tutorial-content{padding:var(--space-lg);min-height:auto}.tutorial-title{font-size:1.25rem;margin-bottom:var(--space-lg)}.step-description{font-size:.875rem;line-height:1.5;margin-top:var(--space-md)}.stat-cards{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.stat-card{padding:var(--space-md)}.stat-card.primary{grid-column:span 2}.stat-number{font-size:1.5rem}.demo-word-display{margin-bottom:var(--space-lg)}.demo-word{font-size:2.5rem;margin-bottom:var(--space-sm)}.demo-pronunciation{font-size:.875rem;margin-bottom:var(--space-lg)}.method-benefits{grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.benefit-icon{font-size:1.5rem}.benefit span:last-child{font-size:.7rem}.learning-flow{grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}.flow-icon{width:45px;height:45px;font-size:1.5rem}.flow-label{font-size:.7rem}.flow-item:after{display:none}.flow-item:nth-child(odd):after{content:"→";display:block;right:-15px;font-size:1rem}.flow-item:nth-child(2):after{content:"↓";display:block;right:auto;left:50%;top:auto;bottom:-20px;transform:translate(-50%)}.vocabulary-view-callout{padding:var(--space-md);margin-top:var(--space-lg)}.vocabulary-view-callout p{font-size:.813rem}.tutorial-navigation{position:fixed;bottom:var(--space-md);left:var(--space-md);right:var(--space-md);background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:var(--space-sm);border-radius:var(--radius-lg);border:1px solid var(--border-glass)}.final-celebration{height:80px;margin-bottom:var(--space-lg)}.icon-main{font-size:2.5rem}.celebration-icon .icon-orbit{display:none}.final-heading{font-size:1.5rem;margin-bottom:var(--space-sm)}.encouragement-message{margin-bottom:var(--space-md)}.encouragement-message p{font-size:.875rem}.final-stats-preview{grid-template-columns:repeat(3,1fr);gap:var(--space-sm);padding:var(--space-md);margin-bottom:var(--space-lg)}.stat-preview{padding:var(--space-sm)}.stat-preview-number{font-size:1.25rem}.stat-preview-label{font-size:.625rem}.tips-container{padding:var(--space-md);margin-bottom:var(--space-lg)}.tips-container h4{font-size:.875rem;margin-bottom:var(--space-sm)}.tips-list li{font-size:.75rem;margin-bottom:var(--space-xs);padding-left:var(--space-md)}}@media (max-width: 480px){.tutorial-content{padding:var(--space-md)}.tutorial-title{font-size:1rem;margin-bottom:var(--space-md)}.demo-controls{flex-direction:row;gap:var(--space-md)}.demo-button{flex:1;justify-content:center;padding:var(--space-sm) var(--space-md)}.final-heading{font-size:1.25rem}.stat-preview-number{font-size:1rem}.stat-preview-label{font-size:.6rem;line-height:1}.final-celebration{height:60px}.icon-main{font-size:2rem}}.onboarding{height:100vh;height:100dvh;display:flex;align-items:center;justify-content:center;position:relative;opacity:0;transition:opacity .8s ease;background:var(--void-black);overflow:hidden}.onboarding.ready{opacity:1}.onboarding-back-button{position:fixed;top:var(--space-md);left:var(--space-md);padding:var(--space-xs) var(--space-sm);background:transparent;border:none;color:#fff6;font-family:var(--font-mono);font-size:var(--text-xs);cursor:pointer;transition:all .2s ease;z-index:100;display:flex;align-items:center;gap:var(--space-xs);text-transform:lowercase;letter-spacing:.05em}.onboarding-back-button:hover{color:#ffffffb3;transform:translate(-2px)}.onboarding-back-button:active{transform:translate(-4px)}@media (max-width: 768px){.onboarding-back-button{top:var(--space-sm);left:var(--space-sm);font-size:.75rem}}.onboarding-intro{text-align:center;position:relative;z-index:2}.intro-content{padding:var(--space-3xl);position:relative}.intro-title{font-size:clamp(3rem,8vw,6rem);font-weight:100;letter-spacing:.1em;margin-bottom:var(--space-xl);line-height:1.2;font-family:inherit}.title-word{display:block;opacity:0;transform:translateY(20px);animation:fadeInUp .8s ease forwards}.title-word.delay-1{animation-delay:.2s}.title-word.delay-2{animation-delay:.4s;background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.intro-subtitle{font-size:1.2rem;color:var(--text-secondary);font-weight:300;margin-bottom:var(--space-3xl);opacity:0;animation:fadeIn 1s ease .8s forwards;font-family:JetBrains Mono,monospace;letter-spacing:.05em}.start-button{background:#ffffff05;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);color:var(--text-primary);padding:var(--space-md) var(--space-3xl);font-size:1rem;font-weight:300;font-family:JetBrains Mono,monospace;letter-spacing:.1em;cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;opacity:0;animation:fadeIn 1s ease 1.2s forwards;box-shadow:0 4px 12px #0000001a}.start-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(136,58,234,.1));transition:left .4s cubic-bezier(.16,1,.3,1)}.start-button:hover{border-color:var(--border-glass-hover);transform:translateY(-2px);box-shadow:0 8px 20px #0003}.start-button:hover:before{left:0}.start-button span{position:relative;z-index:1}.onboarding.saving{opacity:0}.onboarding.saving.ready{animation:fadeIn .3s ease forwards}.saving-content{text-align:center;max-width:500px;margin:0 auto}.saving-content h2{font-size:2rem;font-weight:100;color:var(--text-primary);margin-bottom:var(--space-2xl);font-family:JetBrains Mono,monospace;letter-spacing:.05em}.save-progress{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-xl)}.save-progress-bar{height:6px;background:#ffffff0d;border-radius:3px;overflow:hidden;margin-bottom:var(--space-md)}.save-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-purple),var(--sunset-orange));transition:width .3s cubic-bezier(.16,1,.3,1);box-shadow:0 0 20px #9c5aff80}.save-progress-text{font-size:.875rem;color:var(--text-secondary);font-family:JetBrains Mono,monospace;letter-spacing:.05em}.onboarding.complete,.onboarding.error{opacity:0;animation:fadeIn .5s ease forwards}.complete-content{text-align:center}.complete-icon{font-size:4rem;color:var(--success);margin-bottom:var(--space-xl);opacity:0;transform:scale(0);animation:popIn .5s cubic-bezier(.16,1,.3,1) .3s forwards;filter:drop-shadow(0 4px 20px rgba(82,227,164,.3))}.complete-content h2{font-size:2rem;font-weight:100;color:var(--text-primary);opacity:0;animation:fadeIn .5s ease .6s forwards;font-family:JetBrains Mono,monospace;letter-spacing:.05em}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@keyframes popIn{to{opacity:1;transform:scale(1)}}.onboarding:before{content:"";position:absolute;top:50%;left:50%;width:800px;height:800px;background:radial-gradient(circle at center,var(--accent-purple-dim) 0%,transparent 70%);transform:translate(-50%,-50%);opacity:.1;pointer-events:none;animation:pulse 8s ease-in-out infinite;z-index:0}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.3}50%{transform:translate(-50%,-50%) scale(1.1);opacity:.5}}.error-content{text-align:center}.error-icon{font-size:3rem;color:var(--warning, #f59e0b);margin-bottom:var(--space-lg);font-weight:700;display:inline-block;width:60px;height:60px;line-height:60px;border:2px solid var(--warning, #f59e0b);border-radius:50%;opacity:0;animation:popIn .5s cubic-bezier(.16,1,.3,1) .3s forwards}.error-content h2{font-size:2rem;font-weight:100;color:var(--text-primary);margin-bottom:var(--space-md);opacity:0;animation:fadeIn .5s ease .6s forwards;font-family:JetBrains Mono,monospace;letter-spacing:.05em}.error-content p{color:var(--text-secondary);font-size:.9rem;opacity:0;animation:fadeIn .5s ease .8s forwards}.landing-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:var(--space-xl) var(--space-2xl);opacity:0;transition:opacity .8s ease;position:relative;overflow-x:hidden}.landing-page.ready{opacity:1}.landing-page:before{content:"";position:absolute;top:50%;left:50%;width:150%;height:150%;background:radial-gradient(circle at center,var(--accent-purple-dim) 0%,transparent 40%);transform:translate(-50%,-50%);opacity:0;animation:fadeInPulse 2s cubic-bezier(.16,1,.3,1) .3s forwards}@keyframes fadeInPulse{to{opacity:.03}}.landing-hero{text-align:center;max-width:800px;margin-bottom:var(--space-2xl)}.landing-title{font-size:clamp(3rem,8vw,5rem);font-weight:100;margin-bottom:var(--space-xl);line-height:1.2;display:flex;flex-direction:column;gap:var(--space-sm)}.title-line{display:block;opacity:0;transform:translateY(20px);animation:titleSlide .7s cubic-bezier(.16,1,.3,1) forwards}.title-line:nth-child(1){animation-delay:.2s}.title-line:nth-child(2){animation-delay:.3s;color:var(--text-secondary);transform:translateY(20px) translate(-10px);animation-name:titleSlideAlt}.landing-subtitle{font-size:1.3rem;color:var(--text-muted);font-weight:300;opacity:0;animation:subtitleFade .8s cubic-bezier(.16,1,.3,1) .6s forwards;max-width:600px;margin:0 auto var(--space-2xl)}.landing-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-2xl);max-width:900px;width:100%;margin:var(--space-2xl) 0;opacity:0;animation:fadeIn .6s ease 1.8s forwards}.feature{text-align:center;padding:var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg);transition:all .3s ease}.feature:hover{transform:translateY(-4px);border-color:var(--border-glass-hover);background:var(--glass-bg-hover)}.feature-icon{font-size:3rem;font-weight:100;color:var(--text-secondary);margin-bottom:var(--space-md);font-family:JetBrains Mono,monospace}.feature h3{font-size:1.2rem;font-weight:300;margin-bottom:var(--space-sm);color:var(--text-primary)}.feature p{font-size:.95rem;color:var(--text-muted);font-weight:300;line-height:1.6}.demo-section{text-align:center;margin-bottom:var(--space-3xl);opacity:0;animation:fadeIn 1s ease .8s forwards}.demo-section h2{font-size:2rem;font-weight:100;margin-bottom:var(--space-sm);color:var(--text-primary)}.demo-section p{color:var(--text-muted);font-weight:300;margin-bottom:var(--space-xl)}.demo-button{padding:var(--space-md) var(--space-2xl);background:transparent;border:1px solid var(--border-glass);color:var(--text-primary);font-size:1.1rem;font-weight:300;cursor:pointer;transition:all .3s ease;letter-spacing:.05em;position:relative;overflow:hidden}.demo-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--glass-bg-hover);transition:left .3s ease;z-index:-1}.demo-button:hover:before{left:0}.demo-button:hover{transform:translateY(-2px);border-color:var(--border-glass-hover)}.hero-actions{display:flex;gap:var(--space-lg);justify-content:center;margin-top:var(--space-xl);opacity:0;transform:translateY(15px) scale(.98);animation:buttonReveal .6s cubic-bezier(.16,1,.3,1) .9s forwards}.demo-container{width:100%;max-width:800px;margin:var(--space-2xl) auto;opacity:0;transform:translateY(30px) scale(.98);animation:demoReveal .8s cubic-bezier(.16,1,.3,1) 1.1s forwards}.demo-story-box{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-2xl);position:relative;overflow:hidden;height:350px;display:flex;flex-direction:column}.demo-label{margin-bottom:var(--space-lg);min-height:3em;transition:opacity .3s ease;display:flex;flex-direction:column;gap:var(--space-xs)}.phase-number{font-size:.85rem;color:var(--accent-purple);font-weight:500;text-transform:uppercase;letter-spacing:.1em;opacity:0;animation:fadeIn .5s ease forwards}.phase-text{font-size:1rem;color:var(--text-secondary);font-weight:300;opacity:0;animation:fadeIn .5s ease .1s forwards}.demo-story-text{line-height:2;font-family:Noto Sans SC,sans-serif;flex:1;font-size:1.3rem;overflow-y:auto;margin-bottom:var(--space-lg)}.demo-word{position:relative;transition:all .3s ease;padding:0 2px;border-radius:3px;font-size:inherit;display:inline-block}.demo-word.unknown{color:var(--text-muted)}.demo-word.known{color:var(--text-primary)}.demo-word.selected{background:#ffffff1a;box-shadow:0 2px 0 var(--text-secondary);animation:select .3s ease}.demo-word.marked-known{color:var(--text-primary);opacity:.8}.demo-word.marked-unknown{color:var(--error);background:#ff47571a;animation:markUnknown .5s ease}@keyframes select{0%{background:#fff0;transform:translateY(0)}50%{transform:translateY(-2px)}to{background:#ffffff1a;transform:translateY(0)}}@keyframes markUnknown{0%{background:#ff475700}50%{background:#ff475733}to{background:#ff47571a}}.typing-cursor{color:var(--text-secondary);animation:blink 1s infinite;font-weight:100}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.demo-legend{display:flex;gap:var(--space-xl);justify-content:center;font-size:.9rem;color:var(--text-muted)}.legend-item{display:flex;align-items:center;gap:var(--space-sm)}.legend-dot{width:12px;height:12px;border-radius:50%;display:inline-block}.legend-dot.known{background:var(--text-primary)}.legend-dot.unknown{background:var(--error);box-shadow:0 0 8px #f5450080}.legend-dot.intro{background:var(--accent-purple);box-shadow:0 0 8px #883aea80}.demo-word.known-word-final{color:var(--text-secondary);opacity:.9;animation:fadeToKnown .5s ease}.demo-word.intro-word{color:var(--accent-purple);background:#883aea26;padding:0 4px;border-radius:4px;font-weight:500;animation:fadeToIntro .5s ease}@keyframes fadeToKnown{0%{color:var(--text-primary)}to{color:var(--text-secondary);opacity:.9}}@keyframes fadeToIntro{0%{color:var(--text-muted);background:#883aea00}to{color:var(--accent-purple);background:#883aea26}}.signin-button{padding:var(--space-md) var(--space-2xl);background:transparent;border:1px solid var(--border-glass);color:var(--text-primary);font-size:1.1rem;font-weight:300;cursor:pointer;transition:all .3s ease;letter-spacing:.05em;position:relative;overflow:hidden}.signin-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--glass-bg-hover);transition:left .3s ease;z-index:-1}.signin-button:hover:before{left:0}.signin-button:hover{transform:translateY(-2px);border-color:var(--border-glass-hover)}.signin-button.primary{background:var(--glass-bg);border-color:var(--accent-purple);color:var(--accent-purple);font-size:1.1rem;padding:var(--space-lg) var(--space-3xl);font-weight:400;letter-spacing:.1em;text-transform:lowercase;position:relative;overflow:hidden}.signin-button.primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,rgba(136,58,234,.1) 0%,transparent 70%);opacity:0;transition:opacity .4s ease}.signin-button.primary:hover{background:var(--glass-bg-hover);transform:translateY(-2px) scale(1.02);transition:all .3s cubic-bezier(.16,1,.3,1)}.signin-button.primary:hover:after{opacity:1}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.03}50%{transform:translate(-50%,-50%) scale(1.1);opacity:.05}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}@keyframes titleSlide{to{opacity:1;transform:translateY(0)}}@keyframes titleSlideAlt{to{opacity:1;transform:translateY(0) translate(0)}}@keyframes subtitleFade{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes buttonReveal{to{opacity:1;transform:translateY(0) scale(1)}}@keyframes demoReveal{0%{opacity:0;transform:translateY(30px) scale(.98)}50%{opacity:1}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.landing-hero{margin-bottom:var(--space-3xl)}.landing-title{font-size:clamp(2.5rem,10vw,4rem)}.landing-subtitle{font-size:1.1rem}.hero-actions{flex-direction:column;width:100%;max-width:300px;margin:0 auto}.demo-button,.signin-button{width:100%}.landing-features{gap:var(--space-lg)}.feature{padding:var(--space-lg)}.demo-story-box{height:500px;padding:var(--space-lg)}.demo-story-text{font-size:1.1rem;line-height:1.8}.word-chinese{font-size:clamp(3rem,15vw,5rem)}.response-buttons{flex-direction:column;width:100%;max-width:300px}.response-button{width:100%}.complete-actions{flex-direction:column;width:100%;max-width:300px;margin:0 auto}.reset-button,.signin-button.primary{width:100%}.skip-demo{position:static;margin-top:var(--space-2xl)}}.account-menu{position:relative}.account-menu-trigger{display:flex;align-items:center;gap:var(--space-sm);background:#ffffff05;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:40px;padding:4px var(--space-md) 4px 4px;cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1);color:var(--text-primary);position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001a}.account-menu-trigger:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#883aea1a,#ff6b3d1a);opacity:0;transition:opacity .4s cubic-bezier(.16,1,.3,1);border-radius:40px}.account-menu-trigger:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;background:linear-gradient(135deg,var(--accent-purple),var(--sunset-orange));border-radius:40px;opacity:0;z-index:-1;transition:opacity .4s cubic-bezier(.16,1,.3,1)}.account-menu-trigger:hover{border-color:#ffffff26;transform:translateY(-2px);box-shadow:0 8px 16px #0003}.account-menu-trigger:hover:before{opacity:1}.account-menu-trigger:hover:after{opacity:.1}.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent-purple-dim),var(--accent-orange-dim));color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:300;position:relative;z-index:1;box-shadow:0 2px 8px #883aea33;font-family:JetBrains Mono,monospace;transition:all .4s cubic-bezier(.16,1,.3,1)}.account-menu-trigger:hover .user-avatar{transform:scale(1.05);box-shadow:0 4px 12px #883aea4d}.user-email{font-size:.875rem;color:var(--text-secondary);font-weight:300;font-family:JetBrains Mono,monospace;letter-spacing:-.01em;position:relative;z-index:1}.menu-chevron{transition:all .4s cubic-bezier(.16,1,.3,1);color:var(--text-muted);position:relative;z-index:1;opacity:.5;font-size:.75rem}.account-menu-trigger:hover .menu-chevron{opacity:.8}.menu-chevron.open{transform:rotate(180deg);opacity:.8}.account-menu-dropdown{position:absolute;top:calc(100% + var(--space-md));right:0;min-width:240px;background:var(--void-black);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);box-shadow:0 20px 40px #0006;overflow:hidden;animation:dropdownReveal .3s cubic-bezier(.16,1,.3,1)}.account-menu-dropdown:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--glass-bg);opacity:.5}@keyframes dropdownReveal{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.menu-section{padding:var(--space-sm);position:relative;z-index:1}.menu-item{display:flex;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-sm) var(--space-md);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.875rem;font-weight:300;font-family:JetBrains Mono,monospace;cursor:pointer;transition:all var(--transition-base);text-align:left;position:relative;overflow:hidden}.menu-item:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,var(--glass-bg-hover));opacity:0;transform:translate(-100%);transition:all var(--transition-base)}.menu-item:hover{color:var(--text-primary);transform:translate(2px)}.menu-item:hover:before{opacity:1;transform:translate(0)}.menu-item.upgrade{color:var(--accent-purple)}.menu-item.upgrade:before{background:linear-gradient(90deg,transparent,rgba(136,58,234,.1))}.menu-item.upgrade:hover{color:var(--accent-purple)}.menu-icon{flex-shrink:0;font-size:1.1rem;opacity:.8;transition:all var(--transition-base)}.menu-item:hover .menu-icon{opacity:1;transform:translate(2px)}.menu-divider{height:1px;background:linear-gradient(90deg,transparent,var(--border-glass),transparent);margin:var(--space-xs) var(--space-sm);opacity:.5}@media (max-width: 768px){.account-menu-trigger{padding:3px var(--space-sm) 3px 3px}.user-avatar{width:28px;height:28px;font-size:.813rem}.user-email,.menu-chevron{display:none}.account-menu-dropdown{right:-var(--space-md);min-width:200px}.menu-item{font-size:.813rem;padding:var(--space-sm) var(--space-sm)}}._container_cwkim_3{min-height:100vh;min-height:100svh;background:var(--void-black, #0a0a0a);position:relative;overflow:hidden}._container_cwkim_3:before{content:"";position:absolute;top:50%;left:50%;width:1200px;height:1200px;background:radial-gradient(circle,rgba(136,58,234,.15) 0%,transparent 60%);transform:translate(-50%,-50%);animation:_pulse_cwkim_1 12s ease-in-out infinite;pointer-events:none}._container_cwkim_3:after{content:"";position:absolute;top:20%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(247,121,125,.1) 0%,transparent 70%);animation:_float_cwkim_1 15s ease-in-out infinite;pointer-events:none}._header_cwkim_39{position:sticky;top:0;z-index:100;background:#0a0a0acc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.06);padding:1.5rem 2rem;animation:_slideDown_cwkim_1 .5s cubic-bezier(.16,1,.3,1)}._headerContent_cwkim_51{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}._title_cwkim_59{font-size:1.5rem;font-weight:300;color:#fffffff2;letter-spacing:-.02em;margin:0;line-height:1.3}._subtitle_cwkim_68{font-size:.875rem;color:#ffffff80;margin:.25rem 0 0;font-family:JetBrains Mono,monospace;display:flex;align-items:center;gap:.5rem}._infoButton_cwkim_78{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#883aea33;border:1px solid rgba(136,58,234,.4);color:#883aeae6;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-left:.5rem}._infoButton_cwkim_78:hover{background:#883aea4d;border-color:#883aea99;transform:scale(1.1)}._backButton_cwkim_101{background:#ffffff08;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:12px;color:#ffffffb3;padding:.625rem 1.25rem;font-size:.875rem;font-weight:400;font-family:JetBrains Mono,monospace;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;gap:.5rem}._backButton_cwkim_101:hover{background:#ffffff0f;border-color:#ffffff1f;color:#fffffff2;transform:translate(-2px)}._content_cwkim_127{max-width:1400px;margin:0 auto;padding:2rem;animation:_fadeIn_cwkim_1 .6s ease-out}._statsGrid_cwkim_135{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}._statCard_cwkim_142{background:#ffffff08;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:1.75rem;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.16,1,.3,1);animation:_fadeInScale_cwkim_1 .5s cubic-bezier(.16,1,.3,1) backwards}._statCard_cwkim_142:nth-child(1){animation-delay:.1s}._statCard_cwkim_142:nth-child(2){animation-delay:.15s}._statCard_cwkim_142:nth-child(3){animation-delay:.2s}._statCard_cwkim_142:nth-child(4){animation-delay:.25s}._statCard_cwkim_142:hover{transform:translateY(-4px);background:#ffffff0d;border-color:#ffffff1f;box-shadow:0 20px 40px #0000004d}._statCard_cwkim_142:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,transparent,var(--accent-color, #883aea),transparent);opacity:0;z-index:-1;transition:opacity .4s ease;border-radius:20px}._statCard_cwkim_142:hover:before{opacity:.3}._statCard_cwkim_142._mastered_cwkim_185{--accent-color: #52e3a4}._statCard_cwkim_142._known_cwkim_186{--accent-color: #f7d774}._statCard_cwkim_142._assumed_known_cwkim_187{--accent-color: #64b5f6}._statCard_cwkim_142._learning_cwkim_188{--accent-color: #f7797d}._statCard_cwkim_142._unknown_cwkim_189{--accent-color: #883aea}._statValue_cwkim_191{font-size:3rem;font-weight:200;color:#fffffff2;line-height:1;margin-bottom:.5rem;letter-spacing:-.02em}._statLabel_cwkim_200{font-size:.875rem;color:#ffffff80;font-weight:400;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.25rem}._statPercentage_cwkim_209{font-size:.75rem;color:var(--accent-color, rgba(255, 255, 255, .4));font-family:JetBrains Mono,monospace;margin-bottom:.5rem}._statDescription_cwkim_216{font-size:.688rem;color:#ffffff4d;margin-top:.25rem}._progressBar_cwkim_222{width:100%;height:3px;background:#ffffff0d;border-radius:3px;margin-top:1rem;overflow:hidden}._progressFill_cwkim_231{height:100%;background:var(--accent-color, #883aea);border-radius:3px;transition:width .6s cubic-bezier(.16,1,.3,1)}._searchSection_cwkim_239{background:#ffffff05;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:1.5rem;margin-bottom:2rem;animation:_fadeInScale_cwkim_1 .5s cubic-bezier(.16,1,.3,1) .3s backwards}._searchBar_cwkim_250{position:relative}._searchInput_cwkim_254{width:100%;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1rem 1rem 1rem 3rem;font-size:1rem;color:#fffffff2;font-family:JetBrains Mono,monospace;transition:all .3s cubic-bezier(.16,1,.3,1)}._searchInput_cwkim_254::placeholder{color:#ffffff4d}._searchInput_cwkim_254:focus{outline:none;background:#ffffff0d;border-color:#883aea80;box-shadow:0 0 0 3px #883aea1a}._searchIcon_cwkim_277{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#ffffff4d;pointer-events:none}._filterPills_cwkim_287{display:flex;gap:.75rem;margin-top:1rem;flex-wrap:wrap}._filterPill_cwkim_287{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:.5rem 1rem;font-size:.813rem;color:#fff9;font-family:JetBrains Mono,monospace;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;gap:.5rem}._filterPill_cwkim_287:hover{background:#ffffff0d;border-color:#ffffff1f;color:#fffc;transform:translateY(-2px)}._filterPill_cwkim_287._active_cwkim_316{background:#883aea26;border-color:#883aea80;color:#883aeaf2}._filterCount_cwkim_322{background:#ffffff1a;padding:.125rem .375rem;border-radius:10px;font-size:.75rem;font-weight:500}._vocabularyGrid_cwkim_331{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;animation:_fadeIn_cwkim_1 .5s ease-out .4s backwards}._wordCard_cwkim_338{background:#ffffff08;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.5rem;position:relative;overflow:hidden;cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1);animation:_fadeInScale_cwkim_1 .4s cubic-bezier(.16,1,.3,1) backwards}._wordCard_cwkim_338:hover{transform:translateY(-4px) scale(1.02);background:#ffffff0d;border-color:#ffffff1f;box-shadow:0 20px 40px #0003}._wordCard_cwkim_338:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--state-color),transparent);opacity:.8}._wordCard_cwkim_338._mastered_cwkim_185{--state-color: #52e3a4}._wordCard_cwkim_338._known_cwkim_186{--state-color: #f7d774}._wordCard_cwkim_338._assumed_known_cwkim_187{--state-color: #64b5f6}._wordCard_cwkim_338._learning_cwkim_188{--state-color: #f7797d}._wordCard_cwkim_338._unknown_cwkim_189{--state-color: #883aea}._wordCharacter_cwkim_376{font-size:2rem;font-weight:300;color:#fffffff2;margin-bottom:.5rem;line-height:1.2;word-break:keep-all;overflow-wrap:break-word}._wordCard_cwkim_338[data-language=chinese] ._wordCharacter_cwkim_376,._wordCard_cwkim_338[data-language=japanese] ._wordCharacter_cwkim_376{font-size:2.5rem;font-family:-apple-system,BlinkMacSystemFont,Noto Sans CJK SC,Noto Sans SC,Noto Sans JP,Source Han Sans,sans-serif}._wordCard_cwkim_338[data-language=korean] ._wordCharacter_cwkim_376{font-size:2.25rem;font-family:-apple-system,BlinkMacSystemFont,Noto Sans KR,Source Han Sans K,sans-serif}._wordCard_cwkim_338[data-language=arabic] ._wordCharacter_cwkim_376,._wordCard_cwkim_338[data-language=hebrew] ._wordCharacter_cwkim_376{font-size:2.25rem;direction:rtl;font-family:Noto Sans Arabic,Noto Sans Hebrew,sans-serif}._wordCard_cwkim_338[data-language=thai] ._wordCharacter_cwkim_376{font-size:2.25rem;font-family:Noto Sans Thai,sans-serif;line-height:1.4}._wordCard_cwkim_338[data-language=japanese] ._wordPronunciation_cwkim_412{font-size:.813rem;color:#fff9}._wordCard_cwkim_338[data-language=arabic] ._wordPronunciation_cwkim_412,._wordCard_cwkim_338[data-language=hebrew] ._wordPronunciation_cwkim_412{direction:ltr}._wordPronunciation_cwkim_412{font-size:.875rem;color:#ffffff80;font-family:JetBrains Mono,monospace;margin-bottom:.75rem;letter-spacing:.05em;line-height:1.4}._wordTranslation_cwkim_431{font-size:.813rem;color:#fff6;margin-bottom:1rem;line-height:1.4}._wordStats_cwkim_438{display:flex;gap:1rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.05)}._wordStat_cwkim_438{display:flex;flex-direction:column;gap:.25rem}._wordStatLabel_cwkim_451{font-size:.688rem;color:#ffffff4d;text-transform:uppercase;letter-spacing:.1em}._wordStatValue_cwkim_458{font-size:.875rem;color:#fff9;font-family:JetBrains Mono,monospace}._modal_cwkim_465{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem;animation:_fadeIn_cwkim_1 .3s ease-out}._modalContent_cwkim_482{background:#141414f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:3rem;max-width:600px;width:100%;position:relative;animation:_modalSlideIn_cwkim_1 .4s cubic-bezier(.16,1,.3,1)}._modalClose_cwkim_495{position:absolute;top:1.5rem;right:1.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#ffffff80;cursor:pointer;transition:all .3s ease}._modalClose_cwkim_495:hover{background:#ffffff1a;color:#fffc;transform:rotate(90deg)}._modalWord_cwkim_518{font-size:4rem;font-weight:200;color:#fffffff2;text-align:center;margin-bottom:1rem;animation:_fadeInScale_cwkim_1 .5s cubic-bezier(.16,1,.3,1) .1s backwards;word-break:keep-all;overflow-wrap:break-word;line-height:1.2}._modalWord_cwkim_518[data-language=chinese],._modalWord_cwkim_518[data-language=japanese]{font-size:5rem;font-family:-apple-system,BlinkMacSystemFont,Noto Sans CJK SC,Noto Sans SC,Noto Sans JP,Source Han Sans,sans-serif}._modalWord_cwkim_518[data-language=korean]{font-size:4.5rem;font-family:-apple-system,BlinkMacSystemFont,Noto Sans KR,Source Han Sans K,sans-serif}._modalWord_cwkim_518[data-language=arabic],._modalWord_cwkim_518[data-language=hebrew]{font-size:4.5rem;direction:rtl;font-family:Noto Sans Arabic,Noto Sans Hebrew,sans-serif}._modalWord_cwkim_518[data-language=thai]{font-size:4.5rem;font-family:Noto Sans Thai,sans-serif;line-height:1.4}._modalPronunciation_cwkim_555{font-size:1.25rem;color:#ffffff80;text-align:center;font-family:JetBrains Mono,monospace;margin-bottom:1rem;animation:_fadeIn_cwkim_1 .5s ease-out .2s backwards;line-height:1.4}._modalTranslation_cwkim_565{font-size:1.125rem;color:#ffffffb3;text-align:center;margin-bottom:2rem;animation:_fadeIn_cwkim_1 .5s ease-out .3s backwards}._modalActions_cwkim_573{display:flex;gap:1rem;justify-content:center;animation:_fadeIn_cwkim_1 .5s ease-out .4s backwards}._modalButton_cwkim_580{background:#ffffff08;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:.75rem 2rem;color:#fffc;font-size:.875rem;font-weight:400;font-family:JetBrains Mono,monospace;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1)}._modalButton_cwkim_580:hover{background:#ffffff0f;border-color:#ffffff1f;transform:translateY(-2px)}._modalButton_cwkim_580._primary_cwkim_601{background:#883aea26;border-color:#883aea4d;color:#883aeaf2}._modalButton_cwkim_580._primary_cwkim_601:hover{background:#883aea40;border-color:#883aea80}._loading_cwkim_613{display:flex;align-items:center;justify-content:center;min-height:60vh;color:#ffffff80;font-size:1.125rem;font-family:JetBrains Mono,monospace;animation:_pulse_cwkim_1 2s ease-in-out infinite}._loadMoreContainer_cwkim_625{display:flex;justify-content:center;margin-top:3rem;margin-bottom:2rem}._loadMoreButton_cwkim_632{background:#ffffff08;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:12px;color:#ffffffb3;padding:.75rem 2rem;font-size:.875rem;font-weight:400;font-family:JetBrains Mono,monospace;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1)}._loadMoreButton_cwkim_632:hover{background:#ffffff0f;border-color:#ffffff1f;color:#fffffff2;transform:translateY(-2px)}._noResults_cwkim_655{text-align:center;padding:4rem 2rem;color:#fff6;font-size:1.125rem;font-family:JetBrains Mono,monospace}@keyframes _fadeIn_cwkim_1{0%{opacity:0}to{opacity:1}}@keyframes _fadeInScale_cwkim_1{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes _slideDown_cwkim_1{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes _modalSlideIn_cwkim_1{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes _pulse_cwkim_1{0%,to{opacity:.5}50%{opacity:1}}@keyframes _float_cwkim_1{0%,to{transform:translateY(0) translate(0)}33%{transform:translateY(-20px) translate(10px)}66%{transform:translateY(10px) translate(-10px)}}._wordCard_cwkim_338 ._wordCharacter_cwkim_376{max-width:100%}._wordCard_cwkim_338[data-word-length=long] ._wordCharacter_cwkim_376{font-size:1.5rem}._wordCard_cwkim_338[data-word-length=very-long] ._wordCharacter_cwkim_376{font-size:1.25rem}@media (max-width: 768px){._content_cwkim_127{padding:1rem}._statsGrid_cwkim_135,._vocabularyGrid_cwkim_331{grid-template-columns:1fr}._modalContent_cwkim_482{padding:2rem}._modalWord_cwkim_518{font-size:3rem}._filterPills_cwkim_287{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.5rem}}.statistics-view{max-width:1200px;margin:0 auto;padding:var(--space-xl);animation:fadeIn .8s ease-out}.statistics-view h2{text-align:center;color:var(--text-primary);font-size:clamp(2rem,4vw,3rem);margin-bottom:var(--space-2xl);font-weight:100;letter-spacing:-.03em}.view-tabs{display:flex;justify-content:center;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap}.tab-button{padding:var(--space-sm) var(--space-lg);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));color:var(--text-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-lg);cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:400;transition:all var(--transition-base)}.tab-button:hover{color:var(--text-primary);border-color:var(--border-glass-hover);transform:translateY(-1px)}.tab-button.active{color:var(--sunset-orange);background:linear-gradient(135deg,var(--accent-orange-dim),var(--accent-purple-dim));border-color:#ff6b3d4d}.time-frame-selector{display:flex;justify-content:center;gap:var(--space-sm);margin-bottom:var(--space-2xl)}.time-frame{padding:var(--space-xs) var(--space-md);background:transparent;border:1px solid var(--border-glass);border-radius:var(--radius-sm);color:var(--text-muted);font-size:.813rem;font-family:JetBrains Mono,monospace;cursor:pointer;transition:all var(--transition-base)}.time-frame:hover{border-color:var(--border-glass-hover);color:var(--text-secondary)}.time-frame.active{background:var(--glass-bg);border-color:var(--accent-purple);color:var(--accent-purple)}.tab-content{min-height:400px;animation:fadeIn .3s ease-in}.stats-summary{margin-bottom:var(--space-2xl)}.stat-card{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-lg);text-align:center;transition:all var(--transition-base)}.stat-card.primary{margin-bottom:var(--space-lg);background:linear-gradient(135deg,var(--accent-purple-dim),var(--accent-orange-dim));border-color:#9c5aff33;position:relative;overflow:hidden}.stat-card.primary:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,var(--sunset-orange),transparent);opacity:.05;animation:pulse 6s ease-in-out infinite}.stat-value{font-size:2.5rem;font-weight:200;color:var(--text-primary);margin-bottom:var(--space-sm);font-family:JetBrains Mono,monospace}.stat-label{font-size:.9rem;color:var(--text-secondary);font-weight:300;font-family:JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.stat-detail{font-size:.875rem;color:var(--text-muted);margin-top:var(--space-xs)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg)}.daily-activity-section{margin-bottom:var(--space-2xl);padding:var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.daily-activity-section h3{font-size:1.2rem;font-weight:300;color:var(--text-primary);margin-bottom:var(--space-lg)}.activity-chart{display:flex;align-items:flex-end;justify-content:space-between;height:150px;margin-bottom:var(--space-md);padding:0 var(--space-sm)}.activity-bar-container{flex:1;height:100%;display:flex;align-items:flex-end;justify-content:center}.activity-bar{width:80%;background:linear-gradient(to top,var(--accent-purple),var(--sunset-orange));border-radius:var(--radius-xs) var(--radius-xs) 0 0;transition:height .3s ease;opacity:.8}.activity-bar:hover{opacity:1}.activity-labels{display:flex;justify-content:space-between;font-size:.813rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.learning-insights{padding:var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.learning-insights h3{font-size:1.2rem;font-weight:300;color:var(--text-primary);margin-bottom:var(--space-lg)}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg)}.insight-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:#ffffff08;border:1px solid var(--border-glass);border-radius:var(--radius-sm);transition:all var(--transition-base)}.insight-card:hover{transform:translateY(-2px);border-color:var(--border-glass-hover)}.insight-icon{font-size:2rem}.insight-content{flex:1}.insight-title{font-size:.875rem;color:var(--text-muted);margin-bottom:var(--space-xs)}.insight-value{font-size:1.1rem;color:var(--text-primary);font-weight:300}.performance-section{padding:var(--space-xl)}.performance-section h3,.performance-section h4{font-weight:300;color:var(--text-primary);margin-bottom:var(--space-lg)}.performance-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-xl);margin-bottom:var(--space-2xl)}.metric-card{padding:var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.metric-chart{margin-top:var(--space-lg)}.speed-progression{display:flex;align-items:flex-end;justify-content:space-around;height:200px}.speed-point{flex:1;display:flex;align-items:flex-end;justify-content:center}.speed-bar{width:30px;background:linear-gradient(to top,var(--accent-purple),var(--sunset-orange));border-radius:var(--radius-xs) var(--radius-xs) 0 0;position:relative;transition:all .3s ease}.speed-value{position:absolute;top:-25px;left:50%;transform:translate(-50%);font-size:.813rem;color:var(--text-secondary);font-family:JetBrains Mono,monospace}.chart-label{text-align:center;margin-top:var(--space-md);font-size:.875rem;color:var(--text-muted)}.comprehension-chart{position:relative;display:flex;justify-content:center;align-items:center;margin-top:var(--space-lg)}.comprehension-content{position:absolute;text-align:center}.comprehension-percentage{font-size:2.5rem;font-weight:100;color:var(--text-primary);font-family:JetBrains Mono,monospace}.comprehension-label{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em}.session-breakdown{padding:var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.session-stats{display:flex;flex-direction:column;gap:var(--space-md)}.session-stat{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);background:#ffffff08;border-radius:var(--radius-sm)}.session-label{font-size:.9rem;color:var(--text-secondary)}.session-value{font-size:1.1rem;color:var(--text-primary);font-weight:300;font-family:JetBrains Mono,monospace}.words-analysis{padding:var(--space-xl)}.words-analysis h3,.words-analysis h4{font-weight:300;color:var(--text-primary);margin-bottom:var(--space-lg)}.recognition-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-xl)}.recognition-card{padding:var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.speed-distribution{display:flex;flex-direction:column;gap:var(--space-sm)}.distribution-bar{display:grid;grid-template-columns:60px 1fr;align-items:center;gap:var(--space-md)}.bar-label{font-size:.875rem;color:var(--text-secondary);font-family:JetBrains Mono,monospace}.bar-fill{height:24px;background:linear-gradient(90deg,var(--accent-purple),var(--sunset-orange));border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:flex-end;padding-right:var(--space-sm);font-size:.813rem;color:#fff;font-family:JetBrains Mono,monospace}.challenging-words-list,.slowest-words-list{display:flex;flex-direction:column;gap:var(--space-sm);max-height:400px;overflow-y:auto}.challenging-word,.slowest-word{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:var(--space-md);padding:var(--space-sm);background:#ffffff08;border-radius:var(--radius-sm);transition:all var(--transition-base)}.challenging-word:hover,.slowest-word:hover{background:#ffffff0d}.word-rank{font-size:.813rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.chinese-word{font-size:1.2rem;font-family:Noto Sans SC,sans-serif;color:var(--text-primary)}.word-stats{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-xs)}.miss-rate{font-size:.875rem;color:var(--error)}.attempts{font-size:.813rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.recognition-time{font-size:.875rem;color:var(--text-secondary);font-family:JetBrains Mono,monospace}.progress-tracking{padding:var(--space-xl)}.progress-tracking h3,.progress-tracking h4{font-weight:300;color:var(--text-primary);margin-bottom:var(--space-lg)}.milestones-section{margin-bottom:var(--space-2xl);padding:var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.milestones-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--space-lg)}.milestone{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:#ffffff08;border:1px solid var(--border-glass);border-radius:var(--radius-sm);transition:all var(--transition-base)}.milestone.achieved{border-color:#52e3a44d;background:#52e3a40d}.milestone:hover{transform:translateY(-2px)}.milestone-icon{font-size:2rem}.milestone-content{flex:1}.milestone-title{font-size:1rem;color:var(--text-primary);margin-bottom:var(--space-xs)}.milestone-date{font-size:.813rem;color:var(--text-muted)}.streak-section{margin-bottom:var(--space-2xl);padding:var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.streak-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-xs);margin-bottom:var(--space-xl)}.calendar-day{aspect-ratio:1;background:#ffffff08;border:1px solid var(--border-glass);border-radius:var(--radius-xs);transition:all var(--transition-base)}.calendar-day.active{background:linear-gradient(135deg,var(--accent-purple),var(--sunset-orange));border-color:transparent}.streak-stats{display:flex;justify-content:center;gap:var(--space-3xl)}.streak-stat{text-align:center}.streak-value{display:block;font-size:2rem;font-weight:100;color:var(--text-primary);font-family:JetBrains Mono,monospace;margin-bottom:var(--space-xs)}.streak-label{font-size:.875rem;color:var(--text-secondary)}.goals-progress{padding:var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.goals-list{display:flex;flex-direction:column;gap:var(--space-md)}.goal-item{display:grid;grid-template-columns:200px 1fr 60px;align-items:center;gap:var(--space-md)}.goal-name{font-size:.9rem;color:var(--text-secondary)}.goal-progress{height:8px;background:#ffffff0d;border-radius:4px;overflow:hidden}.goal-bar{height:100%;background:linear-gradient(90deg,var(--accent-purple),var(--sunset-orange));border-radius:4px;transition:width .5s ease}.goal-bar.success{background:var(--success)}.goal-status{text-align:right;font-size:.875rem;color:var(--text-primary);font-family:JetBrains Mono,monospace}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.challenging-words-list::-webkit-scrollbar,.slowest-words-list::-webkit-scrollbar{width:6px}.challenging-words-list::-webkit-scrollbar-track,.slowest-words-list::-webkit-scrollbar-track{background:var(--glass-bg)}.challenging-words-list::-webkit-scrollbar-thumb,.slowest-words-list::-webkit-scrollbar-thumb{background:var(--border-glass);border-radius:3px}@media (max-width: 768px){.statistics-view{padding:var(--space-md)}.view-tabs{gap:var(--space-sm)}.tab-button{padding:var(--space-xs) var(--space-md);font-size:.813rem}.time-frame-selector{flex-wrap:wrap}.stats-grid,.insights-grid,.performance-metrics,.recognition-stats,.milestones-grid{grid-template-columns:1fr}.goal-item{grid-template-columns:1fr 60px}.goal-name{grid-column:1 / -1;margin-bottom:var(--space-xs)}.streak-stats{gap:var(--space-xl)}}.upgrade-plan{max-width:1200px;margin:0 auto;padding:var(--space-xl);animation:fadeIn .8s ease-out}.upgrade-plan h2{text-align:center;color:var(--text-primary);font-size:clamp(2rem,4vw,3rem);margin-bottom:var(--space-lg);font-weight:100;letter-spacing:-.03em}.plan-intro{text-align:center;margin-bottom:var(--space-3xl)}.plan-intro p{font-size:1.2rem;color:var(--text-secondary);font-weight:300;max-width:600px;margin:0 auto}.plan-comparison{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-xl);margin-bottom:var(--space-3xl)}.plan-card{position:relative;padding:var(--space-2xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg);transition:all var(--transition-base)}.plan-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0003}.plan-card.premium{border-color:var(--accent-purple);background:linear-gradient(to bottom,rgba(136,58,234,.05),var(--glass-bg))}.plan-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--void-black);border:1px solid var(--border-glass);border-radius:var(--radius-full);padding:var(--space-xs) var(--space-lg);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-family:JetBrains Mono,monospace}.plan-card.premium .plan-badge{border-color:var(--accent-purple);color:var(--accent-purple)}.plan-card h3{font-size:2rem;font-weight:100;color:var(--text-primary);margin:var(--space-lg) 0;text-align:center}.plan-price{display:flex;align-items:baseline;justify-content:center;gap:var(--space-xs);margin-bottom:var(--space-2xl)}.price{font-size:3.5rem;font-weight:100;color:var(--text-primary);font-family:JetBrains Mono,monospace}.period{font-size:1.1rem;color:var(--text-muted);font-weight:300}.plan-features,.plan-limits{margin-bottom:var(--space-xl)}.plan-features h4,.plan-limits h4{font-size:1rem;font-weight:400;color:var(--text-secondary);margin-bottom:var(--space-md);text-transform:uppercase;letter-spacing:.05em}.plan-features ul,.plan-limits ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-sm)}.plan-features li{display:flex;align-items:center;gap:var(--space-sm);font-size:.95rem;color:var(--text-secondary)}.plan-limits li{font-size:.9rem;color:var(--text-muted);padding-left:var(--space-lg);position:relative}.plan-limits li:before{content:"–";position:absolute;left:0}.check-icon{flex-shrink:0;color:var(--success)}.upgrade-button{width:100%;padding:var(--space-md) var(--space-xl);background:var(--accent-purple);border:1px solid var(--accent-purple);border-radius:var(--radius-sm);color:#fff;font-size:1rem;font-weight:400;cursor:pointer;transition:all var(--transition-base);text-transform:lowercase;letter-spacing:.05em;font-family:JetBrains Mono,monospace}.upgrade-button:hover:not(:disabled){background:transparent;color:var(--accent-purple);transform:translateY(-2px)}.upgrade-button:disabled{opacity:.6;cursor:not-allowed}.cancel-button{width:100%;padding:var(--space-md) var(--space-xl);background:transparent;border:1px solid var(--accent-red);border-radius:var(--radius-sm);color:var(--accent-red);font-size:1rem;font-weight:400;cursor:pointer;transition:all var(--transition-base);text-transform:lowercase;letter-spacing:.05em;font-family:JetBrains Mono,monospace}.cancel-button:hover:not(:disabled){background:var(--accent-red);color:#fff}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.subscription-active{text-align:center;margin-bottom:var(--space-lg)}.active-badge{color:var(--success);font-weight:400;font-size:1.1rem;margin:0 0 var(--space-sm) 0}.subscription-info{color:var(--text-muted);font-size:.875rem;margin:0}.error-message{margin-top:var(--space-md);padding:var(--space-md);background:#e74c3c1a;border:1px solid rgba(231,76,60,.3);border-radius:var(--radius-sm);color:var(--accent-red);font-size:.875rem;text-align:center}.plan-note{text-align:center;font-size:.875rem;color:var(--text-muted);margin-top:var(--space-md)}.premium-benefits{margin-bottom:var(--space-3xl);padding:var(--space-2xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.premium-benefits h3{font-size:1.5rem;font-weight:300;color:var(--text-primary);margin-bottom:var(--space-xl);text-align:center}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg)}.benefit-card{padding:var(--space-lg);background:#ffffff08;border:1px solid var(--border-glass);border-radius:var(--radius-sm);transition:all var(--transition-base)}.benefit-card:hover{transform:translateY(-2px);border-color:var(--border-glass-hover)}.benefit-icon{font-size:2.5rem;margin-bottom:var(--space-md)}.benefit-card h4{font-size:1.1rem;font-weight:400;color:var(--text-primary);margin-bottom:var(--space-sm)}.benefit-card p{font-size:.9rem;color:var(--text-secondary);line-height:1.6}.testimonials{margin-bottom:var(--space-3xl);padding:var(--space-2xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.testimonials h3{font-size:1.5rem;font-weight:300;color:var(--text-primary);margin-bottom:var(--space-xl);text-align:center}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-lg)}.testimonial{padding:var(--space-lg);background:#ffffff08;border:1px solid var(--border-glass);border-radius:var(--radius-sm);position:relative}.testimonial:before{content:'"';position:absolute;top:-10px;left:var(--space-md);font-size:4rem;color:var(--accent-purple);opacity:.2;font-family:Georgia,serif}.testimonial p{font-size:.95rem;color:var(--text-secondary);line-height:1.6;font-style:italic;margin-bottom:var(--space-md)}.testimonial-author{font-size:.875rem;color:var(--text-muted);text-align:right}.faq-section{margin-bottom:var(--space-3xl);padding:var(--space-2xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.faq-section h3{font-size:1.5rem;font-weight:300;color:var(--text-primary);margin-bottom:var(--space-xl);text-align:center}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-lg)}.faq-item{padding:var(--space-lg);background:#ffffff08;border:1px solid var(--border-glass);border-radius:var(--radius-sm)}.faq-item h4{font-size:1rem;font-weight:400;color:var(--text-primary);margin-bottom:var(--space-sm)}.faq-item p{font-size:.9rem;color:var(--text-secondary);line-height:1.6}.view-actions{display:flex;justify-content:center;gap:var(--space-lg);margin-top:var(--space-3xl)}.secondary-button{padding:var(--space-md) var(--space-2xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg);color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:400;cursor:pointer;transition:all var(--transition-base)}.secondary-button:hover{color:var(--text-primary);border-color:var(--border-glass-hover);transform:translateY(-2px)}@media (max-width: 768px){.upgrade-plan{padding:var(--space-md)}.plan-comparison{grid-template-columns:1fr}.price{font-size:3rem}.benefits-grid,.testimonials-grid,.faq-grid{grid-template-columns:1fr}}.usage-toast{position:fixed;top:20px;right:20px;z-index:100;animation:slideIn .3s ease-out;pointer-events:none}.usage-toast.fade-out{animation:fadeOut .5s ease-out forwards}.usage-content{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(255,255,255,.1);font-size:13px;font-weight:500;color:#ffffffe6;letter-spacing:.3px}.usage-content.trial{background:linear-gradient(135deg,#8b5cf633,#a855f733);border:1px solid rgba(139,92,246,.3)}.usage-content.premium{background:linear-gradient(135deg,#fbbf2433,#f59e0b33);border:1px solid rgba(251,191,36,.3)}.usage-content.free{background:#000c;border:1px solid rgba(255,255,255,.1)}.usage-icon{font-size:14px;opacity:.9}.usage-text{color:#ffffffe6}.usage-limit{display:flex;align-items:center;gap:6px;color:#ffffffe6}.limit-item{font-weight:600;color:#8b5cf6}.limit-separator{opacity:.4}.limit-label{opacity:.7;margin-left:2px}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px)}}@media (max-width: 768px){.usage-toast{top:10px;right:10px}.usage-content{padding:6px 12px;font-size:12px}.usage-icon{font-size:12px}}.story-generating{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--space-xl)}.generating-content{text-align:center}.generating-animation{display:flex;justify-content:center;gap:var(--space-xs);margin-bottom:var(--space-lg)}.pulse-dot{width:6px;height:6px;border-radius:50%;background:var(--memory-purple);opacity:.3;animation:pulse 1.4s ease-in-out infinite}.pulse-dot:nth-child(2){animation-delay:.2s}.pulse-dot:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.3;transform:scale(1)}40%{opacity:1;transform:scale(1.5)}}.generating-text{font-size:1rem;color:var(--text-primary);font-weight:200;letter-spacing:.02em;margin:0 0 var(--space-xs)}.generating-subtext{font-size:.75rem;color:var(--text-muted);margin:0;opacity:.6}.word-lesson-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out;padding:var(--space-xl)}.word-lesson-container{background:linear-gradient(135deg,#0a0a0af2,#0a0a0ae6);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid var(--border-glass);border-radius:var(--radius-xl);padding:var(--space-2xl);max-width:600px;width:100%;box-shadow:0 25px 50px #00000080,inset 0 0 0 1px #ffffff0d;animation:slideUp .3s ease-out}.lesson-header{text-align:center;margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border-glass)}.lesson-word-row{display:flex;justify-content:center;width:100%}.lesson-word-wrapper{position:relative;display:inline-block}.lesson-word{font-size:3rem;margin:0;font-family:Noto Sans SC,sans-serif;font-weight:300;letter-spacing:.05em}.lesson-word-wrapper .audio-button-elegant{position:absolute;left:calc(100% + .75rem);top:1rem}.lesson-word .tone1{color:#ff4f64}.lesson-word .tone2{color:#20e3b2}.lesson-word .tone3{color:#2db7ff}.lesson-word .tone4{color:#c084fc}.lesson-word .tone5{color:#9fa2a6}.lesson-pinyin{font-size:1.25rem;margin-bottom:0}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.audio-button-elegant{background:linear-gradient(135deg,#ff6b3d0d,#9c5aff0d);border:1px solid rgba(255,255,255,.1);border-radius:50%;width:32px;height:32px;padding:0;color:var(--text-secondary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.audio-button-elegant svg{width:16px;height:16px;transition:transform .3s cubic-bezier(.4,0,.2,1)}.audio-button-elegant:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,var(--sunset-orange),transparent);opacity:0;transition:opacity .3s ease}.audio-button-elegant:hover:not(:disabled){background:linear-gradient(135deg,#ff6b3d1a,#9c5aff1a);border-color:var(--sunset-orange);color:var(--sunset-orange);transform:scale(1.1)}.audio-button-elegant:hover:not(:disabled) svg{transform:scale(1.1)}.audio-button-elegant:active:not(:disabled){transform:scale(.95)}.audio-button-elegant:disabled{opacity:.3;cursor:not-allowed}.audio-button-elegant.playing{animation:audioPlaying 2s ease-in-out infinite;color:var(--sunset-orange);border-color:var(--sunset-orange);background:linear-gradient(135deg,#ff6b3d1a,#9c5aff1a);transform:scale(1.1)}.audio-button-elegant.playing:before{opacity:.2;animation:ripple 1.5s ease-out infinite}.audio-button-elegant.playing svg{transform:scale(1.1)}.audio-button-elegant.error{color:var(--text-muted);opacity:.5;border-color:#ffffff0d}@keyframes audioPlaying{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes ripple{0%{transform:scale(.8);opacity:.5}to{transform:scale(2);opacity:0}}.lesson-content{display:flex;flex-direction:column;gap:var(--space-xl)}.lesson-section h3{font-size:.875rem;font-weight:400;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:0 0 var(--space-sm) 0;font-family:JetBrains Mono,monospace;display:inline-flex;align-items:center}.lesson-meaning{font-size:1.125rem;color:var(--text-primary);margin:0;line-height:1.6}.hsk-badge{display:inline-block;margin-top:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:#9c5aff1a;border:1px solid rgba(156,90,255,.3);border-radius:var(--radius-sm);font-size:.75rem;color:var(--memory-purple);font-family:JetBrains Mono,monospace}.context-meaning{font-size:1rem;color:var(--text-secondary);margin:0;line-height:1.6}.example-sentence{font-size:1.125rem;color:var(--text-secondary);margin:0;line-height:1.8;font-family:Noto Sans SC,sans-serif}.highlighted-word{color:var(--sunset-orange);font-weight:400;background:#ff6b3d1a;padding:.1em .2em;border-radius:var(--radius-sm)}.lesson-actions{display:flex;justify-content:center;margin-top:var(--space-2xl);padding-top:var(--space-xl);border-top:1px solid var(--border-glass)}.lesson-button{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-2xl);background:linear-gradient(135deg,var(--accent-orange-dim),var(--accent-purple-dim));border:1px solid var(--sunset-orange);border-radius:var(--radius-lg);color:var(--sunset-orange);font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:400;cursor:pointer;transition:all var(--transition-base)}.lesson-button kbd{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);font-size:.75rem;color:var(--text-primary)}.lesson-button:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ff6b3d4d;background:linear-gradient(135deg,#ff6b3d33,#9c5aff33)}@media (max-width: 768px){.word-lesson-overlay{padding:var(--space-md)}.word-lesson-container{padding:var(--space-xl)}.lesson-word{font-size:2.5rem}.lesson-pinyin{font-size:1.125rem}.lesson-meaning,.example-sentence{font-size:1rem}}.story-display{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;animation:fadeIn .6s ease-out;overflow-y:auto;overflow-x:hidden;padding:var(--space-xl) 0;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;position:relative;height:100%}.story-text{font-size:clamp(1.75rem,3vw,2.25rem);line-height:2.5;font-family:Noto Sans SC,-apple-system,sans-serif;font-weight:300;letter-spacing:.05em;color:var(--text-secondary);text-align:left;word-wrap:break-word;-webkit-user-select:none;user-select:none;padding:var(--space-2xl);background:linear-gradient(135deg,#0a0a0a99,#0a0a0a66);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-xl);position:relative;overflow:hidden;z-index:1;max-width:1000px;width:100%;box-shadow:0 8px 32px #0003,inset 0 0 0 1px #ffffff05}.story-text:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 20% 30%,var(--accent-purple-dim) 0%,transparent 40%),radial-gradient(ellipse at 80% 70%,var(--accent-orange-dim) 0%,transparent 40%);opacity:.3;pointer-events:none;animation:shimmer 15s ease-in-out infinite;z-index:-1}.word{display:inline-block;margin:0 .15em;padding:.15em .3em;cursor:pointer;position:relative;border-radius:var(--radius-sm);color:var(--text-secondary);-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);border:1px solid transparent}.word:hover:not(.current){color:var(--text-primary);background:#ffffff0d}.word.current{color:var(--text-primary);background:linear-gradient(135deg,var(--accent-purple-dim),var(--accent-orange-dim));border-color:var(--memory-purple);box-shadow:0 0 20px #9c5aff4d;position:relative;overflow:visible}.word.passed{color:var(--success);position:relative}.word.passed:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--success);opacity:.5;border-radius:1px}.word.failed{color:var(--error);position:relative}.word.failed:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--error);border-radius:1px}.tone1{color:#ff4f64}.tone2{color:#20e3b2}.tone3{color:#2db7ff}.tone4{color:#c084fc}.tone5{color:#9fa2a6}.instructions{text-align:center;color:var(--text-muted);font-size:.875rem;margin-top:var(--space-2xl);font-family:JetBrains Mono,monospace;font-weight:300}.instructions kbd{background:#ffffff14;border:1px solid var(--border-glass);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);font-size:.813rem;color:var(--text-primary);margin:0 var(--space-xs)}@keyframes shimmer{0%,to{transform:translate(0) scale(1);opacity:.3}25%{transform:translate(-10%,-10%) scale(1.1);opacity:.4}50%{transform:translate(10%,10%) scale(1.2);opacity:.5}75%{transform:translate(-5%,5%) scale(1.1);opacity:.4}}@media (max-width: 768px){.story-display{padding:var(--space-lg);padding-bottom:calc(120px + env(safe-area-inset-bottom,0));margin-top:0;overflow-y:auto;-webkit-overflow-scrolling:touch;height:calc(100dvh - 160px);position:relative}.story-text{font-size:1.75rem;line-height:2.4;padding:var(--space-lg);border-radius:var(--radius-lg);max-width:calc(100% - var(--space-lg));margin:0 auto}.word{margin:0 .125em;padding:.15em .25em}.instructions{display:none}}.session-results{width:100%;min-height:100vh;display:flex;flex-direction:column;position:relative;background:var(--background)}.session-results:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 20%,var(--accent-purple-dim) 0%,transparent 40%),radial-gradient(circle at 80% 80%,var(--accent-orange-dim) 0%,transparent 40%);opacity:.3;pointer-events:none;z-index:-1}.results-content{width:100%;max-width:1400px;margin:0 auto;padding:var(--space-2xl) var(--space-xl) var(--space-3xl);animation:fadeIn .6s ease-out}.comprehension-chat{margin:var(--space-2xl) auto;max-width:900px;text-align:center}.chat-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.chat-header h2{margin:0;font-size:1.3rem;font-weight:400}.comprehension-chat .chat-card{margin:0 auto}.subscribe-cta-card{background:linear-gradient(135deg,#9c5aff1f,#ff6b3d1f);border:1px solid rgba(156,90,255,.35);border-radius:var(--radius-2xl);padding:var(--space-xl);box-shadow:0 20px 50px #00000040;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);text-align:left}.subscribe-cta-card .cta-header{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md)}.subscribe-cta-card .cta-icon{color:var(--memory-purple);background:#9c5aff26;border:1px solid rgba(156,90,255,.35);border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center}.subscribe-cta-card .cta-title{font-size:1.25rem;font-weight:500;color:var(--text-primary)}.subscribe-cta-card .cta-subtitle{grid-column:1 / -1;color:var(--text-secondary);font-size:.95rem}.subscribe-cta-card .cta-benefits{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm) var(--space-xl);list-style:none;padding:0;margin:var(--space-md) 0 var(--space-lg)}.subscribe-cta-card .cta-benefits li{position:relative;padding-left:1.4rem;color:var(--text-secondary)}.subscribe-cta-card .cta-benefits li:before{content:"✓";position:absolute;left:0;top:0;color:var(--sunset-orange)}.subscribe-cta-card .cta-actions{display:flex;align-items:center;gap:var(--space-md)}.subscribe-cta-card .cta-upgrade-button{padding:10px 18px;border-radius:999px;border:1px solid var(--sunset-orange);background:linear-gradient(135deg,#ff6b3d33,#9c5aff40);color:var(--sunset-orange);font-size:.95rem;transition:transform var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.subscribe-cta-card .cta-upgrade-button:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ff6b3d4d}.subscribe-cta-card .cta-note{color:var(--text-muted);font-size:.85rem}@media (max-width: 768px){.subscribe-cta-card .cta-benefits{grid-template-columns:1fr}}.hero-section{text-align:center;margin-bottom:var(--space-2xl);padding:var(--space-xl) 0;animation:slideUp .8s ease-out}.hero-title{font-size:clamp(2rem,4vw,3.5rem);font-weight:200;letter-spacing:.05em;margin-bottom:var(--space-xl);background:linear-gradient(135deg,var(--sunset-orange) 0%,var(--memory-purple) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-metric{display:inline-block;padding:var(--space-xl) var(--space-2xl);background:linear-gradient(135deg,#ff6b3d1a,#9c5aff1a);border:1px solid rgba(156,90,255,.3);border-radius:var(--radius-2xl);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);box-shadow:0 20px 40px #0003}.comprehension-rate{font-size:clamp(3rem,6vw,5rem);font-weight:200;line-height:1;background:linear-gradient(135deg,var(--sunset-orange),var(--memory-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-sm)}.comprehension-label{font-size:1.125rem;color:var(--text-primary);font-weight:300;letter-spacing:.05em;margin-bottom:var(--space-xs)}.comprehension-target{font-size:.875rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.quick-stats{margin-bottom:var(--space-2xl)}.stats-row{display:flex;justify-content:center;gap:var(--space-lg);flex-wrap:wrap}.stat-item{background:linear-gradient(135deg,#0a0a0acc,#0a0a0a99);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-lg) var(--space-xl);text-align:center;min-width:120px;transition:all var(--transition-base)}.stat-item:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0000004d;border-color:var(--border-glass-hover)}.stat-value{font-size:1.875rem;font-weight:200;color:var(--text-primary);margin-bottom:var(--space-xs)}.stat-label{font-size:.813rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-family:JetBrains Mono,monospace}section h2{font-size:2rem;font-weight:300;color:var(--text-primary);text-align:center;margin-bottom:var(--space-xl);letter-spacing:-.02em}section h3{font-size:1.25rem;font-weight:400;color:var(--text-secondary);margin-bottom:var(--space-md)}.subsection-description{color:var(--text-muted);font-size:.875rem;text-align:center;margin-bottom:var(--space-xl);font-family:JetBrains Mono,monospace}.vocabulary-review{margin-bottom:var(--space-2xl)}.vocab-subsection{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-xl);padding:var(--space-xl);margin-bottom:var(--space-xl)}.chat-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-xl);padding:var(--space-xl)}.chat-history{display:flex;flex-direction:column;gap:var(--space-sm);max-height:300px;overflow-y:auto;margin-bottom:var(--space-md);padding-right:var(--space-sm)}.chat-empty{color:var(--text-muted);font-family:JetBrains Mono,monospace;text-align:center;padding:var(--space-sm) 0}.chat-bubble{max-width:80%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);line-height:1.5;font-size:.95rem}.chat-bubble.user{align-self:flex-end;background:#ff6b3d26;border:1px solid rgba(255,107,61,.3)}.chat-bubble.assistant{align-self:flex-start;background:#9c5aff1f;border:1px solid rgba(156,90,255,.3)}.chat-input-row{display:flex;gap:var(--space-sm)}.chat-input{flex:1;padding:var(--space-sm) var(--space-md);background:#0a0a0a99;border:1px solid var(--border-glass);border-radius:var(--radius-lg);color:var(--text-primary)}.chat-input:focus{outline:none;border-color:var(--border-glass-hover)}@media (max-width: 768px){.chat-bubble{max-width:100%}}.words-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-md)}.word-card{background:#0a0a0a99;border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs);transition:all var(--transition-base)}.word-card:hover{transform:translateY(-2px);background:#0a0a0acc;border-color:var(--border-glass-hover);box-shadow:0 8px 20px #0003}.word-card.marked-unknown{border-color:#ff6b3d4d}.word-card.marked-known{border-color:#4caf504d}.word-card.review-word{border-color:#ffa5024d}.chinese-word{font-size:1.5rem;color:var(--sunset-orange);font-family:Noto Sans SC,sans-serif;font-weight:400}.pinyin{font-size:.875rem;color:var(--text-secondary);font-family:Inter,sans-serif}.english{font-size:.813rem;color:var(--text-muted);font-family:Inter,sans-serif}.word-status{font-size:.75rem;margin-top:var(--space-xs);font-family:JetBrains Mono,monospace}.word-card.marked-unknown .word-status{color:var(--error)}.word-card.marked-known .word-status{color:var(--success)}.story-review{margin-bottom:var(--space-2xl);background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-xl);padding:var(--space-xl)}.story-container{background:#0a0a0a99;border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-lg);transition:max-height .5s ease-out;overflow:hidden}.story-container.collapsed{max-height:200px;position:relative}.story-container.collapsed:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60px;background:linear-gradient(to bottom,transparent,rgba(10,10,10,.9))}.story-container.expanded{max-height:none}.story-text{font-size:1.25rem;line-height:2;font-family:Noto Sans SC,sans-serif;color:var(--text-secondary)}.story-text.highlighted .story-word{display:inline-block;margin:0 .1em;padding:.1em .2em;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.story-word.unknown-highlight{background:#ffa50233;border:1px solid rgba(255,165,2,.3);color:var(--warning)}.story-word.punctuation{color:var(--text-muted)}.expand-button{display:block;margin:0 auto;padding:var(--space-sm) var(--space-xl);background:var(--glass-bg);border:1px solid var(--border-glass);border-radius:var(--radius-lg);color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:.875rem;cursor:pointer;transition:all var(--transition-base)}.expand-button:hover{color:var(--text-primary);border-color:var(--border-glass-hover);transform:translateY(-1px)}.progress-tracking{margin-bottom:var(--space-2xl)}.progress-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg);margin-bottom:var(--space-2xl)}.progress-card{background:linear-gradient(135deg,#0a0a0acc,#0a0a0a99);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:var(--space-lg);text-align:center;transition:all var(--transition-base)}.progress-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0000004d;border-color:var(--border-glass-hover)}.progress-card.streak{border-color:#ffa5024d;background:linear-gradient(135deg,#ffa5021a,#ff6b3d1a)}.progress-value{font-size:2.5rem;font-weight:200;color:var(--text-primary);margin-bottom:var(--space-sm)}.progress-label{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;font-family:JetBrains Mono,monospace}.progress-detail{font-size:.75rem;color:var(--text-muted);margin-top:var(--space-xs);font-family:JetBrains Mono,monospace}.speed-analysis{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-xl);padding:var(--space-xl);margin-bottom:var(--space-xl);text-align:center}.speed-metric{display:inline-block;padding:var(--space-lg);background:linear-gradient(135deg,#9c5aff1a,#ff6b3d1a);border:1px solid rgba(156,90,255,.3);border-radius:var(--radius-lg)}.speed-value{display:block;font-size:2rem;font-weight:200;color:var(--sunset-orange);margin-bottom:var(--space-sm)}.speed-label{font-size:.875rem;color:var(--text-secondary);font-family:JetBrains Mono,monospace}.challenging-words{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-xl);padding:var(--space-xl)}.challenging-list{display:flex;flex-direction:column;gap:var(--space-sm)}.challenging-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:#0a0a0a99;border:1px solid var(--border-glass);border-radius:var(--radius-lg);transition:all var(--transition-base)}.challenging-item:hover{background:#0a0a0acc;border-color:var(--border-glass-hover)}.rank{color:var(--memory-purple);font-weight:600;font-size:.875rem;font-family:JetBrains Mono,monospace}.miss-rate{color:var(--error);font-size:.813rem;font-family:JetBrains Mono,monospace;margin-left:auto}.actions-section{display:flex;justify-content:center;gap:var(--space-lg);padding:var(--space-2xl) 0}.primary-action,.secondary-action{padding:var(--space-md) var(--space-2xl);border-radius:var(--radius-lg);font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:400;letter-spacing:.02em;cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden}.primary-action{background:linear-gradient(135deg,var(--accent-orange-dim),var(--accent-purple-dim));border:1px solid var(--sunset-orange);color:var(--sunset-orange)}.primary-action:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ff6b3d4d;background:linear-gradient(135deg,#ff6b3d33,#9c5aff33)}.primary-action.disabled,.primary-action:disabled{opacity:.5;cursor:not-allowed;border-color:var(--border-glass);color:var(--text-muted);background:#ffffff0d}.primary-action.disabled:hover,.primary-action:disabled:hover{transform:none;box-shadow:none}.secondary-action{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);color:var(--text-secondary)}.secondary-action:hover{color:var(--text-primary);border-color:var(--border-glass-hover);transform:translateY(-2px);box-shadow:0 10px 30px #ffffff0d}.results-content::-webkit-scrollbar{width:8px}.results-content::-webkit-scrollbar-track{background:#0a0a0a66;border-radius:4px}.results-content::-webkit-scrollbar-thumb{background:var(--border-glass);border-radius:4px}.results-content::-webkit-scrollbar-thumb:hover{background:var(--border-glass-hover)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.results-content{padding:var(--space-md) var(--space-sm) var(--space-xl)}.hero-section{padding:var(--space-md) 0;margin-bottom:var(--space-lg)}.hero-title{font-size:1.5rem;margin-bottom:var(--space-md)}.hero-metric{padding:var(--space-md) var(--space-lg)}.comprehension-rate{font-size:2.5rem}.stats-row{gap:var(--space-xs)}.stat-item{min-width:80px;padding:var(--space-sm)}.stat-value{font-size:1.5rem}.words-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-sm)}.progress-grid{grid-template-columns:1fr 1fr;gap:var(--space-sm)}.progress-value{font-size:1.75rem}.story-text{font-size:1.1rem;line-height:1.8}.actions-section{flex-direction:column;padding:var(--space-md) var(--space-sm);gap:var(--space-sm)}.primary-action,.secondary-action{width:100%}}@media (max-width: 480px){.results-content{padding:var(--space-sm) var(--space-xs) var(--space-lg)}.hero-title{font-size:1.25rem}.comprehension-rate{font-size:2rem}.stats-row{flex-direction:column;width:100%}.stat-item{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md)}.stat-value{font-size:1.25rem}.stat-label{font-size:.75rem}.progress-grid,.words-grid{grid-template-columns:1fr}.vocab-subsection,.story-review,.speed-analysis,.challenging-words{padding:var(--space-md);margin-bottom:var(--space-md)}section h2{font-size:1.5rem;margin-bottom:var(--space-md)}section h3{font-size:1.125rem;margin-bottom:var(--space-sm)}}.usage-gate-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-xl);color:var(--text-muted);font-size:.875rem;letter-spacing:.05em}.usage-gate-blocked{background:#ffffff05;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:12px;padding:var(--space-xl);text-align:center;position:relative;overflow:hidden}.usage-gate-blocked:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#f44336,#ff6b6b);opacity:.8}.usage-gate-icon{font-size:3rem;margin-bottom:var(--space-md);filter:grayscale(.5);opacity:.8}.usage-gate-message{color:var(--text-primary);font-size:1rem;line-height:1.6;margin-bottom:var(--space-lg)}.usage-gate-upgrade{display:block;margin-top:var(--space-sm);color:var(--text-muted);font-size:.875rem}.usage-gate-upgrade-button{background:linear-gradient(135deg,var(--accent-purple),var(--sunset-orange));color:#fff;border:none;padding:var(--space-md) var(--space-xl);border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);text-transform:uppercase;letter-spacing:.05em;box-shadow:0 4px 20px #883aea4d}.usage-gate-upgrade-button:hover{transform:translateY(-2px);box-shadow:0 6px 30px #883aea66}.usage-gate-upgrade-button:active{transform:translateY(0)}.usage-gate-warning{background:#ff98001a;border:1px solid rgba(255,152,0,.3);border-radius:8px;padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);color:#ff9800;font-size:.875rem;display:flex;align-items:center;gap:var(--space-sm);animation:subtle-pulse 2s ease-in-out infinite}@keyframes subtle-pulse{0%,to{opacity:.9}50%{opacity:1}}.inline-usage-indicator{display:inline-flex;align-items:center;position:relative;animation:fadeIn .5s cubic-bezier(.16,1,.3,1) forwards}.inline-usage-indicator .usage-content{background:var(--glass-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass, rgba(255, 255, 255, .1));border-radius:var(--radius-lg, 12px);padding:var(--space-sm) var(--space-md);position:relative;overflow:hidden;transition:all .4s cubic-bezier(.16,1,.3,1);min-width:160px}.inline-usage-indicator:hover .usage-content{transform:translateY(-2px);box-shadow:0 8px 24px #00000026;border-color:var(--border-glass-hover, rgba(255, 255, 255, .15))}.usage-progress{position:absolute;top:0;left:0;right:0;height:3px;background:#ffffff0d;overflow:hidden}.usage-progress-fill{height:100%;transition:width .5s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.status-good .usage-progress-fill{background:linear-gradient(90deg,var(--accent-purple),var(--sunset-orange));box-shadow:0 0 20px #883aea80}.status-low .usage-progress-fill{background:linear-gradient(90deg,#64b5f6,#42a5f5);box-shadow:0 0 20px #42a5f580}.status-warning .usage-progress-fill{background:linear-gradient(90deg,#ffb74d,#ff9800);box-shadow:0 0 20px #ff980080;animation:pulse-warning 2s ease-in-out infinite}.status-critical .usage-progress-fill{background:linear-gradient(90deg,#ef5350,#f44336);box-shadow:0 0 20px #f4433680;animation:pulse-critical 1s ease-in-out infinite}.usage-details{display:flex;align-items:center;gap:var(--space-xs);position:relative;z-index:1;padding-top:6px;font-family:JetBrains Mono,monospace}.usage-count{font-size:1.25rem;font-weight:600;letter-spacing:-.02em;color:var(--text-primary);text-shadow:0 2px 8px rgba(0,0,0,.1)}.status-warning .usage-count{color:#ff9800;text-shadow:0 0 10px rgba(255,152,0,.3)}.status-critical .usage-count{color:#f44336;text-shadow:0 0 10px rgba(244,67,54,.3);animation:blink 1s ease-in-out infinite}.usage-label{font-size:.75rem;color:var(--text-muted);font-weight:300;letter-spacing:.05em;text-transform:lowercase;opacity:.9}.inline-usage-indicator.compact{display:inline-block;animation:slideIn .3s cubic-bezier(.16,1,.3,1) forwards}.inline-usage-indicator.compact .usage-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;background:var(--glass-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-glass, rgba(255, 255, 255, .1));border-radius:20px;font-family:JetBrains Mono,monospace;font-size:.75rem;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.16,1,.3,1)}.inline-usage-indicator.compact:hover .usage-pill{transform:scale(1.05);background:#ffffff0d}.inline-usage-indicator.compact .usage-count{font-size:.875rem;font-weight:600}.inline-usage-indicator.compact .usage-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.inline-usage-indicator.compact.status-good .usage-pill{background:linear-gradient(135deg,#883aea1a,#f764641a);border-color:#883aea33}.inline-usage-indicator.compact.status-low .usage-pill{background:linear-gradient(135deg,#42a5f51a,#64b5f61a);border-color:#42a5f533}.inline-usage-indicator.compact.status-warning .usage-pill{background:linear-gradient(135deg,#ff980026,#ffb74d26);border-color:#ff98004d}.inline-usage-indicator.compact.status-critical .usage-pill{background:linear-gradient(135deg,#f4433626,#ef535026);border-color:#f443364d}.inline-usage-indicator.compact.status-critical .usage-pill:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(244,67,54,.2),transparent);animation:shimmer 2s ease-in-out infinite}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-warning{0%,to{opacity:.9}50%{opacity:1}}@keyframes pulse-critical{0%,to{opacity:.8}50%{opacity:1}}@keyframes blink{0%,to{opacity:1}50%{opacity:.6}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (max-width: 768px){.usage-gate-blocked{padding:var(--space-lg)}.usage-gate-icon{font-size:2.5rem}.usage-gate-message{font-size:.9rem}.usage-gate-upgrade-button{width:100%;padding:var(--space-md)}}@media (prefers-color-scheme: dark){.usage-gate-blocked{background:#0000004d}.usage-gate-warning{background:#ff98000d}}.app-container{min-height:100vh;display:flex;flex-direction:column;position:relative;background:var(--void-black)}.app-layout{display:flex;flex-direction:column;height:100vh;height:100dvh;position:relative;overflow:hidden}.app-header{position:sticky;top:0;z-index:50;padding:var(--space-lg) var(--space-xl);animation:fadeIn .6s ease-out}.glass-header{background:#0a0a0abf;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-bottom:1px solid var(--border-glass)}.header-content{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;width:100%}.brand{display:flex;flex-direction:column;align-items:flex-start}.app-title{margin:0;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:200;letter-spacing:.08em;background:linear-gradient(135deg,var(--sunset-orange) 0%,var(--memory-purple) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;display:inline-block}.header-actions{display:flex;align-items:center;gap:var(--space-lg)}.tagline{color:var(--text-muted);font-size:.75rem;font-weight:300;letter-spacing:.05em;margin-top:var(--space-xs);font-family:JetBrains Mono,monospace}.header-controls{display:flex;justify-content:center;align-items:center;gap:var(--space-xl);margin-top:var(--space-xl)}.toggle-button,.status-indicator{padding:var(--space-sm) var(--space-lg);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg);color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:300;letter-spacing:.02em;transition:all var(--transition-base);cursor:pointer}.toggle-button:hover{background:var(--glass-bg-hover);border-color:var(--border-glass-hover);color:var(--text-primary);transform:translateY(-1px)}.toggle-button.active{background:linear-gradient(135deg,var(--accent-orange-dim),var(--accent-purple-dim));border-color:var(--sunset-orange);color:var(--sunset-orange)}.status-indicator{cursor:default}.status-indicator.active{color:var(--success);border-color:#52e3a44d}.status-indicator.paused{color:var(--warning);border-color:#ffa5024d}.app-main{flex:1;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}.main-content{width:100%;height:100%;overflow:hidden;display:flex;flex-direction:column;animation:fadeIn .6s ease-out .2s both}.story-reader{display:flex;flex-direction:column;width:100%;height:100%;position:relative;padding:var(--space-xl);overflow:auto}.story-reader-container{width:100%;height:100%;overflow:auto;display:flex;flex-direction:column;padding:0}.bottom-controls{display:flex;justify-content:center;gap:var(--space-lg);padding:var(--space-xl);background:#0a0a0ae6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-xl);position:relative;z-index:40;margin-top:auto;animation:fadeIn .6s ease-out .3s both}.control-button{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg);font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden}.control-button kbd{background:#ffffff1a;border:1px solid var(--border-glass);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);font-size:.75rem;color:var(--text-primary);min-width:1.5rem;text-align:center}.control-button:hover:not(:disabled){transform:translateY(-2px);background:var(--glass-bg-hover);border-color:var(--border-glass-hover)}.control-button.mute-button{padding:var(--space-md);min-width:auto;background:#ffffff08;position:absolute;right:var(--space-xl)}.control-button.mute-button svg{transition:transform .2s ease}.control-button.mute-button:hover:not(:disabled){background:#ffffff14;border-color:var(--memory-purple)}.control-button.mute-button:hover:not(:disabled) svg{transform:scale(1.1)}.control-button:disabled{opacity:.5;cursor:not-allowed}.known-button:hover:not(:disabled){color:var(--success);border-color:#52e3a44d;box-shadow:0 10px 30px #52e3a433}.unknown-button:hover:not(:disabled){color:var(--error);border-color:#ff47574d;box-shadow:0 10px 30px #ff475733}.next-button:hover:not(:disabled){color:var(--sunset-orange);border-color:#ff6b3d4d;box-shadow:0 10px 30px #ff6b3d33}.loading-overlay,.error-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0a0a0acc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:10}.loading-content,.error-content{text-align:center;color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-weight:200}.error-content{background:#ff47571a;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid rgba(255,71,87,.3);border-radius:var(--radius-lg);padding:var(--space-xl);max-width:400px}.error-content p{margin-bottom:var(--space-lg);color:var(--error);font-size:.875rem}.error-actions{display:flex;gap:var(--space-md);justify-content:center;flex-wrap:wrap}.upgrade-button-prompt{background:var(--accent-purple)!important;border-color:var(--accent-purple)!important;color:#fff!important}.upgrade-button-prompt:hover{background:transparent!important;color:var(--accent-purple)!important}.glass-button{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-lg);color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:.813rem;cursor:pointer;transition:all var(--transition-base)}.glass-button:hover{background:var(--glass-bg-hover);border-color:var(--border-glass-hover);transform:translateY(-1px)}@keyframes ripple-fade{0%,to{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.5)}}.controls{display:flex;justify-content:center;gap:var(--space-lg);margin-top:var(--space-2xl)}.primary-button,.secondary-button{padding:var(--space-md) var(--space-2xl);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);border-radius:var(--radius-lg);font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:400;letter-spacing:.02em;cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden}.primary-button{color:var(--sunset-orange);border-color:#ff6b3d4d}.primary-button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--accent-orange-dim),transparent);opacity:0;transition:opacity var(--transition-base)}.primary-button:hover:not(:disabled){border-color:var(--sunset-orange);transform:translateY(-2px);box-shadow:0 10px 30px #ff6b3d33}.primary-button:hover:not(:disabled):before{opacity:1}.primary-button:disabled{color:var(--text-muted);border-color:var(--border-glass);cursor:not-allowed;opacity:.5}.secondary-button{color:var(--text-secondary)}.secondary-button:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-glass-hover);transform:translateY(-2px);box-shadow:0 10px 30px #ffffff0d}.error-message{background:#ff47571a;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid rgba(255,71,87,.3);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-xl);display:flex;justify-content:space-between;align-items:center;max-width:600px;width:100%}.error-message p{color:var(--error);margin:0;font-family:JetBrains Mono,monospace;font-size:.875rem}.error-message button{background:transparent;color:var(--error);border:1px solid rgba(255,71,87,.3);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);cursor:pointer;font-size:.813rem;font-family:JetBrains Mono,monospace;transition:all var(--transition-base)}.error-message button:hover{background:var(--error);color:var(--void-black);transform:translateY(-1px)}@media (max-width: 768px){.app-main{height:calc(100dvh - 60px);overflow:hidden}.main-content{height:100%;position:relative}.app-header{padding:var(--space-md) var(--space-lg)}.header-content{flex-direction:row;gap:var(--space-md);align-items:center;justify-content:space-between}.brand{align-items:flex-start}.app-title{font-size:1.875rem;letter-spacing:.04em}.tagline{display:block;font-size:.625rem;margin-top:.125rem}.header-actions{gap:var(--space-sm)}.story-reader{padding:0;height:100%;display:flex;flex-direction:column;position:relative;overflow:auto}.story-reader-container{padding:0;height:100%;overflow:auto}.bottom-controls{position:fixed;bottom:0;left:0;right:0;width:100%;padding:var(--space-md) var(--space-md);padding-bottom:calc(var(--space-md) + env(safe-area-inset-bottom,0));gap:var(--space-sm);border-radius:0;border-top:1px solid var(--border-glass);margin:0;background:linear-gradient(to top,#0a0a0afa,#0a0a0af2);box-shadow:0 -4px 20px #00000080;z-index:100}.control-button{flex:1;min-width:0;padding:1.25rem var(--space-md);font-size:.875rem;font-weight:500;height:72px;border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem}.control-button kbd{display:none}.control-button span{font-size:.875rem;line-height:1;font-weight:600}.control-button.mute-button{display:flex;position:relative;right:auto;min-width:50px;max-width:50px;padding:1rem}.control-button:active:not(:disabled){transform:scale(.98);box-shadow:inset 0 2px 10px #0000004d}.known-button{background:linear-gradient(135deg,#52e3a414,#52e3a408)}.unknown-button{background:linear-gradient(135deg,#ff475714,#ff475708)}.controls{flex-direction:column;width:100%;max-width:300px}.primary-button,.secondary-button{width:100%}.error-message{flex-direction:column;gap:var(--space-md)}.error-message button{width:100%}.end-session-button{display:none}}.user-menu{display:flex;align-items:center;gap:var(--space-md)}.user-email{color:var(--text-secondary);font-size:.9rem}.sign-out-btn,.sign-in-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border-glass);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:300}.sign-out-btn:hover,.sign-in-btn:hover{border-color:var(--border-glass-hover);color:var(--text-primary)}.app-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:var(--text-primary)}.app-loading p{margin-top:var(--space-lg);font-size:1.1rem;color:var(--text-secondary)}.end-session-button{position:absolute;top:var(--space-lg);left:var(--space-lg);background:transparent;border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.75rem;cursor:pointer;transition:all var(--transition-base);opacity:.6}.end-session-button:hover{opacity:1;color:var(--text-secondary);border-color:var(--border-glass-hover);background:var(--glass-bg)}:root{--void-black: #000000;--charcoal-black: #0a0a0a;--glass-black: rgba(10, 10, 10, .8);--border-glass: rgba(255, 255, 255, .1);--border-glass-hover: rgba(255, 255, 255, .2);--sunset-orange: #ff6b3d;--memory-purple: #9c5aff;--accent-purple: #9c5aff;--accent-orange-dim: rgba(255, 107, 61, .1);--accent-purple-dim: rgba(156, 90, 255, .1);--text-primary: rgba(255, 255, 255, .9);--text-secondary: rgba(255, 255, 255, .6);--text-muted: rgba(255, 255, 255, .4);--success: #52e3a4;--error: #ff4757;--warning: #ffa502;--accent-red: #e74c3c;--glass-blur: 20px;--glass-bg: rgba(255, 255, 255, .05);--glass-bg-hover: rgba(255, 255, 255, .08);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--void-black);color:var(--text-primary);line-height:1.6;font-weight:300;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 30%,var(--accent-purple-dim) 0%,transparent 50%),radial-gradient(circle at 80% 70%,var(--accent-orange-dim) 0%,transparent 50%),linear-gradient(180deg,var(--void-black) 0%,var(--charcoal-black) 100%);pointer-events:none;z-index:-1}code{font-family:JetBrains Mono,Courier New,monospace;font-weight:400}#root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;position:relative}.glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-glass);transition:all var(--transition-base)}.glass:hover{background:var(--glass-bg-hover);border-color:var(--border-glass-hover)}h1,h2,h3,h4,h5,h6{font-weight:200;letter-spacing:-.02em;color:var(--text-primary)}h1{font-size:3rem}h2{font-size:2.25rem}h3{font-size:1.875rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1.125rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes ripple{0%{transform:translate(-50%,-50%) scale(0);opacity:.8}to{transform:translate(-50%,-50%) scale(4);opacity:0}}@keyframes ripple-fade{0%{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.2)}}::selection{background:var(--memory-purple);color:var(--text-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--charcoal-black)}::-webkit-scrollbar-thumb{background:var(--border-glass);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-glass-hover)}@media (max-width: 768px){:root{--glass-blur: 10px}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}}
