:root{--bg-main:#0b0f19;--bg-surface:#111827;--bg-surface-elevated:#1f2937;--bg-surface-hover:#283548;--text-primary:#f9fafb;--text-secondary:#9ca3af;--text-muted:#6b7280;--border-subtle:#ffffff14;--border-hover:#ffffff29;--border-focus:#6366f1;--primary:#6366f1;--primary-light:#818cf8;--primary-dark:#4f46e5;--primary-glow:#6366f140;--accent-cyan:#06b6d4;--accent-cyan-glow:#06b6d440;--accent-pink:#ec4899;--accent-purple:#8b5cf6;--success:#10b981;--success-bg:#10b98126;--warning:#f59e0b;--warning-bg:#f59e0b26;--danger:#ef4444;--danger-bg:#ef444426;--glass-bg:#111827bf;--glass-border:#ffffff14;--glass-blur:blur(16px);--shadow-sm:0 2px 4px #0003;--shadow-md:0 4px 12px #0000004d;--shadow-lg:0 10px 25px #00000073;--shadow-glow:0 0 25px var(--primary-glow);--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-pill:9999px;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-bounce:.35s cubic-bezier(.34, 1.56, .64, 1);--font-main:"Be Vietnam Pro", "Inter", "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", monospace}[data-theme=light]{--bg-main:#f8fafc;--bg-surface:#fff;--bg-surface-elevated:#f1f5f9;--bg-surface-hover:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--border-subtle:#e2e8f0;--border-hover:#cbd5e1;--border-focus:#4f46e5;--primary:#4f46e5;--primary-light:#4338ca;--primary-dark:#3730a3;--primary-glow:#4f46e529;--glass-bg:#ffffffeb;--glass-border:#00000014;--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 4px 14px #0000000f;--shadow-lg:0 12px 30px #00000014}[data-theme=light] body:before{opacity:.45}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-main);min-height:100vh;color:var(--text-primary);font-family:var(--font-main);letter-spacing:.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.65;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-main);letter-spacing:.005em;line-height:1.35}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#6366f11f 0%,#06b6d40f 40%,#0000 70%);width:800px;height:450px;position:fixed;top:-150px;left:50%;transform:translate(-50%)}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--bg-surface-elevated);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.app-container{z-index:1;flex-direction:column;min-height:100vh;display:flex;position:relative}.main-content{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:2rem 1.5rem 4rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(.98)}}.animate-fade-in{animation:.3s cubic-bezier(.16,1,.3,1) forwards fadeIn}.home-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.85rem;display:flex}.dataset-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1.5rem;display:grid}.dataset-card{flex-direction:column;min-height:390px;padding:1.5rem;display:flex;overflow:hidden}.dataset-card-content{flex-direction:column;flex:1;display:flex}.dataset-card-header{align-items:flex-start;gap:1rem;min-height:5.5rem;display:flex}.dataset-card-icon{border-radius:14px;flex:0 0 3.2rem;place-items:center;width:3.2rem;height:3.2rem;display:grid}.dataset-card-heading{min-width:0;padding-top:.1rem}.dataset-card-title{color:var(--text-primary);overflow-wrap:anywhere;font-size:1.15rem;font-weight:750;line-height:1.3}.dataset-card-meta{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-top:.35rem;display:flex}.dataset-card-subtitle{color:var(--text-secondary);font-size:.82rem;line-height:1.45}.dataset-card-author{border-radius:var(--radius-sm);white-space:nowrap;text-overflow:ellipsis;border:1px solid #0000;align-items:center;gap:.25rem;max-width:100%;padding:.12rem .45rem;font-size:.72rem;font-weight:650;line-height:1.35;display:inline-flex;overflow:hidden}.dataset-card-author span{text-overflow:ellipsis;overflow:hidden}.dataset-card-description{min-height:4.35rem;color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:1rem 0 1.15rem;font-size:.9rem;line-height:1.55;display:-webkit-box;overflow:hidden}.dataset-card-badges{flex-wrap:wrap;align-content:flex-start;gap:.5rem;display:flex}.dataset-card-footer{border-top:1px solid var(--border-subtle);margin-top:1.35rem;padding-top:.75rem}.dataset-card-footer .btn{min-height:42px}.dataset-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.history-page{flex-direction:column;gap:1.5rem;max-width:960px;margin:0 auto;display:flex}.history-header{border-bottom:1px solid var(--border-subtle);padding-bottom:1rem}.history-title{align-items:center;gap:.65rem;font-size:1.85rem;font-weight:800;display:flex}.history-subtitle{color:var(--text-secondary);margin-top:.25rem}.history-list{flex-direction:column;gap:.85rem;display:flex}.history-card{cursor:pointer;justify-content:space-between;align-items:center;gap:1.25rem;padding:1.1rem 1.25rem;display:flex}.history-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.history-card-main{align-items:center;gap:1rem;min-width:0;display:flex}.history-score{width:3.75rem;height:3.75rem;font-family:var(--font-mono);border-radius:14px;flex-direction:column;flex:0 0 3.75rem;justify-content:center;align-items:center;font-weight:800;display:flex}.history-score-value{letter-spacing:-.035em;white-space:nowrap;max-width:calc(100% - .5rem);font-size:1.05rem;line-height:1}.history-score-label{opacity:.75;text-transform:uppercase;margin-top:.2rem;font-size:.62rem}.history-card-content{min-width:0}.history-card-heading,.history-card-meta{flex-wrap:wrap;align-items:center;display:flex}.history-card-heading{gap:.45rem;margin-bottom:.35rem}.history-card-heading h3{text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-size:1.05rem;font-weight:750;overflow:hidden}.history-card-meta{color:var(--text-secondary);gap:.4rem;font-size:.82rem}.history-card-meta span+span:before{content:"•";color:var(--text-muted);margin-right:.4rem}.history-card-meta strong{color:var(--text-primary)}.history-card-action{flex-shrink:0}.dataset-list{flex-direction:column;gap:1.25rem;display:flex}.dataset-card-horizontal{border-radius:var(--radius-lg);background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);transition:all var(--transition-normal);border-left-width:6px;justify-content:space-between;align-items:center;gap:1.75rem;padding:1.5rem 2rem;display:flex}.dataset-card-horizontal:hover{border-color:var(--border-hover);box-shadow:var(--shadow-lg), 0 0 25px var(--primary-glow);transform:translate(4px)}.dataset-h-left{flex:1;align-items:center;gap:1.5rem;min-width:0;display:flex}.dataset-h-icon{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:3.6rem;height:3.6rem;display:flex}.dataset-h-body{flex-direction:column;flex:1;gap:.35rem;min-width:0;display:flex}.dataset-h-title-row{flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}.dataset-h-title{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:800;line-height:1.3}.dataset-h-subtitle{color:var(--text-muted);font-size:.85rem;font-weight:500}.dataset-h-desc{color:var(--text-secondary);margin:.15rem 0 .35rem;font-size:.925rem;line-height:1.55}.dataset-h-badges{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.dataset-h-right{flex-shrink:0;align-items:center;display:flex}@media (width<=860px){.dataset-card-horizontal{flex-direction:column;align-items:stretch;gap:1.25rem;padding:1.35rem 1.25rem}.dataset-h-left{align-items:flex-start}.dataset-h-right .btn{justify-content:center;width:100%}}@media (width<=768px){.main-content{padding:1.25rem 1rem 3.5rem}.home-header{flex-direction:column;align-items:flex-start}.dataset-grid{grid-template-columns:1fr;gap:1.25rem}}@media (width<=540px){.dataset-card,.dataset-card-header{min-height:0}.history-card{align-items:flex-start}.history-card-action .btn{color:#0000;gap:0;width:2.5rem;padding-inline:.7rem;overflow:hidden}.history-card-action .btn svg{color:var(--text-primary);flex-shrink:0}.dataset-h-left{flex-direction:column;gap:.85rem}}.btn{border-radius:var(--radius-md);transition:all var(--transition-normal);-webkit-user-select:none;user-select:none;white-space:nowrap;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.925rem;font-weight:600;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;box-shadow:0 4px 14px var(--primary-glow)}.btn-primary:hover{box-shadow:0 6px 20px var(--primary-glow);filter:brightness(1.1);transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-surface-elevated);color:var(--text-primary);border:1px solid var(--border-subtle)}.btn-secondary:hover{background:var(--bg-surface-hover);border-color:var(--border-hover);transform:translateY(-1px)}.btn-outline{color:var(--text-primary);border:1px solid var(--border-subtle);background:0 0}.btn-outline:hover{border-color:var(--primary);color:var(--primary-light);background:#6366f10d}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626;box-shadow:0 4px 12px #ef44444d}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.btn-sm{padding:.4rem .8rem;font-size:.825rem}.btn-lg{border-radius:var(--radius-lg);padding:.85rem 1.75rem;font-size:1.05rem}.card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-normal);padding:1.5rem}.card-glass{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)}.card:hover{border-color:var(--border-hover)}.header-nav{z-index:50;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border-subtle);padding:.85rem 1.5rem;position:sticky;top:0}.header-container{justify-content:space-between;align-items:center;max-width:1280px;margin:0 auto;display:flex}.logo-brand{letter-spacing:normal;color:var(--text-primary);align-items:center;gap:.75rem;font-size:1.25rem;font-weight:800;display:flex}.logo-badge{background:linear-gradient(135deg, var(--primary), var(--accent-cyan));color:#fff;border-radius:var(--radius-sm);text-transform:uppercase;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.nav-links{align-items:center;gap:.75rem;display:flex}.nav-link{color:var(--text-secondary);transition:color var(--transition-fast);border-radius:var(--radius-sm);align-items:center;gap:.4rem;padding:.45rem .65rem;font-size:.925rem;font-weight:500;display:flex}.nav-link:hover,.nav-link.active{color:var(--text-primary);background:var(--bg-surface-elevated)}.user-profile-badge{background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);align-items:center;gap:.6rem;padding:.35rem .75rem;font-size:.875rem;font-weight:600;display:flex}@media (width<=860px){.header-nav{padding:.65rem 1rem}.header-container{gap:.5rem}.nav-links{gap:.25rem}.nav-link span{display:none}.nav-link{padding:.45rem}.user-profile-badge span:not(.badge){text-overflow:ellipsis;white-space:nowrap;max-width:90px;overflow:hidden}}@media (width<=540px){.logo-brand span:not(.logo-badge){font-size:1.05rem}.user-profile-badge span:not(.badge){display:none}.user-profile-badge{padding:.35rem}}@media (width<=420px){.header-nav{padding:.5rem .65rem}.header-container{gap:.25rem}.logo-brand span:not(.logo-badge){display:none}}.form-group{flex-direction:column;gap:.4rem;margin-bottom:1.25rem;display:flex}.form-label{color:var(--text-secondary);font-size:.875rem;font-weight:600}.form-input,.form-select,.form-textarea{background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:.75rem 1rem;font-size:.95rem}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--primary-glow)}.form-input::placeholder{color:var(--text-muted)}.password-input-wrap{position:relative}.password-input-wrap .form-input{padding-right:3rem}.password-toggle{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--text-muted);transition:color var(--transition-fast), background var(--transition-fast);place-items:center;display:grid;position:absolute;top:50%;right:.65rem;transform:translateY(-50%)}.password-toggle:hover,.password-toggle:focus-visible{background:var(--bg-surface-hover);color:var(--text-primary);outline:none}.form-input[aria-invalid=true]{border-color:var(--danger)}.form-error{color:var(--danger);margin-top:.2rem;font-size:.8rem}.badge{border-radius:var(--radius-pill);align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-primary{color:var(--primary-light);background:#6366f126;border:1px solid #6366f14d}.badge-success{background:var(--success-bg);color:var(--success);border:1px solid #10b9814d}.badge-warning{background:var(--warning-bg);color:var(--warning);border:1px solid #f59e0b4d}.badge-danger{background:var(--danger-bg);color:var(--danger);border:1px solid #ef44444d}.modal-overlay{z-index:1000;will-change:opacity;background:#0f172ab3;justify-content:center;align-items:center;padding:clamp(1rem,4vh,2.5rem) 1rem;animation:.14s ease-out both modalBackdropIn;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-content{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);will-change:transform, opacity;flex-direction:column;width:100%;max-width:540px;max-height:calc(100dvh - clamp(2rem,8vh,5rem));animation:.18s cubic-bezier(.2,.8,.2,1) both modalDialogIn;display:flex;overflow:hidden;transform:translateZ(0);box-shadow:0 24px 70px #0f172a47}.modal-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.modal-title{color:var(--text-primary);margin:0;font-size:1.2rem;font-weight:800;line-height:1.35}.modal-close{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface-elevated);width:2.25rem;height:2.25rem;color:var(--text-secondary);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:all .16s;display:inline-flex}.modal-close:hover{border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-1px)}.modal-body{overscroll-behavior:contain;min-height:0;padding:1.5rem;overflow-y:auto}@keyframes modalBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes modalDialogIn{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translate(0,0)scale(1)}}@media (prefers-reduced-motion:reduce){.modal-overlay,.modal-content{animation-duration:.01ms}}.modal-mode-grid{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.5rem;display:grid}@media (width<=540px){.modal-overlay{align-items:flex-end;padding:.75rem}.modal-content{border-radius:var(--radius-lg);max-height:calc(100dvh - 1.5rem)}.modal-header{padding:1rem 1.1rem}.modal-body{padding:1.1rem}.modal-mode-grid{grid-template-columns:1fr}}.spinner{border:2px solid var(--border-subtle);border-top-color:var(--primary);border-radius:50%;width:1.5rem;height:1.5rem;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.quiz-layout{grid-template-columns:1fr 340px;align-items:start;gap:2rem;display:grid}@media (width<=1024px){.quiz-layout{grid-template-columns:1fr}}.quiz-top-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.quiz-title-area{flex-direction:column;gap:.25rem;display:flex}.quiz-title-area h2{font-size:1.35rem;font-weight:700}.timer-badge{background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);font-family:var(--font-mono);color:var(--text-primary);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:1.15rem;font-weight:700;display:flex}.timer-badge.warning{border-color:var(--warning);color:var(--warning);background:var(--warning-bg);animation:1.5s infinite pulse}.timer-badge.danger{border-color:var(--danger);color:var(--danger);background:var(--danger-bg);animation:.75s infinite pulse}.quiz-progress-wrap{flex-direction:column;gap:.5rem;margin-bottom:2rem;display:flex}.progress-header{color:var(--text-secondary);justify-content:space-between;font-size:.85rem;font-weight:600;display:flex}.progress-track{background:var(--bg-surface-elevated);border-radius:var(--radius-pill);width:100%;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--primary), var(--accent-cyan));border-radius:var(--radius-pill);height:100%;transition:width .3s cubic-bezier(.4,0,.2,1)}.question-card{flex-direction:column;gap:1.5rem;display:flex}.question-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.question-badges{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.question-type-badge{border-radius:var(--radius-pill);border:1px solid;align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:.78rem;font-weight:700;display:inline-flex}.question-type-badge.single{color:var(--primary-light);background:#6366f11a;border-color:#6366f159}.question-type-badge.multiple{color:var(--accent-cyan);background:#06b6d41a;border-color:#06b6d459}.question-type-guide{border-radius:var(--radius-md);border:1px solid;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;display:flex}.question-type-guide>svg{flex-shrink:0;margin-top:.1rem}.question-type-guide div{flex-direction:column;gap:.15rem;display:flex}.question-type-guide strong{font-size:.9rem}.question-type-guide span{color:var(--text-secondary);font-size:.8rem;line-height:1.4}.question-type-guide.single{color:var(--primary-light);background:#6366f112;border-color:#6366f140}.question-type-guide.multiple{color:var(--accent-cyan);background:#06b6d412;border-color:#06b6d44d}.question-text{color:var(--text-primary);font-size:1.2rem;font-weight:600;line-height:1.6}.question-images{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1rem 0 1.25rem;display:grid}.question-image-frame{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:#fff;justify-content:center;margin:0;padding:.75rem;display:flex;overflow:hidden}.question-image-frame img{object-fit:contain;max-width:100%;height:auto;max-height:780px;display:block}.code-block-container{border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#0f172a;margin:.5rem 0;overflow:hidden}.code-header{font-family:var(--font-mono);color:#94a3b8;text-transform:uppercase;background:#1e293b;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:.5rem 1rem;font-size:.75rem;display:flex}.code-copy-btn{color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:#ffffff0d;align-items:center;gap:.35rem;padding:.2rem .5rem;font-size:.75rem;display:flex}.code-copy-btn:hover{color:var(--text-primary);background:#ffffff26}.code-content{overflow-x:auto;font-family:var(--font-mono)!important;background:0 0!important;margin:0!important;padding:1.25rem!important;font-size:.9rem!important;line-height:1.6!important}.options-list{flex-direction:column;gap:.85rem;display:flex}.option-item{background:var(--bg-surface-elevated);border-radius:var(--radius-lg);cursor:pointer;width:100%;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;color:inherit;font:inherit;text-align:left;border:2px solid #0000;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;display:flex}.option-item:disabled{cursor:default}.option-item:hover{background:var(--bg-surface-hover);border-color:var(--border-hover);transform:translate(3px)}.option-item.selected{border-color:var(--primary);box-shadow:0 0 15px var(--primary-glow);background:#6366f11f}.option-item.option-multiple.selected{border-color:var(--accent-cyan);box-shadow:0 0 15px var(--accent-cyan-glow);background:#06b6d41c}.option-item.correct{background:var(--success-bg)!important;border-color:var(--success)!important}.option-item.wrong{background:var(--danger-bg)!important;border-color:var(--danger)!important}.option-key-badge{border-radius:var(--radius-md);background:var(--bg-main);border:1px solid var(--border-subtle);width:2rem;height:2rem;color:var(--text-secondary);transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.option-item.selected .option-key-badge{background:var(--primary);color:#fff;border-color:var(--primary)}.option-item.option-multiple.selected .option-key-badge{background:var(--accent-cyan);color:#fff;border-color:var(--accent-cyan)}.option-item.correct .option-key-badge{background:var(--success);color:#fff;border-color:var(--success)}.option-item.wrong .option-key-badge{background:var(--danger);color:#fff;border-color:var(--danger)}.option-content{color:var(--text-primary);white-space:pre-line;flex:1;font-size:1rem;line-height:1.5}.option-selection-control{border:2px solid var(--border-hover);color:#fff;width:1.35rem;height:1.35rem;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;margin-top:.3rem;display:inline-flex}.option-single .option-selection-control{border-radius:50%}.option-multiple .option-selection-control{border-radius:.3rem}.option-single.selected .option-selection-control{background:var(--primary);border-color:var(--primary)}.option-multiple.selected .option-selection-control{background:var(--accent-cyan);border-color:var(--accent-cyan)}.option-item.correct .option-selection-control{background:var(--success);border-color:var(--success)}.option-item.wrong .option-selection-control{background:var(--danger);border-color:var(--danger)}.question-footer{border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1.25rem;display:flex}.nav-buttons-group{align-items:center;gap:.75rem;display:flex}.explanation-box{border-radius:var(--radius-lg);background:#6366f114;border:1px solid #6366f140;margin-top:1rem;padding:1.25rem}.explanation-title{color:var(--primary-light);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.95rem;font-weight:700;display:flex}.explanation-body{color:var(--text-secondary);font-size:.95rem;line-height:1.6}.navigator-card{flex-direction:column;gap:1.25rem;display:flex;position:sticky;top:5rem}.navigator-header{justify-content:space-between;align-items:center;display:flex}.navigator-header h3{font-size:1.05rem;font-weight:700}.navigator-filter-tabs{background:var(--bg-surface-elevated);border-radius:var(--radius-md);gap:.35rem;padding:.25rem;display:flex}.navigator-tab{color:var(--text-secondary);border-radius:var(--radius-sm);text-align:center;transition:all var(--transition-fast);flex:1;padding:.35rem .5rem;font-size:.75rem;font-weight:600}.navigator-tab.active{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm)}.navigator-grid{grid-template-columns:repeat(5,1fr);gap:.5rem;max-height:380px;padding-right:.25rem;display:grid;overflow-y:auto}.nav-cell{aspect-ratio:1;border-radius:var(--radius-md);background:var(--bg-surface-elevated);color:var(--text-secondary);border:1px solid var(--border-subtle);transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex;position:relative}.nav-cell:hover{background:var(--bg-surface-hover);color:var(--text-primary);border-color:var(--border-hover)}.nav-cell.current{border-color:var(--accent-cyan);box-shadow:0 0 10px var(--accent-cyan-glow);color:var(--accent-cyan)}.nav-cell.answered{border-color:var(--primary);color:var(--primary-light);background:#6366f133}.nav-cell.flagged:after{content:"";background:var(--warning);width:6px;height:6px;box-shadow:0 0 4px var(--warning);border-radius:50%;position:absolute;top:4px;right:4px}@media (width<=640px){.quiz-top-bar{flex-direction:column;align-items:flex-start;gap:.75rem}.question-card{padding:1.25rem}.question-text{font-size:1.1rem;line-height:1.6}.option-item{gap:.75rem;padding:.85rem 1rem}.question-type-guide{padding:.75rem .85rem}.question-footer{flex-direction:column-reverse;gap:.75rem}.question-footer>div{justify-content:space-between;width:100%}.nav-buttons-group,.nav-buttons-group .btn{width:100%}.navigator-card{position:static}.navigator-grid{grid-template-columns:repeat(8,1fr)}}.result-container{flex-direction:column;gap:2.5rem;max-width:960px;margin:0 auto;display:flex}.result-hero-card{background:radial-gradient(circle at 25% 0%, #6366f129, transparent 45%), var(--bg-surface);border-radius:var(--radius-xl);border:1px solid var(--border-subtle);flex-direction:column;gap:1.25rem;padding:2rem;display:flex}.result-summary{justify-content:center;align-items:center;gap:2rem;display:flex}.result-summary-copy{text-align:left;flex-direction:column;align-items:flex-start;max-width:430px;display:flex}.result-summary-copy h1{margin-top:.85rem;font-size:1.7rem;font-weight:800}.result-summary-description{color:var(--text-secondary);margin-top:.25rem;font-size:.95rem}.score-gauge-wrap{flex:0 0 150px;width:150px;height:150px;position:relative}.gauge-svg{width:100%;height:100%;transform:rotate(-90deg)}.gauge-bg-circle{fill:none;stroke:var(--bg-surface-elevated);stroke-width:12px}.gauge-fill-circle{fill:none;stroke:var(--primary);stroke-width:12px;stroke-linecap:round;transition:stroke-dashoffset 1.2s cubic-bezier(.16,1,.3,1)}.score-number-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.score-big{max-width:calc(100% - 2.75rem);font-size:2rem;font-weight:800;line-height:1;font-family:var(--font-mono);letter-spacing:-.04em;white-space:nowrap;color:var(--text-primary)}.score-max{color:var(--text-muted);font-size:.95rem;font-weight:600}.grade-badge-hero{border-radius:var(--radius-pill);align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:1rem;font-weight:700;display:inline-flex}.result-stats-grid{grid-template-columns:repeat(4,1fr);gap:1rem;width:100%;display:grid}@media (width<=768px){.result-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.result-hero-card{gap:1.25rem;padding:2rem 1.25rem}.result-actions-bar{flex-direction:column;width:100%}.result-actions-bar .btn{width:100%}.result-summary{flex-direction:column;gap:1rem}.result-summary-copy{text-align:center;align-items:center}.review-header{flex-direction:column;align-items:flex-start;gap:.75rem}.review-filter-tabs{width:100%}.review-filter-tabs .btn{flex:1}}@media (width<=480px){.score-gauge-wrap{width:150px;height:150px}.score-big{font-size:1.9rem}.grade-badge-hero{padding:.35rem .85rem;font-size:.925rem}.stat-box{padding:.85rem .5rem}.stat-box-val{font-size:1.3rem}.result-stats-grid{gap:.5rem}}.stat-box{background:var(--bg-surface-elevated);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);flex-direction:column;align-items:center;gap:.35rem;padding:1rem;display:flex}.stat-box-val{font-size:1.6rem;font-weight:800;font-family:var(--font-mono)}.stat-box-label{color:var(--text-secondary);font-size:.825rem;font-weight:600}.result-actions-bar{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.review-section{flex-direction:column;gap:1.5rem;display:flex}.review-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.review-filter-tabs{gap:.5rem;display:flex}.review-question-card{border-left:4px solid var(--border-subtle);transition:all var(--transition-fast);flex-direction:column;gap:1.25rem;display:flex}.review-question-card.correct{border-left-color:var(--success)}.review-question-card.wrong{border-left-color:var(--danger)}.review-card-top{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.review-opt-list{flex-direction:column;gap:.6rem;display:flex}.review-opt-item{border-radius:var(--radius-md);background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);align-items:flex-start;gap:.75rem;padding:.75rem 1rem;font-size:.95rem;display:flex}.review-opt-item.user-picked-wrong{background:var(--danger-bg);border-color:var(--danger)}.review-opt-item.correct-answer{background:var(--success-bg);border-color:var(--success)}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.admin-tabs{border-bottom:1px solid var(--border-subtle);gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.admin-tab-btn{color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-fast);align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.95rem;font-weight:600;display:flex}.admin-tab-btn.active{background:var(--bg-surface-elevated);color:var(--text-primary);border:1px solid var(--border-subtle)}.admin-kpi-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:2rem;display:grid}@media (width<=900px){.admin-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.admin-kpi-grid{grid-template-columns:1fr;gap:.85rem}}.kpi-card{align-items:center;gap:1.25rem;padding:1.5rem;display:flex}.kpi-icon-wrap{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:3.25rem;height:3.25rem;display:flex}.kpi-info h4{color:var(--text-secondary);margin-bottom:.25rem;font-size:.85rem;font-weight:600}.kpi-val{font-size:1.75rem;font-weight:800;font-family:var(--font-mono)}.table-responsive{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-surface);width:100%;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;min-width:650px;font-size:.925rem}.data-table th{background:var(--bg-surface-elevated);color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);white-space:nowrap;padding:1rem 1.25rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:middle;padding:1rem 1.25rem}.data-table tr:hover td{background:var(--bg-surface-hover)}.admin-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.search-input-wrap{flex:1;min-width:280px;position:relative}.search-input-wrap svg{color:var(--text-muted);position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.search-input-wrap input{padding-left:2.5rem}.pagination-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}@media (width<=640px){.admin-header{flex-direction:column;align-items:flex-start;gap:.75rem}.admin-header>div:last-child{flex-wrap:wrap;width:100%}.admin-toolbar{flex-direction:column;align-items:stretch}.search-input-wrap{min-width:unset;width:100%}.pagination-bar{text-align:center;flex-direction:column;justify-content:center;align-items:stretch}.pagination-bar>div{justify-content:center}}
