*{box-sizing:border-box;margin:0;padding:0}:root{--primary-gradient:linear-gradient(135deg,#667eea,#764ba2);--secondary-gradient:linear-gradient(135deg,#f093fb,#f5576c);--success-gradient:linear-gradient(135deg,#4facfe,#00f2fe);--warning-gradient:linear-gradient(135deg,#ff9a9e,#fecfef);--dark-gradient:linear-gradient(135deg,#2c3e50,#4a6741);--text-primary:#2d3748;--text-secondary:#718096;--text-light:#a0aec0;--bg-card:#fffffff2;--bg-overlay:#00000005;--shadow-sm:0 4px 6px #00000012;--shadow-md:0 10px 25px #0000001a;--shadow-lg:0 20px 40px #0000001a;--shadow-xl:0 25px 50px #00000026;--border-radius:16px;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}body{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);color:#2d3748;color:var(--text-primary);font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;overflow-x:hidden}.app-container{margin:0 auto;max-width:1400px;min-height:100vh;padding:20px;position:relative;z-index:1}.loading-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;z-index:9999}.loading-content{color:#fff;max-width:400px;padding:40px;text-align:center}.loading-logo{margin-bottom:30px}.keyboard-icon{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:120px}.key{animation:keyPulse 2s infinite;background:#fff3;border:2px solid #ffffff4d;border-radius:6px;height:32px;width:32px}.key.active{animation:keyActive 1s infinite;background:#fff}@keyframes keyPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes keyActive{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.loading-title{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#fff,#f0f8ff);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700}.loading-title,.progress-container{margin-bottom:30px}.progress-bar{background:#fff3;border-radius:3px;height:6px;margin-bottom:10px;overflow:hidden;width:100%}.progress-fill{animation:progressGlow 2s infinite;background:linear-gradient(90deg,#fff,#f0f8ff);border-radius:3px;height:100%;transition:width .3s ease}@keyframes progressGlow{0%,to{box-shadow:0 0 5px #ffffff80}50%{box-shadow:0 0 20px #fffc}}.progress-text{color:#ffffffe6;font-size:1.2rem;font-weight:600}.loading-dots{display:flex;gap:8px;justify-content:center;margin-bottom:20px}.dot{animation:dotBounce 1.4s infinite;background:#fff;border-radius:50%;height:8px;width:8px}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes dotBounce{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.loading-subtitle{animation:fadeInOut 2s infinite;font-size:1.1rem;opacity:.8}@keyframes fadeInOut{0%,to{opacity:.6}50%{opacity:1}}.animated-bg{bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0;z-index:-1}.floating-shape{animation:floatAnimation 20s ease-in-out infinite;background:#ffffff1a;border-radius:50%;position:absolute}.shape-1{animation-delay:0s;height:100px;left:10%;top:10%;width:100px}.shape-2{animation-delay:5s;height:150px;right:10%;top:60%;width:150px}.shape-3{animation-delay:10s;bottom:20%;height:80px;left:60%;width:80px}.shape-4{animation-delay:15s;height:120px;right:40%;top:30%;width:120px}@keyframes floatAnimation{0%,to{transform:translateY(0) rotate(0deg)}33%{transform:translateY(-30px) rotate(120deg)}66%{transform:translateY(30px) rotate(240deg)}}.header{margin-bottom:60px;position:relative;text-align:center}.header-content{position:relative;z-index:2}.glitch-text{animation:textGlow 3s infinite alternate;color:#fff;font-size:clamp(2.5rem,5vw,4rem);font-weight:900;margin-bottom:20px;position:relative;text-shadow:0 0 20px #ffffff4d}@keyframes textGlow{0%{text-shadow:0 0 20px #ffffff4d}to{text-shadow:0 0 30px #fff9}}.header-subtitle{color:#ffffffe6;font-size:1.3rem;line-height:1.6;margin-bottom:40px}.highlight{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,gold,#ff6b6b);-webkit-background-clip:text;background-clip:text;font-weight:700}.header-stats{display:flex;flex-wrap:wrap;gap:40px;justify-content:center}.stat-item{align-items:center;color:#ffffffe6;display:flex;flex-direction:column;gap:8px}.stat-icon{animation:iconBounce 2s infinite;font-size:2rem}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.stat-text{font-size:.9rem;font-weight:500}.selection-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;background:var(--bg-card);border:1px solid #fff3;border-radius:16px;border-radius:var(--border-radius);box-shadow:0 25px 50px #00000026;box-shadow:var(--shadow-xl);overflow:hidden;padding:50px;position:relative}.selection-container:before{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);content:"";height:4px;left:0;position:absolute;right:0;top:0}.selection-wrapper{position:relative;z-index:2}.selection-group{animation:fadeInUp .6s ease-out;margin-bottom:50px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp .8s ease-out}.selection-group h3{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:1.4rem;font-weight:700;gap:15px;margin-bottom:25px}.section-number{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);border-radius:50%;color:#fff;font-size:.9rem;font-weight:600;height:32px;width:32px}.language-buttons,.section-number{display:flex;justify-content:center}.language-buttons{gap:20px}.lang-btn{align-items:center;background:#fff;border:3px solid #667eea33;border-radius:16px;border-radius:var(--border-radius);box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;gap:12px;min-width:150px;padding:30px 40px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.lang-btn:hover{border-color:#667eea80;box-shadow:0 10px 25px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-5px)}.lang-btn.selected{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);border-color:#667eea;box-shadow:0 20px 40px #0000001a;box-shadow:var(--shadow-lg);color:#fff;transform:translateY(-5px)}.btn-icon{font-size:2.5rem}.btn-text{font-size:1.1rem;font-weight:600}.passage-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.passage-card{animation:slideInUp .6s ease-out;background:#fff;border:2px solid #667eea1a;border-radius:16px;border-radius:var(--border-radius);box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-sm);cursor:pointer;overflow:hidden;padding:25px;position:relative;text-align:left;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.passage-card:hover{border-color:#667eea4d;box-shadow:0 10px 25px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-8px)}.passage-card.selected{background:linear-gradient(135deg,#f8f9ff,#e3e8ff);border-color:#667eea;box-shadow:0 20px 40px #0000001a;box-shadow:var(--shadow-lg);transform:translateY(-8px)}.passage-card.selected:before{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);content:"";height:4px;left:0;position:absolute;right:0;top:0}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.card-number{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);border-radius:20px;color:#fff;font-size:.85rem;font-weight:600;padding:6px 12px}.card-difficulty{color:#718096;color:var(--text-secondary);font-size:.8rem;font-weight:500}.card-title{color:#2d3748;color:var(--text-primary);font-size:1.2rem;font-weight:700;line-height:1.3;margin-bottom:12px}.card-preview{color:#718096;color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin-bottom:15px}.card-stats{color:#a0aec0;color:var(--text-light);display:flex;font-size:.8rem;gap:8px}.time-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.time-btn{align-items:center;background:#fff;border:3px solid #667eea33;border-radius:16px;border-radius:var(--border-radius);box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;gap:8px;min-width:100px;padding:25px 30px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.time-btn:hover{border-color:#667eea80;box-shadow:0 10px 25px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-3px)}.time-btn.selected{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);border-color:#667eea;box-shadow:0 20px 40px #0000001a;box-shadow:var(--shadow-lg);color:#fff;transform:translateY(-3px)}.time-number{font-size:2rem;font-weight:900}.time-label{font-size:.9rem;font-weight:500;opacity:.8}.start-section{margin-top:40px;text-align:center}.start-btn-enhanced{background:#0000;border:none;cursor:pointer;outline:none;padding:0;position:relative;transition:transform .3s ease}.start-btn-enhanced:hover{transform:translateY(-2px)}.btn-bg{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);border-radius:60px;bottom:0;left:0;position:absolute;right:0;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.start-btn-enhanced:hover .btn-bg{background:linear-gradient(135deg,#f093fb,#f5576c);background:var(--secondary-gradient)}.btn-content{align-items:center;color:#fff;display:flex;font-size:1.2rem;font-weight:700;gap:15px;padding:20px 40px;position:relative;z-index:2}.btn-arrow{font-size:1.5rem;transition:transform .3s ease}.start-btn-enhanced:hover .btn-arrow{transform:translateX(5px)}.btn-glow{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient);border-radius:60px;bottom:-4px;filter:blur(20px);left:-4px;opacity:0;position:absolute;right:-4px;top:-4px;transition:opacity .3s ease;z-index:0}.start-btn-enhanced:hover .btn-glow{opacity:.7}.test-mode{background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff}.test-header-compact{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;box-shadow:0 10px 25px #0000001a;box-shadow:var(--shadow-md);margin-bottom:20px;padding:15px 25px}.test-info-row{flex-wrap:wrap;gap:15px;justify-content:space-between}.test-info-item,.test-info-row{align-items:center;display:flex}.test-info-item{font-size:.9rem;gap:8px}.info-label{color:#ffffffb3;font-weight:500}.info-value{color:#fff;font-weight:700}.timer-compact{align-items:center;display:flex}.timer-circle-small{height:50px;position:relative;width:50px}.timer-svg-small{height:100%;transform:rotate(-90deg);width:100%}.timer-bg-small{fill:none;stroke:#fff3;stroke-width:3}.timer-progress-small{fill:none;stroke:#ff6b6b;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset 1s ease}.timer-text-small{color:#ff6b6b;font-size:.7rem;font-weight:900;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.test-content-fixed{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;height:calc(100vh - 200px);margin-bottom:20px}.input-panel-scrollable,.text-panel-fixed{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;border-radius:var(--border-radius);box-shadow:0 20px 40px #0000001a;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden}.panel-header-compact{align-items:center;background:#ffffff1a;border-bottom:1px solid #ffffff1a;display:flex;flex-shrink:0;justify-content:space-between;padding:15px 20px}.panel-header-compact h4{color:#fff;font-size:1rem;font-weight:600}.input-stats,.text-stats{color:#ffffffb3;display:flex;font-size:.8rem;gap:8px}.separator{opacity:.5}.wpm-live{color:#4facfe!important;font-weight:700}.text-display-non-scrollable{background:#ffffff08;color:#ffffffe6;flex:1 1;font-size:1rem;line-height:1.7;overflow:hidden;padding:20px}.input-panel-scrollable{display:flex;flex-direction:column}.typing-container-scrollable{background:#ffffff08;display:flex;flex:1 1;flex-direction:column;padding:20px}.typing-input-auto-scroll{background:#0000;border:none;color:#fff;font-family:Inter,monospace;font-size:1rem;height:100%;line-height:1.7;outline:none;overflow-y:auto;resize:none;scrollbar-color:#ffffff4d #ffffff1a;scrollbar-width:thin;width:100%}.typing-input-auto-scroll::-webkit-scrollbar{width:6px}.typing-input-auto-scroll::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.typing-input-auto-scroll::-webkit-scrollbar-thumb{background:#fff6;border-radius:3px}.typing-input-auto-scroll::placeholder{color:#ffffff80}.test-controls-compact{display:flex;gap:15px;justify-content:center}.control-btn-compact{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.control-btn-compact:hover{background:#fff3;border-color:#fff6;transform:translateY(-2px)}.control-btn-compact.danger{background:#ff6b6b1a;border-color:#ff6b6b80}.control-btn-compact.danger:hover{background:#ff6b6b33;border-color:#ff6b6b}.control-btn-compact.neutral{background:#6c757d1a;border-color:#6c757d80}.control-btn-compact.neutral:hover{background:#6c757d33;border-color:#6c757d}.results-mode{background:linear-gradient(135deg,#0f0c29,#302b63 50%,#24243e)}.results-container-enhanced{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;border-radius:var(--border-radius);box-shadow:0 25px 50px #00000026;box-shadow:var(--shadow-xl);overflow:hidden;padding:50px;position:relative;text-align:center}.results-container-enhanced:before{background:linear-gradient(90deg,#4facfe,#00f2fe);content:"";height:4px;left:0;position:absolute;right:0;top:0}.results-header{margin-bottom:50px}.celebration-icon{animation:celebrationBounce 2s infinite;font-size:4rem;margin-bottom:20px}@keyframes celebrationBounce{0%,to{transform:scale(1) rotate(0deg)}25%{transform:scale(1.1) rotate(-5deg)}75%{transform:scale(1.1) rotate(5deg)}}.results-title{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#4facfe,#00f2fe);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:900;margin-bottom:15px}.results-subtitle{color:#fffc;font-size:1.2rem;margin-bottom:20px}.results-grid-enhanced{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:50px}.result-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff1a;border:2px solid #0000;border-radius:16px;border-radius:var(--border-radius);overflow:hidden;padding:30px 20px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.result-card:hover{box-shadow:0 20px 40px #0000001a;box-shadow:var(--shadow-lg);transform:translateY(-5px)}.result-card.primary{background:linear-gradient(135deg,#4facfe33,#00f2fe33)}.result-card.success{background:linear-gradient(135deg,#28a74533,#00ff7f33)}.result-card.warning{background:linear-gradient(135deg,#ffc10733,#ff6b6b33)}.result-card.info{background:linear-gradient(135deg,#6c757d33,#adb5bd33)}.card-icon{font-size:2.5rem;margin-bottom:15px}.result-value{color:#fff;font-size:2.5rem;font-weight:900;margin-bottom:8px}.result-label{color:#ffffffe6;font-size:1.1rem;font-weight:600;margin-bottom:5px}.result-description{color:#ffffffb3;font-size:.85rem}.performance-summary{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:40px;padding:25px}.summary-item{align-items:center;color:#ffffffe6;display:flex;font-size:1rem;justify-content:space-between;margin-bottom:15px}.summary-item:last-child{margin-bottom:0}.accuracy.perfect,.level.excellent{color:#00f2fe;font-weight:700}.accuracy.great,.level.good{color:#28a745;font-weight:700}.accuracy.needs-improvement,.level.beginner{color:#ffc107;font-weight:700}.results-controls-enhanced{display:flex;flex-wrap:wrap;gap:25px;justify-content:center}.control-btn-enhanced{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;border-radius:50px;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:12px;overflow:hidden;padding:18px 35px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.control-btn-enhanced.primary{background:linear-gradient(135deg,#4facfe,#00f2fe);box-shadow:0 10px 20px #4facfe4d;color:#fff}.control-btn-enhanced.secondary{background:linear-gradient(135deg,#ffffff1a,#fff3);border:2px solid #ffffff4d;box-shadow:0 10px 20px #0000001a;color:#fff}.control-btn-enhanced:hover{box-shadow:0 15px 30px #0003;transform:translateY(-3px)}.control-btn-enhanced.primary:hover{box-shadow:0 15px 30px #4facfe66}.button-group{display:flex;flex-wrap:wrap;gap:15px}@media (max-width:1024px){.test-content-fixed{gap:15px;grid-template-columns:1fr;height:auto}.text-display-non-scrollable{max-height:250px;overflow-y:auto}.typing-container-scrollable{min-height:200px}.test-info-row{flex-direction:column;gap:10px;text-align:center}}@media (max-width:768px){.app-container{padding:15px}.selection-container{padding:30px 20px}.header-stats{gap:20px}.language-buttons{align-items:center;flex-direction:column}.time-grid{grid-template-columns:repeat(2,1fr)}.passage-grid{grid-template-columns:1fr}.results-grid-enhanced{gap:20px;grid-template-columns:repeat(2,1fr)}.results-controls-enhanced{align-items:center;flex-direction:column}.summary-item{flex-direction:column;gap:8px;text-align:center}.test-header-compact{padding:12px 15px}.test-content-fixed{gap:10px;height:auto}.text-display-non-scrollable{font-size:.9rem;line-height:1.6;max-height:200px;overflow-y:auto;padding:15px}.typing-container-scrollable{min-height:150px;padding:15px}.typing-input-auto-scroll{font-size:.9rem;line-height:1.6}.panel-header-compact{padding:12px 15px}.panel-header-compact h4{font-size:.9rem}.test-controls-compact{flex-wrap:wrap;gap:10px;justify-content:center}.control-btn-compact{font-size:.85rem;padding:10px 15px}}@media (max-width:480px){.results-grid-enhanced{grid-template-columns:1fr}.time-grid{gap:15px;grid-template-columns:repeat(2,1fr)}.glitch-text,.results-title{font-size:2rem}.lang-btn{min-width:120px;padding:20px 30px}.btn-icon{font-size:2rem}.stat-icon{font-size:1.5rem}.test-info-row{align-items:center;flex-direction:column}.test-info-item{flex-direction:column;gap:4px;text-align:center}.timer-circle-small{height:40px;width:40px}.timer-text-small{font-size:.6rem}.text-display-non-scrollable{font-size:.85rem;max-height:150px;padding:12px}.typing-input-auto-scroll{font-size:.85rem}.control-btn-compact{max-width:200px;width:100%}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff80}.loading{align-items:center;color:#fff;display:flex;font-size:1.5rem;height:50vh;justify-content:center}button:focus,textarea:focus{outline:2px solid #667eea80;outline-offset:2px}.typing-input-auto-scroll:focus{outline:2px solid #4facfe80;outline-offset:2px}.control-btn-compact:focus{outline:2px solid #ffffff80;outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast:high){:root{--primary-gradient:linear-gradient(135deg,navy,#000040);--text-primary:#000;--bg-card:#fff}.glitch-text{text-shadow:none}.text-display-non-scrollable,.typing-input-auto-scroll{border:1px solid #ffffff80}.panel-header-compact{border-bottom:2px solid #ffffff4d}}@media print{.app-container{background:#fff!important;color:#000!important}.animated-bg,.floating-shape,.test-controls-compact,.timer-compact{display:none!important}.test-content-fixed{display:block!important;height:auto!important}.text-display-non-scrollable,.typing-input-auto-scroll{background:#fff!important;border:1px solid #000!important;color:#000!important}}
/*# sourceMappingURL=main.75f8b96c.css.map*/