/* AzureAIEngineer shared styles. Blue = Azure, amber = your pick and exam weight, green = correct, violet = runner-up. */
:root{
  --bg:#F3F5F8; --surface:#FFFFFF; --soft:#E9EDF3; --ink:#101A2B; --muted:#56627A; --line:#D3D9E3;
  --azure:#0A5BBD; --accent:#A84E08; --accent-soft:#FBEAD8; --good:#1F7A3A; --bad:#A3292E; --runner:#6B3FB5;
  --d1:#0A5BBD; --d2:#A84E08; --d3:#7036B8; --d4:#0D776D; --d5:#AE3A12;
  --display:"Archivo","Helvetica Neue",Arial,sans-serif; --sans:"IBM Plex Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace; color-scheme:light;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0C131F; --surface:#131C2B; --soft:#1A2436; --ink:#E6EBF3; --muted:#9BA7BB; --line:#2B374B;
  --azure:#72B5FF; --accent:#F2A257; --accent-soft:#3A2715; --good:#6FD08C; --bad:#FF8A8F; --runner:#C8A3FF;
  --d1:#72B5FF; --d2:#F2A257; --d3:#C8A3FF; --d4:#4FD0BF; --d5:#FF9566; color-scheme:dark;}}
:root[data-theme="dark"]{
  --bg:#0C131F; --surface:#131C2B; --soft:#1A2436; --ink:#E6EBF3; --muted:#9BA7BB; --line:#2B374B;
  --azure:#72B5FF; --accent:#F2A257; --accent-soft:#3A2715; --good:#6FD08C; --bad:#FF8A8F; --runner:#C8A3FF;
  --d1:#72B5FF; --d2:#F2A257; --d3:#C8A3FF; --d4:#4FD0BF; --d5:#FF9566; color-scheme:dark;}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.55 var(--sans)}
a{color:var(--azure)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.bar-in{max-width:1100px;margin:0 auto;padding-inline:20px;padding-block:10px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between}
.brand{font:700 14px/1 var(--display);text-decoration:none;color:var(--ink)}
.nav{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.nav a{display:block;text-decoration:none;font:600 12px/1 var(--mono);padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted)}
main{max-width:1100px;margin:0 auto;padding-inline:20px;padding-block:24px 80px;display:grid;gap:22px}
main>*{min-width:0}
.eyebrow{display:flex;flex-wrap:wrap;gap:6px 12px;font:600 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.eyebrow b{color:var(--accent)}
h1{font:800 clamp(34px,5.5vw,64px)/1.02 var(--display);letter-spacing:-.02em;margin:0;text-wrap:balance}
h1 span{color:var(--azure)}
h2{font:800 clamp(24px,3vw,34px)/1.1 var(--display);margin:0;text-wrap:balance}
h3{font:700 18px/1.25 var(--display);margin:0}
.lede{font:500 clamp(17px,2vw,21px)/1.45 var(--sans);margin:0;max-width:62ch}
.lede em{font-style:normal;color:var(--accent)}
.note{font-size:14px;color:var(--muted);margin:0;max-width:78ch}
.k{font-family:var(--mono);font-size:.86em}
.chip{display:inline-block;font:600 11px/1 var(--mono);padding:4px 7px;border-radius:999px;border:1px solid var(--line);white-space:nowrap}
.tiles{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.tile{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px;display:grid;gap:6px;align-content:start;text-decoration:none;color:var(--ink)}
a.tile:hover{border-color:var(--azure)}
.tile b{font:700 17px/1.2 var(--display)}
.tile p{margin:0;font-size:14.5px}
.tile .lv{font:600 11.5px/1.2 var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
table{border-collapse:collapse;width:100%;font-size:14px}
th,td{text-align:left;vertical-align:top;padding:9px 11px;border-bottom:1px solid var(--line)}
th{font:600 11px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--soft)}
tr:last-child td{border-bottom:0}
.frame{padding:12px 16px;border:1px dashed var(--line);border-radius:12px;background:var(--surface);font-size:14.5px}
pre.code{font:500 13px/1.6 var(--mono);background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:12px 14px;overflow-x:auto;margin:0;white-space:pre}
.box{border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:grid;gap:6px;align-content:start;background:var(--bg)}
.box h4{margin:0;font:600 11.5px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.box ul{margin:0;padding-left:18px;display:grid;gap:4px;font-size:14.5px}
.box p{margin:0;font-size:14.5px}
/* practice engine */
.bankbar{position:sticky;top:52px;z-index:5;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:14px}
.modes{display:flex;gap:4px}
.modes button,.ghost,.act{font:600 12px/1 var(--mono);padding:8px 11px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--muted);cursor:pointer}
.modes button.on{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.act{background:var(--accent);color:var(--surface);border-color:var(--accent)}
.score{font:700 14px/1 var(--display)}
.timer{font:700 14px/1 var(--mono);color:var(--accent)}
.result{border-radius:12px;padding:14px 16px;display:grid;gap:10px;margin-bottom:14px;border:1.5px solid}
.result.pass{border-color:var(--good);background:color-mix(in srgb,var(--good) 8%,var(--surface))}
.result.fail{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 7%,var(--surface))}
#bank{display:grid;gap:14px}
.q{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:16px;display:grid;gap:12px}
.qtop{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.fmt{font:600 11.5px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--azure)}
.lockn{font:500 11.5px/1 var(--mono);color:var(--bad)}
.scen{padding:10px 12px;border-left:3px solid var(--azure);background:var(--bg);border-radius:0 10px 10px 0;font-size:15px}
.stem{font-size:16px;margin:0;max-width:88ch}
.opts{display:grid;gap:8px}
.opt{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:start;text-align:left;padding:10px 12px;border:1.5px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:inherit;font-size:15px;cursor:pointer}
.opt:hover:not([disabled]){border-color:var(--muted)}
.opt .L{font:700 13px/1.6 var(--mono);color:var(--muted)}
.opt .tagz{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.opt.picked{border-color:var(--accent);background:var(--accent-soft)}
.opt.correct{border-color:var(--good);background:color-mix(in srgb,var(--good) 10%,var(--surface))}
.opt.wrongpick{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 9%,var(--surface))}
.opt.runner{border-color:var(--runner)}
.opt[disabled]{cursor:default}
.t-pick{color:var(--accent);border-color:var(--accent)}.t-ok{color:var(--good);border-color:var(--good)}.t-run{color:var(--runner);border-color:var(--runner)}
table.yn td:nth-child(n+2){width:72px;text-align:center}
.yb{font:600 12px/1 var(--mono);padding:7px 10px;border-radius:8px;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer}
.yb.on{border-color:var(--accent);background:var(--accent-soft)}
.yb.ok{border-color:var(--good);background:color-mix(in srgb,var(--good) 12%,var(--surface))}
.yb.bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}
.why{font-size:13px;color:var(--muted);margin-top:4px}
.ord{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.ord h4{margin:0 0 6px;font:600 11.5px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.pool,.seq{display:grid;gap:6px;align-content:start}
.pi{text-align:left;padding:8px 10px;border:1.5px dashed var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit;font-size:14.5px;cursor:pointer}
.pi[disabled]{opacity:.45;cursor:default}
.si{padding:8px 10px;border:1.5px solid var(--line);border-radius:8px;font-size:14.5px;background:var(--bg)}
.si.ok{border-color:var(--good)}.si.bad{border-color:var(--bad)}
.si.ok-list{border-style:dashed}
select.blank{font:600 12.5px var(--mono);padding:3px 6px;border-radius:6px;border:1.5px solid var(--accent);background:var(--accent-soft);color:var(--ink)}
select.blank.ok{border-color:var(--good);background:color-mix(in srgb,var(--good) 12%,var(--surface))}
select.blank.bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}
.expl{display:grid;gap:10px}
.verdict{font:600 15px/1.4 var(--sans);padding:10px 12px;border-radius:10px}
.verdict.ok{background:color-mix(in srgb,var(--good) 12%,var(--surface));color:var(--good)}
.verdict.no{background:color-mix(in srgb,var(--bad) 10%,var(--surface));color:var(--bad)}
.xtabs{display:flex;gap:4px;flex-wrap:wrap}
.xtabs button{font:600 12px/1 var(--mono);padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--muted);cursor:pointer}
.xtabs button.on{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.xp{display:grid;gap:10px}.xp[hidden]{display:none}
.quote{border-left:3px solid var(--accent);padding:4px 10px;margin:0;font-style:italic}
footer{padding-block:32px;color:var(--muted);font-size:13px;max-width:1100px;margin:0 auto;padding-inline:20px}
@media (max-width:560px){.opt{grid-template-columns:24px 1fr}.opt .tagz{grid-column:2}}
/* teaching cards */
.cluster{display:grid;gap:12px}
.cluster h2{display:flex;gap:10px;align-items:baseline}
.cl{font:700 14px/1 var(--mono);color:var(--surface);background:var(--d2);padding:5px 8px;border-radius:6px}
.card{border:1px solid var(--line);border-left:5px solid var(--d2);border-radius:12px;background:var(--surface);padding:14px 16px;display:grid;gap:10px}
.card header{display:flex;gap:10px;align-items:baseline}
.cid{font:600 12px/1 var(--mono);color:var(--muted)}
.one{margin:0;font:600 16.5px/1.45 var(--sans)}
.bridge{padding:9px 12px;border-radius:8px;background:color-mix(in srgb,var(--runner) 10%,var(--surface));border-left:3px solid var(--runner);font-size:14.5px}
.bridge b{color:var(--runner)}
.cgrid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.box ol{margin:0;padding-left:20px;display:grid;gap:4px;font-size:14.5px}
.trapbox{border-color:var(--bad)}.trapbox h4{color:var(--bad)}
.box .k,.card .k{overflow-wrap:anywhere}
.case{border:2px solid var(--azure);border-radius:14px;padding:14px 16px;background:color-mix(in srgb,var(--azure) 6%,var(--surface));display:grid;gap:10px}
.ctabs{display:flex;flex-wrap:wrap;gap:4px}
.ctabs button{font:600 12px/1 var(--mono);padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer}
.ctabs button.on{background:var(--azure);color:var(--surface);border-color:var(--azure)}
.cpane{display:grid;gap:6px;font-size:14.5px}.cpane p{margin:0}.cpane[hidden]{display:none}
