:root{color-scheme:dark;--bg: #0d1013;--panel: #14181d;--line: #232a31;--fg: #d6dde4;--dim: #6b7783;--accent: #7fd1b9}*{box-sizing:border-box}body{margin:0;padding:3rem 1.5rem 6rem;background:var(--bg);color:var(--fg);font:14px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}#app{max-width:60rem;margin:0 auto}h1{margin:0 0 1.5rem;font-size:1.5rem;letter-spacing:-.02em}.lede{margin:.25rem 0;color:var(--dim)}.lede strong{color:var(--accent);letter-spacing:.04em}.denied{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0;padding:0;list-style:none}.denied li{padding:.15rem .6rem;border:1px dashed var(--line);border-radius:999px;color:var(--dim);font-size:.8125rem}section{margin-top:2rem;border:1px solid var(--line);border-radius:6px;background:var(--panel);overflow:hidden}h2{display:flex;justify-content:space-between;gap:1rem;margin:0;padding:.75rem 1rem;border-bottom:1px solid var(--line);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}h2 .count{font-weight:400;letter-spacing:.04em;text-transform:none}.note{margin:0;padding:.625rem 1rem;border-bottom:1px solid var(--line);color:var(--dim);font-size:.8125rem}.row{display:grid;grid-template-columns:14rem 1fr auto;gap:1rem;align-items:baseline;padding:.5rem 1rem;border-top:1px solid var(--line)}.row:first-of-type{border-top:none}.name{color:var(--dim)}.value{overflow-wrap:anywhere}.value.absent{color:#4d5761;font-style:italic}.evidence{display:block;margin-top:.15rem;color:var(--dim);font-size:.75rem}.badge{font-size:.625rem;letter-spacing:.1em;padding:.1rem .4rem;border-radius:3px;border:1px solid currentColor;opacity:.85}.badge.direct{color:#7fd1b9}.badge.coarse{color:#d9b65f}.badge.inferred{color:#8fb2e0}.badge.unavailable{color:#5a646e}@media(max-width:40rem){.row{grid-template-columns:1fr auto}.name{grid-column:1 / -1}}#hero{margin-top:1.5rem}.print{margin:0;padding:1.25rem 1rem 1rem;font-size:clamp(1.75rem,6vw,3.25rem);font-weight:600;letter-spacing:.02em;line-height:1.1;overflow-wrap:anywhere}.print.pending{color:var(--dim);font-weight:400;animation:pulse 1.2s ease-in-out infinite alternate}@keyframes pulse{0%{opacity:.4}to{opacity:1}}@media(prefers-reduced-motion:reduce){.print.pending{animation:none}}.verdict{margin:0;padding:0 1rem 1rem;color:var(--accent);font-size:1rem}.verdict:empty{display:none}#hero .note{border-top:1px solid var(--line);border-bottom:none}#lab-toolbar{display:flex;gap:.5rem;margin-top:1.5rem}button,.button{padding:.4rem .75rem;border:1px solid var(--line);border-radius:4px;background:var(--panel);color:var(--fg);font:inherit;cursor:pointer}button:hover,.button:hover{border-color:var(--accent)}.button{position:relative}.button input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.note.error{color:#e07f7f}.badge.same{color:#7fd1b9}.badge.changed{color:#e07f7f}.badge.new{color:#8fb2e0}.badge.gone{color:#5a646e}#experiment{margin-top:2rem;border:1px solid var(--line);border-radius:6px;background:var(--panel)}#experiment summary{padding:.75rem 1rem;cursor:pointer;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}#experiment[open] summary{border-bottom:1px solid var(--line)}#experiment ol{margin:0;padding:.75rem 1rem .75rem 2.5rem}#experiment p{margin:0;padding:.625rem 1rem;border-top:1px solid var(--line);color:var(--dim);font-size:.8125rem}#legend .row{grid-template-columns:auto 1fr}footer{margin-top:3rem;max-width:44rem;color:var(--dim);font-size:.8125rem}footer p{margin:.75rem 0}footer a{color:var(--accent)}button:focus-visible,.button:focus-within,summary:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
