* { box-sizing: border-box; }
:root { color-scheme: light; --line:#d7d7d7; --muted:#666; --wash:#f7f7f5; --warn:#fff5c2; --red:#b42318; --green:#08783e; }
html { -webkit-font-smoothing: antialiased; }
body { margin:0; padding:8px; color:#111; background:#fff; font:13px/1.38 -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif; }
a { color:#00c; text-underline-offset:2px; }
a:visited { color:#551a8b; }
h1 { display:inline; margin:0; font-size:15px; line-height:1; }
h2 { margin:0; font-size:13px; text-wrap:balance; }
p { margin:3px 0 0; text-wrap:pretty; }
.site-head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:2px 0 6px; }
.dek { display:block; margin:3px 0 0; color:var(--muted); font-size:11px; }
.pair-control { display:grid; grid-template-columns:minmax(240px,320px) minmax(0,1fr); align-items:center; gap:6px 16px; margin:12px 0; }
.pair-control > label { grid-column:1 / -1; color:var(--muted); font-size:11px; font-weight:600; }
.pair-field { display:flex; align-items:stretch; min-width:0; border:1px solid #aaa; background:var(--wash); }
.pair-origin { display:flex; align-items:center; gap:14px; padding:0 12px; font-size:14px; font-weight:600; white-space:nowrap; }
.pair-link { color:var(--muted); font-weight:400; }
.pair-choice { position:relative; flex:1; min-width:0; }
.pair-control select { appearance:none; -webkit-appearance:none; display:block; width:100%; height:28px; min-height:28px; margin:0; border:0; border-left:1px solid var(--line); border-radius:0; padding:2px 36px 2px 12px; background:#fff; color:#111; font-size:14px; font-weight:600; cursor:pointer; }
.pair-chevron { position:absolute; right:12px; top:50%; transform:translateY(-50%); color:#555; pointer-events:none; }
.pair-field:focus-within { border-color:#00c; outline:2px solid #00c; outline-offset:2px; }
.pair-control select:focus-visible { outline:none; }
@media (hover:hover) {
  .pair-field:hover { border-color:#555; }
  .pair-control select:hover { background:var(--wash); }
}
@media (forced-colors:active) {
  .pair-field:focus-within { outline-color:Highlight; }
  .pair-chevron { color:ButtonText; }
}
#coverage { color:var(--muted); font-size:12px; line-height:1.5; }
.count { font-variant-numeric:tabular-nums; }
.preexisting { color:#555; }
.market-list { list-style:none; padding:0; margin:8px 0; border-top:1px solid var(--line); }
.market-list li { padding:8px; border:1px solid var(--line); border-top:0; }
.market-list h3 { margin:0; font-size:inherit; text-wrap:balance; }
.market-meta,.market-note { color:var(--muted); font-size:12px; }
.market-meta { margin:4px 0; font-variant-numeric:tabular-nums; }
.market-list p { max-width:100ch; }
@media (max-width:600px) {
  .pair-control { grid-template-columns:minmax(0,1fr); gap:6px; }
  .pair-control select { font-size:16px; }
  .pair-origin { font-size:16px; }
}
.as-of,.section-note,.count { color:var(--muted); font-size:11px; }
.tape { display:flex; gap:10px; overflow-x:auto; padding:4px 6px; border-block:1px solid var(--line); white-space:nowrap; font-size:11px; scrollbar-width:thin; }
.tape b { color:var(--green); }
.dot { color:#aaa; }
main { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; margin-top:10px; }
main > section { min-width:0; }
.notice { display:grid; grid-template-columns:130px 1fr; border:1px solid #d9cd84; background:#fffdf1; }
.notice > * { padding:8px; }
.notice-label { border-right:1px solid #d9cd84; color:#725c00; font:11px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; text-transform:uppercase; }
.notice p { max-width:90ch; }
.stats { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); }
.stats article { min-height:76px; padding:8px; border-right:1px solid var(--line); }
.stats article:last-child { border-right:0; }
.stat { display:block; font-size:22px; font-weight:700; line-height:1.1; font-variant-numeric:tabular-nums; letter-spacing:-.02em; }
.label { display:block; max-width:27ch; margin-top:5px; color:#444; font-size:11px; }
.section-head { display:flex; align-items:end; justify-content:space-between; gap:10px; margin-bottom:5px; }
.section-note { margin-left:7px; }
.controls { display:flex; align-items:center; gap:10px; margin:5px 0; }
input,select,button { min-height:28px; padding:2px 5px; border:1px solid #999; border-radius:0; color:#111; background:#fff; font:inherit; }
input[type=search] { width:260px; }
input[type=checkbox] { min-height:auto; accent-color:#111; }
.check { display:flex; align-items:center; gap:4px; white-space:nowrap; }
.table-wrap { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; }
.table-hint { display:none; }
table { width:100%; border-collapse:separate; border-spacing:0; }
th,td { padding:4px 6px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
th { position:sticky; top:0; z-index:1; border-top:1px solid var(--line); background:#eee; white-space:nowrap; font-weight:700; cursor:default; }
th[data-sort] { cursor:pointer; user-select:none; }
th[data-sort]:hover { background:#e0e0e0; }
th:first-child,td:first-child { border-left:1px solid var(--line); }
tbody tr:nth-child(even) { background:#fafafa; }
tbody tr:hover { background:#ffffd8; }
td.num { text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.arrow { color:#777; font-size:10px; }
.up { color:var(--red); font-weight:700; }
.down,.good { color:var(--green); font-weight:700; }
.flat { color:var(--muted); }
.badge { display:inline-block; padding:1px 4px; border:1px solid currentColor; font:10px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace; text-transform:uppercase; white-space:nowrap; }
.confirmed { color:var(--green); }
.announced { color:#805b00; }
.watch { color:var(--muted); }
.direction { white-space:normal; overflow-wrap:anywhere; font-weight:700; }
.empty { padding:14px; color:var(--muted); text-align:center; }
.footnote { padding:6px 8px; border:1px solid var(--line); border-top:0; color:#444; font-size:11px; }
.timeline { margin:0; padding:0; border-top:1px solid var(--line); list-style:none; }
.timeline li { display:grid; grid-template-columns:130px 1fr; border-bottom:1px solid var(--line); border-inline:1px solid var(--line); }
.timeline time { padding:7px; border-right:1px solid var(--line); font:11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; font-variant-numeric:tabular-nums; }
.timeline div { padding:7px; }
.timeline .reset { background:#f4f4f4; }
.timeline .current { background:#fffdf1; }
.methods { padding:8px; border:1px solid var(--line); background:var(--wash); }
.method-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:5px; }
.sources { margin-top:8px; padding-top:7px; border-top:1px solid var(--line); font-size:11px; }
footer { margin-top:12px; color:var(--muted); font-size:11px; }
:focus-visible { outline:2px solid #00c; outline-offset:1px; }
button:active,a:active { scale:.96; }
@media (max-width:760px) {
  body { font-size:14px; line-height:1.5; }
  .site-head { align-items:flex-start; flex-wrap:wrap; gap:4px 12px; }
  h1 { font-size:18px; }
  h2 { font-size:15px; }
  .as-of,.dek,.section-note,.count,.label,.footnote,.sources,footer { font-size:12px; }
  .tape { flex-wrap:wrap; gap:3px 12px; white-space:normal; font-size:12px; }
  .tape .dot { display:none; }
  .stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .stats article:nth-child(2) { border-right:0; }
  .stats article:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .notice { grid-template-columns:minmax(0,1fr); }
  .notice-label { border-right:0; border-bottom:1px solid #d9cd84; padding:5px 8px; }
  .section-head { flex-wrap:wrap; align-items:flex-start; gap:3px; }
  .section-head > div { flex:1 1 100%; min-width:0; }
  .count { font-variant-numeric:tabular-nums; }
  .controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:8px 0; }
  .controls input[type=search] { grid-column:1 / -1; width:100%; }
  .controls input[type=search],.controls select { min-width:0; width:100%; min-height:44px; padding:8px; font-size:16px; }
  .controls .check { grid-column:1 / -1; min-height:44px; white-space:normal; }
  #move-direction { grid-column:1 / -1; }
  .check input { flex:none; width:18px; height:18px; margin:0 4px 0 0; }
  .section-note { display:block; margin:2px 0 0; }
  .table-hint { display:block; margin:4px 0; color:var(--muted); font-size:12px; }
  table { table-layout:fixed; width:1040px; }
  th,td { padding:8px; overflow-wrap:anywhere; }
  th { white-space:normal; }
  th:first-child,td:first-child { position:sticky; left:0; width:140px; z-index:2; border-right-color:#999; }
  th:first-child { z-index:3; }
  td:first-child { background:#fff; }
  tbody tr:nth-child(even) td:first-child { background:#fafafa; }
  tbody tr:hover td:first-child { background:#ffffd8; }
  td.num { white-space:normal; }
  #effects-table th:nth-child(6),#moves-table th:nth-child(3) { width:250px; }
  #moves-table { width:1140px; }
  td.empty { position:static; text-align:left; }
  td a { display:inline-flex; align-items:center; min-height:44px; }
  .timeline li { grid-template-columns:minmax(0,1fr); }
  .timeline time { border-right:0; padding-bottom:0; font-size:12px; }
  .timeline div { min-width:0; padding-top:3px; }
  .method-grid { grid-template-columns:1fr; gap:8px; }
  .sources { overflow-wrap:anywhere; }
}
@media (max-width:360px) {
  th:first-child,td:first-child { width:120px; }
  .controls { grid-template-columns:minmax(0,1fr); }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
