:root{--color-bg: #0e1116;--color-surface: #161b22;--color-surface-raised: #1d232c;--color-border: #2d333c;--color-text: #e6e8eb;--color-text-muted: #9aa3ad;--color-accent: #58a6ff;--color-green: #3fb950;--color-blue: #4493d9;--color-red: #f85149;--color-yellow: #d29922;--color-missing: #21262d}*{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px}.masthead{display:flex;align-items:baseline;gap:.75rem;padding:.9rem 1.25rem;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.masthead h1{font-size:1.05rem;margin:0;letter-spacing:.02em}.masthead .world{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-bg);background:var(--color-accent);padding:.15rem .5rem;border-radius:3px;font-weight:700}.masthead .meta{color:var(--color-text-muted);font-size:.8rem}.layout{max-width:1200px;margin:0 auto;padding:1.25rem;display:grid;gap:1.25rem}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:1rem 1.25rem}.panel h2{font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;margin:0 0 .25rem}.panel .sub{color:var(--color-text-muted);font-size:.8rem;margin-bottom:.9rem}.chip{display:inline-block;font-size:.7rem;font-weight:700;border-radius:3px;padding:.1rem .45rem;text-transform:uppercase;letter-spacing:.05em}.chip.withheld{background:var(--color-missing);color:var(--color-text-muted);border:1px dashed var(--color-border)}.chip.learned{background:var(--color-green);color:var(--color-bg)}.chip.insupport{background:var(--color-blue);color:var(--color-bg)}.chip.missing{background:var(--color-missing);color:var(--color-text-muted)}.chip.gap{background:var(--color-yellow);color:var(--color-bg)}.chip.stale{background:var(--color-red);color:var(--color-bg)}.counts{display:flex;gap:1.5rem;margin-bottom:1rem}.counts .stat .n{font-size:1.6rem;font-weight:700}.counts .stat .label{color:var(--color-text-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.grid-wrap{overflow-x:auto}table.board{border-collapse:collapse;width:100%}table.board th{font-size:.68rem;text-transform:uppercase;color:var(--color-text-muted);padding:.3rem .35rem;text-align:center;font-weight:600}table.board th.stratum{text-align:right;padding-right:.6rem}td.cell{padding:2px}td.cell .box{width:100%;height:26px;border-radius:3px;cursor:pointer;border:1px solid var(--color-border);background:var(--color-missing)}td.cell .box.LEARNED{background:var(--color-green);border-color:var(--color-green)}td.cell .box.IN_SUPPORT{background:var(--color-blue);border-color:var(--color-blue)}td.cell .box.withheld{background:repeating-linear-gradient(45deg,var(--color-missing),var(--color-missing) 4px,var(--color-surface) 4px,var(--color-surface) 8px)}td.cell .box.discordant{outline:2px solid var(--color-red);outline-offset:1px}td.cell .box.selected{outline:2px solid var(--color-accent);outline-offset:1px}.banner-discordant{background:var(--color-red);color:var(--color-bg);font-weight:700;padding:.5rem .75rem;border-radius:4px;margin-bottom:.75rem}.cell-detail{margin-top:.9rem;padding:.75rem;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:4px;font-size:.8rem}.cell-detail code{color:var(--color-accent)}ol.agenda{margin:0;padding-left:1.4rem}ol.agenda li{margin-bottom:.55rem}.agenda .node{font-family:ui-monospace,Menlo,monospace;color:var(--color-accent)}.gvals{color:var(--color-text-muted);font-size:.78rem}table.ledger{border-collapse:collapse;width:100%;font-size:.82rem}table.ledger th{text-align:left;color:var(--color-text-muted);font-size:.7rem;text-transform:uppercase;padding:.35rem .5rem}table.ledger td{padding:.4rem .5rem;border-top:1px solid var(--color-border)}.mono{font-family:ui-monospace,Menlo,monospace}.muted{color:var(--color-text-muted)}.login{max-width:340px;margin:14vh auto;display:grid;gap:.75rem}.login input{background:var(--color-surface-raised);color:var(--color-text);border:1px solid var(--color-border);border-radius:4px;padding:.55rem .7rem;font-size:.9rem}.login button{background:var(--color-accent);color:var(--color-bg);font-weight:700;border:none;border-radius:4px;padding:.55rem;cursor:pointer;font-size:.9rem}.login .err{color:var(--color-red);font-size:.8rem}
