:root{font-family:Inter,system-ui,sans-serif;color:#192d39;background:#f5f3ee;line-height:1.5;--green:#17685e;--line:#d5dfda}*{box-sizing:border-box}body{margin:0}header{background:#153b3d;color:white;padding:18px max(20px,calc((100vw - 1240px)/2));display:flex;gap:20px;justify-content:space-between;align-items:center}header a{color:white;text-decoration:none}main{max-width:1240px;margin:auto;padding:30px 20px 60px}h1{font-family:Georgia,serif;font-size:clamp(32px,4vw,46px);line-height:1.15;margin:8px 0 14px}h2{font-size:21px;margin:0 0 16px}h3{font-size:16px;margin:20px 0 10px}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:750;color:var(--green)}.intro{max-width:770px;color:#52636a}.layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;align-items:start}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:22px;margin:0 0 18px}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{display:block;font-size:13px;font-weight:650;margin:10px 0}input,select{display:block;width:100%;font:inherit;padding:10px;background:#fff;border:1px solid #aabbb3;border-radius:6px;color:inherit;margin-top:5px}input[type=checkbox]{display:inline;width:auto;margin-right:8px}button,.button{font:600 14px Inter,system-ui,sans-serif;border:1px solid #a6bbb3;background:white;color:#174b45;padding:11px 14px;border-radius:7px;cursor:pointer;text-decoration:none;display:inline-block}button:hover,.button:hover{background:#eaf3ef}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #cd8a25;outline-offset:3px}.primary{background:var(--green);color:white;border-color:var(--green)}.primary:hover{background:#114c44}button:disabled{opacity:.5;cursor:wait}.buttons{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.buttons button[aria-pressed=true]{background:#17685e;color:white}small,.muted{color:#5b6e72;font-size:13px}.notice{background:#edf4ef;border-left:4px solid var(--green);padding:12px 16px;font-size:14px}.warning{background:#fff5dc;border-left:4px solid #b47b19;padding:12px 16px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.metric{background:#f1f6f3;padding:14px;border-radius:8px}.metric strong{display:block;font-size:22px;margin:6px 0}.metric span{font-size:12px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:right;padding:10px 8px;border-bottom:1px solid var(--line)}th:first-child,td:first-child{text-align:left}th{color:#34594d;background:#f1f5f2}#fan{width:100%;height:auto;min-height:240px}details{border-top:1px solid var(--line);padding-top:14px;margin-top:16px}summary{font-weight:650;cursor:pointer}#status{min-height:24px;margin:10px 0;font-size:14px}.error{color:#9d2323}#result[hidden], [hidden]{display:none!important}.legend{display:flex;gap:20px;flex-wrap:wrap;font-size:13px}.legend b{color:#18756a}.legend em{color:#b57031;font-style:normal}#loglist button{margin:4px}.full{width:100%}.readme{max-width:850px}.readme li{margin-bottom:8px}@media(max-width:900px){.layout{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}main{padding:20px 14px}.card{padding:18px}}@media(max-width:480px){.metrics{grid-template-columns:1fr}.row{gap:10px}header{padding:16px;align-items:flex-start;font-size:13px}}

/* Example-study picker: each button states the question it answers, and the
   link to the other lab is no longer dressed as one of them. */
.study-start{font-size:17px;margin:18px 0 0}
.study-buttons{align-items:stretch;gap:10px}
.study-buttons button{margin:0;flex:1 1 220px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:12px 14px;line-height:1.35}
.study-buttons button span{font:600 14px Inter,system-ui,sans-serif;color:#174b45}
.study-buttons button small{font:400 12px Inter,system-ui,sans-serif;color:#546b64}
.study-buttons button small b{font-weight:700;color:#174b45}
.study-hint{font-size:13px;color:#546b64;margin:2px 0 18px;max-width:760px}
.study-hint a{color:var(--green);font-weight:600;text-decoration:underline;text-underline-offset:3px}
