:root{color-scheme:dark;--bg:#080e23;--panel:#101e43;--line:#314778;--cyan:#65f1e9;--gold:#ffd184;--muted:#b3c5e6;--text:#f7fbff;--sky:#129ed7;--success:#2ec393}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:Inter,'Segoe UI',Arial,sans-serif;color:var(--text);background:radial-gradient(ellipse at 0% 0%,#20417b 0%,transparent 38%),radial-gradient(ellipse at 100% 70%,#33185a 0%,transparent 45%),var(--bg)}button,select,input{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}a{text-decoration:none;color:inherit}button:disabled{cursor:not-allowed;opacity:.45}.wrap{width:min(1600px,100%);margin:auto;padding:24px clamp(14px,2.4vw,38px)}.topbar{padding:14px clamp(14px,2.4vw,38px);border-bottom:1px solid #38578a88;background:#0a1530ca;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.brand{font-size:clamp(18px,1.8vw,28px);font-weight:950;letter-spacing:.06em}.brand span{color:var(--cyan)}.subbrand{font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--muted);margin-left:16px}.homeLink{padding:9px 12px;border-radius:10px;border:1px solid #5272a5;margin-right:16px;background:#14254a;font-weight:750;font-size:13px}.righthead{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.status{font-size:12px;color:#a3e3dc;border:1px solid #36847c;border-radius:20px;background:#123832;padding:8px 12px;max-width:300px}.ghost,.quiet{border:1px solid #3b5b90;background:#1a2c56;border-radius:12px;padding:11px 14px;font-size:13px;font-weight:800}.primary{background:linear-gradient(110deg,#2ae0d5,#0a9adc);color:#042139;border:0;box-shadow:0 5px 25px #19b1ba29;border-radius:13px;padding:13px 18px;font-weight:950}.speaker{background:#205c75;border:1px solid #4ce1ef;color:#e5ffff;border-radius:13px;padding:13px 17px;font-weight:950;letter-spacing:.025em}.speaker:hover,.primary:hover,.quiet:hover,.ghost:hover{filter:brightness(1.18)}.big{flex:1}.headline{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:20px}.headline h1{margin:11px 0;font-size:clamp(27px,3.1vw,47px);letter-spacing:-.025em}.tag,.libbadge{display:inline-block;background:#3c2b14;color:#ffd18c;border:1px solid #a87730;padding:6px 10px;border-radius:8px;font-size:12px;font-weight:900;letter-spacing:.06em}.subdesc,.subbrand,.muted{color:var(--muted)}.subdesc{font-size:12px;line-height:1.5;max-width:750px;margin:0}.metrics{display:flex;gap:9px}.metrics>div{background:#162850;border:1px solid #3b5683;padding:10px 12px;text-align:center;border-radius:14px;min-width:100px}.metrics strong{font-size:26px;font-variant-numeric:tabular-nums;display:block;color:#fff}.metrics small{font-size:10px;letter-spacing:.08em;color:#abc4e8}.stage{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr);gap:18px;align-items:start}.card{padding:clamp(14px,2vw,27px);background:linear-gradient(180deg,#142653,#0e1b3c);border:1px solid #3b548c;border-radius:24px;box-shadow:0 14px 35px #0004}.eyebrow{font-size:13px;letter-spacing:.08em;font-weight:900;color:var(--gold);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.questiontext{font-size:clamp(23px,2.5vw,43px);font-weight:950;line-height:1.2;letter-spacing:-.025em;min-height:75px;margin:20px 0 12px}.pnum{color:var(--cyan)}.speakbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0 16px}.imagebox{min-height:280px;height:clamp(270px,45vh,510px);background:#f9fbff;border:3px solid #b8d8e7;border-radius:17px;display:flex;align-items:center;justify-content:center;gap:7px;overflow:hidden;padding:5px}.imagebox img{max-width:100%;max-height:100%;height:100%;width:auto;object-fit:contain;min-width:0;flex:1}.imagebox.multiple img{width:50%}.emptyimage{color:#354865;font-size:clamp(21px,2.4vw,38px);font-weight:950;letter-spacing:.02em;text-align:center;padding:18px}.tip{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0;font-size:12px;color:var(--muted);font-weight:900}.tip span{background:#21345c;padding:7px 9px;border-radius:8px}.navBar{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.navBar button:not(.primary){background:#263963;border:1px solid #456294;border-radius:12px;padding:13px 16px;font-weight:800}.ans-label{font-size:13px;color:#92cfea;font-weight:850}.answerbox{border:1px solid #357ca5;border-radius:17px;background:#103450;padding:20px;min-height:140px}.ans{font-size:clamp(29px,3.1vw,49px);font-weight:950;line-height:1.12;color:var(--cyan);margin:14px 0 8px;overflow-wrap:anywhere}.viet{font-size:18px;color:#effaff}.answerbox.covered .ans,.answerbox.covered .viet{visibility:hidden}.answerbox.covered{background:repeating-linear-gradient(135deg,#142f53,#142f53 15px,#18365c 15px,#18365c 30px)}.smalltip{font-size:12px;color:var(--muted);margin-top:-7px;margin-bottom:12px;line-height:1.45}.qaNotice{padding:11px 12px;background:#50391e;border:1px solid #b08b4b;border-radius:12px;color:#ffe3ad;line-height:1.45;font-size:12px;margin:12px 0}.judge{display:flex;gap:7px;flex-wrap:wrap}.judge button{padding:11px 13px;font-weight:850;border-radius:10px;font-size:13px}.correct{background:#146447;border:1px solid #52c99d}.wrong{background:#59343c;border:1px solid #b06d70}.divider{border-top:1px solid #365380;margin:20px 0}.switches{display:flex;gap:8px;margin:12px 0}.toggle{background:#233b67;border:1px solid #4a6b99;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:900}.toggle.chosen{background:#156970;border-color:var(--cyan)}.setting{font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:15px;color:#d0e5fa;margin:14px 0;flex-wrap:wrap}.setting input{flex:1;max-width:210px;accent-color:var(--cyan)}.setting select{background:#20375e;color:#fff;border:1px solid #5275a4;padding:8px;border-radius:8px;min-width:180px;max-width:270px}.extras{margin:12px 0;display:flex;flex-wrap:wrap;gap:8px}.check{color:#b9d2f0;font-size:13px}.check input{accent-color:var(--cyan)}.spaced{margin-top:16px}.jump{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;margin-top:12px}.jump button{border:1px solid #506995;background:#1b3157;border-radius:9px;padding:9px 2px;font-size:12px;font-weight:950;overflow:hidden}.jump button.active{border-color:var(--cyan);background:#145c78;color:#fff}.jump button.done{background:#186249;border-color:#39c394}.jump button.missed{background:#5c3541;border-color:#bf7777}.teacherAnswers{max-height:240px;overflow:auto;border:1px solid #365381;border-radius:12px;margin-top:10px}.teacherAnswers table{width:100%;border-collapse:collapse}.teacherAnswers tr+tr{border-top:1px solid #2e466f}.teacherAnswers td{font-size:12px;padding:7px 9px}.miniTitle{font-size:12px;font-weight:850;margin-top:18px;color:#b9e7ff}footer{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;color:#9db1d2;margin:22px 0 5px;font-size:12px;line-height:1.45}.hero{padding:clamp(23px,5vw,60px);border-radius:30px;border:1px solid #365b99;background:linear-gradient(125deg,#173e72,#0c1c3e 70%);margin:6px 0 20px}.heroEyebrow{color:var(--gold);font-weight:900;font-size:14px;letter-spacing:.13em}.hero h1{font-size:clamp(38px,6vw,83px);line-height:1.05;letter-spacing:-.05em;margin:18px 0}.hero h1 em{font-style:normal;color:var(--cyan)}.hero p{color:#cadaf4;font-size:clamp(15px,1.5vw,21px);line-height:1.5;max-width:890px}.heroStats{display:flex;flex-wrap:wrap;gap:12px;margin-top:23px}.heroStats span{background:#ffffff0e;border:1px solid #5675aa80;border-radius:12px;padding:14px 17px}.heroStats b{font-size:26px;color:#fff;margin-right:4px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.filters input,.filters select{background:#132850;border:1px solid #526c9c;color:#fff;border-radius:12px;padding:15px 17px;font-size:15px}.filters input{min-width:240px;flex:1}.libgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.libcard{display:flex;flex-direction:column;gap:12px;background:linear-gradient(150deg,#1a3260,#0d1c3d);border-radius:20px;border:1px solid #37578a;padding:20px;transition:transform .14s,filter .14s}.libcard:hover{transform:translateY(-3px);filter:brightness(1.16)}.libbadge{align-self:flex-start;font-size:10px}.libtitle{font-size:22px;font-weight:950;line-height:1.2}.libsub{color:#b8cdef;font-size:13px}.libopen{color:var(--cyan);font-size:13px;letter-spacing:.03em;font-weight:900;margin-top:auto}.infobox{background:#1a2945;border:1px solid #42629c;border-radius:19px;padding:22px;margin:24px 0;color:#cce1f7;font-size:14px;line-height:1.6}.emptyList{padding:24px;color:#b8cdf2}@media(max-width:1030px){.stage{grid-template-columns:1fr}.imagebox{height:43vh}.questiontext{font-size:clamp(27px,4.5vw,44px)}}@media(max-width:500px){.subbrand{display:block;margin:3px 0 0}.homeLink{margin-right:6px}.righthead{width:100%}.status{font-size:11px}.metrics>div{min-width:88px}.metrics strong{font-size:22px}.jump{grid-template-columns:repeat(7,1fr)}.imagebox{height:300px}.questiontext{font-size:27px}.navBar button{flex:1}.speakbar button{flex:1}.filters select{width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media print{body{background:#fff;color:#000}.card,.libcard{box-shadow:none;background:#fff;color:#000}.topbar,.speakbar,.judge,.navBar,.jump,.setting,.switches,.extras{display:none}}
