:root{--navy:#07233b;--blue:#0b6ba8;--aqua:#13a7b8;--ice:#eef7fa;--ink:#102232;--muted:#637282;--line:#d6e2e8;--white:#fff;--ok:#147a52;--bad:#bd3448;--shadow:0 20px 55px rgba(7,35,59,.12)}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#e9f5f8 0,#f7fafb 280px);color:var(--ink);font:16px/1.5 Inter,Segoe UI,Arial,sans-serif;min-height:100vh}.hidden{display:none!important}.topbar{background:var(--navy);color:white;padding:12px max(24px,calc((100vw - 1040px)/2));box-shadow:0 4px 20px rgba(0,0,0,.15)}.brand{display:inline-flex;align-items:center;color:inherit;text-decoration:none}.brand img{display:block;width:auto;height:84px;border-radius:10px}.shell{width:min(100% - 32px,1040px);margin:48px auto 80px}.panel{background:var(--white);border:1px solid rgba(7,35,59,.08);border-radius:20px;box-shadow:var(--shadow)}.status-card{padding:40px;text-align:center;color:var(--muted)}.setup{padding:clamp(28px,5vw,58px);max-width:820px;margin:auto}.eyebrow{color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.13em;margin-bottom:8px}.setup h1,.result-card h1{font-size:clamp(30px,5vw,48px);line-height:1.08;margin:0 0 16px;color:var(--navy)}.lead{font-size:18px;color:var(--muted);max-width:650px;margin-bottom:34px}.setup fieldset,.answers{border:0;padding:0;margin:0}.setup legend,.answers legend{font-weight:750;margin-bottom:12px}.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.choice-grid input{position:absolute;opacity:0}.choice-grid label span{display:block;border:2px solid var(--line);border-radius:14px;padding:15px 12px;font-size:22px;font-weight:800;cursor:pointer;transition:.15s}.choice-grid small{display:block;font-size:12px;font-weight:500;color:var(--muted)}.choice-grid input:checked+span{border-color:var(--aqua);background:#edfafd;box-shadow:0 0 0 3px rgba(19,167,184,.1)}.toggle{display:flex;align-items:center;gap:10px;margin:24px 0 30px;color:var(--ink)}input[type=checkbox]{width:19px;height:19px;accent-color:var(--blue)}button{font:inherit;font-weight:750;border:0;border-radius:12px;padding:14px 20px;cursor:pointer;transition:transform .12s,box-shadow .12s,background .12s}button:hover{transform:translateY(-1px)}button:focus-visible,input:focus-visible{outline:3px solid rgba(19,167,184,.4);outline-offset:3px}.primary{background:var(--blue);color:white;box-shadow:0 8px 18px rgba(11,107,168,.22)}.secondary{background:white;color:var(--navy);border:1px solid var(--line)}.finish{background:var(--ok);color:white;margin-left:auto}.quiz-head{position:sticky;top:0;z-index:2;background:rgba(247,250,251,.94);backdrop-filter:blur(10px);padding:14px 2px 18px;margin-bottom:12px}.quiz-head>div:first-child{display:flex;justify-content:space-between;margin-bottom:10px}.quiz-head strong{font-size:14px;color:var(--muted)}.progress{height:7px;background:#dbe8ec;border-radius:20px;overflow:hidden}.progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--blue),var(--aqua));transition:width .25s}.question-card{padding:clamp(20px,4vw,42px)}.question-meta{font-size:13px;font-weight:800;letter-spacing:.12em;color:var(--blue);margin-bottom:18px}.question-card>img{display:block;width:auto;max-width:100%;max-height:500px;margin:0 auto 26px;border-radius:6px}.answers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.answers legend{grid-column:1/-1}.answers button{display:flex;align-items:center;text-align:left;gap:12px;background:#f7fafb;border:2px solid var(--line);color:var(--ink);padding:13px}.answers button b{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:50%;background:white;color:var(--blue);border:1px solid var(--line)}.answers button.selected{border-color:var(--blue);background:#eaf6fb;box-shadow:0 0 0 3px rgba(11,107,168,.09)}.answers button.selected b{background:var(--blue);color:white;border-color:var(--blue)}.quiz-nav{display:flex;gap:10px;margin-top:18px}.quiz-nav #next{margin-left:auto}.quiz-nav button:disabled{opacity:.4;cursor:not-allowed;transform:none}.result-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:34px;padding:clamp(25px,5vw,48px)}.score-ring{width:150px;height:150px;border-radius:50%;display:grid;place-content:center;text-align:center;background:conic-gradient(var(--aqua) var(--score),#dfecef 0);position:relative}.score-ring:after{content:"";position:absolute;inset:12px;background:white;border-radius:50%}.score-ring strong,.score-ring span{position:relative;z-index:1}.score-ring strong{font-size:34px;line-height:1;color:var(--navy)}.score-ring span{font-size:12px;color:var(--muted);margin-top:5px}.result-card h1{font-size:36px;margin-bottom:8px}.result-card p{margin:0;color:var(--muted);font-size:18px}.result-actions{display:flex;gap:10px;margin:18px 0 38px}.review-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.review-head h2{color:var(--navy)}.review-head label{display:flex;align-items:center;gap:8px}.review-list{display:grid;gap:14px}.review-item{display:grid;grid-template-columns:74px 1fr;gap:16px;background:white;border:1px solid var(--line);border-left:5px solid var(--ok);border-radius:14px;padding:18px}.review-item.bad{border-left-color:var(--bad)}.review-item .badge{font-weight:800;color:var(--ok)}.review-item.bad .badge{color:var(--bad)}.review-item img{max-width:100%;max-height:340px}.review-answer{margin-top:10px;font-size:14px}.review-answer b{display:inline-grid;place-items:center;min-width:30px;height:30px;border-radius:50%;background:var(--ice);margin:0 4px}.empty-review{padding:28px;text-align:center;color:var(--muted);background:white;border-radius:14px}
@media(max-width:700px){.shell{width:min(100% - 20px,1040px);margin-top:22px}.choice-grid{grid-template-columns:1fr 1fr}.answers{grid-template-columns:1fr}.question-card>img{width:100%;max-height:none}.quiz-nav{display:grid;grid-template-columns:1fr 1fr}.quiz-nav .finish{grid-column:1/-1;margin:0}.result-card{grid-template-columns:1fr;text-align:center}.score-ring{margin:auto}.result-actions{display:grid;grid-template-columns:1fr}.review-head{align-items:flex-start;flex-direction:column}.review-item{grid-template-columns:1fr}.review-item img{width:100%}}
@media print{.topbar,.quiz-head,.quiz-nav,.result-actions,.review-head label{display:none}.shell{margin:0;width:100%}.panel{box-shadow:none}.review-item{break-inside:avoid}}
.exam-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0 16px}.exam-rules div{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--ice)}.exam-rules strong,.exam-rules span{display:block}.exam-rules strong{font-size:27px;color:var(--navy)}.exam-rules span{font-size:13px;color:var(--muted)}.timer-note{color:var(--muted);margin:0 0 28px}.quiz-head>div:first-child{align-items:center;gap:18px;justify-content:flex-start}.quiz-head #answered{margin-left:auto}.quiz-head .timer{font-size:18px;color:var(--navy);font-variant-numeric:tabular-nums;border:1px solid var(--line);background:white;padding:5px 10px;border-radius:9px}.quiz-head .timer.warning{color:var(--bad);border-color:#efb6bf;background:#fff3f5}
@media(max-width:700px){.exam-rules{grid-template-columns:1fr}.quiz-head>div:first-child{display:grid;grid-template-columns:1fr auto;gap:5px 10px}.quiz-head #answered{margin:0}.quiz-head .timer{grid-column:2;grid-row:1/3}}
.mode-picker{border:0;padding:0;margin:0 0 18px}.mode-picker legend{font-weight:750;margin-bottom:12px}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mode-grid input{position:absolute;opacity:0}.mode-grid label span{display:block;height:100%;padding:20px;border:2px solid var(--line);border-radius:14px;background:#f7fafb;cursor:pointer;transition:.15s}.mode-grid strong,.mode-grid small{display:block}.mode-grid strong{font-size:19px;color:var(--navy);margin-bottom:5px}.mode-grid small{font-size:14px;color:var(--muted)}.mode-grid input:checked+span{border-color:var(--aqua);background:#edfafd;box-shadow:0 0 0 3px rgba(19,167,184,.1)}
@media(max-width:700px){.mode-grid{grid-template-columns:1fr}}
.manual-ref{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px;padding:16px 18px;border-radius:14px;background:var(--navy);color:white}.manual-ref span,.manual-ref strong{display:block}.manual-ref span{font-size:11px;font-weight:800;letter-spacing:.11em;color:#9ed8e1}.manual-ref strong{font-size:16px}.manual-actions{display:flex;gap:9px}.manual-ref a,.manual-ref button{color:white;font-weight:750;text-decoration:none;padding:10px 13px;border:1px solid rgba(255,255,255,.35);border-radius:9px;background:transparent}.manual-ref a:hover,.manual-ref button:hover{background:rgba(255,255,255,.1)}.explanation-panel{padding:17px 19px;background:#edf8fa;border:1px solid #cce8ed;border-radius:0 0 14px 14px;color:var(--ink)}.explanation-panel strong{color:var(--navy)}.explanation-panel p{margin:6px 0 0}.review-explanation{margin-top:13px;padding:12px 14px;background:#edf8fa;border-radius:10px}.review-explanation summary{cursor:pointer;color:var(--blue);font-weight:750}.review-explanation p{margin:8px 0 0}.review-manual{display:inline-block;margin-top:12px;color:var(--blue);font-weight:750;text-decoration:none}.review-manual:hover{text-decoration:underline}
.legal-source,.review-legal-source{margin:12px 0 0;border-left:4px solid var(--cyan);border-radius:8px;background:#edf8fa;color:var(--ink);font-size:14px;line-height:1.5}.legal-source summary,.review-legal-source summary{cursor:pointer;padding:12px 14px;color:var(--blue);font-weight:800}.legal-source p,.review-legal-source p{margin:0;padding:0 14px 14px}.review-legal-source{max-width:760px}
.legal-provision strong,.legal-provision span{display:block}.legal-provision strong{margin-bottom:6px}.legal-provision span{white-space:pre-line}.explanation-html{padding:0 14px 14px}.explanation-html.hidden{display:none}.explanation-html p{padding:0;margin:8px 0}.explanation-html ul{margin:8px 0 12px;padding-left:24px}.explanation-html li{margin:6px 0}.explanation-html a{color:var(--blue);font-weight:700}.explanation-html .explanation-title{display:block;margin-top:10px;color:var(--navy)}
.explanation-image{display:block;width:min(280px,calc(100% - 28px));height:158px;object-fit:cover;object-position:center;margin:0 14px 14px;border-radius:9px;border:1px solid #bddbe1}.explanation-image.hidden{display:none}
@media(max-width:700px){.manual-ref{align-items:stretch;flex-direction:column}.manual-actions{display:grid}.manual-ref a,.manual-ref button{text-align:center}}
@media(max-width:700px){.topbar{padding:10px}.brand img{height:70px}.shell{margin-top:20px}}
.result-meta{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:14px;padding:16px 20px}.result-meta span{color:var(--muted)}
@media(max-width:700px){.result-meta{display:grid}}
@media print{#access-gate{display:none!important}.result-meta{display:grid;grid-template-columns:1fr 1fr;margin:0 0 12px;padding:12px}.review-section{display:block}.review-list{gap:8px}.review-item{padding:12px}.result-card{padding:16px}.result-card h1{font-size:28px}.score-ring{width:110px;height:110px}.review-item img{max-height:250px}}
.brand{gap:18px}.brand-copy{display:block}.brand-copy strong,.brand-copy small{display:block}.brand-copy strong{font-size:19px;line-height:1.25;letter-spacing:.025em}.brand-copy small{margin-top:5px;color:#b9d9e5;font-size:14px;line-height:1.35}
@media(max-width:700px){.brand{gap:11px}.brand img{height:62px}.brand-copy strong{font-size:15px}.brand-copy small{font-size:12px;margin-top:3px}}
.brand .brand-partner{height:84px;width:84px;object-fit:contain;border-radius:50%}
@media(max-width:700px){.brand{width:100%;justify-content:space-between}.brand img{height:54px}.brand .brand-partner{height:54px;width:54px;flex:none}.brand-copy{flex:1;min-width:0}.brand-copy strong{font-size:13px}.brand-copy small{font-size:11px;line-height:1.25}}
.question-card>img.set-question{width:100%;height:auto;max-height:none;object-fit:contain}
.setup-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:12px}.handbook-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--navy);font:inherit;font-weight:750;text-decoration:none;transition:transform .12s,box-shadow .12s,background .12s}.handbook-button:hover{background:var(--ice);transform:translateY(-1px)}.handbook-button:focus-visible{outline:3px solid rgba(19,167,184,.4);outline-offset:3px}.handbook-button svg{width:21px;height:21px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media(max-width:480px){.setup-actions>*{flex:1 1 100%}}
