.mlbsd-standalone{margin:0;min-height:100%;background:#f4f6f8}.mlbsd-standalone .mlbsd-public-page,.mlbsd-standalone .mlbsd-player-page{min-height:100vh;box-sizing:border-box}
.mlbsd-player-page,.mlbsd-public-page{background:#f4f6f8;padding:28px 16px 64px;color:#171717}.mlbsd-player-wrap{width:min(1120px,100%);margin:0 auto}.mlbsd-public-header{display:grid;grid-template-columns:auto minmax(260px,1fr);gap:14px 24px;align-items:center;margin:0 0 18px}.mlbsd-brand{font-size:22px;font-weight:900;letter-spacing:-.02em;color:#101820;text-decoration:none}.mlbsd-search{display:flex;gap:8px;justify-self:end;width:min(520px,100%)}.mlbsd-search input{width:100%;min-width:0;border:1px solid #cbd2da;border-radius:8px;padding:10px 12px;background:#fff;font-size:14px}.mlbsd-search button{border:0;border-radius:8px;padding:10px 16px;background:#0f4c81;color:#fff;font-weight:800;cursor:pointer}.mlbsd-public-nav{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.mlbsd-public-nav a{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border:1px solid #d9dfe6;border-radius:999px;background:#fff;color:#18354f;text-decoration:none;font-weight:700;font-size:14px}.mlbsd-coverage-note{border:1px solid #dbe5ef;border-left:4px solid #0f4c81;background:#f8fbff;border-radius:6px;padding:11px 14px;margin:0 0 18px;color:#40566b;font-size:13px;line-height:1.7}.mlbsd-fixture-notice{border:1px solid #e7b416;background:#fff8dc;padding:10px 14px;margin-bottom:18px;font-weight:700}.mlbsd-player-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin:0 0 20px}.mlbsd-player-header h1{font-size:clamp(32px,5vw,54px);line-height:1.08;margin:4px 0 0;letter-spacing:-.035em}.mlbsd-player-id,.mlbsd-name-en,.mlbsd-current-team{color:#66717c}.mlbsd-name-en{font-size:18px;margin:7px 0 0}.mlbsd-current-team{margin:5px 0 0;font-weight:700}.mlbsd-status-badge{border:1px solid #c9d2dc;border-radius:999px;padding:7px 12px;background:#fff;font-weight:700;white-space:nowrap}.mlbsd-card{background:#fff;border:1px solid #dde2e7;border-radius:10px;padding:20px;margin:0 0 18px;box-shadow:0 1px 2px rgba(20,35,50,.025)}.mlbsd-card h1{font-size:clamp(28px,4vw,42px);line-height:1.15;margin:2px 0 12px;letter-spacing:-.025em}.mlbsd-card h2{font-size:20px;margin:0 0 14px}.mlbsd-card p{line-height:1.75}.mlbsd-kicker{margin:0!important;font-size:12px;font-weight:900;letter-spacing:.12em;color:#0f4c81}.mlbsd-hero-card{padding:28px}.mlbsd-cta{display:inline-flex;margin-top:8px;border-radius:8px;background:#0f4c81;color:#fff!important;text-decoration:none;padding:11px 16px;font-weight:800}.mlbsd-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0}.mlbsd-facts>div{padding:10px 12px;border-top:1px solid #edf0f3}.mlbsd-facts dt{font-size:12px;color:#68737e;margin-bottom:3px}.mlbsd-facts dd{margin:0;font-weight:700}.mlbsd-table-scroll{overflow-x:auto}.mlbsd-table{width:100%;border-collapse:collapse;font-size:14px}.mlbsd-table th,.mlbsd-table td{text-align:left;padding:10px 12px;border-bottom:1px solid #e8edf1;white-space:nowrap;vertical-align:top}.mlbsd-table th{background:#f4f6f8;font-weight:800;color:#374a5c}.mlbsd-subrow td{background:#fafbfc;white-space:normal}.mlbsd-subrow span{display:inline-block;margin-left:12px}.mlbsd-contract-summary{display:flex;flex-wrap:wrap;gap:16px;padding:0 0 12px}.mlbsd-contract-note{margin:10px 0 12px;line-height:1.7}.mlbsd-contract-special-notes{margin:10px 0 0!important;padding:9px 11px;border:1px solid #e1e7ec;border-radius:7px;background:#fafcfd;color:#506273;font-size:13px;line-height:1.65}.mlbsd-money-cell{font-variant-numeric:tabular-nums}.mlbsd-source-cell details{min-width:110px}.mlbsd-source-cell summary{cursor:pointer;color:#0f4c81;font-weight:700}.mlbsd-source-cell ul{padding-left:18px;margin:8px 0 0;white-space:normal;min-width:210px}.mlbsd-source-cell li{margin:4px 0}.mlbsd-source-cell a{color:#0f4c81}.mlbsd-adopted-badge{display:inline-block;margin-left:6px;padding:1px 5px;border-radius:4px;background:#e9f4ff;color:#0f4c81;font-size:10px;font-weight:800}.mlbsd-salary-hero{display:flex;justify-content:space-between;gap:20px;align-items:center}.mlbsd-card-label{display:block;color:#66717c;font-size:13px;font-weight:700}.mlbsd-hero-money{display:block;font-size:clamp(30px,5vw,46px);margin-top:4px;letter-spacing:-.035em}.mlbsd-status-text{display:block;margin-top:4px;color:#68737e}.mlbsd-rank-cards{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));gap:8px;min-width:min(420px,46%)}.mlbsd-rank-card{display:flex;flex-direction:column;gap:3px;border:1px solid #dbe1e7;border-radius:9px;padding:10px 12px;background:#fafcff;text-decoration:none;color:#18354f}.mlbsd-rank-card span{font-size:12px;color:#657585}.mlbsd-rank-card strong{font-size:19px}.mlbsd-rank-card.is-disabled{opacity:.55}.mlbsd-ranking-meta{display:flex;gap:16px;align-items:center;margin-top:14px;color:#66717c}.mlbsd-ranking-meta strong{font-size:22px;color:#1a2c3c}.mlbsd-ranking-card{padding:0;overflow:hidden}.mlbsd-ranking-card .mlbsd-table-scroll{padding:0}.mlbsd-ranking-table th,.mlbsd-ranking-table td{padding:12px 14px}.mlbsd-rank-number{font-weight:900;color:#0f4c81;font-variant-numeric:tabular-nums}.mlbsd-player-link{font-weight:800;color:#152c40;text-decoration:none}.mlbsd-player-link:hover{text-decoration:underline}.mlbsd-table-subtext{display:block;color:#7a8793;font-size:12px;margin-top:2px}.mlbsd-pagination{display:flex;align-items:center;justify-content:center;gap:18px;padding:16px;border-top:1px solid #e8edf1}.mlbsd-pagination a{font-weight:800;color:#0f4c81;text-decoration:none}.mlbsd-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mlbsd-team-card,.mlbsd-position-card{display:flex;flex-direction:column;gap:4px;border:1px solid #dfe5eb;border-radius:9px;padding:13px 14px;background:#fbfcfd;text-decoration:none;color:#1c3347}.mlbsd-team-card strong{font-size:16px}.mlbsd-position-card strong{font-size:20px;line-height:1.3;font-weight:800;color:#18354f}.mlbsd-team-card span{color:#0f4c81;font-weight:800}.mlbsd-team-card small{color:#6c7a86}.mlbsd-position-card span{font-size:14px;line-height:1.45;color:#6c7a86}.mlbsd-position-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.mlbsd-researching-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mlbsd-researching-grid a,.mlbsd-researching-grid>span{display:flex;flex-direction:column;border:1px solid #e1e5ea;border-radius:8px;padding:10px 12px;text-decoration:none;color:#203b53}.mlbsd-researching-grid span span,.mlbsd-researching-grid a span{font-size:12px;color:#77838e;margin-top:2px}.mlbsd-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.mlbsd-search-result{display:flex;flex-direction:column;border:1px solid #e0e5ea;border-radius:8px;padding:12px 14px;text-decoration:none;color:#1c3347;background:#fbfcfd}.mlbsd-search-result span{color:#667582;margin-top:2px}.mlbsd-search-result small{color:#89939c;margin-top:4px}.mlbsd-data-note{color:#495968}.mlbsd-data-note h2{color:#1d3549}
@media(max-width:820px){.mlbsd-public-header{grid-template-columns:1fr}.mlbsd-search{justify-self:stretch;width:100%}.mlbsd-salary-hero{align-items:flex-start;flex-direction:column}.mlbsd-rank-cards{min-width:0;width:100%}.mlbsd-team-grid,.mlbsd-position-grid,.mlbsd-researching-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mlbsd-facts{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.mlbsd-player-page,.mlbsd-public-page{padding:18px 9px 44px}.mlbsd-public-header{gap:10px}.mlbsd-brand{font-size:20px}.mlbsd-public-nav{gap:6px}.mlbsd-public-nav a{font-size:12px;padding:7px 10px;min-height:34px}.mlbsd-player-header{align-items:flex-start}.mlbsd-player-header h1{font-size:34px}.mlbsd-name-en{font-size:16px}.mlbsd-card{padding:14px}.mlbsd-hero-card{padding:18px}.mlbsd-facts{grid-template-columns:1fr 1fr}.mlbsd-table th,.mlbsd-table td{padding:8px 9px}.mlbsd-ranking-card{padding:0}.mlbsd-rank-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.mlbsd-rank-card{padding:9px 8px}.mlbsd-rank-card strong{font-size:17px}.mlbsd-team-grid,.mlbsd-position-grid,.mlbsd-researching-grid,.mlbsd-search-results{grid-template-columns:1fr}.mlbsd-coverage-note{font-size:12px}.mlbsd-search button{padding:10px 13px}}
.mlbsd-fx-note{border:1px solid #d9e4ee;background:#fff;border-radius:6px;padding:9px 13px;margin:0 0 18px;color:#586b7b;font-size:12px;line-height:1.65}.mlbsd-yen-subtext{display:block;color:#6f7f8e;font-size:12px;font-weight:600;margin-top:2px}.mlbsd-hero-yen{display:block;margin-top:3px;color:#536b7e;font-size:17px;font-weight:800}.mlbsd-home-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:28px;align-items:center;padding:32px}.mlbsd-home-hero h1{font-size:clamp(36px,6vw,58px);line-height:1.05;margin:5px 0 14px;letter-spacing:-.04em}.mlbsd-home-lead{font-size:16px;color:#43596b;max-width:760px}.mlbsd-home-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.mlbsd-secondary-cta{display:inline-flex;margin-top:8px;border:1px solid #cbd7e1;border-radius:8px;background:#fff;color:#173a57!important;text-decoration:none;padding:11px 16px;font-weight:800}.mlbsd-home-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.mlbsd-home-stats>div{border:1px solid #dce4eb;border-radius:9px;background:#fafcff;padding:14px}.mlbsd-home-stats dt{font-size:12px;color:#6c7b88;margin-bottom:3px}.mlbsd-home-stats dd{font-size:21px;font-weight:900;margin:0;color:#18354f}.mlbsd-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;padding:20px 20px 12px}.mlbsd-section-heading h2{margin:3px 0 0}.mlbsd-section-heading>a,.mlbsd-text-link{color:#0f4c81;text-decoration:none;font-weight:800}.mlbsd-section-heading>a:hover,.mlbsd-text-link:hover{text-decoration:underline}.mlbsd-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mlbsd-home-grid .mlbsd-card{height:100%}.mlbsd-home-grid h2{font-size:24px}.mlbsd-home-grid p{color:#506373}.mlbsd-home-page .mlbsd-ranking-card{overflow:hidden}
@media(max-width:820px){.mlbsd-home-hero{grid-template-columns:1fr}.mlbsd-home-grid{grid-template-columns:1fr}.mlbsd-home-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.mlbsd-home-stats dd{font-size:17px}.mlbsd-section-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.mlbsd-home-hero{padding:20px 16px}.mlbsd-home-hero h1{font-size:38px}.mlbsd-home-stats{grid-template-columns:1fr 1fr}.mlbsd-home-stats>div{padding:11px}.mlbsd-section-heading{padding:14px 14px 10px}.mlbsd-section-heading h2{font-size:20px}.mlbsd-fx-note{font-size:11px;padding:8px 10px}.mlbsd-yen-subtext{font-size:11px}}


/* v0.1.33 Phase F2 Mobile UX */
.mlbsd-mobile-row-meta{display:none}.mlbsd-data-points{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mlbsd-data-points li{border:1px solid #e0e6ec;border-radius:9px;background:#fafcff;padding:12px 13px}.mlbsd-data-points strong{display:block;color:#193a56;margin-bottom:4px}.mlbsd-data-points span{display:block;color:#5b6d7c;font-size:13px;line-height:1.65}.mlbsd-data-scope-note{margin:14px 0 0!important;color:#5a6b79}
@media(max-width:560px){
  .mlbsd-player-page,.mlbsd-public-page{padding:14px 7px 36px}
  .mlbsd-player-wrap{width:100%}
  .mlbsd-public-header{gap:9px;margin-bottom:14px}
  .mlbsd-brand{font-size:18px;line-height:1.25}
  .mlbsd-search{gap:6px}
  .mlbsd-search input{min-height:44px;padding:10px 11px;font-size:16px}
  .mlbsd-search button{min-width:54px;min-height:44px;padding:9px 10px;white-space:nowrap;font-size:13px}
  .mlbsd-public-nav{gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .mlbsd-public-nav::-webkit-scrollbar{display:none}
  .mlbsd-public-nav a{flex:0 0 auto;min-height:40px;padding:8px 11px;font-size:12px}
  .mlbsd-card{padding:15px 13px;margin-bottom:12px;border-radius:9px}
  .mlbsd-home-hero{padding:18px 13px;gap:18px}
  .mlbsd-home-hero h1{font-size:32px;line-height:1.08;margin-bottom:10px}
  .mlbsd-home-lead{font-size:14px;line-height:1.75;margin:0}
  .mlbsd-home-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px}
  .mlbsd-home-actions .mlbsd-cta,.mlbsd-home-actions .mlbsd-secondary-cta{width:100%;box-sizing:border-box;justify-content:center;margin-top:0;min-height:44px}
  .mlbsd-home-stats{gap:7px}
  .mlbsd-home-stats>div{padding:10px}
  .mlbsd-home-stats dt{font-size:11px}
  .mlbsd-home-stats dd{font-size:17px}
  .mlbsd-fx-note{margin-bottom:12px;font-size:10.5px;line-height:1.55}
  .mlbsd-section-heading{padding:13px 12px 9px;gap:7px}
  .mlbsd-section-heading h2{font-size:18px;line-height:1.35}
  .mlbsd-section-heading>a{font-size:14px;min-height:40px;display:inline-flex;align-items:center}
  .mlbsd-home-grid{gap:12px}
  .mlbsd-home-grid .mlbsd-card{height:auto}
  .mlbsd-home-grid h2{font-size:20px;margin-bottom:8px}
  .mlbsd-home-grid p{font-size:14px;line-height:1.7;margin:0 0 10px}
  .mlbsd-text-link{display:inline-flex;align-items:center;min-height:40px}
  .mlbsd-position-grid{gap:7px;margin-top:11px}
  .mlbsd-position-card{padding:10px 11px;min-height:58px;justify-content:center}
  .mlbsd-position-card strong{font-size:16px;line-height:1.3}
  .mlbsd-position-card span{font-size:11.5px;line-height:1.4}
  .mlbsd-data-points{grid-template-columns:1fr;gap:7px}
  .mlbsd-data-points li{padding:10px 11px}
  .mlbsd-data-points span{font-size:12.5px}
  .mlbsd-data-scope-note{font-size:13px;line-height:1.7;margin-top:11px!important}
  .mlbsd-data-note h2{font-size:18px;margin-bottom:11px}

  /* Ranking rows become scan-friendly cards instead of compressed desktop tables. */
  .mlbsd-ranking-table thead{display:none}
  .mlbsd-ranking-table,.mlbsd-ranking-table tbody{display:block;width:100%}
  .mlbsd-ranking-table tr{display:grid;grid-template-columns:38px minmax(0,1fr) auto;grid-template-areas:"rank player money";column-gap:8px;align-items:start;padding:11px 10px;border-bottom:1px solid #e8edf1}
  .mlbsd-ranking-table tr:last-child{border-bottom:0}
  .mlbsd-ranking-table td{display:block;border:0!important;padding:0!important;white-space:normal!important;min-width:0}
  .mlbsd-ranking-table td:nth-child(1){grid-area:rank;padding-top:1px!important}
  .mlbsd-ranking-table td:nth-child(2){grid-area:player}
  .mlbsd-ranking-table td:last-child{grid-area:money;text-align:right;padding-left:4px!important}
  .mlbsd-ranking-table .mlbsd-player-link{font-size:14px;line-height:1.35;display:block}
  .mlbsd-ranking-table .mlbsd-table-subtext{font-size:10.5px;line-height:1.35;margin-top:2px}
  .mlbsd-mobile-row-meta{display:block;color:#607382;font-size:11px;line-height:1.45;margin-top:4px}
  .mlbsd-ranking-table .mlbsd-money-cell strong{font-size:13px;white-space:nowrap}
  .mlbsd-ranking-table .mlbsd-yen-subtext{font-size:10px;white-space:nowrap}

  /* Home TOP5: hide duplicated desktop metadata; combined metadata lives below player. */
  .mlbsd-home-page .mlbsd-ranking-table td:nth-child(3),
  .mlbsd-home-page .mlbsd-ranking-table td:nth-child(4){display:none}
  .mlbsd-home-page .mlbsd-ranking-table td:nth-child(5){grid-area:money}

  /* Full ranking: team / position / age move into the compact player metadata line. */
  .mlbsd-public-page:not(.mlbsd-home-page) .mlbsd-ranking-table td:nth-child(3),
  .mlbsd-public-page:not(.mlbsd-home-page) .mlbsd-ranking-table td:nth-child(4),
  .mlbsd-public-page:not(.mlbsd-home-page) .mlbsd-ranking-table td:nth-child(5){display:none}
  .mlbsd-public-page:not(.mlbsd-home-page) .mlbsd-ranking-table td:nth-child(6){grid-area:money}

  .mlbsd-ranking-meta{margin-top:10px;gap:10px}
  .mlbsd-ranking-meta strong{font-size:19px}
  .mlbsd-pagination{gap:8px;padding:12px 8px}
  .mlbsd-pagination a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border:1px solid #dce3ea;border-radius:8px;background:#fff}
}
@media(min-width:340px) and (max-width:560px){
  .mlbsd-position-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:330px){
  .mlbsd-ranking-table tr{grid-template-columns:34px minmax(0,1fr) auto;column-gap:6px;padding-left:8px;padding-right:8px}
  .mlbsd-ranking-table .mlbsd-money-cell strong{font-size:12px}
  .mlbsd-ranking-table .mlbsd-yen-subtext{font-size:9.5px}
  .mlbsd-rank-number{font-size:12px}
}


/* v0.1.35 Phase F2 Mobile Ranking UX finish */
.mlbsd-mobile-ranking-tools,.mlbsd-mobile-more-button,.mlbsd-mobile-ranking-bottom{display:none}
@media(max-width:560px){
  .mlbsd-mobile-ranking-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-bottom:1px solid #e8edf1;background:#f8fafc;color:#5f7282;font-size:11.5px;line-height:1.4}
  .mlbsd-mobile-ranking-tools a{display:inline-flex;align-items:center;min-height:36px;color:#0f4c81;text-decoration:none;font-weight:800;white-space:nowrap}
  .mlbsd-mobile-chunked:not(.is-expanded) .mlbsd-ranking-table tbody tr:nth-child(n+51){display:none}
  .mlbsd-mobile-more-button{display:flex;width:calc(100% - 20px);min-height:46px;margin:12px 10px 14px;align-items:center;justify-content:center;border:1px solid #b9cedf;border-radius:9px;background:#f7fbff;color:#0f4c81;font-size:14px;font-weight:900;cursor:pointer}
  .mlbsd-mobile-more-button[hidden]{display:none!important}
  .mlbsd-ranking-table .mlbsd-table-subtext{font-size:11px;line-height:1.4}
  .mlbsd-mobile-row-meta{font-size:11.5px;line-height:1.5}
  .mlbsd-pagination{flex-wrap:wrap}
  .mlbsd-pagination a{font-size:12px;padding:0 10px}
  .mlbsd-pagination span{font-size:11.5px;color:#687987}
  .mlbsd-mobile-ranking-bottom{display:flex;justify-content:center;padding:2px 10px 14px}
  .mlbsd-mobile-ranking-bottom a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 13px;color:#0f4c81;text-decoration:none;font-size:12px;font-weight:800}
}
@media(max-width:560px){#mlbsd-ranking-top{scroll-margin-top:48px}}

/* v0.1.36 Phase F4 public-page quality */
.mlbsd-ranking-table tr:target{background:#eef7ff;scroll-margin-top:72px}
@media(max-width:560px){
  .mlbsd-player-header{flex-direction:column;align-items:flex-start;gap:8px}
  .mlbsd-player-header h1{font-size:31px;line-height:1.12}
  .mlbsd-status-badge{align-self:flex-start}
  .mlbsd-salary-hero{gap:14px}
  .mlbsd-rank-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .mlbsd-rank-card{min-width:0;padding:8px 6px}
  .mlbsd-rank-card span{font-size:10.5px}
  .mlbsd-rank-card strong{font-size:16px}
  .mlbsd-facts>div{padding:9px 8px}
  .mlbsd-facts dd{font-size:13px;overflow-wrap:anywhere}

  /* Player-detail tables become labelled cards instead of horizontal-scroll tables. */
  .mlbsd-player-page .mlbsd-table-scroll{overflow:visible}
  .mlbsd-player-page .mlbsd-mobile-stack-table,
  .mlbsd-player-page .mlbsd-mobile-stack-table tbody{display:block;width:100%}
  .mlbsd-player-page .mlbsd-mobile-stack-table thead{display:none}
  .mlbsd-player-page .mlbsd-mobile-stack-table tr:not(.mlbsd-subrow){display:block;margin:0 0 9px;padding:7px 10px;border:1px solid #e1e7ec;border-radius:9px;background:#fbfcfd}
  .mlbsd-player-page .mlbsd-mobile-stack-table tr:not(.mlbsd-subrow):last-child{margin-bottom:0}
  .mlbsd-player-page .mlbsd-mobile-stack-table td{display:grid;grid-template-columns:minmax(86px,35%) minmax(0,1fr);gap:10px;align-items:start;width:auto!important;padding:7px 0!important;border:0!important;border-bottom:1px solid #edf1f4!important;white-space:normal!important;overflow-wrap:anywhere}
  .mlbsd-player-page .mlbsd-mobile-stack-table td:last-child{border-bottom:0!important}
  .mlbsd-player-page .mlbsd-mobile-stack-table td::before{content:attr(data-label);color:#6a7b89;font-size:11px;font-weight:800;line-height:1.45}
  .mlbsd-player-page .mlbsd-mobile-stack-table .mlbsd-money-cell{text-align:left}
  .mlbsd-player-page .mlbsd-mobile-stack-table .mlbsd-yen-subtext{font-size:10.5px}
  .mlbsd-player-page .mlbsd-mobile-stack-table .mlbsd-source-cell details{min-width:0}
  .mlbsd-player-page .mlbsd-mobile-stack-table .mlbsd-source-cell ul{min-width:0;margin:7px 0 0;padding-left:17px}
  .mlbsd-player-page .mlbsd-mobile-stack-table .mlbsd-subrow{display:block;margin:-3px 0 9px;padding:8px 10px;border:1px dashed #d8e1e8;border-radius:8px;background:#f8fafc}
  .mlbsd-player-page .mlbsd-mobile-stack-table .mlbsd-subrow td{display:block;padding:0!important;border:0!important}
  .mlbsd-player-page .mlbsd-mobile-stack-table .mlbsd-subrow td::before{display:none}
  .mlbsd-player-page .mlbsd-mobile-stack-table .mlbsd-subrow span{display:block;margin:5px 0 0}
  .mlbsd-contract-summary{gap:6px 12px;font-size:13px}
  .mlbsd-contract-note{font-size:13px}
}


/* v0.1.58 Phase F8 Mobile Long-Career Salary History refinement */
.mlbsd-salary-history-mobile{display:none}
@media(max-width:560px){
  .mlbsd-salary-history-card{padding-left:10px;padding-right:10px}
  .mlbsd-salary-history-desktop{display:none}
  .mlbsd-salary-history-mobile{display:block;margin-top:8px;border:1px solid #dfe6ec;border-radius:9px;overflow:hidden;background:#fff}
  .mlbsd-salary-mobile-head{display:grid;grid-template-columns:40px 34px minmax(52px,.7fr) minmax(96px,1.1fr) 58px;gap:4px;align-items:center;padding:6px 7px;border-bottom:1px solid #e6ebef;background:#f5f7f9;color:#748391;font-size:9.5px;font-weight:800;line-height:1.2}
  .mlbsd-salary-mobile-head span:nth-child(4){text-align:right}
  .mlbsd-salary-mobile-item{margin:0;border:0;border-bottom:1px solid #e7ecf0;background:#fff}
  .mlbsd-salary-mobile-item:last-child{border-bottom:0}
  .mlbsd-salary-mobile-item[open]{background:#f6fbff;box-shadow:inset 3px 0 0 #3f7da8}
  .mlbsd-salary-mobile-summary{display:grid;grid-template-columns:40px 34px minmax(52px,.7fr) minmax(96px,1.1fr) 58px;gap:4px;align-items:center;min-height:46px;padding:7px;box-sizing:border-box;cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}
  .mlbsd-salary-mobile-summary::-webkit-details-marker{display:none}
  .mlbsd-salary-mobile-summary::marker{content:''}
  .mlbsd-salary-mobile-summary:focus-visible{outline:2px solid #0f4c81;outline-offset:-2px}
  .mlbsd-salary-mobile-year{font-size:12.5px;font-weight:900;color:#1f3446;font-variant-numeric:tabular-nums}
  .mlbsd-salary-mobile-age{font-size:10.8px;font-weight:800;color:#5d6f7d;white-space:nowrap;font-variant-numeric:tabular-nums}
  .mlbsd-salary-mobile-team{min-width:0;font-size:11.5px;font-weight:800;color:#304b61;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mlbsd-salary-mobile-money{min-width:0;text-align:right;font-size:12.2px;font-weight:900;color:#142f47;font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.02em}
  .mlbsd-salary-mobile-action{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 4px;border:1px solid #a9c5da;border-radius:7px;background:#f3f9fd;color:#0f4c81;font-size:10.5px;font-weight:900;white-space:nowrap}
  .mlbsd-salary-mobile-action .is-open{display:none}
  .mlbsd-salary-mobile-item[open] .mlbsd-salary-mobile-action{border-color:#6e9ebe;background:#e7f3fb;color:#0b426d}
  .mlbsd-salary-mobile-item[open] .mlbsd-salary-mobile-action .is-closed{display:none}
  .mlbsd-salary-mobile-item[open] .mlbsd-salary-mobile-action .is-open{display:inline}
  .mlbsd-salary-mobile-detail{padding:9px 9px 11px;border-top:1px solid #dce8f0;background:#f8fbfd}
  .mlbsd-salary-mobile-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0}
  .mlbsd-salary-mobile-facts>div{min-width:0;padding:7px 8px;border:1px solid #e0e8ee;border-radius:7px;background:#fff}
  .mlbsd-salary-mobile-facts>div:only-child{grid-column:1/-1}
  .mlbsd-salary-mobile-facts dt{margin:0 0 2px;color:#72818e;font-size:9.5px;font-weight:800}
  .mlbsd-salary-mobile-facts dd{margin:0;color:#20384c;font-size:12px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}
  .mlbsd-salary-mobile-detail-block{margin-top:9px;padding-top:8px;border-top:1px solid #e2e8ed;color:#31495d;font-size:11.5px;line-height:1.55}
  .mlbsd-salary-mobile-detail-block>strong{display:block;margin-bottom:4px;color:#203b52;font-size:11px}
  .mlbsd-salary-mobile-detail-block ul{margin:4px 0 0;padding-left:17px}
  .mlbsd-salary-mobile-detail-block li{margin:3px 0}
  .mlbsd-salary-mobile-sources a{color:#0f4c81;font-weight:800;text-decoration:none}
  .mlbsd-salary-mobile-sources a:hover{text-decoration:underline}
  .mlbsd-salary-mobile-muted{color:#71808c}
}
@media(max-width:330px){
  .mlbsd-salary-mobile-head,.mlbsd-salary-mobile-summary{grid-template-columns:37px 31px minmax(46px,.62fr) minmax(88px,1fr) 54px;gap:3px;padding-left:6px;padding-right:6px}
  .mlbsd-salary-mobile-age{font-size:10.2px}
  .mlbsd-salary-mobile-team{font-size:10.4px}
  .mlbsd-salary-mobile-money{font-size:11.4px}
  .mlbsd-salary-mobile-action{font-size:10px;padding-left:3px;padding-right:3px}
}

/* v0.1.60 Desktop player-page prose typography refinement */
@media(min-width:821px){
  .mlbsd-player-page .mlbsd-contract-summary{font-size:16px;line-height:1.65}
  .mlbsd-player-page .mlbsd-contract-note{font-size:15px;line-height:1.75}
  .mlbsd-player-page .mlbsd-npb-history ul{margin:0;padding-left:24px;font-size:16px;line-height:1.75}
  .mlbsd-player-page .mlbsd-npb-history li{margin:3px 0}
  .mlbsd-player-page .mlbsd-data-note p{max-width:1000px;margin:0;font-size:16px;line-height:1.8}
}


/* v0.1.62 Phase F8 MLB Affiliation History shared compression + player header alignment */
.mlbsd-player-header{padding-left:20px;padding-right:20px}
.mlbsd-affiliation-history-compact{margin-top:8px;border:1px solid #dfe6ec;border-radius:9px;overflow:hidden;background:#fff}
.mlbsd-affiliation-compact-head,.mlbsd-affiliation-compact-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;align-items:center}
.mlbsd-affiliation-compact-head{padding:8px 14px;border-bottom:1px solid #e6ebef;background:#f5f7f9;color:#748391;font-size:12px;font-weight:800;line-height:1.2}
.mlbsd-affiliation-compact-row{min-height:44px;padding:9px 14px;border-bottom:1px solid #e7ecf0;background:#fff}
.mlbsd-affiliation-compact-row:last-child{border-bottom:0}
.mlbsd-affiliation-compact-years{font-size:14px;font-weight:900;color:#20384c;font-variant-numeric:tabular-nums;white-space:nowrap}
.mlbsd-affiliation-compact-team{min-width:0;font-size:14px;font-weight:800;color:#304b61;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:560px){
  .mlbsd-player-header{padding-left:14px;padding-right:14px}
  .mlbsd-affiliation-history-card{padding-left:10px;padding-right:10px}
  .mlbsd-affiliation-compact-head,.mlbsd-affiliation-compact-row{grid-template-columns:92px minmax(0,1fr);gap:8px}
  .mlbsd-affiliation-compact-head{padding:6px 10px;font-size:9.5px}
  .mlbsd-affiliation-compact-row{min-height:40px;padding:7px 10px}
  .mlbsd-affiliation-compact-years,.mlbsd-affiliation-compact-team{font-size:12px}
}
@media(max-width:330px){
  .mlbsd-affiliation-compact-head,.mlbsd-affiliation-compact-row{grid-template-columns:84px minmax(0,1fr);gap:6px;padding-left:8px;padding-right:8px}
  .mlbsd-affiliation-compact-years,.mlbsd-affiliation-compact-team{font-size:11.4px}
}


/* v0.1.63 Phase F8 mobile low-priority Earnings disclosure */
.mlbsd-earnings-mobile{display:none}
@media(max-width:560px){
  .mlbsd-earnings-card{padding:0;overflow:hidden}
  .mlbsd-earnings-desktop{display:none}
  .mlbsd-earnings-mobile{display:block;margin:0}
  .mlbsd-earnings-mobile-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:center;min-height:54px;padding:13px 14px;cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}
  .mlbsd-earnings-mobile-summary::-webkit-details-marker{display:none}
  .mlbsd-earnings-mobile-summary::marker{content:''}
  .mlbsd-earnings-mobile-summary:focus-visible{outline:2px solid #0f4c81;outline-offset:-2px}
  .mlbsd-earnings-mobile-title{min-width:0;color:#1c3347;font-size:17px;font-weight:900;line-height:1.35}
  .mlbsd-earnings-mobile-count{color:#72818e;font-size:11px;font-weight:800;white-space:nowrap}
  .mlbsd-earnings-mobile-action{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 7px;border:1px solid #a9c5da;border-radius:7px;background:#f3f9fd;color:#0f4c81;font-size:10.5px;font-weight:900;white-space:nowrap}
  .mlbsd-earnings-mobile-action .is-open{display:none}
  .mlbsd-earnings-mobile[open] .mlbsd-earnings-mobile-summary{background:#f6fbff;box-shadow:inset 3px 0 0 #3f7da8}
  .mlbsd-earnings-mobile[open] .mlbsd-earnings-mobile-action{border-color:#6e9ebe;background:#e7f3fb;color:#0b426d}
  .mlbsd-earnings-mobile[open] .mlbsd-earnings-mobile-action .is-closed{display:none}
  .mlbsd-earnings-mobile[open] .mlbsd-earnings-mobile-action .is-open{display:inline}
  .mlbsd-earnings-mobile-content{padding:10px 10px 12px;border-top:1px solid #dce8f0;background:#f8fbfd}
  .mlbsd-earnings-mobile-note{margin:0 0 9px!important;color:#627484;font-size:11px;line-height:1.55!important}
}
@media(max-width:330px){
  .mlbsd-earnings-mobile-summary{gap:6px;padding-left:10px;padding-right:10px}
  .mlbsd-earnings-mobile-title{font-size:16px}
  .mlbsd-earnings-mobile-action{padding-left:5px;padding-right:5px;font-size:10px}
}

/* v0.1.64 Phase F8 mobile footer compaction: NPB history + salary methodology disclosure */
.mlbsd-data-note-mobile{display:none}
@media(max-width:560px){
  .mlbsd-player-page .mlbsd-npb-history{padding:13px 14px}
  .mlbsd-player-page .mlbsd-npb-history h2{margin:0 0 8px;font-size:18px;line-height:1.35}
  .mlbsd-player-page .mlbsd-npb-history ul{margin:0;padding:0;list-style:none;font-size:15px;line-height:1.55}
  .mlbsd-player-page .mlbsd-npb-history li{position:relative;margin:0;padding-left:14px}
  .mlbsd-player-page .mlbsd-npb-history li::before{content:'•';position:absolute;left:1px;top:0;color:#31495d}
  .mlbsd-data-note-card{padding:0;overflow:hidden}
  .mlbsd-data-note-desktop{display:none}
  .mlbsd-data-note-mobile{display:block;margin:0}
  .mlbsd-data-note-mobile-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;min-height:52px;padding:12px 14px;cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}
  .mlbsd-data-note-mobile-summary::-webkit-details-marker{display:none}
  .mlbsd-data-note-mobile-summary::marker{content:''}
  .mlbsd-data-note-mobile-summary:focus-visible{outline:2px solid #0f4c81;outline-offset:-2px}
  .mlbsd-data-note-mobile-title{min-width:0;color:#1d3549;font-size:17px;font-weight:800;line-height:1.35}
  .mlbsd-data-note-mobile-action{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 7px;border:1px solid #a9c5da;border-radius:7px;background:#f3f9fd;color:#0f4c81;font-size:10.5px;font-weight:900;white-space:nowrap}
  .mlbsd-data-note-mobile-action .is-open{display:none}
  .mlbsd-data-note-mobile[open] .mlbsd-data-note-mobile-summary{background:#f6fbff;box-shadow:inset 3px 0 0 #3f7da8}
  .mlbsd-data-note-mobile[open] .mlbsd-data-note-mobile-action{border-color:#6e9ebe;background:#e7f3fb;color:#0b426d}
  .mlbsd-data-note-mobile[open] .mlbsd-data-note-mobile-action .is-closed{display:none}
  .mlbsd-data-note-mobile[open] .mlbsd-data-note-mobile-action .is-open{display:inline}
  .mlbsd-data-note-mobile-content{padding:10px 14px 13px;border-top:1px solid #dce8f0;background:#f8fbfd}
  .mlbsd-player-page .mlbsd-data-note-mobile-content p{margin:0;font-size:14px;line-height:1.7;color:#495968}
}
@media(max-width:330px){
  .mlbsd-player-page .mlbsd-npb-history h2{font-size:17px}
  .mlbsd-player-page .mlbsd-npb-history ul{font-size:14px}
  .mlbsd-data-note-mobile-summary{gap:6px;padding-left:11px;padding-right:11px}
  .mlbsd-data-note-mobile-title{font-size:16px}
  .mlbsd-data-note-mobile-action{padding-left:5px;padding-right:5px;font-size:10px}
}


/* v0.1.65 post-F8 public UX audit: Japanese ranking club labels + compact mobile team index */
.mlbsd-team-name-mobile{display:none}
.mlbsd-team-card strong .mlbsd-team-name-desktop,.mlbsd-team-card strong .mlbsd-team-name-mobile{color:inherit;font:inherit}
@media(max-width:560px){
  .mlbsd-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .mlbsd-team-card{min-width:0;gap:2px;padding:10px 9px}
  .mlbsd-team-card strong{min-width:0;font-size:14px;line-height:1.35}
  .mlbsd-team-name-desktop{display:none}
  .mlbsd-team-name-mobile{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mlbsd-team-card .mlbsd-team-abbr{font-size:11px;line-height:1.25}
  .mlbsd-team-card small{font-size:10.5px;line-height:1.35}
}


/* Legacy v0.1.66 logo layout superseded by the text-only v0.4.60 badge block below. */

/* v0.1.68 mobile ranking detail header compaction */
@media(max-width:560px){
  #mlbsd-ranking-top h1{font-size:22px;line-height:1.28;letter-spacing:-.02em;margin:3px 0 9px}
  #mlbsd-ranking-top>p:not(.mlbsd-kicker){margin:0;font-size:15px;line-height:1.65}
  #mlbsd-ranking-top .mlbsd-ranking-meta{margin-top:9px}
  #mlbsd-ranking-top .mlbsd-ranking-meta strong{font-size:16px;line-height:1.35}
  #mlbsd-ranking-top .mlbsd-ranking-meta span{font-size:11.5px}
}

/* v0.1.69 public search UX: identify players by current baseball context, not DOB alone */
.mlbsd-search-result-en{color:#667582;margin-top:2px}
.mlbsd-search-result-meta{color:#405d73!important;font-size:13px;font-weight:700;line-height:1.45;margin-top:7px!important}
.mlbsd-search-result small{font-size:11.5px;line-height:1.4}
@media(max-width:560px){
  .mlbsd-search-page-card h1{font-size:22px;line-height:1.3;letter-spacing:-.02em;margin:3px 0 9px;overflow-wrap:anywhere}
  .mlbsd-search-page-card>p:not(.mlbsd-kicker){font-size:14px;line-height:1.65;margin:0 0 10px}
  .mlbsd-search-results{gap:8px;margin-top:11px}
  .mlbsd-search-result{padding:11px 12px}
  .mlbsd-search-result strong{font-size:15px;line-height:1.4}
  .mlbsd-search-result-en{font-size:12px;line-height:1.4}
  .mlbsd-search-result-meta{font-size:12px;line-height:1.45;margin-top:5px!important}
  .mlbsd-search-result small{font-size:10.5px;margin-top:3px}
}


/* v0.1.71 desktop search result typography: keep search pages aligned with finished public UI */
@media(min-width:561px){
  .mlbsd-search-page-card h1{font-size:32px;line-height:1.25;letter-spacing:-.025em;margin:3px 0 14px;overflow-wrap:anywhere}
  .mlbsd-search-page-card>p:not(.mlbsd-kicker){font-size:18px;line-height:1.65;margin:0 0 14px}
  .mlbsd-search-result strong{font-size:20px;line-height:1.4}
  .mlbsd-search-result-en{font-size:16px;line-height:1.45}
  .mlbsd-search-result-meta{font-size:14px;line-height:1.45;margin-top:6px!important}
  .mlbsd-search-result small{font-size:12px;line-height:1.4;margin-top:3px}
}

/* v0.1.72 desktop ranking pagination typography: keep navigation secondary to ranking content */
@media(min-width:561px){
  .mlbsd-pagination{gap:14px;padding:14px 16px}
  .mlbsd-pagination a{display:inline-flex;align-items:center;min-height:36px;padding:0 6px;font-size:17px;line-height:1.35;font-weight:800}
  .mlbsd-pagination span{font-size:15px;line-height:1.35;color:#66717c;font-variant-numeric:tabular-nums}
}


/* v0.1.73 public-launch shell: lightweight legal/support footer */
.mlbsd-public-footer{background:#eef2f5;border-top:1px solid #dbe2e8;color:#5d6d79;padding:22px 16px 28px}
.mlbsd-public-footer-inner{width:min(1120px,100%);margin:0 auto;display:flex;align-items:center;gap:12px 22px;flex-wrap:wrap}
.mlbsd-public-footer-brand{color:#18354f;text-decoration:none;font-size:14px;font-weight:900}
.mlbsd-public-footer-nav{display:flex;gap:8px 16px;flex-wrap:wrap}
.mlbsd-public-footer-nav a{color:#405a70;text-decoration:none;font-size:12px;font-weight:700}
.mlbsd-public-footer-nav a:hover{text-decoration:underline}
.mlbsd-public-footer small{margin-left:auto;font-size:11px;line-height:1.5;color:#71808c}
@media(max-width:560px){
  .mlbsd-public-footer{padding:18px 12px 24px}
  .mlbsd-public-footer-inner{display:block}
  .mlbsd-public-footer-brand{display:inline-block;margin-bottom:10px}
  .mlbsd-public-footer-nav{gap:7px 14px;margin-bottom:10px}
  .mlbsd-public-footer-nav a{font-size:11.5px}
  .mlbsd-public-footer small{display:block;margin:0;font-size:10.5px}
}

/* v0.1.74 desktop home typography audit: keep supporting copy secondary to data UI. */
@media(min-width:821px){
  .mlbsd-home-page .mlbsd-home-hero h1{font-size:clamp(34px,4vw,46px);line-height:1.08}
  .mlbsd-home-page .mlbsd-home-lead{font-size:15px;line-height:1.7}
  .mlbsd-home-page .mlbsd-home-stats dd{font-size:18px}
  .mlbsd-home-page .mlbsd-section-heading h2{font-size:20px;line-height:1.4}
  .mlbsd-home-page .mlbsd-home-grid h2{font-size:20px;line-height:1.4}
  .mlbsd-home-page .mlbsd-home-grid p{font-size:14px;line-height:1.7}
  .mlbsd-home-page .mlbsd-position-card{padding:11px 13px}
  .mlbsd-home-page .mlbsd-position-card strong{font-size:17px;line-height:1.35}
  .mlbsd-home-page .mlbsd-position-card span{font-size:12.5px;line-height:1.45}
  .mlbsd-home-page .mlbsd-data-note>h2{font-size:18px;line-height:1.4;margin-bottom:12px}
  .mlbsd-home-page .mlbsd-data-points{gap:8px}
  .mlbsd-home-page .mlbsd-data-points li{padding:10px 12px}
  .mlbsd-home-page .mlbsd-data-points strong{font-size:15px;line-height:1.45;margin-bottom:3px}
  .mlbsd-home-page .mlbsd-data-points span{font-size:12.5px;line-height:1.6}
  .mlbsd-home-page .mlbsd-data-scope-note{font-size:13px;line-height:1.75;margin-top:12px!important}
  .mlbsd-public-footer{padding:18px 16px 22px}
  .mlbsd-public-footer-brand{font-size:13px}
  .mlbsd-public-footer-nav a{font-size:11.5px}
  .mlbsd-public-footer small{font-size:10.5px}
}

/* v0.1.74 public site-information pages: same standalone shell as the database. */
.mlbsd-static-page .mlbsd-static-hero{padding:22px 24px}
.mlbsd-static-page .mlbsd-static-hero h1{font-size:32px;line-height:1.25;margin:3px 0 0;letter-spacing:-.02em}
.mlbsd-static-content{max-width:940px;font-size:15px;line-height:1.85;color:#31495d}
.mlbsd-static-content>*:first-child{margin-top:0}
.mlbsd-static-content>*:last-child{margin-bottom:0}
.mlbsd-static-content h1{font-size:24px;line-height:1.4;margin:0 0 18px;color:#1d3549}
.mlbsd-static-content h2{font-size:20px;line-height:1.45;margin:28px 0 12px;color:#1d3549;padding-left:10px;border-left:4px solid #0f4c81}
.mlbsd-static-content h3{font-size:17px;line-height:1.5;margin:22px 0 9px;color:#1d3549}
.mlbsd-static-content p{margin:0 0 14px;line-height:1.85}
.mlbsd-static-content ul,.mlbsd-static-content ol{margin:0 0 18px;padding-left:1.5em}
.mlbsd-static-content li+li{margin-top:5px}
.mlbsd-static-content a{color:#0f4c81!important;text-decoration:underline;text-underline-offset:2px}
.mlbsd-static-content iframe{display:block;width:100%!important;max-width:100%!important;border:0;margin:4px 0 0}
.mlbsd-static-page-contact .mlbsd-static-content{max-width:980px}
@media(max-width:560px){
  .mlbsd-static-page .mlbsd-static-hero{padding:16px 13px}
  .mlbsd-static-page .mlbsd-static-hero h1{font-size:24px;line-height:1.3}
  .mlbsd-static-content{max-width:none;font-size:14px;line-height:1.8}
  .mlbsd-static-content h1{font-size:21px}
  .mlbsd-static-content h2{font-size:18px;margin-top:24px}
  .mlbsd-static-content h3{font-size:16px}
}


/* v0.1.75 desktop home hierarchy + grid-flow fix. */
/* Grid items already stretch to equal height by default. Avoid height:100%, which can
   overflow the auto-sized grid track and visually collide with the next card. */
.mlbsd-home-page .mlbsd-home-grid{margin-bottom:18px}
.mlbsd-home-page .mlbsd-home-grid .mlbsd-card{height:auto;margin-bottom:0}
@media(min-width:821px){
  .mlbsd-home-page .mlbsd-section-heading>a,
  .mlbsd-home-page .mlbsd-text-link{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    font-size:16px;
    line-height:1.4;
    font-weight:700;
  }
}
@media(max-width:820px){
  .mlbsd-home-page .mlbsd-home-grid{margin-bottom:14px}
}
@media(max-width:560px){
  .mlbsd-home-page .mlbsd-home-grid{margin-bottom:12px}
}


/* v0.1.76 desktop home CTA hierarchy: one compact primary action + one quiet text link. */
@media(min-width:821px){
  .mlbsd-home-page .mlbsd-home-actions{gap:16px;align-items:center;margin-top:16px}
  .mlbsd-home-page .mlbsd-home-actions .mlbsd-cta{
    min-height:44px;
    margin-top:0;
    padding:9px 15px;
    border-radius:7px;
    font-size:17px;
    line-height:1.35;
    font-weight:700;
  }
  .mlbsd-home-page .mlbsd-home-actions .mlbsd-cta::after{content:' →';margin-left:5px;font-weight:700}
  .mlbsd-home-page .mlbsd-home-actions .mlbsd-secondary-cta{
    min-height:40px;
    margin-top:0;
    padding:7px 2px;
    border:0;
    border-radius:0;
    background:transparent;
    color:#0f4c81!important;
    font-size:16px;
    line-height:1.4;
    font-weight:700;
  }
  .mlbsd-home-page .mlbsd-home-actions .mlbsd-secondary-cta::after{content:' →';margin-left:4px;font-weight:700}
  .mlbsd-home-page .mlbsd-home-actions .mlbsd-secondary-cta:hover{text-decoration:underline;text-underline-offset:3px}
}


/* v0.1.77 desktop home CTA vertical-space fix: min-height previously added on top of padding because of content-box sizing. */
@media(min-width:821px){
  .mlbsd-home-page .mlbsd-home-actions .mlbsd-cta{
    box-sizing:border-box;
    min-height:0;
    padding:9px 15px;
  }
  .mlbsd-home-page .mlbsd-home-actions .mlbsd-secondary-cta{
    box-sizing:border-box;
    min-height:0;
    padding:8px 2px;
  }
}


/* v0.1.78 desktop search control polish: keep the submit label horizontal and visually anchored to the field. */
@media(min-width:821px){
  .mlbsd-search button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-width:78px;
    padding:10px 14px;
    white-space:nowrap;
    word-break:keep-all;
    writing-mode:horizontal-tb;
    line-height:1.2;
    font-size:14px;
  }
}

/* v0.1.82 discovery surfaces: career and historical season rankings */
.mlbsd-season-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.mlbsd-season-card{display:flex;flex-direction:column;gap:4px;border:1px solid #dfe5eb;border-radius:9px;padding:13px 14px;background:#fbfcfd;text-decoration:none;color:#1c3347}
.mlbsd-season-card strong{font-size:20px;color:#18354f}
.mlbsd-season-card span{font-size:13px;color:#516779;font-weight:700}
.mlbsd-season-card small{font-size:12px;color:#7a8793}
.mlbsd-career-tabs{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.mlbsd-career-tabs a{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;border:1px solid #d7e0e8;border-radius:999px;background:#fff;color:#173a57;text-decoration:none;font-size:13px;font-weight:800}
.mlbsd-career-tabs a.is-current{background:#0f4c81;border-color:#0f4c81;color:#fff}
.mlbsd-discovery-heading{margin-bottom:12px}
.mlbsd-discovery-heading p:last-child{margin-bottom:0;color:#506373}
.mlbsd-home-discovery-grid{margin-bottom:18px}
.mlbsd-career-ranking-table td:nth-child(4),.mlbsd-career-ranking-table td:nth-child(5){font-variant-numeric:tabular-nums}
@media(max-width:820px){.mlbsd-season-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){
  .mlbsd-season-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .mlbsd-season-card{padding:11px 12px}
  .mlbsd-season-card strong{font-size:17px}
  .mlbsd-career-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .mlbsd-career-tabs::-webkit-scrollbar{display:none}
  .mlbsd-career-tabs a{flex:0 0 auto;font-size:12px;min-height:38px}
}

/* v0.1.83 mobile header containment + unified homepage discovery block */
.mlbsd-home-discovery-section{padding:20px;margin-bottom:18px}
.mlbsd-discovery-intro{margin:0 0 14px}
.mlbsd-discovery-intro h2{font-size:22px;line-height:1.4;margin:3px 0 7px}
.mlbsd-discovery-intro>p:last-child{margin:0;color:#506373;line-height:1.7}
.mlbsd-home-discovery-section .mlbsd-home-discovery-grid{margin:0;gap:12px}
.mlbsd-discovery-item{min-width:0;border:1px solid #dfe5eb;border-radius:9px;background:#fbfcfd;padding:16px}
.mlbsd-discovery-item h2{font-size:20px;line-height:1.4;margin:3px 0 8px}
.mlbsd-discovery-item>p:not(.mlbsd-kicker){margin:0 0 10px;color:#506373;line-height:1.7}
@media(max-width:560px){
  .mlbsd-public-nav{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:6px;
    width:100%;
    overflow:visible;
    padding-bottom:0;
  }
  .mlbsd-public-nav a{
    grid-column:span 2;
    min-width:0;
    min-height:38px;
    padding:7px 4px;
    justify-content:center;
    text-align:center;
    white-space:nowrap;
    font-size:11px;
    line-height:1.2;
  }
  .mlbsd-public-nav a:nth-child(4){grid-column:2/span 2}
  .mlbsd-public-nav a:nth-child(5){grid-column:4/span 2}
  .mlbsd-home-discovery-section{padding:15px 13px;margin-bottom:12px}
  .mlbsd-discovery-intro{margin-bottom:11px}
  .mlbsd-discovery-intro h2{font-size:19px;line-height:1.4;margin:3px 0 6px}
  .mlbsd-discovery-intro>p:last-child{font-size:13.5px;line-height:1.65}
  .mlbsd-home-discovery-section .mlbsd-home-discovery-grid{gap:8px}
  .mlbsd-discovery-item{padding:12px 11px}
  .mlbsd-discovery-item h2{font-size:18px;line-height:1.4;margin:3px 0 6px}
  .mlbsd-discovery-item>p:not(.mlbsd-kicker){font-size:13.5px;line-height:1.65;margin-bottom:8px}
}


/* v0.1.85 public status cleanup + player career salary/ranking cross-links */
.mlbsd-player-money-stack{min-width:min(430px,52%)}
.mlbsd-career-salary-summary.has-latest{margin-top:16px;padding-top:14px;border-top:1px solid #e6ebf0}
.mlbsd-career-money{display:block;font-size:clamp(26px,3.5vw,38px);line-height:1.1;margin-top:4px;letter-spacing:-.03em}
.mlbsd-career-definition{display:block;margin-top:7px;color:#687785;font-size:12px;line-height:1.55}
.mlbsd-career-rank-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.mlbsd-career-rank-links a{display:inline-grid;grid-template-columns:auto auto;align-items:baseline;column-gap:7px;row-gap:1px;padding:7px 10px;border:1px solid #d8e2eb;border-radius:8px;background:#f8fbfe;color:#0f4c81;text-decoration:none}
.mlbsd-career-rank-links a span{font-size:11px;color:#607587;font-weight:700}
.mlbsd-career-rank-links a strong{font-size:16px;line-height:1.1}
.mlbsd-career-rank-links a em{grid-column:1/-1;font-size:11px;font-style:normal;font-weight:800}
@media(max-width:820px){.mlbsd-player-money-stack{min-width:0;width:100%}}
@media(max-width:560px){.mlbsd-career-money{font-size:28px}.mlbsd-career-rank-links{display:grid;grid-template-columns:1fr}.mlbsd-career-rank-links a{width:100%}}


/* v0.1.87 player salary overview / compact rankings / transfer-year readability */
.mlbsd-salary-overview{display:block}
.mlbsd-salary-overview-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0}
.mlbsd-salary-overview-panel{min-width:0;padding:2px 34px 2px 0}
.mlbsd-salary-overview-panel+.mlbsd-salary-overview-panel{border-left:1px solid #e3e9ee;padding-left:34px;padding-right:0}
.mlbsd-salary-overview .mlbsd-hero-money,.mlbsd-salary-overview .mlbsd-career-money{font-size:clamp(34px,4vw,48px);line-height:1.08}
.mlbsd-overview-link{display:inline-flex;align-items:center;gap:6px;min-height:32px;margin-top:12px;padding:5px 9px;border:1px solid #d8e2eb;border-radius:999px;background:#f8fbfe;color:#0f4c81;text-decoration:none;font-size:12px;font-weight:800;line-height:1.2}
.mlbsd-overview-link:hover{background:#eef6fb}
.mlbsd-overview-link span{color:#607587;font-weight:700}
.mlbsd-overview-link strong{font-size:12px}
.mlbsd-career-rank-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.mlbsd-career-rank-links a{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:5px 9px;border:1px solid #d8e2eb;border-radius:999px;background:#f8fbfe;color:#0f4c81;text-decoration:none;line-height:1.2}
.mlbsd-career-rank-links a:hover{background:#eef6fb}
.mlbsd-career-rank-links a span{font-size:11px;color:#607587;font-weight:700}
.mlbsd-career-rank-links a strong{font-size:15px;line-height:1.1}
.mlbsd-career-rank-links a em{font-size:12px;font-style:normal;font-weight:900}

.mlbsd-current-ranks-card{padding:11px 16px 14px}
.mlbsd-current-ranks-heading{margin:0 0 7px;padding:0}
.mlbsd-current-ranks-heading strong{font-size:12px;line-height:1.3;color:#607587;letter-spacing:.02em}
.mlbsd-current-ranks-card .mlbsd-rank-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;min-width:0;width:100%;overflow:hidden;border:1px solid #dfe6ec;border-radius:9px;background:#fafcff}
.mlbsd-current-ranks-card .mlbsd-rank-card{display:flex;flex-direction:row;align-items:baseline;justify-content:space-between;gap:8px;min-width:0;padding:10px 14px;border:0;border-radius:0;background:transparent;color:#18354f;text-decoration:none}
.mlbsd-current-ranks-card .mlbsd-rank-card+.mlbsd-rank-card{border-left:1px solid #e1e7ec}
.mlbsd-current-ranks-card .mlbsd-rank-card span{min-width:0;font-size:11px;color:#6b7a87;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mlbsd-current-ranks-card .mlbsd-rank-card strong{flex:0 0 auto;font-size:18px;color:#173a57}
.mlbsd-current-ranks-card .mlbsd-rank-card:not(.is-disabled):hover{background:#f1f7fb}

.mlbsd-salary-history-table .mlbsd-team-history-cell{min-width:260px;white-space:normal;line-height:1.45}
.mlbsd-team-route{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px}
.mlbsd-team-route-item{white-space:normal}
.mlbsd-team-route-arrow{color:#85929d;font-size:12px;font-weight:800}
.mlbsd-attribution-note{display:block;margin-top:4px;padding-left:9px;border-left:2px solid #d4dfe7;color:#71808d;font-size:11px;line-height:1.45;white-space:normal}

@media(max-width:820px){
  .mlbsd-salary-overview-grid{grid-template-columns:1fr}
  .mlbsd-salary-overview-panel{padding:0}
  .mlbsd-salary-overview-panel+.mlbsd-salary-overview-panel{border-left:0;border-top:1px solid #e5ebf0;margin-top:17px;padding:17px 0 0}
}
@media(max-width:560px){
  .mlbsd-salary-overview .mlbsd-hero-money,.mlbsd-salary-overview .mlbsd-career-money{font-size:30px}
  .mlbsd-overview-link{margin-top:9px;font-size:12.5px}
  .mlbsd-overview-link strong{font-size:13px}
  .mlbsd-career-rank-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
  .mlbsd-career-rank-links a{width:auto;min-height:31px;padding:5px 9px}
  .mlbsd-career-rank-links a span{font-size:10.5px}
  .mlbsd-career-rank-links a strong{font-size:14px}
  .mlbsd-current-ranks-card{padding:10px}
  .mlbsd-current-ranks-heading{margin:0 0 6px;padding:0}
  .mlbsd-current-ranks-heading strong{font-size:15px;font-weight:700;color:#607487}
  .mlbsd-current-ranks-card .mlbsd-rank-card{flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:8px 7px}
  .mlbsd-current-ranks-card .mlbsd-rank-card span{font-size:9.5px;width:100%}
  .mlbsd-current-ranks-card .mlbsd-rank-card strong{font-size:16px}
  .mlbsd-salary-mobile-team.is-multi{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.12}
  .mlbsd-salary-mobile-team.is-multi .mlbsd-mobile-team-step{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mlbsd-salary-mobile-team.is-multi .mlbsd-mobile-team-arrow{display:block;color:#82909b;font-size:8px;line-height:1}
  .mlbsd-salary-mobile-summary.is-multi-team{min-height:62px}
}


/* v0.1.88 clearer ranking actions + compact current ranks + vertical transfer routes */
@media(min-width:821px){
  .mlbsd-salary-overview-grid{align-items:stretch}
  .mlbsd-salary-overview-panel{display:flex;flex-direction:column;min-height:230px}
  .mlbsd-salary-overview-panel .mlbsd-overview-link{margin-top:auto}
  .mlbsd-salary-overview-panel .mlbsd-career-rank-links{margin-top:auto;padding-top:12px}
}
.mlbsd-overview-link{justify-content:space-between;min-width:210px;max-width:100%;padding:8px 13px;border-color:#a9c4d9;background:#f2f8fc;color:#0b4f83;box-shadow:0 1px 0 rgba(15,76,129,.04);font-size:13px}
.mlbsd-overview-link span{color:#0b4f83;font-weight:800}
.mlbsd-overview-link strong{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#0f4c81;color:#fff;font-size:13px}
.mlbsd-overview-link:hover{background:#0f4c81;color:#fff;border-color:#0f4c81}
.mlbsd-overview-link:hover span{color:#fff}
.mlbsd-overview-link:hover strong{background:#fff;color:#0f4c81}
.mlbsd-career-rank-links a{justify-content:flex-start;min-height:42px;padding:8px 12px;border-color:#a9c4d9;background:#f2f8fc;box-shadow:0 1px 0 rgba(15,76,129,.04)}
.mlbsd-career-rank-links a span{color:#0b4f83;font-size:12px;font-weight:800}
.mlbsd-career-rank-links a strong{margin-left:auto;font-size:17px}
.mlbsd-career-rank-links a em{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#0f4c81;color:#fff;font-size:13px}
.mlbsd-career-rank-links a:hover{background:#0f4c81;color:#fff;border-color:#0f4c81}
.mlbsd-career-rank-links a:hover span,.mlbsd-career-rank-links a:hover strong{color:#fff}
.mlbsd-career-rank-links a:hover em{background:#fff;color:#0f4c81}

@media(min-width:821px){
  .mlbsd-current-ranks-card{max-width:780px}
}
.mlbsd-current-ranks-card .mlbsd-rank-card{position:relative;padding-right:31px;cursor:pointer;background:#fbfdff}
.mlbsd-current-ranks-card .mlbsd-rank-card em{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:#e7f1f8;color:#0f4c81;font-style:normal;font-size:18px;line-height:1;font-weight:700}
.mlbsd-current-ranks-card .mlbsd-rank-card:not(.is-disabled):hover{background:#eef6fb}
.mlbsd-current-ranks-card .mlbsd-rank-card:not(.is-disabled):hover em{background:#0f4c81;color:#fff}

.mlbsd-salary-history-table .mlbsd-team-history-cell{min-width:220px;max-width:320px}
.mlbsd-team-route-vertical{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.mlbsd-team-route-vertical .mlbsd-team-route-item{position:relative;display:block;padding-left:14px;line-height:1.35}
.mlbsd-team-route-vertical .mlbsd-team-route-item::before{content:"";position:absolute;left:2px;top:.55em;width:5px;height:5px;border-radius:50%;background:#7993a8}
.mlbsd-team-route-vertical .mlbsd-team-route-item.is-transfer::after{content:"";position:absolute;left:4px;top:-8px;height:10px;border-left:1px solid #b8c7d3}
.mlbsd-team-route-arrow{display:none}

@media(max-width:560px){
  .mlbsd-overview-link{width:100%;min-height:42px;padding:8px 11px}
  .mlbsd-career-rank-links{display:grid;grid-template-columns:1fr}
  .mlbsd-career-rank-links a{width:100%}
  .mlbsd-current-ranks-card .mlbsd-rank-card{padding-right:23px}
  .mlbsd-current-ranks-card .mlbsd-rank-card em{right:6px;width:16px;height:16px;font-size:16px}
  .mlbsd-salary-mobile-team.is-multi{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;line-height:1.08}
  .mlbsd-salary-mobile-team.is-multi .mlbsd-mobile-team-step{position:relative;display:block;max-width:100%;padding-left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mlbsd-salary-mobile-team.is-multi .mlbsd-mobile-team-step::before{content:"";position:absolute;left:1px;top:.48em;width:4px;height:4px;border-radius:50%;background:#0f4c81}
  .mlbsd-salary-mobile-team.is-multi .mlbsd-mobile-team-step.is-transfer::after{content:"";position:absolute;left:2.5px;top:-8px;height:10px;border-left:1px solid #aabcc9}
  .mlbsd-salary-mobile-team.is-multi .mlbsd-mobile-team-arrow{display:none}
}


/* v0.1.89 symmetrical salary/career ranks + full-width desktop rank navigation + compact transfer chronology */
.mlbsd-salary-overview-panel{box-sizing:border-box}
.mlbsd-overview-rank{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:15px;padding:10px 12px;border:1px solid #d8e4ed;border-radius:9px;background:#f8fbfe;color:#27485f}
.mlbsd-overview-rank span{font-size:12px;font-weight:800;color:#607587}
.mlbsd-overview-rank strong{font-size:22px;line-height:1;color:#0f4c81;white-space:nowrap}
.mlbsd-overview-link{width:100%;box-sizing:border-box}
@media(min-width:821px){
  .mlbsd-salary-overview-panel{min-height:260px}
  .mlbsd-salary-overview-panel .mlbsd-overview-rank{margin-top:15px}
  .mlbsd-salary-overview-panel .mlbsd-overview-link{margin-top:auto}
  .mlbsd-current-ranks-card{max-width:none;width:auto}
  .mlbsd-current-ranks-card .mlbsd-rank-cards{width:100%}
  .mlbsd-current-ranks-card .mlbsd-rank-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:5px 12px;padding:13px 16px 12px}
  .mlbsd-current-ranks-card .mlbsd-rank-card span{grid-column:1;grid-row:1;font-size:12px;font-weight:800;color:#536b7c}
  .mlbsd-current-ranks-card .mlbsd-rank-card strong{grid-column:2;grid-row:1;font-size:22px;color:#0f4c81;text-align:right}
  .mlbsd-current-ranks-card .mlbsd-rank-card small{grid-column:1/-1;grid-row:2;display:inline-flex;align-items:center;gap:5px;color:#0f4c81;font-size:11.5px;font-weight:800}
  .mlbsd-current-ranks-card .mlbsd-rank-card small b{font-size:12px}
  .mlbsd-current-ranks-card .mlbsd-rank-card em{display:none}
}
.mlbsd-current-ranks-card .mlbsd-rank-card small{display:none}
@media(min-width:821px){.mlbsd-current-ranks-card .mlbsd-rank-card small{display:inline-flex}}

.mlbsd-attribution-note{padding-left:0;border-left:0;margin-top:5px;color:#71808d}
.mlbsd-team-route-vertical{display:inline-flex;flex-direction:column;align-items:flex-start;gap:1px}
.mlbsd-team-route-vertical .mlbsd-team-route-item{display:block;padding-left:0;line-height:1.3;white-space:normal}
.mlbsd-team-route-vertical .mlbsd-team-route-item::before,.mlbsd-team-route-vertical .mlbsd-team-route-item::after{content:none!important;display:none!important}
.mlbsd-team-route-chevron{display:block;margin:0 0 0 .35em;color:#70889a;font-size:11px;line-height:1;font-weight:900}
@media(max-width:560px){
  .mlbsd-overview-rank{margin-top:12px;padding:9px 10px}
  .mlbsd-overview-rank span{font-size:11px}
  .mlbsd-overview-rank strong{font-size:20px}
  .mlbsd-overview-link{max-width:100%;min-width:0;overflow:hidden}
  .mlbsd-overview-link span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mlbsd-salary-mobile-team.is-multi{gap:1px}
  .mlbsd-salary-mobile-team.is-multi .mlbsd-mobile-team-step{display:block;max-width:100%;padding-left:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mlbsd-salary-mobile-team.is-multi .mlbsd-mobile-team-step::before,.mlbsd-salary-mobile-team.is-multi .mlbsd-mobile-team-step::after{content:none!important;display:none!important}
  .mlbsd-mobile-team-chevron{display:block;margin-left:.25em;color:#58758c;font-size:10px;line-height:.9;font-weight:900}
}

/* v0.1.90 simplified linked rank rows + clearer salary headings + transfer arrows */
.mlbsd-overview-heading{display:block;color:#344e63;font-size:17px;font-weight:900;line-height:1.3;letter-spacing:-.01em}
.mlbsd-overview-rank-link{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 26px;align-items:center;gap:10px;width:100%;box-sizing:border-box;text-decoration:none;cursor:pointer;margin-top:18px;padding:12px 12px 12px 14px;border-color:#b7cddd;background:#f4f9fd;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}
.mlbsd-overview-rank-link span{font-size:13px;color:#31546e;font-weight:900;white-space:normal}
.mlbsd-overview-rank-link strong{font-size:25px;color:#0f4c81;font-weight:500}
.mlbsd-overview-rank-link em{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#0f4c81;color:#fff;font-size:20px;line-height:1;font-style:normal;font-weight:700}
.mlbsd-overview-rank-link:hover{background:#eaf4fb;border-color:#89aec9;box-shadow:0 1px 2px rgba(15,76,129,.08)}
.mlbsd-salary-overview-panel .mlbsd-overview-link{display:none!important}
@media(min-width:821px){
  .mlbsd-salary-overview-panel{min-height:220px}
  .mlbsd-salary-overview-panel .mlbsd-overview-rank-link{margin-top:auto}
  .mlbsd-current-ranks-card .mlbsd-rank-card{display:grid;grid-template-columns:minmax(0,1fr) auto 24px;grid-template-rows:1fr;align-items:center;gap:10px;min-height:68px;padding:12px 14px 12px 18px}
  .mlbsd-current-ranks-card .mlbsd-rank-card span{grid-column:1;grid-row:1;font-size:13px;font-weight:900;color:#4b6477}
  .mlbsd-current-ranks-card .mlbsd-rank-card strong{grid-column:2;grid-row:1;font-size:24px;font-weight:500;color:#0f4c81;text-align:right}
  .mlbsd-current-ranks-card .mlbsd-rank-card em{grid-column:3;grid-row:1;position:static;transform:none;display:inline-flex;width:20px;height:20px;font-size:18px;justify-self:end}
  .mlbsd-current-ranks-card .mlbsd-rank-card small{display:none!important}
}
.mlbsd-team-route-chevron{margin:0 0 0 .32em;color:#6e8496;font-size:12px;line-height:1;font-weight:700}
@media(max-width:560px){
  .mlbsd-overview-heading{font-size:15px}
  .mlbsd-overview-rank-link{grid-template-columns:minmax(0,1fr) auto 24px;gap:7px;margin-top:13px;padding:10px 8px 10px 11px;max-width:100%;min-width:0}
  .mlbsd-overview-rank-link span{font-size:11.5px;min-width:0;white-space:normal}
  .mlbsd-overview-rank-link strong{font-size:20px}
  .mlbsd-overview-rank-link em{width:22px;height:22px;font-size:18px}
  .mlbsd-mobile-team-chevron{margin-left:.25em;color:#58758c;font-size:10px;line-height:.95;font-weight:800}
}


/* v0.1.91 Japanese career ranking: simplify desktop columns while retaining mobile known-season metadata */
@media(min-width:561px){
  .mlbsd-career-ranking-table-japanese th:nth-child(4),
  .mlbsd-career-ranking-table-japanese td:nth-child(4){display:none}
}


/* v0.1.92 tighter desktop player salary overview + compact NPB-foreign career table */
@media(min-width:821px){
  .mlbsd-salary-overview-panel{min-height:0}
  .mlbsd-salary-overview-panel .mlbsd-overview-rank-link{margin-top:18px}
}
@media(min-width:561px){
  .mlbsd-career-ranking-table-npb-foreign th:nth-child(4),
  .mlbsd-career-ranking-table-npb-foreign td:nth-child(4){display:none}
}

/* v0.1.93 season index: clearer historical coverage label + compact mobile older-year disclosure */
.mlbsd-season-toggle{display:none}
@media(max-width:560px){
  .mlbsd-season-grid .mlbsd-season-card.is-older-season{display:none}
  .mlbsd-season-grid.is-expanded .mlbsd-season-card.is-older-season{display:flex}
  .mlbsd-season-toggle{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:10px;padding:11px 14px;border:1px solid #b8cfdf;border-radius:9px;background:#f3f8fc;color:#0f4c81;font:inherit;font-size:13px;font-weight:900;cursor:pointer}
  .mlbsd-season-toggle:hover{background:#eaf4fb}
  .mlbsd-season-toggle span{font-size:10px;line-height:1}
}

/* v0.1.94 season index: keep desktop coverage detail, simplify mobile cards */
@media(max-width:560px){
  .mlbsd-season-card small{display:none}
}

/* v0.1.95 season ranking: hide position column when annual coverage is below 90%. */
@media(max-width:720px){
  .mlbsd-public-page:not(.mlbsd-home-page) .mlbsd-ranking-table-no-position td:nth-child(3),
  .mlbsd-public-page:not(.mlbsd-home-page) .mlbsd-ranking-table-no-position td:nth-child(4){display:none}
  .mlbsd-public-page:not(.mlbsd-home-page) .mlbsd-ranking-table-no-position td:nth-child(5){display:block;grid-area:money;text-align:right;padding-left:4px!important}
}


/* v0.1.96 season ranking: make coverage explanation secondary to the ranking title. */
#mlbsd-ranking-top .mlbsd-season-ranking-description{font-size:15px;line-height:1.7;color:#52677a;margin:0}
@media(max-width:560px){
  #mlbsd-ranking-top .mlbsd-season-ranking-description{font-size:13px;line-height:1.65;color:#5f7181}
}


/* v0.1.97 team index: make team-routing explanation secondary to the page title. */
#mlbsd-ranking-top .mlbsd-team-index-description{font-size:15px;line-height:1.7;color:#52677a;margin:0}
@media(max-width:560px){
  #mlbsd-ranking-top .mlbsd-team-index-description{font-size:13px;line-height:1.65;color:#5f7181}
}


/* v0.1.98 team index: apply the secondary explanation style to the actual team-index paragraph. */
.mlbsd-team-index-description{font-size:15px;line-height:1.7;color:#52677a;margin:0}
@media(max-width:560px){
  .mlbsd-team-index-description{font-size:13px;line-height:1.65;color:#5f7181}
}


/* v0.1.99 team salary-total reference ranking */
.mlbsd-team-total-cta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:10px 14px;border:1px solid #a9c4d9;border-radius:999px;background:#f2f8fc;color:#0f4c81;text-decoration:none;font-size:13px;font-weight:900}
.mlbsd-team-total-cta:hover{background:#0f4c81;border-color:#0f4c81;color:#fff}
.mlbsd-team-total-description{font-size:15px;line-height:1.7;color:#52677a;margin-bottom:10px}
.mlbsd-team-total-back{margin:0}.mlbsd-team-total-back a{color:#0f4c81;font-weight:800;text-decoration:none}.mlbsd-team-total-back a:hover{text-decoration:underline}
.mlbsd-team-total-table{table-layout:fixed}.mlbsd-team-total-table th:nth-child(1){width:8%}.mlbsd-team-total-table th:nth-child(2){width:47%}.mlbsd-team-total-table th:nth-child(3){width:17%}.mlbsd-team-total-table th:nth-child(4){width:28%}
.mlbsd-team-total-team{display:flex;align-items:center;gap:10px;color:#16354f;text-decoration:none}.mlbsd-team-total-team:hover strong{text-decoration:underline}.mlbsd-team-total-team>span:last-child{display:flex;flex-direction:column;min-width:0}.mlbsd-team-total-team strong{font-size:15px}.mlbsd-team-total-team small{margin-top:2px;color:#71808e;font-size:11px}.mlbsd-team-total-count span{display:block;margin-top:2px;color:#7a8894;font-size:11px}.mlbsd-team-total-name-mobile,.mlbsd-team-total-mobile-count{display:none}
@media(max-width:560px){
  .mlbsd-team-total-description{font-size:13px;line-height:1.65;color:#5f7181}
  .mlbsd-team-total-cta{width:100%;justify-content:center}
  .mlbsd-team-total-card{padding:0 14px 14px}
  .mlbsd-team-total-table,.mlbsd-team-total-table tbody{display:block}
  .mlbsd-team-total-table thead{display:none}
  .mlbsd-team-total-table tr{display:grid;grid-template-columns:46px minmax(0,1fr) minmax(118px,.75fr);align-items:center;border-bottom:1px solid #e4e9ee;padding:11px 0}
  .mlbsd-team-total-table td{display:block!important;padding:0!important;border:0!important}
  .mlbsd-team-total-table td:nth-child(1){grid-column:1;font-weight:900}
  .mlbsd-team-total-table td:nth-child(2){grid-column:2;min-width:0}
  .mlbsd-team-total-table td:nth-child(3){display:none!important}
  .mlbsd-team-total-table td:nth-child(4){grid-column:3;text-align:right}
  .mlbsd-team-total-team{gap:0}
  .mlbsd-team-total-name-desktop{display:none}.mlbsd-team-total-name-mobile{display:block;font-size:14px!important}
  .mlbsd-team-total-team small{font-size:10px}
  .mlbsd-team-total-mobile-count{display:block;margin-top:3px;color:#71808e;font-size:10px;font-weight:600;white-space:nowrap}
}


/* v0.2.00 team salary-total navigation and simplified public ranking */
.mlbsd-team-view-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.mlbsd-team-view-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;border:1px solid #cfd9e3;border-radius:999px;background:#fff;color:#18354f;text-decoration:none;font-size:13px;font-weight:900}
.mlbsd-team-view-tabs a:hover{border-color:#8eb1cd;background:#f3f8fc;color:#0f4c81}
.mlbsd-team-view-tabs a.is-current{background:#0f4c81;border-color:#0f4c81;color:#fff}
.mlbsd-team-home-links{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-top:auto}
.mlbsd-text-link-secondary{color:#52677a}
.mlbsd-team-context-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;margin-top:10px;padding:10px 14px;border:1px solid #a9c4d9;border-radius:999px;background:#f2f8fc;color:#0f4c81;text-decoration:none;font-size:13px;font-weight:900;line-height:1.2}
.mlbsd-team-context-link:hover{background:#0f4c81;border-color:#0f4c81;color:#fff;text-decoration:none}
.mlbsd-team-context-link:focus-visible{outline:2px solid #0f4c81;outline-offset:2px}
.mlbsd-team-total-table th:nth-child(1){width:9%}
.mlbsd-team-total-table th:nth-child(2){width:58%}
.mlbsd-team-total-table th:nth-child(3){width:33%}
@media(max-width:560px){
  .mlbsd-team-view-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .mlbsd-team-view-tabs a{min-width:0;padding:8px 10px;font-size:12px}
  .mlbsd-team-home-links{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
  .mlbsd-team-context-link{width:auto;max-width:100%;justify-content:center;min-height:36px;padding:8px 12px;font-size:12px;line-height:1.25}
  .mlbsd-team-total-table tr{grid-template-columns:46px minmax(0,1fr) minmax(118px,.78fr)}
  .mlbsd-team-total-table td:nth-child(1){grid-column:1}
  .mlbsd-team-total-table td:nth-child(2){grid-column:2}
  .mlbsd-team-total-table td:nth-child(3){display:block!important;grid-column:3;text-align:right}
}

/* v0.2.03: position index intro should read as supporting copy, not body lead. */
.mlbsd-position-index-description{font-size:15px;line-height:1.75;color:#667b8d;margin:0 0 2px}
@media(max-width:560px){.mlbsd-position-index-description{font-size:13px;line-height:1.7;color:#718392}}


/* v0.2.04: make unresolved salary labels secondary to confirmed money values in the player hero. */
.mlbsd-salary-overview .mlbsd-money-researching{font-size:28px!important;line-height:1.2;font-weight:650;letter-spacing:-.015em;color:#344e63}
@media(max-width:560px){
  .mlbsd-salary-overview .mlbsd-money-researching{font-size:24px!important;line-height:1.2;font-weight:650}
}


/* v0.2.09: make team/position ranking support copy clearly secondary, and keep player facts practical. */
.mlbsd-supporting-description{font-size:14px;line-height:1.72;color:#52677a;margin:0 0 2px}
@media(max-width:560px){.mlbsd-supporting-description{font-size:12px;line-height:1.68;color:#5f7181}}
.mlbsd-facts dd{font-size:15px;line-height:1.45}
@media(max-width:560px){.mlbsd-facts dd{font-size:14px}}


/* v0.2.10: team detail helper CTA should read as a visible but secondary button. */


/* v0.2.12: compact team detail CTA on mobile while keeping its pre-ranking placement. */

/* v0.2.19: add breathing room between ranking content and related-ranking navigation. */
.mlbsd-related-rankings{margin:30px 0 0;padding:0 0 2px}.mlbsd-related-rankings-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-bottom:2px solid #18354f;padding:0 0 10px;margin:0}.mlbsd-related-rankings-heading h2{margin:0;font-size:22px;line-height:1.3;color:#111;font-weight:900}.mlbsd-related-rankings-heading p{margin:0;color:#71808d;font-size:12px;line-height:1.5}.mlbsd-related-rankings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #d9e0e7;border-top:0;border-radius:0 0 6px 6px;overflow:hidden;background:#fff}.mlbsd-related-rankings-grid a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:15px 16px;color:#10283d;text-decoration:none;font-size:15px;font-weight:800;border-bottom:1px solid #d9e0e7}.mlbsd-related-rankings-grid a:nth-child(odd){border-right:1px solid #d9e0e7}.mlbsd-related-rankings-grid a:nth-last-child(-n+2){border-bottom:0}.mlbsd-related-rankings-grid a span:last-child{color:#0f4c81;font-size:24px;line-height:1;font-weight:500}.mlbsd-related-rankings-grid a:hover{background:#f8fbfe}
@media(max-width:560px){.mlbsd-related-rankings{margin-top:24px}.mlbsd-related-rankings-heading{display:block;padding-bottom:8px}.mlbsd-related-rankings-heading h2{font-size:20px}.mlbsd-related-rankings-heading p{margin-top:4px;font-size:11px}.mlbsd-related-rankings-grid{grid-template-columns:1fr}.mlbsd-related-rankings-grid a{min-height:52px;padding:13px 14px;font-size:14px;border-right:0!important;border-bottom:1px solid #d9e0e7!important}.mlbsd-related-rankings-grid a:last-child{border-bottom:0!important}}

/* v0.2.21: unify all ranking-page introductory copy and make mobile support copy clearly secondary. */
.mlbsd-public-page .mlbsd-card .mlbsd-ranking-description{font-size:15px;line-height:1.7;color:#52677a;margin-top:0}
#mlbsd-ranking-top .mlbsd-ranking-description{font-size:15px;line-height:1.7;color:#52677a}
@media(max-width:560px){
  .mlbsd-public-page .mlbsd-card .mlbsd-ranking-description,
  #mlbsd-ranking-top .mlbsd-ranking-description{font-size:11px;line-height:1.65;color:#657787}
}


/* v0.2.22: harden ranking intro typography against theme/global paragraph rules on mobile.
 * 720px and below is treated as compact layout; true phone widths (560px and below) use 11px.
 * !important is intentional here because the standalone WordPress page can still inherit theme paragraph rules. */
@media(max-width:720px){
  .mlbsd-public-page #mlbsd-ranking-top p.mlbsd-ranking-description,
  .mlbsd-public-page .mlbsd-card p.mlbsd-ranking-description{font-size:12px!important;line-height:1.65!important;color:#657787!important}
}
@media(max-width:560px){
  .mlbsd-public-page #mlbsd-ranking-top p.mlbsd-ranking-description,
  .mlbsd-public-page .mlbsd-card p.mlbsd-ranking-description{font-size:11px!important;line-height:1.65!important;color:#657787!important}
}

/* v0.4.6 player detail: compact profile + Service Time / arbitration / FA summary. */
.mlbsd-player-facts-v2{grid-template-columns:repeat(3,minmax(0,1fr))}
.mlbsd-player-facts-v2>div{min-width:0}
.mlbsd-player-facts-v2 dd small{display:block;margin-top:3px;color:#77838e;font-size:11px;font-weight:600;line-height:1.35}
.mlbsd-player-facts-v2 .mlbsd-fact-fa dd{display:block}
.mlbsd-fa-label{display:block}
.mlbsd-fa-progress{display:block;max-width:250px;margin-top:8px}
.mlbsd-fa-progress-track{position:relative;display:block;height:6px;border-radius:999px;background:#e4eaf0;overflow:visible}
.mlbsd-fa-progress-fill{display:block;height:100%;border-radius:999px;background:#0f4c81}
.mlbsd-fa-progress-dot{position:absolute;top:50%;width:10px;height:10px;border:2px solid #fff;border-radius:50%;background:#0f4c81;box-shadow:0 0 0 1px #0f4c81;transform:translate(-50%,-50%)}
.mlbsd-fa-progress-scale{display:flex;justify-content:space-between;margin-top:4px;color:#7a8793;font-size:10px;font-weight:600;line-height:1.2}
@media(max-width:560px){
  .mlbsd-player-facts-v2{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch}
  .mlbsd-player-facts-v2 .mlbsd-fact-birth{grid-column:span 3}
  .mlbsd-player-facts-v2 .mlbsd-fact-throws{grid-column:span 1}
  .mlbsd-player-facts-v2 .mlbsd-fact-birthplace{grid-column:span 2}
  .mlbsd-player-facts-v2 .mlbsd-fact-service{grid-column:span 3}
  .mlbsd-player-facts-v2 .mlbsd-fact-qualification{grid-column:span 3}
  .mlbsd-player-facts-v2 .mlbsd-fact-fa{grid-column:1/-1}
  .mlbsd-player-facts-v2 dt{font-size:10.5px;line-height:1.3}
  .mlbsd-player-facts-v2 dd{font-size:13px;line-height:1.4}
  .mlbsd-player-facts-v2 .mlbsd-fact-birth dd,.mlbsd-player-facts-v2 .mlbsd-fact-throws dd{white-space:nowrap}
  .mlbsd-player-facts-v2 .mlbsd-fact-throws{text-align:center}
  .mlbsd-player-facts-v2 .mlbsd-fact-throws dt{text-align:center}
  .mlbsd-player-facts-v2 .mlbsd-fact-fa{padding-top:10px}
  .mlbsd-player-facts-v2 .mlbsd-fact-fa dd{display:grid;grid-template-columns:auto minmax(150px,1fr);gap:12px;align-items:center}
  .mlbsd-player-facts-v2 .mlbsd-fact-fa .mlbsd-fa-label{white-space:nowrap}
  .mlbsd-player-facts-v2 .mlbsd-fa-progress{width:100%;max-width:none;margin-top:0}
}
@media(max-width:350px){
  .mlbsd-player-facts-v2>div{padding-left:6px;padding-right:6px}
  .mlbsd-player-facts-v2 dt{font-size:10px}
  .mlbsd-player-facts-v2 dd{font-size:12px}
  .mlbsd-player-facts-v2 dd small{font-size:9.5px}
  .mlbsd-player-facts-v2 .mlbsd-fact-fa dd{grid-template-columns:auto minmax(120px,1fr);gap:8px}
}


/* v0.4.7 player detail polish: balanced mobile facts + refined hero typography. */
.mlbsd-current-team{font-size:16px;line-height:1.45;letter-spacing:.005em}
.mlbsd-status-badge{font-size:13px;line-height:1.25;padding:6px 11px}
.mlbsd-salary-overview .mlbsd-hero-money,.mlbsd-salary-overview .mlbsd-career-money{font-size:clamp(32px,3vw,40px);line-height:1.08;letter-spacing:-.035em;font-weight:500}
.mlbsd-salary-overview .mlbsd-hero-yen{font-size:14px;line-height:1.35;margin-top:4px}
.mlbsd-overview-rank-link strong{font-size:21px}
@media(max-width:560px){
  .mlbsd-current-team{font-size:15px;line-height:1.4}
  .mlbsd-status-badge{font-size:12.5px;padding:5px 10px}
  .mlbsd-salary-overview .mlbsd-hero-money,.mlbsd-salary-overview .mlbsd-career-money{font-size:27px;line-height:1.08}
  .mlbsd-salary-overview .mlbsd-hero-yen{font-size:13px}
  .mlbsd-overview-rank-link strong{font-size:18px}
  .mlbsd-player-facts-v2{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:10px}
  .mlbsd-player-facts-v2 .mlbsd-fact-birth{grid-column:span 2}
  .mlbsd-player-facts-v2 .mlbsd-fact-throws{grid-column:span 1;text-align:left}
  .mlbsd-player-facts-v2 .mlbsd-fact-birthplace{grid-column:span 1}
  .mlbsd-player-facts-v2 .mlbsd-fact-service{grid-column:span 2}
  .mlbsd-player-facts-v2 .mlbsd-fact-qualification{grid-column:span 2}
  .mlbsd-player-facts-v2 .mlbsd-fact-fa{grid-column:1/-1}
  .mlbsd-player-facts-v2 .mlbsd-fact-throws dt{text-align:left}
  .mlbsd-player-facts-v2>div{padding-left:8px;padding-right:8px}
}
@media(max-width:350px){
  .mlbsd-player-facts-v2{column-gap:6px}
  .mlbsd-player-facts-v2>div{padding-left:5px;padding-right:5px}
}


/* v0.4.8 player detail: cumulative/current-season Service split + compact rank/contract/earnings mobile tables. */
.mlbsd-player-facts-v2 .mlbsd-fact-season-service dd{font-variant-numeric:tabular-nums}
@media(min-width:821px){
  .mlbsd-current-ranks-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:8px 12px}
  .mlbsd-current-ranks-heading{margin:0;white-space:nowrap}
  .mlbsd-current-ranks-heading strong{font-size:15px;font-weight:700;color:#607487}
  .mlbsd-current-ranks-card .mlbsd-rank-card{min-height:44px!important;padding:8px 30px 8px 12px!important}
  .mlbsd-current-ranks-card .mlbsd-rank-card span{font-size:13px!important}
  .mlbsd-current-ranks-card .mlbsd-rank-card strong{font-size:18px!important}
  .mlbsd-current-ranks-card .mlbsd-rank-card em{width:17px!important;height:17px!important;font-size:15px!important}
}
.mlbsd-contract-mobile{display:none}
@media(max-width:560px){
  .mlbsd-current-ranks-card{padding:8px 9px}
  .mlbsd-current-ranks-heading{margin-bottom:4px}
  .mlbsd-current-ranks-heading strong{font-size:13px;font-weight:700;color:#607487}
  .mlbsd-current-ranks-card .mlbsd-rank-card{min-height:50px!important;padding:7px 24px 7px 8px!important}
  .mlbsd-current-ranks-card .mlbsd-rank-card span{font-size:11px!important}
  .mlbsd-current-ranks-card .mlbsd-rank-card strong{font-size:15px!important}
  .mlbsd-current-ranks-card .mlbsd-rank-card em{right:5px!important;width:15px!important;height:15px!important;font-size:14px!important}

  .mlbsd-player-facts-v2 .mlbsd-fact-season-service{grid-column:span 2}
  .mlbsd-player-facts-v2 .mlbsd-fact-qualification{display:none}

  .mlbsd-contracts-card{padding-left:10px;padding-right:10px}
  .mlbsd-contracts-card>h2,.mlbsd-earnings-card>h2{font-size:18px;margin-bottom:10px}
  .mlbsd-contract-summary{font-size:12px;gap:4px 9px;padding-bottom:7px}
  .mlbsd-contract-note{margin:6px 0 9px!important;font-size:11px!important;line-height:1.55!important}
  .mlbsd-contract-desktop{display:none}
  .mlbsd-contract-mobile{display:block;border:1px solid #dfe6ec;border-radius:9px;overflow:hidden;background:#fff}

  .mlbsd-earnings-card{padding:10px}
  .mlbsd-earnings-desktop{display:none}
  .mlbsd-earnings-mobile{display:block;margin:0;border:1px solid #dfe6ec;border-radius:9px;overflow:hidden;background:#fff}
  .mlbsd-compact-detail-note-top{margin:0!important;padding:8px 10px;border-bottom:1px solid #e6ebef;background:#f8fafc;color:#697b8a;font-size:10.5px!important;line-height:1.45!important}
  .mlbsd-compact-detail-head,.mlbsd-compact-detail-summary{display:grid;grid-template-columns:54px minmax(0,1fr) 38px;gap:7px;align-items:center}
  .mlbsd-compact-detail-head{padding:6px 9px;border-bottom:1px solid #e6ebef;background:#f5f7f9;color:#748391;font-size:9.5px;font-weight:800;line-height:1.2}
  .mlbsd-compact-detail-head span:nth-child(2){text-align:right}
  .mlbsd-compact-detail-head span:last-child{text-align:center}
  .mlbsd-compact-detail-item{margin:0;border:0;border-bottom:1px solid #e7ecf0;background:#fff}
  .mlbsd-compact-detail-item:last-child{border-bottom:0}
  .mlbsd-compact-detail-item[open]{background:#f7fbfe;box-shadow:inset 3px 0 0 #3f7da8}
  .mlbsd-compact-detail-summary{min-height:42px;padding:6px 9px;cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}
  .mlbsd-compact-detail-summary::-webkit-details-marker{display:none}.mlbsd-compact-detail-summary::marker{content:''}
  .mlbsd-compact-detail-year{font-size:12px;font-weight:900;color:#20384c;font-variant-numeric:tabular-nums}
  .mlbsd-compact-detail-money{text-align:right;font-size:12.5px;font-weight:800;color:#142f47;white-space:nowrap;font-variant-numeric:tabular-nums}
  .mlbsd-compact-detail-action{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;justify-self:center;border-radius:999px;background:#e7f1f8;color:#0f4c81;font-size:20px;font-weight:700;line-height:1}
  .mlbsd-compact-detail-action .is-open{display:none}
  .mlbsd-compact-detail-item[open] .mlbsd-compact-detail-action .is-closed{display:none}
  .mlbsd-compact-detail-item[open] .mlbsd-compact-detail-action .is-open{display:inline;font-size:13px}
  .mlbsd-compact-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:8px 9px 10px;border-top:1px solid #dce8f0;background:#f8fbfd}
  .mlbsd-compact-detail-facts>div{min-width:0;padding:6px 7px;border:1px solid #e0e8ee;border-radius:7px;background:#fff}
  .mlbsd-compact-detail-facts .mlbsd-compact-detail-note{grid-column:1/-1}
  .mlbsd-compact-detail-facts dt{margin:0 0 2px;color:#72818e;font-size:9.5px;font-weight:800}
  .mlbsd-compact-detail-facts dd{margin:0;color:#20384c;font-size:11.5px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}
}
@media(max-width:330px){
  .mlbsd-compact-detail-head,.mlbsd-compact-detail-summary{grid-template-columns:48px minmax(0,1fr) 34px;gap:5px;padding-left:7px;padding-right:7px}
  .mlbsd-compact-detail-money{font-size:11.5px}
  .mlbsd-compact-detail-facts{padding-left:7px;padding-right:7px}
}


/* v0.4.9 player detail polish: larger compact-rank labels + full-season Service cue. */
.mlbsd-player-facts-v2 .mlbsd-fact-season-service dd.is-full-service{color:#9f1d1d}
.mlbsd-service-full-badge{display:inline-flex;align-items:center;margin-left:7px;padding:2px 6px;border-radius:999px;background:#fff0f0;color:#a31414;font-size:9px;font-weight:900;line-height:1.2;vertical-align:2px}
@media(max-width:560px){
  .mlbsd-player-facts-v2 .mlbsd-fact-service,.mlbsd-player-facts-v2 .mlbsd-fact-season-service{grid-column:span 2}
  .mlbsd-player-facts-v2 .mlbsd-fact-service{border-right:1px solid #e7ecf0}
  .mlbsd-service-full-badge{margin-left:4px;padding:1px 5px;font-size:8.5px}
}

@media (max-width: 680px){.mlbsd-contract-special-notes{margin-top:8px!important;padding:8px 9px;font-size:10.5px!important;line-height:1.55!important}}


/* v0.4.29 Stats Frontend PREVIEW ONLY */
.mlbsd-stats-card h2{margin-bottom:14px}
.mlbsd-stats-group+.mlbsd-stats-group{margin-top:22px}
.mlbsd-stats-group h3{margin:0 0 8px;font-size:16px;color:#29445c}
.mlbsd-stats-table-wrap{overflow:hidden;border:1px solid #e1e7ec;border-radius:10px}
.mlbsd-stats-table{width:100%;margin:0;border:0;border-collapse:collapse;table-layout:fixed}
.mlbsd-stats-table th,.mlbsd-stats-table td{padding:10px 12px;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}
.mlbsd-stats-table th{font-size:12px;color:#627385;background:#f5f7f9}
.mlbsd-stats-table td{font-size:14px}
.mlbsd-stats-table th:first-child,.mlbsd-stats-table td:first-child{text-align:left}
.mlbsd-stats-source-note{margin:10px 0 0;color:#71808d;font-size:11px;line-height:1.55}
@media(max-width:560px){
  .mlbsd-stats-card{padding-left:10px;padding-right:10px}
  .mlbsd-stats-card>h2{font-size:18px;margin-bottom:10px}
  .mlbsd-stats-group+.mlbsd-stats-group{margin-top:16px}
  .mlbsd-stats-group h3{font-size:14px;margin-bottom:6px}
  .mlbsd-stats-table-wrap{border-radius:8px}
  .mlbsd-stats-table th,.mlbsd-stats-table td{padding:8px 4px}
  .mlbsd-stats-table th{font-size:9.5px}
  .mlbsd-stats-table td{font-size:12px}
  .mlbsd-stats-hitting th:first-child,.mlbsd-stats-hitting td:first-child{width:19%}
  .mlbsd-stats-hitting th:not(:first-child),.mlbsd-stats-hitting td:not(:first-child){width:20.25%}
  .mlbsd-stats-pitching th:nth-child(1),.mlbsd-stats-pitching td:nth-child(1){width:20%}
  .mlbsd-stats-pitching th:nth-child(2),.mlbsd-stats-pitching td:nth-child(2){width:18%}
  .mlbsd-stats-pitching th:nth-child(3),.mlbsd-stats-pitching td:nth-child(3){width:42%}
  .mlbsd-stats-pitching th:nth-child(4),.mlbsd-stats-pitching td:nth-child(4){width:20%}
  .mlbsd-stats-source-note{font-size:10px}
}


/* v0.4.30 extended MLB stats: PC full metrics + compact SP details */
.mlbsd-stats-mobile-only{display:none}
.mlbsd-stats-hitting th,.mlbsd-stats-hitting td{width:auto}
.mlbsd-stats-pitching th,.mlbsd-stats-pitching td{width:auto}
.mlbsd-stats-detail-label{color:#0f4c81;font-weight:800}
@media(max-width:560px){
  .mlbsd-stats-desktop-only{display:none!important}
  .mlbsd-stats-mobile-only{display:block}
  .mlbsd-stats-mobile-table{border:1px solid #e1e7ec;border-radius:8px;overflow:hidden}
  .mlbsd-stats-mobile-head,.mlbsd-stats-mobile-row>summary{display:grid;align-items:center;text-align:center;min-width:0}
  .mlbsd-stats-mobile-hitting .mlbsd-stats-mobile-head,.mlbsd-stats-mobile-hitting .mlbsd-stats-mobile-row>summary{grid-template-columns:17% 13% 17% 15% 14% 24%}
  .mlbsd-stats-mobile-pitching .mlbsd-stats-mobile-head,.mlbsd-stats-mobile-pitching .mlbsd-stats-mobile-row>summary{grid-template-columns:18% 14% 17% 33% 18%}
  .mlbsd-stats-mobile-head{background:#f5f7f9;color:#627385;font-size:9.5px;font-weight:700;padding:8px 2px}
  .mlbsd-stats-mobile-row{border-top:1px solid #e7ebef;background:#fff}
  .mlbsd-stats-mobile-row:first-of-type{border-top:0}
  .mlbsd-stats-mobile-row>summary{cursor:pointer;list-style:none;padding:9px 2px;font-size:11.5px;font-variant-numeric:tabular-nums}
  .mlbsd-stats-mobile-row>summary::-webkit-details-marker{display:none}
  .mlbsd-stats-mobile-row>summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 1px}
  .mlbsd-stats-mobile-row>summary .mlbsd-stats-detail-label::after{content:' ›';font-size:14px}
  .mlbsd-stats-mobile-row[open]>summary .mlbsd-stats-detail-label::after{content:' ⌄'}
  .mlbsd-stats-mobile-detail{display:grid;background:#f9fbfc;border-top:1px solid #e7ebef;padding:8px 7px;gap:6px}
  .mlbsd-stats-mobile-detail-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mlbsd-stats-mobile-detail-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .mlbsd-stats-mobile-detail-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mlbsd-stats-mobile-detail span{display:flex;flex-direction:column;align-items:center;min-width:0}
  .mlbsd-stats-mobile-detail small{font-size:9px;color:#72808c;line-height:1.2}
  .mlbsd-stats-mobile-detail strong{font-size:12px;color:#243b50;font-variant-numeric:tabular-nums;margin-top:2px}
}


/* v0.4.33 Stats Frontend polish: balanced SP pitching columns, career totals, title crowns */
.mlbsd-stats-career-row td,.mlbsd-stats-career-row>summary{background:#f8fafc;font-weight:800;border-top:2px solid #d7e0e8}
.mlbsd-stats-table tfoot td{color:#243b50}
.mlbsd-stat-title-value{display:inline-flex;align-items:center;justify-content:center;gap:4px}
.mlbsd-stat-title-value>strong{font-weight:900;color:#20384c}
.mlbsd-stat-title-crown{display:inline-block;color:#c28a00;font-size:12px;line-height:1;transform:translateY(-1px);text-shadow:0 1px 0 rgba(255,255,255,.8)}
@media(max-width:560px){
  .mlbsd-stats-mobile-pitching .mlbsd-stats-mobile-head,.mlbsd-stats-mobile-pitching .mlbsd-stats-mobile-row>summary{grid-template-columns:20% 18% 20% 24% 18%}
  .mlbsd-stats-mobile-pitching .mlbsd-stats-mobile-head span:nth-child(4),.mlbsd-stats-mobile-pitching .mlbsd-stats-mobile-row>summary span:nth-child(4){font-size:clamp(9.5px,2.9vw,11.5px);letter-spacing:-.1px}
  .mlbsd-stats-career-row>summary{border-top:0}
  .mlbsd-stat-title-value{gap:2px}
  .mlbsd-stat-title-crown{font-size:10px}
}


/* v0.4.42 player-page low-priority salary methodology note */
@media(min-width:561px){
  .mlbsd-player-page .mlbsd-data-note-card{padding:14px 16px}
  .mlbsd-player-page .mlbsd-data-note h2{margin:0 0 7px;font-size:15px;line-height:1.4;font-weight:700;color:#526476}
  .mlbsd-player-page .mlbsd-data-note p{max-width:1000px;margin:0;font-size:12px;line-height:1.65;color:#6b7883}
}
@media(max-width:560px){
  .mlbsd-data-note-mobile-summary{min-height:44px;padding:9px 11px}
  .mlbsd-data-note-mobile-title{font-size:14px;font-weight:700;color:#526476}
  .mlbsd-data-note-mobile-action{min-height:26px;padding:0 6px;font-size:9.5px}
  .mlbsd-data-note-mobile-content{padding:8px 11px 10px}
  .mlbsd-player-page .mlbsd-data-note-mobile-content p{font-size:11.5px;line-height:1.6;color:#6b7883}
}
@media(max-width:330px){
  .mlbsd-data-note-mobile-title{font-size:13.5px}
  .mlbsd-player-page .mlbsd-data-note-mobile-content p{font-size:11px}
}


/* v0.4.47 player detail: Service chips, current roster status, and reference yen in contract/cash tables. */
.mlbsd-service-stack{display:grid;gap:4px}
.mlbsd-service-line{display:flex;align-items:center;gap:6px;min-width:0;font-variant-numeric:tabular-nums}
.mlbsd-service-line strong{font-weight:800}
.mlbsd-service-chip{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:2px 6px;border-radius:999px;background:#edf4fa;color:#315c7d;font-size:9px;font-weight:900;line-height:1.25}
.mlbsd-service-chip.is-limit{background:#fff0f0;color:#a31414}
.mlbsd-service-line.is-full-service strong{color:#9f1d1d}
.mlbsd-roster-status-badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;border:1px solid #d8e0e7;background:#f5f7f9;color:#405565;font-size:12px;font-weight:900;line-height:1.25}
.mlbsd-roster-status-badge.is-ok{background:#eef8f0;border-color:#bad9c0;color:#176b2a}
.mlbsd-roster-status-badge.is-warn{background:#fff8df;border-color:#e3c96b;color:#875f00}
.mlbsd-roster-status-badge.is-danger{background:#fff0f0;border-color:#e2a8a8;color:#a31414}
.mlbsd-roster-status-badge.is-review{background:#fff8df;border-color:#e3c96b;color:#875f00}
.mlbsd-roster-status-badge.is-neutral{background:#f3f5f7;border-color:#d6dde3;color:#526371}
.mlbsd-contract-yen-summary{display:block;margin-top:1px;color:#758593;font-size:10px;font-weight:600;line-height:1.3}
.mlbsd-future-fx-note{margin:7px 0 0!important;color:#7b8995;font-size:10.5px!important;line-height:1.5!important}
.mlbsd-contracts-card .mlbsd-yen-subtext,.mlbsd-earnings-card .mlbsd-yen-subtext{font-size:10px;margin-top:1px;font-weight:600;line-height:1.3}
@media(max-width:560px){
  .mlbsd-player-facts-v2 .mlbsd-fact-service{grid-column:span 2;border-right:1px solid #e7ecf0}
  .mlbsd-player-facts-v2 .mlbsd-fact-roster-status{grid-column:span 2}
  .mlbsd-service-line{gap:4px;white-space:nowrap}
  .mlbsd-service-chip{padding:1px 5px;font-size:8.5px}
  .mlbsd-roster-status-badge{padding:3px 7px;font-size:10.5px}
  .mlbsd-contract-yen-summary{font-size:9px}
  .mlbsd-future-fx-note{font-size:9.5px!important;line-height:1.45!important}
  .mlbsd-contracts-card .mlbsd-yen-subtext,.mlbsd-earnings-card .mlbsd-yen-subtext{font-size:9px;margin-top:0}
  .mlbsd-compact-detail-money .mlbsd-yen-subtext{white-space:nowrap}
}


/* v0.4.48 player detail polish: balanced Service/status row and boxed contract summary. */
.mlbsd-fact-heading-asof{display:inline!important;margin:0 0 0 6px!important;color:#8794a0!important;font-size:9.5px!important;font-weight:600!important;white-space:nowrap}
.mlbsd-roster-status-text{display:block;font:inherit;color:inherit}
.mlbsd-contract-summary{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(190px,1fr) minmax(190px,1fr);gap:10px;padding:0 0 12px}
.mlbsd-contract-summary-item{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:10px 12px;border:1px solid #dfe6ec;border-radius:8px;background:#f8fafc}
.mlbsd-contract-summary-item strong{font-size:16px;line-height:1.35;font-weight:800;font-variant-numeric:tabular-nums}
.mlbsd-contract-summary-item small{display:block;margin-top:2px;color:#758593;font-size:10px;font-weight:600;line-height:1.3}
.mlbsd-contract-summary-label{display:block;margin-bottom:3px;color:#71808d;font-size:10.5px;font-weight:800;line-height:1.25}
.mlbsd-contract-summary-item.is-period strong{font-size:15px}
.mlbsd-contract-yen-summary{margin-top:2px!important}
@media(max-width:560px){
  .mlbsd-fact-heading-asof{font-size:8.5px!important;margin-left:4px!important}
  .mlbsd-contract-summary{grid-template-columns:1fr 1fr;gap:6px;padding-bottom:8px}
  .mlbsd-contract-summary-item{padding:7px 8px;border-radius:7px}
  .mlbsd-contract-summary-item.is-period{grid-column:1/-1;display:grid;grid-template-columns:auto auto 1fr;justify-content:start;align-items:baseline;gap:6px}
  .mlbsd-contract-summary-item strong{font-size:12px}
  .mlbsd-contract-summary-item.is-period strong{font-size:12px}
  .mlbsd-contract-summary-label{font-size:8.5px;margin-bottom:2px}
  .mlbsd-contract-summary-item small{font-size:8.5px;margin-top:1px}
}


/* v0.4.51 mobile player header: keep status badge beside the player name. */
.mlbsd-status-badge-mobile{display:none}
@media(max-width:560px){
  .mlbsd-player-name-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
  .mlbsd-player-name-line h1{margin-right:0}
  .mlbsd-status-badge-desktop{display:none}
  .mlbsd-status-badge-mobile{display:inline-flex;flex:0 0 auto;margin:0}
}


/* v0.4.54 mobile player header: structural center alignment without manual pixel offsets. */
@media(max-width:560px){
  .mlbsd-player-name-line{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
  .mlbsd-player-name-line h1{margin:0;line-height:1;min-width:0}
  .mlbsd-status-badge-mobile{display:inline-flex;align-items:center;justify-content:center;align-self:center;margin:0;line-height:1;font-size:11px;padding:4px 8px}
}


/* v0.4.60 text-only club badges + compact player search. No MLB/team logo images. */
.mlbsd-team-badge,.mlbsd-search-state-badge{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;flex:0 0 auto;min-width:58px;height:38px;padding:0 10px;border:0;border-radius:8px;background:var(--mlbsd-team-bg,#31485c);color:var(--mlbsd-team-fg,#fff)!important;font-size:16px;line-height:1;font-weight:900;letter-spacing:.015em;text-decoration:none;white-space:nowrap}
.mlbsd-search-state-badge.is-retired,.mlbsd-search-state-badge.is-ob{background:#64748b;color:#fff!important}
.mlbsd-search-state-badge.is-fa{background:#334155;color:#fff!important}

/* Team index: badge is the identifier, so the duplicate abbreviation line is removed. */
.mlbsd-team-card{display:grid;grid-template-columns:64px minmax(0,1fr);grid-template-areas:"badge name" "badge count";column-gap:12px;row-gap:3px;align-items:center}
.mlbsd-team-card-badge{grid-area:badge;width:58px;align-self:center}
.mlbsd-team-card>strong{grid-area:name;align-self:end}
.mlbsd-team-card>small{grid-area:count;align-self:start}

/* Team salary-total ranking uses the same text badge instead of external logo art. */
.mlbsd-team-total-badge{width:58px;height:38px}

/* Search results: badge + two text rows only. DOB/current-team/status prose is removed. */
.mlbsd-search-result{display:grid;grid-template-columns:64px minmax(0,1fr);gap:0 12px;align-items:center;padding:11px 13px}
.mlbsd-search-result-copy{display:flex;flex-direction:column;min-width:0}
.mlbsd-search-result-copy strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mlbsd-search-result-en{min-width:0;margin-top:2px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mlbsd-search-team-badge,.mlbsd-search-state-badge{width:58px}

@media(max-width:560px){
  .mlbsd-team-card{grid-template-columns:54px minmax(0,1fr);column-gap:8px;row-gap:2px;padding:9px 8px}
  .mlbsd-team-badge,.mlbsd-search-state-badge{min-width:50px;width:50px;height:34px;padding:0 7px;border-radius:7px;font-size:14px}
  .mlbsd-team-card-badge{width:50px}
  .mlbsd-search-result{grid-template-columns:54px minmax(0,1fr);gap:0 8px;padding:9px 10px}
  .mlbsd-search-result strong{font-size:15px;line-height:1.35}
  .mlbsd-search-result-en{font-size:12px;line-height:1.35}
  .mlbsd-team-total-badge{display:inline-flex;width:44px;min-width:44px;height:30px;padding:0 5px;font-size:12px}
  .mlbsd-team-total-team{gap:6px}
}


/* v0.4.61 desktop density polish + status semantics. Smartphone layout remains v0.4.60. */
.mlbsd-search-state-badge.is-former{background:#64748b;color:#fff!important}.mlbsd-search-state-badge.is-unaffiliated{background:#475569;color:#fff!important}
@media(min-width:561px){
  .mlbsd-search-result{grid-template-columns:48px minmax(0,1fr);gap:0 8px;padding:8px 9px}
  .mlbsd-search-result strong{font-size:15px;line-height:1.25;white-space:normal;overflow:visible;text-overflow:clip;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}
  .mlbsd-search-result-en{font-size:12.5px;line-height:1.35;margin-top:1px!important}
  .mlbsd-search-team-badge,.mlbsd-search-state-badge{min-width:46px;width:46px;height:30px;padding:0 5px;border-radius:7px;font-size:12px}
  .mlbsd-team-total-badge{min-width:50px;width:50px;height:34px;padding:0 7px;font-size:14px}
}
@media(min-width:761px){
  .mlbsd-search-results{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
}

/* v0.5.57 mobile long-name wrapping + OB peak salary context. */
.mlbsd-peak-salary-year{display:block;margin-top:5px;color:#667785;font-size:12px;font-weight:700;line-height:1.45}
@media(max-width:560px){
  .mlbsd-player-name-line h1{max-width:100%;word-break:keep-all;overflow-wrap:anywhere;line-height:1.08}
  .mlbsd-player-name-line h1 wbr{display:inline}
  .mlbsd-peak-salary-year{font-size:11px;margin-top:4px}
}
/* v0.6.59: OB peak salary year on the heading line (the left and right overview panels have the same rows). */
.mlbsd-overview-heading-row{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:10px;row-gap:2px}
.mlbsd-overview-heading-row .mlbsd-overview-heading{display:inline-block}
.mlbsd-overview-heading-row .mlbsd-peak-salary-year{display:inline-block;margin:0 0 0 auto;white-space:nowrap}
@media(max-width:560px){
  .mlbsd-overview-heading-row .mlbsd-peak-salary-year{margin:0}
}

/* v0.5.76 SEO Expansion v1 — reuse established MLB年俸DB frontend tone/components. */
.mlbsd-seo-summary-facts{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px;border:1px solid #e1e7ec;border-radius:8px;overflow:hidden;background:#fafcff}
.mlbsd-seo-summary-facts>div{border-top:0;border-left:1px solid #e1e7ec;padding:11px 13px}
.mlbsd-seo-summary-facts>div:first-child{border-left:0}
.mlbsd-seo-summary-facts dd{font-size:18px;color:#18354f}
.mlbsd-seo-detail-grid{gap:12px}.mlbsd-seo-detail-card{padding:16px}.mlbsd-seo-detail-grid .mlbsd-discovery-item{padding:14px}.mlbsd-seo-detail-grid h2{font-size:16px;line-height:1.35;margin:0 0 7px}.mlbsd-seo-detail-grid .mlbsd-discovery-item{font-size:14px}
.mlbsd-seo-facts{margin:0}.mlbsd-seo-facts>div{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px solid #e8edf1}.mlbsd-seo-facts>div:last-child{border-bottom:0}.mlbsd-seo-facts dt{color:#667582;font-size:13px}.mlbsd-seo-facts dd{margin:0;font-size:14px;font-weight:800;text-align:right}
.mlbsd-seo-country-counts{list-style:none;padding:0;margin:0}.mlbsd-seo-country-counts li{display:flex;justify-content:space-between;gap:14px;padding:6px 0;border-bottom:1px solid #e8edf1;font-size:14px}.mlbsd-seo-country-counts li:last-child{border-bottom:0}
.mlbsd-seo-birthday-grid{gap:12px}.mlbsd-seo-birthday-grid .mlbsd-discovery-item h2{margin-bottom:5px}.mlbsd-seo-birthday-grid .mlbsd-text-link{min-height:0}
.mlbsd-seo-list-card>.mlbsd-table-scroll{margin-left:-20px;margin-right:-20px;margin-bottom:-4px}.mlbsd-seo-list-card>.mlbsd-table-scroll+.mlbsd-text-link,.mlbsd-seo-list-card>p:last-child{margin-bottom:0}
.mlbsd-seo-list-card .mlbsd-table th:first-child,.mlbsd-seo-list-card .mlbsd-table td:first-child{padding-left:20px}.mlbsd-seo-list-card .mlbsd-table th:last-child,.mlbsd-seo-list-card .mlbsd-table td:last-child{padding-right:20px}
.mlbsd-seo-jersey-cell{font-weight:900;color:#0f4c81;font-variant-numeric:tabular-nums}
.mlbsd-seo-list-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 10px}
.mlbsd-seo-list-toolbar .mlbsd-ranking-description{margin:0}
.mlbsd-seo-sort-control{display:flex;align-items:center;gap:8px;flex:0 0 auto;color:#526675;font-size:12px;font-weight:700}
.mlbsd-seo-sort-control select{min-width:150px;height:34px;border:1px solid #cfd8e1;border-radius:6px;background:#fff;color:#18354f;font:inherit;padding:0 30px 0 10px}
@media(max-width:820px){
  .mlbsd-seo-summary-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mlbsd-seo-summary-facts>div{border-left:0;border-top:1px solid #e1e7ec}
  .mlbsd-seo-summary-facts>div:nth-child(-n+2){border-top:0}
  .mlbsd-seo-summary-facts>div:nth-child(even){border-left:1px solid #e1e7ec}
}
@media(max-width:560px){
  .mlbsd-seo-expansion-page .mlbsd-hero-card{padding:18px}
  .mlbsd-seo-summary-facts{margin-top:13px}
  .mlbsd-seo-summary-facts>div{padding:8px 9px}
  .mlbsd-seo-summary-facts dt{font-size:10px}
  .mlbsd-seo-summary-facts dd{font-size:14px}
  .mlbsd-seo-detail-card{padding:11px}
  .mlbsd-seo-detail-grid{grid-template-columns:1fr;gap:8px}
  .mlbsd-seo-detail-grid .mlbsd-discovery-item{padding:11px}
  .mlbsd-seo-detail-grid h2{font-size:15px;margin-bottom:6px}
  .mlbsd-seo-facts>div,.mlbsd-seo-country-counts li{padding:6px 0;font-size:12px}
  .mlbsd-seo-facts dt{font-size:12px}.mlbsd-seo-facts dd{font-size:12.5px}.mlbsd-seo-country-counts li{font-size:12.5px}
  .mlbsd-seo-list-toolbar{display:block;margin:0 14px 10px}
  .mlbsd-seo-list-toolbar .mlbsd-ranking-description{margin:0 0 8px}
  .mlbsd-seo-sort-control{justify-content:space-between;font-size:11px}
  .mlbsd-seo-sort-control select{min-width:0;width:170px;height:32px;font-size:11px}
  .mlbsd-seo-list-card{padding:0;overflow:hidden}
  .mlbsd-seo-list-card>h2,.mlbsd-seo-list-card>p{margin-left:14px;margin-right:14px}
  .mlbsd-seo-list-card>h2{padding-top:14px}
  .mlbsd-seo-list-card>.mlbsd-table-scroll{margin:0;overflow:visible}
  .mlbsd-seo-list-card>p:last-child{padding:10px 14px 14px;margin:0;border-top:1px solid #e8edf1}
  .mlbsd-seo-player-table thead,.mlbsd-seo-rank-table thead{display:none}
  .mlbsd-seo-player-table,.mlbsd-seo-player-table tbody,.mlbsd-seo-rank-table,.mlbsd-seo-rank-table tbody{display:block;width:100%}
  .mlbsd-seo-player-table tr,.mlbsd-seo-rank-table tr{display:grid;align-items:start;border-bottom:1px solid #e8edf1;padding:10px 9px}
  .mlbsd-seo-player-table tr:last-child,.mlbsd-seo-rank-table tr:last-child{border-bottom:0}
  .mlbsd-seo-player-table td,.mlbsd-seo-rank-table td{display:block;border:0!important;padding:0!important;white-space:normal!important;min-width:0}
  .mlbsd-seo-team-table tr{grid-template-columns:30px minmax(0,1fr) auto;grid-template-areas:"jersey player money";column-gap:7px}
  .mlbsd-seo-team-table td:nth-child(1){grid-area:jersey;padding-top:1px!important}
  .mlbsd-seo-team-table td:nth-child(2){grid-area:player}
  .mlbsd-seo-team-table td:nth-child(n+3):nth-child(-n+8){display:none}
  .mlbsd-seo-team-table td:nth-child(9){grid-area:money;text-align:right;padding-left:5px!important}
  .mlbsd-seo-compact-player-table tr{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"player money";column-gap:8px}
  .mlbsd-seo-compact-player-table td:nth-child(1){grid-area:player}
  .mlbsd-seo-compact-player-table td:nth-child(n+2):nth-child(-n+5){display:none}
  .mlbsd-seo-compact-player-table td:nth-child(6){grid-area:money;text-align:right;padding:0 8px 0 5px!important}
  .mlbsd-seo-rank-table tr{grid-template-columns:34px minmax(0,1fr) auto;grid-template-areas:"rank player money";column-gap:7px}
  .mlbsd-seo-rank-table td:nth-child(1){grid-area:rank;padding-top:1px!important}
  .mlbsd-seo-rank-table td:nth-child(2){grid-area:player}
  .mlbsd-seo-rank-table td:nth-child(n+3):not(:last-child){display:none}
  .mlbsd-seo-rank-table td:last-child{grid-area:money;text-align:right;padding-left:5px!important}
  .mlbsd-seo-player-table .mlbsd-player-link,.mlbsd-seo-rank-table .mlbsd-player-link{display:block;font-size:14px;line-height:1.35}
  .mlbsd-seo-player-table .mlbsd-table-subtext{font-size:10.5px;line-height:1.35;margin-top:2px}
  .mlbsd-seo-player-table .mlbsd-mobile-row-meta,.mlbsd-seo-rank-table .mlbsd-mobile-row-meta{display:block;color:#607382;font-size:10.5px;line-height:1.45;margin-top:3px}
  .mlbsd-seo-player-table .mlbsd-money-cell strong,.mlbsd-seo-rank-table .mlbsd-money-cell strong{font-size:12px;white-space:nowrap}
  .mlbsd-seo-birthday-grid{grid-template-columns:1fr;gap:8px}
}

/* v0.5.78 SEO Expansion Pilot: compact filters / related navigation hierarchy */
.mlbsd-seo-filter-bar{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr)) auto;gap:8px;align-items:end;margin:0 0 12px;padding:10px;border:1px solid #e1e7ec;border-radius:7px;background:#f8fafc}
.mlbsd-seo-filter-bar label{display:block;min-width:0;color:#526675;font-size:11px;font-weight:700}
.mlbsd-seo-filter-bar label>span{display:block;margin:0 0 4px}
.mlbsd-seo-filter-bar select{display:block;width:100%;height:32px;border:1px solid #cfd8e1;border-radius:6px;background:#fff;color:#18354f;font-size:12px;padding:0 28px 0 9px}
.mlbsd-seo-filter-count{display:flex;align-items:center;justify-content:flex-end;min-width:76px;height:32px;color:#657887;font-size:11.5px;white-space:nowrap}
.mlbsd-seo-filter-count strong{margin:0 3px;color:#18354f;font-size:13px}
.mlbsd-seo-list-card tr[hidden]{display:none!important}
.mlbsd-seo-empty-message{margin:0!important;padding:16px 20px;color:#667582;font-size:13px;text-align:center;border-top:1px solid #e8edf1}
.mlbsd-seo-ranking-link-row{margin-top:10px!important}
.mlbsd-seo-ranking-link{font-size:12.5px!important;font-weight:600!important;line-height:1.45}
.mlbsd-seo-facts dd{font-weight:600}
.mlbsd-seo-expansion-page .mlbsd-related-rankings{margin-top:22px}
.mlbsd-seo-expansion-page .mlbsd-related-rankings-heading{align-items:center;padding-bottom:7px;border-bottom:1px solid #cfd8e1}
.mlbsd-seo-expansion-page .mlbsd-related-rankings-heading h2{font-size:18px}
.mlbsd-seo-expansion-page .mlbsd-related-rankings-heading p{font-size:11px}
.mlbsd-seo-expansion-page .mlbsd-related-rankings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:7px;border:0;border-radius:0;overflow:visible;background:transparent}
.mlbsd-seo-expansion-page .mlbsd-related-rankings-grid a{min-height:40px;padding:8px 10px;border:1px solid #d9e0e7!important;border-radius:6px;background:#fff;font-size:12.5px;font-weight:700;line-height:1.3}
.mlbsd-seo-expansion-page .mlbsd-related-rankings-grid a span:last-child{font-size:17px}
@media(max-width:700px){
  .mlbsd-seo-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0 10px 10px;padding:9px}
  .mlbsd-seo-filter-bar label{font-size:10px}
  .mlbsd-seo-filter-bar select{height:30px;font-size:11px;padding-left:7px}
  .mlbsd-seo-filter-count{justify-content:flex-start;height:30px;font-size:10.5px}
  .mlbsd-seo-filter-count strong{font-size:12px}
  .mlbsd-seo-ranking-link{font-size:11.5px!important}
  .mlbsd-seo-expansion-page .mlbsd-related-rankings{margin-top:18px}
  .mlbsd-seo-expansion-page .mlbsd-related-rankings-heading h2{font-size:16px}
  .mlbsd-seo-expansion-page .mlbsd-related-rankings-heading p{font-size:10px}
  .mlbsd-seo-expansion-page .mlbsd-related-rankings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .mlbsd-seo-expansion-page .mlbsd-related-rankings-grid a{min-height:38px;padding:7px 8px;font-size:11.5px;gap:7px}
  .mlbsd-seo-expansion-page .mlbsd-related-rankings-grid a span:last-child{font-size:15px}
}

/* v0.5.79 SEO Expansion Pilot: detail-weight fix / category hubs / mobile 3-up filters */
.mlbsd-seo-detail-grid .mlbsd-seo-facts dd{font-weight:400!important}
.mlbsd-seo-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px}
.mlbsd-seo-index-item{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:9px 11px;border:1px solid #d9e0e7;border-radius:6px;background:#fff;color:#10283d;text-decoration:none;font-size:13px;line-height:1.35}
.mlbsd-seo-index-item strong{font-weight:600;color:#18354f;white-space:nowrap}
.mlbsd-seo-index-item:not(.is-static):hover{background:#f8fbfe}
.mlbsd-seo-index-item.is-static{color:#3f5363;background:#fafcfd}
@media(max-width:700px){
  .mlbsd-seo-filter-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0 10px 10px;padding:7px}
  .mlbsd-seo-filter-bar label{font-size:9.5px}
  .mlbsd-seo-filter-bar label>span{margin-bottom:3px;white-space:nowrap}
  .mlbsd-seo-filter-bar select{height:30px;min-width:0;font-size:10.5px;padding:0 20px 0 6px}
  .mlbsd-seo-filter-count{display:none}
  .mlbsd-seo-index-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:9px}
  .mlbsd-seo-index-item{min-height:38px;padding:7px 8px;font-size:11.5px;gap:6px}
  .mlbsd-seo-index-item strong{font-size:11px}
}


/* v0.5.82 SEO Expansion: team palette badges + balanced list columns. */
@media(min-width:561px){
  .mlbsd-seo-compact-player-table{table-layout:fixed}
  .mlbsd-seo-compact-player-table th:nth-child(1),.mlbsd-seo-compact-player-table td:nth-child(1){width:36%}
  .mlbsd-seo-compact-player-table th:nth-child(2),.mlbsd-seo-compact-player-table td:nth-child(2){width:12%}
  .mlbsd-seo-compact-player-table th:nth-child(3),.mlbsd-seo-compact-player-table td:nth-child(3){width:10%}
  .mlbsd-seo-compact-player-table th:nth-child(4),.mlbsd-seo-compact-player-table td:nth-child(4){width:10%}
  .mlbsd-seo-compact-player-table th:nth-child(5),.mlbsd-seo-compact-player-table td:nth-child(5){width:16%}
  .mlbsd-seo-compact-player-table th:nth-child(6),.mlbsd-seo-compact-player-table td:nth-child(6){width:16%}
}

/* v0.5.81 SEO Expansion: shared list controls + compact team identity */
.mlbsd-seo-player-identity{display:flex;align-items:flex-start;gap:8px;min-width:0}
.mlbsd-seo-player-copy{display:block;min-width:0;flex:1 1 auto}
.mlbsd-seo-team-chip{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:34px;height:22px;padding:0 6px;border-radius:6px;background:var(--mlbsd-team-bg,#173f63);color:var(--mlbsd-team-fg,#fff)!important;font-size:10.5px;font-weight:800;line-height:1;letter-spacing:.02em;white-space:nowrap}
@media(max-width:560px){
  .mlbsd-seo-player-identity{gap:7px}
  .mlbsd-seo-team-chip{min-width:31px;height:21px;padding:0 5px;border-radius:5px;font-size:9.5px;margin-top:1px}
  .mlbsd-seo-compact-player-table .mlbsd-player-link{display:inline;vertical-align:top}
}

/* v0.5.83 SEO Expansion: mobile salary rail uses a stable left edge instead of edge-hugging right alignment. */
@media(max-width:560px){
  .mlbsd-seo-compact-player-table tr{grid-template-columns:minmax(0,1fr) 94px}
  .mlbsd-seo-compact-player-table td:nth-child(6){text-align:left;padding:0 0 0 6px!important}
}


/* v0.5.84 SEO Expansion: ranking focus metrics + birthday tone integration. */
.mlbsd-seo-mobile-metric-sub{display:none}
@media(min-width:561px){
  .mlbsd-seo-age-rank-table,.mlbsd-seo-height-rank-table,.mlbsd-seo-birthday-table{table-layout:fixed}
  .mlbsd-seo-age-rank-table th:nth-child(1),.mlbsd-seo-age-rank-table td:nth-child(1),
  .mlbsd-seo-height-rank-table th:nth-child(1),.mlbsd-seo-height-rank-table td:nth-child(1){width:7%}
  .mlbsd-seo-age-rank-table th:nth-child(2),.mlbsd-seo-age-rank-table td:nth-child(2),
  .mlbsd-seo-height-rank-table th:nth-child(2),.mlbsd-seo-height-rank-table td:nth-child(2){width:35%}
  .mlbsd-seo-age-rank-table th:nth-child(3),.mlbsd-seo-age-rank-table td:nth-child(3),
  .mlbsd-seo-height-rank-table th:nth-child(3),.mlbsd-seo-height-rank-table td:nth-child(3){width:10%}
  .mlbsd-seo-age-rank-table th:nth-child(4),.mlbsd-seo-age-rank-table td:nth-child(4),
  .mlbsd-seo-height-rank-table th:nth-child(4),.mlbsd-seo-height-rank-table td:nth-child(4){width:14%}
  .mlbsd-seo-age-rank-table th:nth-child(5),.mlbsd-seo-age-rank-table td:nth-child(5),
  .mlbsd-seo-height-rank-table th:nth-child(5),.mlbsd-seo-height-rank-table td:nth-child(5){width:14%}
  .mlbsd-seo-age-rank-table th:nth-child(6),.mlbsd-seo-age-rank-table td:nth-child(6),
  .mlbsd-seo-height-rank-table th:nth-child(6),.mlbsd-seo-height-rank-table td:nth-child(6){width:20%}
  .mlbsd-seo-birthday-table th:nth-child(1),.mlbsd-seo-birthday-table td:nth-child(1){width:42%}
  .mlbsd-seo-birthday-table th:nth-child(2),.mlbsd-seo-birthday-table td:nth-child(2){width:16%}
  .mlbsd-seo-birthday-table th:nth-child(3),.mlbsd-seo-birthday-table td:nth-child(3){width:10%}
  .mlbsd-seo-birthday-table th:nth-child(4),.mlbsd-seo-birthday-table td:nth-child(4){width:16%}
  .mlbsd-seo-birthday-table th:nth-child(5),.mlbsd-seo-birthday-table td:nth-child(5){width:16%}
}
@media(max-width:560px){
  .mlbsd-seo-age-rank-table tr,.mlbsd-seo-height-rank-table tr{grid-template-columns:30px minmax(0,1fr) 88px;grid-template-areas:"rank player metric";column-gap:7px}
  .mlbsd-seo-age-rank-table td:nth-child(1),.mlbsd-seo-height-rank-table td:nth-child(1){grid-area:rank;padding-top:2px!important}
  .mlbsd-seo-age-rank-table td:nth-child(2),.mlbsd-seo-height-rank-table td:nth-child(2){grid-area:player}
  .mlbsd-seo-age-rank-table td:nth-child(3),.mlbsd-seo-height-rank-table td:nth-child(3){display:block!important;grid-area:metric;text-align:left;padding-left:3px!important}
  .mlbsd-seo-age-rank-table td:nth-child(n+4),.mlbsd-seo-height-rank-table td:nth-child(n+4){display:none!important}
  .mlbsd-seo-rank-primary-metric strong{display:block;font-size:13px;line-height:1.35;white-space:nowrap}
  .mlbsd-seo-mobile-metric-sub{display:block;margin-top:2px;color:#607382;font-size:9.5px;line-height:1.3;white-space:nowrap}
  .mlbsd-seo-age-rank-table .mlbsd-mobile-row-meta,.mlbsd-seo-height-rank-table .mlbsd-mobile-row-meta{margin-top:2px}
  .mlbsd-seo-birthday-table tr{grid-template-columns:minmax(0,1fr) 64px;grid-template-areas:"player metric";column-gap:8px}
  .mlbsd-seo-birthday-table td:nth-child(1){grid-area:player}
  .mlbsd-seo-birthday-table td:nth-child(3){display:block!important;grid-area:metric;text-align:left;padding-left:2px!important}
  .mlbsd-seo-birthday-table td:nth-child(2),.mlbsd-seo-birthday-table td:nth-child(4),.mlbsd-seo-birthday-table td:nth-child(5){display:none!important}
  .mlbsd-seo-birthday-primary-metric strong{font-size:12.5px;white-space:nowrap}
}

/* v0.5.85 SEO Expansion: intent-split rankings / regular-weight names / birthday metric order. */
.mlbsd-seo-rank-table .mlbsd-player-link,.mlbsd-seo-rank-player-name{font-weight:400!important}
.mlbsd-seo-ranking-sibling-nav{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 10px}
.mlbsd-seo-ranking-sibling-nav a,.mlbsd-seo-ranking-more a{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border:1px solid #d9e0e7;border-radius:6px;background:#fff;color:#0f4c81;text-decoration:none;font-size:12px;font-weight:600;line-height:1.35}
.mlbsd-seo-ranking-more{margin:10px 0 0!important}
@media(min-width:561px){
  .mlbsd-seo-birthday-table th:nth-child(1),.mlbsd-seo-birthday-table td:nth-child(1){width:40%}
  .mlbsd-seo-birthday-table th:nth-child(2),.mlbsd-seo-birthday-table td:nth-child(2){width:10%}
  .mlbsd-seo-birthday-table th:nth-child(3),.mlbsd-seo-birthday-table td:nth-child(3){width:18%}
  .mlbsd-seo-birthday-table th:nth-child(4),.mlbsd-seo-birthday-table td:nth-child(4){width:15%}
  .mlbsd-seo-birthday-table th:nth-child(5),.mlbsd-seo-birthday-table td:nth-child(5){width:17%}
}
@media(max-width:560px){
  .mlbsd-seo-ranking-sibling-nav{gap:5px;margin:0 10px 8px}
  .mlbsd-seo-ranking-sibling-nav a,.mlbsd-seo-ranking-more a{min-height:30px;padding:6px 8px;font-size:10.5px}
  .mlbsd-seo-birthday-table tr{grid-template-columns:minmax(0,1fr) 96px;grid-template-areas:"player metric";column-gap:8px}
  .mlbsd-seo-birthday-table td:nth-child(1){grid-area:player}
  .mlbsd-seo-birthday-table td:nth-child(2){display:block!important;grid-area:metric;text-align:left;padding-left:3px!important}
  .mlbsd-seo-birthday-table td:nth-child(3),.mlbsd-seo-birthday-table td:nth-child(4),.mlbsd-seo-birthday-table td:nth-child(5){display:none!important}
  .mlbsd-seo-birthday-primary-metric strong{display:block;font-size:12.5px;line-height:1.35;white-space:nowrap}
}


/* v0.5.87 SEO Expansion: grouped desktop navigation, overlay mobile drawer, refined player-link affordance. */
.mlbsd-seo-mobile-menu-toggle{display:none}
.mlbsd-seo-mobile-menu-backdrop,.mlbsd-seo-mobile-drawer-head{display:none}
.mlbsd-seo-mobile-menu-panel{display:contents}
.mlbsd-seo-grouped-nav{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:clamp(28px,4vw,58px);min-height:42px;border-top:1px solid #e2e8ee;border-bottom:1px solid #e2e8ee}
.mlbsd-seo-nav-group{position:relative}
.mlbsd-seo-nav-trigger{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0;border:0;background:transparent;color:#18354f;font-size:14px;font-weight:800;line-height:1;cursor:pointer}
.mlbsd-seo-nav-trigger-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.58;transition:transform .16s ease,opacity .16s ease}
.mlbsd-seo-nav-group:hover .mlbsd-seo-nav-trigger-chevron,.mlbsd-seo-nav-group:focus-within .mlbsd-seo-nav-trigger-chevron,.mlbsd-seo-nav-group.is-open .mlbsd-seo-nav-trigger-chevron{transform:rotate(225deg) translate(-1px,-1px);opacity:.95}
.mlbsd-seo-nav-mobile-title{display:none}
.mlbsd-seo-nav-dropdown{position:absolute;z-index:90;top:calc(100% + 6px);left:50%;display:grid;grid-template-columns:1fr;gap:2px;min-width:210px;padding:9px;border:1px solid #d8e0e7;border-radius:10px;background:#fff;box-shadow:0 12px 30px rgba(20,35,50,.13);opacity:0;visibility:hidden;transform:translate(-50%,-5px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease}
.mlbsd-seo-nav-group:hover .mlbsd-seo-nav-dropdown,.mlbsd-seo-nav-group:focus-within .mlbsd-seo-nav-dropdown,.mlbsd-seo-nav-group.is-open .mlbsd-seo-nav-dropdown{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mlbsd-seo-nav-dropdown a{display:flex;align-items:center;min-height:36px;padding:7px 9px;border-radius:6px;color:#18354f;text-decoration:none;font-size:12.5px;font-weight:650;line-height:1.35;white-space:nowrap}
.mlbsd-seo-nav-dropdown a:hover,.mlbsd-seo-nav-dropdown a:focus-visible{background:#f2f6f9;color:#0f4c81;outline:none}
.mlbsd-seo-expansion-page .mlbsd-player-link{display:inline-flex;align-items:center;gap:9px;max-width:100%;color:#0f4c81;text-decoration:none}
.mlbsd-seo-expansion-page .mlbsd-player-link::after{content:"";display:inline-block;flex:0 0 auto;width:6px;height:6px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg);opacity:.5;transition:transform .16s ease,opacity .16s ease}
.mlbsd-seo-expansion-page .mlbsd-player-link:hover,.mlbsd-seo-expansion-page .mlbsd-player-link:focus-visible{text-decoration:underline;text-underline-offset:3px}
.mlbsd-seo-expansion-page .mlbsd-player-link:hover::after,.mlbsd-seo-expansion-page .mlbsd-player-link:focus-visible::after{transform:translateX(2px) rotate(45deg);opacity:.9}
.mlbsd-seo-birthday-table .mlbsd-player-link,.mlbsd-seo-birthday-player-name{font-weight:400!important}
body.mlbsd-seo-menu-open{overflow:hidden}
@media(max-width:820px) and (min-width:561px){
  .mlbsd-seo-grouped-nav{gap:18px}
  .mlbsd-seo-nav-trigger{font-size:13px}
}
@media(max-width:560px){
  .mlbsd-seo-mobile-chunked:not(.is-expanded) .mlbsd-seo-rank-table tbody tr:nth-child(n+51){display:none}
  .mlbsd-seo-public-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:14px}
  .mlbsd-seo-public-header.is-mobile-menu-ready .mlbsd-seo-mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 12px;border:1px solid #cbd5df;border-radius:9px;background:#fff;color:#18354f;font-size:13px;font-weight:800;cursor:pointer}
  .mlbsd-seo-public-header.is-mobile-menu-ready .mlbsd-seo-mobile-menu-backdrop{display:block;position:fixed;z-index:118;inset:0;background:rgba(10,22,32,.46);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}
  .mlbsd-seo-public-header.is-mobile-menu-ready .mlbsd-seo-mobile-menu-panel{display:block;position:fixed;z-index:120;top:0;right:0;width:min(91vw,400px);height:100vh;height:100dvh;box-sizing:border-box;padding:14px 14px 20px;background:#fff;box-shadow:-18px 0 44px rgba(10,24,38,.18);overflow-y:auto;overscroll-behavior:contain;visibility:hidden;transform:translateX(104%);transition:transform .2s ease,visibility .2s ease}
  .mlbsd-seo-public-header.is-mobile-menu-ready.is-menu-open .mlbsd-seo-mobile-menu-backdrop{opacity:1;visibility:visible;pointer-events:auto}
  .mlbsd-seo-public-header.is-mobile-menu-ready.is-menu-open .mlbsd-seo-mobile-menu-panel{visibility:visible;transform:translateX(0)}
  .mlbsd-seo-mobile-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;padding:0 0 10px;border-bottom:1px solid #e5ebf0;color:#18354f}
  .mlbsd-seo-mobile-drawer-head>strong{font-size:15px;font-weight:900}
  .mlbsd-seo-mobile-menu-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #d2dbe3;border-radius:8px;background:#fff;color:#18354f;font-size:22px;line-height:1;cursor:pointer}
  .mlbsd-seo-mobile-menu-panel .mlbsd-search{width:100%;max-width:none;margin:0 0 13px;justify-self:stretch}
  .mlbsd-seo-mobile-menu-panel .mlbsd-search input{min-height:42px;font-size:13px;padding:9px 10px}
  .mlbsd-seo-mobile-menu-panel .mlbsd-search button{min-height:42px;padding:9px 13px}
  .mlbsd-seo-grouped-nav{display:grid;grid-template-columns:1fr;gap:13px;min-height:0;border:0}
  .mlbsd-seo-nav-group{position:static;padding-top:1px}
  .mlbsd-seo-nav-trigger{display:none}
  .mlbsd-seo-nav-mobile-title{display:block;margin:0 0 6px!important;color:#5c6f7f;font-size:10.5px!important;font-weight:900!important;line-height:1.25;letter-spacing:.08em;text-transform:none}
  .mlbsd-seo-nav-dropdown{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;opacity:1;visibility:visible;transform:none}
  .mlbsd-seo-nav-dropdown a{justify-content:flex-start;min-height:35px;padding:7px 8px;border:1px solid #e1e7ec;border-radius:7px;background:#f8fafc;color:#18354f;font-size:11.5px;font-weight:700;line-height:1.3;white-space:normal}
  .mlbsd-seo-nav-dropdown a:hover,.mlbsd-seo-nav-dropdown a:focus-visible{background:#eef4f8}
  .mlbsd-seo-expansion-page .mlbsd-player-link{gap:8px}
  .mlbsd-seo-expansion-page .mlbsd-player-link::after{width:5.5px;height:5.5px}
}


/* v0.5.88 SEO Expansion: compact player-data nav and long-name-safe link rail. */
@media(max-width:560px){
  .mlbsd-seo-expansion-page .mlbsd-seo-player-copy .mlbsd-player-link{position:relative;display:block;width:100%;box-sizing:border-box;padding-right:18px;gap:0;line-break:strict;word-break:normal;overflow-wrap:normal}
  .mlbsd-seo-expansion-page .mlbsd-seo-player-copy .mlbsd-player-link::after{position:absolute;right:3px;top:50%;margin-top:-3px;transform:translateY(-50%) rotate(45deg)}
  .mlbsd-seo-expansion-page .mlbsd-seo-player-copy .mlbsd-player-link:hover::after,.mlbsd-seo-expansion-page .mlbsd-seo-player-copy .mlbsd-player-link:focus-visible::after{transform:translate(2px,-50%) rotate(45deg)}
}

/* v0.5.91 SEO Expansion: birthday calendar + arrowless player-link affordance. */
.mlbsd-seo-expansion-page .mlbsd-player-link{
  display:inline;
  max-width:100%;
  padding:0;
  color:#0f4c81;
  text-decoration:none;
  box-shadow:inset 0 -1px 0 rgba(15,76,129,.22);
  line-break:strict;
  word-break:normal;
  overflow-wrap:normal;
  transition:color .15s ease,box-shadow .15s ease;
}
.mlbsd-seo-expansion-page .mlbsd-player-link::after{display:none!important;content:none!important}
.mlbsd-seo-expansion-page .mlbsd-player-link:hover,.mlbsd-seo-expansion-page .mlbsd-player-link:focus-visible{
  color:#063e70;
  text-decoration:none;
  box-shadow:inset 0 -2px 0 rgba(15,76,129,.55);
  outline:none;
}
.mlbsd-seo-birthday-utility-nav{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 10px}
.mlbsd-seo-birthday-utility-nav a{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border:1px solid #d9e0e7;border-radius:6px;background:#fff;color:#0f4c81;text-decoration:none;font-size:12px;font-weight:650;line-height:1.35}
.mlbsd-seo-birthday-calendar-card{padding:18px}
.mlbsd-seo-birthday-month-jump{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:5px;margin:0 0 14px}
.mlbsd-seo-birthday-month-jump a{display:flex;align-items:center;justify-content:center;min-height:34px;border:1px solid #dbe3ea;border-radius:6px;background:#f8fafc;color:#18354f;text-decoration:none;font-size:11px;font-weight:750}
.mlbsd-seo-birthday-calendar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mlbsd-seo-birthday-month-card{scroll-margin-top:14px;padding:13px;border:1px solid #e0e6eb;border-radius:9px;background:#fff}
.mlbsd-seo-birthday-month-card h2{margin:0 0 9px;font-size:16px;line-height:1.3;color:#18354f}
.mlbsd-seo-birthday-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.mlbsd-seo-birthday-day{display:flex;min-width:0;min-height:48px;box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;padding:5px 2px;border:1px solid #e4e9ee;border-radius:6px;background:#fbfcfd;color:#18354f;text-decoration:none;line-height:1.2}
.mlbsd-seo-birthday-day:hover,.mlbsd-seo-birthday-day:focus-visible{border-color:#a9bfd2;background:#f2f7fb;color:#0f4c81;outline:none}
.mlbsd-seo-birthday-day.is-today{border-color:#0f4c81;background:#eef6fc;box-shadow:inset 0 0 0 1px rgba(15,76,129,.08)}
.mlbsd-seo-birthday-day.is-empty{color:#6e7d89;background:#fff}
.mlbsd-seo-birthday-day-number{font-size:11px;font-weight:750;white-space:nowrap}
.mlbsd-seo-birthday-day-count{margin-top:3px;color:#617484;font-size:9.5px;white-space:nowrap}
@media(max-width:900px){
  .mlbsd-seo-birthday-month-jump{grid-template-columns:repeat(6,minmax(0,1fr))}
  .mlbsd-seo-birthday-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .mlbsd-seo-expansion-page .mlbsd-seo-player-copy .mlbsd-player-link{display:inline;width:auto;padding-right:0}
  .mlbsd-seo-birthday-utility-nav{gap:5px;margin:0 10px 8px}
  .mlbsd-seo-birthday-utility-nav a{min-height:30px;padding:6px 8px;font-size:10.5px}
  .mlbsd-seo-birthday-calendar-card{padding:12px 10px}
  .mlbsd-seo-birthday-month-jump{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-bottom:10px}
  .mlbsd-seo-birthday-month-jump a{min-height:31px;font-size:10.5px}
  .mlbsd-seo-birthday-calendar-grid{grid-template-columns:1fr;gap:8px}
  .mlbsd-seo-birthday-month-card{padding:10px 8px}
  .mlbsd-seo-birthday-month-card h2{font-size:14px;margin-bottom:7px}
  .mlbsd-seo-birthday-day-grid{gap:3px}
  .mlbsd-seo-birthday-day{min-height:43px;padding:4px 1px}
  .mlbsd-seo-birthday-day-number{font-size:10px}
  .mlbsd-seo-birthday-day-count{font-size:9px}
}

/* v0.5.92 Content-first navigation + unified inline text-link affordance. */
.mlbsd-player-link,
.mlbsd-inline-link,
.mlbsd-text-link,
.mlbsd-section-heading>a,
.mlbsd-pagination a,
.mlbsd-team-total-back a,
.mlbsd-source-cell a,
.mlbsd-salary-mobile-sources a,
.mlbsd-seo-ranking-more a{
  color:#0f4c81;
  text-decoration:none;
  box-shadow:inset 0 -1px 0 rgba(15,76,129,.22);
  transition:color .15s ease,box-shadow .15s ease;
}
.mlbsd-player-link:hover,.mlbsd-player-link:focus-visible,
.mlbsd-inline-link:hover,.mlbsd-inline-link:focus-visible,
.mlbsd-text-link:hover,.mlbsd-text-link:focus-visible,
.mlbsd-section-heading>a:hover,.mlbsd-section-heading>a:focus-visible,
.mlbsd-pagination a:hover,.mlbsd-pagination a:focus-visible,
.mlbsd-team-total-back a:hover,.mlbsd-team-total-back a:focus-visible,
.mlbsd-source-cell a:hover,.mlbsd-source-cell a:focus-visible,
.mlbsd-salary-mobile-sources a:hover,.mlbsd-salary-mobile-sources a:focus-visible,
.mlbsd-seo-ranking-more a:hover,.mlbsd-seo-ranking-more a:focus-visible{
  color:#063e70;
  text-decoration:none;
  box-shadow:inset 0 -2px 0 rgba(15,76,129,.55);
  outline:none;
}
.mlbsd-seo-ranking-more a{
  display:inline;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  font-size:12px;
  font-weight:650;
  line-height:1.55;
}
.mlbsd-content-after-links{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 18px;
  margin:-4px 4px 18px;
  font-size:12.5px;
  line-height:1.55;
}
.mlbsd-content-after-links-between{justify-content:space-between}
@media(max-width:560px){
  .mlbsd-content-after-links{gap:7px 14px;margin:-4px 10px 15px;font-size:11.5px}
  .mlbsd-content-after-links-between{justify-content:space-between}
}

/* v0.5.93 Post-content action prominence + text-only underline fix. */
.mlbsd-player-link,
.mlbsd-inline-link,
.mlbsd-text-link,
.mlbsd-section-heading>a,
.mlbsd-pagination a,
.mlbsd-team-total-back a,
.mlbsd-source-cell a,
.mlbsd-salary-mobile-sources a,
.mlbsd-seo-ranking-more a{
  box-shadow:none;
  text-decoration-line:underline;
  text-decoration-color:rgba(15,76,129,.24);
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  text-decoration-skip-ink:auto;
}
.mlbsd-player-link:hover,.mlbsd-player-link:focus-visible,
.mlbsd-inline-link:hover,.mlbsd-inline-link:focus-visible,
.mlbsd-text-link:hover,.mlbsd-text-link:focus-visible,
.mlbsd-section-heading>a:hover,.mlbsd-section-heading>a:focus-visible,
.mlbsd-pagination a:hover,.mlbsd-pagination a:focus-visible,
.mlbsd-team-total-back a:hover,.mlbsd-team-total-back a:focus-visible,
.mlbsd-source-cell a:hover,.mlbsd-source-cell a:focus-visible,
.mlbsd-salary-mobile-sources a:hover,.mlbsd-salary-mobile-sources a:focus-visible,
.mlbsd-seo-ranking-more a:hover,.mlbsd-seo-ranking-more a:focus-visible{
  box-shadow:none;
  text-decoration-line:underline;
  text-decoration-color:rgba(15,76,129,.7);
  text-decoration-thickness:2px;
  text-underline-offset:3px;
}
/* Post-content navigation is an action control, not an inline text link. */
.mlbsd-content-after-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  box-sizing:border-box;
  padding:8px 14px;
  border:1px solid #cad7e2;
  border-radius:8px;
  background:#fff;
  color:#0f4c81;
  font-weight:750;
  line-height:1.25;
  text-decoration:none;
  box-shadow:none;
  transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease;
}
.mlbsd-content-after-links a:hover,.mlbsd-content-after-links a:focus-visible{
  border-color:#8eabc1;
  background:#f4f8fb;
  color:#063e70;
  text-decoration:none;
  box-shadow:0 1px 2px rgba(22,55,82,.08);
  outline:none;
}
/* Birthday date navigation: keep both controls in one central visual cluster on desktop. */
.mlbsd-content-after-links-between{
  justify-content:center;
  gap:12px;
}
.mlbsd-content-after-links-between a{min-width:112px}
/* Standalone sibling/related action below a ranking should be visibly actionable. */
.mlbsd-content-after-links:not(.mlbsd-content-after-links-between){
  justify-content:flex-start;
}
@media(max-width:560px){
  .mlbsd-content-after-links a{min-height:40px;padding:8px 12px;font-size:11.5px}
  /* Mobile keeps the familiar left/right previous-next placement. */
  .mlbsd-content-after-links-between{justify-content:space-between;gap:10px}
  .mlbsd-content-after-links-between a{min-width:0}
}


/* v0.5.94 Related-navigation consolidation / team jersey ranking / balanced table gutters. */
/* Standard public tables use symmetric horizontal gutters. Dense stats tables keep their own compact rules. */
@media(min-width:561px){
  .mlbsd-public-page .mlbsd-table th,.mlbsd-public-page .mlbsd-table td,
  .mlbsd-player-page .mlbsd-table th,.mlbsd-player-page .mlbsd-table td{
    padding-left:14px;
    padding-right:14px;
  }
  .mlbsd-public-page .mlbsd-table th:first-child,.mlbsd-public-page .mlbsd-table td:first-child,
  .mlbsd-player-page .mlbsd-table th:first-child,.mlbsd-player-page .mlbsd-table td:first-child{
    padding-left:18px;
  }
  .mlbsd-public-page .mlbsd-table th:last-child,.mlbsd-public-page .mlbsd-table td:last-child,
  .mlbsd-player-page .mlbsd-table th:last-child,.mlbsd-player-page .mlbsd-table td:last-child{
    padding-right:18px;
  }
  /* Team salary ranking: rank / player / jersey / position / age / salary. */
  .mlbsd-team-ranking-table{table-layout:fixed}
  .mlbsd-team-ranking-table th:nth-child(1),.mlbsd-team-ranking-table td:nth-child(1){width:8%}
  .mlbsd-team-ranking-table th:nth-child(2),.mlbsd-team-ranking-table td:nth-child(2){width:34%}
  .mlbsd-team-ranking-table th:nth-child(3),.mlbsd-team-ranking-table td:nth-child(3){width:10%}
  .mlbsd-team-ranking-table th:nth-child(4),.mlbsd-team-ranking-table td:nth-child(4){width:18%}
  .mlbsd-team-ranking-table th:nth-child(5),.mlbsd-team-ranking-table td:nth-child(5){width:10%}
  .mlbsd-team-ranking-table th:nth-child(6),.mlbsd-team-ranking-table td:nth-child(6){width:20%}
}
.mlbsd-ranking-player-line{min-width:0}
.mlbsd-ranking-jersey-badge{display:none}
/* Birthday date nav: three actions form one central cluster on desktop. */
.mlbsd-birthday-date-nav{justify-content:center;gap:10px}
.mlbsd-birthday-date-nav a{min-width:112px}
.mlbsd-birthday-date-nav .mlbsd-birthday-calendar-action{min-width:154px}
@media(max-width:560px){
  /* Previous stays left, calendar centered, next stays right. */
  .mlbsd-birthday-date-nav{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,1fr);gap:7px;width:100%;margin-left:0;margin-right:0}
  .mlbsd-birthday-date-nav a{min-width:0;width:100%;padding-left:7px;padding-right:7px;white-space:nowrap}
  .mlbsd-birthday-date-nav .mlbsd-birthday-calendar-action{min-width:0}
  .mlbsd-team-ranking-table .mlbsd-ranking-player-line{display:flex;align-items:flex-start;gap:6px;min-width:0}
  .mlbsd-team-ranking-table .mlbsd-ranking-jersey-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:30px;height:20px;margin-top:1px;padding:0 5px;border:1px solid #cbd8e2;border-radius:5px;background:#f6f9fb;color:#24435d;font-size:9.5px;font-weight:800;line-height:1;white-space:nowrap}
  .mlbsd-team-ranking-table .mlbsd-ranking-player-line .mlbsd-player-link{min-width:0;flex:1 1 auto}
}


/* v0.5.95 hierarchy polish / directional birthday nav / ranking-table alignment. */
/* Listing/ranking hero titles: keep hierarchy strong without letting long team titles dominate desktop. */
@media(min-width:561px){
  .mlbsd-listing-hero-title{font-size:clamp(32px,3.4vw,38px)!important;line-height:1.16;letter-spacing:-.025em}
  /* Common ranking/list tables: names left, compact identifiers centered, money right. */
  .mlbsd-ranking-table th:first-child,.mlbsd-ranking-table td:first-child,
  .mlbsd-seo-rank-table th:first-child,.mlbsd-seo-rank-table td:first-child,
  .mlbsd-team-total-table th:first-child,.mlbsd-team-total-table td:first-child{text-align:center}
  .mlbsd-ranking-table th:last-child,.mlbsd-ranking-table td:last-child,
  .mlbsd-seo-rank-table th:last-child,.mlbsd-seo-rank-table td:last-child,
  .mlbsd-team-total-table th:last-child,.mlbsd-team-total-table td:last-child{text-align:right}
  /* Team salary ranking: rank / player / jersey / position / age / salary. */
  .mlbsd-team-ranking-table th:nth-child(1),.mlbsd-team-ranking-table td:nth-child(1){width:8%;text-align:center}
  .mlbsd-team-ranking-table th:nth-child(2),.mlbsd-team-ranking-table td:nth-child(2){width:30%;text-align:left}
  .mlbsd-team-ranking-table th:nth-child(3),.mlbsd-team-ranking-table td:nth-child(3){width:9%;text-align:center}
  .mlbsd-team-ranking-table th:nth-child(4),.mlbsd-team-ranking-table td:nth-child(4){width:19%;text-align:center}
  .mlbsd-team-ranking-table th:nth-child(5),.mlbsd-team-ranking-table td:nth-child(5){width:10%;text-align:center}
  .mlbsd-team-ranking-table th:nth-child(6),.mlbsd-team-ranking-table td:nth-child(6){width:24%;text-align:right}
}
/* Mobile team ranking: jersey is secondary metadata, not a primary badge competing with the Japanese name. */
.mlbsd-ranking-jersey-subtext{color:inherit;font:inherit;white-space:nowrap}
@media(max-width:560px){
  .mlbsd-team-ranking-table .mlbsd-ranking-player-line{display:block;min-width:0}
  .mlbsd-team-ranking-table .mlbsd-ranking-player-line .mlbsd-player-link{display:block;min-width:0}
  .mlbsd-team-ranking-table .mlbsd-ranking-jersey-badge{display:none!important}
}


/* v0.5.96 mobile metadata / birthday-nav balance / salary-column spacing. */
/* Salary values should sit inside their column with deliberate gutters rather than hug the far-right edge. */
@media(min-width:561px){
  .mlbsd-ranking-table th:last-child,.mlbsd-ranking-table td:last-child,
  .mlbsd-seo-rank-table th:last-child,.mlbsd-seo-rank-table td:last-child,
  .mlbsd-team-total-table th:last-child,.mlbsd-team-total-table td:last-child{
    text-align:left;
    padding-left:24px;
    padding-right:22px;
  }
  .mlbsd-team-ranking-table th:nth-child(6),.mlbsd-team-ranking-table td:nth-child(6){text-align:left;padding-left:26px;padding-right:22px}
  /* Team ranking already has a dedicated jersey column on desktop: never repeat it beside the English name. */
  .mlbsd-team-ranking-table .mlbsd-ranking-jersey-subtext{display:none}
}
/* Mobile-only third line for salary-attribution context when it differs from the current club. */
.mlbsd-mobile-attribution-meta{display:none;color:#7a8793;font-size:11px;line-height:1.4;margin-top:3px;white-space:normal}
@media(max-width:560px){
  /* Keep the center calendar action prominent; previous/next are compact directional controls. */
  .mlbsd-birthday-date-nav{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:stretch}
  .mlbsd-birthday-date-nav a:not(.mlbsd-birthday-calendar-action){width:auto;min-width:82px;padding-left:10px;padding-right:10px}
  .mlbsd-birthday-date-nav .mlbsd-birthday-calendar-action{width:100%;min-width:0;padding-left:12px;padding-right:12px}
  /* Jersey beside the English name is an SP-only secondary identifier. */
  .mlbsd-team-ranking-table .mlbsd-ranking-jersey-subtext{display:inline}
  .mlbsd-mobile-attribution-meta{display:block}
}


/* v0.5.97 semantic auto-column layout for standard ranking/list tables.
 * Keep tables full-width, but let browser content sizing distribute flexible columns.
 * Only truly short identifier columns are shrink-to-content. Dense stats/custom mobile tables are excluded. */
@media(min-width:821px){
  .mlbsd-auto-column-table{table-layout:auto!important;width:100%}
  .mlbsd-auto-column-table th,.mlbsd-auto-column-table td{width:auto!important}
  .mlbsd-auto-column-table .mlbsd-col-compact{width:1%!important;white-space:nowrap;text-align:center}
  .mlbsd-auto-column-table .mlbsd-col-primary{text-align:left}
  .mlbsd-auto-column-table .mlbsd-col-fluid{width:auto!important}
  .mlbsd-auto-column-table .mlbsd-col-money{white-space:nowrap;text-align:left;padding-left:20px!important;padding-right:20px!important}
  /* Cancel obsolete percentage/fixed-layout contracts on the team and team-total ranking tables. */
  .mlbsd-team-ranking-table,.mlbsd-team-total-table{table-layout:auto!important}
}


/* v0.5.98 balanced standard table system.
 * Keep semantic auto sizing, but cap the visual measure of ordinary ranking/list cards on wide screens.
 * Standard data cells align to a common left edge; only the rank column remains centered.
 * Dense stats/high-column custom tables are excluded because they never receive mlbsd-standard-table-card. */
@media(min-width:821px){
  .mlbsd-standard-table-card{
    width:min(100%,1440px);
    margin-left:auto;
    margin-right:auto;
    box-sizing:border-box;
  }
  .mlbsd-standard-table-card .mlbsd-auto-column-table{
    width:100%!important;
    table-layout:auto!important;
  }
  .mlbsd-standard-table-card .mlbsd-auto-column-table th,
  .mlbsd-standard-table-card .mlbsd-auto-column-table td{
    width:auto!important;
    text-align:left!important;
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .mlbsd-standard-table-card .mlbsd-auto-column-table .mlbsd-col-compact{
    width:1%!important;
    white-space:nowrap;
    text-align:left!important;
  }
  .mlbsd-standard-table-card .mlbsd-auto-column-table .mlbsd-col-primary,
  .mlbsd-standard-table-card .mlbsd-auto-column-table .mlbsd-col-fluid,
  .mlbsd-standard-table-card .mlbsd-auto-column-table .mlbsd-col-money{
    width:auto!important;
    text-align:left!important;
  }
  .mlbsd-standard-table-card .mlbsd-auto-column-table .mlbsd-col-money,
  .mlbsd-standard-table-card .mlbsd-auto-column-table .mlbsd-money-cell{
    white-space:nowrap;
    font-variant-numeric:tabular-nums;
  }
  /* Rank is the one compact field that reads best as a centered ordinal. */
  .mlbsd-standard-table-card .mlbsd-ranking-table th:first-child,
  .mlbsd-standard-table-card .mlbsd-ranking-table td:first-child,
  .mlbsd-standard-table-card .mlbsd-seo-rank-table th:first-child,
  .mlbsd-standard-table-card .mlbsd-seo-rank-table td:first-child,
  .mlbsd-standard-table-card .mlbsd-team-total-table th:first-child,
  .mlbsd-standard-table-card .mlbsd-team-total-table td:first-child{
    text-align:center!important;
  }
}


/* v0.6.0 Home hierarchy + desktop grouped-nav balance. */
.mlbsd-home-discovery-section .mlbsd-text-link{font-size:14px;line-height:1.45;font-weight:700}
.mlbsd-home-discovery-section .mlbsd-text-link-secondary{color:#52677a}
@media(max-width:560px){
  .mlbsd-home-discovery-section .mlbsd-text-link{font-size:13px;line-height:1.45}
}
@media(min-width:561px){
  .mlbsd-seo-nav-group{flex:0 0 auto}
}


/* v0.6.1 Desktop one-line public header + mobile Home card typography. */
@media(min-width:1080px){
  .mlbsd-public-header.mlbsd-seo-public-header{
    grid-template-columns:max-content minmax(360px,1fr) minmax(300px,360px);
    column-gap:22px;
    row-gap:0;
    align-items:center;
    padding-bottom:10px;
    border-bottom:1px solid #e2e8ee;
  }
  .mlbsd-public-header.mlbsd-seo-public-header .mlbsd-brand{
    grid-column:1;
    grid-row:1;
    white-space:nowrap;
  }
  .mlbsd-public-header.mlbsd-seo-public-header .mlbsd-seo-grouped-nav{
    grid-column:2;
    grid-row:1;
    justify-self:center;
    min-width:0;
    min-height:44px;
    gap:clamp(18px,2vw,34px);
    border-top:0;
    border-bottom:0;
  }
  .mlbsd-public-header.mlbsd-seo-public-header .mlbsd-search{
    grid-column:3;
    grid-row:1;
    width:100%;
    max-width:360px;
    justify-self:end;
  }
}
@media(max-width:560px){
  .mlbsd-home-page .mlbsd-position-card strong{
    font-size:15px;
    line-height:1.3;
  }
  .mlbsd-home-page .mlbsd-data-points strong{
    font-size:15px;
    line-height:1.4;
  }
}

/* v0.6.2: pin desktop brand/nav/search to the same grid row; prevents DOM auto-placement from pushing nav to row 2. */

/* v0.6.61 Advertisement Management v1 (PROJECT_RULES 160; same look as NPB年俸DB v0.10.396).
   The server picks the device (wp_is_mobile) and writes it as mlbsd-ad-slot--desktop / --mobile, so no width media query decides it.
   Floating stays below the mobile menu (backdrop z-index 118, panel 120). */
.mlbsd-ad-slot{box-sizing:border-box;position:relative}
.mlbsd-ad-slot .mlbsd-ad-label{display:block;margin:0 0 5px;color:#8495a4;font-size:10px;font-weight:700;line-height:1.2;letter-spacing:.04em;text-align:center}
.mlbsd-ad-slot .mlbsd-ad-code{display:flex;align-items:center;justify-content:center;max-width:100%;min-width:0}
.mlbsd-ad-slot .mlbsd-ad-code>iframe,.mlbsd-ad-slot .mlbsd-ad-code>img{max-width:100%}
.mlbsd-ad-slot--primary-inline{width:100%;min-height:90px;margin:18px auto 22px;padding:7px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:visible}
.mlbsd-ad-slot--primary-inline.mlbsd-ad-slot--mobile{min-height:250px;margin:14px auto 18px;padding:5px 0}
.mlbsd-ad-slot--floating-managed{position:fixed;z-index:110;right:18px;bottom:18px;max-width:min(360px,calc(100vw - 36px));min-width:0;padding:5px;background:rgba(255,255,255,.96);border:1px solid rgba(13,59,91,.12);border-radius:8px;box-shadow:0 8px 28px rgba(13,59,91,.16)}
.mlbsd-ad-slot--floating-managed .mlbsd-ad-label{margin-bottom:3px}
.mlbsd-ad-slot--floating-managed.mlbsd-ad-slot--mobile{left:50%;right:auto;bottom:12px;transform:translateX(-50%);max-width:calc(100vw - 24px);padding:4px}
.mlbsd-ad-slot--floating-managed.mlbsd-ad-slot--mobile .mlbsd-ad-code{max-width:100%}
.mlbsd-ad-slot--floating-provider{width:0;height:0;margin:0;padding:0;overflow:visible}
.mlbsd-ad-slot--floating-provider>.mlbsd-ad-label{display:none}
.mlbsd-ad-close{position:absolute;z-index:2;top:-11px;right:-11px;width:26px;height:26px;padding:0;border:1px solid #cbd5dd;border-radius:50%;background:#fff;color:#405364;font:700 18px/22px Arial,sans-serif;text-align:center;cursor:pointer;box-shadow:0 2px 8px rgba(13,59,91,.14)}
.mlbsd-ad-close:hover,.mlbsd-ad-close:focus-visible{color:#0d3b5b;border-color:#8ca5b8;outline:none}
.mlbsd-ad-slot[hidden]{display:none!important}
