body{-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary:#0f766e;--primary-dark:#0d5f58;--primary-light:#ccfbf1;--primary-glow:#0f766e40;--accent:#0284c7;--accent-light:#e0f2fe;--success:#059669;--success-light:#d1fae5;--danger:#dc2626;--danger-light:#fee2e2;--warning:#d97706;--warning-light:#fef3c7;--bg:#f0fdfa;--surface:#fff;--surface-2:#f8fafc;--border:#e2e8f0;--border-focus:#5eead4;--text:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-full:9999px;--shadow-sm:0 1px 3px #0f172a0f;--shadow-md:0 8px 24px -4px #0f172a1a;--shadow-lg:0 20px 48px -12px #0f766e2e;--shadow-card:0 4px 6px -1px #0000000d,0 20px 40px -8px #0f766e1f;--font:"Plus Jakarta Sans","Inter",system-ui,sans-serif;--transition:0.22s cubic-bezier(0.4,0,0.2,1)}*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;background:#f0fdfa;background:var(--bg);color:#0f172a;color:var(--text);font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);line-height:1.5;margin:0}.app-shell{min-height:100vh;overflow-x:hidden;position:relative}.bg-blob{border-radius:50%;filter:blur(80px);pointer-events:none;position:fixed;z-index:0}.bg-blob-1{background:radial-gradient(circle,#99f6e4 0,#0000 70%);height:500px;opacity:.6;right:-100px;top:-150px;width:500px}.bg-blob-2{background:radial-gradient(circle,#bae6fd 0,#0000 70%);bottom:-100px;height:400px;left:-80px;opacity:.5;width:400px}.bg-blob-3{background:radial-gradient(circle,#a7f3d0 0,#0000 70%);height:300px;left:50%;opacity:.3;top:40%;transform:translateX(-50%);width:300px}.admin-shell{background:#f1f5f9}.container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:24px 20px 40px;position:relative;z-index:1}.container.exam-step{justify-content:flex-start;padding-top:88px}.container.admin-container{align-items:stretch;justify-content:flex-start;padding-top:24px}.page-wrap{max-width:600px;width:100%}.exam-wrap{max-width:640px}.step-enter{animation:fadeUp .4s cubic-bezier(.4,0,.2,1)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.lang-toggle{background:#fff;background:var(--surface);border:1px solid #e2e8f0;border:1px solid var(--border);box-shadow:0 1px 3px #0f172a0f;box-shadow:var(--shadow-sm);display:flex;padding:3px;position:fixed;right:20px;top:20px;z-index:300}.lang-toggle,.lang-toggle-btn{border-radius:9999px;border-radius:var(--radius-full)}.lang-toggle-btn{background:#0000;border:none;color:#94a3b8;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:700;padding:6px 14px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:auto}.lang-toggle-btn.active{background:#0f766e;background:var(--primary);box-shadow:0 2px 8px #0f766e40;box-shadow:0 2px 8px var(--primary-glow);color:#fff}.lang-toggle-btn:hover:not(.active){background:#f8fafc;background:var(--surface-2);color:#0f172a;color:var(--text);transform:none}.card{background:#fff;background:var(--surface);border:1px solid #fffc;border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 4px 6px -1px #0000000d,0 20px 40px -8px #0f766e1f;box-shadow:var(--shadow-card);overflow:hidden;padding:36px 32px;position:relative;width:100%}.card:before{background:linear-gradient(90deg,#0f766e,#0284c7);background:linear-gradient(90deg,var(--primary),var(--accent));content:"";height:4px;left:0;position:absolute;right:0;top:0}h2{color:#0f172a;color:var(--text);font-size:1.5rem;font-weight:800;letter-spacing:-.02em;margin:0 0 20px}h3{font-size:1.1rem;font-weight:700;margin:0 0 12px}h4{font-weight:700;margin:0 0 10px}.subtitle,h4{color:#475569;color:var(--text-secondary);font-size:.9rem}.subtitle{line-height:1.6;margin:0}button{border:none;cursor:pointer;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.btn-primary{align-items:center;background:linear-gradient(135deg,#0f766e,#0d9488);background:linear-gradient(135deg,var(--primary) 0,#0d9488 100%);border-radius:14px;border-radius:var(--radius-md);box-shadow:0 4px 14px #0f766e40;box-shadow:0 4px 14px var(--primary-glow);color:#fff;display:inline-flex;font-size:1rem;font-weight:700;gap:8px;justify-content:center;padding:14px 24px;width:100%}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0d5f58,#0f766e);background:linear-gradient(135deg,var(--primary-dark) 0,var(--primary) 100%);box-shadow:0 8px 20px #0f766e40;box-shadow:0 8px 20px var(--primary-glow);transform:translateY(-2px)}.btn-primary:disabled{background:#cbd5e1;box-shadow:none;color:#94a3b8;cursor:not-allowed;transform:none}.btn-secondary{align-items:center;background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);color:#475569;color:var(--text-secondary);display:inline-flex;font-size:.95rem;font-weight:600;gap:6px;justify-content:center;padding:14px 20px;width:100%}.btn-secondary:hover:not(:disabled){background:#e2e8f0;transform:none}.btn-ghost{background:#0000;border-radius:14px;border-radius:var(--radius-md);color:#94a3b8;color:var(--text-muted);font-size:.9rem;font-weight:600;padding:10px;width:100%}.btn-ghost:hover{background:#f8fafc;background:var(--surface-2);transform:none}.btn-dark{background:#0f172a;background:var(--text);border-radius:14px;border-radius:var(--radius-md);color:#fff;font-weight:700;padding:14px 24px;width:100%}.btn-dark:hover:not(:disabled){background:#1e293b;transform:translateY(-1px)}.btn-lg{font-size:1.05rem;padding:16px 28px}.btn-full{width:100%}.btn-arrow{font-size:1.1rem;transition:transform .22s cubic-bezier(.4,0,.2,1);transition:transform var(--transition)}.btn-primary:hover .btn-arrow{transform:translateX(4px)}.secondary,button.secondary{background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);color:#475569;color:var(--text-secondary);font-weight:600;padding:12px 20px;width:100%}button.secondary:hover:not(:disabled){background:#e2e8f0;transform:none}.landing-card{background:#fff;background:var(--surface);border:1px solid #0f766e1a;border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 4px 6px -1px #0000000d,0 20px 40px -8px #0f766e1f;box-shadow:var(--shadow-card);overflow:hidden;padding:0}.landing-card:before{display:none}.landing-header{background:linear-gradient(145deg,#0b5f59,#0f766e 48%,#0e7490);overflow:hidden;padding:28px 28px 30px;position:relative}.landing-header-pattern{background-image:radial-gradient(circle at 20% 30%,#ffffffe6 0 1px,#0000 1px),radial-gradient(circle at 80% 70%,#ffffffb3 0 1px,#0000 1px);background-size:28px 28px,36px 36px;inset:0;opacity:.14;pointer-events:none;position:absolute}.landing-header-content{align-items:center;display:flex;gap:18px;position:relative;z-index:1}.landing-logo-wrap{background:#fffffffa;border-radius:18px;box-shadow:0 10px 28px #00000029;flex-shrink:0;height:76px;padding:10px;width:76px}.landing-logo{height:100%;object-fit:contain;width:100%}.landing-header-copy{min-width:0}.landing-badge{align-items:center;background:#ffffff24;border:1px solid #ffffff38;border-radius:9999px;border-radius:var(--radius-full);color:#fffffff2;display:inline-flex;font-size:.62rem;font-weight:800;gap:7px;letter-spacing:.14em;margin-bottom:10px;padding:4px 12px;text-transform:uppercase}.landing-badge-dot{animation:pulse 2s ease-in-out infinite;background:#5eead4;border-radius:50%;box-shadow:0 0 8px #5eead4e6;height:6px;width:6px}.landing-title{color:#fff;font-size:clamp(1.35rem,3.5vw,1.65rem);font-weight:800;letter-spacing:-.03em;line-height:1.2;margin:0}.landing-subtitle{color:#ffffffc7;font-size:.9rem;line-height:1.5;margin:8px 0 0}.landing-main{padding:26px 24px 22px}.landing-details{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0 0 20px;padding:0}.landing-details-two{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.landing-detail{align-items:flex-start;background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:14px;padding:14px 16px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.landing-detail:hover{background:#f0fdfa;border-color:#99f6e4}.landing-detail-icon{background:#fff;border:1px solid #ccfbf1;border-radius:12px;box-shadow:0 1px 3px #0f172a0f;box-shadow:var(--shadow-sm);color:#0f766e;color:var(--primary);display:grid;flex-shrink:0;height:42px;place-items:center;width:42px}.landing-detail-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.landing-detail-label{color:#0f766e;color:var(--primary);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.landing-detail-value{color:#475569;color:var(--text-secondary);font-size:.92rem;font-weight:600;line-height:1.45}.landing-callout{background:linear-gradient(135deg,#f0fdfa,#ecfeff);border:1px solid #99f6e4;border-radius:14px;border-radius:var(--radius-md);margin-bottom:22px;padding:16px 18px}.landing-callout p{color:#475569;color:var(--text-secondary);font-size:.88rem;line-height:1.65;margin:0}.landing-cta{align-items:center;background:linear-gradient(135deg,#0f766e,#0d9488 50%,#0891b2);border:none;border-radius:14px;box-shadow:0 6px 20px #0f766e59;color:#fff;cursor:pointer;display:flex;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:1.05rem;font-weight:700;gap:10px;justify-content:center;margin-bottom:20px;padding:16px 24px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.landing-cta:hover{box-shadow:0 10px 28px #0f766e66;transform:translateY(-2px)}.landing-cta-arrow{font-size:1.2rem;transition:transform .22s cubic-bezier(.4,0,.2,1);transition:transform var(--transition)}.landing-cta:hover .landing-cta-arrow{transform:translateX(4px)}.landing-footer{font-size:.75rem}.feature-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr;margin-bottom:20px}.feature-card{align-items:center;background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:14px;padding:14px 16px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.feature-card:hover{background:#ccfbf1;background:var(--primary-light);border-color:#5eead4;border-color:var(--border-focus)}.feature-icon{flex-shrink:0;font-size:1.4rem}.feature-label{color:#94a3b8;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.05em;margin:0;text-transform:uppercase}.feature-value{color:#0f172a;color:var(--text);font-size:.88rem;font-weight:600;margin:2px 0 0}.rules-box{background:linear-gradient(135deg,#f0fdfa,#ecfeff);border:1px solid #99f6e4;border-radius:14px;border-radius:var(--radius-md);margin-bottom:24px;padding:16px 18px}.rules-box p{color:#475569;color:var(--text-secondary);font-size:.88rem;line-height:1.65;margin:0}.start-btn{margin-bottom:16px}.landing-footer{color:#94a3b8;color:var(--text-muted);font-size:.78rem;margin:0;text-align:center}.form-card{padding:32px 28px}.form-header{margin-bottom:24px}.form-header h2{margin:0}.form-step-nav{display:flex;justify-content:space-between;margin-bottom:20px;position:relative}.form-step-nav:before{background:#e2e8f0;background:var(--border);content:"";height:2px;left:10%;position:absolute;right:10%;top:16px;z-index:0}.form-step-item{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:6px;position:relative;z-index:1}.form-step-circle{align-items:center;background:#f8fafc;background:var(--surface-2);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:50%;color:#94a3b8;color:var(--text-muted);display:flex;font-size:.8rem;font-weight:800;height:32px;justify-content:center;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:32px}.form-step-item.active .form-step-circle{background:#0f766e;background:var(--primary);border-color:#0f766e;border-color:var(--primary);box-shadow:0 0 0 4px #0f766e40;box-shadow:0 0 0 4px var(--primary-glow);color:#fff}.form-step-item.done .form-step-circle{background:#059669;background:var(--success);border-color:#059669;border-color:var(--success);color:#fff}.form-step-label{color:#94a3b8;color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-align:center;text-transform:uppercase}.form-step-item.active .form-step-label{color:#0f766e;color:var(--primary)}.progress-bar{background:#e2e8f0;background:var(--border);height:6px;margin-bottom:28px;overflow:hidden}.progress,.progress-bar{border-radius:9999px;border-radius:var(--radius-full)}.progress{background:linear-gradient(90deg,#0f766e,#0284c7);background:linear-gradient(90deg,var(--primary),var(--accent));height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}label{color:#475569;color:var(--text-secondary);display:block;font-size:.82rem;font-weight:700;letter-spacing:.01em;margin-bottom:6px}input,select,textarea{-webkit-appearance:none;appearance:none;background:#fff;background:var(--surface);border:1.5px solid #e2e8f0;border:1.5px solid var(--border);border-radius:14px;border-radius:var(--radius-md);color:#0f172a;color:var(--text);font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.95rem;margin-bottom:18px;padding:13px 16px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}input:focus,select:focus,textarea:focus{border-color:#0f766e;border-color:var(--primary);box-shadow:0 0 0 3px #0f766e40;box-shadow:0 0 0 3px var(--primary-glow);outline:none}.error-text{color:#dc2626;color:var(--danger);display:block;font-size:.78rem;font-weight:600;margin:-14px 0 14px}.form-actions{display:flex;gap:12px;margin-top:8px}.form-actions button{flex:1 1}.quiz-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffeb;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);box-shadow:0 1px 3px #0f172a0f;box-shadow:var(--shadow-sm);left:0;position:fixed;right:0;top:0;z-index:200}.quiz-header-inner{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:640px;padding:12px 20px 10px}.quiz-header-brand{align-items:center;display:flex;gap:10px}.quiz-header-logo{height:28px;opacity:.85;width:auto}.quiz-badge{background:#ccfbf1;background:var(--primary-light);color:#0f766e;color:var(--primary);font-size:.78rem;font-weight:700;padding:4px 12px}.quiz-badge,.quiz-timer{border-radius:9999px;border-radius:var(--radius-full)}.quiz-timer{font-feature-settings:"tnum";align-items:center;background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);color:#0f172a;color:var(--text);display:flex;font-size:.9rem;font-variant-numeric:tabular-nums;font-weight:800;gap:6px;padding:6px 14px}.quiz-timer-dot{animation:pulse 1.5s ease-in-out infinite;background:#059669;background:var(--success);border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.quiz-progress-track{background:#e2e8f0;background:var(--border);height:3px}.quiz-progress-fill{background:linear-gradient(90deg,#0f766e,#0284c7);background:linear-gradient(90deg,var(--primary),var(--accent));height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.question-card{padding:28px 24px}.question-dots{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:20px}.question-dot{background:#e2e8f0;background:var(--border);border-radius:50%;height:8px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:8px}.question-dot.active{background:#0f766e;background:var(--primary);border-radius:9999px;border-radius:var(--radius-full);width:20px}.question-dot.done{background:#059669;background:var(--success)}.question-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:20px}.question-section-badge{background:#ccfbf1;background:var(--primary-light);border-radius:9999px;border-radius:var(--radius-full);color:#0f766e;color:var(--primary);font-size:.72rem;font-weight:800;letter-spacing:.06em;padding:4px 12px;text-transform:uppercase}.question-step-pill{color:#94a3b8;color:var(--text-muted);font-size:.78rem;font-weight:700}.question-text{color:#0f172a;color:var(--text);font-size:1.1rem;font-weight:600;line-height:1.65;margin:0 0 24px}.text-answer-input{line-height:1.6;min-height:140px;resize:vertical}.options-grid{display:flex;flex-direction:column;gap:10px}.option-item{align-items:center;background:#fff;background:var(--surface);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:14px;border-radius:var(--radius-md);color:#0f172a;color:var(--text);cursor:pointer;display:flex;font-size:.95rem;gap:14px;padding:16px 18px;text-align:left;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.option-item:hover{background:#f0fdfa;border-color:#5eead4;transform:translateX(2px)}.option-item.selected{background:linear-gradient(135deg,#f0fdfa,#ecfeff);border-color:#0f766e;border-color:var(--primary);box-shadow:0 4px 12px #0f766e40;box-shadow:0 4px 12px var(--primary-glow)}.option-letter{align-items:center;background:#f8fafc;background:var(--surface-2);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:50%;color:#475569;color:var(--text-secondary);display:flex;flex-shrink:0;font-size:.82rem;font-weight:800;height:32px;justify-content:center;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:32px}.option-item.selected .option-letter{background:#0f766e;background:var(--primary);border-color:#0f766e;border-color:var(--primary);color:#fff}.option-text{flex:1 1;line-height:1.4}.option-check{color:#0f766e;color:var(--primary);font-size:1.1rem;font-weight:800}.question-card-animate{animation:questionSlide .35s ease-out}@keyframes questionSlide{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}.quiz-next-btn{margin-top:24px}.result-card{padding:36px 28px;text-align:center}.score-ring-wrap{height:140px;margin:0 auto 24px;position:relative;width:140px}.score-ring-svg{height:100%;transform:rotate(-90deg);width:100%}.score-ring-bg{fill:none;stroke:#e2e8f0;stroke:var(--border);stroke-width:8}.score-ring-progress{fill:none;stroke:#0f766e;stroke:var(--primary);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset 1s cubic-bezier(.4,0,.2,1)}.score-ring-center{align-items:center;display:flex;flex-direction:column;inset:0;justify-content:center;position:absolute}.result-score-value{color:#0f766e;color:var(--primary);font-size:2.4rem;font-weight:800;line-height:1}.result-score-of{color:#94a3b8;color:var(--text-muted);font-size:.9rem;font-weight:600}.result-icon-wrap.hidden{display:none}.result-icon-wrap.visible{margin-bottom:20px}.result-icon{align-items:center;border-radius:50%;display:inline-flex;font-size:2rem;font-weight:800;height:72px;justify-content:center;width:72px}.result-icon-pass{background:#d1fae5;background:var(--success-light);color:#059669;color:var(--success)}.result-icon-fail{background:#fee2e2;background:var(--danger-light);color:#dc2626;color:var(--danger)}.result-title{margin-bottom:20px}.result-user-card{align-items:center;background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:14px;margin-bottom:20px;padding:14px 16px;text-align:left}.result-avatar{align-items:center;background:linear-gradient(135deg,#0f766e,#0284c7);background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.1rem;font-weight:800;height:44px;justify-content:center;width:44px}.result-user-name{font-size:.95rem;font-weight:700;margin:0}.result-user-phone{color:#94a3b8;color:var(--text-muted);font-size:.82rem;margin:2px 0 0}.result-percentage{color:#059669;color:var(--success);font-size:1.1rem;font-weight:700;margin:0 0 12px}.result-time-chip{align-items:center;background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:9999px;border-radius:var(--radius-full);color:#475569;color:var(--text-secondary);display:inline-flex;font-size:.85rem;gap:6px;margin-bottom:20px;padding:8px 16px}.result-status{border-radius:14px;border-radius:var(--radius-md);margin-top:8px;padding:16px 18px}.result-status.pass{background:#d1fae5;background:var(--success-light);border:1px solid #6ee7b7}.result-status.fail{background:#fee2e2;background:var(--danger-light);border:1px solid #fca5a5}.result-status-title{color:#dc2626;color:var(--danger);font-weight:700;margin:0}.result-reason{color:#dc2626;color:var(--danger);font-size:.9rem;margin:8px 0 0}.result-typing-section{background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);margin:20px 0;padding:18px}.result-typing-heading{color:#0f172a;color:var(--text);font-size:1rem;margin:0 0 14px}.result-typing-stats{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.result-typing-stat{align-items:center;display:flex;flex-direction:column;min-width:72px}.result-typing-value{color:#0f766e;color:var(--primary);font-size:1.5rem;font-weight:800;line-height:1.2}.result-typing-label{color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.typing-test-wrap{margin:0 auto;max-width:820px}.typing-test-card{padding:28px}.typing-test-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.typing-test-title{font-size:1.35rem;margin:0 0 6px}.typing-test-instruction{color:#475569;color:var(--text-secondary);font-size:.9rem;margin:0}.typing-timer-pill{align-items:center;background:#f8fafc;background:var(--surface-2);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:14px;border-radius:var(--radius-md);display:flex;flex-direction:column;min-width:90px;padding:10px 18px}.typing-timer-pill.active{background:#ccfbf1;background:var(--primary-light);border-color:#0f766e;border-color:var(--primary)}.typing-timer-label{color:#94a3b8;color:var(--text-muted);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.typing-timer-value{color:#0f766e;color:var(--primary);font-size:1.6rem;font-weight:800;line-height:1.2}.typing-live-stats{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.typing-stat{background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-sm);flex:1 1;min-width:90px;padding:12px 14px;text-align:center}.typing-stat-value{color:#0f766e;color:var(--primary);display:block;font-size:1.25rem;font-weight:800}.typing-stat-label{color:#94a3b8;color:var(--text-muted);font-size:.72rem;font-weight:600;text-transform:uppercase}.typing-passage,.typing-passage-wrap{position:relative}.typing-passage{--typing-line-height:2.1em;background:#f8fafc;background:var(--surface-2);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:14px;border-radius:var(--radius-md);cursor:text;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:1.45rem;line-height:var(--typing-line-height);padding:28px 32px;-webkit-user-select:none;user-select:none}.typing-passage-viewport{height:calc(var(--typing-line-height)*3);overflow:hidden;position:relative}.typing-passage-viewport:after,.typing-passage-viewport:before{content:"";height:6px;left:0;pointer-events:none;position:absolute;right:0;z-index:2}.typing-passage-viewport:before{background:linear-gradient(180deg,#f8fafc,#0000);background:linear-gradient(180deg,var(--surface-2) 0,#0000 100%);top:0}.typing-passage-viewport:after{background:linear-gradient(0deg,#f8fafc,#0000);background:linear-gradient(0deg,var(--surface-2) 0,#0000 100%);bottom:0}.typing-passage-track{transition:transform .45s cubic-bezier(.25,.46,.45,.94);will-change:transform}.typing-passage-line{height:var(--typing-line-height);line-height:var(--typing-line-height);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.typing-char{border-radius:3px;transition:color .1s ease,background .1s ease}.typing-char-pending{color:#94a3b8;color:var(--text-muted)}.typing-char-correct{background:#ccfbf1;background:var(--primary-light);color:#0f766e;color:var(--primary)}.typing-char-incorrect{background:#fee2e2;background:var(--danger-light);color:#dc2626;color:var(--danger)}.typing-char-current{position:relative}.typing-char-current:before{animation:typing-cursor-blink 1s step-end infinite;background:#0f766e;background:var(--primary);border-radius:1px;bottom:.12em;content:"";left:-2px;position:absolute;top:.12em;width:2px}.typing-cursor-end{animation:typing-cursor-border-blink 1s step-end infinite;border-left:2px solid #0f766e;border-left:2px solid var(--primary);display:inline;margin-left:1px;padding-left:2px}@keyframes typing-cursor-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes typing-cursor-border-blink{0%,to{border-color:#0f766e;border-color:var(--primary)}50%{border-color:#0000}}.typing-input-overlay{background:#0000;border:none;caret-color:#0000;color:#0000;cursor:text;font-size:1.15rem;height:100%;inset:0;line-height:1.9;opacity:0;padding:20px;position:absolute;resize:none;width:100%}.typing-review-card{background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);margin-bottom:24px;padding:16px}.typing-review-stats{display:flex;flex-wrap:wrap;font-size:.9rem;gap:20px;margin-bottom:12px}.typing-review-label{color:#94a3b8;color:var(--text-muted);font-size:.85rem;font-weight:600;margin:0 0 8px}.typing-review-passage{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-sm);font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.95rem;line-height:1.8;padding:14px;word-break:break-word}.modal-backdrop{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aa6;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:500}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{animation:modalPop .3s cubic-bezier(.34,1.56,.64,1);background:#fff;background:var(--surface);border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 20px 48px -12px #0f766e2e;box-shadow:var(--shadow-lg);max-height:90vh;max-width:480px;overflow-y:auto;padding:32px 28px;text-align:center;width:100%}.modal:before{display:none}@keyframes modalPop{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-icon-ring{align-items:center;background:#ccfbf1;background:var(--primary-light);border:3px solid #99f6e4;border-radius:50%;display:flex;font-size:1.8rem;height:64px;justify-content:center;margin:0 auto 16px;width:64px}.modal-icon-ring.danger{background:#fee2e2;background:var(--danger-light);border-color:#fca5a5}.modal-title{font-size:1.3rem;font-weight:800;letter-spacing:-.02em;margin:0 0 6px}.modal-subtitle{color:#0f766e;color:var(--primary);font-size:.9rem;font-weight:700;margin:0 0 8px}.modal-instruction{color:#475569;color:var(--text-secondary);font-size:.88rem;line-height:1.5;margin:0 0 20px}.danger-text{color:#dc2626;color:var(--danger)}.rules-list{list-style:none;margin:0 0 24px;padding:0;text-align:left}.rules-list-item{align-items:flex-start;background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);color:#475569;color:var(--text-secondary);display:flex;font-size:.88rem;gap:12px;margin-bottom:8px;padding:12px 14px}.rules-list-icon{flex-shrink:0;font-size:1.1rem}.modal-actions{display:flex;flex-direction:column;gap:8px}.attempts-box{background:#fee2e2;background:var(--danger-light);border:1px solid #fca5a5;border-radius:14px;border-radius:var(--radius-md);margin-bottom:16px;padding:20px}.attempts-label{color:#b91c1c;font-size:.82rem;font-weight:600;margin:0}.attempts-count{color:#dc2626;color:var(--danger);font-size:2.5rem;font-weight:800;line-height:1;margin:4px 0 0}.violation-warning-text{color:#475569;color:var(--text-secondary);font-size:.85rem;margin:0 0 20px}.admin-main-card{border-radius:28px;border-radius:var(--radius-xl);max-width:1140px;padding:28px 32px;width:100%}.admin-detail-view{margin:0 auto;max-width:900px}.admin-login-card{margin:auto}.admin-login-header{margin-bottom:24px;text-align:center}.admin-login-logo{margin-bottom:12px;width:160px}.admin-cancel-btn{margin-top:10px}.admin-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px}.admin-header-left{align-items:center;display:flex;gap:16px}.admin-logo{width:110px}.admin-header h2{font-size:1.3rem;margin:0}.admin-logout-btn{font-size:.88rem;padding:8px 20px;width:auto}.admin-tabs{background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px;padding:5px}.admin-tabs button{background:#0000;border-radius:10px;border-radius:var(--radius-sm);color:#94a3b8;color:var(--text-muted);flex:1 1;font-size:.88rem;font-weight:700;min-width:120px;padding:10px 16px;width:auto}.admin-tabs button:hover:not(.tab-active){background:#ffffffb3;color:#0f172a;color:var(--text);transform:none}.admin-tabs .tab-active{background:#fff;background:var(--surface);box-shadow:0 1px 3px #0f172a0f;box-shadow:var(--shadow-sm);color:#0f766e;color:var(--primary)}.stats-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-card{border:1px solid #0000;border-radius:20px;border-radius:var(--radius-lg);padding:20px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.stat-card:hover{transform:translateY(-2px)}.stat-card-teal{background:linear-gradient(135deg,#f0fdfa,#ccfbf1);border-color:#99f6e4}.stat-card-blue{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-color:#7dd3fc}.stat-card-green{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#86efac}.stat-card-purple{background:linear-gradient(135deg,#faf5ff,#ede9fe);border-color:#c4b5fd}.stat-card-orange{background:linear-gradient(135deg,#fff7ed,#ffedd5);border-color:#fdba74}.stat-label{color:#94a3b8;color:var(--text-muted);font-size:.7rem;font-weight:800;letter-spacing:.06em;margin:0 0 8px;text-transform:uppercase}.stat-value{color:#0f172a;color:var(--text);font-size:2rem;font-weight:800;letter-spacing:-.03em;margin:0}.charts-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.chart-card{background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:20px;border-radius:var(--radius-lg);padding:20px}.chart-card h4{color:#475569;color:var(--text-secondary);font-size:.9rem;margin:0 0 16px}.results-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.results-search{flex:1 1;margin-bottom:0!important;min-width:180px}.score-filter-input{margin-bottom:0!important;width:90px}.results-toolbar select{font-size:.88rem;margin-bottom:0!important;padding:10px 12px;width:auto}.export-btn{border-radius:10px;border-radius:var(--radius-sm);font-size:.82rem;font-weight:700;padding:10px 16px;width:auto}.export-csv{background:#059669;background:var(--success)}.export-csv:hover:not(:disabled){background:#047857}.export-pdf{background:#7c3aed}.export-pdf:hover:not(:disabled){background:#6d28d9}.admin-table{border-collapse:collapse;min-width:700px;width:100%}.admin-table th{background:#f8fafc;background:var(--surface-2);border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border);color:#94a3b8;color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.05em;padding:12px 14px;text-align:left;text-transform:uppercase}.admin-table td{border-bottom:1px solid #f1f5f9;font-size:.88rem;padding:13px 14px}.admin-table-row{cursor:pointer;transition:background .22s cubic-bezier(.4,0,.2,1);transition:background var(--transition)}.admin-table-row:hover{background:#f0fdfa}.score-badge{background:#ccfbf1;background:var(--primary-light);border-radius:9999px;border-radius:var(--radius-full);color:#0f766e;color:var(--primary);font-size:.8rem;font-weight:800;padding:3px 10px}.table-action-btn{background:#0f766e;background:var(--primary);border-radius:10px;border-radius:var(--radius-sm);font-size:.78rem;padding:6px 14px;width:auto}.pagination-bar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:16px}.pagination-info{color:#94a3b8;color:var(--text-muted);font-size:.82rem}.pagination-controls{align-items:center;display:flex;gap:8px}.pagination-controls select{font-size:.82rem;margin-bottom:0;padding:8px 10px;width:auto}.pagination-btn{font-size:.82rem;padding:8px 16px;width:auto}.page-num{color:#475569;color:var(--text-secondary);font-size:.82rem;font-weight:700;min-width:50px;text-align:center}.participant-detail{max-height:82vh;overflow-y:auto}.pd-page{display:flex;flex-direction:column;gap:20px}.pd-back{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#475569;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:600;gap:8px;padding:10px 18px;transition:background .15s ease,border-color .15s ease;width:auto}.pd-back:hover{background:#f1f5f9;border-color:#cbd5e1;transform:none}.pd-back-icon{font-size:1rem;line-height:1}.pd-hero{background:linear-gradient(135deg,#f0fdfa,#ecfeff 50%,#e0f2fe);border:1px solid #99f6e4;border-radius:16px;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:24px 28px}.pd-hero,.pd-hero-left{align-items:center;display:flex}.pd-hero-left{gap:18px;min-width:0}.pd-avatar{align-items:center;background:linear-gradient(135deg,#0f766e,#0d9488);background:linear-gradient(135deg,var(--primary) 0,#0d9488 100%);border-radius:14px;box-shadow:0 4px 12px #0f766e40;box-shadow:0 4px 12px var(--primary-glow);color:#fff;display:flex;flex-shrink:0;font-size:1.4rem;font-weight:800;height:56px;justify-content:center;width:56px}.pd-name{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;margin:0 0 8px}.pd-meta{display:flex;flex-wrap:wrap;gap:12px 20px}.pd-meta-item{align-items:center;color:#475569;color:var(--text-secondary);display:inline-flex;font-size:.85rem;gap:6px}.pd-meta-icon{font-size:.9rem;opacity:.8}.pd-hero-score{flex-direction:column;flex-shrink:0;gap:6px}.pd-hero-score,.pd-score-ring{align-items:center;display:flex}.pd-score-ring{background:#fff;border:3px solid #0f766e;border:3px solid var(--primary);border-radius:50%;box-shadow:0 4px 14px #0f766e40;box-shadow:0 4px 14px var(--primary-glow);height:72px;justify-content:center;width:72px}.pd-score-value{color:#0f766e;color:var(--primary);font-size:1.25rem;font-weight:800}.pd-score-label{color:#94a3b8;color:var(--text-muted);font-size:.78rem;font-weight:600}.pd-performance-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.pd-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 3px #0f172a0a;padding:20px}.pd-panel-typing{background:linear-gradient(180deg,#fff,#f0fdfa);border-color:#99f6e4}.pd-panel-head{align-items:center;display:flex;gap:10px;margin-bottom:16px}.pd-panel-head h3{font-size:.95rem;font-weight:700;margin:0}.pd-panel-icon{font-size:1.1rem}.pd-stat-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.pd-stat{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 12px;text-align:center}.pd-stat-value{color:#0f172a;color:var(--text);display:block;font-size:1.35rem;font-weight:800;line-height:1.2}.pd-stat-label{color:#94a3b8;color:var(--text-muted);display:block;font-size:.68rem;font-weight:700;letter-spacing:.04em;margin-top:4px;text-transform:uppercase}.pd-stat-success .pd-stat-value{color:#059669;color:var(--success)}.pd-stat-danger .pd-stat-value{color:#dc2626;color:var(--danger)}.pd-stat-primary .pd-stat-value{color:#0f766e;color:var(--primary)}.pd-empty-typing{align-items:center;color:#94a3b8;color:var(--text-muted);display:flex;flex-direction:column;justify-content:center;padding:28px 16px;text-align:center}.pd-empty-icon{font-size:2rem;margin-bottom:8px;opacity:.4}.pd-empty-typing p{font-size:.88rem;margin:0}.pd-section{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 3px #0f172a0a;padding:22px 24px}.pd-section-head{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:18px}.pd-section-head h3{font-size:1rem;font-weight:700;margin:0}.pd-section-count{background:#f1f5f9;border-radius:20px;color:#94a3b8;color:var(--text-muted);font-size:.78rem;font-weight:600;padding:4px 10px}.pd-typing-badges{display:flex;flex-wrap:wrap;gap:8px}.pd-badge{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#475569;color:var(--text-secondary);font-size:.75rem;font-weight:600;padding:5px 12px}.pd-badge-primary{background:#ccfbf1;background:var(--primary-light);border-color:#99f6e4;color:#0f766e;color:var(--primary)}.pd-badge-success{background:#f0fdf4;border-color:#86efac;color:#059669;color:var(--success)}.pd-badge-danger{background:#fef2f2;border-color:#fca5a5;color:#dc2626;color:var(--danger)}.pd-typing-passage-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:16px 18px}.pd-typing-passage-label{color:#94a3b8;color:var(--text-muted);font-size:.8rem;font-weight:600;letter-spacing:.04em;margin:0 0 12px;text-transform:uppercase}.pd-typing-passage{background:#fff;border:1px solid #e2e8f0;border-radius:10px;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.92rem;line-height:2;padding:16px 18px;word-break:break-word}.pd-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.pd-info-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:4px;padding:12px 14px}.pd-info-label{color:#94a3b8;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.pd-info-value{color:#0f172a;color:var(--text);font-size:.9rem;font-weight:600;line-height:1.4}.pd-review-list{display:flex;flex-direction:column;gap:8px}.pd-review-details{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.pd-review-details[open]{box-shadow:0 4px 14px #0f172a0f}.pd-review-correct{background:#fafff9;border-color:#bbf7d0}.pd-review-wrong{background:snow;border-color:#fecaca}.pd-review-missing{background:#f8fafc;border-color:#e2e8f0}.pd-review-summary{align-items:center;cursor:pointer;display:flex;gap:12px;list-style:none;padding:14px 16px;-webkit-user-select:none;user-select:none}.pd-review-summary::-webkit-details-marker{display:none}.pd-review-summary:hover{background:#0f766e0a}.pd-review-preview{color:#0f172a;color:var(--text);flex:1 1;font-size:.88rem;font-weight:600;line-height:1.4;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-review-chevron{color:#94a3b8;color:var(--text-muted);flex-shrink:0;font-size:.85rem;transition:transform .2s ease}.pd-review-details[open] .pd-review-chevron{transform:rotate(180deg)}.pd-review-body{border-top:1px solid #f1f5f9;padding:0 16px 16px}.pd-review-num{background:#ccfbf1;background:var(--primary-light);border-radius:6px;color:#0f766e;color:var(--primary);flex-shrink:0;font-size:.72rem;font-weight:800;padding:4px 10px}.pd-review-badge{border-radius:20px;flex-shrink:0;font-size:.68rem;font-weight:700;padding:4px 10px}.pd-review-badge-success{background:#dcfce7;color:#15803d}.pd-review-badge-danger{background:#fee2e2;color:#b91c1c}.pd-review-badge-muted{background:#f1f5f9;color:#94a3b8;color:var(--text-muted)}.pd-review-question{color:#475569;color:var(--text-secondary);font-size:.9rem;font-weight:500;line-height:1.65;margin:14px 0 12px;white-space:pre-line}.pd-review-options{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:720px){.pd-review-options{grid-template-columns:1fr}}.pd-review-opt{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;font-size:.88rem;gap:10px;padding:10px 12px}.pd-review-opt-correct{background:#f0fdf4;border-color:#86efac}.pd-review-opt-wrong{background:#fef2f2;border-color:#fca5a5}.pd-review-opt-letter{color:#94a3b8;color:var(--text-muted);flex-shrink:0;font-weight:800;width:20px}.pd-review-opt-text{flex:1 1}.pd-review-tag{background:#e2e8f0;border-radius:4px;color:#475569;color:var(--text-secondary);flex-shrink:0;font-size:.68rem;font-weight:700;padding:3px 8px}.pd-review-tag-correct{background:#dcfce7;color:#15803d}.pd-review-answer{color:#475569;color:var(--text-secondary);font-size:.88rem;margin:0}@media (max-width:900px){.pd-info-grid,.pd-performance-grid{grid-template-columns:1fr}.pd-hero{align-items:flex-start;flex-direction:column}.pd-hero-score{align-self:flex-end}}.back-btn{background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-sm);color:#475569;color:var(--text-secondary);font-size:.88rem;font-weight:600;margin-bottom:20px;padding:8px 16px;width:auto}.back-btn:hover{background:#e2e8f0;transform:none}.participant-header-card{background:linear-gradient(135deg,#f0fdfa,#e0f2fe);border:1px solid #99f6e4;border-radius:20px;border-radius:var(--radius-lg);margin-bottom:20px;padding:24px}.participant-header-top{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.participant-header-top h2{font-size:1.4rem;margin:0 0 4px}.participant-phone{color:#94a3b8;color:var(--text-muted);font-size:.9rem;margin:0}.participant-score-badge{align-items:baseline;display:flex;gap:2px}.score-big{color:#0f766e;color:var(--primary);font-size:2.8rem;font-weight:800;line-height:1}.score-sep{color:#94a3b8;color:var(--text-muted);font-size:1.5rem}.score-total{color:#475569;color:var(--text-secondary);font-size:1.5rem;font-weight:700}.participant-stats-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr)}.participant-stat{background:#fff;border:1px solid #fffc;border-radius:14px;border-radius:var(--radius-md);box-shadow:0 1px 3px #0f172a0f;box-shadow:var(--shadow-sm);padding:12px;text-align:center}.stat-num{color:#0f172a;color:var(--text);display:block;font-size:1.2rem;font-weight:800}.stat-lbl{color:#94a3b8;color:var(--text-muted);font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.correct-stat .stat-num{color:#059669;color:var(--success)}.incorrect-stat .stat-num{color:#dc2626;color:var(--danger)}.participant-info-grid{grid-gap:8px 20px;background:#f8fafc;background:var(--surface-2);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);display:grid;font-size:.88rem;gap:8px 20px;grid-template-columns:1fr 1fr;margin-bottom:24px;padding:16px 18px}.participant-info-grid p{margin:0}.review-heading{border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border);font-size:1rem;margin-bottom:16px;padding-bottom:10px}.question-review-list{display:flex;flex-direction:column;gap:12px}.review-item{background:#fff;background:var(--surface);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:14px;border-radius:var(--radius-md);padding:16px}.review-correct{background:#f0fdf4;border-color:#86efac}.review-incorrect{background:#fef2f2;border-color:#fca5a5}.review-missing{background:#f8fafc;background:var(--surface-2);border-color:#e2e8f0;border-color:var(--border)}.review-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.review-q-num{color:#94a3b8;color:var(--text-muted);font-size:.78rem;font-weight:800}.review-status{border-radius:9999px;border-radius:var(--radius-full);font-size:.72rem;font-weight:800;letter-spacing:.04em;padding:3px 10px;text-transform:uppercase}.status-correct{background:#d1fae5;background:var(--success-light);color:#059669;color:var(--success)}.status-incorrect{background:#fee2e2;background:var(--danger-light);color:#dc2626;color:var(--danger)}.review-question{font-size:.92rem;font-weight:600;line-height:1.5;margin:0 0 12px}.review-options{display:flex;flex-direction:column;gap:6px}.review-option{align-items:center;background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-sm);display:flex;font-size:.85rem;gap:8px;padding:9px 12px}.option-is-correct{background:#f0fdf4;border-color:#86efac}.option-is-wrong{background:#fef2f2;border-color:#fca5a5}.review-option-letter{color:#94a3b8;color:var(--text-muted);font-weight:800;width:18px}.review-tag{border-radius:9999px;border-radius:var(--radius-full);font-size:.68rem;font-weight:800;letter-spacing:.03em;margin-left:auto;padding:2px 8px;text-transform:uppercase}.user-tag{background:#dbeafe;color:#1d4ed8}.correct-tag{background:#d1fae5;background:var(--success-light);color:#059669;color:var(--success)}.mq-page{display:flex;flex:1 1;flex-direction:column;gap:0;min-height:0}.mq-topbar{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.mq-tabs{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:8px;padding:6px}.mq-tab{align-items:center;background:#0000;border:none;border-radius:8px;color:#475569;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.88rem;font-weight:600;gap:8px;padding:10px 18px;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.mq-tab:hover{background:#ffffffb3;color:#0f172a;color:var(--text);transform:none}.mq-tab.active{background:#fff;box-shadow:0 2px 8px #0f172a14;color:#0f766e;color:var(--primary)}.mq-tab-icon{font-size:1rem;line-height:1}.mq-tab-count{background:#e2e8f0;border-radius:20px;color:#94a3b8;color:var(--text-muted);font-size:.7rem;font-weight:800;padding:2px 8px}.mq-tab.active .mq-tab-count{background:#ccfbf1;background:var(--primary-light);color:#0f766e;color:var(--primary)}.mq-save-btn{flex-shrink:0}.mq-panel{display:flex;flex-direction:column;gap:16px;min-height:0}.mq-panel-banner{align-items:center;border-radius:14px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:18px 20px}.mq-panel-banner-teal{background:linear-gradient(135deg,#f0fdfa,#ecfeff);border:1px solid #99f6e4}.mq-panel-title{color:#0f172a;color:var(--text);font-size:1rem;font-weight:700;margin:0 0 4px}.mq-panel-desc{color:#94a3b8;color:var(--text-muted);font-size:.82rem;line-height:1.45;margin:0;max-width:520px}.mq-alert{border-radius:10px;font-size:.85rem;font-weight:600;padding:12px 16px}.mq-alert-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;color:var(--danger)}.mq-passage-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.mq-passage-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 3px #0f172a0a;padding:16px;transition:border-color .15s ease,box-shadow .15s ease}.mq-passage-card:focus-within{border-color:#99f6e4;box-shadow:0 4px 14px #0f766e1a}.mq-passage-card-head{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:10px}.mq-passage-num{color:#0f766e;color:var(--primary);font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.mq-passage-meta{align-items:center;display:flex;gap:10px}.mq-char-count{background:#f1f5f9;border-radius:6px;color:#94a3b8;color:var(--text-muted);font-size:.72rem;font-weight:600;padding:3px 8px}.mq-icon-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.85rem;height:32px;justify-content:center;transition:background .15s ease;width:32px}.mq-icon-btn:hover{background:#f8fafc;transform:none}.mq-icon-btn-danger:hover{background:#fef2f2;border-color:#fecaca}.mq-passage-input{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.85rem;line-height:1.55;margin-bottom:0;min-height:100px;padding:12px 14px;resize:vertical;width:100%}.mq-passage-input:focus{background:#fff;border-color:#0f766e;border-color:var(--primary);box-shadow:0 0 0 3px #0f766e40;box-shadow:0 0 0 3px var(--primary-glow);outline:none}.mq-add-card{align-items:center;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:14px;color:#475569;color:var(--text-secondary);cursor:pointer;display:flex;flex-direction:column;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.9rem;font-weight:600;gap:4px;justify-content:center;min-height:120px;padding:20px;transition:border-color .15s ease,background .15s ease,color .15s ease;width:100%}.mq-add-card:hover{background:#ccfbf1;background:var(--primary-light);border-color:#0f766e;border-color:var(--primary);color:#0f766e;color:var(--primary);transform:none}.mq-add-card-icon{font-size:1.5rem;line-height:1}.mq-add-card-sub{color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-weight:600}.mq-limit-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:14px;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:16px 20px}.mq-limit-info{align-items:flex-start;display:flex;gap:12px}.mq-limit-icon{font-size:1.3rem;line-height:1}.mq-limit-field input{border:2px solid #e2e8f0;border-radius:10px;color:#0f766e;color:var(--primary);font-size:1.2rem;font-weight:800;margin-bottom:0;padding:10px 14px;text-align:center;width:100px}.mq-limit-field input:focus{border-color:#0f766e;border-color:var(--primary);box-shadow:0 0 0 3px #0f766e40;box-shadow:0 0 0 3px var(--primary-glow);outline:none}.mq-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.mq-toolbar-filters{display:flex;flex:1 1;flex-wrap:wrap;gap:8px;min-width:200px}.mq-search{border:1px solid #e2e8f0;border-radius:10px;flex:1 1;font-size:.88rem;margin-bottom:0;min-width:180px;padding:10px 14px}.mq-toolbar-filters select{border-radius:10px;margin-bottom:0;min-width:160px;padding:10px 12px;width:auto}.mq-questions-list{max-height:52vh;overflow-y:auto;padding-right:4px}.mq-empty{align-items:center;background:#f8fafc;border:1px dashed #e2e8f0;border-radius:14px;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:48px 24px;text-align:center}.mq-empty-icon{font-size:2rem;opacity:.5}.mq-empty p{color:#94a3b8;color:var(--text-muted);font-size:.9rem;margin:0}@media (max-width:720px){.mq-topbar{align-items:stretch;flex-direction:column}.mq-tabs{width:100%}.mq-tab{flex:1 1}.mq-save-btn,.mq-tab{justify-content:center}.mq-save-btn{width:100%}.mq-passage-grid{grid-template-columns:1fr}.mq-panel-banner{align-items:stretch;flex-direction:column}}.admin-exam-config-card{align-items:flex-start;background:linear-gradient(135deg,#f0fdfa,#ecfeff);border:1px solid #99f6e4;border-radius:14px;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:16px;padding:18px 20px}.admin-exam-config-head{align-items:flex-start;display:flex;flex:1 1;gap:12px;min-width:200px}.admin-exam-config-icon{font-size:1.4rem;line-height:1}.admin-exam-config-title{font-size:.95rem;font-weight:700;margin:0 0 4px}.admin-exam-config-hint{color:#94a3b8;color:var(--text-muted);font-size:.8rem;line-height:1.4;margin:0}.admin-exam-config-field{display:flex;flex-direction:column;gap:6px;min-width:160px}.admin-exam-config-field label{color:#94a3b8;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.admin-exam-config-field input{background:#fff;border:2px solid #99f6e4;border-radius:10px;color:#0f766e;color:var(--primary);font-size:1.1rem;font-weight:700;margin-bottom:0;padding:10px 14px;width:120px}.admin-config-error{color:#dc2626;color:var(--danger);font-size:.78rem;font-weight:600}.admin-typing-passages-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;margin-bottom:16px;padding:18px 20px}.admin-typing-passages-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.admin-typing-passage-item{display:flex;flex-direction:column;gap:6px}.admin-typing-passage-head{align-items:center;display:flex;gap:12px;justify-content:space-between}.admin-typing-passage-head label{color:#94a3b8;color:var(--text-muted);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.admin-typing-passage-input{border:1px solid #e2e8f0;border-radius:10px;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.85rem;line-height:1.5;margin-bottom:0;min-height:72px;padding:12px 14px;resize:vertical;width:100%}.admin-btn-sm{font-size:.78rem;padding:6px 12px}.admin-questions{display:flex;flex:1 1;flex-direction:column;min-height:0}.questions-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.questions-toolbar select{margin-bottom:0;padding:10px 12px;width:auto}.question-count-badge{background:#ccfbf1;background:var(--primary-light);border-radius:9999px;border-radius:var(--radius-full);color:#0f766e;color:var(--primary);font-size:.78rem;font-weight:800;margin-left:auto;padding:6px 14px}.questions-list{flex:1 1;margin-bottom:8px;overflow-y:auto}.question-admin-card{border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);margin-bottom:8px;overflow:hidden;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.question-admin-card.expanded{border-color:#99f6e4;box-shadow:0 8px 24px -4px #0f172a1a;box-shadow:var(--shadow-md)}.question-admin-header{align-items:center;background:#f8fafc;background:var(--surface-2);border:none;color:#0f172a;color:var(--text);cursor:pointer;display:flex;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);gap:12px;padding:14px 16px;text-align:left;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.question-admin-header:hover{background:#f0fdfa}.question-admin-num{color:#0f766e;color:var(--primary);flex-shrink:0;font-size:.82rem;font-weight:800}.question-admin-preview{flex:1 1;font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.question-admin-section{background:#e2e8f0;background:var(--border);border-radius:9999px;border-radius:var(--radius-full);color:#94a3b8;color:var(--text-muted);flex-shrink:0;font-size:.68rem;padding:2px 8px}.question-admin-chevron{color:#94a3b8;color:var(--text-muted);font-size:.7rem}.question-admin-body{border-top:1px solid #e2e8f0;border-top:1px solid var(--border);padding:16px}.question-type-row{display:flex;gap:10px;margin-bottom:16px}.question-type-row select{flex:1 1;margin-bottom:0}.admin-question-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.admin-question-single{display:flex;flex-direction:column;gap:0}.option-edit-row{align-items:center;display:flex;gap:10px;margin-bottom:10px}.option-edit-label{color:#94a3b8;color:var(--text-muted);font-size:.78rem;font-weight:800;width:20px}.option-edit-row input{margin-bottom:0}.correct-answer-row{margin-top:10px}.correct-answer-row select{margin-bottom:0}.hindi-answer-sync{background:#f8fafc;background:var(--surface-2);border:1px dashed #e2e8f0;border:1px dashed var(--border);border-radius:10px;border-radius:var(--radius-sm);color:#475569;color:var(--text-secondary);font-size:.82rem;margin-top:10px;padding:12px}.question-admin-footer{border-top:1px solid #e2e8f0;border-top:1px solid var(--border);display:flex;justify-content:flex-end;margin-top:18px;padding-top:16px}.admin-btn-danger-outline{align-items:center;background:#fff;border:1px solid #fecaca;border-radius:10px;border-radius:var(--radius-sm);color:#dc2626;color:var(--danger);cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.84rem;font-weight:700;gap:8px;padding:9px 16px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.admin-btn-danger-outline:hover:not(:disabled){background:#fee2e2;background:var(--danger-light);border-color:#fca5a5;transform:translateY(-1px)}.admin-btn-danger{background:#dc2626;background:var(--danger);border:none;border-radius:10px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.84rem;font-weight:700;padding:9px 16px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.admin-btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px)}.delete-confirm{align-items:center;background:#fff5f5;border:1px solid #fecaca;border-radius:14px;border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:14px 16px;width:100%}.delete-confirm-copy{align-items:center;display:flex;gap:10px;min-width:0}.delete-confirm-icon{flex-shrink:0;font-size:1.1rem}.delete-confirm p{color:#991b1b;font-size:.88rem;font-weight:600;line-height:1.45;margin:0}.delete-confirm-actions{display:flex;flex-shrink:0;gap:8px}.admin-actions-sticky{background:#fff;background:var(--surface);border-top:1px solid #e2e8f0;border-top:1px solid var(--border);bottom:0;display:flex;gap:10px;margin-top:12px;padding:14px 0;position:-webkit-sticky;position:sticky;z-index:10}.app-error-banner{background:#fee2e2;background:var(--danger-light);border:1px solid #fca5a5;border-radius:14px;border-radius:var(--radius-md);box-shadow:0 8px 24px -4px #0f172a1a;box-shadow:var(--shadow-md);color:#991b1b;font-size:.88rem;font-weight:600;left:50%;max-width:90%;padding:12px 20px;position:fixed;top:20px;transform:translateX(-50%);z-index:400}.admin-fab{bottom:16px;opacity:.25;position:fixed;right:16px;transition:opacity .22s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition);z-index:50}.admin-fab:hover{opacity:.7}.admin-fab-btn{background:#0000;color:#94a3b8;color:var(--text-muted);font-size:.7rem;font-weight:600;padding:4px 10px;width:auto}.loading-text{font-size:.9rem;margin-top:16px}.empty-state,.loading-text{color:#94a3b8;color:var(--text-muted);text-align:center}.empty-state{padding:56px 24px}.empty-state-inline{padding:32px}.empty-state-icon{display:block;font-size:2.5rem;margin-bottom:12px}.error-box{align-items:center;animation:fadeUp .3s ease;background:#fee2e2;background:var(--danger-light);border:1px solid #fca5a5;border-radius:14px;border-radius:var(--radius-md);color:#991b1b;display:flex;font-size:.88rem;gap:10px;margin-bottom:20px;padding:14px 16px}.retry-btn{background:#fecaca;border-radius:10px;border-radius:var(--radius-sm);color:#991b1b;font-size:.78rem;margin-left:auto;padding:6px 12px;width:auto}.retry-btn:hover{background:#fca5a5;transform:none}.skeleton-container{display:flex;flex-direction:column;gap:12px}.skeleton-card{background:#fff;background:var(--surface);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);padding:20px}.skeleton-line{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%);background-size:200% 100%;border-radius:6px;height:12px;margin-bottom:10px}.skeleton-line.title{height:18px;margin-bottom:16px;width:40%}.skeleton-line.text{width:100%}.skeleton-line.text.short{width:60%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.table-responsive{-webkit-overflow-scrolling:touch;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-md);overflow-x:auto;width:100%}@media (min-width:480px){.feature-grid{grid-template-columns:1fr 1fr}.feature-grid .feature-card:last-child{grid-column:1/-1}}@media (min-width:640px){.feature-grid{grid-template-columns:repeat(3,1fr)}.feature-grid .feature-card:last-child{grid-column:auto}}@media (max-width:768px){.charts-grid{grid-template-columns:1fr}.participant-stats-row{grid-template-columns:1fr 1fr}.admin-question-grid,.participant-info-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}}@media (max-width:640px){.card{padding:24px 20px}.card,.landing-card{border-radius:20px;border-radius:var(--radius-lg)}.landing-card{overflow:hidden;padding:0}.container{padding:16px 12px 32px}.container.exam-step{padding-top:76px}.form-actions{flex-direction:column}.form-step-label{display:none}.landing-header{padding:22px 18px 24px}.landing-header-content{align-items:flex-start;flex-direction:column;text-align:left}.landing-logo-wrap{height:68px;width:68px}.landing-title{font-size:1.35rem}.landing-main{padding:20px 16px 18px}.landing-details-two{grid-template-columns:1fr}.landing-detail{gap:12px;padding:12px 14px}.landing-detail-icon{height:38px;width:38px}.delete-confirm{align-items:stretch;flex-direction:column}.delete-confirm-actions{width:100%}.delete-confirm-actions .admin-btn{flex:1 1;justify-content:center}.admin-main-card{padding:20px 16px!important}.results-toolbar{align-items:stretch;flex-direction:column}.export-btn,.results-toolbar select,.score-filter-input{width:100%}.lang-toggle{right:12px;top:12px}}@media (max-width:1024px){.admin-main-card{max-width:100%}}.admin-app-shell{background:#f1f5f9;height:100vh;overflow:hidden}.admin-login-page{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;width:100%}.admin-login-left{background:linear-gradient(160deg,#0f766e,#0d9488 40%,#0284c7);color:#fff;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:48px;position:relative}.admin-login-left:before{background:#ffffff0f;border-radius:50%;content:"";height:400px;position:absolute;right:-100px;top:-100px;width:400px}.admin-login-left:after{background:#ffffff0a;border-radius:50%;bottom:-80px;content:"";height:300px;left:-60px;position:absolute;width:300px}.admin-login-brand{position:relative;z-index:1}.admin-login-brand-logo{filter:brightness(0) invert(1);margin-bottom:24px;opacity:.95;width:180px}.admin-login-brand-title{font-size:2rem;font-weight:800;letter-spacing:-.03em;margin:0 0 12px}.admin-login-brand-desc{font-size:1rem;line-height:1.6;margin:0 0 40px;max-width:360px;opacity:.85}.admin-login-features{list-style:none;margin:0;padding:0;position:relative;z-index:1}.admin-login-features li{align-items:center;border-bottom:1px solid #ffffff26;display:flex;font-size:.95rem;font-weight:600;gap:12px;opacity:.9;padding:12px 0}.admin-login-features li span{font-size:1.2rem}.admin-login-right{align-items:center;background:#f8fafc;display:flex;justify-content:center;padding:40px 32px}.admin-login-card{background:#fff;border:1px solid #e2e8f0;border-radius:24px;box-shadow:0 20px 60px -12px #0f172a26;max-width:420px;padding:40px 36px;width:100%}.admin-login-card:before{display:none}.admin-login-card-header{margin-bottom:32px;text-align:center}.admin-login-icon{align-items:center;background:linear-gradient(135deg,#ccfbf1,#e0f2fe);border:1px solid #99f6e4;border-radius:16px;display:flex;font-size:1.6rem;height:56px;justify-content:center;margin:0 auto 16px;width:56px}.admin-login-card-header h2{font-size:1.5rem;margin:0 0 6px}.admin-login-card-header p{color:#94a3b8;color:var(--text-muted);font-size:.88rem;margin:0}.admin-login-form{display:flex;flex-direction:column;gap:4px}.admin-login-error{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#b91c1c;font-size:.85rem;font-weight:600;margin-bottom:12px;padding:10px 14px}.input-group{margin-bottom:16px}.input-group label{color:#475569;color:var(--text-secondary);font-size:.82rem;font-weight:700;margin-bottom:8px}.input-with-icon{align-items:center;display:flex;position:relative}.input-icon{font-size:.9rem;left:14px;pointer-events:none;position:absolute;z-index:1}.input-with-icon input{border:1.5px solid #e2e8f0;border-radius:12px;font-size:.95rem;height:48px;margin-bottom:0;padding-left:42px;padding-right:42px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.input-with-icon input:focus{border-color:#0f766e;border-color:var(--primary);box-shadow:0 0 0 3px #0f766e26}.password-toggle{background:none;border:none;color:#94a3b8;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:4px 8px;position:absolute;right:10px;width:auto}.password-toggle:hover{background:none;transform:none}.admin-login-submit{border-radius:12px;font-size:1rem;height:50px;margin-top:8px}.admin-layout{display:flex;height:100vh;overflow:hidden;width:100%}.admin-layout-detail{background:#f1f5f9}.admin-sidebar{background:linear-gradient(180deg,#0f172a,#1e293b);display:flex;flex-direction:column;flex-shrink:0;height:100vh;left:0;overflow:hidden;position:fixed;top:0;width:260px;z-index:200}.admin-sidebar-brand{align-items:center;border-bottom:1px solid #ffffff14;display:flex;gap:12px;padding:24px 20px}.admin-sidebar-logo{background:#fff;border-radius:10px;height:44px;object-fit:contain;padding:4px;width:44px}.admin-sidebar-title{color:#fff;font-size:.95rem;font-weight:800;margin:0}.admin-sidebar-sub{color:#94a3b8;font-size:.72rem;font-weight:600;margin:2px 0 0}.admin-sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:4px;padding:16px 12px}.admin-nav-item{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.9rem;font-weight:600;gap:12px;padding:12px 16px;position:relative;text-align:left;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.admin-nav-item:hover{background:#ffffff0f;color:#fff;transform:none}.admin-nav-item.active{background:linear-gradient(135deg,#0f766e4d,#0ea5e933);border:1px solid #ffffff1a;color:#fff}.admin-nav-icon{font-size:1.1rem}.admin-nav-indicator{background:#5eead4;border-radius:50%;height:6px;position:absolute;right:12px;width:6px}.admin-sidebar-footer{border-top:1px solid #ffffff14;padding:16px 12px}.admin-nav-item.logout:hover{background:#dc262626;color:#fca5a5}.admin-main{-webkit-overflow-scrolling:touch;background:#f1f5f9;display:flex;flex:1 1;flex-direction:column;height:100vh;margin-left:260px;min-width:0;overflow-x:hidden;overflow-y:auto}.admin-main-full{margin:0 auto;max-width:1000px;padding:32px 24px;width:100%}.admin-topbar{background:linear-gradient(180deg,#f1f5f9 85%,#f1f5f900);padding:28px 32px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:50}.admin-page-title{color:#0f172a;color:var(--text);font-size:1.6rem;font-weight:800;letter-spacing:-.02em;margin:0}.admin-page-subtitle{color:#94a3b8;color:var(--text-muted);font-size:.88rem;margin:4px 0 0}.admin-content{flex:1 1;padding:24px 32px 40px}.admin-alert{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;color:#991b1b;display:flex;font-size:.88rem;gap:10px;margin:16px 32px 0;padding:12px 16px}.admin-alert-btn{background:#fecaca;border-radius:8px;color:#991b1b;font-size:.8rem;font-weight:700;margin-left:auto;padding:6px 14px;width:auto}.admin-alert-btn:hover{background:#fca5a5;transform:none}.admin-dashboard{display:flex;flex-direction:column;gap:24px}.admin-stats-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(5,1fr)}.admin-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000000a;padding:20px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.admin-stat-card:hover{box-shadow:0 8px 24px #00000014;transform:translateY(-3px)}.admin-stat-top{margin-bottom:12px}.admin-stat-icon{align-items:center;border-radius:10px;display:inline-flex;font-size:1.2rem;height:40px;justify-content:center;width:40px}.admin-stat-teal .admin-stat-icon{background:#ccfbf1}.admin-stat-blue .admin-stat-icon{background:#e0f2fe}.admin-stat-green .admin-stat-icon{background:#d1fae5}.admin-stat-purple .admin-stat-icon{background:#ede9fe}.admin-stat-orange .admin-stat-icon{background:#ffedd5}.admin-stat-value{color:#0f172a;color:var(--text);font-size:1.8rem;font-weight:800;letter-spacing:-.03em;line-height:1;margin:0}.admin-stat-label{color:#94a3b8;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.05em;margin:6px 0 0;text-transform:uppercase}.admin-charts-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.admin-chart-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000000a;padding:24px}.admin-panel-header{border-bottom:1px solid #f1f5f9;margin-bottom:16px;padding-bottom:12px}.admin-panel-header h3{color:#475569;color:var(--text-secondary);font-size:.95rem;font-weight:700;margin:0}.admin-panel-wrap{display:flex;flex-direction:column;gap:16px}.admin-panel-toolbar{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:14px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:16px 20px}.admin-toolbar-filters{display:flex;flex:1 1;flex-wrap:wrap;gap:10px}.admin-search-wrap{flex:1 1;min-width:200px;position:relative}.admin-search-icon{font-size:.85rem;left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.admin-search-input{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.88rem;margin:0;padding:10px 14px 10px 36px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.admin-search-input:focus{background:#fff;border-color:#0f766e;border-color:var(--primary);box-shadow:0 0 0 3px #0f766e1a;outline:none}.admin-filter-input,.admin-select{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.88rem;margin:0;padding:10px 14px;width:auto}.admin-filter-input{width:90px}.admin-toolbar-actions{display:flex;flex-shrink:0;gap:8px}.admin-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.82rem;font-weight:700;gap:6px;padding:10px 16px;transition:.22s cubic-bezier(.4,0,.2,1);transition:var(--transition);white-space:nowrap;width:auto}.admin-btn-success{background:#059669;color:#fff}.admin-btn-success:hover{background:#047857;transform:translateY(-1px)}.admin-btn-purple{background:#7c3aed;color:#fff}.admin-btn-purple:hover{background:#6d28d9;transform:translateY(-1px)}.admin-btn-ghost{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;color:var(--text-secondary)}.admin-btn-ghost:hover:not(:disabled){background:#e2e8f0;transform:none}.admin-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.admin-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 3px #0000000a;overflow:hidden}.admin-table-wrap .admin-table{min-width:700px}.admin-table-wrap .admin-table th{background:#f8fafc;padding:14px 16px}.admin-table-wrap .admin-table td{padding:14px 16px}.admin-table-wrap .table-action-btn{background:#0f766e;background:var(--primary);border-radius:8px;color:#fff;font-size:.78rem;font-weight:700;padding:6px 14px;width:auto}.admin-pagination{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:14px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:14px 20px}.admin-page-num{color:#475569;color:var(--text-secondary);font-size:.85rem;font-weight:700;min-width:50px;text-align:center}.admin-empty{background:#fff;border:1px dashed #cbd5e1;border-radius:16px;padding:64px 32px;text-align:center}.admin-empty-sm{background:#f8fafc;border:none;border-radius:0;border-top:1px solid #f1f5f9;padding:32px}.admin-empty-icon{font-size:3rem;margin-bottom:16px}.admin-empty h3{color:#0f172a;color:var(--text);margin:0 0 8px}.admin-empty p{color:#94a3b8;color:var(--text-muted);font-size:.9rem;margin:0}.admin-skeleton-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr)}.admin-skeleton-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px}.admin-questions.mq-page{background:#fff;border:1px solid #e2e8f0;border-radius:16px;max-height:calc(100vh - 200px);overflow:hidden;padding:20px}.admin-questions.mq-page .mq-panel{max-height:calc(100vh - 280px);overflow-y:auto;padding-right:4px}.admin-questions .questions-toolbar{border-bottom:1px solid #f1f5f9;margin-bottom:16px;padding-bottom:16px}.admin-questions .admin-actions-sticky{background:#fff;padding:16px 20px}.admin-questions .admin-actions-sticky,.admin-questions-footer{border-radius:0 0 16px 16px;border-top:1px solid #e2e8f0;margin:0 -20px -20px}.admin-questions-footer{align-items:center;background:linear-gradient(0deg,#fff,#f8fafc);bottom:0;box-shadow:0 -8px 24px #0f172a0f;display:flex;gap:16px;justify-content:space-between;padding:14px 20px;position:-webkit-sticky;position:sticky;z-index:10}.admin-questions-footer-hint{color:#94a3b8;color:var(--text-muted);font-size:.82rem;font-weight:700;margin:0;white-space:nowrap}.admin-questions-footer-actions{align-items:center;display:flex;flex-shrink:0;gap:10px}.admin-btn-primary{align-items:center;background:linear-gradient(135deg,#0f766e,#0d9488);border:none;border-radius:10px;box-shadow:0 4px 12px #0f766e4d;color:#fff;display:inline-flex;font-size:.85rem;font-weight:700;gap:6px;padding:11px 20px;white-space:nowrap}.admin-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0d5f58,#0f766e);transform:translateY(-1px)}.admin-btn-primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.admin-btn-outline{align-items:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;color:#475569;color:var(--text-secondary);display:inline-flex;font-size:.85rem;font-weight:700;gap:6px;padding:11px 18px;white-space:nowrap}.admin-btn-outline:hover{background:#f0fdfa;border-color:#99f6e4;color:#0f766e;color:var(--primary);transform:none}.admin-btn-icon{font-size:.9rem;line-height:1}@media (max-width:640px){.admin-questions-footer{align-items:stretch;flex-direction:column;gap:12px}.admin-questions-footer-hint{text-align:center}.admin-questions-footer-actions{flex-direction:column;width:100%}.admin-questions-footer-actions .admin-btn{justify-content:center;width:100%}}@media (max-width:1100px){.admin-stats-row{grid-template-columns:repeat(3,1fr)}.admin-charts-row{grid-template-columns:1fr}}.admin-mobile-tabs{display:none;gap:6px;overflow-x:auto;padding:12px 16px 0}.admin-mobile-tab{background:#fff;border:1px solid #e2e8f0;border-radius:20px;color:#94a3b8;color:var(--text-muted);cursor:pointer;flex-shrink:0;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-family:var(--font);font-size:.78rem;font-weight:700;padding:8px 14px;white-space:nowrap;width:auto}.admin-mobile-tab.active{background:#0f766e;background:var(--primary);border-color:#0f766e;border-color:var(--primary);color:#fff}.admin-mobile-tab:hover{transform:none}@media (max-width:900px){.admin-mobile-tabs{display:flex}.admin-login-page{grid-template-columns:1fr}.admin-login-left{min-height:auto;padding:32px 24px}.admin-login-brand-logo{width:140px}.admin-login-features,.admin-sidebar{display:none}.admin-layout{flex-direction:column}.admin-main{margin-left:0;width:100%}.admin-topbar{padding:20px 16px 12px}.admin-content{padding:16px}.admin-skeleton-grid,.admin-stats-row{grid-template-columns:1fr 1fr}.admin-panel-toolbar{flex-direction:column}.admin-toolbar-actions,.admin-toolbar-filters{width:100%}.admin-toolbar-actions .admin-btn{flex:1 1;justify-content:center}}@media (max-width:640px){.admin-login-card{padding:28px 24px}.admin-skeleton-grid,.admin-stats-row{grid-template-columns:1fr}}.add-question-modal{max-height:90vh;max-width:720px;overflow-y:auto;padding:0;text-align:left;width:100%}.add-question-modal-header{align-items:flex-start;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;gap:16px;justify-content:space-between;padding:24px 28px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.add-question-modal-header h2{font-size:1.25rem;margin:0 0 4px}.add-question-modal-header p{color:#94a3b8;color:var(--text-muted);font-size:.85rem;line-height:1.5;margin:0}.modal-close-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#94a3b8;color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;font-size:1rem;height:36px;justify-content:center;padding:0;width:36px}.modal-close-btn:hover{background:#fee2e2;border-color:#fecaca;color:#dc2626;transform:none}.add-question-form{padding:20px 28px 28px}.add-question-form .question-type-row{margin-bottom:20px}.add-question-form .question-type-row select{margin-bottom:0}.add-question-translate{justify-content:center;margin-bottom:20px;margin-top:8px;width:100%}.add-question-modal-actions{border-top:1px solid #f1f5f9;display:flex;gap:12px;justify-content:flex-end;padding-top:16px}.add-question-modal-actions .admin-btn{justify-content:center;min-width:130px;width:auto}@media (max-width:640px){.add-question-modal{align-self:flex-end;border-radius:16px 16px 0 0;max-height:95vh}.add-question-form,.add-question-modal-header{padding-left:20px;padding-right:20px}.add-question-modal-actions{flex-direction:column-reverse}.add-question-modal-actions .admin-btn{width:100%}}
/*# sourceMappingURL=main.a7030e81.css.map*/