:root{--ink:#142033;--muted:#607087;--blue:#164e8b;--cyan:#19a7a0;--paper:#f3f6f8;--card:#fff;--line:#d8e0e8;--good:#147a4b;--bad:#b4232d}*{box-sizing:border-box}body{margin:0;background:linear-gradient(145deg,#eef4f7,#f8fafb 55%,#e9f3f1);color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif}.shell,.index-shell{width:min(1040px,calc(100% - 28px));margin:28px auto 60px}.hero,.index-hero{padding:32px;border-radius:24px;background:linear-gradient(120deg,#0d3158,#176a78);color:white;box-shadow:0 18px 45px #123b5a24}.hero h1,.index-hero h1{margin:9px 0 8px;font-size:clamp(2rem,5vw,3.6rem);line-height:1}.hero p,.index-hero p{max-width:760px;color:#dcecf1}.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800}.back-index{display:inline-block;margin-bottom:22px;color:#d8f5f2;text-decoration:none}.card{margin-top:18px;padding:25px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:0 14px 35px #20364d12}.setup{text-align:center}.rules,.tags{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0}.rules span,.tags span,.theme{padding:7px 11px;border-radius:999px;background:#e5f1f3;color:#174f5a;font-size:.84rem;font-weight:750}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border:1px solid #aebbc8;border-radius:12px;background:#fff;color:var(--ink);font-weight:750;text-decoration:none;cursor:pointer}.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn:disabled{opacity:.42;cursor:not-allowed}.hidden{display:none!important}.status{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:14px 18px}.status span:last-child{text-align:right}.status strong{font-size:1.2rem;color:var(--blue)}.status strong.urgent{color:var(--bad)}.bar{height:7px;margin:12px 4px 0;background:#dbe4eb;border-radius:10px;overflow:hidden}.fill{height:100%;background:linear-gradient(90deg,var(--cyan),var(--blue));transition:.25s}.question-card h2{font-size:clamp(1.25rem,3vw,1.75rem);line-height:1.35}.options{display:grid;gap:11px;margin:22px 0}.option{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:12px;width:100%;padding:13px;text-align:left;border:1px solid #c7d2dd;border-radius:14px;background:#fff;color:var(--ink);font-size:1rem;cursor:pointer}.option:hover:not(:disabled){border-color:var(--blue);transform:translateY(-1px)}.letter{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e8eef5;font-weight:800}.option.correct{border-color:#44a176;background:#effaf4}.option.correct .letter{background:var(--good);color:#fff}.option.wrong{border-color:#db6870;background:#fff2f3}.option.wrong .letter{background:var(--bad);color:#fff}.feedback{margin:16px 0;padding:16px;border-radius:14px}.feedback.good{background:#eaf8f0;border-left:5px solid var(--good)}.feedback.bad{background:#fff0f1;border-left:5px solid var(--bad)}.feedback p{margin:8px 0}.reference{font-size:.88rem;color:var(--muted)}.nav,.actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:20px}.score{margin:12px 0;font-size:clamp(2.5rem,8vw,5rem);font-weight:900;color:var(--blue)}.review article{margin:12px 0;padding:16px;border:1px solid var(--line);border-radius:14px}.review article p{margin:7px 0}.review small{color:var(--muted)}.test-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:22px}.test-card{display:flex;flex-direction:column;gap:7px;min-height:145px;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 12px 28px #23384c10;transition:.2s}.test-card:hover{transform:translateY(-3px);border-color:var(--cyan)}.test-card span{color:var(--blue);font-size:.8rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em}.test-card strong{font-size:1.16rem}.test-card small{margin-top:auto;color:var(--muted)}footer{padding:30px 4px;color:var(--muted);text-align:center}@media(max-width:620px){.shell,.index-shell{width:min(100% - 16px,1040px);margin-top:8px}.hero,.index-hero,.card{border-radius:16px;padding:19px}.status{grid-template-columns:1fr auto}.status span:last-child{grid-column:1/-1;text-align:left}.nav .btn{flex:1 1 40%}}.hero .eyebrow{display:block}.back-index{display:block;width:max-content}