@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap";:root{--primary: #2563eb;--primary-2: #7c3aed;--accent: #f59e0b;--success: #16a34a;--danger: #dc2626;--warning: #f59e0b;--gold: #f59e0b;--tg-bg: #ffffff;--tg-bg2: #eff4fd;--tg-text: #0f172a;--tg-hint: #5b6b82;--tg-button: #2563eb;--tg-button-text: #ffffff;--radius: 20px;--radius-sm: 14px;--shadow-clay: 0 2px 4px rgba(37, 99, 235, .06), 0 8px 20px rgba(37, 99, 235, .08), inset 0 -2px 4px rgba(37, 99, 235, .04);--shadow-press: 0 1px 3px rgba(37, 99, 235, .1);--grad-primary: linear-gradient(135deg, var(--primary), var(--primary-2));--grad-gold: linear-gradient(135deg, #f59e0b, #f97316)}:root[data-theme=dark]{--tg-bg: #1c2733;--tg-bg2: #141d27;--tg-text: #f1f5f9;--tg-hint: #94a6ba;--success: #4ade80;--danger: #f87171;--shadow-clay: 0 2px 4px rgba(0, 0, 0, .25), 0 8px 20px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-press: 0 1px 3px rgba(0, 0, 0, .3)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--tg-bg2);color:var(--tg-text);font-size:16px;line-height:1.5;transition:background .25s ease,color .25s ease}.card,.option,.subject-card,.chip,.bottom-nav,.input,.select,.mini-btn{transition-property:background,background-color,color,border-color,box-shadow,transform;transition-duration:.25s}button,input,select,textarea{font-family:inherit}:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 60%,transparent);outline-offset:2px;border-radius:8px}.page{padding:16px 16px 96px;max-width:560px;margin:0 auto;animation:pageIn .3s cubic-bezier(.22,1,.36,1)}@keyframes pageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes itemIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}.card{background:var(--tg-bg);border-radius:var(--radius);padding:18px;margin-bottom:14px;box-shadow:var(--shadow-clay)}h1{font-size:24px;font-weight:900;margin:4px 0 10px;letter-spacing:-.3px}h2{font-size:17px;font-weight:800;margin:0 0 12px;display:flex;align-items:center;gap:8px}.hint{color:var(--tg-hint);font-size:13.5px}.icon-primary{color:var(--primary)}.icon-gold{color:var(--gold)}.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;border:none;border-radius:var(--radius);background:var(--grad-primary);color:#fff;font-size:16px;font-weight:800;padding:14px;cursor:pointer;box-shadow:0 6px 16px #2563eb4d,inset 0 1px #fff3;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .15s,opacity .2s}.btn:active{transform:scale(.96);box-shadow:var(--shadow-press)}.btn:disabled{opacity:.5;cursor:default}.btn.secondary{background:var(--tg-bg);color:var(--primary);box-shadow:var(--shadow-clay);border:2px solid color-mix(in srgb,var(--primary) 30%,transparent)}.btn.gold{background:var(--grad-gold);box-shadow:0 6px 16px #f59e0b59}.theme-toggle{position:fixed;top:14px;right:14px;z-index:20;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--tg-bg);color:var(--tg-text);cursor:pointer;box-shadow:var(--shadow-clay);transition:transform .15s cubic-bezier(.34,1.56,.64,1),background .25s,color .25s}.theme-toggle:active{transform:scale(.88)}.theme-toggle-icon{display:flex;animation:themeSpin .35s cubic-bezier(.34,1.56,.64,1)}@keyframes themeSpin{0%{transform:rotate(-120deg) scale(.5);opacity:0}to{transform:none;opacity:1}}.hero{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-right:52px}.streak-badge{display:inline-flex;align-items:center;gap:5px;background:var(--grad-gold);color:#fff;border-radius:999px;padding:8px 14px;font-weight:800;font-size:14px;white-space:nowrap;box-shadow:0 4px 12px #f59e0b59}.subject-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.subject-card{background:var(--tg-bg);border-radius:var(--radius);padding:16px 14px;cursor:pointer;border:2.5px solid transparent;box-shadow:var(--shadow-clay);transition:transform .15s cubic-bezier(.34,1.56,.64,1),border-color .15s,box-shadow .15s;animation:itemIn .35s cubic-bezier(.22,1,.36,1) backwards}.subject-card:active{transform:scale(.94)}.subject-card.selected{border-color:var(--primary);box-shadow:0 6px 18px #2563eb40}.subject-card .emoji{font-size:30px;line-height:1}.subject-card .name{font-weight:800;font-size:14.5px;margin-top:8px}.subject-card .meta{font-size:12px;color:var(--tg-hint);margin-top:3px;font-weight:600}.mode-row{display:flex;gap:10px;margin:12px 0}.chip{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;text-align:center;padding:10px 6px;border-radius:var(--radius-sm);background:var(--tg-bg2);border:2.5px solid transparent;cursor:pointer;font-weight:800;font-size:13.5px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),border-color .15s,color .15s}.chip:active{transform:scale(.95)}.chip.active{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--tg-bg))}.quiz-top{display:flex;justify-content:space-between;font-weight:700}.progress-track{height:10px;border-radius:5px;background:var(--tg-bg);overflow:hidden;margin:10px 0 14px;box-shadow:inset 0 1px 3px #00000014}.progress-fill{height:100%;background:var(--grad-primary);border-radius:5px;transition:width .35s cubic-bezier(.22,1,.36,1)}.timer{display:flex;align-items:center;justify-content:center;gap:6px;font-variant-numeric:tabular-nums;font-weight:900;font-size:16px;margin-bottom:10px;color:var(--primary)}.timer.low{color:var(--danger);animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.45}}.question-text{font-size:17.5px;font-weight:800;line-height:1.45}.difficulty-stars{display:inline-flex;gap:2px;color:var(--gold);margin-top:8px}.option{display:flex;align-items:center;gap:12px;width:100%;min-height:54px;text-align:left;background:var(--tg-bg);color:var(--tg-text);border:2.5px solid transparent;border-radius:var(--radius);padding:13px 14px;margin-top:12px;font-size:15px;font-weight:600;cursor:pointer;box-shadow:var(--shadow-clay);transition:transform .15s cubic-bezier(.34,1.56,.64,1),border-color .2s,background .2s;animation:itemIn .3s cubic-bezier(.22,1,.36,1) backwards}.option:active:not(:disabled){transform:scale(.97)}.option:disabled{cursor:default}.option .letter{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--tg-bg2);color:var(--primary);font-weight:900;font-size:14px;transition:background .2s,color .2s}.option.correct{border-color:var(--success);background:color-mix(in srgb,var(--success) 12%,var(--tg-bg));animation:popCorrect .35s cubic-bezier(.34,1.56,.64,1)}.option.correct .letter{background:var(--success);color:#fff}.option.wrong{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,var(--tg-bg));animation:shake .35s}.option.wrong .letter{background:var(--danger);color:#fff}@keyframes popCorrect{50%{transform:scale(1.03)}}@keyframes shake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.explanation{margin-top:14px;padding:14px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--primary) 7%,var(--tg-bg));border-left:4px solid var(--primary);font-size:14px;font-weight:600;color:var(--tg-text);animation:itemIn .3s ease backwards}.score-ring-wrap{display:flex;justify-content:center;margin:18px 0}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;text-align:center}.result-stats .value{font-size:21px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:4px}.result-stats .label{font-size:12px;color:var(--tg-hint);font-weight:700;margin-top:2px}.leader-row{display:flex;align-items:center;gap:12px;min-height:48px;padding:11px 6px;border-bottom:1px solid var(--tg-bg2)}.leader-row:last-child{border-bottom:none}.leader-row .rank{width:36px;font-weight:900;text-align:center;font-size:15px}.leader-row .medal{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:13px}.medal.m1{background:var(--grad-gold);box-shadow:0 3px 8px #f59e0b66}.medal.m2{background:linear-gradient(135deg,#94a3b8,#64748b)}.medal.m3{background:linear-gradient(135deg,#d97706,#92400e)}.leader-row .name{flex:1;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leader-row .pts{font-weight:900;color:var(--primary);font-variant-numeric:tabular-nums}.leader-row.me{background:color-mix(in srgb,var(--primary) 10%,var(--tg-bg));border-radius:var(--radius-sm);border-bottom:none}.acc-bar-track{height:10px;background:var(--tg-bg2);border-radius:5px;overflow:hidden;box-shadow:inset 0 1px 2px #0000000f}.acc-bar-fill{height:100%;border-radius:5px;background:var(--grad-primary);transition:width .6s cubic-bezier(.22,1,.36,1)}.stat-row{display:flex;align-items:center;gap:10px;margin-bottom:13px}.stat-row .s-name{width:132px;font-size:13px;font-weight:700}.stat-row .s-acc{width:46px;text-align:right;font-size:13px;font-weight:900;font-variant-numeric:tabular-nums}.activity-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:5px}.activity-cell{aspect-ratio:1;border-radius:6px;background:var(--tg-bg2)}.activity-cell.on{background:var(--grad-primary);box-shadow:0 2px 6px #2563eb4d}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--tg-bg);border-top:1px solid color-mix(in srgb,var(--tg-hint) 15%,transparent);padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:10;box-shadow:0 -4px 16px #0000000f}.bottom-nav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;min-height:48px;justify-content:center;text-decoration:none;color:var(--tg-hint);font-size:11px;font-weight:800;border-radius:12px;margin:0 4px;transition:color .2s,background .2s,transform .15s}.bottom-nav a:active{transform:scale(.93)}.bottom-nav a.active{color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,transparent)}.input,.select,textarea.input{width:100%;min-height:48px;padding:12px 14px;border-radius:var(--radius-sm);border:2px solid color-mix(in srgb,var(--tg-hint) 22%,transparent);background:var(--tg-bg);color:var(--tg-text);font-size:16px;font-weight:600;margin-bottom:10px;transition:border-color .2s}.input:focus,.select:focus,textarea.input:focus{border-color:var(--primary);outline:none}.option-edit-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.option-edit-row input[type=radio]{width:22px;height:22px;min-height:0;accent-color:var(--success);flex-shrink:0}.q-admin-item{padding:12px 0;border-bottom:1px solid var(--tg-bg2)}.q-admin-actions{display:flex;gap:10px;margin-top:8px}.mini-btn{display:inline-flex;align-items:center;gap:6px;min-height:40px;border:none;border-radius:12px;padding:8px 14px;font-size:13px;font-weight:800;cursor:pointer;background:var(--tg-bg2);color:var(--tg-text);transition:transform .15s}.mini-btn:active{transform:scale(.94)}.mini-btn.danger{color:var(--danger)}.center{text-align:center}.loading{text-align:center;padding:48px 0;color:var(--tg-hint);font-weight:700}.spinner{width:34px;height:34px;margin:0 auto 12px;border-radius:50%;border:4px solid var(--tg-bg);border-top-color:var(--primary);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-box{background:color-mix(in srgb,var(--danger) 10%,var(--tg-bg));color:var(--danger);border-radius:var(--radius-sm);padding:14px;font-size:14px;font-weight:700}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
