/* ElectricalDocs members — served at /static/edocs.css (same-origin CSP: style-src 'self'). */
:root{--navy:#1F3A5F;--accent:#C8A04C;--ink:#2C2C2C;--lgray:#F5F5F5;--border:#9A9A9A;--bad:#B03A2E;--ok:#1E7145;--muted:#5a5f66;}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{margin:0;font-family:"Segoe UI",Calibri,system-ui,sans-serif;color:var(--ink);background:#eef0f3;font-size:15px;line-height:1.45;}
header{background:var(--navy);color:#fff;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;position:sticky;top:0;z-index:10;}
header a{color:inherit;text-decoration:none;}
header h1{margin:0;font-size:19px;font-weight:700;letter-spacing:.3px;}
header h1 b{color:var(--accent);}
header nav a{margin-left:14px;font-size:13px;font-weight:600;opacity:.92;}
header nav a:focus,header nav a:hover{text-decoration:underline;}
main{max-width:820px;margin:0 auto;padding:22px 18px 60px;}
.card{background:#fff;border:1px solid var(--border);border-radius:8px;padding:18px 20px;margin-bottom:16px;}
.card h2{margin:0 0 4px;font-size:16px;color:var(--navy);}
.lead{color:var(--muted);font-size:13.5px;margin:0 0 14px;}
label.fld{display:block;font-size:12px;color:var(--muted);font-weight:600;margin:12px 0 4px;}
input.t,select.t{width:100%;padding:9px 10px;border:1px solid var(--border);border-radius:4px;background:#fff;font:inherit;font-size:16px;}
input.t:focus,select.t:focus,button:focus{outline:3px solid #b9c9e2;outline-offset:1px;}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.btn{border:1px solid var(--accent);background:var(--accent);color:#1c1c1c;font-weight:600;border-radius:6px;padding:10px 16px;cursor:pointer;font:inherit;min-height:44px;}
.btn.secondary{background:#fff;border-color:var(--navy);color:var(--navy);}
.btn.danger{background:#fff;border-color:var(--bad);color:var(--bad);}
.btn:disabled{opacity:.5;cursor:not-allowed;}
.notice{background:#fbf5e6;border:1px solid var(--accent);border-radius:6px;padding:9px 12px;font-size:12.5px;color:#6a5316;margin:12px 0;}
.error{background:#fbeae7;border:1px solid var(--bad);border-radius:6px;padding:9px 12px;font-size:13px;color:var(--bad);margin:12px 0;}
.error:empty,.notice:empty{display:none;}
.muted{color:var(--muted);font-size:12.5px;}
.small{font-size:12px;}
.pill{font-size:11px;padding:2px 9px;border-radius:9px;background:var(--lgray);color:var(--navy);border:1px solid var(--border);}
table{width:100%;border-collapse:collapse;font-size:13px;}
th,td{text-align:left;padding:7px 8px;border-bottom:1px solid #e1e4e8;vertical-align:top;}
th{color:var(--muted);font-weight:600;font-size:12px;}
.hidden{display:none !important;}
/* practice */
.qmeta{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:10px;flex-wrap:wrap;}
.progress{font-size:12px;color:var(--muted);font-weight:600;}
.timer{font-size:12px;font-weight:700;color:var(--navy);}
.timer.over{color:var(--bad);}
.qtext{font-size:15px;line-height:1.5;margin:6px 0 14px;white-space:pre-wrap;}
.choice{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-radius:6px;padding:10px 12px;margin-bottom:8px;cursor:pointer;background:#fff;}
.choice:hover{background:var(--lgray);}
.choice.picked{border-color:var(--navy);background:#eef2f8;}
.choice input{margin-top:3px;}
.choice .k{font-weight:700;color:var(--navy);}
.navbar{display:flex;justify-content:space-between;align-items:center;margin-top:14px;gap:10px;flex-wrap:wrap;}
.score{font-size:34px;font-weight:700;}
.verdict{font-size:15px;font-weight:700;padding:3px 12px;border-radius:20px;display:inline-block;}
.verdict.pass{background:#e3f1e8;color:var(--ok);}
.verdict.fail{background:#fbeae7;color:var(--bad);}
.bar{height:12px;background:var(--lgray);border-radius:6px;overflow:hidden;margin-top:3px;}
.bar > span{display:block;height:100%;background:var(--navy);}
.trow{margin:9px 0;font-size:13px;}
.trow .lab{display:flex;justify-content:space-between;margin-bottom:2px;}
.rev{border-top:1px solid var(--border);padding:11px 0;}
.rev .q{font-weight:600;font-size:13.5px;margin-bottom:5px;white-space:pre-wrap;}
.rev .ans{font-size:12.5px;margin:2px 0;}
.rev .right{color:var(--ok);} .rev .wrong{color:var(--bad);}
.rev .exp{font-size:12.5px;color:#444;margin-top:4px;}
.ref{font-size:11.5px;color:var(--muted);font-style:italic;}
.foot{font-size:11.5px;color:#7a7f86;text-align:center;margin-top:18px;}
.foot a{color:inherit;}
@media (max-width:520px){main{padding:14px 12px 50px;} .card{padding:14px;} header{padding:10px 12px;} header nav a{margin-left:10px;}}
