.power-intro { color: var(--ink-2); max-width: 78ch; margin-bottom: var(--space-4); font-size: var(--step--1); line-height: 1.5; }
.power-intro a { color: var(--turf); font-weight: 600; }

/* Conference strength */
.confbox { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-m); margin-bottom: var(--space-4); }
.confbox > summary { display: flex; gap: var(--space-4); align-items: baseline; flex-wrap: wrap; padding: var(--space-3) var(--space-4); cursor: pointer; list-style: none; }
.confbox > summary::-webkit-details-marker { display: none; }
.confbox > summary::after { content: ''; margin-left: auto; width: 10px; height: 10px; border-right: 2px solid var(--ink-3); border-bottom: 2px solid var(--ink-3); rotate: 45deg; translate: 0 -2px; transition: rotate var(--t-fast); }
.confbox[open] > summary::after { rotate: -135deg; translate: 0 2px; }
.confbox summary .muted { font-size: var(--step--1); }
.conflist { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 0 var(--space-5); padding: 0 var(--space-4) var(--space-3); }
.conf { display: grid; grid-template-columns: 124px 1fr 44px 56px; align-items: center; gap: var(--space-3); width: 100%; min-height: 36px; text-align: left; border-radius: var(--radius-s); padding: 0 6px; margin-inline: -6px; font-size: var(--step--1); }
.conf:hover { background: var(--surface-sunk); }
.conf[aria-pressed='true'] { background: var(--turf-soft); box-shadow: inset 3px 0 0 var(--turf); }
.conf__name { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.conf__val { font-weight: 700; text-align: right; }
.conf__n { text-align: right; font-size: 0.75rem; }
.chip--button { cursor: pointer; min-height: 32px; padding: 0 10px; }

/* Meters */
.meter { position: relative; display: block; height: 8px; border-radius: 4px; background: var(--surface-2); min-width: 40px; }
.meter__bar { position: absolute; top: 0; bottom: 0; background: var(--turf); border-radius: 4px; }
.meter__bar.is-neg { background: var(--ink-3); }
.meter__zero { position: absolute; top: -3px; bottom: -3px; width: 2px; background: var(--line-strong); translate: -1px 0; }

/* Ratings table */
.power .row--head, .power .game { grid-template-columns: 76px minmax(200px, 2fr) minmax(140px, 1.4fr) minmax(110px, 1fr) minmax(110px, 1fr) 120px; }
.prow-wrap { border-bottom: 1px solid var(--line); }
.prow-wrap .game { border-bottom: 0; }
.power .game { min-height: 58px; cursor: default; }
.rk { font: 700 var(--step-2)/1 var(--font-display); min-width: 2ch; display: inline-block; }
.pc0 { display: flex; align-items: center; gap: 8px; }
.move { display: inline-flex; align-items: center; gap: 1px; font-size: 0.75rem; font-weight: 700; }
.move svg { width: 12px; height: 12px; }
.move--up { color: var(--turf); } .move--down { color: var(--bad-ink); } .move--flat, .move--none { color: var(--ink-3); font-weight: 500; }
.prow__team { display: grid !important; gap: 0; justify-items: start; }
.tname { font-weight: 700; font-size: var(--step-1); }
.tmeta { font-size: 0.75rem; color: var(--ink-3); font-weight: 400; }
.pc2 { display: grid; gap: 6px; padding-right: var(--space-3); }
.ov { font-weight: 700; font-size: var(--step-1); }
.side { display: grid; gap: 6px; padding-right: var(--space-3); }
.side__rank { font-weight: 700; font-size: var(--step--1); }
.pc5 { display: flex; align-items: center; gap: 8px; }
.delta { font-size: 0.75rem; font-weight: 700; color: var(--ink-2); }
.spark { flex: none; } .spark--empty { color: var(--ink-3); }

.pdetail { background: var(--surface-sunk); padding: var(--space-4) var(--space-5) var(--space-5); display: grid; gap: var(--space-4); grid-template-columns: minmax(260px, 1fr) minmax(220px, 280px); border-top: 1px dashed var(--line); }
.pdetail .note { grid-column: 1 / -1; }
.pdetail small { color: var(--ink-3); font-weight: 400; }
.hist { display: grid; gap: 6px; font-size: var(--step--1); align-content: start; }
.hist li { display: grid; grid-template-columns: 1fr auto auto; gap: var(--space-3); border-bottom: 1px dashed var(--line); padding-bottom: 6px; }

@media (max-width: 959px) {
  .power .game, .power .game:last-child {
    grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-areas: 'rk team team team ov ov' 'off off def def trend trend';
    column-gap: var(--space-2); row-gap: var(--space-3); padding-bottom: var(--space-3);
  }
  .power { display: block; }
  .power .game .pc0 { grid-area: rk; flex-direction: column; align-items: flex-start; gap: 2px; }
  .power .game .pc1 { grid-area: team; }
  .power .game .pc2 { grid-area: ov; text-align: right; min-width: 92px; padding-right: 0; }
  .power .game .pc3 { grid-area: off; } .power .game .pc4 { grid-area: def; }
  .power .game .pc5 { grid-area: trend; display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 6px; border-top: 1px solid var(--line); padding-top: var(--space-2); }
  .power .game .pc5::before { grid-column: 1 / -1; }
  .power .game .pc5 .spark { width: 54px; height: 22px; }
  .power .game .pc3, .power .game .pc4 { border-top: 1px solid var(--line); padding-top: var(--space-2); }
  .power .pc3 { padding-right: var(--space-2); }
  .pdetail { grid-template-columns: 1fr; margin: -6px 0 var(--space-3); border: 1px solid var(--line); border-radius: 0 0 var(--radius-m) var(--radius-m); padding: var(--space-4); }
  .prow-wrap { border-bottom: 0; }
  .prow-wrap .game { margin-bottom: 0; border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
  .conflist { grid-template-columns: 1fr; }
  .confbox > summary { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2px var(--space-3); }
  .confbox > summary::after { grid-column: 2; grid-row: 1 / span 2; margin-left: 0; }
  .confbox > summary .muted { grid-column: 1; }
  .conf { grid-template-columns: 112px 1fr 44px; } .conf__n { display: none; }
}

/* Density: tighter rows. */
.power .game { min-height: 42px; }
.conf { min-height: 30px; }
