:root{font-family:system-ui,'Noto Sans Devanagari',sans-serif;color:#18324d;background:#eaf5ff}*{box-sizing:border-box}body{margin:0;background:linear-gradient(145deg,#dff5ff,#fff4d9);min-height:100vh}.wrap{max-width:760px;margin:auto;padding:18px}.hero{background:#176eaa;color:#fff;padding:23px;border-radius:22px;text-align:center;box-shadow:0 8px 24px #23658b30}.hero h1{margin:0;font-size:clamp(25px,5vw,36px)}.hero p{margin:8px 0 0}.panel{background:#fff;border-radius:20px;padding:22px;margin-top:18px;box-shadow:0 7px 20px #24546d18}h2{margin:0 0 15px}label{font-weight:700;display:block;margin:13px 0 6px}input,select{width:100%;border:2px solid #c7dce9;border-radius:12px;padding:13px;font-size:17px;background:#fff}button{cursor:pointer;border:0;border-radius:13px;padding:13px 17px;font-size:17px;font-weight:700;background:#147eac;color:#fff}button:disabled{opacity:.5;cursor:not-allowed}.primary{width:100%;background:#15845c;margin-top:18px}.secondary{background:#edf5ff;color:#185b86}.full{width:100%;margin-top:10px}.toolbar{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0}.toolbar button{flex:1}.muted{color:#52677a}.question{font-size:clamp(27px,6vw,40px);font-weight:800;text-align:center;margin:24px 0}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.options button{min-height:66px;background:#f0f7ff;color:#163f61;border:2px solid #c8dff4;font-size:24px}.options button.correct{background:#c8f3d9;border-color:#24834d}.options button.wrong{background:#ffe0dd;border-color:#c94a42}.feedback{padding:15px;border-radius:14px;margin-top:15px;background:#fff3d3;line-height:1.6}.progress{height:12px;background:#e4edf5;border-radius:30px;overflow:hidden}.bar{height:100%;width:0;background:#24a879;transition:width .2s}.meta{display:flex;justify-content:space-between;gap:10px;margin:12px 0;font-weight:700}.hide{display:none}.score{text-align:center;font-size:35px;font-weight:800;color:#147e73}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{border-bottom:1px solid #dce8ef;text-align:left;padding:10px}th{background:#e8f5ff}.foot{text-align:center;font-size:13px;color:#536d80;margin:18px 0}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffaf31;outline-offset:2px}@media(max-width:380px){.options{gap:8px}.panel{padding:15px}}