:root{font-family:system-ui,"Segoe UI",sans-serif;color:#102b42;background:#eef7fb;font-synthesis:none;--ink:#102b42;--muted:#456377;--blue:#006d91;--line:#cfe1eb;--soft:#e6f5fa;--white:#fff}
*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 0 15%,#d7f4f6,transparent 46%),#eef7fb}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #0080aa;outline-offset:3px}[hidden]{display:none!important}
.top{padding:16px max(22px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:12px;background:#ffffffed;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center}.brand strong{font-size:1.12rem;letter-spacing:.1em}.brand small,td small{display:block;color:var(--muted)}.mark{background:#00769a;color:white;border-radius:14px;width:44px;height:44px;display:grid;place-items:center;font-size:24px}
main{width:min(1180px,calc(100% - 38px));margin:42px auto;flex:1}footer{text-align:center;padding:25px 15px;color:var(--muted);font-size:.9rem}footer span{margin:0 .4em}h1,h2,h3,p{margin:0 0 12px}h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.05;letter-spacing:-.04em}h2{line-height:1.2}p,li{color:var(--muted);line-height:1.55}
.landing{display:grid;grid-template-columns:1.25fr .85fr;gap:24px;align-items:stretch;min-height:480px}.hero,.card{border-radius:24px;animation:appear .36s ease-out both}.hero{display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;background:linear-gradient(145deg,#005779,#007da0 65%,#00898d);color:white;padding:clamp(25px,5vw,62px);box-shadow:0 18px 42px #124f6927}.hero::after{content:"";position:absolute;border:1px solid #ffffff26;width:360px;height:360px;border-radius:50%;right:-130px;top:-120px;box-shadow:0 0 0 24px #ffffff11,0 0 0 52px #ffffff0d;pointer-events:none}.hero p{color:#effcff;max-width:430px}.eyebrow{font-size:.76rem;letter-spacing:.14em;font-weight:800;color:var(--blue);display:block;margin-bottom:12px}.hero .eyebrow{color:#e1f9fc}.flag{width:94px;height:52px;border-radius:7px;background:linear-gradient(#37c2e3 33%,#fff 33% 67%,#37c2e3 67%);margin:10px 0 25px;display:grid;place-items:center;box-shadow:0 7px 17px #003b5466}.flag span{font-size:5px;text-align:center;line-height:1;color:#0087ab}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.tags span{border:1px solid #ffffff75;border-radius:30px;padding:6px 12px;font-size:.85rem}
.card{background:var(--white);border:1px solid var(--line);padding:clamp(18px,3vw,30px);box-shadow:0 9px 28px #234b6010}.access{display:flex;flex-direction:column;justify-content:center}.access h2{font-size:clamp(1.6rem,3vw,2.4rem)}form{display:grid;gap:13px;margin:13px 0}label{font-weight:650;display:grid;gap:7px}input:not([type=checkbox]):not([type=radio]){background:#f8fcfe;color:var(--ink);width:100%;border:1px solid #a8c7d6;border-radius:11px;padding:12px;min-width:0}input[type=checkbox],input[type=radio]{accent-color:var(--blue);width:18px;height:18px;flex:none}button{border:1px solid transparent;border-radius:11px;padding:10px 15px;font-weight:700;transition:background .16s,transform .16s}button:active:not(:disabled){transform:translateY(1px)}.primary{background:#006d91;color:white}.primary:hover{background:#005773}.ghost,.mini{background:#e8f5fa;color:#005d7b;border-color:#cce5ee}.ghost:hover,.mini:hover{background:#d6eef6}.access .primary{display:flex;justify-content:space-between}.intro{max-width:720px;margin:55px auto}.intro ul{padding-left:21px;margin-bottom:24px}.score{font-size:clamp(1.7rem,4vw,3rem);font-weight:850;color:var(--blue)}
.examhead,.qmeta,.actions,.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.examhead{margin-bottom:18px}.examhead h1,.examhead h2,.qmeta h2{margin:0}.examgrid{display:grid;grid-template-columns:minmax(0,1fr) 295px;gap:18px;align-items:start}.clock{font-variant-numeric:tabular-nums;font-size:1.8rem;font-weight:800;border-radius:12px;background:#d5f0f7;color:#005d7b;padding:7px 16px}.urgent{background:#ffeded;color:#9c2637}.pill{font-size:.78rem;font-weight:750;border-radius:30px;padding:6px 10px;background:var(--soft);color:#005f7a;display:inline-block}.qmeta{color:var(--muted);font-size:.9rem;margin-bottom:18px}.qcard h2{font-size:clamp(1.27rem,3vw,1.85rem);margin-bottom:20px}.option{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:13px;padding:13px;margin-bottom:9px;cursor:pointer}.option:has(input:checked){background:#def3f9;border-color:#0081a4}.actions{margin-top:22px}.numbers{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:14px 0}.numbers button{padding:7px 0;background:#eff6fa;color:var(--ink)}.numbers .answered{background:#c2eadd}.numbers [aria-current]{outline:2px solid var(--blue)}progress{width:100%;accent-color:var(--blue)}.full{width:100%;margin-top:15px}.rail small{color:var(--muted)}
.metrics,.config{display:grid;gap:14px;margin-bottom:15px}.metrics{grid-template-columns:repeat(4,1fr)}.config{grid-template-columns:1fr 1fr}.metric span{color:var(--muted);display:block}.metric strong{font-size:2rem;color:#005d7b}.inline{display:flex;align-items:center}.toolbar{margin-bottom:12px}.toolbar input{flex:1}.scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:660px;text-align:left}th,td{border-bottom:1px solid var(--line);padding:10px 8px}th{color:var(--muted);font-size:.83rem}.row-actions{display:flex;flex-wrap:wrap;gap:5px}.mini{font-size:.78rem;padding:6px 8px}
dialog{width:min(600px,calc(100% - 30px));max-height:85vh;border:1px solid var(--line);border-radius:20px;color:var(--ink);padding:24px;box-shadow:0 20px 60px #12334540}dialog::backdrop{background:#102b4266}dialog details{border-bottom:1px solid var(--line);padding:10px 0}dialog summary{cursor:pointer;font-weight:700}dialog details p{margin:9px 0}#notice{position:fixed;bottom:18px;right:18px;max-width:min(400px,calc(100% - 36px));background:#06516d;color:white;border-radius:12px;padding:13px 16px;z-index:2}#notice.error{background:#8b2438}
@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){main{margin-top:23px}.landing,.examgrid,.config{grid-template-columns:1fr}.hero{min-height:320px}.metrics{grid-template-columns:repeat(2,1fr)}.clock{font-size:1.4rem}.rail{order:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.chart-row{display:grid;grid-template-columns:minmax(105px,1fr) minmax(45px,2fr) 28px;align-items:center;gap:8px;margin:9px 0;color:var(--muted);font-size:.88rem}.chart-row meter{width:100%;height:18px;accent-color:var(--blue)}.chart-row strong{text-align:right}.account{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:8px 0;border-top:1px solid var(--line)}#print-report{display:none}
@media(max-width:540px){.toolbar input{flex-basis:100%}.toolbar button{flex:1}.qcard,.rail,.roster{min-width:0}.hero h1{overflow-wrap:anywhere}.examhead .clock{position:sticky;top:8px}.metrics .card{padding:15px}}
@media print{body{display:block;background:#fff;color:#000}body>*{display:none!important}body>#print-report{display:block!important;padding:0}#print-report h1{font-size:21pt}#print-report table{min-width:0;font-size:9pt}#print-report th,#print-report td{padding:5pt}#print-report thead{display:table-header-group}#print-report tr{break-inside:avoid}}

.idec-logo{width:52px;height:52px;object-fit:contain;flex:none}.creator-credit{display:inline-block;margin-top:6px;color:var(--ink)}

.mini.danger{color:#922b36}.mini.danger:hover:not(:disabled){background:#ffe9ec}
