/* ============================================================
   RW CAHA Playoff Archive — extracted from rinkwire.css for use
   on /playoffs.html (which doesn't link rinkwire.css). Source of
   truth for the .caha-archive overlay styling lives here.
   ============================================================ */

/* Inline-flow override: this page is the dedicated home for the archive,
   so the overlay positioning is collapsed and the archive renders as a
   normal in-page section below the playoff dashboard. */
body.rw-playoffs-archive .caha-archive-backdrop{display:none!important}
body.rw-playoffs-archive .caha-archive{position:static!important;transform:none!important;backdrop-filter:none!important;background:transparent!important;display:block!important;width:auto!important;height:auto!important;inset:auto!important;padding:0!important;z-index:auto!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
body.rw-playoffs-archive .caha-close{display:none!important}

/* Canonical .caha-* rules (extracted from rinkwire.css). */
.caha-team-cell {display:flex;align-items:center;gap:9px;min-width:0}
.caha-team-cell .logo {width:30px;height:30px;min-width:30px}
.caha-team-cell .caha-team {min-width:0;white-space:normal;line-height:1.2}
.caha-game b {display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}
.caha-game-team {display:flex;align-items:center;gap:8px;min-width:0}
.caha-game-team.away {justify-content:flex-start}
.caha-game-team.home {justify-content:flex-end;text-align:right}
.caha-game-team .logo {width:28px;height:28px;min-width:28px}
.caha-game-team span:last-child {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.caha-scoreline {font-size:14px;font-weight:950;color:#fff;white-space:nowrap}
.caha-champ-wrap {display:flex;align-items:center;gap:14px;margin-top:10px}
.caha-champ-wrap .big-logo {width:72px;height:72px;margin:0;min-width:72px}
.caha-champ-copy {min-width:0}
.caha-champ-copy b {display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.caha-champ-copy span {display:block;margin-top:4px;color:#7d92ad;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.caha-game b {grid-template-columns:1fr;gap:7px}
.caha-game-team.home {justify-content:flex-start;text-align:left}
.caha-scoreline {text-align:left}
.caha-champ-wrap .big-logo {width:60px;height:60px;min-width:60px}
.caha-division-pills {display:flex;gap:6px;flex-wrap:wrap;margin:-2px 0 12px}
.caha-division-pill {border:1px solid rgba(105,132,170,.20);background:#020914;color:#9fb2ca;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}
.caha-division-pill.active {background:#1677ff;border-color:#1677ff;color:#fff}
.caha-team-cell {display:flex;align-items:center;gap:9px;min-width:0}
.caha-team-cell .logo {width:30px;height:30px;min-width:30px}
.caha-team-cell .caha-team {min-width:0;white-space:normal;line-height:1.2}
.caha-game b {display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}
.caha-game-team {display:flex;align-items:center;gap:8px;min-width:0}
.caha-game-team.away {justify-content:flex-start}
.caha-game-team.home {justify-content:flex-end;text-align:right}
.caha-game-team .logo {width:28px;height:28px;min-width:28px}
.caha-game-team span:last-child {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.caha-scoreline {font-size:14px;font-weight:950;color:#fff;white-space:nowrap}
.caha-champ-wrap {display:flex;align-items:center;gap:14px;margin-top:10px}
.caha-champ-wrap .big-logo {width:72px;height:72px;margin:0;min-width:72px}
.caha-champ-copy {min-width:0}
.caha-champ-copy b {display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.caha-champ-copy span {display:block;margin-top:4px;color:#7d92ad;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.caha-game b {grid-template-columns:1fr;gap:7px}
.caha-game-team.home {justify-content:flex-start;text-align:left}
.caha-scoreline {text-align:left}
.caha-champ-wrap .big-logo {width:60px;height:60px;min-width:60px}
.caha-games {display:grid;gap:8px}
.caha-game {position:relative;border:1px solid rgba(120,150,190,.16);background:rgba(255,255,255,.018);border-radius:10px;padding:10px 11px}
.caha-game b {display:block;color:#f2f7ff;font-size:12px;font-weight:950;line-height:1.35}
.caha-game span {display:block;margin-top:4px;color:#7f93ad;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.045em;line-height:1.35}
.caha-section-sub {display:block;margin:-5px 0 10px;color:#7f93ad;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.caha-team-cell {display:flex;align-items:center;gap:9px;min-width:0}
.caha-team-cell .logo {width:30px;height:30px;min-width:30px}
.caha-team-cell .caha-team {min-width:0;white-space:normal;line-height:1.2}
.caha-game b {display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}
.caha-game-team {display:flex;align-items:center;gap:8px;min-width:0}
.caha-game-team.away {justify-content:flex-start}
.caha-game-team.home {justify-content:flex-end;text-align:right}
.caha-game-team .logo {width:28px;height:28px;min-width:28px}
.caha-game-team span:last-child {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.caha-scoreline {font-size:14px;font-weight:950;color:#fff;white-space:nowrap}
.caha-champ-wrap {display:flex;align-items:center;gap:14px;margin-top:10px}
.caha-champ-wrap .big-logo {width:72px;height:72px;margin:0;min-width:72px}
.caha-champ-copy {min-width:0}
.caha-champ-copy b {display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.caha-champ-copy span {display:block;margin-top:4px;color:#7d92ad;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.caha-game b {grid-template-columns:1fr;gap:7px}
.caha-game-team.home {justify-content:flex-start;text-align:left}
.caha-scoreline {text-align:left}
.caha-champ-wrap .big-logo {width:60px;height:60px;min-width:60px}
.caha-archive-backdrop {position:fixed;inset:0;z-index:190;display:none;background:rgba(1,5,13,.82);backdrop-filter:blur(10px)}
.caha-archive-backdrop.open {display:block}
.caha-archive {position:fixed;inset:18px;z-index:200;display:none;background:linear-gradient(180deg,#030b18,#01050d);border:1px solid rgba(105,132,170,.18);border-radius:14px;box-shadow:0 30px 90px rgba(0,0,0,.76);overflow:hidden;color:#f2f7ff}
.caha-archive.open {display:grid;grid-template-rows:auto auto 1fr}
.caha-head {min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 18px;border-bottom:1px solid rgba(105,132,170,.16);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.008))}
.caha-title {display:flex;align-items:center;gap:10px;min-width:0}
.caha-title b {font-size:14px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.caha-badge {display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;border:1px solid rgba(62,230,166,.24);background:rgba(62,230,166,.08);color:#d8fff0;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.caha-close {border:1px solid rgba(105,132,170,.22);background:#04101f;color:#f2f7ff;border-radius:8px;padding:8px 11px;font-size:11px;font-weight:950;text-transform:uppercase;cursor:pointer}
.caha-tabs {display:flex;gap:6px;overflow:auto;padding:12px 18px;border-bottom:1px solid rgba(105,132,170,.14);background:rgba(255,255,255,.012);scrollbar-gutter:stable}
.caha-tab {border:1px solid rgba(105,132,170,.20);background:#020914;color:#9fb2ca;border-radius:8px;padding:9px 11px;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;cursor:pointer}
.caha-tab.active {background:#1677ff;color:#fff;border-color:#1677ff}
.caha-body {overflow:auto;padding:16px 18px 22px}
.caha-hero {display:grid;grid-template-columns:1.1fr .9fr;gap:12px;margin-bottom:14px}
.caha-card {border:1px solid rgba(105,132,170,.16);background:linear-gradient(180deg,#03101e,#020812 85%);border-radius:12px;padding:14px;box-shadow:0 12px 28px rgba(0,0,0,.65)}
.caha-eyebrow {color:#58a8ff;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.12em}
.caha-card h2 {margin:8px 0 8px;font-size:30px;line-height:.95;letter-spacing:-.055em;text-transform:uppercase}
.caha-card p {margin:0;color:#7f93ad;font-size:12px;font-weight:850;line-height:1.55;text-transform:uppercase;letter-spacing:.045em}
.caha-stat-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.caha-stat {border:1px solid rgba(105,132,170,.14);background:rgba(255,255,255,.018);border-radius:9px;padding:10px}
.caha-stat b {display:block;font-size:22px;font-weight:950;letter-spacing:-.04em}
.caha-stat span {display:block;margin-top:3px;color:#7f93ad;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.07em}
.caha-main {display:grid;grid-template-columns:1fr .78fr;gap:12px}
.caha-section-head {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.caha-section-head h3 {margin:0;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.caha-division-select {border:1px solid rgba(105,132,170,.22);background:#020914;color:#f2f7ff;border-radius:8px;padding:9px 10px;font-size:11px;font-weight:900}
.caha-table {width:100%;border-collapse:collapse}
.caha-table th,.caha-table td {padding:10px 7px;border-bottom:1px solid rgba(105,132,170,.12);font-size:12px;text-align:left}
.caha-table th {color:#7f93ad;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.caha-right {text-align:right!important}
.caha-rank {width:26px;color:#7f93ad;font-weight:950}
.caha-team {font-weight:950;color:#fff}
.caha-chip {display:inline-flex;align-items:center;height:21px;padding:0 7px;border-radius:999px;border:1px solid rgba(105,132,170,.18);background:rgba(255,255,255,.025);color:#9fb2ca;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.caha-chip.champion {border-color:rgba(62,230,166,.28);background:rgba(62,230,166,.08);color:#d8fff0}
.caha-chip.leader {border-color:rgba(234,179,8,.28);background:rgba(234,179,8,.08);color:#fff2bd}
.caha-note {margin-top:12px;padding:10px 11px;border:1px solid rgba(105,132,170,.14);background:rgba(255,255,255,.018);border-radius:9px;color:#7f93ad;font-size:10px;font-weight:850;line-height:1.5;text-transform:uppercase;letter-spacing:.05em}
.caha-games {display:grid;gap:9px}
.caha-game {border:1px solid rgba(105,132,170,.14);background:rgba(255,255,255,.018);border-radius:10px;padding:10px}
.caha-game b {display:block;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.caha-game span {display:block;margin-top:4px;color:#7f93ad;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.05em;line-height:1.4}
.caha-empty {padding:18px;border:1px dashed rgba(105,132,170,.24);border-radius:10px;text-align:center;color:#7f93ad;font-size:11px;font-weight:850;line-height:1.45;text-transform:uppercase;letter-spacing:.05em}
.caha-archive {inset:8px}
.caha-hero,.caha-main {grid-template-columns:1fr}
.caha-card h2 {font-size:25px}
.caha-stat-grid {grid-template-columns:1fr 1fr}
.caha-head {align-items:flex-start;flex-direction:column;padding:12px 14px}
.caha-title {flex-wrap:wrap}
.caha-tabs {padding:10px 14px}
.caha-body {padding:14px}
.caha-table {min-width:520px}
.caha-table-wrap {overflow:auto}
.caha-team-cell {display:flex;align-items:center;gap:9px;min-width:0}
.caha-team-cell .logo {width:30px;height:30px;min-width:30px}
.caha-team-cell .caha-team {min-width:0;white-space:normal;line-height:1.2}
.caha-game b {display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}
.caha-game-team {display:flex;align-items:center;gap:8px;min-width:0}
.caha-game-team.away {justify-content:flex-start}
.caha-game-team.home {justify-content:flex-end;text-align:right}
.caha-game-team .logo {width:28px;height:28px;min-width:28px}
.caha-game-team span:last-child {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.caha-scoreline {font-size:14px;font-weight:950;color:#fff;white-space:nowrap}
.caha-champ-wrap {display:flex;align-items:center;gap:14px;margin-top:10px}
.caha-champ-wrap .big-logo {width:72px;height:72px;margin:0;min-width:72px}
.caha-champ-copy {min-width:0}
.caha-champ-copy b {display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.caha-champ-copy span {display:block;margin-top:4px;color:#7d92ad;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.caha-game b {grid-template-columns:1fr;gap:7px}
.caha-game-team.home {justify-content:flex-start;text-align:left}
.caha-scoreline {text-align:left}
.caha-champ-wrap .big-logo {width:60px;height:60px;min-width:60px}

/* ============================================================
   PLAYOFF HUB MIRROR — visual uplift for the inline archive on
   /playoffs.html. Matches the dashboard's panel gradients, blue
   top-accent hairline, seg-style tabs, glass stat tiles, and
   accent green/gold chips. Scoped via body.rw-playoffs-archive
   so the modal-style overlay (used elsewhere) is untouched.
   ============================================================ */

/* Section wrapper — give the inline archive its own dashboard "page" feel. */
/* Width-align with the playoff hub's .content column: 1536px max, centered,
   left-offset by page padding (22px) + sidebar (177px) + grid gap (18px) =
   217px, right gutter 22px. The hub above uses these exact numbers, so the
   archive lines up edge-for-edge with it. Mobile collapses to 12px gutters. */
body.rw-playoffs-archive .caha-archive{
  width:min(1536px,100vw)!important;
  max-width:1536px!important;
  margin:34px auto 0!important;
  padding:0 22px 0 217px!important;
  box-sizing:border-box!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
  position:relative;
}
body.rw-playoffs-archive .caha-archive::before{
  content:"";
  position:absolute;
  left:217px;right:22px;top:-14px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(80,160,255,.45),transparent);
  z-index:1;
  pointer-events:none;
}
@media (max-width:980px){
  body.rw-playoffs-archive .caha-archive{
    width:auto!important;
    padding:0 12px!important;
  }
  body.rw-playoffs-archive .caha-archive::before{
    left:12px;right:12px;
  }
}

/* Header band — read like the hub's hero strip. */
body.rw-playoffs-archive .caha-head{
  position:relative;
  min-height:78px;
  padding:18px 22px;
  border:1px solid rgba(130,154,185,.28);
  border-radius:5px;
  background:
    radial-gradient(circle at 12% -40%,rgba(22,135,255,.18),transparent 38%),
    linear-gradient(180deg,rgba(7,23,41,.96),rgba(3,12,23,.98));
  box-shadow:0 18px 55px rgba(0,0,0,.34);
  margin-bottom:14px;
}
body.rw-playoffs-archive .caha-head::before{
  content:"";
  position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(80,160,255,.45),transparent);
}
body.rw-playoffs-archive .caha-title b{
  font-size:18px;
  font-weight:1000;
  letter-spacing:.04em;
  color:#f8fbff;
  text-shadow:0 0 18px rgba(22,135,255,.16);
}
body.rw-playoffs-archive .caha-badge{
  height:24px;padding:0 10px;
  border-color:rgba(62,230,166,.34);
  background:rgba(25,216,96,.14);
  color:#9ef7c1;
  font-size:9px;letter-spacing:.10em;
}

/* Division tabs — match the .seg chip group used in the hub filter bar. */
body.rw-playoffs-archive .caha-tabs{
  border:1px solid rgba(130,154,185,.28);
  border-radius:5px;
  background:linear-gradient(180deg,rgba(7,23,41,.94),rgba(3,12,23,.96));
  box-shadow:0 18px 55px rgba(0,0,0,.34);
  padding:10px 14px;
  margin-bottom:14px;
  position:relative;
}
body.rw-playoffs-archive .caha-tabs::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(80,160,255,.32),transparent);
}
body.rw-playoffs-archive .caha-tab{
  border:1px solid rgba(120,150,190,.26);
  background:#051426;
  color:#cbd8ea;
  border-radius:6px;
  padding:9px 12px;
  font-size:10px;
  font-weight:950;
  letter-spacing:.05em;
  transition:background .15s,color .15s,box-shadow .15s,border-color .15s;
}
body.rw-playoffs-archive .caha-tab:hover{
  border-color:rgba(80,160,255,.42);
  color:#f8fbff;
  background:#08203b;
}
body.rw-playoffs-archive .caha-tab.active{
  background:#1265dc;
  border-color:#1687ff;
  color:#fff;
  box-shadow:0 0 16px rgba(20,115,245,.28),inset 0 1px 0 rgba(255,255,255,.06);
}

/* Body — drop the side padding (the inner cards already have polish). */
body.rw-playoffs-archive .caha-body{
  padding:0;
  overflow:visible;
}

/* Hero row — championship card + stat tiles. */
body.rw-playoffs-archive .caha-hero{margin-bottom:14px;gap:14px}
body.rw-playoffs-archive .caha-card{
  position:relative;
  border:1px solid rgba(130,154,185,.28);
  border-radius:5px;
  background:linear-gradient(180deg,rgba(7,23,41,.94),rgba(3,12,23,.96));
  box-shadow:0 18px 55px rgba(0,0,0,.34);
  padding:16px 18px;
  overflow:hidden;
}
body.rw-playoffs-archive .caha-card::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(80,160,255,.32),transparent);
}
body.rw-playoffs-archive .caha-card::after{
  content:"";
  position:absolute;inset:0;
  background:radial-gradient(circle at 90% -40%,rgba(22,135,255,.10),transparent 38%);
  pointer-events:none;
  z-index:0;
}
body.rw-playoffs-archive .caha-card > *{position:relative;z-index:1}

body.rw-playoffs-archive .caha-eyebrow{
  color:#58a8ff;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body.rw-playoffs-archive .caha-card h2{
  margin:8px 0 6px;
  font-size:32px;
  font-weight:1000;
  letter-spacing:-.055em;
  line-height:.96;
  color:#f8fbff;
  text-shadow:0 2px 14px rgba(0,0,0,.4);
}
body.rw-playoffs-archive .caha-card p{
  margin:0;
  color:#a7b8ce;
  font-size:11px;
  font-weight:900;
  line-height:1.55;
  letter-spacing:.05em;
}

/* Stat tiles — glass cards w/ bigger numbers, like .snap-row + .performer-stats. */
body.rw-playoffs-archive .caha-stat-grid{gap:10px}
body.rw-playoffs-archive .caha-stat{
  border:1px solid rgba(130,154,185,.22);
  background:linear-gradient(180deg,rgba(8,24,42,.92),rgba(3,12,23,.96));
  border-radius:6px;
  padding:14px 12px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  transition:border-color .15s,box-shadow .15s;
}
body.rw-playoffs-archive .caha-stat:hover{
  border-color:rgba(80,160,255,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 0 18px rgba(22,135,255,.10);
}
body.rw-playoffs-archive .caha-stat b{
  font-size:24px;
  letter-spacing:-.04em;
  color:#f8fbff;
  text-shadow:0 0 14px rgba(22,135,255,.16);
}
body.rw-playoffs-archive .caha-stat span{
  margin-top:5px;
  color:#8fa2ba;
  font-size:9px;
  letter-spacing:.10em;
}

/* Main grid — standings + games. */
body.rw-playoffs-archive .caha-main{gap:14px}

body.rw-playoffs-archive .caha-section-head{
  margin-bottom:12px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(130,154,185,.16);
}
body.rw-playoffs-archive .caha-section-head h3{
  font-size:14px;
  font-weight:1000;
  letter-spacing:.04em;
  color:#f8fbff;
}
body.rw-playoffs-archive .caha-section-sub{
  color:#8fa2ba;
  font-size:10px;
  letter-spacing:.06em;
}

/* Division select — match the .select / .seg styling. */
body.rw-playoffs-archive .caha-division-select{
  height:34px;
  border:1px solid rgba(120,150,190,.32);
  border-radius:5px;
  background:#051426;
  color:#dbe7f7;
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  padding:0 11px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
body.rw-playoffs-archive .caha-division-select:focus{
  outline:0;
  border-color:#1687ff;
  box-shadow:0 0 0 2px rgba(22,135,255,.20);
}

/* Inline pills (e.g., gender/age splitters within a tab). */
body.rw-playoffs-archive .caha-division-pills{margin-bottom:14px}
body.rw-playoffs-archive .caha-division-pill{
  border:1px solid rgba(120,150,190,.26);
  background:#051426;
  color:#cbd8ea;
  border-radius:999px;
  padding:7px 11px;
  font-size:10px;
  letter-spacing:.06em;
}
body.rw-playoffs-archive .caha-division-pill.active{
  background:#1265dc;
  border-color:#1687ff;
  color:#fff;
  box-shadow:0 0 14px rgba(20,115,245,.26);
}

/* Standings table — hub-style rows. */
body.rw-playoffs-archive .caha-table th{
  color:#8fa2ba;
  font-size:9px;
  letter-spacing:.10em;
  font-weight:1000;
  padding:10px 8px;
  border-bottom:1px solid rgba(130,154,185,.18);
}
body.rw-playoffs-archive .caha-table td{
  padding:11px 8px;
  font-size:12px;
  border-bottom:1px solid rgba(130,154,185,.10);
  transition:background .15s;
}
body.rw-playoffs-archive .caha-table tbody tr{transition:background .15s}
body.rw-playoffs-archive .caha-table tbody tr:hover{
  background:linear-gradient(90deg,rgba(22,135,255,.06),rgba(22,135,255,0));
}
body.rw-playoffs-archive .caha-rank{
  color:#7d92ad;
  font-size:11px;
  font-weight:1000;
  letter-spacing:-.02em;
}
body.rw-playoffs-archive .caha-team{
  color:#f8fbff;
  letter-spacing:-.01em;
}

/* Standing chips — champion green + leader gold, same vibe as .up-tag. */
body.rw-playoffs-archive .caha-chip{
  height:22px;
  padding:0 9px;
  font-size:9px;
  letter-spacing:.08em;
  border-radius:999px;
  border:1px solid rgba(120,150,190,.26);
  background:rgba(255,255,255,.025);
  color:#cbd8ea;
}
body.rw-playoffs-archive .caha-chip.champion{
  border-color:rgba(25,216,96,.40);
  background:rgba(25,216,96,.14);
  color:#9ef7c1;
  box-shadow:0 0 14px rgba(25,216,96,.16);
}
body.rw-playoffs-archive .caha-chip.leader{
  border-color:rgba(255,210,80,.42);
  background:rgba(255,210,80,.12);
  color:#ffe79a;
  box-shadow:0 0 14px rgba(255,210,80,.14);
}

/* Game cards — match the simple-card aesthetic but in dark mode. */
body.rw-playoffs-archive .caha-games{gap:10px}
body.rw-playoffs-archive .caha-game{
  position:relative;
  border:1px solid rgba(130,154,185,.20);
  background:linear-gradient(180deg,rgba(7,23,41,.78),rgba(3,12,23,.88));
  border-radius:7px;
  padding:11px 13px;
  box-shadow:0 4px 12px rgba(0,0,0,.28);
  transition:border-color .15s,box-shadow .15s,transform .15s;
}
body.rw-playoffs-archive .caha-game:hover{
  border-color:rgba(80,160,255,.42);
  box-shadow:0 6px 18px rgba(0,0,0,.40),0 0 18px rgba(22,135,255,.10);
}
body.rw-playoffs-archive .caha-game b{
  color:#f8fbff;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.02em;
}
body.rw-playoffs-archive .caha-game span{
  color:#8fa2ba;
  font-size:10px;
  letter-spacing:.05em;
}
body.rw-playoffs-archive .caha-scoreline{
  font-size:15px;
  font-weight:1000;
  letter-spacing:-.02em;
  color:#fff;
  text-shadow:0 0 14px rgba(255,255,255,.10);
}

/* Champion strip — gold halo on the big logo. */
body.rw-playoffs-archive .caha-champ-wrap{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid rgba(130,154,185,.14);
}
body.rw-playoffs-archive .caha-champ-wrap .big-logo{
  border-radius:14px;
  background:linear-gradient(180deg,#fbfdff,#dee5ee);
  box-shadow:0 0 0 2px rgba(255,255,255,.6),0 12px 22px rgba(0,0,0,.4),0 0 28px rgba(255,210,80,.18);
}
body.rw-playoffs-archive .caha-champ-copy b{
  font-size:14px;
  letter-spacing:.05em;
  color:#f8fbff;
}
body.rw-playoffs-archive .caha-champ-copy span{
  color:#9ef7c1;
  letter-spacing:.08em;
  margin-top:5px;
}

/* Notes / empty states — soften the dashed look. */
body.rw-playoffs-archive .caha-note{
  margin-top:14px;
  padding:12px 13px;
  border:1px solid rgba(130,154,185,.16);
  background:linear-gradient(180deg,rgba(7,23,41,.78),rgba(3,12,23,.88));
  border-radius:7px;
  color:#9ab0c8;
  font-size:10px;
  line-height:1.55;
  letter-spacing:.05em;
}
body.rw-playoffs-archive .caha-empty{
  border-color:rgba(130,154,185,.28);
  background:rgba(7,23,41,.50);
  color:#8fa2ba;
  border-radius:7px;
  padding:22px 18px;
  font-size:11px;
}

/* Game team cells inside the score block — sharper logos, brighter names. */
body.rw-playoffs-archive .caha-game-team .logo,
body.rw-playoffs-archive .caha-team-cell .logo{
  border:1px solid rgba(255,255,255,.08);
  background:#fbfdff;
  border-radius:5px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 2px 6px rgba(0,0,0,.32);
}
body.rw-playoffs-archive .caha-game-team span:last-child{
  color:#f2f7ff;
  font-weight:950;
  letter-spacing:.01em;
}

/* Compact spacing on narrower viewports — keep the look but breathe less. */
@media (max-width:980px){
  body.rw-playoffs-archive .caha-archive{margin-top:24px}
  body.rw-playoffs-archive .caha-head{padding:14px 14px;min-height:0}
  body.rw-playoffs-archive .caha-card h2{font-size:24px}
  body.rw-playoffs-archive .caha-tabs{padding:8px 10px}
}

/* ============================================================
   ARCHIVE REDESIGN (arx-*) — full hub-style panel system for the
   inline /playoffs.html archive. Replaces the old .caha-card grid
   with: hero (championship game) → showcase + standings (2-col)
   → pool schedule → CAHA note. Mirrors the dashboard above.
   Scoped under body.rw-playoffs-archive so the modal flow elsewhere
   keeps its existing visuals.
   ============================================================ */

/* Tabs — group seg + division seg */
body.rw-playoffs-archive .caha-tabs{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin-bottom:14px;
}
body.rw-playoffs-archive .caha-tabs::before{display:none!important}
body.rw-playoffs-archive .arx-group-seg,
body.rw-playoffs-archive .arx-div-seg{
  display:inline-flex;
  flex-wrap:wrap;
  gap:2px;
  border:1px solid rgba(120,150,190,.24);
  background:#051426;
  border-radius:8px;
  padding:3px;
  align-items:center;
  vertical-align:middle;
}
body.rw-playoffs-archive .arx-group-seg button,
body.rw-playoffs-archive .arx-div-seg button{
  border:0;background:transparent;color:#dce8f8;
  padding:9px 12px;border-radius:6px;
  font-size:11px;font-weight:900;cursor:pointer;
  text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;
}
body.rw-playoffs-archive .arx-group-seg button.active,
body.rw-playoffs-archive .arx-div-seg button.active{
  background:#1265dc;color:#fff;
  box-shadow:0 0 16px rgba(20,115,245,.16);
}
body.rw-playoffs-archive .arx-div-seg{margin-bottom:14px;display:flex}

/* Panels */
body.rw-playoffs-archive .arx-panel{
  position:relative;
  border:1px solid rgba(130,154,185,.28);
  border-radius:5px;
  background:linear-gradient(180deg,rgba(7,23,41,.94),rgba(3,12,23,.96));
  box-shadow:0 18px 55px rgba(0,0,0,.34);
  margin-bottom:14px;
  overflow:hidden;
}
body.rw-playoffs-archive .arx-panel::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(80,160,255,.35),transparent);
  pointer-events:none;
}
body.rw-playoffs-archive .arx-section-head{
  display:flex;align-items:center;gap:12px;
  margin:0;padding:18px 22px 14px;
  border-bottom:1px solid rgba(130,154,185,.14);
}
body.rw-playoffs-archive .arx-section-head h2{
  margin:0;font-size:14px;font-weight:1000;
  text-transform:uppercase;letter-spacing:.04em;color:#f8fbff;
}
body.rw-playoffs-archive .arx-section-meta{
  margin-left:auto;color:#7d92ad;font-size:10px;font-weight:1000;
  letter-spacing:.08em;text-transform:uppercase;
}

/* Hero panel — championship game centered, hub hero vibe */
body.rw-playoffs-archive .arx-hero-panel{
  padding:18px 24px 22px;
  background:
    radial-gradient(circle at 50% -22%,rgba(38,135,255,.32),transparent 46%),
    linear-gradient(180deg,rgba(7,23,41,.94),rgba(3,12,23,.96));
}
body.rw-playoffs-archive .arx-hero-title{text-align:center;text-transform:uppercase;margin-bottom:14px}
body.rw-playoffs-archive .arx-hero-title h2{margin:0 0 4px;font-size:18px;font-weight:1000;letter-spacing:-.03em;color:#fff}
body.rw-playoffs-archive .arx-hero-title p{margin:0;font-size:11px;font-weight:900;letter-spacing:.08em;color:#d9e7f7}
body.rw-playoffs-archive .arx-score-row{
  display:grid;grid-template-columns:minmax(0,1fr) 220px minmax(0,1fr);
  gap:24px;align-items:center;padding:8px 0 4px;
}
body.rw-playoffs-archive .arx-team{display:flex;align-items:center;gap:14px;min-width:0}
body.rw-playoffs-archive .arx-team-right{justify-content:flex-end}
body.rw-playoffs-archive .arx-mark{
  width:88px;height:88px;border-radius:16px;
  background:#f4f7fb;
  display:grid;place-items:center;
  box-shadow:inset 0 0 0 2px rgba(0,0,0,.14),inset 0 0 0 4px rgba(255,255,255,.68),0 14px 28px rgba(0,0,0,.42);
  overflow:hidden;position:relative;flex:0 0 88px;
}
body.rw-playoffs-archive .arx-mark::after{
  content:attr(data-initials);position:absolute;inset:0;display:grid;place-items:center;
  font-size:22px;font-weight:1000;letter-spacing:-.04em;color:#07111e;z-index:1;
}
body.rw-playoffs-archive .arx-mark img{position:relative;z-index:2;width:92%;height:92%;object-fit:contain;display:block}
body.rw-playoffs-archive .arx-mark.no-logo img{display:none}
body.rw-playoffs-archive .arx-mark:not(.no-logo)::after{display:none}
body.rw-playoffs-archive .arx-team-name{
  font-size:18px;font-weight:1000;line-height:1.05;text-transform:uppercase;letter-spacing:-.02em;color:#fff;
  text-shadow:0 2px 14px rgba(0,0,0,.36);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;
}
body.rw-playoffs-archive .arx-team-right .arx-team-name{text-align:right}
body.rw-playoffs-archive .arx-center-score{text-align:center}
body.rw-playoffs-archive .arx-center-score span{
  display:block;font-size:11px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;color:#9ef7c1;
  text-shadow:0 0 14px rgba(25,216,96,.28);margin-bottom:8px;
}
body.rw-playoffs-archive .arx-center-score b{
  display:block;font-size:46px;line-height:.9;letter-spacing:-.045em;color:#fff;
  text-shadow:0 0 24px rgba(255,255,255,.18);white-space:nowrap;
}
body.rw-playoffs-archive .arx-clock{margin-top:10px;font-size:10px;font-weight:1000;letter-spacing:.06em;text-transform:uppercase;color:#8ea3bb}
body.rw-playoffs-archive .arx-hero-empty{display:flex;align-items:center;justify-content:center;gap:18px;padding:18px 0 8px}
body.rw-playoffs-archive .arx-hero-empty-name{font-size:30px;font-weight:1000;letter-spacing:-.04em;color:#fff;line-height:1;text-transform:uppercase}
body.rw-playoffs-archive .arx-hero-empty-meta{font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#8ea3bb;margin-top:6px}
body.rw-playoffs-archive .arx-eyebrow{font-size:10px;font-weight:1000;letter-spacing:.14em;text-transform:uppercase;color:#9ef7c1;margin-bottom:6px}

/* Showcase + Standings — 2-col grid */
body.rw-playoffs-archive .arx-grid-2{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:14px;margin-bottom:14px}
body.rw-playoffs-archive .arx-grid-2 > .arx-panel{margin-bottom:0}

/* Showcase panel */
body.rw-playoffs-archive .arx-showcase{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,1fr);
  gap:18px;padding:16px 18px 18px;
}
body.rw-playoffs-archive .arx-showcase-podium{display:flex;flex-direction:column;gap:9px;justify-content:center}
body.rw-playoffs-archive .arx-medal{
  display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center;
  padding:11px 14px;border-radius:8px;
  border:1px solid rgba(120,150,190,.22);
  background:linear-gradient(180deg,rgba(8,24,46,.78),rgba(3,12,25,.88));
  box-shadow:0 4px 12px rgba(0,0,0,.28);
}
body.rw-playoffs-archive .arx-medal-rank{
  display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
  font-size:15px;font-weight:1000;color:#07111e;letter-spacing:-.03em;
  text-shadow:0 1px 0 rgba(255,255,255,.4);
}
body.rw-playoffs-archive .arx-medal.silver .arx-medal-rank{background:linear-gradient(180deg,#f0f4fa,#a9b3c1);box-shadow:0 0 14px rgba(220,230,245,.32),inset 0 1px 0 rgba(255,255,255,.6)}
body.rw-playoffs-archive .arx-medal.bronze .arx-medal-rank{background:linear-gradient(180deg,#e8b385,#9c6a3e);color:#1a0a04;box-shadow:0 0 14px rgba(232,179,133,.3),inset 0 1px 0 rgba(255,255,255,.4)}
body.rw-playoffs-archive .arx-medal.pewter .arx-medal-rank{background:linear-gradient(180deg,#9aaabe,#5e6e80);color:#0a0f15;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
body.rw-playoffs-archive .arx-medal-name{font-size:13px;font-weight:1000;text-transform:uppercase;color:#f7fbff;line-height:1.05;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.rw-playoffs-archive .arx-medal-sub{font-size:9px;font-weight:900;color:#92a6bf;text-transform:uppercase;letter-spacing:.04em;margin-top:2px}
body.rw-playoffs-archive .arx-medal-pts{font-size:15px;font-weight:1000;color:#fff;letter-spacing:-.02em}
body.rw-playoffs-archive .arx-showcase-center{
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;
  padding:8px 14px;border-left:1px solid rgba(120,150,190,.16);
}
body.rw-playoffs-archive .arx-showcase-eyebrow{font-size:10px;font-weight:1000;letter-spacing:.14em;text-transform:uppercase;color:#ffd24d}
body.rw-playoffs-archive .arx-showcase-mark{
  width:104px;height:104px;border-radius:20px;background:linear-gradient(180deg,#fbfdff,#dee5ee);
  display:grid;place-items:center;color:#07111e;
  box-shadow:0 0 0 2px rgba(255,255,255,.72),0 14px 24px rgba(0,0,0,.5),0 0 36px rgba(255,210,80,.18);
  position:relative;overflow:hidden;
}
body.rw-playoffs-archive .arx-showcase-mark::after{
  content:attr(data-initials);position:absolute;inset:0;display:grid;place-items:center;
  font-size:32px;font-weight:1000;letter-spacing:-.06em;color:#07111e;z-index:1;
}
body.rw-playoffs-archive .arx-showcase-mark img{position:relative;z-index:2;width:92%;height:92%;object-fit:contain;display:block}
body.rw-playoffs-archive .arx-showcase-mark.no-logo img{display:none}
body.rw-playoffs-archive .arx-showcase-mark:not(.no-logo)::after{display:none}
body.rw-playoffs-archive .arx-showcase-name{
  font-size:24px;font-weight:1000;text-transform:uppercase;letter-spacing:-.04em;line-height:1;color:#fff;
  text-shadow:0 2px 14px rgba(0,0,0,.45);max-width:100%;overflow-wrap:break-word;
}
body.rw-playoffs-archive .arx-showcase-meta{font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#9ef7c1}

/* Standings panel — leader-row stack */
body.rw-playoffs-archive .arx-standings-body{padding:6px 16px 12px}
body.rw-playoffs-archive .arx-leader-row{
  display:grid;grid-template-columns:24px 28px minmax(0,1fr) 44px;
  gap:10px;align-items:center;
  padding:10px 0;font-size:12px;
  border-bottom:1px solid rgba(130,154,185,.10);
}
body.rw-playoffs-archive .arx-leader-row:last-child{border-bottom:0}
body.rw-playoffs-archive .arx-rank-num{color:#7d92ad;font-size:11px;font-weight:1000;letter-spacing:-.02em}
body.rw-playoffs-archive .arx-leader-info{min-width:0}
body.rw-playoffs-archive .arx-leader-name{font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:-.01em;color:#f8fbff;line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.rw-playoffs-archive .arx-leader-tag{margin-top:3px}
body.rw-playoffs-archive .arx-leader-tag .up-tag{
  display:inline-block;background:rgba(25,216,96,.16);color:#9ef7c1;
  border:1px solid rgba(25,216,96,.34);border-radius:999px;
  text-transform:uppercase;font-size:8px;font-weight:1000;padding:3px 6px;
}
body.rw-playoffs-archive .arx-leader-pts{font-size:16px;font-weight:1000;letter-spacing:-.04em;color:#fff;text-align:right;display:block}

/* Schedule panel */
body.rw-playoffs-archive .arx-schedule-body{padding:14px 22px 18px}
body.rw-playoffs-archive .arx-game-row{
  display:grid;
  grid-template-columns:64px minmax(0,1fr) minmax(0,1fr) 70px 110px;
  gap:12px;align-items:center;
  padding:10px 0;
  border-bottom:1px solid rgba(148,163,184,.10);
}
body.rw-playoffs-archive .arx-game-row:last-child{border-bottom:0}
body.rw-playoffs-archive .arx-game-when{display:flex;flex-direction:column;line-height:1.1}
body.rw-playoffs-archive .arx-game-when strong{font-size:11px;font-weight:1000;letter-spacing:.04em;text-transform:uppercase;color:#f8fbff}
body.rw-playoffs-archive .arx-game-when span{font-size:9px;color:#8fa2ba;font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-top:2px}
body.rw-playoffs-archive .arx-game-side{display:flex;align-items:center;gap:8px;min-width:0}
body.rw-playoffs-archive .arx-game-side.home{justify-content:flex-end;text-align:right}
body.rw-playoffs-archive .arx-game-side .tiny{flex:0 0 25px}
body.rw-playoffs-archive .arx-game-side > span{
  font-size:11px;font-weight:1000;text-transform:uppercase;color:#f8fbff;letter-spacing:.01em;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1 auto;
}
body.rw-playoffs-archive .arx-game-side > b{font-size:14px;font-weight:1000;letter-spacing:-.02em;color:#fff;flex:0 0 auto}
body.rw-playoffs-archive .arx-game-status{
  font-size:9px;font-weight:1000;letter-spacing:.06em;text-transform:uppercase;text-align:center;
  border-radius:6px;padding:5px 7px;justify-self:end;align-self:center;
}
body.rw-playoffs-archive .arx-game-status.final{color:#9ef7c1;background:rgba(25,216,96,.10);border:1px solid rgba(25,216,96,.30)}
body.rw-playoffs-archive .arx-game-status.pending{color:#8fa2ba;background:rgba(143,162,186,.10);border:1px solid rgba(143,162,186,.28)}
body.rw-playoffs-archive .arx-game-rink{
  font-size:9px;color:#8fa2ba;font-weight:900;text-transform:uppercase;letter-spacing:.04em;
  text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}

/* Note panel */
body.rw-playoffs-archive .arx-note-panel{
  padding:14px 18px;display:grid;grid-template-columns:minmax(0,1fr) auto;
  gap:18px;align-items:center;
}
body.rw-playoffs-archive .arx-note-body h2{font-size:13px;margin:0 0 5px;text-transform:uppercase;font-weight:1000;letter-spacing:.04em;color:#f8fbff;line-height:1}
body.rw-playoffs-archive .arx-note-body p{font-size:10px;margin:0;color:#a7b8ce;text-transform:uppercase;font-weight:900;line-height:1.5;letter-spacing:.04em}
body.rw-playoffs-archive .arx-note-badge{
  display:inline-flex;align-items:center;height:26px;padding:0 12px;
  border:1px solid rgba(62,230,166,.34);background:rgba(25,216,96,.14);color:#9ef7c1;
  border-radius:999px;font-size:9px;font-weight:1000;letter-spacing:.10em;text-transform:uppercase;white-space:nowrap;
}

/* Empty states */
body.rw-playoffs-archive .arx-empty{
  border:1px dashed rgba(130,154,185,.28);background:rgba(7,23,41,.50);color:#8fa2ba;
  border-radius:7px;padding:22px 18px;font-size:11px;font-weight:850;line-height:1.45;
  letter-spacing:.04em;text-transform:uppercase;text-align:center;margin:0 0 14px;
}
body.rw-playoffs-archive .arx-empty-mini{
  color:#8fa2ba;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;
  line-height:1.45;text-align:center;padding:18px 12px;
}

/* Mobile collapse */
@media (max-width:980px){
  body.rw-playoffs-archive .arx-grid-2{grid-template-columns:1fr}
  body.rw-playoffs-archive .arx-showcase{grid-template-columns:1fr;gap:14px}
  body.rw-playoffs-archive .arx-showcase-center{border-left:0;border-top:1px solid rgba(120,150,190,.16);padding-top:14px}
  body.rw-playoffs-archive .arx-score-row{grid-template-columns:1fr;gap:18px}
  body.rw-playoffs-archive .arx-team-right{justify-content:flex-start}
  body.rw-playoffs-archive .arx-team-right .arx-team-name{text-align:left}
  body.rw-playoffs-archive .arx-game-row{grid-template-columns:55px minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:6px 8px}
  body.rw-playoffs-archive .arx-game-status{grid-column:2;grid-row:2;justify-self:start}
  body.rw-playoffs-archive .arx-game-rink{grid-column:3;grid-row:2;text-align:left}
  body.rw-playoffs-archive .arx-note-panel{grid-template-columns:1fr;gap:12px}
}
