
    body.leaderboard-body { margin: 0; background: linear-gradient(180deg, #f4f7fb 0%, #eef2f7 100%); color: #17212f; font-family: "Segoe UI", "Hiragino Sans", "Yu Gothic UI", sans-serif; overflow-x: hidden; }
    .leaderboard-shell { width: min(var(--site-shell-max-width), calc(100vw - 48px)); margin: 14px auto 28px; padding: 0 0 56px; box-sizing: border-box; }
    .leaderboard-shell .card { padding: var(--site-header-card-padding-y) var(--site-header-card-padding-x); }
    .leaderboard-hero { display:block; }
    .leaderboard-header-row { display:grid; grid-template-columns:minmax(360px, var(--site-header-brand-width)) minmax(0, 1fr); align-items:center; gap:var(--site-header-gap); }
    .leaderboard-header-copy { display:flex; flex-direction:column; justify-content:center; gap:8px; min-width:0; }
    .leaderboard-hero > * { min-width: 0; }
    .leaderboard-kicker { margin:0 0 8px; font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color: #5f6d83; }
    .leaderboard-title { margin:0; font-size:clamp(30px,4vw,44px); line-height:1.08; color: #10264d; }
    .leaderboard-lead { margin:14px 0 0; font-size:15px; line-height:1.8; color: #5f6d83; }
    .leaderboard-spacer { height: 6px; }
    .leaderboard-note-list { margin:16px 0 0; padding-left:18px; color: #5f6d83; line-height:1.8; font-size:13px; }
    .leaderboard-summary { border:1px solid #d8e0ee; border-radius:22px; background:linear-gradient(180deg,#f9fbff 0%,#f3f7fc 100%); padding:20px; }
    .leaderboard-summary h2 { margin:0 0 10px; font-size:18px; color: #10264d; }
    .leaderboard-summary p { margin:0; font-size:14px; line-height:1.8; color: #5f6d83; }
    .leaderboard-meta { margin-top:14px; display:grid; gap:10px; }
    .leaderboard-meta__row { display:flex; justify-content:space-between; gap:16px; font-size:13px; color: #5f6d83; border-top:1px solid #e1e8f2; padding-top:10px; }
    .leaderboard-page-details-card { margin-top: 18px; }
    .leaderboard-page-details { display:grid; gap:20px; grid-template-columns: minmax(0,1.35fr) minmax(300px,.9fr); align-items:start; }
    .leaderboard-details-copy { min-width:0; }
    .team-primary-nav { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:18px; }
    .team-pill { appearance:none; border:1px solid rgba(60, 104, 188, 0.28); border-radius:999px; background:#fff; color:#294d82; font-size:0.92rem; font-weight:700; line-height:1; padding:10px 14px; text-decoration:none; cursor:pointer; transition:background 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease; box-shadow:0 8px 18px rgba(25, 54, 104, 0.06); }
    .team-pill:hover { background:#eef4ff; border-color:rgba(41, 77, 130, 0.42); }
    .team-pill.is-active { background:linear-gradient(135deg, #1f57b8, #4b7ddd); border-color:#1f57b8; color:#fff; box-shadow:0 12px 26px rgba(31, 87, 184, 0.2); }
    .leaderboard-filters { margin-top:22px; display:grid; gap:14px; grid-template-columns: minmax(240px,1.3fr) repeat(3, minmax(130px,.45fr)); }
    .leaderboard-filter { display:flex; flex-direction:column; gap:7px; }
    .leaderboard-filter label { font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color: #5f6d83; }
    .leaderboard-filter input, .leaderboard-filter select { width:100%; border:1px solid #cbd6e5; border-radius:12px; padding:11px 13px; font-size:14px; background:#fff; color: #17212f; }
    .leaderboard-toolbar { display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px; align-items:center; margin-top:16px; }
    .leaderboard-toolbar__hint { font-size:13px; line-height:1.7; color: #5f6d83; }
    .leaderboard-toolbar__stats { display:flex; flex-wrap:wrap; gap:10px; }
    .leaderboard-badge { display:inline-flex; align-items:center; gap:6px; border-radius:999px; background:#eef3fb; color:#10264d; padding:8px 12px; font-size:12px; font-weight:700; }
    .leaderboard-table-card { margin-top:18px; overflow: hidden; }
    .leaderboard-scroll-top { overflow-x:auto; overflow-y:hidden; border:1px solid #d8e0ee; border-bottom:none; border-radius:20px 20px 0 0; background:#f7f9fd; height:18px; margin: 0 -30px; }
    .leaderboard-scroll-top__inner { height:1px; }
    .leaderboard-table-wrap { overflow:auto; border:1px solid #d8e0ee; border-radius:0 0 20px 20px; background:#fff; margin: 0 -30px; }
    table.leaderboard-table { width:max(100%, 1700px); border-collapse:separate; border-spacing:0; font-size:14px; }
    .leaderboard-table thead th { position:sticky; top:0; z-index:4; background:#f7f9fd; color:#10264d; font-size:12px; letter-spacing:.06em; text-transform:uppercase; border-bottom:1px solid #d8e0ee; padding:14px 14px; text-align:right; white-space:nowrap; }
    .leaderboard-table thead th.is-text { text-align:left; }
    .leaderboard-table thead th button { all:unset; cursor:pointer; display:inline-flex; align-items:center; gap:6px; }
    .leaderboard-table thead th button:hover { color: #e7354f; }
    .leaderboard-table thead th .sort-indicator { font-size:10px; color:#8a95a7; min-width:12px; text-align:center; }
    .leaderboard-table tbody td { padding:13px 14px; border-bottom:1px solid #ebf0f6; color:#17212f; text-align:right; white-space:nowrap; }
    .leaderboard-table tbody tr:hover td { background:#fbfcff; }
    .leaderboard-table tbody td.is-text { text-align:left; }
    .leaderboard-table tbody td.player-cell { min-width:180px; max-width:180px; width:180px; }
    .leaderboard-table tbody td.team-cell { min-width:104px; max-width:104px; width:104px; }
    .leaderboard-player-link { color:#10264d; font-weight:700; text-decoration:none; }
    .leaderboard-player-link:hover { color:#e7354f; text-decoration:underline; }
    .leaderboard-player-link { display:inline-block; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
    .leaderboard-player-romaji { display:block; margin-top:3px; font-size:11px; line-height:1.4; color:#7b8797; white-space:normal; overflow-wrap:anywhere; }
    .leaderboard-team-name { display:inline-block; font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .leaderboard-empty { padding:20px; text-align:center; color:#5f6d83; font-size:14px; }
    @media (max-width: 980px) {
      .leaderboard-page-details, .leaderboard-filters { grid-template-columns:1fr; }
    }
    @media (max-width: 820px) {
      .leaderboard-kicker,
      .leaderboard-title {
        margin-left: 0;
      }
    }
    @media (max-width: 720px) {
      .leaderboard-shell { margin: 8px auto 18px; padding: 0 0 40px; }
      .leaderboard-shell .card { padding: 20px 18px; }
      .leaderboard-scroll-top { margin: 0 -18px; }
      .leaderboard-table-wrap { margin: 0 -18px; }
      .leaderboard-table { font-size:13px; }
      .leaderboard-table thead th, .leaderboard-table tbody td { padding:12px 10px; }
      .leaderboard-table tbody td.player-cell { min-width:136px; max-width:136px; width:136px; }
      .leaderboard-table tbody td.team-cell { min-width:92px; max-width:92px; width:92px; }
      .leaderboard-team-name { font-size:12px; }
    }
  

    /* 2026-04-24 mobile header containment root fix */
    @media (max-width: 720px) {
      .leaderboard-shell { width: calc(100vw - 20px) !important; max-width: calc(100vw - 20px) !important; min-width: 0 !important; }
      .leaderboard-header-row { grid-template-columns: minmax(0, 1fr) !important; gap: 18px !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
      .leaderboard-header-copy, .leaderboard-header-row > * { min-width: 0 !important; max-width: 100% !important; }
      .leaderboard-title { font-size: clamp(13px, 3.35vw, 23px) !important; line-height: 1.12 !important; white-space: nowrap !important; overflow-wrap: normal !important; word-break: keep-all !important; max-width: 100% !important; letter-spacing: -0.035em !important; overflow: visible !important; }
      .team-pill { white-space: nowrap !important; writing-mode: horizontal-tb !important; }
    }
  

/* leaderboard controls v2.1: fix dropdown toggle, savant-style dropdowns, compact columns */
.leaderboard-table-card { overflow: visible; }
.leaderboard-controls-line {
  margin-top: 20px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:flex-end;
}
.leaderboard-control-block { position:relative; min-width:0; }
.leaderboard-control-button,
.leaderboard-filter--compact select {
  min-height:44px;
  border:1px solid #cbd6e5;
  border-radius:12px;
  background:#fff;
  color:#10264d;
  padding:0 14px;
  font-size:13px;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 6px 14px rgba(16,38,77,.05);
}
.leaderboard-control-button { display:inline-flex; align-items:center; justify-content:space-between; gap:12px; white-space:nowrap; }
.leaderboard-control-button::after { content:'▼'; font-size:10px; color:#5f6d83; }
.leaderboard-control-button:hover,
.leaderboard-filter--compact select:hover { border-color:#2f66d8; }
.leaderboard-control-button--year { min-width:150px; }
.leaderboard-control-button--filter { min-width:178px; }
.leaderboard-control-button--columns { min-width:210px; }
.leaderboard-filter--compact { display:flex; flex-direction:column; gap:6px; min-width:190px; }
.leaderboard-filter--compact label { font-size:11px; font-weight:900; color:#5f6d83; letter-spacing:.1em; text-transform:uppercase; }
.leaderboard-filter--compact select { width:100%; text-transform:none; letter-spacing:0; }
.leaderboard-filter--rows { min-width:120px; }
.leaderboard-dropdown-panel {
  position:absolute;
  left:0;
  top:calc(100% + 6px);
  z-index:50;
  min-width:240px;
  max-width:min(760px, calc(100vw - 48px));
  border:1px solid #cbd6e5;
  border-radius:14px;
  background:#fff;
  box-shadow:0 18px 36px rgba(16,38,77,.18);
  padding:14px;
}
.leaderboard-dropdown-panel[hidden] { display:none !important; }
.leaderboard-dropdown-panel--columns { width:720px; }
.leaderboard-dropdown-title {
  margin:0 0 10px;
  font-size:12px;
  font-weight:900;
  color:#10264d;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.leaderboard-dropdown-actions { display:flex; justify-content:flex-end; gap:8px; margin-bottom:10px; }
.leaderboard-dropdown-action {
  border:1px solid #cbd6e5;
  border-radius:999px;
  background:#fff;
  color:#10264d;
  padding:7px 11px;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.leaderboard-dropdown-action:hover { border-color:#2f66d8; color:#2f66d8; }
.leaderboard-picker-list {
  display:grid;
  gap:8px;
  max-height:320px;
  overflow:auto;
}
.leaderboard-picker-list--columns { grid-template-columns:repeat(auto-fill, minmax(145px, 1fr)); gap:9px 14px; }
.leaderboard-picker-choice {
  display:flex;
  align-items:center;
  gap:8px;
  color:#17212f;
  font-size:13px;
  line-height:1.35;
}
.leaderboard-picker-choice input { width:auto; margin:0; }
.leaderboard-picker-choice.is-locked { font-weight:900; color:#10264d; }
.leaderboard-custom-input-wrap { margin-top:10px; display:none; }
.leaderboard-custom-input-wrap.is-active { display:block; }
.leaderboard-custom-input-wrap input {
  width:100%;
  border:1px solid #cbd6e5;
  border-radius:10px;
  padding:9px 10px;
  font-size:13px;
}
.leaderboard-scroll-top { margin: 10px -30px 0; }
.leaderboard-table-wrap { margin: 0 -30px; }
table.leaderboard-table {
  width:max-content !important;
  min-width:0 !important;
  table-layout:auto !important;
}
.leaderboard-table thead th,
.leaderboard-table tbody td { padding:12px 12px; min-width:62px; max-width:132px; }
.leaderboard-table thead th.is-text,
.leaderboard-table tbody td.is-text { min-width:96px; max-width:210px; }
.leaderboard-table tbody td.player-cell { min-width:170px !important; max-width:190px !important; width:180px !important; }
.leaderboard-table tbody td.team-cell { min-width:96px !important; max-width:118px !important; width:108px !important; }
@media (max-width: 900px) {
  .leaderboard-controls-line { display:grid; grid-template-columns:1fr 1fr; }
  .leaderboard-control-button, .leaderboard-filter--compact, .leaderboard-filter--compact select { width:100%; }
  .leaderboard-dropdown-panel--columns { width:min(720px, calc(100vw - 48px)); }
}
@media (max-width: 620px) {
  .leaderboard-controls-line { grid-template-columns:1fr; }
  .leaderboard-picker-list--columns { grid-template-columns:1fr 1fr; }
}

/* Page-level metric controls must remain visible when site navigation is hidden. */
.farm-metric-views {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  min-width:0;
}
.farm-metric-views .team-pill { min-height:44px; }
@media (max-width:720px) {
  .farm-metric-views {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
  }
  .farm-metric-views .team-pill {
    box-sizing:border-box;
    min-width:0;
    padding:0 4px;
    font-size:14px;
  }
}

