.login-page{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--sp-6);min-height:100%;position:relative;overflow:hidden}.login-page:before{content:"";position:absolute;width:480px;height:480px;top:-120px;left:50%;transform:translate(-50%);background:radial-gradient(circle,rgb(var(--accent-rgb) / .07) 0%,transparent 70%);pointer-events:none}.login-card{width:100%;max-width:400px;animation:loginIn var(--t-slow) var(--ease-out) both}@keyframes loginIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.login-logomark{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-8)}.login-logo-icon{width:44px;height:32px;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 1px 6px rgb(var(--shadow-rgb) / .158)}.login-logo-text{font-family:var(--font-display);font-size:1.25rem;color:var(--text-primary);letter-spacing:-.01em}.login-heading{font-family:var(--font-display);font-size:2.25rem;font-weight:400;color:var(--text-primary);line-height:1.15;margin-bottom:var(--sp-2);letter-spacing:-.02em}.login-sub{font-size:.9375rem;color:var(--text-secondary);margin-bottom:var(--sp-8);line-height:1.55}.login-form{display:flex;flex-direction:column;gap:var(--sp-4)}.field{display:flex;flex-direction:column;gap:var(--sp-2)}.field-label{font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.field-input{width:100%;padding:14px var(--sp-4);background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:var(--r-md);color:var(--text-primary);font-size:1rem;transition:border-color var(--t-fast) var(--ease-out),background var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}.field-input::placeholder{color:var(--text-muted)}.field-input:focus{border-color:var(--accent);background:var(--bg-raised);box-shadow:0 0 0 3px var(--accent-dim)}.field-input:disabled{opacity:.45;cursor:not-allowed}.login-error{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--incorrect-dim);border:1px solid rgb(var(--incorrect-rgb) / .25);border-radius:var(--r-md);color:var(--incorrect-text);font-size:.875rem;animation:shake .35s var(--ease-out)}.login-error-icon{font-size:1rem;flex-shrink:0}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}60%{transform:translate(6px)}80%{transform:translate(-3px)}}.login-btn{margin-top:var(--sp-2);width:100%;padding:15px;background:var(--accent);color:var(--text-inverse);font-size:1rem;font-weight:600;border-radius:var(--r-md);letter-spacing:.01em;transition:background var(--t-fast) var(--ease-out),transform var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out),opacity var(--t-fast) var(--ease-out);position:relative;overflow:hidden}.login-btn:hover:not(:disabled){background:var(--accent-light);box-shadow:0 4px 20px var(--accent-glow)}.login-btn:active:not(:disabled){transform:scale(.97);box-shadow:none}.login-btn:disabled{opacity:.4;cursor:not-allowed}.login-btn-inner{display:flex;align-items:center;justify-content:center;gap:var(--sp-2)}.login-dots{display:flex;align-items:center;gap:4px}.login-dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.9;animation:loginDotPulse 1.1s ease-in-out infinite}.login-dot:nth-child(2){animation-delay:.18s}.login-dot:nth-child(3){animation-delay:.36s}@keyframes loginDotPulse{0%,80%,to{transform:scale(.55);opacity:.35}40%{transform:scale(1);opacity:1}}.login-note{margin-top:var(--sp-8);text-align:center;font-size:.8125rem;color:var(--text-muted)}@media (max-width: 400px){.login-heading{font-size:1.875rem}}.login-info{padding:var(--sp-3) var(--sp-4);background:var(--correct-dim);border:1px solid var(--correct-glow);border-radius:var(--r-md);color:var(--correct-text);font-size:.875rem;line-height:1.5}.login-link-btn{align-self:center;padding:2px 4px;color:var(--accent);font-weight:600;font-size:.875rem;text-decoration:underline;text-underline-offset:3px}.login-link-btn:hover{color:var(--accent-light)}.login-link-btn:disabled{opacity:.5;cursor:default}.login-switch{margin-top:var(--sp-6);text-align:center;font-size:.875rem;color:var(--text-secondary)}.login-center{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--sp-4)}.login-center .login-sub{margin-bottom:0}.login-center .login-btn{width:100%}.login-mail-icon{width:72px;height:72px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;background:var(--accent-dim);color:var(--accent)}.login-small{font-size:.8125rem;color:var(--text-muted);line-height:1.5}.login-page{display:grid;grid-template-columns:1fr;align-items:stretch;justify-content:stretch;padding:0;overflow-y:auto;background:var(--bg-base)}.login-page:before{display:none}.login-main{display:flex;align-items:center;justify-content:center;padding:var(--sp-8) var(--sp-5) var(--sp-10)}.login-card{max-width:420px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);padding:clamp(24px,5vw,40px)}.login-brand{position:relative;overflow:hidden;color:#fff;background:linear-gradient(140deg,var(--hero-from) 0%,var(--hero-to) 100%);padding:var(--sp-6) var(--sp-5)}.login-brand:before,.login-brand:after{content:"";position:absolute;background:var(--hero-cross);pointer-events:none}.login-brand:before{left:28%;top:0;bottom:0;width:64px}.login-brand:after{top:44%;left:0;right:0;height:64px}.login-brand-inner{position:relative;z-index:1;max-width:460px}.login-brand-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.8;margin-bottom:var(--sp-2)}.login-brand-title{font-family:var(--font-display);font-weight:600;font-size:clamp(1.5rem,3.2vw,2.6rem);line-height:1.15;letter-spacing:-.02em}.login-brand-list{display:none;list-style:none;margin-top:var(--sp-8);gap:var(--sp-3);flex-direction:column}.login-brand-list li{display:flex;gap:var(--sp-3);align-items:flex-start;font-size:1rem;line-height:1.45;opacity:.95}.login-brand-list span{flex-shrink:0;width:24px;height:24px;border-radius:var(--r-full);background:#ffffff2e;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:800}@media (min-width: 900px){.login-page{grid-template-columns:minmax(380px,5fr) 6fr}.login-brand{display:flex;align-items:center;padding:var(--sp-16) clamp(32px,5vw,72px)}.login-brand-list{display:flex}.login-main{padding:var(--sp-10)}}.login-heading{font-weight:600;font-size:2rem}.login-logo-text{font-weight:600}.field-input{background:var(--bg-raised);border:1.5px solid var(--border-default);border-radius:var(--r-md)}.field-input:focus{background:var(--bg-surface)}.login-btn{border-radius:var(--r-md)!important;box-shadow:0 6px 18px rgb(var(--accent-rgb) / .28)}.login-note{color:var(--text-muted)}.field-input:focus,.field-input:focus-visible{outline:none;border-color:var(--accent)}.login-home-link{display:block;margin:var(--sp-5) auto 0;font-size:.875rem;font-weight:600;color:var(--text-secondary)}.login-home-link:hover{color:var(--accent)}.login-forgot{align-self:flex-end;margin-top:6px;font-size:.875rem}.login-legal{margin-top:var(--sp-2);text-align:center;font-size:.8125rem;color:var(--text-muted)}.login-legal a,.login-legal button{color:var(--text-muted);text-decoration:underline;text-underline-offset:2px;font-size:inherit}.login-legal a:hover,.login-legal button:hover{color:var(--accent)}.login-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.login-captcha{min-height:65px}.login-robot{display:flex;align-items:center;gap:var(--sp-3);padding:12px var(--sp-4);background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:var(--r-md);color:var(--text-primary);font-size:.95rem;cursor:pointer;-webkit-user-select:none;user-select:none}.login-robot input{width:22px;height:22px;accent-color:var(--accent);cursor:pointer}.field-hint{font-size:.8rem;color:var(--text-muted)}.ad-slot{width:100%;max-width:728px;margin:var(--sp-4) auto 0;display:flex;flex-direction:column;align-items:center;gap:4px}.ad-slot-label{align-self:flex-start;font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.ad-slot--banner .ad-slot-ins{display:inline-block;width:100%;height:90px;border-radius:var(--r-sm);overflow:hidden}@media (max-width: 480px){.ad-slot--banner .ad-slot-ins{height:100px}}.ad-slot--responsive{max-width:100%;margin-top:var(--sp-8)}.ad-slot--responsive .ad-slot-ins{width:100%;min-height:100px}.ad-slot-ins[data-ad-status=unfilled]{display:none!important}.ad-slot:has(.ad-slot-ins[data-ad-status=unfilled]){display:none}.lp{flex:1;height:100%;overflow-y:auto;scroll-behavior:smooth;background:var(--bg-base);color:var(--text-primary)}.lp-wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}.lp-wrap--narrow{max-width:820px}.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:var(--r-btn);font-weight:700;font-size:.9375rem;white-space:nowrap;transition:transform var(--t-fast) var(--ease-out),box-shadow var(--t-fast),background var(--t-fast),color var(--t-fast),border-color var(--t-fast)}.lp-btn:active{transform:scale(.97)}.lp-btn--lg{padding:14px 26px;font-size:1rem}.lp-btn--primary{background:var(--accent);color:var(--text-inverse);box-shadow:0 4px 14px rgb(var(--accent-rgb) / .3)}.lp-btn--primary:hover{background:var(--accent-light)}.lp-btn--ghost{color:var(--text-primary)}.lp-btn--ghost:hover{background:var(--bg-overlay)}.lp-btn--white{background:#fff;color:var(--hero-from);box-shadow:0 8px 22px #0003}.lp-btn--white:hover{transform:translateY(-1px);box-shadow:0 12px 28px #0000003d}.lp-btn--outline-light{color:#fff;border:1.5px solid rgb(255 255 255 / .5)}.lp-btn--outline-light:hover{background:#ffffff1a;border-color:#fff}.lp-nav{position:sticky;top:0;z-index:var(--z-header);background:var(--bg-header);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--border-subtle)}.lp-nav-inner{display:flex;align-items:center;gap:var(--sp-5);height:64px}.lp-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:600;font-size:1.125rem;color:var(--text-primary);text-decoration:none}.lp-brand--small{font-size:.9375rem}.lp-flag{border-radius:3px;box-shadow:var(--shadow-sm);flex-shrink:0}.lp-nav-links{display:none;gap:var(--sp-5);margin-left:var(--sp-4)}.lp-nav-links a{color:var(--text-secondary);text-decoration:none;font-weight:600;font-size:.9375rem}.lp-nav-links a:hover{color:var(--accent)}.lp-nav-actions{margin-left:auto;display:flex;gap:var(--sp-2)}@media (min-width: 920px){.lp-nav-links{display:flex}}@media (max-width: 420px){.lp-brand span{display:none}.lp-btn{padding:9px 14px}}.lp-hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(140deg,var(--hero-from) 0%,var(--hero-to) 100%)}.lp-hero:before,.lp-hero:after{content:"";position:absolute;background:var(--hero-cross);pointer-events:none}.lp-hero:before{top:0;bottom:0;left:30%;width:90px}.lp-hero:after{left:0;right:0;top:46%;height:90px}.lp-hero-inner{position:relative;z-index:1;display:grid;gap:var(--sp-10);padding-top:clamp(40px,7vw,88px);padding-bottom:clamp(48px,8vw,96px);align-items:center}@media (min-width: 980px){.lp-hero-inner{grid-template-columns:1.1fr 1fr}}.lp-eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--sp-2)}.lp-eyebrow--light{color:#fff;opacity:.8}.lp-hero-title{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem,5vw,3.4rem);line-height:1.08;letter-spacing:-.03em}.lp-hero-sub{margin-top:var(--sp-4);font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.6;opacity:.92;max-width:560px}.lp-hero-ctas{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-7)}.lp-stats{display:flex;flex-wrap:wrap;gap:var(--sp-8);list-style:none;margin-top:var(--sp-8)}.lp-stats li{display:flex;flex-direction:column}.lp-stats strong{font-family:var(--font-display);font-size:2rem;font-weight:700;line-height:1}.lp-stats span{font-size:.875rem;opacity:.8;margin-top:4px}.lp-hero-card-label{font-size:.8125rem;font-weight:700;opacity:.85;margin-bottom:var(--sp-3)}.lp-try{background:var(--bg-surface);color:var(--text-primary);border-radius:var(--r-xl);padding:clamp(20px,3vw,30px);box-shadow:var(--shadow-lg);border:1px solid var(--border-subtle)}.lp-try--loading{min-height:320px;opacity:.6}.lp-try--compact{padding:var(--sp-5);box-shadow:var(--shadow-sm)}.lp-try-meta{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-4)}.lp-chip{padding:4px 10px;border-radius:var(--r-full);background:var(--accent-dim);color:var(--accent);font-size:.75rem;font-weight:700}.lp-chip--red{background:var(--brand-red-dim);color:var(--brand-red)}.lp-try-q{font-family:var(--font-display);font-weight:600;font-size:1.3rem;line-height:1.3;margin-bottom:var(--sp-4)}.lp-try--compact .lp-try-q{font-size:1.1rem}.lp-try-options{display:flex;flex-direction:column;gap:var(--sp-2)}.lp-try-opt{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:12px 14px;text-align:left;border-radius:var(--r-md);border:1.5px solid var(--border-default);background:var(--bg-raised);color:var(--text-primary);font-weight:500;transition:border-color var(--t-fast),background var(--t-fast)}.lp-try-opt:hover:not(:disabled){border-color:var(--accent);background:var(--accent-dim)}.lp-try-opt:disabled{cursor:default}.lp-try-key{width:28px;height:28px;flex-shrink:0;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;border:1.5px solid var(--border-default);background:var(--bg-surface);color:var(--text-secondary)}.lp-try-opt--right{border-color:var(--correct);background:var(--correct-dim)}.lp-try-opt--right .lp-try-key{background:var(--correct);border-color:var(--correct);color:#fff}.lp-try-opt--wrong{border-color:var(--incorrect);background:var(--incorrect-dim)}.lp-try-opt--wrong .lp-try-key{background:var(--incorrect);border-color:var(--incorrect);color:#fff}.lp-try-opt--dim{opacity:.5}.lp-try-result{margin-top:var(--sp-3);font-weight:700;font-size:.9375rem;color:var(--incorrect-text)}.lp-try-result--right{color:var(--correct-text)}.lp-try-grid{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:var(--sp-6)}.lp-section{padding:clamp(56px,8vw,96px) 0;scroll-margin-top:64px}.lp-section--tint{background:var(--bg-surface);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.lp-h2{font-family:var(--font-display);font-weight:600;font-size:clamp(1.7rem,3.4vw,2.5rem);line-height:1.12;letter-spacing:-.025em}.lp-lead{margin-top:var(--sp-3);max-width:680px;font-size:1.0625rem;line-height:1.6;color:var(--text-secondary)}.lp-section h3{font-size:1.0625rem;font-weight:700;margin-bottom:4px}.lp-section p{line-height:1.6}.lp-facts{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:var(--sp-8)}.lp-fact{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--sp-6);display:flex;flex-direction:column;gap:4px}.lp-fact strong{font-family:var(--font-display);font-size:2.4rem;line-height:1;color:var(--accent)}.lp-fact span{color:var(--text-secondary);font-weight:500}.lp-split{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:var(--sp-6)}.lp-split-item{display:flex;gap:var(--sp-4);align-items:flex-start}.lp-split-item p{color:var(--text-secondary);font-size:.9375rem}.lp-split-num{flex-shrink:0;width:52px;height:52px;border-radius:var(--r-md);background:var(--brand-red-dim);color:var(--brand-red);font-weight:800;font-size:1.25rem;display:flex;align-items:center;justify-content:center}.lp-steps{list-style:none;display:grid;gap:var(--sp-5);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:var(--sp-8)}.lp-steps li{position:relative;padding:var(--sp-6);border-radius:var(--r-lg);background:var(--bg-base)}.lp-steps li span{display:inline-flex;width:36px;height:36px;border-radius:var(--r-full);background:var(--accent);color:var(--text-inverse);font-weight:800;align-items:center;justify-content:center;margin-bottom:var(--sp-3)}.lp-steps p{color:var(--text-secondary);font-size:.9375rem}.lp-features{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:var(--sp-10)}.lp-feature{padding:var(--sp-5);border-radius:var(--r-lg);border:1px solid var(--border-subtle)}.lp-feature>span{font-size:1.6rem;display:block;margin-bottom:var(--sp-2)}.lp-feature p{color:var(--text-secondary);font-size:.9375rem}.lp-chapters{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:var(--sp-8)}.lp-chapter{background:var(--bg-surface);border:1px solid var(--border-subtle);border-top:4px solid var(--ch);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--sp-6)}.lp-chapter-icon{width:48px;height:48px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:var(--sp-3);background:color-mix(in srgb,var(--ch) 13%,transparent)}.lp-chapter .lp-chapter-num{font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ch)}.lp-chapter p{color:var(--text-secondary);font-size:.9375rem}.lp-chapter-count{margin-top:var(--sp-3);font-weight:700;color:var(--text-primary)!important;font-size:.875rem!important}.lp-faq{margin-top:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-3)}.lp-faq-item{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.lp-faq-item summary{cursor:pointer;list-style:none;padding:var(--sp-4) var(--sp-5);font-weight:700;display:flex;justify-content:space-between;gap:var(--sp-4)}.lp-faq-item summary::-webkit-details-marker{display:none}.lp-faq-item summary:after{content:"+";color:var(--accent);font-size:1.25rem;line-height:1}.lp-faq-item[open] summary:after{content:"–"}.lp-faq-item p{padding:0 var(--sp-5) var(--sp-5);color:var(--text-secondary)}.lp-cta{color:#fff;background:linear-gradient(140deg,var(--hero-from) 0%,var(--hero-to) 100%);text-align:center;padding:clamp(56px,8vw,88px) 0}.lp-cta-inner{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3)}.lp-cta h2{font-family:var(--font-display);font-weight:600;font-size:clamp(1.8rem,3.5vw,2.6rem)}.lp-cta p{opacity:.85;margin-bottom:var(--sp-3)}.lp-footer{padding:var(--sp-8) 0 var(--sp-10);border-top:1px solid var(--border-subtle)}.lp-footer-inner{display:flex;flex-direction:column;gap:var(--sp-2)}.lp-footer p{color:var(--text-muted);font-size:.8125rem;max-width:720px;line-height:1.6}.lp-footer-links{display:flex;flex-wrap:wrap;gap:var(--sp-4)}.lp-footer-links a,.lp-footer-links button{color:var(--text-secondary);font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:3px}.lp-footer-links a:hover,.lp-footer-links button:hover{color:var(--accent)}.lp-try-more{margin-top:var(--sp-6);text-align:center}.qcard{width:100%;animation:qcardIn var(--t-slow) var(--ease-out) both}@keyframes qcardIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.qcard-speak-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border-subtle);color:var(--text-muted);flex-shrink:0;align-self:flex-end;margin-bottom:2px;transition:color var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out),background var(--t-fast) var(--ease-out),transform var(--t-fast) var(--ease-out)}.qcard-speak-btn:hover{color:var(--accent);border-color:rgb(var(--accent-rgb) / .4);background:var(--accent-dim)}.qcard-speak-btn:active{transform:scale(.9)}.qcard-speak-btn--active{color:var(--accent);border-color:var(--accent);background:var(--accent-dim);animation:speakPulse 1.2s ease-in-out infinite}@keyframes speakPulse{0%,to{opacity:1}50%{opacity:.55}}.qcard-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-5)}.qcard-chapter{display:inline-flex;align-items:center;padding:4px 12px;background:var(--accent-dim);border:1px solid rgb(var(--accent-rgb) / .2);border-radius:var(--r-full);font-size:.75rem;font-weight:500;color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.qcard-exam-badge{display:inline-flex;align-items:center;padding:4px 10px;background:rgb(var(--fg-rgb) / .06);border:1px solid var(--border-subtle);border-radius:var(--r-full);font-size:.75rem;font-weight:500;color:var(--text-muted);white-space:nowrap}.qcard-question-row{display:flex;align-items:flex-end;gap:var(--sp-2);margin-bottom:var(--sp-7)}.qcard-question{font-family:var(--font-display);font-size:1.5rem;font-weight:400;line-height:1.4;color:var(--text-primary);letter-spacing:-.01em;flex:1}.qcard-options{display:flex;flex-direction:column;gap:var(--sp-3);list-style:none}.opt-btn{display:flex;align-items:center;gap:var(--sp-4);width:100%;padding:15px var(--sp-5);background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:var(--r-lg);color:var(--text-primary);text-align:left;font-size:1rem;line-height:1.5;transition:background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out),transform var(--t-fast) var(--ease-out);position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent}.opt-btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;transition:background var(--t-fast) var(--ease-out);border-radius:inherit}.opt-btn:hover:not(:disabled){background:var(--bg-raised);border-color:var(--border-strong);box-shadow:0 0 0 3px var(--accent-dim)}.opt-btn:active:not(:disabled){transform:scale(.984);background:var(--bg-overlay)}.opt-btn:disabled{cursor:default}.opt-btn--correct{background:var(--correct-dim)!important;border-color:var(--correct)!important;box-shadow:0 0 0 1px var(--correct)!important}.opt-btn--incorrect{background:var(--incorrect-dim)!important;border-color:var(--incorrect)!important;box-shadow:0 0 0 1px var(--incorrect)!important}.opt-btn--dimmed{opacity:.38}.opt-key{width:30px;height:30px;min-width:30px;border-radius:var(--r-sm);background:var(--bg-overlay);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:var(--text-muted);transition:background var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}.opt-btn:hover:not(:disabled) .opt-key{background:var(--accent-dim);border-color:rgb(var(--accent-rgb) / .3);color:var(--accent)}.opt-btn--correct .opt-key{background:var(--correct-dim);border-color:var(--correct);color:var(--correct-text)}.opt-btn--incorrect .opt-key{background:var(--incorrect-dim);border-color:var(--incorrect);color:var(--incorrect-text)}.opt-text{flex:1}.opt-result-icon{flex-shrink:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center}@media (max-width: 400px){.qcard-question{font-size:1.3125rem}.opt-btn{padding:14px var(--sp-4);gap:var(--sp-3)}}.qcard{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-xl);box-shadow:var(--shadow-md);padding:clamp(20px,4vw,36px)}.qcard-question{font-weight:600;font-size:clamp(1.3rem,2.3vw,1.7rem);line-height:1.3;letter-spacing:-.015em}.qcard-chapter{font-weight:700;border-color:transparent}.qcard-exam-badge{background:var(--brand-red-dim);color:var(--brand-red);border-color:transparent;font-weight:700}.qcard-speak-btn{width:34px;height:34px;border-color:var(--border-default)}.opt-btn{background:var(--bg-raised);border:1.5px solid var(--border-default);border-radius:var(--r-lg);font-weight:500;padding:16px var(--sp-5)}.opt-btn:hover:not(:disabled){background:var(--accent-dim);border-color:var(--accent);box-shadow:none}.opt-key{border-radius:var(--r-full);background:var(--bg-surface);border:1.5px solid var(--border-default);color:var(--text-secondary);font-weight:800}.opt-btn:hover:not(:disabled) .opt-key{background:var(--accent);border-color:var(--accent);color:var(--text-inverse)}.opt-btn--correct .opt-key{background:var(--correct);border-color:var(--correct);color:#fff}.opt-btn--incorrect .opt-key{background:var(--incorrect);border-color:var(--incorrect);color:#fff}.opt-btn--dimmed{opacity:.45}.th-body{flex:1;overflow-y:auto;padding:var(--sp-8) clamp(16px,4vw,48px) var(--sp-12);display:flex;flex-direction:column;gap:var(--sp-4);width:100%;max-width:1280px;margin:0 auto;animation:resultsIn var(--t-slow) var(--ease-out) both}.th-center{align-items:center;justify-content:center}.th-title{font-family:var(--font-display);font-size:2rem;font-weight:400;color:var(--text-primary);line-height:1.1;letter-spacing:-.02em}.th-muted{font-size:.9375rem;color:var(--text-secondary);margin-top:4px}.th-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.th-group{margin-top:var(--sp-3);font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.th-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 8px;border-radius:var(--r-full);color:var(--text-secondary);font-size:.875rem;font-weight:500;background:var(--bg-surface);border:1px solid var(--border-subtle);transition:color var(--t-fast),border-color var(--t-fast)}.th-back:hover{color:var(--text-primary);border-color:var(--border-strong)}.th-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--sp-3)}.th-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:var(--sp-5);text-align:left;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);color:inherit;transition:border-color var(--t-base),transform var(--t-fast),background var(--t-base)}.th-card:hover{border-color:var(--border-strong);background:var(--bg-raised)}.th-card:active{transform:scale(.985)}.th-card--wide{flex-direction:row;align-items:center;gap:var(--sp-4)}.th-card--accent{border-color:var(--accent-glow)}.th-card--resume{background:var(--accent-dim);border-color:var(--accent-glow)}.th-card-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.th-card-head{width:100%;display:flex;justify-content:space-between;align-items:center}.th-card-icon{font-size:1.75rem;line-height:1;margin-bottom:4px}.th-chevron{color:var(--text-muted)}.th-card-title{font-size:1.0625rem;font-weight:600;color:var(--text-primary);line-height:1.3}.th-card-sub{font-size:.8125rem;color:var(--text-secondary);line-height:1.4}.th-play{flex-shrink:0;width:44px;height:44px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--text-inverse)}.th-play--small{width:34px;height:34px}.th-grid--sections{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.th-section{padding:var(--sp-4);gap:6px}.th-section .th-card-head{margin-bottom:4px}.th-section .th-card-title{font-size:.9875rem;flex:1}.th-card--wide{max-width:720px}.th-list{display:flex;flex-direction:column;gap:var(--sp-2)}.th-row{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-4);text-align:left;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-md);color:inherit;transition:border-color var(--t-base),background var(--t-base),transform var(--t-fast)}.th-row:hover{border-color:var(--border-strong);background:var(--bg-raised)}.th-row:active{transform:scale(.99)}.th-row-num{flex-shrink:0;min-width:44px;padding:6px 8px;border-radius:var(--r-sm);background:var(--accent-dim);color:var(--accent-light);font-weight:700;font-size:.875rem;text-align:center;font-variant-numeric:tabular-nums}.th-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.th-row-title{font-size:.9875rem;font-weight:600;color:var(--text-primary);line-height:1.35}.th-row-sub{font-size:.8125rem;color:var(--text-muted)}.th-progress{width:100%;display:flex;align-items:center;gap:var(--sp-2);margin-top:6px}.th-progress-track{flex:1;height:6px;border-radius:var(--r-full);background:var(--bg-overlay);overflow:hidden}.th-progress-fill{height:100%;border-radius:var(--r-full);background:var(--accent);transition:width var(--t-slow) var(--ease-out)}.th-progress-fill--done{background:var(--correct)}.th-progress-label{font-size:.75rem;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.quiz-topic-title{font-size:.8125rem;font-weight:600;color:var(--accent);margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.results-topic{font-size:.9375rem;color:var(--text-secondary);text-align:center}.results-secondary-btn{width:100%;padding:14px;border-radius:var(--r-md);font-size:.9375rem;font-weight:600;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-default);transition:border-color var(--t-fast)}.results-secondary-btn:hover{border-color:var(--border-strong)}@media (max-width: 400px){.th-body{padding:var(--sp-5) var(--sp-4) var(--sp-10)}.th-title{font-size:1.75rem}.th-grid{grid-template-columns:1fr}.th-grid--sections{grid-template-columns:1fr 1fr}.th-section .th-play--small{width:30px;height:30px}}.th-body{gap:var(--sp-5)}.th-title{font-weight:600;letter-spacing:-.025em}.th-group{margin-top:var(--sp-4);font-size:.75rem;letter-spacing:.08em;color:var(--text-secondary);display:flex;align-items:center;gap:var(--sp-3)}.th-group:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.th-card{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);border-radius:var(--r-lg);transition:box-shadow var(--t-base) var(--ease-out),transform var(--t-base) var(--ease-out),border-color var(--t-base)}.th-card:hover{background:var(--bg-surface);border-color:var(--border-default);box-shadow:var(--shadow-md);transform:translateY(-2px)}.th-card:active{transform:translateY(0) scale(.99)}.th-card-title{font-weight:700;letter-spacing:-.01em}.th-card-icon{width:48px;height:48px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:6px;background:var(--accent-dim)}.th-card--exam .th-card-icon{background:var(--brand-red-dim)}.th-card--chapter{border-top:4px solid var(--ch)}.th-card--chapter .th-card-icon,.th-chapter-icon{background:color-mix(in srgb,var(--ch) 13%,transparent)}.th-eyebrow--ch{color:var(--ch, var(--accent))}.th-body[style] .th-progress-fill,.th-card--chapter .th-progress-fill{background:var(--ch)}.th-body[style] .th-row-num{background:color-mix(in srgb,var(--ch) 13%,transparent);color:var(--ch)}.th-body[style] .th-play{background:var(--ch);color:#fff}.th-body[style] .th-card--accent{border-color:color-mix(in srgb,var(--ch) 40%,transparent)}.th-chapter-head{display:flex;align-items:center;gap:var(--sp-4)}.th-chapter-icon{width:60px;height:60px;border-radius:var(--r-lg);display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}.th-play{box-shadow:0 4px 12px rgb(var(--shadow-rgb) / .15);color:var(--text-inverse)}.th-progress-track{height:8px;background:var(--bg-overlay)}.th-back{background:var(--bg-surface);box-shadow:var(--shadow-sm)}.th-hero{position:relative;overflow:hidden;display:flex;align-items:center;gap:var(--sp-6);padding:clamp(22px,4vw,40px);border-radius:var(--r-xl);color:#fff;background:linear-gradient(135deg,var(--hero-from) 0%,var(--hero-to) 100%);box-shadow:var(--shadow-lg)}.th-hero:before,.th-hero:after{content:"";position:absolute;background:var(--hero-cross);pointer-events:none}.th-hero:before{top:0;bottom:0;right:22%;width:54px}.th-hero:after{left:0;right:0;top:52%;height:54px}.th-hero-text{position:relative;z-index:1;flex:1;min-width:0}.th-hero-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.75}.th-hero-title{font-family:var(--font-display);font-weight:600;font-size:clamp(1.6rem,3.4vw,2.4rem);line-height:1.12;letter-spacing:-.025em;margin:6px 0 10px}.th-hero-sub{font-size:.975rem;line-height:1.55;opacity:.9;max-width:560px}.th-hero-sub strong{font-weight:800}.th-hero-btn{margin-top:var(--sp-5);display:inline-flex;align-items:center;gap:var(--sp-2);max-width:100%;padding:12px 18px;border-radius:var(--r-btn);background:#fff;color:var(--hero-from);font-weight:700;font-size:.9375rem;box-shadow:0 6px 18px #0000002e;transition:transform var(--t-fast) var(--ease-out),box-shadow var(--t-fast);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.th-hero-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px #00000038}.th-hero-btn-meta{padding:2px 8px;border-radius:var(--r-full);background:rgb(var(--accent-rgb) / .1);font-size:.8125rem}.th-ring{position:relative;z-index:1;flex-shrink:0;width:96px;height:96px}.th-ring svg{transform:rotate(-90deg)}.th-ring-track{fill:none;stroke:#ffffff2e;stroke-width:8}.th-ring-fill{fill:none;stroke:#fff;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .9s var(--ease-out)}.th-ring-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}.th-ring-label strong{font-size:1.25rem;font-weight:800}.th-ring-label small{font-size:.6875rem;opacity:.8}@media (max-width: 560px){.th-hero{flex-direction:column-reverse;align-items:flex-start;gap:var(--sp-4)}.th-ring{width:76px;height:76px}.th-ring svg{width:76px;height:76px}.th-hero-btn{width:100%;justify-content:center}}.th-body>*{flex-shrink:0}.th-card--chapter:hover{border-top-color:var(--ch)}.th-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:var(--r-lg);background:var(--bg-surface);border:1px solid var(--border-subtle)}.th-switch-btn{display:flex;flex-direction:column;align-items:center;gap:1px;padding:10px 8px;border-radius:var(--r-md);font-weight:600;font-size:.9375rem;color:var(--text-secondary);transition:background var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.th-switch-btn small{font-weight:500;font-size:.75rem;color:var(--text-muted)}.th-switch-btn:hover{color:var(--text-primary)}.th-switch-btn--on{background:var(--accent);color:var(--text-inverse)}.th-switch-btn--on small{color:inherit;opacity:.85}.th-switch-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.th-audio{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4);border-radius:var(--r-lg);background:var(--bg-surface);border:1px solid var(--border-subtle)}.th-audio-title{font-weight:600;color:var(--text-primary)}.th-audio-player{width:100%}.th-audio-credit{font-size:.8125rem;color:var(--text-muted)}.th-audio-credit a{color:var(--text-secondary);text-decoration:underline}.quiz-shell{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-base)}.quiz-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);background:var(--bg-base);border-bottom:1px solid var(--border-subtle);flex-shrink:0;z-index:var(--z-header)}.quiz-header-left{display:flex;align-items:center;gap:var(--sp-3)}.quiz-logo-dot{width:32px;height:24px;border-radius:5px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.quiz-title{font-size:.9375rem;font-weight:600;color:var(--text-secondary);letter-spacing:.01em}.quiz-header-right{display:flex;align-items:center;gap:var(--sp-2)}.quiz-icon-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out),background var(--t-fast) var(--ease-out)}.quiz-icon-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.quiz-icon-btn--admin{border-color:rgb(var(--accent-rgb) / .3);color:var(--accent);background:var(--accent-dim)}.quiz-logout-btn{display:flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 12px;border:1px solid var(--border-subtle);border-radius:10px;font-size:.8125rem;font-weight:500;color:var(--text-muted);white-space:nowrap;transition:border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.quiz-logout-btn:hover{border-color:var(--incorrect);color:var(--incorrect-text)}@media (max-width: 420px){.quiz-title,.quiz-logout-label{display:none}.quiz-logout-btn{width:36px;padding:0}}.quiz-progress-strip{padding:var(--sp-3) var(--sp-5) var(--sp-4);background:var(--bg-base);flex-shrink:0}.progress-dots{display:flex;gap:4px;align-items:center;margin-bottom:8px}.progress-dot{flex:1;height:4px;border-radius:2px;background:var(--bg-overlay);transition:background var(--t-base) var(--ease-out)}.progress-dot--current{background:var(--accent);opacity:.45}.progress-meta{display:flex;justify-content:space-between;align-items:center}.progress-count{font-size:.8125rem;font-weight:600;color:var(--text-muted)}.progress-pct{font-size:.8125rem;font-weight:600;color:var(--accent)}.quiz-body{flex:1;overflow-y:auto;padding:var(--sp-6) var(--sp-5) 240px;scroll-behavior:smooth}.quiz-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4)}.loading-dots{display:flex;gap:6px}.loading-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:dotBounce 1.1s var(--ease-in-out) infinite}.loading-dot:nth-child(2){animation-delay:.18s}.loading-dot:nth-child(3){animation-delay:.36s}@keyframes dotBounce{0%,80%,to{transform:scale(.6);opacity:.3}40%{transform:scale(1);opacity:1}}.loading-text{font-size:.9375rem;color:var(--text-muted)}.feedback-sheet{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-sheet);border-radius:24px 24px 0 0;padding:var(--sp-6) var(--sp-5) max(var(--sp-8),env(safe-area-inset-bottom,28px));display:flex;flex-direction:column;gap:var(--sp-4);animation:sheetUp var(--t-sheet) var(--ease-out) both;border-top:1px solid transparent}.feedback-sheet:before{content:"";display:block;width:40px;height:4px;border-radius:2px;background:rgb(var(--fg-rgb) / .12);margin:0 auto var(--sp-2);flex-shrink:0}@keyframes sheetUp{0%{transform:translateY(100%);opacity:.4}to{transform:translateY(0);opacity:1}}.feedback-sheet--correct{background:var(--correct-sheet);border-color:rgb(var(--correct-rgb) / .3);box-shadow:0 -1px rgb(var(--correct-rgb) / .22),0 -32px 80px rgb(var(--correct-rgb) / .14)}.feedback-sheet--incorrect{background:var(--incorrect-sheet);border-color:rgb(var(--incorrect-rgb) / .18);box-shadow:0 -1px rgb(var(--incorrect-rgb) / .12),0 -32px 80px rgb(var(--incorrect-rgb) / .06)}.feedback-row{display:flex;align-items:center;gap:var(--sp-3);width:100%}.feedback-icon-wrap{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;animation:iconPop .38s var(--ease-spring) both}@keyframes iconPop{0%{transform:scale(.2);opacity:0}65%{transform:scale(1.18)}to{transform:scale(1);opacity:1}}.feedback-sheet--correct .feedback-icon-wrap{background:rgb(var(--correct-rgb) / .2);color:var(--correct);box-shadow:0 0 0 4px rgb(var(--correct-rgb) / .12),0 4px 16px rgb(var(--correct-rgb) / .2)}.feedback-sheet--incorrect .feedback-icon-wrap{background:rgb(var(--incorrect-rgb) / .16);color:var(--incorrect);box-shadow:0 0 0 4px rgb(var(--incorrect-rgb) / .1),0 4px 16px rgb(var(--incorrect-rgb) / .14)}.feedback-label{font-family:var(--font-display);font-size:1.5rem;font-weight:400;letter-spacing:-.02em;line-height:1.15}.feedback-sheet--correct .feedback-label{color:var(--correct-text)}.feedback-answer{font-size:.9375rem;color:var(--text-secondary);line-height:1.55;padding:var(--sp-3) var(--sp-4);background:rgb(var(--fg-rgb) / .06);border:1px solid rgb(var(--fg-rgb) / .08);border-radius:12px}.feedback-answer strong{color:var(--text-primary);font-weight:600}.feedback-source{display:flex;flex-direction:column;gap:var(--sp-2)}.feedback-source-label{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;color:var(--text-muted)}.feedback-quote{font-size:.875rem;font-style:italic;color:var(--text-secondary);line-height:1.65;padding:var(--sp-3) var(--sp-4);background:rgb(var(--fg-rgb) / .04);border-radius:12px;max-height:110px;overflow-y:auto}.feedback-meta-row{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center}.feedback-exam-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:rgb(var(--accent-rgb) / .13);border:1px solid rgb(var(--accent-rgb) / .28);border-radius:var(--r-full);font-size:.75rem;font-weight:600;color:var(--accent);white-space:nowrap}.feedback-exam-badge--inline{margin-left:auto;flex-shrink:0}.next-btn{width:100%;min-height:56px;padding:0 var(--sp-6);border-radius:16px;font-family:var(--font-ui);font-size:1.0625rem;font-weight:700;letter-spacing:.005em;display:flex;align-items:center;justify-content:center;gap:8px;border:none;cursor:pointer;transition:filter .12s ease,transform .1s ease,box-shadow .12s ease;position:relative;overflow:hidden}.next-btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgb(var(--fg-rgb) / 0);transition:background .12s ease;border-radius:inherit}.next-btn:hover:after{background:rgb(var(--fg-rgb) / .07)}.next-btn:active{transform:scale(.972);filter:brightness(.94)}.next-btn:active:after{background:rgb(var(--shadow-rgb) / .036)}.next-btn--correct{background:var(--correct-solid);color:#fff;box-shadow:0 1px rgb(var(--fg-rgb) / .25) inset,0 6px 24px rgb(var(--correct-rgb) / .4)}.next-btn--incorrect{background:var(--text-primary);color:var(--bg-surface);border:1px solid rgb(var(--incorrect-rgb) / .2);box-shadow:0 1px rgb(var(--fg-rgb) / .07) inset,0 4px 20px rgb(var(--shadow-rgb) / .158)}.next-btn--incorrect:hover:after{background:rgb(var(--fg-rgb) / .05)}.next-btn-icon{display:flex;align-items:center;opacity:.8;transition:transform .16s var(--ease-out),opacity .16s ease}.next-btn:hover .next-btn-icon{transform:translate(4px);opacity:1}.quiz-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-5);padding:var(--sp-8);text-align:center}.quiz-empty p{font-size:.9375rem;color:var(--text-muted)}.retry-btn{padding:12px 28px;background:var(--accent);color:var(--text-inverse);border-radius:var(--r-md);font-weight:600;font-size:.9375rem}.results-shell{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-base)}.results-body{flex:1;overflow-y:auto;padding:var(--sp-8) var(--sp-5) var(--sp-12);display:flex;flex-direction:column;align-items:center;gap:var(--sp-8);animation:resultsIn var(--t-slow) var(--ease-out) both}@keyframes resultsIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.results-trophy{text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--sp-4)}.trophy-icon{width:80px;height:80px;background:var(--accent-dim);border:2px solid rgb(var(--accent-rgb) / .25);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.25rem;animation:trophyPop .5s var(--ease-spring) .1s both}@keyframes trophyPop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.results-score{font-family:var(--font-display);font-size:4rem;font-weight:400;color:var(--text-primary);line-height:1;letter-spacing:-.03em}.results-score em{font-style:normal;color:var(--accent)}.results-pct{font-size:1rem;color:var(--text-secondary);font-weight:500}.results-chapters{width:100%;max-width:480px}.results-chapters-title{font-size:.8125rem;font-weight:700;color:var(--text-muted);letter-spacing:.06em;margin-bottom:var(--sp-4);text-transform:uppercase}.chapter-list{display:flex;flex-direction:column;gap:var(--sp-2)}.chapter-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-md)}.chapter-item-name{flex:1;font-size:.9375rem;color:var(--text-primary);font-weight:500}.chapter-item-score{font-size:.875rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.chapter-bar-track{width:48px;height:4px;background:var(--bg-overlay);border-radius:2px;overflow:hidden;flex-shrink:0}.chapter-bar-fill{height:100%;border-radius:2px;background:var(--accent);width:var(--bar-fill, 0%);transition:width .6s var(--ease-out)}.results-cta{width:100%;max-width:320px;display:flex;flex-direction:column;gap:var(--sp-3)}.new-session-btn{width:100%;padding:15px;background:var(--accent);color:var(--text-inverse);border-radius:var(--r-md);font-size:1rem;font-weight:700;letter-spacing:.01em;display:flex;align-items:center;justify-content:center;gap:8px;transition:background var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out),transform var(--t-fast) var(--ease-out)}.new-session-btn:hover{background:var(--accent-light);box-shadow:0 4px 24px var(--accent-glow)}.new-session-btn:active{transform:scale(.97)}.results-signout{align-self:center;margin-top:4px}@media (max-width: 400px){.quiz-body{padding:var(--sp-5) var(--sp-4) 220px}.feedback-sheet{padding:var(--sp-4) var(--sp-4) max(var(--sp-6),env(safe-area-inset-bottom,20px))}.results-score{font-size:3.25rem}}@media (prefers-reduced-motion: reduce){.feedback-sheet,.qcard,.results-body,.trophy-icon{animation:none}}.config-shell{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-base)}.config-body{flex:1;overflow-y:auto;padding:var(--sp-6) var(--sp-5) var(--sp-12);display:flex;flex-direction:column;gap:var(--sp-5);animation:resultsIn var(--t-slow) var(--ease-out) both}.config-title{font-family:var(--font-display);font-size:2rem;font-weight:400;color:var(--text-primary);line-height:1.1;letter-spacing:-.02em}.config-sub{font-size:.9375rem;color:var(--text-secondary);margin-top:-8px}.config-row{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);gap:var(--sp-5)}.config-row-left{display:flex;align-items:center;gap:var(--sp-4);flex:1;min-width:0}.config-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}.config-row-title{font-size:.9375rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.config-row-sub{font-size:.8125rem;color:var(--text-muted);line-height:1.4}.config-start-btn{width:100%;min-height:56px;padding:0 var(--sp-6);border-radius:16px;font-family:var(--font-ui);font-size:1.0625rem;font-weight:700;letter-spacing:.005em;display:flex;align-items:center;justify-content:center;gap:8px;border:none;cursor:pointer;background:var(--correct-solid);color:#fff;box-shadow:0 1px rgb(var(--fg-rgb) / .25) inset,0 6px 24px rgb(var(--correct-rgb) / .4);transition:filter .12s ease,transform .1s ease,box-shadow .12s ease}.config-start-btn:hover{filter:brightness(1.05)}.config-start-btn:active{transform:scale(.972);filter:brightness(.94)}.results-back-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.results-back-btn:hover{border-color:var(--accent);color:var(--accent)}.results-header-spacer{width:36px}.quiz-shell{--quiz-max: 100%}@media (min-width: 768px){.quiz-shell{--quiz-max: 720px}}@media (min-width: 1200px){.quiz-shell{--quiz-max: 820px}}.quiz-progress-strip>*,.quiz-body>*,.feedback-sheet>*{width:100%;max-width:var(--quiz-max);margin-left:auto;margin-right:auto}.quiz-header{background:var(--bg-header);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--border-subtle);padding:10px clamp(16px,4vw,40px);box-shadow:0 1px rgb(var(--shadow-rgb) / .02)}.quiz-logo-dot{border-radius:4px;box-shadow:var(--shadow-sm)}.quiz-title{font-family:var(--font-display);font-size:1.125rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.quiz-icon-btn{width:38px;height:38px;border-radius:var(--r-full);border-color:transparent;color:var(--text-secondary)}.quiz-icon-btn:hover{border-color:transparent;background:var(--bg-overlay);color:var(--text-primary)}.quiz-icon-btn--admin{border-color:transparent;background:var(--brand-red-dim);color:var(--brand-red)}.quiz-logout-btn{height:38px;border-radius:var(--r-btn);padding:0 14px;border-color:var(--border-default);color:var(--text-secondary);font-weight:600}.results-back-btn{border-radius:var(--r-btn)}.quiz-progress-strip{background:transparent;padding-top:var(--sp-5)}.progress-dots{gap:0;height:8px;border-radius:var(--r-full);background:var(--bg-overlay);overflow:hidden}.progress-dot{height:8px;border-radius:0;background:transparent}.progress-dot--done{background:var(--accent)}.progress-dot--current{background:var(--accent);opacity:.35}.progress-count{color:var(--text-secondary)}.quiz-topic-title{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:700}.feedback-sheet{border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:0 -12px 40px rgb(var(--shadow-rgb) / .12)!important;border-top:3px solid transparent}.feedback-sheet--correct{border-top-color:var(--correct)}.feedback-sheet--incorrect{border-top-color:var(--incorrect)}.feedback-sheet:before{background:var(--border-default)}.feedback-label{font-weight:700}.feedback-sheet--incorrect .feedback-label{color:var(--incorrect-text)}.feedback-answer{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);color:var(--text-secondary)}.next-btn{border-radius:var(--r-lg);min-height:54px}.next-btn--correct{box-shadow:0 8px 22px rgb(var(--correct-rgb) / .32)}.next-btn--incorrect{border:none;box-shadow:0 8px 22px rgb(var(--shadow-rgb) / .22)}.results-score{font-weight:600}.new-session-btn{border-radius:var(--r-md);color:var(--text-inverse);box-shadow:0 6px 18px rgb(var(--accent-rgb) / .28)}.trophy-icon{background:var(--accent-dim);color:var(--accent)}.settings-shell{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-base)}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);background:var(--bg-base);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.settings-back-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.settings-back-btn:hover{border-color:var(--accent);color:var(--accent)}.settings-title{font-size:1rem;font-weight:700;color:var(--text-primary)}.settings-header-spacer{width:36px}.settings-body{flex:1;overflow-y:auto;padding:var(--sp-6) var(--sp-5) var(--sp-12);display:flex;flex-direction:column;gap:var(--sp-6)}.settings-section{display:flex;flex-direction:column;gap:var(--sp-4)}.settings-section-label{font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.settings-user-card{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-5);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg)}.settings-avatar{width:48px;height:48px;border-radius:50%;background:var(--accent);color:var(--text-inverse);font-size:1.25rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-username{font-size:1rem;font-weight:600;color:var(--text-primary)}.settings-user-sub{font-size:.8125rem;color:var(--text-muted);margin-top:2px}.settings-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.stat-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:var(--sp-4);display:flex;flex-direction:column;gap:4px}.stat-value{font-family:var(--font-display);font-size:2rem;font-weight:400;color:var(--accent);line-height:1;letter-spacing:-.02em}.stat-label{font-size:.8125rem;color:var(--text-muted);font-weight:500}.settings-stats-loading{font-size:.9375rem;color:var(--text-muted);padding:var(--sp-4) 0}.settings-chapters{display:flex;flex-direction:column;gap:var(--sp-4)}.settings-chapters-title{font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.settings-chapter-row{display:flex;flex-direction:column;gap:var(--sp-2)}.settings-chapter-top{display:flex;justify-content:space-between;align-items:baseline}.settings-chapter-name{font-size:.9375rem;font-weight:500;color:var(--text-primary)}.settings-chapter-pct--empty{opacity:.35}.settings-chapter-pct{font-size:.875rem;font-weight:700;color:var(--accent)}.settings-chapter-track{width:100%;height:6px;background:var(--bg-overlay);border-radius:3px;overflow:hidden}.settings-chapter-fill{height:100%;background:var(--accent);border-radius:3px;width:var(--fill, 0%);transition:width .6s var(--ease-out);min-width:2px}.settings-chapter-score{font-size:.75rem;color:var(--text-muted)}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);gap:var(--sp-5)}.settings-row-left{display:flex;align-items:center;gap:var(--sp-4);flex:1;min-width:0}.settings-row-icon{width:36px;height:36px;border-radius:10px;background:var(--accent-dim);display:flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.settings-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}.settings-row-title{font-size:.9375rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-row-sub{font-size:.8125rem;color:var(--text-muted);line-height:1.4}.toggle-btn{width:52px;height:30px;border-radius:15px;background:var(--bg-overlay);border:2px solid var(--border-default);padding:2px;flex-shrink:0;transition:background var(--t-base) var(--ease-out),border-color var(--t-base) var(--ease-out);position:relative}.toggle-btn--on{background:var(--accent);border-color:var(--accent)}.toggle-thumb{display:block;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgb(var(--shadow-rgb) / .135);transform:translate(0);transition:transform var(--t-base) var(--ease-out)}.toggle-btn--on .toggle-thumb{transform:translate(22px)}.settings-voice-block{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg)}.settings-voice-label{font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.settings-voice-none{font-size:.875rem;color:var(--text-muted);line-height:1.5}.settings-voice-row{display:flex;gap:var(--sp-3);align-items:center;min-width:0}.settings-voice-select{flex:1;min-width:0;padding:10px 36px 10px var(--sp-4);background:var(--bg-raised);border:1.5px solid var(--border-default);border-radius:var(--r-md);color:var(--text-primary);font-family:var(--font-ui);font-size:1rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%235c6278' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;transition:border-color var(--t-fast) var(--ease-out)}.settings-voice-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.settings-voice-select option{background:var(--bg-raised);color:var(--text-primary);white-space:normal}.settings-preview-btn{display:flex;align-items:center;gap:6px;padding:10px var(--sp-4);background:var(--accent-dim);border:1.5px solid rgb(var(--accent-rgb) / .3);border-radius:var(--r-md);color:var(--accent);font-size:.875rem;font-weight:600;white-space:nowrap;transition:background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}.settings-preview-btn:hover{background:rgb(var(--accent-rgb) / .22);border-color:var(--accent)}.settings-preview-btn:active{transform:scale(.97)}.settings-admin-btn{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-4) var(--sp-5);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);font-size:.9375rem;font-weight:600;color:var(--text-primary);transition:background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}.settings-admin-btn:hover{background:var(--bg-raised);border-color:var(--accent)}.settings-admin-chevron{margin-left:auto;color:var(--text-muted)}.settings-logout-btn{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);width:100%;padding:14px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);font-size:.9375rem;font-weight:600;color:var(--incorrect-text);transition:background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}.settings-logout-btn:hover{background:var(--incorrect-dim);border-color:var(--incorrect)}.settings-exam-stats{display:flex;flex-direction:column;gap:var(--sp-4);margin-top:var(--sp-2);padding-top:var(--sp-4);border-top:1px solid var(--border-subtle)}.settings-stats-grid--2col{grid-template-columns:1fr 1fr}@media (max-width: 400px){.settings-stats-grid{grid-template-columns:1fr 1fr;gap:var(--sp-2)}.stat-value{font-size:1.625rem}}.theme-switch{display:inline-flex;flex-shrink:0;padding:3px;gap:2px;border-radius:var(--r-full);background:var(--bg-overlay)}.theme-switch-btn{padding:6px 12px;border-radius:var(--r-full);font-size:.8125rem;font-weight:600;color:var(--text-secondary);transition:background var(--t-fast),color var(--t-fast),box-shadow var(--t-fast)}.theme-switch-btn--on{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm)}.settings-row,.settings-user-card{background:var(--bg-surface);box-shadow:var(--shadow-sm)}.settings-small-btn{flex-shrink:0;padding:8px 14px;border:1px solid var(--border-default);border-radius:var(--r-btn);background:var(--bg-surface);color:var(--text-primary);font-size:.875rem;font-weight:600;text-decoration:none;white-space:nowrap}.settings-small-btn:hover{border-color:var(--accent);color:var(--accent)}.admin-shell{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-base)}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);background:var(--bg-base);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.admin-back-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.admin-back-btn:hover{border-color:var(--accent);color:var(--accent)}.admin-title{font-size:1rem;font-weight:700;color:var(--text-primary)}.admin-new-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;background:var(--accent);color:var(--text-inverse);border-radius:var(--r-full);font-size:.875rem;font-weight:700;transition:filter var(--t-fast) var(--ease-out),transform var(--t-fast) var(--ease-out)}.admin-new-btn:hover{filter:brightness(1.08)}.admin-new-btn:active{transform:scale(.96)}.admin-body{flex:1;overflow-y:auto;padding:var(--sp-6) var(--sp-5) var(--sp-12);display:flex;flex-direction:column;align-items:center;gap:var(--sp-5)}.admin-body>*{width:100%;max-width:520px}.admin-form-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-xl);padding:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-5);animation:slideDown .22s var(--ease-out) both}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.admin-form-title{font-family:var(--font-display);font-size:1.25rem;font-weight:400;color:var(--text-primary);letter-spacing:-.01em}.admin-field{display:flex;flex-direction:column;gap:var(--sp-2)}.admin-field label{font-size:.8125rem;font-weight:600;color:var(--text-secondary);padding-left:2px}.admin-field input{padding:13px var(--sp-4);background:var(--bg-base);border:1.5px solid var(--border-subtle);border-radius:var(--r-md);color:var(--text-primary);font-size:1rem;transition:border-color var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}.admin-field input::placeholder{color:var(--text-muted)}.admin-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.admin-check-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-4) 0 0;border-top:1px solid var(--border-subtle);background:none;border-left:none;border-right:none;border-bottom:none;border-radius:0}.admin-check-row-left{display:flex;flex-direction:column;gap:3px}.admin-check-label{font-size:.9375rem;font-weight:600;color:var(--text-primary);cursor:pointer}.admin-check-sub{font-size:.75rem;color:var(--text-muted);line-height:1.4}.admin-check-row input[type=checkbox]{display:none}.admin-toggle{width:50px;height:28px;border-radius:14px;background:var(--bg-overlay);border:1.5px solid var(--border-default);padding:3px;cursor:pointer;flex-shrink:0;transition:background var(--t-base) var(--ease-out),border-color var(--t-base) var(--ease-out),box-shadow var(--t-base) var(--ease-out)}.admin-toggle--on{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.admin-toggle-thumb{display:block;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 6px rgb(var(--shadow-rgb) / .158);transform:translate(0);transition:transform var(--t-base) var(--ease-out)}.admin-toggle--on .admin-toggle-thumb{transform:translate(22px)}.admin-form-error{display:flex;align-items:center;gap:var(--sp-2);font-size:.875rem;color:var(--incorrect-text);background:rgb(var(--incorrect-rgb) / .08);border:1px solid rgb(var(--incorrect-rgb) / .18);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4)}.admin-form-actions{display:flex;flex-direction:column;gap:var(--sp-2);padding-top:var(--sp-1)}.admin-submit-btn{width:100%;padding:14px;background:var(--accent);color:var(--text-inverse);border-radius:var(--r-md);font-size:1rem;font-weight:700;letter-spacing:.01em;transition:filter var(--t-fast) var(--ease-out),transform var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}.admin-submit-btn:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 4px 20px rgb(var(--accent-rgb) / .3)}.admin-submit-btn:active:not(:disabled){transform:scale(.97)}.admin-submit-btn:disabled{opacity:.35;cursor:not-allowed}.admin-cancel-btn{width:100%;padding:12px;border:1px solid var(--border-subtle);border-radius:var(--r-md);color:var(--text-muted);font-size:.9375rem;font-weight:500;color:var(--text-secondary);transition:border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.admin-cancel-btn:hover{border-color:var(--border-strong);color:var(--text-primary)}.admin-user-list{display:flex;flex-direction:column;gap:var(--sp-2)}.admin-user-row{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-4);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);transition:border-color var(--t-fast) var(--ease-out)}.admin-user-row--self{border-color:rgb(var(--accent-rgb) / .25)}.admin-user-avatar{width:40px;height:40px;border-radius:50%;background:var(--bg-overlay);border:1.5px solid var(--border-default);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:var(--text-secondary);flex-shrink:0}.admin-user-row--self .admin-user-avatar{background:var(--accent-dim);border-color:rgb(var(--accent-rgb) / .3);color:var(--accent)}.admin-user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.admin-user-name{font-size:.9375rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-user-badges{display:flex;gap:6px;flex-wrap:wrap}.admin-badge{display:inline-flex;align-items:center;gap:4px;font-size:.6875rem;font-weight:700;padding:2px 8px;border-radius:var(--r-full)}.admin-badge--admin{background:var(--accent-dim);color:var(--accent);border:1px solid rgb(var(--accent-rgb) / .25)}.admin-badge--you{background:var(--brand-red-dim);color:var(--brand-red);border:1px solid rgb(200 16 46 / .18)}.admin-delete-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-subtle);color:var(--text-muted);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out),background var(--t-fast) var(--ease-out)}.admin-delete-btn:hover:not(:disabled){border-color:var(--incorrect);color:var(--incorrect);background:var(--incorrect-dim)}.admin-delete-btn:disabled{opacity:.25;cursor:not-allowed}.admin-loading{display:flex;gap:6px;justify-content:center;padding:var(--sp-8) 0}.admin-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:adminDot 1.1s ease-in-out infinite}.admin-dot:nth-child(2){animation-delay:.18s}.admin-dot:nth-child(3){animation-delay:.36s}@keyframes adminDot{0%,80%,to{transform:scale(.5);opacity:.25}40%{transform:scale(1);opacity:1}}.admin-error{font-size:.9375rem;color:var(--incorrect-text);text-align:center;padding:var(--sp-6) 0}.admin-user-email{display:block;font-size:.8125rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-badge--inactive{background:var(--incorrect-dim);color:var(--incorrect-text)}.admin-activate-btn{flex-shrink:0;padding:7px 12px;border-radius:var(--r-sm);background:var(--accent);color:var(--text-inverse);font-size:.8125rem;font-weight:600}.admin-activate-btn:hover{background:var(--accent-light)}.ap-header-spacer{width:36px}.admin-body--wide>*{max-width:1120px}.ap-tabs{display:flex;gap:2px;padding:0 clamp(12px,3vw,24px);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);overflow-x:auto;flex-shrink:0;scrollbar-width:none}.ap-tab{padding:12px 14px;font-weight:600;font-size:.9375rem;color:var(--text-secondary);border-bottom:3px solid transparent;border-radius:0;white-space:nowrap}.ap-tab:hover{color:var(--text-primary)}.ap-tab--on{color:var(--accent);border-bottom-color:var(--accent)}.ap-h2{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--text-primary)}.ap-h3{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--sp-2)}.ap-muted{color:var(--text-muted);font-size:.875rem;font-weight:400}.ap-eyebrow{font-size:.6875rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ch, var(--accent))}.ap-notice{padding:10px 14px;border-radius:var(--r-md);background:var(--accent-dim);color:var(--text-primary);font-size:.9rem;cursor:pointer}.ap-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap}.ap-toolbar--sticky{position:sticky;top:calc(-1 * var(--sp-6));z-index:2;padding:var(--sp-3) 0;background:var(--bg-base)}.ap-row{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.ap-row--end{justify-content:flex-end}.ap-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:clamp(16px,2.5vw,24px);display:flex;flex-direction:column;gap:var(--sp-3)}.ap-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--r-btn);background:var(--accent);color:var(--text-inverse);font-weight:700;font-size:.875rem;text-decoration:none}.ap-btn:hover:not(:disabled){background:var(--accent-light)}.ap-btn:disabled{opacity:.5;cursor:default}.ap-btn--ghost{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-default)}.ap-btn--ghost:hover:not(:disabled){background:var(--bg-overlay)}.ap-link{color:var(--accent);font-weight:600;font-size:.875rem;padding:2px 4px;white-space:nowrap}.ap-link:hover{text-decoration:underline;text-underline-offset:3px}.ap-link--danger{color:var(--incorrect-text)}.ap-icon-btn{width:32px;height:32px;border-radius:var(--r-md);border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ap-icon-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.ap-icon-btn:disabled{opacity:.35;cursor:default}.ap-icon-btn--danger:hover:not(:disabled){border-color:var(--incorrect);color:var(--incorrect)}.admin-new-btn{border-radius:var(--r-btn)}.ap-seg{display:inline-flex;padding:3px;border-radius:var(--r-md);background:var(--bg-overlay)}.ap-seg-btn{padding:6px 12px;border-radius:var(--r-sm);font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.ap-seg-btn--on{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm)}.ap-tiles{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.ap-tile{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:var(--sp-4);display:flex;flex-direction:column;gap:2px}.ap-tiles--small .ap-tile{background:var(--bg-raised);padding:var(--sp-3)}.ap-tile-label{font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.ap-tile-value{font-family:var(--font-display);font-size:1.75rem;font-weight:700;color:var(--text-primary);line-height:1.15}.ap-tiles--small .ap-tile-value{font-size:1.35rem}.ap-tile-sub{font-size:.75rem;color:var(--text-muted)}.ap-charts{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.ap-chart{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:var(--sp-4);margin:0}.ap-chart-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-2);margin-bottom:var(--sp-3)}.ap-chart-title{font-weight:700;font-size:.9375rem;color:var(--text-primary)}.ap-chart-total{font-size:.8125rem;color:var(--text-muted)}.ap-chart-plot{position:relative;height:140px}.ap-chart-plot svg{width:100%;height:100%;display:block;overflow:visible}.ap-chart-max{position:absolute;top:-2px;left:0;font-size:.6875rem;color:var(--text-muted);background:var(--bg-surface);padding-right:4px;z-index:1}.ap-grid{stroke:var(--border-subtle);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.ap-axis{stroke:var(--border-default);stroke-width:1;vector-effect:non-scaling-stroke}.ap-hit{fill:transparent}.ap-bar{fill:var(--accent);opacity:.85;transition:opacity var(--t-fast)}.ap-bar--on{opacity:1}.ap-chart-plot:hover .ap-bar:not(.ap-bar--on){opacity:.45}.ap-chart-x{display:flex;justify-content:space-between;font-size:.6875rem;color:var(--text-muted);margin-top:4px}.ap-tip{position:absolute;top:-6px;transform:translate(-50%,-100%);padding:6px 10px;border-radius:var(--r-md);background:var(--text-primary);color:var(--bg-surface);font-size:.75rem;line-height:1.35;white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-md);z-index:3}.ap-tip span{opacity:.75}.ap-hbars{list-style:none;display:flex;flex-direction:column;gap:var(--sp-3)}.ap-hbar{display:grid;grid-template-columns:minmax(140px,260px) 1fr 110px;align-items:center;gap:var(--sp-3)}.ap-hbar-label{font-size:.875rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ap-hbar-track{height:10px;border-radius:0 4px 4px 0;background:var(--bg-overlay);overflow:hidden}.ap-hbar-fill{display:block;height:100%;background:var(--accent);border-radius:0 4px 4px 0}.ap-hbar-value{font-size:.875rem;font-weight:700;color:var(--text-primary);display:flex;flex-direction:column;text-align:right}.ap-hbar-value small{font-weight:400;color:var(--text-muted);font-size:.75rem}@media (max-width: 640px){.ap-hbar{grid-template-columns:1fr 80px}.ap-hbar-track{grid-column:1 / -1;grid-row:2}}.ap-table-wrap{overflow-x:auto;border:1px solid var(--border-subtle);border-radius:var(--r-lg);background:var(--bg-surface)}.ap-table{width:100%;border-collapse:collapse;font-size:.875rem}.ap-table th,.ap-table td{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border-subtle)}.ap-table th{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--bg-raised)}.ap-table tr:last-child td{border-bottom:none}.ap-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.ap-table--questions td:first-child{min-width:260px}.ap-qlink{text-align:left;color:var(--text-primary);font-weight:600;line-height:1.4}.ap-qlink:hover{color:var(--accent)}.ap-actions{white-space:nowrap;text-align:right}.ap-row-deleted td{opacity:.6}.ap-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.ap-badge{padding:1px 7px;border-radius:var(--r-sm);font-size:.6875rem;font-weight:700;background:var(--bg-overlay);color:var(--text-secondary)}.ap-badge--edit{background:var(--accent-dim);color:var(--accent)}.ap-badge--warn{background:var(--incorrect-dim);color:var(--incorrect-text)}.ap-filters{display:grid;gap:var(--sp-2);grid-template-columns:2fr repeat(4,minmax(130px,1fr))}@media (max-width: 900px){.ap-filters{grid-template-columns:1fr 1fr}.ap-search{grid-column:1 / -1}}.ap-filters input,.ap-filters select,.ap-form input[type=text],.ap-form textarea,.ap-form select,.ap-faq input,.ap-faq textarea{width:100%;padding:9px 12px;border:1px solid var(--border-default);border-radius:var(--r-md);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:.9375rem}.ap-form textarea,.ap-faq textarea{resize:vertical;line-height:1.5}.ap-filters input:focus,.ap-filters select:focus,.ap-form input:focus,.ap-form textarea:focus,.ap-form select:focus,.ap-faq input:focus,.ap-faq textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.ap-pager{display:flex;justify-content:center;align-items:center;gap:var(--sp-4)}.ap-form{display:flex;flex-direction:column;gap:var(--sp-4)}.ap-field{display:flex;flex-direction:column;gap:6px}.ap-field>span{font-size:.8125rem;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:var(--sp-2)}.ap-reset{margin-left:auto;font-size:.75rem}.ap-check{display:flex;align-items:center;gap:var(--sp-2);font-size:.9375rem;color:var(--text-primary)}.ap-check input{width:18px;height:18px;accent-color:var(--accent)}.ap-grid2{display:grid;gap:var(--sp-3);grid-template-columns:1fr 1fr;align-items:end}.ap-grid-chapter{display:grid;gap:var(--sp-3);grid-template-columns:80px 1fr 150px}.ap-grid-section{display:grid;gap:var(--sp-3);grid-template-columns:90px 1fr 220px}@media (max-width: 640px){.ap-grid2,.ap-grid-section{grid-template-columns:1fr}.ap-grid-chapter{grid-template-columns:70px 1fr}}.ap-color{display:flex;align-items:center;gap:var(--sp-2)}.ap-color input[type=color]{width:44px;height:38px;padding:2px;border:1px solid var(--border-default);border-radius:var(--r-md);background:var(--bg-surface)}.ap-inline-form{padding:var(--sp-3);border-radius:var(--r-md);background:var(--bg-raised);border:1px solid var(--border-subtle)}.ap-options{border:none;display:flex;flex-direction:column;gap:var(--sp-2)}.ap-options legend{font-size:.8125rem;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.ap-option{display:flex;align-items:center;gap:var(--sp-2);padding:6px 8px;border-radius:var(--r-md);border:1.5px solid var(--border-subtle)}.ap-option input[type=radio]{width:18px;height:18px;accent-color:var(--correct);flex-shrink:0}.ap-option input[type=text]{border:none;padding:6px;background:transparent}.ap-option input[type=text]:focus{box-shadow:none}.ap-option-key{width:26px;height:26px;flex-shrink:0;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;background:var(--bg-overlay);color:var(--text-secondary)}.ap-option--right{border-color:var(--correct);background:var(--correct-dim)}.ap-option--right .ap-option-key{background:var(--correct);color:#fff}.ap-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);font-size:.875rem;color:var(--text-secondary)}.ap-meta audio{height:36px;max-width:100%}.ap-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);background:#00000059;display:flex;justify-content:flex-end}.ap-drawer{width:min(640px,100%);height:100%;overflow-y:auto;background:var(--bg-surface);padding:clamp(16px,3vw,28px);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:var(--sp-4);animation:ap-slide var(--t-slow) var(--ease-out)}@keyframes ap-slide{0%{transform:translate(40px);opacity:0}to{transform:none;opacity:1}}.ap-drawer-head{display:flex;justify-content:space-between;align-items:center}.ap-chapter{border-top:4px solid var(--ch)}.ap-chapter--hidden{border-top-style:dashed}.ap-chapter--hidden .ap-chapter-head{opacity:.7}.ap-chapter-head{display:flex;gap:var(--sp-4);align-items:flex-start}.ap-chapter-icon{width:48px;height:48px;flex-shrink:0;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:color-mix(in srgb,var(--ch) 13%,transparent)}.ap-chapter-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ap-chapter-actions{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap;justify-content:flex-end}@media (max-width: 640px){.ap-chapter-head{flex-wrap:wrap}.ap-chapter-actions{width:100%;justify-content:flex-start}}.ap-sections{list-style:none;display:flex;flex-direction:column;border-top:1px solid var(--border-subtle);padding-top:var(--sp-2)}.ap-sections li{padding:6px 0;border-bottom:1px solid var(--border-subtle)}.ap-sections li:last-child{border-bottom:none}.ap-section-row{display:flex;align-items:center;gap:var(--sp-3)}.ap-section-name{flex:1;min-width:0;font-size:.9375rem;color:var(--text-primary)}.ap-section-name em{color:var(--text-muted);font-style:normal}.ap-section--hidden .ap-section-name{color:var(--text-muted)}.ap-faq{display:flex;gap:var(--sp-3);align-items:flex-start;padding:var(--sp-3) 0;border-bottom:1px solid var(--border-subtle)}.ap-faq-fields{flex:1;display:flex;flex-direction:column;gap:var(--sp-2)}.ap-faq-actions{display:flex;flex-direction:column;gap:4px}.ap-faq input{font-weight:600}.admin-body>.ap-drawer-backdrop{max-width:none;width:auto}.ap-row--end>.admin-cancel-btn,.ap-row--end>.admin-submit-btn,.ap-toolbar .admin-submit-btn{flex:0 0 auto;width:auto;min-width:110px;padding-left:20px;padding-right:20px}.ap-grid-featured{grid-template-columns:80px 1fr}.ap-hint{margin-top:6px;padding:6px 10px;border-radius:var(--r-md);background:var(--incorrect-dim);color:var(--incorrect-text);font-size:.8125rem}.ap-hint--inline{margin:0;padding:2px 8px;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.au-filters{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center}.au-filters .ap-search{flex:1 1 240px;min-width:0}.au-filters input,.au-filters select{padding:9px 12px;border:1px solid var(--border-default);border-radius:var(--r-md);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:.875rem}.au-filters input:focus,.au-filters select:focus{outline:none;border-color:var(--accent)}.au-seg{flex-wrap:wrap}.au-count{margin-left:6px;padding:0 6px;border-radius:99px;font-size:.6875rem;background:var(--bg-overlay);color:var(--text-muted)}.ap-seg-btn--on .au-count{background:var(--accent-dim);color:var(--accent)}.au-bulk{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:10px 14px;border:1px solid rgb(var(--accent-rgb) / .3);border-radius:var(--r-md);background:var(--bg-surface);box-shadow:var(--shadow-md);font-size:.9rem}.au-btn-danger{background:var(--incorrect)}.au-btn-danger:hover:not(:disabled){background:var(--incorrect-text)}.au-loading{opacity:.6;transition:opacity var(--t-fast)}.au-table td{vertical-align:middle}.au-check{width:36px}.au-check input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.au-row--selected td{background:var(--accent-dim)}.au-user{display:flex;align-items:center;gap:var(--sp-3);min-width:200px}.au-avatar{width:34px;height:34px;flex:none;font-size:.875rem}.au-user-text{display:flex;flex-direction:column;min-width:0}.au-name{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-weight:600;color:var(--text-primary)}.au-email{font-size:.8125rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.au-status{display:inline-block;padding:2px 8px;border-radius:99px;font-size:.75rem;font-weight:700;white-space:nowrap}.au-status--on{background:var(--correct-dim);color:var(--correct-text)}.au-status--off{background:var(--incorrect-dim);color:var(--incorrect-text)}.au-nowrap{white-space:nowrap}.au-pct{display:block;font-size:.75rem;color:var(--text-muted)}.au-actions{display:flex;justify-content:flex-end;gap:var(--sp-3)}.au-actions .ap-link:disabled{opacity:.5}.au-empty{padding:var(--sp-8) var(--sp-4)!important;text-align:center!important;color:var(--text-muted)}.au-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3)}.au-pager-nav{gap:var(--sp-2)}.au-page{font-size:.875rem;font-weight:600;padding:0 var(--sp-2);white-space:nowrap}.au-perpage{display:flex;align-items:center;gap:var(--sp-2)}.au-perpage select{padding:6px 8px;border:1px solid var(--border-default);border-radius:var(--r-md);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:.875rem}.au-form-grid{display:grid;gap:0 var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media (max-width: 640px){.au-hide-sm{display:none}.au-actions{flex-direction:column;align-items:flex-end;gap:6px}.au-email{max-width:160px}.au-pager{justify-content:center}}.an-shell{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-base)}.an-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);background:var(--bg-base);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.an-back-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.an-back-btn:hover{border-color:var(--accent);color:var(--accent)}.an-title{font-size:1rem;font-weight:700;color:var(--text-primary)}.an-refresh-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--accent-dim);border:1.5px solid rgb(var(--accent-rgb) / .3);border-radius:var(--r-md);color:var(--accent);font-size:.875rem;font-weight:600;transition:background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}.an-refresh-btn:hover:not(:disabled){background:rgb(var(--accent-rgb) / .22);border-color:var(--accent)}.an-refresh-btn:disabled{opacity:.6;cursor:default}.an-refresh-btn--loading svg{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.an-body{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-5) var(--sp-5) var(--sp-12)}.an-body>*+*{margin-top:var(--sp-5)}.an-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4);text-align:center;padding:var(--sp-10) var(--sp-6)}.an-empty-icon{color:var(--text-muted);opacity:.5}.an-empty-title{font-size:1.125rem;font-weight:700;color:var(--text-primary)}.an-empty-sub{font-size:.9375rem;color:var(--text-muted);line-height:1.5;max-width:280px}.an-start-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:var(--accent);color:var(--text-inverse);border-radius:var(--r-lg);font-size:.9375rem;font-weight:700;margin-top:var(--sp-2);transition:opacity var(--t-fast) var(--ease-out)}.an-start-btn:hover{opacity:.88}.an-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4);padding:var(--sp-12) 0}.an-loading-text{font-size:.9375rem;color:var(--text-muted)}.an-error{color:var(--incorrect-text);font-size:.9375rem;padding:var(--sp-4)}.an-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.an-stat-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:var(--sp-4);display:flex;flex-direction:column;gap:4px}.an-stat-value{font-family:var(--font-display);font-size:2rem;font-weight:400;color:var(--accent);line-height:1;letter-spacing:-.02em}.an-stat-label{font-size:.8125rem;color:var(--text-muted);font-weight:500}.an-recs{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg)}.an-section-label{font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-1)}.an-rec-item{display:flex;align-items:flex-start;gap:var(--sp-3);font-size:.9rem;color:var(--text-secondary);line-height:1.5}.an-rec-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:7px}.an-tabs{display:flex;gap:var(--sp-2);overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.an-tabs::-webkit-scrollbar{display:none}.an-tab{flex-shrink:0;padding:8px 14px;border-radius:var(--r-md);border:1px solid var(--border-subtle);font-size:.8125rem;font-weight:600;color:var(--text-secondary);background:var(--bg-surface);white-space:nowrap;transition:background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.an-tab:hover{border-color:var(--accent);color:var(--accent)}.an-tab--active{background:var(--accent);border-color:var(--accent);color:var(--text-inverse)}.an-tab-content{display:block}.an-tab-content>*+*{margin-top:var(--sp-2)}.an-empty-tab{font-size:.9375rem;color:var(--text-muted);padding:var(--sp-4) 0;text-align:center}.an-cat-row{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4) var(--sp-5);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg)}.an-cat-top{display:flex;justify-content:space-between;align-items:baseline}.an-cat-name{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.an-cat-pct{font-size:.875rem;font-weight:700}.an-cat-track{width:100%;height:6px;background:var(--bg-overlay);border-radius:3px;overflow:hidden}.an-cat-fill{height:100%;border-radius:3px;transition:width .6s var(--ease-out);min-width:2px}.an-cat-sub{font-size:.75rem;color:var(--text-muted)}.an-q-row{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:var(--sp-4) var(--sp-5);cursor:pointer;transition:border-color var(--t-fast) var(--ease-out)}.an-q-row:hover{border-color:var(--accent)}.an-q-row-top{display:flex;align-items:flex-start;gap:var(--sp-3)}.an-q-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:6px}.an-q-text{flex:1;font-size:.9rem;color:var(--text-primary);line-height:1.45}.an-q-score{font-size:.8125rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.an-q-detail{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--border-subtle)}.an-q-label{font-size:.8125rem;font-weight:700;color:var(--accent)}.an-q-explanation{font-size:.875rem;color:var(--text-secondary);line-height:1.5}.an-q-answer{font-size:.875rem;color:var(--text-primary)}.an-q-opt{font-size:.8125rem;color:var(--text-muted)}.an-q-wrong-dist{font-size:.8125rem;color:var(--incorrect-text)}.an-q-cat{font-size:.75rem;color:var(--text-muted);margin-top:2px}@media (max-width: 400px){.an-stat-value{font-size:1.625rem}.an-summary-grid{grid-template-columns:1fr 1fr;gap:var(--sp-2)}}.ge-intro{padding:clamp(32px,6vw,64px) 0 var(--sp-8)}.ge-h3{font-size:1.0625rem;font-weight:700;margin:var(--sp-6) 0 var(--sp-3)}.ge-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px;margin:var(--sp-6) 0 var(--sp-4);background:var(--bg-overlay);border-radius:var(--r-md)}.ge-tab{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:calc(var(--r-md) - 4px);font-weight:700;color:var(--text-secondary);text-align:center}.ge-tab small{font-weight:500;font-size:.75rem;color:var(--text-muted)}.ge-tab--on{background:var(--bg-surface);color:var(--accent);box-shadow:0 1px 4px rgb(var(--shadow-rgb) / .15)}.ge-random{display:flex;align-items:center;gap:var(--sp-4);width:100%;padding:var(--sp-5);border-radius:var(--r-md);color:#fff;text-align:left;background:linear-gradient(140deg,var(--hero-from) 0%,var(--hero-to) 100%);box-shadow:0 8px 22px rgb(var(--accent-rgb) / .25);transition:transform var(--t-fast) var(--ease-out)}.ge-random:hover:not(:disabled){transform:translateY(-1px)}.ge-random:disabled{opacity:.7;cursor:wait}.ge-random-icon{font-size:2rem}.ge-random strong{display:block;font-size:1.125rem}.ge-random small{opacity:.85}.ge-exams{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--sp-3)}.ge-exam{display:flex;flex-direction:column;gap:2px;padding:var(--sp-4);text-align:left;background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:var(--r-md);transition:border-color var(--t-fast),transform var(--t-fast) var(--ease-out)}.ge-exam:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}.ge-exam strong{text-transform:capitalize}.ge-exam small{color:var(--text-muted)}.ge-run{padding-block:var(--sp-6) var(--sp-10)}.ge-run-head{margin-bottom:var(--sp-5)}.ge-run-title{font-family:var(--font-display);font-weight:600;font-size:1.25rem}.ge-run-count{display:flex;justify-content:space-between;margin-top:4px;color:var(--text-secondary);font-size:.9rem}.ge-run-score{color:var(--correct);font-weight:700}.ge-bar{height:6px;margin-top:var(--sp-2);background:var(--bg-overlay);border-radius:99px;overflow:hidden}.ge-bar span{display:block;height:100%;background:var(--accent);transition:width var(--t-slow) var(--ease-out)}.ge-link{float:right;color:var(--text-muted);font-size:.875rem;text-decoration:underline}.ge-link:hover{color:var(--accent)}.ge-feedback{display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-3);margin-top:var(--sp-5)}.ge-ok{color:var(--correct);font-weight:700}.ge-bad{color:var(--incorrect);font-weight:700}.ge-done{padding-block:clamp(32px,6vw,56px) var(--sp-10)}.ge-score{margin:var(--sp-3) 0 var(--sp-2);font-family:var(--font-display);font-size:clamp(3rem,10vw,4.5rem);font-weight:700;color:var(--text-muted);line-height:1}.ge-score strong{color:var(--incorrect)}.ge-score--pass strong{color:var(--correct)}.ge-cta{margin:var(--sp-8) 0;padding:var(--sp-6);border-radius:var(--r-md);color:#fff;background:linear-gradient(140deg,var(--hero-from) 0%,var(--hero-to) 100%)}.ge-cta h2{font-family:var(--font-display);font-weight:600;font-size:1.5rem}.ge-cta p{margin:var(--sp-2) 0 var(--sp-5);opacity:.9;line-height:1.6}.ge-cta-btns{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.ge-review ol{display:flex;flex-direction:column;gap:var(--sp-3);padding-left:0;list-style:none}.ge-review li{padding:var(--sp-4);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-md)}.ge-review li p{font-size:.9375rem;line-height:1.5}.ge-review-q{font-weight:600;margin-bottom:var(--sp-2)}.ge-review .ge-ok,.ge-review .ge-bad{font-weight:500}@media (max-width: 480px){.ge-cta-btns .lp-btn{width:100%}.ge-tab{font-size:.875rem}}.ge-past-random{width:100%;margin-top:var(--sp-3)}.ge-past-random strong{text-transform:none}.app{height:100%;display:flex;flex-direction:column}.page-transition{flex:1;display:flex;flex-direction:column;height:100%;animation:pageIn .32s cubic-bezier(.16,1,.3,1) both}@keyframes pageIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.page-loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:var(--bg-base);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;animation:loaderIn .18s ease both}.page-loader.fade-out{animation:loaderOut .28s cubic-bezier(.16,1,.3,1) both;pointer-events:none}@keyframes loaderIn{0%{opacity:0}to{opacity:1}}@keyframes loaderOut{0%{opacity:1}to{opacity:0}}.page-loader-dots{display:flex;gap:7px;align-items:center}.page-loader-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:loaderDot 1.1s ease-in-out infinite}.page-loader-dot:nth-child(2){animation-delay:.18s}.page-loader-dot:nth-child(3){animation-delay:.36s}@keyframes loaderDot{0%,80%,to{transform:scale(.5);opacity:.25}40%{transform:scale(1);opacity:1}}.page-loader-flag{width:40px;height:29px;border-radius:5px;overflow:hidden;box-shadow:0 2px 10px rgb(var(--shadow-rgb) / .18)}@media (prefers-reduced-motion: reduce){.page-transition,.page-loader,.page-loader.fade-out{animation:none}.page-loader-dot{animation:none;opacity:.5}}.lp-nav,.quiz-header,.settings-header,.admin-header,.an-header{border-top:4px solid var(--brand-red)}.lp-hero-title,.th-hero-title,.lp-h2,.lp-cta h2,.login-brand h1,.login-brand h2{font-weight:800;letter-spacing:-.02em}.lp-btn--primary,.new-session-btn{box-shadow:none}.lp-btn--primary:hover,.new-session-btn:hover{background:var(--accent-light)}.lp-eyebrow,.quiz-topic-title{letter-spacing:.12em}.lp-h2:after{content:"";display:block;width:48px;height:4px;margin-top:14px;background:var(--brand-red)}.lp-cta h2:after{display:none}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-500-normal-CGugC8dq.woff2) format("woff2"),url(/assets/archivo-latin-500-normal-pkzA7jw9.woff) format("woff")}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-latin-600-normal-3BBy0ZsW.woff2) format("woff2"),url(/assets/archivo-latin-600-normal-DwYieO8P.woff) format("woff")}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-latin-700-normal-D9cHMWGj.woff2) format("woff2"),url(/assets/archivo-latin-700-normal-lT5TFe7H.woff) format("woff")}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/archivo-latin-800-normal-cB6v3kRN.woff2) format("woff2"),url(/assets/archivo-latin-800-normal-DZa_k145.woff) format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-400-normal-DQi5PRDE.woff2) format("woff2"),url(/assets/source-sans-3-latin-400-normal-RR2C27NP.woff) format("woff")}@font-face{font-family:"Source Sans 3";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-400-italic-bFKvakRX.woff2) format("woff2"),url(/assets/source-sans-3-latin-400-italic-V6AhVXnr.woff) format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/source-sans-3-latin-500-normal-DiWS0tcR.woff2) format("woff2"),url(/assets/source-sans-3-latin-500-normal-BHNJO6aI.woff) format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-600-normal-DeckBYAU.woff2) format("woff2"),url(/assets/source-sans-3-latin-600-normal-Ck0n4g8U.woff) format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-latin-700-normal-CkzU-mV9.woff2) format("woff2"),url(/assets/source-sans-3-latin-700-normal-B-h9tW5h.woff) format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/source-sans-3-latin-800-normal-5BN8XjkS.woff2) format("woff2"),url(/assets/source-sans-3-latin-800-normal-hEWlT0gE.woff) format("woff")}:root{color-scheme:light;--fg-rgb: 20 20 22;--accent-rgb: 200 16 46;--correct-rgb: 22 122 74;--incorrect-rgb: 180 35 24;--shadow-rgb: 20 20 22;--bg-base: #f6f5f3;--bg-surface: #ffffff;--bg-raised: #fbfaf9;--bg-overlay: #eeedea;--bg-sheet: #ffffff;--bg-header: rgb(255 255 255 / .94);--hero-from: #a90d27;--hero-to: #c8102e;--hero-cross: rgb(255 255 255 / .1);--brand-red: #c8102e;--brand-red-dim: rgb(200 16 46 / .08);--accent: #c8102e;--accent-light: #a90d27;--accent-dim: rgb(var(--accent-rgb) / .08);--accent-glow: rgb(var(--accent-rgb) / .2);--accent-strong: rgb(var(--accent-rgb) / .92);--correct: #167a4a;--correct-dim: rgb(var(--correct-rgb) / .1);--correct-glow: rgb(var(--correct-rgb) / .24);--correct-text: #0f6239;--correct-solid: #167a4a;--correct-sheet: #eef7f1;--incorrect: #b42318;--incorrect-dim: rgb(var(--incorrect-rgb) / .08);--incorrect-glow: rgb(var(--incorrect-rgb) / .22);--incorrect-text: #9a1d14;--incorrect-sheet:#fdf0ee;--text-primary: #141416;--text-secondary: #4a4a50;--text-muted: #85858c;--text-inverse: #ffffff;--border-subtle: rgb(var(--fg-rgb) / .09);--border-default: rgb(var(--fg-rgb) / .15);--border-strong: rgb(var(--fg-rgb) / .26);--shadow-sm: 0 1px 2px rgb(var(--shadow-rgb) / .05);--shadow-md: 0 2px 4px rgb(var(--shadow-rgb) / .04), 0 6px 16px rgb(var(--shadow-rgb) / .06);--shadow-lg: 0 4px 10px rgb(var(--shadow-rgb) / .05), 0 16px 36px rgb(var(--shadow-rgb) / .1);--ch-1: #9c4a1c;--ch-2: #1f3d6b;--ch-3: #2c6a45;--ch-4: #1d6b75;--ch-5: #74376a;--ch-6: #c8102e;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-7: 28px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px;--r-sm: 4px;--r-md: 6px;--r-lg: 8px;--r-xl: 12px;--r-btn: 6px;--r-full: 999px;--font-display: "Archivo", "Arial Narrow", system-ui, sans-serif;--font-ui: "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--t-fast: .13s;--t-base: .2s;--t-slow: .34s;--t-sheet: .42s;--z-header: 20;--z-overlay: 40;--z-sheet: 60;--z-toast: 80}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--fg-rgb: 255 255 255;--accent-rgb: 232 52 75;--correct-rgb: 61 196 128;--incorrect-rgb: 255 107 94;--shadow-rgb: 0 0 0;--bg-base: #121214;--bg-surface: #1b1b1e;--bg-raised: #222226;--bg-overlay: #2c2c31;--bg-sheet: #1b1b1e;--bg-header: rgb(18 18 20 / .92);--hero-from: #7d0a1e;--hero-to: #a90d27;--hero-cross: rgb(255 255 255 / .1);--brand-red: #ef4058;--brand-red-dim: rgb(239 64 88 / .14);--accent: #e8344b;--accent-light: #f0566a;--correct: #3dc480;--correct-text: #7ee2ad;--correct-solid: #23a066;--correct-sheet: #13241b;--incorrect: #ff6b5e;--incorrect-text: #ffa59c;--incorrect-sheet:#2a1816;--text-primary: #f2f2f3;--text-secondary: #b0b0b8;--text-muted: #7a7a84;--text-inverse: #ffffff;--ch-1: #e08a5f;--ch-2: #7fa6e0;--ch-3: #5fbf86;--ch-4: #5cc0cf;--ch-5: #cf8ac4;--ch-6: #ef4058}}:root[data-theme=dark]{color-scheme:dark;--fg-rgb: 255 255 255;--accent-rgb: 232 52 75;--correct-rgb: 61 196 128;--incorrect-rgb: 255 107 94;--shadow-rgb: 0 0 0;--bg-base: #121214;--bg-surface: #1b1b1e;--bg-raised: #222226;--bg-overlay: #2c2c31;--bg-sheet: #1b1b1e;--bg-header: rgb(18 18 20 / .92);--hero-from: #7d0a1e;--hero-to: #a90d27;--hero-cross: rgb(255 255 255 / .1);--brand-red: #ef4058;--brand-red-dim: rgb(239 64 88 / .14);--accent: #e8344b;--accent-light: #f0566a;--correct: #3dc480;--correct-text: #7ee2ad;--correct-solid: #23a066;--correct-sheet: #13241b;--incorrect: #ff6b5e;--incorrect-text: #ffa59c;--incorrect-sheet:#2a1816;--text-primary: #f2f2f3;--text-secondary: #b0b0b8;--text-muted: #7a7a84;--text-inverse: #ffffff;--ch-1: #e08a5f;--ch-2: #7fa6e0;--ch-3: #5fbf86;--ch-4: #5cc0cf;--ch-5: #cf8ac4;--ch-6: #ef4058}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{height:100%;overscroll-behavior:none}body{height:100%;font-family:var(--font-ui);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-base);color:var(--text-primary);overscroll-behavior:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}#root{height:100%;display:flex;flex-direction:column}button{cursor:pointer;font-family:var(--font-ui);font-size:inherit;border:none;background:none;color:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}input,select,textarea{font-family:var(--font-ui);font-size:max(1rem,16px);-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:4px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
