:root{--primary:#3b5998;--primary-hover:#2d4373;--secondary:#27ae60;--secondary-hover:#219150;--danger:#b33939;--bg-color:#0a0f1a;--text-main:#f1f5f9;--text-muted:#94a3b8;--glass-bg:#0f172acc;--glass-border:#ffffff14;--accent-red:#c0392b;--accent-blue:#2980b9}*{box-sizing:border-box;margin:0;padding:0}html{width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}body{background-color:var(--bg-color);color:var(--text-main);overscroll-behavior:none;justify-content:center;align-items:center;width:100%;height:100%;font-family:Outfit,sans-serif;display:flex;position:fixed;top:0;left:0;overflow:hidden}.blob{filter:blur(80px);z-index:-1;border-radius:50%;animation:10s ease-in-out infinite alternate float;position:absolute}.shape-1{background:#3b599833;width:400px;height:400px;top:-10%;left:-5%}.shape-2{background:#c13e3126;width:300px;height:300px;animation-delay:-5s;bottom:-10%;right:-5%}@keyframes float{0%{transform:translate(0)scale(1)}to{transform:translate(30px,50px)scale(1.1)}}.glass-container{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:24px;flex-direction:column;width:90%;max-width:650px;max-height:90vh;padding:40px;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}@media (width<=768px){.glass-container{border:none;border-radius:0;width:100%;height:100dvh;padding:20px}}.screen{opacity:0;flex-direction:column;flex:1;min-height:0;transition:opacity .4s,transform .4s;display:none;overflow:hidden;transform:translateY(20px)}.screen.active{opacity:1;display:flex;transform:translateY(0)}h1{background:linear-gradient(to right, #60a5fa, var(--text-main));-webkit-text-fill-color:transparent;text-align:center;-webkit-background-clip:text;background-clip:text;margin-bottom:10px;font-size:2.5rem;font-weight:800}h2{margin-bottom:24px;font-size:1.5rem;font-weight:600;line-height:1.4}p.subtitle{color:var(--text-muted);text-align:center;margin-bottom:30px;font-size:1.1rem}.header-seal{text-align:center;letter-spacing:4px;color:var(--text-muted);text-transform:uppercase;margin-bottom:10px;font-size:.9rem;font-weight:800}.year-badge{color:var(--text-muted);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;padding:2px 8px;font-size:.75rem;display:inline-block}.rules{background:#0003;border-radius:12px;margin-bottom:30px;padding:20px}.rules p{margin:10px 0;font-size:1.05rem}button{cursor:pointer;text-align:center;border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;width:100%;height:56px;font-family:inherit;font-size:1.1rem;font-weight:600;transition:all .2s;display:flex}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.primary-btn{background:var(--primary);color:#fff;position:relative;overflow:hidden;box-shadow:0 4px 14px #4f46e563}.primary-btn:before{content:"";z-index:1;background:#fff3;width:0%;position:absolute;top:0;bottom:0;left:0}.primary-btn.animating:before{width:100%;transition:width 5s linear}.primary-btn.reset-anim:before{width:0%;transition:none}.primary-btn span{z-index:2;position:relative}.primary-btn:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 6px 20px #4f46e566}.primary-btn:active{transform:translateY(0)}.secondary-btn{background:var(--secondary);color:#fff}.secondary-btn:hover{background:var(--secondary-hover);transform:translateY(-2px)}.pulse{animation:2s infinite softPulse}@keyframes softPulse{0%{box-shadow:0 0 #4f46e566}70%{box-shadow:0 0 0 15px #4f46e500}to{box-shadow:0 0 #4f46e500}}.quiz-header{z-index:10;border-bottom:1px solid var(--glass-border);flex-shrink:0;margin-bottom:25px;padding-bottom:10px}.question-container{flex-direction:column;display:flex}.scrollable-content{scrollbar-width:thin;scrollbar-color:#fff3 transparent;flex:1;min-height:0;margin-bottom:10px;padding-right:8px;overflow-y:auto}.scrollable-content::-webkit-scrollbar{width:6px}.scrollable-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.progress-info{color:var(--text-muted);justify-content:space-between;align-items:center;min-height:24px;margin-bottom:10px;font-size:.9rem;font-weight:600;display:flex}#question-counter{text-align:left;flex:1}#score-counter{text-align:right}.badge-btn{cursor:pointer;text-transform:uppercase;font-size:.7rem;font-weight:700;line-height:inherit;border:1px solid #0000;border-radius:4px;padding:2px 8px;display:inline-block}.badge-btn.pass{background:var(--secondary);color:var(--bg-color)}.badge-btn.fail{background:var(--danger);color:#fff}.badge-btn:hover{opacity:.8;transform:translateY(-1px)}.badge-btn[data-tooltip]{position:relative}.badge-btn[data-tooltip]:after{content:attr(data-tooltip);transform-origin:100% 0;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(12px);color:#fff;text-transform:none;letter-spacing:normal;white-space:nowrap;z-index:99;background:#161621f2;border:1px solid #ffffff26;border-radius:6px;padding:6px 12px;font-size:.78rem;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1);display:block;position:absolute;top:calc(100% + 8px);right:0;transform:scale(.95);box-shadow:0 8px 32px #0000005e}.badge-btn[data-tooltip]:hover:after{opacity:1;transform:scale(1)}.year-badge-container{text-align:center;flex:none;padding:0 10px}.progress-bar-container{background:#ffffff1a;border-radius:4px;height:8px;overflow:hidden}#progress-bar{background:linear-gradient(90deg, var(--primary), var(--accent-blue));border-radius:4px;width:5%;height:100%;transition:width .4s}.input-group{margin-bottom:20px}input[type=text]{border:2px solid var(--glass-border);width:100%;color:var(--text-main);background:#0003;border-radius:12px;outline:none;padding:16px 20px;font-family:inherit;font-size:1.1rem;transition:border-color .2s}input[type=text]:focus{border-color:var(--primary);background:#0000004d}#feedback-container{border-left:4px solid var(--primary);background:#0000004d;border-radius:12px;margin-top:25px;padding:20px;animation:.3s slideDown}#feedback-title{margin-bottom:10px}.correct #feedback-title{color:var(--secondary)}.incorrect #feedback-title{color:var(--danger);border-color:var(--danger)}#feedback-container.correct{border-left-color:var(--secondary)}#feedback-container.incorrect{border-left-color:var(--danger)}#answers-list{margin-top:10px;list-style-type:none}#answers-list li{margin-bottom:5px;padding-left:15px;position:relative}#answers-list li:before{content:"•";color:var(--text-muted);position:absolute;left:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.nav-actions button{flex:1}.nav-actions{border-top:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;flex-shrink:0;justify-content:space-between;gap:15px;margin-top:auto;padding-top:20px;display:flex}.btn-outline{border-color:var(--danger);color:var(--danger);background:0 0}.btn-outline:hover{background:var(--danger);color:#fff}#user-past-answer{word-break:break-all;background:#0003;border-radius:8px;margin-top:10px;padding:10px;font-style:italic}.test-version-selector{flex-direction:column;align-items:center;gap:10px;margin-bottom:20px;display:flex}.test-options{gap:10px;width:360px;max-width:100%;display:flex}.version-btn,.mode-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:20px;flex:1;justify-content:center;align-items:center;padding:8px 16px;font-size:.9rem;transition:all .2s;display:flex}.version-btn:hover,.mode-btn:hover{background:#fff3}.version-btn.active,.mode-btn.active,.auto-btn.active{background:var(--danger);border-color:var(--danger);box-shadow:0 0 15px #b339394d}.mode-btn[data-tooltip]{position:relative}.mode-btn[data-tooltip]:after{content:attr(data-tooltip);transform-origin:top;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(12px);color:#fff;text-transform:none;letter-spacing:normal;white-space:nowrap;z-index:99;background:#161621f2;border:1px solid #ffffff26;border-radius:6px;padding:6px 12px;font-size:.78rem;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1);display:block;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)scale(.95);box-shadow:0 8px 32px #0000005e}.mode-btn[data-tooltip]:hover:after{opacity:1;transform:translate(-50%)scale(1)}.auto-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:20px;width:auto;padding:8px 16px;font-size:.9rem;transition:all .2s}.auto-btn:hover{background:#fff3}.test-stats{background:#0000001a;border-radius:10px;margin-bottom:15px;padding:10px}.test-stats p{margin:5px 0;font-size:.95rem}.hidden{display:none!important}.spinner{border:4px solid #ffffff4d;border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;margin:0 auto;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.score-display{flex-direction:column;align-items:center;margin:40px 0;display:flex}.score-circle{background:conic-gradient(var(--primary) 70%, #ffffff1a 0);border-radius:50%;justify-content:center;align-items:center;width:150px;height:150px;margin-bottom:20px;display:flex;position:relative}.score-circle:before{content:"";background:var(--bg-color);border-radius:50%;width:130px;height:130px;position:absolute}#final-score{z-index:1;font-size:2.5rem;font-weight:800;position:relative}#score-message{font-size:1.25rem;font-weight:600}#review-table-container{border-radius:12px;width:100%;margin:30px 0}.review-table{border-collapse:collapse;text-align:left;background:#ffffff0d;width:100%;font-size:.9rem}@media (width<=768px){body{align-items:flex-start}.glass-container{border:none;border-radius:0;width:100%;height:100%;max-height:100%;padding:16px}.review-table thead{display:none}.review-table,.review-table tbody,.review-table tr,.review-table td{width:100%;display:block}.review-table tr{border:1px solid #ffffff1a;border-radius:10px;margin-bottom:15px;padding:10px}.review-table td{border-bottom:none;padding:5px 0}.review-table td:before{content:attr(data-label);color:var(--secondary);margin-bottom:2px;font-weight:700;display:block}h1{font-size:1.6rem}h2{font-size:1.1rem}.score-display{margin:15px 0}.score-circle{width:100px;height:100px;margin-bottom:10px}.score-circle:before{width:85px;height:85px}#final-score{font-size:1.8rem}#review-table-container{margin:15px 0}.nav-actions{gap:10px;padding:12px 0}button{height:50px;font-size:1rem}}.review-table th,.review-table td{border-bottom:1px solid #ffffff1a;padding:12px 15px}.review-table th{color:var(--secondary);z-index:10;background:#ffffff1a;font-weight:600;position:sticky;top:0}.review-row.correct{background:#2ecc710d}.review-row.incorrect{background:#e6394614}.review-row.skipped{background:#ffffff0d}.review-row:hover{background:#ffffff1a}.status-badge{text-transform:uppercase;border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:700}.status-badge.correct{background:var(--secondary);color:var(--bg-color)}.status-badge.incorrect{background:var(--primary);color:#fff}.status-badge.skipped{color:var(--text-muted);background:#ffffff1a}.q-text{font-weight:500}.ans-text{color:#fffc}.correct-ans{color:var(--secondary);font-style:italic}.btn-sm{padding:6px 15px;font-size:.85rem}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.year-badge{color:var(--text-muted);background:#3b599833;border:1px solid #3b59984d;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:700}#quiz-version-badge{display:none}.app-footer{color:var(--text-muted);opacity:.5;pointer-events:none;font-family:Outfit,sans-serif;font-size:.7rem;position:absolute;bottom:12px;right:20px}#app-version{letter-spacing:.05em}.timer-text{color:var(--text-muted);font-size:.8rem;font-weight:500}.toggle-container{box-sizing:border-box;background:#ffffff1a;border:1px solid #fff3;border-radius:20px;flex:1;justify-content:space-between;align-items:center;gap:10px;height:38px;padding:6px 16px;display:flex}.toggle-label{color:var(--text-main);white-space:nowrap;font-size:.85rem;font-weight:600}.toggle-switch{cursor:pointer;background:#ffffff1a;border:none;border-radius:10px;flex-shrink:0;width:36px;height:20px;padding:0;transition:background .3s;position:relative}.toggle-switch.active{background:var(--secondary)}.toggle-slider{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .3s cubic-bezier(.68,-.55,.265,1.55);position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #0003}.toggle-switch.active .toggle-slider{transform:translate(16px)}.update-toast{z-index:9999;-webkit-backdrop-filter:blur(12px);background:#0f172aeb;border:1px solid #60a5fa66;border-radius:16px;width:90%;max-width:500px;padding:12px 20px;animation:.5s cubic-bezier(.16,1,.3,1) forwards slideToastDown;position:fixed;top:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #0009}@keyframes slideToastDown{0%{opacity:0;transform:translate(-50%,-80px)}to{opacity:1;transform:translate(-50%)}}.toast-content{justify-content:space-between;align-items:center;gap:12px;display:flex}.toast-icon{flex-shrink:0;font-size:1.2rem}.toast-text{color:var(--text-main);flex:1;font-size:.92rem;font-weight:500;line-height:1.4}.toast-btn{background:var(--secondary);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;width:auto;height:36px;padding:0 16px;font-size:.8rem;font-weight:700;box-shadow:0 4px 10px #27ae6033}.toast-btn:hover{background:var(--secondary-hover);transform:translateY(-1px);box-shadow:0 6px 14px #27ae6059}.resume-modal-overlay{-webkit-backdrop-filter:blur(20px);z-index:99999;background:#050810cc;justify-content:center;align-items:center;animation:.3s forwards fadeInModal;display:flex;position:fixed;inset:0}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}.resume-modal-content{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);text-align:center;border:1px solid #ffffff1f;border-radius:24px;flex-direction:column;align-items:center;width:90%;max-width:480px;padding:36px;animation:.4s cubic-bezier(.16,1,.3,1) forwards scaleUpModal;display:flex;box-shadow:0 30px 60px #0009}@keyframes scaleUpModal{0%{opacity:0;transform:scale(.9)translateY(15px)}to{opacity:1;transform:scale(1)translateY(0)}}.resume-modal-text{color:var(--text-muted);margin-top:8px;margin-bottom:24px;font-size:1.02rem;line-height:1.5}.resume-modal-stats{color:#60a5fa;letter-spacing:.5px;text-transform:uppercase;background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;margin-bottom:30px;padding:14px 24px;font-size:.95rem;font-weight:600}.resume-actions{gap:16px;width:100%;display:flex}.resume-actions button{flex:1}@media (width<=480px){.update-toast{padding:10px 14px;top:12px}.toast-text{font-size:.85rem}.toast-btn{height:32px;padding:0 10px;font-size:.75rem}.resume-modal-content{padding:24px}.resume-actions{flex-direction:column;gap:10px}}.dashboard-section{width:100%;margin-top:32px;margin-bottom:16px;animation:.6s cubic-bezier(.16,1,.3,1) forwards slideUpDashboard}@keyframes slideUpDashboard{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.dashboard-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);text-align:left;border:1px solid #ffffff14;border-radius:20px;padding:20px;box-shadow:0 16px 40px #0000004d}.dashboard-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.dashboard-header h3{color:var(--text-main);letter-spacing:.3px;margin:0;font-size:.9rem;font-weight:700}.clear-history-btn{color:#e74c3cd9;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #e74c3c66;border-radius:6px;flex-shrink:0;width:auto;height:auto;padding:3px 7px;font-size:.65rem;font-weight:700;transition:all .2s}.clear-history-btn:hover{color:#fff;background:#e74c3c1a;border-color:#e74c3ccc}.stats-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}.stat-box{text-align:center;background:#ffffff08;border:1px solid #ffffff0d;border-radius:12px;flex-direction:column;justify-content:center;gap:4px;padding:12px 8px;transition:transform .2s,background .2s;display:flex}.stat-box:hover{background:#ffffff0d;transform:translateY(-2px)}.stat-value{color:#60a5fa;letter-spacing:-.5px;font-size:1.35rem;font-weight:800}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.65rem;font-weight:600;line-height:1.2}.chart-container{background:#00000026;border:1px solid #ffffff0d;border-radius:16px;margin-bottom:16px;padding:14px}.chart-selector{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.chart-title{color:var(--text-muted);font-size:.8rem;font-weight:600}.chart-toggles{gap:12px;display:flex}.chart-legend-item{color:var(--text-muted);align-items:center;gap:6px;font-size:.72rem;font-weight:600;display:flex}.legend-bar-sample{border-radius:2px;flex-shrink:0;width:12px;min-width:12px;height:8px;min-height:8px;display:block}.volume-sample{background:#ffffff26;border:1px solid #ffffff40}.quiz-pass-sample{background:var(--secondary);border:1px solid #ffffff1a}.quiz-fail-sample{background:var(--danger);border:1px solid #ffffff1a}.svg-wrapper{width:100%;height:140px;position:relative}.chart-axis-line{stroke:#ffffff1a;stroke-width:1px}.chart-grid-line{stroke:#ffffff0a;stroke-dasharray:2 2;stroke-width:1px}.chart-bar-vol{fill:#ffffff1f;stroke:#fff3;transition:all .2s}.chart-bar-pass{fill:var(--secondary);transition:all .2s}.chart-bar-fail{fill:var(--danger);transition:all .2s}.chart-bar-vol:hover,.chart-bar-pass:hover,.chart-bar-fail:hover{filter:brightness(1.2)contrast(1.1);cursor:help}.chart-line-performance{stroke:#ffffff80;stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round}.legend-dot{border-radius:50%;flex-shrink:0;width:7px;min-width:7px;height:7px;min-height:7px;display:block}.quiz-dot{background:#fff9}.chart-axis-text{fill:var(--text-muted);font-family:Outfit,sans-serif;font-size:8px;font-weight:500}.history-list-details{background:#ffffff03;border:1px solid #ffffff0d;border-radius:12px;transition:all .3s;overflow:hidden}.history-summary-trigger{cursor:pointer;color:var(--text-main);-webkit-user-select:none;user-select:none;background:#ffffff05;padding:10px 14px;font-size:.8rem;font-weight:700}.history-summary-trigger:hover{background:#ffffff0a}.history-scroll-panel{border-top:1px solid #ffffff0d;max-height:180px;overflow-y:auto}.dashboard-history-table{border-collapse:collapse;text-align:left;width:100%;font-size:.76rem}.dashboard-history-table th{color:var(--text-muted);background:#ffffff03;border-bottom:1px solid #ffffff0d;padding:8px 12px;font-weight:600}.dashboard-history-table td{color:var(--text-main);border-bottom:1px solid #ffffff08;padding:8px 12px}.dashboard-history-table tr:last-child td{border-bottom:none}.history-badge{border-radius:4px;padding:2px 6px;font-size:.65rem;font-weight:700}.badge-quiz{color:#60a5fa;background:#60a5fa26;border:1px solid #60a5fa40}.badge-flash{color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b40}.badge-pass{color:var(--secondary);background:#27ae6026}.badge-fail{color:var(--danger);background:#e74c3c26}@media (width<=580px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.legend-bar-sample{background:#ffffff14;border:1px solid #ffffff26;border-radius:2px;width:10px;height:8px;display:inline-block}
