:root{--bg:#f7f8fb;--paper:#fff;--paper2:#fbfcff;--ink:#172033;--muted:#667085;--line:#e4e7ec;--gold:#b88a2c;--gold2:#f6df9c;--shadow:0 18px 54px rgba(23,32,51,.10);--red:#e52525;--orange:#f47b20;--yellow:#e9b92d;--green:#20a957;--blue:#2777d9;--purple:#7d50cf;--gray:#7b8491}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(135deg,#fff 0%,#f6f7fb 45%,#edf1f7 100%);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif}button{font:inherit}.shell{width:min(1540px,calc(100% - 32px));margin:auto;padding:24px 0 56px}.hero{min-height:370px;display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:24px;padding:34px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(115deg,#fff,#f6f7fb 68%),repeating-linear-gradient(90deg,transparent 0 44px,rgba(184,138,44,.05) 44px 45px);box-shadow:var(--shadow);overflow:hidden}.kicker,.section-title p,.detail-kicker{margin:0 0 10px;color:var(--gold);font-size:.75rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.hero h1{margin:0;font-size:clamp(3rem,7vw,6.7rem);line-height:.94;letter-spacing:0}.hero-copy{display:flex;flex-direction:column;justify-content:center}.hero-copy p:last-child{width:min(820px,100%);margin:22px 0 0;color:#445066;font-size:clamp(1rem,1.55vw,1.18rem);line-height:1.9}.notice{margin-top:18px;padding:12px 14px;border-left:4px solid var(--gold);background:#fff9e8;color:#6e5a25;font-size:.84rem;line-height:1.7}.hero-card{display:grid;grid-template-rows:auto 1fr auto;gap:22px;padding:24px;border:1px solid #eadcb6;border-radius:8px;background:linear-gradient(180deg,#fffdf7,#fff);align-content:end;box-shadow:0 14px 36px rgba(184,138,44,.14)}.hero-logo{width:140px;height:140px;object-fit:contain;filter:drop-shadow(0 12px 14px rgba(23,32,51,.16))}.hero-card h2{margin:0;font-size:2.25rem;line-height:1.1}.hero-card p{margin:8px 0 0;color:var(--muted);line-height:1.7}.hero-card-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.controls{display:flex;justify-content:space-between;gap:16px;margin:18px 0;flex-wrap:wrap}.segmented{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 24px rgba(23,32,51,.06)}.segmented button{min-height:38px;border:0;border-radius:6px;padding:0 14px;background:transparent;color:var(--muted);cursor:pointer;font-weight:900}.segmented button.active{background:linear-gradient(180deg,#253047,#111827);color:#fff}.layout{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr);gap:18px;align-items:start}.team-list,.detail{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.96);box-shadow:var(--shadow)}.team-list{padding:20px}.section-title h2{margin:0 0 18px;font-size:1.55rem}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.team-card{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;min-height:118px;padding:14px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:8px;background:linear-gradient(160deg,#fff,#f9fafc);color:var(--ink);text-align:left;cursor:pointer;transition:transform .16s,box-shadow .16s,border-color .16s}.team-card:hover,.team-card.selected{transform:translateY(-2px);border-color:#d2b66b;box-shadow:0 16px 36px rgba(23,32,51,.13)}.team-logo{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 7px 10px rgba(23,32,51,.16))}.team-card strong{display:block;font-size:1rem;line-height:1.35}.team-card small,.team-card em{display:block;color:var(--muted);font-size:.78rem;font-style:normal;font-weight:800}.rank{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:7px;color:#111;font-size:1.12rem;font-weight:1000;line-height:1;border:1px solid rgba(255,255,255,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 5px 10px rgba(23,32,51,.14)}.rank-S{background:linear-gradient(145deg,#ff8fc8 0%,#ec3d91 52%,#b81461 100%);color:#fff}.rank-A{background:linear-gradient(145deg,#ff7777 0%,#e52525 54%,#a50f18 100%);color:#fff}.rank-B{background:linear-gradient(145deg,#ffe994 0%,#e9b92d 54%,#b77a00 100%);color:#111}.rank-C{background:linear-gradient(145deg,#6fe28e 0%,#20a957 55%,#087733 100%);color:#fff}.rank-D{background:linear-gradient(145deg,#75b8ff 0%,#2777d9 56%,#114c9b 100%);color:#fff}.rank-E{background:linear-gradient(145deg,#b99aff 0%,#7d50cf 55%,#553292 100%);color:#fff}.rank-F{background:linear-gradient(145deg,#aab2bd 0%,#7b8491 58%,#515963 100%);color:#fff}.meter,.rankbar{height:8px;overflow:hidden;border-radius:999px;background:#e8edf5}.meter span,.rankbar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b88a2c,#f6df9c)}.detail{overflow:hidden}.detail-head{display:grid;grid-template-columns:120px 1fr 118px;gap:20px;align-items:center;padding:24px;border-bottom:1px solid var(--line);background:linear-gradient(110deg,#fffdf6,#fff 62%,#f6f8fb)}.detail-head img{width:112px;height:112px;object-fit:contain}.detail-head h2{margin:0 0 8px;font-size:clamp(1.9rem,4vw,3.25rem);line-height:1.05}.detail-head p{margin:0;color:var(--muted);line-height:1.75}.power-mark{display:grid;place-items:center;min-height:112px;border-radius:8px;background:#111827;color:#fff}.power-mark span{font-size:3.5rem;font-weight:1000;line-height:1}.power-mark small{color:#e9d7a2;font-weight:900}.summary{display:grid;grid-template-columns:.8fr 1.35fr 1fr;border-bottom:1px solid var(--line)}.summary div{padding:16px 20px;border-right:1px solid var(--line)}.summary div:last-child{border-right:0}.summary span{display:block;margin-bottom:6px;color:var(--muted);font-size:.78rem;font-weight:900}.summary strong{font-size:clamp(1.02rem,2vw,1.38rem)}.rank-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;padding:22px}.rank-row{display:grid;grid-template-columns:132px 38px minmax(80px,1fr);gap:10px;align-items:center}.rank-row>span{font-size:.88rem;font-weight:900}.players-title{padding:0 22px}.players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 22px 22px}.player{padding:16px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff,#fbfcff)}.player-top{display:flex;justify-content:space-between;gap:12px}.player h3{margin:0 0 4px;font-size:1.12rem;line-height:1.35}.player p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.6}.stat-note{margin:12px 0!important;color:#334155!important}.mini{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.mini div{display:grid;justify-items:center;gap:4px;padding:7px 3px;border-radius:7px;background:#f3f6fa}.mini small{color:var(--muted);font-size:.62rem;font-weight:900}.mini .rank{width:34px;height:34px;font-size:1.05rem}.empty{margin:0 22px 22px;padding:18px;border:1px dashed #cbb46f;border-radius:8px;background:#fff9e8;color:#6e5a25;line-height:1.8}.source{margin-top:18px;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-size:.82rem;line-height:1.7}.source a{color:#8b6508;font-weight:800}@media(max-width:1120px){.hero,.layout{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}}@media(max-width:760px){.shell{width:min(100% - 20px,1540px);padding-top:10px}.hero{padding:22px}.controls{display:grid}.segmented{overflow-x:auto}.detail-head,.summary,.rank-table,.players{grid-template-columns:1fr}.detail-head{justify-items:start}.summary div{border-right:0;border-bottom:1px solid var(--line)}.summary div:last-child{border-bottom:0}.rank-row{grid-template-columns:118px 38px minmax(70px,1fr)}.mini{grid-template-columns:repeat(2,minmax(0,1fr))}}
  .radar-section{display:grid;grid-template-columns:repeat(3,minmax(270px,1fr));gap:12px;padding:16px 22px;align-items:stretch}.radar-column{display:grid;grid-template-rows:auto 1fr;gap:10px;min-width:0}.radar-panel{height:100%;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fffdf7,#fff);padding:12px}.radar-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.radar-title h3{margin:0;font-size:.94rem}.radar-title span{color:var(--muted);font-size:.66rem;font-weight:400;text-align:right}.radar{display:block;width:100%;max-width:330px;margin:0 auto}.radar-grid-line{fill:none;stroke:#d7dde8;stroke-width:1}.radar-axis{stroke:#d7dde8;stroke-width:1}.radar-area{fill:rgba(184,138,44,.28);stroke:#b88a2c;stroke-width:3}.radar-point{fill:#111827;stroke:#f6df9c;stroke-width:2}.radar-label{fill:#172033;font-size:13px;font-weight:900}.radar-score{font-size:12px;font-weight:1000}.radar-score.rank-text-S{fill:#d91a78}.radar-score.rank-text-A{fill:#d92d20}.radar-score.rank-text-B{fill:#a66d00}.radar-score.rank-text-C{fill:#087733}.radar-score.rank-text-D{fill:#175cd3}.radar-score.rank-text-E{fill:#6938b7}.radar-score.rank-text-F{fill:#59616c}.radar-legend{display:flex;gap:10px;flex-wrap:wrap;margin:2px 0 0;color:var(--muted);font-size:.68rem;font-weight:900}.radar-legend i{display:inline-block;width:16px;height:3px;margin-right:4px;vertical-align:middle;background:#b88a2c}.power-mark.rank-S,.power-mark.rank-A,.power-mark.rank-B,.power-mark.rank-C,.power-mark.rank-D,.power-mark.rank-E,.power-mark.rank-F{width:auto;height:auto;color:#fff;border:0}.power-mark.rank-A,.power-mark.rank-B{color:#111}.radar-panel .rank-table{grid-template-columns:1fr;padding:0}.analysis-panel{display:flex;flex-direction:column}.analysis-panel .rank-table{flex:1;grid-template-rows:repeat(10,minmax(56px,1fr))}.analysis-panel .rank-row{min-height:56px;padding:4px 0;border-bottom:1px solid #edf0f4}.analysis-panel .rank-row:last-child{border-bottom:0}.stat-analysis .rank-row{grid-template-columns:58px minmax(120px,1fr)}.stat-analysis .rank-row>span{padding-top:2px;font-size:.78rem}.strength-analysis .rank-row{grid-template-columns:minmax(62px,78px) 36px minmax(96px,1fr);align-items:center;column-gap:9px}.strength-analysis .rank-row>span{min-width:0;padding-right:4px;white-space:nowrap}.strength-analysis .rank-row>.rank{width:32px;height:32px;font-size:.96rem}.stat-lines{display:grid;gap:3px}.stat-line small{display:flex;justify-content:space-between;gap:6px;color:#667085;font-size:.56rem;font-weight:400;line-height:1}.stat-line small b{color:#344054;font-weight:500}.stat-line small em{font-style:normal}.stat-line .rankbar{height:4px}.players{grid-template-columns:repeat(2,minmax(0,1fr))}.player{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px}.photo-shell{position:relative;align-self:start;width:104px;aspect-ratio:3/4;border-radius:8px;overflow:hidden;background:linear-gradient(160deg,#eef2f7,#fff);border:1px solid var(--line)}.photo-shell img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}.photo-shell span{position:absolute;inset:auto 6px 6px;display:none;padding:4px;border-radius:5px;background:#111827;color:#fff;font-size:.62rem;font-weight:900;text-align:center}.photo-shell.photo-missing span{display:block}.photo-shell.photo-missing{background:repeating-linear-gradient(135deg,#eef2f7 0 8px,#fff 8px 16px)}@media(max-width:1180px){.radar-section{grid-template-columns:1fr}.radar-column{grid-template-rows:auto auto}.radar{max-width:440px}.analysis-panel .rank-table{grid-template-rows:none}.analysis-panel .rank-row{min-height:76px}.strength-analysis .rank-row{grid-template-columns:92px 38px minmax(120px,1fr)}.strength-analysis .rank-row>.rank{width:38px;height:38px;font-size:1.08rem}}@media(max-width:760px){.player{grid-template-columns:82px minmax(0,1fr)}.photo-shell{width:82px}.radar-section{padding:12px}.radar-label{font-size:12px}}
  .detail-head{grid-template-columns:92px minmax(0,1fr) 98px;padding:22px 24px;background:linear-gradient(135deg,#ffffff 0%,#fbfcff 52%,#f4f6fa 100%)}.detail-head img{width:82px;height:82px}.detail-head h2{font-size:clamp(2rem,3.6vw,3rem);letter-spacing:0}.power-mark{min-height:92px;box-shadow:0 14px 30px rgba(23,32,51,.14)}.power-mark span{font-size:3rem}.power-mark small{font-size:.72rem}.team-snapshot{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px 20px;border-bottom:1px solid var(--line);background:#fff}.snapshot-item{padding:12px 14px;border:1px solid #e7eaf0;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc)}.snapshot-item span{display:block;margin-bottom:5px;color:var(--muted);font-size:.72rem;font-weight:900}.snapshot-item strong{display:block;font-size:1.22rem;line-height:1.25}.snapshot-item small{display:block;margin-top:4px;color:#667085;font-size:.68rem;font-weight:900;line-height:1.35}.team-info-band{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:10px;padding:0 20px 14px;border-bottom:1px solid var(--line);background:#fff}.team-info-band .snapshot-item strong{font-size:1rem}.team-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.team-tags b{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#f1f4f8;color:#172033;font-size:.78rem}.team-grade-line{display:flex;align-items:center;gap:10px}.team-grade-line .rank{width:34px;height:34px}.detail-comparison{color:#4c5a70;font-size:.86rem;font-weight:900}@media(max-width:760px){.detail-head{grid-template-columns:72px 1fr;gap:14px}.detail-head img{width:66px;height:66px}.power-mark{grid-column:1/-1;min-height:74px}.team-snapshot,.team-info-band{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.snapshot-item strong{font-size:1.05rem}}
  .detail-head .power-mark{border:1px solid rgba(255,255,255,.65);background:#fff}.detail-head .power-mark.rank-S{background:linear-gradient(145deg,#ff8fc8 0%,#ec3d91 52%,#b81461 100%);color:#fff}.detail-head .power-mark.rank-A{background:linear-gradient(145deg,#ff7777 0%,#e52525 54%,#a50f18 100%);color:#fff}.detail-head .power-mark.rank-B{background:linear-gradient(145deg,#ffe994 0%,#e9b92d 54%,#b77a00 100%);color:#111}.detail-head .power-mark.rank-C{background:linear-gradient(145deg,#6fe28e 0%,#20a957 55%,#087733 100%);color:#fff}.detail-head .power-mark.rank-D{background:linear-gradient(145deg,#75b8ff 0%,#2777d9 56%,#114c9b 100%);color:#fff}.detail-head .power-mark.rank-E{background:linear-gradient(145deg,#b99aff 0%,#7d50cf 55%,#553292 100%);color:#fff}.detail-head .power-mark.rank-F{background:linear-gradient(145deg,#aab2bd 0%,#7b8491 58%,#515963 100%);color:#fff}.detail-head .power-mark small{color:currentColor;opacity:.82}.detail-head .power-mark span{text-shadow:0 1px 0 rgba(255,255,255,.25)}
  .rank-row{grid-template-columns:92px 38px minmax(120px,1fr);align-items:start}.rankbar{position:relative;margin-top:4px}.rankbar i{position:absolute;top:-3px;width:2px;height:14px;border-radius:2px;background:#2777d9;box-shadow:0 0 0 2px rgba(39,119,217,.12)}.basis{display:block;margin-top:5px;color:#667085;font-size:.68rem;font-weight:900;line-height:1.3}.rank-row>span{padding-top:7px}
  .basis-real{margin-top:2px;color:#172033;font-size:.71rem}
  .team-profile{margin:12px 0 0;padding:12px 14px;border-top:1px solid var(--line);border-radius:0 0 8px 8px;background:#fbfcff;color:#334155;font-size:.84rem;font-weight:400;line-height:1.75}
  .radar-panel .rank-row>.rank{display:flex;align-items:center;justify-content:center;padding:0 0 1px;font-size:1.08rem;font-weight:1000;line-height:1;text-align:center}
  .position-coverage{padding:16px 20px;border-bottom:1px solid var(--line);background:#fff}.position-coverage h3{margin:0 0 10px;font-size:1rem}.position-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.pos-card{padding:10px;border:1px solid #e7eaf0;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc)}.pos-card strong{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.86rem}.pos-card strong b{font-size:1rem}.pos-bar{height:9px;margin-top:8px;border-radius:999px;background:#e8edf5;overflow:hidden}.pos-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b88a2c,#f6df9c)}.pos-card small{display:block;margin-top:6px;color:#667085;font-size:.68rem;font-weight:900}.pos-card.thin{border-color:#f1c7c2;background:#fff8f7}.pos-card.thick{border-color:#d8c17f;background:#fffdf4}@media(max-width:760px){.position-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
  .radar-column .position-coverage{height:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff,#fbfcff)}.radar-column .position-coverage h3{margin-bottom:6px;font-size:.9rem}.radar-column .position-grid{grid-template-columns:1fr;grid-template-rows:repeat(5,minmax(0,1fr));height:calc(100% - 24px);gap:5px}.radar-column .pos-card{display:grid;align-content:center;min-height:46px;padding:6px 8px}.radar-column .pos-card strong{font-size:.76rem}.radar-column .pos-card strong b{font-size:.88rem}.radar-column .pos-bar{height:6px;margin-top:4px}.radar-column .pos-card small{margin-top:3px;font-size:.6rem}@media(max-width:1180px){.radar-column .position-grid{height:auto}.radar-column .position-coverage{height:auto}.radar-column .pos-card{min-height:58px}}@media(max-width:760px){.radar-column .position-grid{grid-template-columns:1fr}}
  .coaches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 22px 22px}.coach-card{display:grid;grid-template-columns:78px minmax(0,1fr);grid-template-rows:auto auto auto;gap:10px 11px;padding:13px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff,#fbfcff)}.coach-photo{position:relative;grid-column:1;grid-row:1;width:78px;aspect-ratio:3/4;border-radius:8px;overflow:hidden;background:linear-gradient(160deg,#eef2f7,#fff);border:1px solid var(--line)}.coach-photo img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}.coach-photo span{position:absolute;inset:auto 5px 5px;display:none;padding:4px;border-radius:5px;background:#111827;color:#fff;font-size:.56rem;font-weight:800;text-align:center}.coach-photo.is-missing span{display:block}.coach-summary{display:flex;grid-column:2;grid-row:1;min-width:0;min-height:104px;flex-direction:column}.coach-summary>p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.4}.coach-name-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px;margin:1px 0 3px}.coach-card h3{margin:0;font-size:1rem}.coach-roman,.coach-inline-age{color:#7b8494;font-size:.68rem;font-weight:400}.coach-mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:auto}.coach-mini div{display:grid;justify-items:center;gap:3px;padding:6px 2px;border-radius:6px;background:#f3f6fa}.coach-mini small{color:var(--muted);font-size:.58rem;font-weight:700}.coach-mini .rank{width:26px;height:26px;font-size:.76rem}.coach-note{grid-column:1/-1;grid-row:2;margin:0;color:#4c5a70;font-size:.75rem;font-weight:400;line-height:1.68}.coach-career{grid-column:1/-1;grid-row:3;margin:0;padding-top:9px;border-top:1px solid #e5e9f0;color:#667085;font-size:.68rem;font-weight:400;line-height:1.55}.coach-style-panel{grid-column:1/-1;display:grid;gap:6px;margin-top:2px}.coach-style-line{display:grid;grid-template-columns:42px repeat(3,minmax(0,1fr));align-items:center;gap:4px}.coach-style-line small{color:#7b8494;font-size:.58rem;font-weight:400}.coach-style-chip{display:flex;min-height:25px;align-items:center;justify-content:center;border:1px solid #d8dee8;border-radius:5px;background:#edf0f4;color:#9aa3b1;font-size:.61rem;font-weight:500;white-space:nowrap}.coach-style-chip.active{border-color:transparent;color:#fff;box-shadow:0 3px 8px rgba(17,24,39,.16)}.coach-style-chip.defense.active{background:linear-gradient(135deg,#2f80ed,#1559b7)}.coach-style-chip.balance.active,.coach-style-chip.versatile.active{background:linear-gradient(135deg,#37b66a,#128447)}.coach-style-chip.offense.active,.coach-style-chip.fast.active{background:linear-gradient(135deg,#ff6a58,#d93427)}.coach-style-chip.set.active{background:linear-gradient(135deg,#8b67d9,#5b3ca8)}
  .player-main{min-width:0}.player-abilities{grid-column:1/-1;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:2px}.player-abilities>div{min-height:86px;grid-template-rows:minmax(22px,auto) 1fr;align-content:stretch}.player-abilities>div>small{align-self:start}.player-abilities>div>.rank,.player-abilities>div>.ability-rank-stack{align-self:start}.player-abilities small{max-width:100%;white-space:normal;word-break:keep-all;overflow-wrap:anywhere;text-align:center;line-height:1.15}.moral-note{font-size:.68rem;color:#667085;font-weight:900}
  .player-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 0}.slot-icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:5px;border:1px solid rgba(255,255,255,.75);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 4px 10px rgba(23,32,51,.12);color:#fff;font-size:.78rem;font-weight:1000;line-height:1}.slot-icon.foreign{background:linear-gradient(145deg,#5da7ff,#194185)}.slot-icon.asian{background:linear-gradient(145deg,#6ce69b,#067647)}.slot-icon.naturalized{background:linear-gradient(145deg,#d6a7ff,#6b39b7)}.slot-icon.japan{background:linear-gradient(145deg,#fff,#f4f7fb);color:#d92d20;border-color:#f1b8b2;font-size:.9rem}.salary-badge{display:inline-flex;align-items:center;justify-content:center;height:24px;min-height:24px;padding:0 3px;border:0;border-radius:5px;background:#fffaf0}.money-icons{display:inline-flex;height:100%;align-items:center;gap:1px}.money-icons i{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:4px;background:linear-gradient(145deg,#fff27c,#d6a019);color:#111;font-size:.6rem;font-style:normal;font-weight:1000;line-height:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
  .recent-table{display:grid;grid-template-columns:repeat(8,minmax(70px,1fr));gap:1px;margin-top:12px;overflow-x:auto;border:1px solid #e6ebf2;border-radius:8px;background:#e6ebf2}.recent-table div{min-width:0;padding:8px 5px;background:#fff;text-align:center}.recent-table small{display:flex;align-items:center;justify-content:center;min-height:2.4em;margin-bottom:4px;color:#667085;font-size:.6rem;font-weight:1000;line-height:1.2}.recent-table b{display:block;color:#172033;font-size:.84rem;line-height:1.15;white-space:nowrap}.recent-table.missing{grid-template-columns:1fr}.recent-table.missing div{padding:10px;color:#667085;font-size:.74rem;font-weight:900}
  .criteria-page{display:none;margin-top:18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.criteria-page.active{display:block}.criteria-head{padding:26px 28px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,#fffdf7,#fff 64%,#f4f6fa)}.criteria-head h2{margin:0;font-size:clamp(1.8rem,3vw,3rem)}.criteria-head p{max-width:980px;margin:12px 0 0;color:#4c5a70;line-height:1.85;font-weight:700}.criteria-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px}.criteria-card{padding:18px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff,#fbfcff)}.criteria-card h3{margin:0 0 8px;font-size:1rem}.criteria-card p{margin:0;color:#4c5a70;font-size:.84rem;line-height:1.75;font-weight:700}.criteria-card strong{color:#172033}.salary-scale{display:grid;gap:8px;margin-top:12px}.salary-scale div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:7px;background:#f7f8fb;color:#344054;font-size:.8rem;font-weight:900}@media(max-width:980px){.criteria-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.criteria-grid{grid-template-columns:1fr}.player-meta{gap:5px}.salary-badge,.slot-badge{font-size:.64rem}}
  .criteria-sample{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;margin:20px;padding:16px;border:1px solid #e7eaf0;border-radius:8px;background:linear-gradient(180deg,#fff,#fbfcff)}.criteria-sample .photo-shell{width:104px}.criteria-sample h3{margin:0 0 4px;font-size:1.2rem}.criteria-sample p{margin:0;color:#4c5a70;font-size:.86rem;line-height:1.65}.mark-demo{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.mark-demo span{display:inline-flex;align-items:center;gap:5px;color:#344054;font-size:.78rem;font-weight:900}
  .bp-logo{display:inline-grid;place-items:center;width:max-content;margin-bottom:18px;padding:11px 16px 10px;border-radius:7px;background:linear-gradient(145deg,#121826,#0b1020);border:1px solid #d8b45b;box-shadow:0 14px 32px rgba(17,24,39,.18),inset 0 1px 0 rgba(255,255,255,.14);color:#fff}.bp-logo strong{font-size:1.18rem;line-height:1;letter-spacing:.04em}.bp-logo small{margin-top:4px;color:#f2d889;font-size:.62rem;font-weight:1000;letter-spacing:.08em}.detail-head .team-intro,.hero-card .team-intro{max-width:980px;color:#4c5a70;font-weight:800;line-height:1.9}.detail-head .team-intro{margin-top:4px}
  .detail-head .team-intro{font-size:.88em}
  .detail-kicker,.section-title p,.snapshot-item span,.snapshot-item small,.team-card small,.team-card em,.detail-comparison,.radar-title span,.mini small,.recent-table small,.source,.criteria-head p,.criteria-card p,.criteria-sample p,.coach-card p,.coach-mini small,.pos-card small{font-weight:400}
  .snapshot-item .postseason-result{margin-top:7px;padding-top:6px;border-top:1px solid #e2e7ef;color:var(--team-accent,#344054);font-size:.72rem;font-weight:700;line-height:1.3}
  .detail-head .team-intro,.hero-card .team-intro{font-weight:400}.criteria-subhead{border-top:1px solid var(--line);background:linear-gradient(120deg,#f8fafc,#fff 66%)}.criteria-subhead h2{font-size:clamp(1.55rem,2.5vw,2.35rem)}
  .criteria-team-sample{margin:20px;padding:18px;border:1px solid #e7eaf0;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc)}.criteria-team-head{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:14px}.criteria-team-head img{width:68px;height:68px;object-fit:contain}.criteria-team-head p{margin:0;color:var(--muted);font-size:.76rem;font-weight:400}.criteria-team-head h3{margin:3px 0 0;font-size:1.35rem}.criteria-team-head .rank{width:46px;height:46px;font-size:1.25rem}.criteria-team-sample .radar-section{padding:0}.criteria-team-sample .team-profile{display:none}@media(max-width:640px){.criteria-team-sample{margin:12px;padding:12px}.criteria-team-head{grid-template-columns:54px minmax(0,1fr) auto}.criteria-team-head img{width:50px;height:50px}}
  @media(max-width:1080px){.coaches{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.coaches{grid-template-columns:1fr}.coach-mini{grid-template-columns:repeat(3,minmax(0,1fr))}}
  .team-info-band{grid-template-columns:repeat(4,minmax(0,1fr))}.compare-page{display:none;margin-top:18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.compare-page.active{display:block}.compare-controls{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:end;padding:20px;border-bottom:1px solid var(--line)}.compare-controls label{display:grid;gap:6px;color:var(--muted);font-size:.74rem}.compare-controls select{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font:inherit}.versus{padding-bottom:12px;color:var(--gold);font-weight:900}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.comparison-side{padding:20px;background:#fff}.compare-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.compare-head>img{width:64px;height:64px;object-fit:contain}.compare-head .photo-shell{width:76px;flex:0 0 76px}.compare-head h2{margin:0;font-size:1.3rem}.compare-table{display:grid;gap:8px}.compare-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;min-height:38px;padding:7px 9px;border-radius:7px;background:#f5f7fa}.compare-row span{color:var(--muted);font-size:.76rem}.compare-row strong{font-size:.9rem}.player{cursor:pointer;transition:box-shadow .16s,border-color .16s,transform .16s}.player:hover,.player:focus{transform:translateY(-1px);border-color:#d2b66b;box-shadow:0 12px 28px rgba(23,32,51,.11);outline:0}.player-detail{position:fixed;inset:0;z-index:40;display:none;place-items:center;padding:22px;background:rgba(17,24,39,.58);backdrop-filter:blur(6px)}.player-detail.active{display:grid}.player-detail-panel{position:relative;width:min(980px,100%);max-height:calc(100vh - 44px);overflow:auto;border-radius:8px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.28)}.detail-close{position:absolute;top:14px;right:14px;z-index:2;width:40px;height:40px;border:0;border-radius:7px;background:#111827;color:#fff;font-size:1.4rem;cursor:pointer}.player-detail-head{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:26px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,#fffdf7,#fff 65%,#f4f6fa)}.player-detail-head .photo-shell{width:140px}.player-detail-head h2{margin:0 0 6px;font-size:2rem}.detail-sections{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:22px}.detail-block h3{margin:0 0 10px}.career-table{width:100%;border-collapse:collapse;font-size:.78rem}.career-table th,.career-table td{padding:9px 7px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.career-table th{color:var(--muted);font-weight:400}.business-note{font-weight:400!important}@media(max-width:900px){.team-info-band{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.compare-controls{grid-template-columns:1fr}.versus{display:none}.comparison-grid,.detail-sections{grid-template-columns:1fr}.player-detail-head{grid-template-columns:90px minmax(0,1fr);padding:18px}.player-detail-head .photo-shell{width:86px}.player-detail-head h2{font-size:1.45rem}}
  .detail{display:flex;flex-direction:column}.detail-head{order:0}.team-info-band{order:1;padding:14px 20px}.team-snapshot{order:2}.position-coverage{order:3}.radar-section,.players-title,.coaches,.players,.detail>.empty{order:4}.pos-card.thin .pos-bar i{background:linear-gradient(90deg,#e98278,#f8bbb5)}.pos-card.thick{border-color:#9bc8e8;background:#f0f9ff}.pos-card.thick .pos-bar i{background:linear-gradient(90deg,#3198d4,#9edaf5)}.player-comment{margin:0;color:#344054;font-size:.88rem;font-weight:400;line-height:1.9}.detail-wide{grid-column:1/-1}.profile-inline{display:flex;flex-wrap:wrap;gap:7px 16px;margin:10px 0 0;color:#667085;font-size:.78rem}.profile-inline span{font-weight:400}.career-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:7px}.career-table th{min-width:86px;padding:10px 9px;vertical-align:top;background:#f5f7fa;color:var(--ink);font-weight:700}.career-table th:first-child{min-width:90px}.career-table th:nth-child(2),.career-table th:nth-child(3){min-width:105px}.career-table th small{display:block;margin-top:4px;color:var(--muted);font-size:.62rem;font-weight:400;line-height:1.35;white-space:normal}.career-table td{font-variant-numeric:tabular-nums}.career-table tbody tr:hover td{background:#fffaf0}.player{grid-template-rows:minmax(170px,auto) auto auto auto;align-items:stretch}.player-main{display:flex;min-height:170px;flex-direction:column}.player>.photo-shell{grid-row:1;align-self:stretch;width:104px;height:100%;min-height:170px;aspect-ratio:auto}.player>.photo-shell img{height:100%;object-fit:cover;object-position:top center}.player>.recent-table{grid-column:1/-1;grid-row:2;margin-top:2px}.player>.player-abilities{grid-row:3}.player>.player-award-area{grid-column:1/-1;grid-row:4}@media(max-width:760px){.player{grid-template-rows:minmax(145px,auto) auto auto auto}.player-main{min-height:145px}.player>.photo-shell{width:82px;min-height:145px}}
  .hero-brand{position:relative;display:grid;place-items:center;min-height:302px;padding:38px;border:1px solid #dfe3ea;border-radius:8px;background:#fff;box-shadow:0 18px 44px rgba(23,32,51,.10);overflow:hidden}.hero-brand::before{content:"";position:absolute;inset:0 auto 0 0;width:7px;background:#111827}.bp-premier-hero-logo{display:block;width:min(100%,360px);height:auto;object-fit:contain;filter:drop-shadow(0 14px 18px rgba(23,32,51,.14))}@media(max-width:1120px){.hero-brand{min-height:230px}.bp-premier-hero-logo{width:min(78%,430px)}}@media(max-width:760px){.hero-brand{min-height:190px;padding:30px 24px}.bp-premier-hero-logo{width:min(92%,340px)}}
  .site-nav{position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(228,231,236,.9);background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}.site-nav-inner{width:min(1540px,calc(100% - 32px));min-height:64px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.site-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:1000;text-decoration:none}.site-brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:6px;background:#111827;color:#f2d889;font-size:.7rem}.site-links{display:flex;align-items:center;gap:6px}.site-links a{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:6px;color:#4c5a70;font-size:.82rem;font-weight:700;text-decoration:none}.site-links a:hover,.site-links a[aria-current="page"]{background:#f1f4f8;color:#172033}.team-card,.player{text-decoration:none;color:inherit}.mode-link{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:6px;color:var(--muted);font-size:.82rem;font-weight:900;text-decoration:none}.mode-link:hover{background:#f1f4f8;color:#172033}.breadcrumb{display:flex;align-items:center;gap:8px;margin:0 0 14px;color:#667085;font-size:.78rem}.breadcrumb a{color:#667085;text-decoration:none}.breadcrumb a:hover{color:#172033}.standalone-page,.referee-page{display:none;margin-top:18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.standalone-page.active,.referee-page.active{display:block}.standalone-player-head{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;padding:28px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,#fffdf7,#fff 65%,#f4f6fa)}.standalone-player-head .photo-shell{width:170px}.standalone-player-head h1{margin:0 0 8px;font-size:clamp(2rem,4vw,3.6rem);line-height:1.05}.standalone-player-head p{margin:0;color:#667085;line-height:1.7}.standalone-back{display:inline-flex;align-items:center;min-height:38px;margin-bottom:16px;padding:0 12px;border:1px solid var(--line);border-radius:6px;color:#344054;font-size:.8rem;text-decoration:none;background:#fff}.referee-intro{padding:28px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,#fffdf7,#fff 68%,#f4f6fa)}.referee-intro h1{margin:0;font-size:clamp(2rem,4vw,3.6rem)}.referee-intro p{max-width:900px;margin:12px 0 0;color:#4c5a70;line-height:1.85}.referee-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px}.referee-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;padding:16px;border:1px solid var(--line);border-radius:8px;color:var(--ink);text-decoration:none;background:linear-gradient(180deg,#fff,#fbfcff);transition:transform .16s,box-shadow .16s,border-color .16s}.referee-card:hover{transform:translateY(-2px);border-color:#d2b66b;box-shadow:0 14px 30px rgba(23,32,51,.1)}.referee-number{display:grid;place-items:center;width:64px;height:64px;border-radius:8px;background:linear-gradient(145deg,#253047,#111827);color:#fff;font-size:1.05rem;font-weight:1000}.referee-card h2{margin:0 0 4px;font-size:1.05rem}.referee-card p{margin:0;color:#667085;font-size:.76rem;line-height:1.55}.referee-ranks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px}.referee-ranks div{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:6px;border-radius:6px;background:#f3f6fa}.referee-ranks small{color:#667085;font-size:.62rem}.referee-ranks .rank{width:26px;height:26px;font-size:.72rem}.referee-detail-head{display:grid;grid-template-columns:112px minmax(0,1fr);gap:22px;padding:28px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,#fffdf7,#fff 65%,#f4f6fa)}.referee-detail-head .referee-number{width:108px;height:108px;font-size:1.55rem}.referee-detail-head h1{margin:0 0 8px;font-size:clamp(2rem,4vw,3.5rem)}.referee-detail-body{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px;padding:22px}.referee-evaluation,.referee-profile{padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff}.referee-evaluation h2,.referee-profile h2{margin:0 0 14px;font-size:1.1rem}.referee-score-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.referee-score-row:last-child{border-bottom:0}.referee-profile p{margin:0;color:#344054;line-height:1.9}.editorial-note{margin:0 20px 20px;padding:14px 16px;border-left:4px solid var(--gold);background:#fff9e8;color:#6e5a25;font-size:.78rem;line-height:1.7}body[data-page="home"] #detail{display:none}body[data-page="home"] .layout{grid-template-columns:1fr}body[data-page="team"] .hero,body[data-page="player"] .hero,body[data-page="referees"] .hero,body[data-page="referee"] .hero{display:none}body[data-page]:not([data-page="home"]) .controls{display:none}body[data-page="team"] .team-list{display:none}body[data-page="team"] .layout{grid-template-columns:1fr;margin-top:18px}@media(max-width:920px){.referee-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.site-nav-inner{width:min(100% - 20px,1540px);min-height:56px}.site-brand span:last-child{display:none}.site-links{gap:2px}.site-links a{padding:0 8px;font-size:.72rem}.standalone-player-head{grid-template-columns:92px minmax(0,1fr);padding:18px}.standalone-player-head .photo-shell{width:88px}.referee-grid{grid-template-columns:1fr;padding:12px}.referee-detail-head{grid-template-columns:76px minmax(0,1fr);padding:18px}.referee-detail-head .referee-number{width:72px;height:72px;font-size:1rem}.referee-detail-body{grid-template-columns:1fr;padding:14px}}
.player-name-line,.standalone-player-name{display:flex;min-width:0;align-items:center;flex-wrap:nowrap;gap:7px;overflow-x:auto;scrollbar-width:none}.player-name-line::-webkit-scrollbar,.standalone-player-name::-webkit-scrollbar{display:none}.player-name-line h3,.standalone-player-name h1{flex:0 1 auto;min-width:max-content;margin:0}.player-roman-name{flex:0 0 auto;color:#7b8494;font-size:.84rem;font-weight:400;white-space:nowrap}.player-name-line .player-roman-name{font-size:.7rem}.player-badges{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:8px 0 0}.number-icon{display:inline-grid;flex:0 0 auto;place-items:center;width:30px;height:24px;border:1px solid var(--player-team-color,#111827);border-radius:5px;background:var(--player-team-color,#111827);color:var(--player-team-number-text,#fff);font-size:.68rem;font-weight:1000;line-height:1;box-shadow:0 3px 7px rgba(23,32,51,.16)}.number-icon.wide{font-size:.58rem}.number-icon.large{width:34px;height:24px;font-size:.76rem}.position-icon{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:24px;padding:0 7px;border:1px solid #cad2df;border-radius:5px;background:#eef2f7;color:#253047;font-size:.64rem;font-weight:1000;line-height:1}.standalone-player-name{margin-bottom:0}.standalone-player-name h1{margin-bottom:0}.player .player-top{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:40px;align-items:start;gap:10px}.player-card-identity{min-width:0}.player-card-body{flex:0 0 auto;color:#667085;font-size:.7rem;font-weight:400;white-space:nowrap}.player-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:8px}.player-rank-column{display:flex;min-width:38px;flex-direction:column;align-items:flex-end}.player-rank-column>.rank{flex:0 0 auto}.player-award-area{margin-top:5px}.player>.player-award-area{margin-top:-8px}.card-award-list{display:flex;align-items:center;flex-direction:row;flex-wrap:wrap;gap:5px}.card-award-label{display:inline-flex;align-items:center;min-height:23px;padding:3px 8px;border:1px solid #d6ad45;border-radius:5px;background:linear-gradient(145deg,#fffdf3,#f7e3a2);color:#5d4308;font-size:.6rem;font-weight:700;line-height:1.2;white-space:nowrap}@media(max-width:760px){.player-name-line,.standalone-player-name{gap:5px}.player-roman-name{font-size:.72rem}.player-name-line .player-roman-name{font-size:.64rem}.player-card-body{font-size:.62rem}.player-badges{gap:3px}.player-card-meta{gap:3px;margin-top:6px}.number-icon{width:28px;height:22px;font-size:.64rem}.number-icon.large{width:30px;height:22px;font-size:.7rem}.position-icon,.slot-icon,.salary-badge{height:22px;min-height:22px}.position-icon{padding:0 6px;font-size:.6rem}.salary-badge{padding:0 5px}.money-icons{gap:1px}.money-icons i{width:13px;height:13px;font-size:.5rem}.card-award-label{font-size:.54rem}}
  .player-card-comment{flex:1;margin-top:10px;padding-top:9px;border-top:1px solid #e8ecf2}.player-card-comment p{margin:0;color:#344054;font-size:.74rem;font-weight:400;line-height:1.58}
  .player-rank-column{min-width:83px;flex-direction:row;align-items:center;justify-content:flex-end;gap:7px}.player-trend{display:inline-grid;flex:0 0 38px;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.58);border-radius:7px;color:#fff;font-size:1.6rem;font-weight:1000;line-height:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 5px 10px rgba(23,32,51,.14);text-shadow:0 1px 3px rgba(23,32,51,.24)}.player-trend.strong-up{background:linear-gradient(145deg,#ff8fc8 0%,#ec3d91 52%,#b81461 100%)}.player-trend.up{background:linear-gradient(145deg,#ff7777 0%,#e52525 54%,#a50f18 100%)}.player-trend.flat,.player-trend.young-down{background:linear-gradient(145deg,#6fe28e 0%,#20a957 55%,#087733 100%)}.player-trend.down{background:linear-gradient(145deg,#75b8ff 0%,#2777d9 56%,#114c9b 100%)}.player-trend.strong-down{background:linear-gradient(145deg,#b99aff 0%,#7d50cf 55%,#553292 100%)}@media(max-width:760px){.player-rank-column{min-width:76px;gap:4px}.player-trend{flex-basis:34px;width:34px;height:34px;font-size:1.42rem}}
  .player-rank-column{min-width:116px;align-items:flex-start;gap:6px}.player-eval-card{display:grid;grid-template-rows:38px 15px;place-items:center;width:55px;min-width:55px;height:55px;overflow:hidden;border:1px solid #d7dde7;border-radius:7px;background:linear-gradient(155deg,#fff,#f7f9fc);box-shadow:inset 0 1px 0 #fff,0 4px 10px rgba(23,32,51,.09)}.player-eval-card small{align-self:stretch;width:100%;padding-top:2px;border-top:1px solid rgba(102,112,133,.16);color:#667085;font-size:.52rem;font-weight:600;line-height:1;text-align:center;white-space:nowrap}.player-eval-card>.rank{width:auto;height:auto;border:0;background:transparent;box-shadow:none;font-size:1.65rem;text-shadow:none}.player-overall-card.rank-card-S{border-color:#ef9ac5;background:linear-gradient(145deg,#fff,#fff0f8)}.player-overall-card.rank-card-A{border-color:#ef9a9f;background:linear-gradient(145deg,#fff,#fff1f2)}.player-overall-card.rank-card-B{border-color:#dec06d;background:linear-gradient(145deg,#fff,#fff8df)}.player-overall-card.rank-card-C{border-color:#8fcba5;background:linear-gradient(145deg,#fff,#effbf3)}.player-overall-card.rank-card-D{border-color:#91b9e8;background:linear-gradient(145deg,#fff,#eff6ff)}.player-overall-card.rank-card-E{border-color:#b6a0df;background:linear-gradient(145deg,#fff,#f7f2ff)}.player-overall-card.rank-card-F{border-color:#b8bec7;background:linear-gradient(145deg,#fff,#f2f4f7)}.player-eval-card>.rank-S{color:#d81b75}.player-eval-card>.rank-A{color:#d7232d}.player-eval-card>.rank-B{color:#b57a00}.player-eval-card>.rank-C{color:#168d49}.player-eval-card>.rank-D{color:#246fca}.player-eval-card>.rank-E{color:#7044bd}.player-eval-card>.rank-F{color:#626b77}.player-eval-card .player-trend{display:grid;flex:0 0 auto;width:auto;height:auto;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:1.85rem;text-shadow:none}.player-growth-card:has(.strong-up){border-color:#ef9ac5;background:linear-gradient(145deg,#fff,#fff0f8)}.player-growth-card:has(.up){border-color:#ef9a9f;background:linear-gradient(145deg,#fff,#fff1f2)}.player-growth-card:has(.flat),.player-growth-card:has(.young-down){border-color:#8fcba5;background:linear-gradient(145deg,#fff,#effbf3)}.player-growth-card:has(.down){border-color:#91b9e8;background:linear-gradient(145deg,#fff,#eff6ff)}.player-growth-card:has(.strong-down){border-color:#b6a0df;background:linear-gradient(145deg,#fff,#f7f2ff)}.player-eval-card .strong-up{color:#d81b75}.player-eval-card .up{color:#d7232d}.player-eval-card .flat,.player-eval-card .young-down{color:#168d49}.player-eval-card .down{color:#246fca}.player-eval-card .strong-down{color:#7044bd}@media(max-width:760px){.player-rank-column{min-width:102px;gap:4px}.player-eval-card{grid-template-rows:34px 14px;width:49px;min-width:49px;height:50px}.player-eval-card>.rank{font-size:1.48rem}.player-eval-card .player-trend{font-size:1.62rem}.player-eval-card small{font-size:.47rem}}
  .player-compare-controls{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.player-compare-picker{display:grid;gap:10px;padding:14px;border:1px solid #e1e6ee;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc)}.player-compare-picker>strong{font-size:.86rem;color:#172033}.player-compare-picker label{font-size:.7rem}.player-comparison-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.player-comparison-grid .comparison-side{min-width:0}.player-comparison-grid .compare-head{align-items:flex-start}.player-comparison-grid .compare-head>div{min-width:0}.player-comparison-grid .compare-head h2{overflow-wrap:anywhere}.player-comparison-grid .compare-head>.rank{flex:0 0 38px;margin-left:auto}@media(max-width:900px){.player-compare-controls,.player-comparison-grid{grid-template-columns:1fr}}
  .ability-rank-stack{display:inline-flex;min-width:42px;flex-direction:column;align-items:center;justify-content:flex-start;gap:5px}.ability-deviation{color:#667085;font-size:.58rem;font-weight:700;line-height:1;white-space:nowrap}.shooting-type,.foul-draw-type,.defense-type{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:3px 7px;border:1px solid #cfd7e3;border-radius:999px;background:#fff;color:#344054;font-size:.64rem;font-weight:500;line-height:1;white-space:nowrap;box-shadow:0 2px 5px rgba(23,32,51,.07)}.shooting-type.type-production{border-color:#ef8f88;background:linear-gradient(145deg,#fff0ee,#f7b4ae);color:#9f1d16}.shooting-type.type-volume{border-color:#d8b45b;background:linear-gradient(145deg,#fff9df,#f6df9c);color:#6b4d08}.shooting-type.type-accuracy{border-color:#a9c7ec;background:linear-gradient(145deg,#f4f9ff,#dcecff);color:#194185}.foul-draw-type{border-color:#90c8b2;background:linear-gradient(145deg,#f2fff9,#d7f3e7);color:#176247;font-size:.6rem}.defense-types{display:flex;max-width:92px;flex-wrap:wrap;justify-content:center;gap:3px}.defense-type{border-color:#a9bad0;background:linear-gradient(145deg,#f7faff,#e5edf7);color:#294766;font-size:.58rem}.compare-row .ability-rank-stack{justify-self:end}
  .criteria-inline-types{display:grid;gap:8px;margin-top:12px}.criteria-type-explanation{display:flex;align-items:center;gap:8px}.criteria-inline-types .type-note{color:#667085;font-size:.72rem;line-height:1.4}
  body[data-page="team"]{background:var(--team-accent,#667085)}
  .detail.team-themed{background:var(--team-accent)}
  .team-themed .detail-head{background:linear-gradient(135deg,#fff 0%,color-mix(in srgb,var(--team-accent) 20%,#fff) 55%,color-mix(in srgb,var(--team-accent) 32%,#f8fafc) 100%)}
  .team-themed .team-snapshot,.team-themed .team-info-band{background:color-mix(in srgb,var(--team-accent) 17%,#fff)}
  .team-themed .radar-section,.team-themed>.players-title,.team-themed>.coaches,.team-themed>.players{background:color-mix(in srgb,var(--team-accent) 14%,#fff)}
  .snapshot-with-chart{display:grid;grid-template-columns:minmax(68px,.72fr) minmax(0,1.28fr);align-items:center;gap:4px;min-width:0;overflow:hidden}
  .snapshot-with-chart>div:first-child{min-width:0}
  .snapshot-distribution{min-width:0;max-width:100%;align-self:center;display:grid;grid-template-rows:34px 24px;align-content:center;width:100%;height:58px;overflow:hidden;transform:translateY(8px)}
  .distribution-bars{display:grid;grid-template-columns:repeat(var(--distribution-bins),minmax(0,1fr));width:100%;min-width:0;height:34px;align-items:end;gap:3px;padding-bottom:2px;border-bottom:1px solid #d7dde8;overflow:hidden}
.distribution-bars i{display:flex;justify-self:center;align-items:center;justify-content:center;width:76%;min-width:4px;min-height:14px;max-width:17px;border-radius:2px 2px 0 0;background:linear-gradient(165deg,color-mix(in srgb,var(--team-accent) 30%,#fff) 0%,color-mix(in srgb,var(--team-accent) 76%,#fff) 48%,color-mix(in srgb,var(--team-accent) 88%,#111827) 100%);font-style:normal;opacity:.96;box-shadow:inset 1px 0 0 rgba(255,255,255,.28)}
  .distribution-bars i b{display:grid;place-items:center;color:#fff;font-size:.5rem;font-weight:800;line-height:1;text-shadow:0 1px 2px rgba(0,0,0,.72);font-variant-numeric:tabular-nums}
  .distribution-bars i.is-empty{height:0!important;min-width:0;background:transparent;opacity:0}
  .distribution-bars i.is-empty b{display:none}
  .distribution-axis{display:grid;grid-template-columns:repeat(var(--distribution-bins),minmax(0,1fr));min-width:0;gap:3px;padding-top:3px;color:#667085;text-align:center}
  .distribution-axis span{display:grid;min-width:0;justify-items:center;align-content:start;font-size:.43rem;font-weight:400;line-height:1.05;white-space:nowrap}
  .distribution-axis b,.distribution-axis em{display:block;min-width:0;font-size:inherit;font-style:normal;font-weight:400}
  .stat-analysis{height:100%;align-self:stretch}
  .stat-analysis .rank-table{flex:1;grid-template-rows:repeat(10,minmax(0,1fr))}
  .stat-analysis .rank-row{min-height:0;padding:4px 0;align-items:center}
  .stat-lines{gap:2px}
  .stat-line{display:grid;grid-template-columns:62px minmax(42px,1fr) 54px;align-items:center;gap:6px;min-height:13px}
  .stat-line small{display:block;min-width:0;line-height:1}
  .stat-line small b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:400}
  .stat-line .rankbar{height:5px;margin:0}
  .stat-value{overflow:hidden;color:#344054;font-size:.7rem;font-style:normal;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
  @media(min-width:1181px){.radar-section{grid-template-columns:minmax(280px,1fr) minmax(280px,.92fr) minmax(340px,1.18fr);align-items:stretch}.radar-column,.analysis-panel{height:100%;min-height:0}.radar-column{grid-template-rows:auto 1fr}.radar-column>.radar-panel{min-height:0}.radar-column .radar{max-width:275px}.radar-column .team-profile{margin-top:5px;padding:8px 10px;font-size:.73rem;line-height:1.55}.radar-column .position-coverage{min-height:0}.radar-column .position-grid{grid-template-rows:repeat(5,minmax(0,1fr))}.radar-column .pos-card{min-height:0;padding:5px 7px}.strength-analysis .rank-table{grid-template-rows:repeat(12,minmax(40px,1fr))}.stat-analysis .rank-table{grid-template-rows:repeat(10,minmax(48px,1fr))}.strength-analysis .rank-row,.stat-analysis .rank-row{min-height:0}}
  @media(max-width:1180px){.stat-analysis .rank-row{min-height:0}.stat-analysis{width:100%}}
  @media(max-width:760px){.snapshot-with-chart{grid-template-columns:minmax(60px,.72fr) minmax(0,1.28fr);gap:3px}.snapshot-distribution{grid-template-rows:30px 24px;height:54px;transform:translateY(6px)}.distribution-bars{height:30px;gap:2px}.distribution-axis{gap:2px}.distribution-axis span{font-size:.39rem}.stat-line{grid-template-columns:58px minmax(54px,1fr) 48px}}
.award-history{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px}.award-badge{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid #d6ad45;border-radius:999px;background:linear-gradient(145deg,#fffdf3,#f7e3a2);color:#5d4308;font-size:.7rem;font-weight:700;line-height:1.2;box-shadow:0 3px 8px rgba(123,88,12,.12)}.comment-paragraph{display:block}.comment-paragraph+.comment-paragraph{margin-top:0}.player-editorial-references{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:14px;padding-top:10px;border-top:1px solid #e7eaf0;color:#667085;font-size:.68rem}.player-editorial-references>span{font-weight:600}.player-editorial-references a{color:#315b92;text-decoration:none}.player-editorial-references a:hover{text-decoration:underline}@media(max-width:760px){.award-history{gap:5px}.award-badge{font-size:.64rem}}
  .recent-table{grid-template-columns:repeat(8,minmax(88px,1fr))}.recent-table small{min-height:1.2em;white-space:nowrap}
  .recent-table{grid-template-columns:repeat(8,minmax(70px,1fr));margin-top:6px}.recent-table div{padding:3px 2px}.recent-table small{min-height:1em;margin-bottom:0;white-space:nowrap;line-height:1.05}.recent-table b{font-size:.77rem;line-height:1.05}.recent-table .stat-category{min-height:21px;padding:3px 2px}.player>.recent-table{width:100%;margin-right:0;margin-left:0}
  .ability-tags{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:4px}.shooting-type,.foul-draw-type,.defense-type{border-radius:5px}.defense-types{max-width:none;flex-wrap:nowrap}
  .recent-table .stat-column-1{--category-color:#7b8494;--category-head:#e9edf2;--category-tint:#f7f8fa}.recent-table .stat-column-2{--category-color:#b78318;--category-head:#faedc9;--category-tint:#fffaf0}.recent-table .stat-column-3{--category-color:#248a78;--category-head:#dcefe9;--category-tint:#f2faf7}.recent-table .stat-column-4{--category-color:#dc7622;--category-head:#fde6d1;--category-tint:#fff7ef}.recent-table .stat-column-5{--category-color:#ca3e4c;--category-head:#f9dce0;--category-tint:#fff4f5}.recent-table .stat-column-6{--category-color:#357eb8;--category-head:#dbeefa;--category-tint:#f2f9fd}.recent-table .stat-column-7{--category-color:#31875a;--category-head:#dcefe3;--category-tint:#f2faf5}.recent-table .stat-column-8{--category-color:#7658a6;--category-head:#e9e1f3;--category-tint:#f8f4fc}.recent-table .stat-category{display:grid;place-items:center;min-height:24px;padding:4px 3px;border-top:3px solid var(--category-color);background:linear-gradient(145deg,color-mix(in srgb,var(--category-color) 24%,#fff) 0%,color-mix(in srgb,var(--category-color) 12%,#fff) 48%,color-mix(in srgb,var(--category-color) 6%,#fff) 100%);color:#253047;text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.72),inset 0 -1px 0 color-mix(in srgb,var(--category-color) 12%,transparent)}.recent-table .stat-category span{font-size:.68rem;font-weight:800;line-height:1;white-space:nowrap}.recent-table .stat-cell{background:var(--category-tint);box-shadow:none}
  .coach-card{grid-template-rows:auto auto auto auto}.coach-summary{min-height:104px;justify-content:flex-start}.coach-summary .coach-mini{grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:4px;margin-top:5px}.coach-summary .coach-mini div{min-width:0;padding:5px 2px}.coach-summary .coach-mini small{font-size:.57rem}.coach-summary .coach-mini .rank{width:25px;height:25px;font-size:.76rem}.coach-card>.coach-style-panel{grid-column:1/-1;grid-row:2;gap:4px;margin:0}.coach-card>.coach-style-panel .coach-style-line{grid-template-columns:42px repeat(3,minmax(0,1fr));gap:4px}.coach-card>.coach-style-panel .coach-style-line small{display:flex;min-height:25px;align-items:center;justify-content:center;border:1px solid #d8dee8;border-radius:4px;background:#f7f9fc;color:#667085;font-size:.61rem;text-align:center}.coach-card>.coach-style-panel .coach-style-chip{min-height:25px;border-radius:4px;font-size:.6rem;text-align:center}.coach-style-chip.starters.active{background:linear-gradient(135deg,#ef5a71,#b9203d)}.coach-style-chip.rotation.active{background:linear-gradient(135deg,#37b66a,#128447)}.coach-style-chip.bench.active{background:linear-gradient(135deg,#2f80ed,#1559b7)}.coach-style-nodata{display:flex;grid-column:2/-1;min-height:25px;align-items:center;justify-content:center;border:1px solid #d8dee8;border-radius:4px;background:#edf0f4;color:#8b95a5;font-size:.6rem;font-weight:500;letter-spacing:.03em}.coach-note{grid-row:3}.coach-career{grid-row:4;line-height:1.7}.recent-stats-heading{grid-column:1/-1!important;display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px!important;background:#f7f9fc!important;text-align:left!important}.recent-stats-heading strong,.recent-stats-heading span{min-width:0;color:#667085;font-size:.65rem;font-weight:400;white-space:normal}.recent-stats-heading span{text-align:right}.radar{max-width:390px}.radar-score{font-size:17px}.radar-column .position-coverage{padding:8px 10px}.radar-column .position-coverage h3{margin-bottom:4px;font-size:.82rem}.radar-column .position-grid{height:auto;gap:3px}.radar-column .pos-card{min-height:38px;padding:4px 7px}.radar-column .pos-card strong{font-size:.7rem}.radar-column .pos-card strong b{font-size:.8rem}.radar-column .pos-bar{height:5px;margin-top:3px}.radar-column .pos-card small{margin-top:2px;font-size:.55rem}@media(max-width:760px){.coach-summary .coach-mini{grid-template-columns:repeat(4,minmax(0,1fr))}.coach-card>.coach-style-panel .coach-style-chip{font-size:.62rem}.radar{max-width:100%}}
.player{grid-template-columns:96px minmax(0,1fr);grid-template-rows:minmax(160px,auto) auto auto auto}.player-main{min-height:160px}.player>.photo-shell{width:96px;min-height:160px}.standalone-player-head{grid-template-columns:170px minmax(0,1fr)}.standalone-player-head .photo-shell{width:160px}.coach-card{grid-template-columns:96px minmax(0,1fr);column-gap:13px}.coach-photo{width:96px}.coach-summary{min-height:128px}.coach-card h3{font-size:1.06rem}.coach-summary .coach-mini{gap:5px;margin-top:7px}.coach-summary .coach-mini div{padding:7px 2px}.coach-summary .coach-mini small{font-size:.62rem}.coach-summary .coach-mini .rank{width:30px;height:30px;font-size:.9rem}@media(max-width:760px){.player{grid-template-columns:78px minmax(0,1fr);grid-template-rows:minmax(138px,auto) auto auto auto}.player-main{min-height:138px}.player>.photo-shell{width:78px;min-height:138px}.standalone-player-head{grid-template-columns:86px minmax(0,1fr)}.standalone-player-head .photo-shell{width:82px}.coach-card{grid-template-columns:84px minmax(0,1fr)}.coach-photo{width:84px}.coach-summary{min-height:112px}.coach-summary .coach-mini .rank{width:27px;height:27px;font-size:.8rem}}
.player-abilities{grid-template-columns:repeat(7,minmax(0,1fr))}
@media(max-width:1180px){.player-abilities{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.player-abilities{grid-template-columns:repeat(2,minmax(0,1fr))}}
  .photo-shell img{transform:scale(1.12);transform-origin:50% 18%}.strength-analysis .rank-row{grid-template-columns:minmax(108px,122px) 36px minmax(72px,1fr)}.strength-analysis .rank-row>span{white-space:normal;line-height:1.25}.radar-label{font-size:11px}.team-snapshot{grid-template-columns:minmax(112px,.48fr) repeat(3,minmax(0,1.18fr))}.team-snapshot>.snapshot-item:first-child{display:flex;min-width:0;flex-direction:column;justify-content:center}.snapshot-with-chart{grid-template-columns:minmax(74px,.58fr) minmax(150px,1.42fr);gap:8px}.season-stat-analysis{overflow:hidden;padding-right:10px;padding-left:10px}.season-stat-table{display:grid;gap:0;margin-top:3px}.season-stat-group{display:grid;grid-template-columns:62px minmax(0,1fr);gap:5px;align-items:center;padding:4px 0;border-bottom:1px solid #edf0f4}.season-stat-group:last-child{border-bottom:0}.season-stat-group>b{font-size:.66rem;line-height:1.2}.season-stat-cells{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}.season-stat-cell{display:grid;min-width:0;padding:3px 4px;border-radius:5px;background:#f5f7fa}.season-stat-cell small{overflow:hidden;color:#667085;font-size:.54rem;font-weight:400;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.season-stat-cell>div{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:3px;margin-top:1px}.season-stat-cell strong{font-size:.7rem;font-variant-numeric:tabular-nums;white-space:nowrap}.season-stat-cell em{color:#175cd3;font-size:.58rem;font-style:normal;font-weight:600;white-space:nowrap}@media(min-width:1181px){.radar-section{grid-template-columns:minmax(300px,1.06fr) minmax(300px,1.04fr) minmax(292px,.9fr)}.snapshot-distribution{transform:translate(-4px,8px)}}@media(max-width:1180px){.strength-analysis .rank-row{grid-template-columns:122px 38px minmax(80px,1fr)}.season-stat-group{grid-template-columns:86px minmax(0,1fr)}.season-stat-cell small{font-size:.62rem}.season-stat-cell strong{font-size:.82rem}.season-stat-cell em{font-size:.64rem}}@media(max-width:760px){.team-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}.snapshot-with-chart{grid-template-columns:minmax(68px,.62fr) minmax(0,1.38fr)}}@media(max-width:520px){.season-stat-group{grid-template-columns:1fr}.season-stat-cells{grid-template-columns:repeat(3,minmax(0,1fr))}}
.league-list-section{margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}
.league-list-section .section-title p{color:#1675b8}
.league-list-section .team-card{background:linear-gradient(160deg,#fff,#f3f8fc)}

/* Ability rank presentation: gradient letter, reserved icon area and granular meter. */
.player-abilities>.ability-card{position:relative;display:grid;height:76px;grid-template-rows:15px 21px 8px 20px;align-content:start;justify-items:stretch;gap:0!important;min-height:76px;padding:3px 7px;overflow:hidden;background:linear-gradient(180deg,#fff,#f5f7fa);border:1px solid #e1e6ed}
.ability-layout-preview{margin-top:0}.ability-layout-preview-heading{padding-bottom:14px;border-bottom:1px solid #e7ebf0}.ability-layout-preview-heading h3{margin:0;font-size:1.2rem}.ability-layout-preview-heading p:last-child{max-width:760px;margin:7px 0 0;color:#667085;font-size:.76rem;font-weight:400;line-height:1.65}.ability-layout-preview-section{margin-top:18px}.ability-layout-preview-section h4{margin:0 0 9px;color:#344054;font-size:.9rem}.ability-layout-preview-grid{display:grid;gap:7px}.ability-layout-preview-grid.preview-four-by-four{grid-template-columns:repeat(4,minmax(0,1fr))}.ability-layout-preview-grid.preview-three-by-six{grid-template-columns:repeat(6,minmax(0,1fr))}.ability-layout-preview-grid>.ability-preview-card{height:75px;min-height:75px;grid-template-rows:16px 33px 9px!important;padding:5px 8px!important;background:linear-gradient(180deg,#fff,#f7f9fc)}.ability-layout-preview-grid>.ability-preview-card .ability-card-main{height:33px}.ability-layout-preview-grid>.ability-preview-card .ability-rank-area{height:33px}.ability-layout-preview-grid>.ability-preview-card .ability-rank-area>.rank{font-size:1.72rem}.ability-layout-preview-grid>.ability-preview-card .ability-meter{width:100%;height:8px;margin:0;align-self:center}.ability-layout-preview-grid>.ability-preview-card>small{font-size:.66rem;font-weight:700}.ability-layout-preview-grid>.ability-preview-card .ability-icon-slot{display:none}@media(max-width:760px){.ability-layout-preview-grid.preview-four-by-four{grid-template-columns:repeat(2,minmax(0,1fr))}.ability-layout-preview-grid.preview-three-by-six{grid-template-columns:repeat(3,minmax(0,1fr))}.ability-layout-preview-grid>.ability-preview-card{height:77px;min-height:77px}.ability-layout-preview-heading p:last-child{font-size:.72rem}}
.player-abilities>.ability-card>small{display:flex;align-items:flex-start;justify-content:center;min-height:0;color:#455166;font-size:.64rem;font-weight:500;line-height:1;text-align:center}
.ability-card-main,.mini .ability-card-main{position:relative;display:grid;width:100%;max-width:100%;grid-template-columns:1fr;align-items:center;justify-items:center;gap:0;min-width:0;overflow:hidden;padding:0;border-radius:0;background:transparent}
.ability-rank-area{display:flex;min-width:0;align-items:center;justify-content:center;padding:0!important;border-radius:0!important;background:transparent!important}
.ability-icon-slot{display:flex;width:calc(100% + 4px);max-width:none;height:20px;min-width:0;margin-left:-2px;justify-self:stretch;flex-direction:row;align-items:end;justify-content:center;gap:2px;overflow:hidden;padding:2px 0 0}
.ability-feature-tag{display:flex;width:auto;min-width:0;height:17px;flex:1 1 0;align-items:center;justify-content:center;padding:1px 2px;border:1px solid #cbd1da;border-radius:3px;background:linear-gradient(180deg,#f4f5f7,#e2e5e9);color:#9098a5;font-size:.43rem;font-weight:600;line-height:1;white-space:nowrap;box-sizing:border-box;box-shadow:none}
.ability-feature-tag.is-inactive{filter:saturate(0);opacity:.68}.ability-paint .ability-feature-tag.is-active,.ability-two .ability-feature-tag.is-active,.ability-three .ability-feature-tag.is-active{border-color:#efb26b;background:linear-gradient(180deg,#fff8e8,#ffe0af);color:#8c4500}.ability-ft .ability-feature-tag.is-active{border-color:#86cab8;background:linear-gradient(180deg,#effff9,#ccefe4);color:#12634f}.ability-power .ability-feature-tag.is-active{border-color:#9ac8a5;background:linear-gradient(180deg,#f4fff5,#d7f0dc);color:#246135}.ability-speed .ability-feature-tag.is-active{border-color:#84c6e2;background:linear-gradient(180deg,#f2fbff,#d0edf8);color:#155875}.ability-dribble .ability-feature-tag.is-active,.ability-pass .ability-feature-tag.is-active{border-color:#b8a1e5;background:linear-gradient(180deg,#faf7ff,#e5dcf7);color:#563b8d}.ability-rebound .ability-feature-tag.is-active,.ability-height .ability-feature-tag.is-active{border-color:#e3bd64;background:linear-gradient(180deg,#fffaf0,#f7e4b5);color:#755000}.ability-defense .ability-feature-tag.is-active{border-color:#86a8d9;background:linear-gradient(180deg,#f3f7ff,#d8e4f6);color:#274e84}.ability-impact .ability-feature-tag.is-active,.ability-stability .ability-feature-tag.is-active{border-color:#82c59b;background:linear-gradient(180deg,#f2fff6,#d5f1df);color:#21623a}.ability-experience .ability-feature-tag.is-active{border-color:#d0a74c;background:linear-gradient(180deg,#fff9e9,#f2d891);color:#684800}
.ability-rank-area>.rank,.ability-rank-area .ability-rank-stack>.rank{width:auto;height:auto;border:0;border-radius:0;background:linear-gradient(180deg,var(--rank-top,#667085),var(--rank-bottom,#344054));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;font-size:1.32rem;font-stretch:normal;font-weight:1000;line-height:.9;letter-spacing:0;transform:none;-webkit-text-stroke:0;box-shadow:none;filter:none;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom,#344054) 18%,transparent)}
.ability-card:has(.rank-S){--rank-top:#ff77b9;--rank-bottom:#c51468}.ability-card:has(.rank-A){--rank-top:#ff5a62;--rank-bottom:#b60f1c}.ability-card:has(.rank-B){--rank-top:#ffd94f;--rank-bottom:#b27600}.ability-card:has(.rank-C){--rank-top:#45d67a;--rank-bottom:#087e39}.ability-card:has(.rank-D){--rank-top:#62adff;--rank-bottom:#1453a7}.ability-card:has(.rank-E){--rank-top:#a982ff;--rank-bottom:#573194}.ability-card:has(.rank-F){--rank-top:#aab2bd;--rank-bottom:#515963}
.coach-mini div:has(.rank-S){--rank-top:#ff77b9;--rank-bottom:#c51468}.coach-mini div:has(.rank-A){--rank-top:#ff5a62;--rank-bottom:#b60f1c}.coach-mini div:has(.rank-B){--rank-top:#ffd94f;--rank-bottom:#b27600}.coach-mini div:has(.rank-C){--rank-top:#45d67a;--rank-bottom:#087e39}.coach-mini div:has(.rank-D){--rank-top:#62adff;--rank-bottom:#1453a7}.coach-mini div:has(.rank-E){--rank-top:#a982ff;--rank-bottom:#573194}.coach-mini div:has(.rank-F){--rank-top:#aab2bd;--rank-bottom:#515963}.coach-summary .coach-mini div>.rank{width:auto;height:auto;border:0;border-radius:0;background:linear-gradient(180deg,var(--rank-top,#667085),var(--rank-bottom,#344054));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;font-size:1.5rem;font-weight:1000;line-height:1;box-shadow:none;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom,#344054) 18%,transparent)}
.ability-rank-area .ability-rank-stack{position:static;display:flex;min-width:0;flex-direction:row;align-items:center;justify-content:flex-start;gap:4px;padding:0!important;border-radius:0!important;background:transparent!important}
.ability-card .ability-rank-area .ability-tags{display:none}
.ability-rank-area .ability-deviation{position:absolute;left:7px;bottom:-1px;font-size:.5rem}
.ability-rank-area .ability-tags{position:absolute;top:50%;right:2px;display:flex;max-width:40px;transform:translateY(-50%);flex-wrap:wrap;justify-content:center;gap:2px}
.ability-rank-area .shooting-type,.ability-rank-area .foul-draw-type,.ability-rank-area .defense-type{min-height:18px;max-width:40px;padding:2px 4px;font-size:.48rem;line-height:1.05;white-space:normal;text-align:center}
.ability-meter{--meter-a:#667085;--meter-b:#344054;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;width:calc(100% + 4px);height:7px;margin-left:-2px;align-self:end}
.ability-meter i{display:block;min-width:0;border:0;border-radius:1px;background:linear-gradient(90deg,var(--meter-a) 0%,var(--meter-b) var(--segment-fill),var(--meter-empty,#e1e5eb) var(--segment-fill),var(--meter-empty,#e1e5eb) 100%);box-shadow:none}
.rank-meter-S{--meter-a:#ff4ca2;--meter-b:#bd0f60}.rank-meter-A{--meter-a:#f32f39;--meter-b:#a70e18}.rank-meter-B{--meter-a:#f4bc17;--meter-b:#a76c00}.rank-meter-C{--meter-a:#24b85a;--meter-b:#087632}.rank-meter-D{--meter-a:#3184e7;--meter-b:#154d96}.rank-meter-E{--meter-a:#8158d2;--meter-b:#503087}.rank-meter-F{--meter-a:#7d8794;--meter-b:#4c5560}

/* Comparison pages */
.compare-page{background:#f2f4f7}
.team-compare-mobile-tabs{display:none}
.compare-controls{position:relative;z-index:1;background:#fff;box-shadow:0 8px 20px rgba(17,24,39,.04)}
.comparison-grid{gap:12px;padding:12px;background:#e9edf3}
.comparison-side{min-width:0;padding:0 0 16px;overflow:hidden;border:1px solid #d9e0e9;border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(17,24,39,.06)}
.compare-head{position:relative;min-height:108px;margin:0;padding:18px 18px 16px;border-bottom:1px solid #dfe5ed;background:linear-gradient(115deg,color-mix(in srgb,var(--compare-accent,#172033) 10%,#fff),#fff 62%)}
.compare-head:before{display:none;content:none}
.compare-head>img{width:76px;height:76px}.compare-head .photo-shell{width:76px;height:88px;flex:0 0 76px;overflow:hidden}.compare-head .photo-shell img{height:100%;object-fit:cover;object-position:50% 12%}
.compare-head h2{letter-spacing:0;font-size:1.25rem;line-height:1.25}.compare-head p{margin:5px 0 0;color:#657086;font-size:.72rem;font-weight:400}.compare-head .detail-kicker{margin:0 0 3px;color:var(--compare-accent,#667085);font-size:.62rem}
.compare-overall{display:grid;min-width:64px;margin-left:auto;text-align:center}.compare-overall small{color:#697386;font-size:.62rem;font-weight:500}.compare-overall b{font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif;font-size:2.7rem;font-weight:1000;line-height:1}
.compare-snapshot{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #dfe5ed;background:#fbfcfe}
.compare-snapshot>span{display:grid;gap:3px;min-width:0;padding:11px 8px;border-right:1px solid #e2e7ee;text-align:center}.compare-snapshot>span:last-child{border-right:0}.compare-snapshot small{color:#758096;font-size:.61rem;font-weight:400}.compare-snapshot b{overflow:hidden;color:#172033;font-size:.82rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.compare-table.compare-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 12px 0}
.compare-metric-card{display:grid;grid-template-columns:minmax(0,1fr) 78px;align-items:center;gap:8px;min-height:72px;padding:10px;border:1px solid #e0e5ec;border-radius:6px;background:linear-gradient(145deg,#fff,#f8fafc)}
.compare-metric-copy{display:grid;min-width:0;gap:5px}.compare-metric-copy strong{color:#202a3d;font-size:.76rem;line-height:1.2}.compare-metric-copy small{color:#697386;font-size:.61rem;font-weight:400;line-height:1.35}
.compare-metric-score{display:grid;grid-template-columns:1fr;align-items:center;justify-items:center;gap:5px;min-width:0}.compare-metric-score>b{font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif;font-size:2rem;font-weight:1000;line-height:.95}.compare-metric-score .ability-meter{width:72px;height:6px;margin:0}.compare-metric-score .ability-feature-tag{max-width:72px;height:16px;font-size:.48rem}
.compare-overall b[class*="rank-letter-"],.compare-metric-score>b[class*="rank-letter-"]{display:inline-block;background:linear-gradient(180deg,var(--rank-top,#667085) 0%,var(--rank-bottom,#344054) 88%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 3px 7px color-mix(in srgb,var(--rank-bottom,#344054) 20%,transparent)}
.player-comparison-grid .compare-overall b[class*="rank-letter-"],.player-comparison-grid .compare-metric-score>b[class*="rank-letter-"]{background:linear-gradient(180deg,var(--rank-top,#667085) 0%,var(--rank-bottom,#344054) 88%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.compare-overall .team-grade-modifier,.compare-metric-score .team-grade-modifier{position:relative;top:-.08em;margin-left:.04em;font-size:.48em;line-height:1}
.player-comparison-grid{gap:10px}.player-comparison-grid .comparison-side{padding-bottom:14px}.player-comparison-grid .compare-head{padding:14px 12px}.player-comparison-grid .compare-head h2{font-size:1rem}.player-comparison-grid .compare-head .detail-kicker{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-comparison-grid .compare-overall{min-width:50px}.player-comparison-grid .compare-overall b{font-size:2.35rem}.player-comparison-grid .compare-table.compare-metric-grid{grid-template-columns:1fr;padding:10px 10px 0}.player-comparison-grid .compare-metric-card{grid-template-columns:minmax(0,1fr) 82px;min-height:52px}.player-comparison-grid .compare-snapshot>span{padding:9px 4px}.player-comparison-grid .compare-snapshot b{font-size:.74rem}
.player-comparison-grid .compare-overall b[class*="rank-letter-"]{font-family:Impact,"Arial Narrow",sans-serif;font-weight:900;text-shadow:none}
.player-comparison-grid .compare-metric-score.ranking-grade{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;justify-items:stretch;gap:7px;width:100%;min-height:34px}
.player-comparison-grid .compare-metric-score.ranking-grade>strong{display:flex;align-items:center;justify-content:center;height:34px;font-family:Impact,"Arial Narrow",sans-serif;font-size:2rem;font-weight:900;line-height:1;text-align:center}
.player-comparison-grid .compare-metric-score .ranking-grade-detail{display:grid;min-width:0;gap:5px}
.player-comparison-grid .compare-metric-score .ability-meter{width:100%;height:8px;margin:0;align-self:center}
.player-comparison-grid .compare-metric-score .ranking-feature-icons{display:flex;min-width:0;gap:3px}
.player-comparison-grid .compare-metric-score .ranking-feature-icons .ability-feature-tag{flex:1 1 0;min-width:0;max-width:none;height:17px;padding:1px 3px;font-size:.48rem}
.comparison-grid:not(.player-comparison-grid) .compare-overall{min-width:112px}
.comparison-grid:not(.player-comparison-grid) .compare-overall b[class*="rank-letter-"]{font-family:Impact,"Arial Narrow",sans-serif;font-weight:900;text-shadow:none}
.comparison-grid:not(.player-comparison-grid) .compare-overall .team-grade-modifier,.comparison-grid:not(.player-comparison-grid) .compare-metric-score .team-grade-modifier{position:relative;top:-.08em;left:auto;display:inline;margin-left:.04em;transform:none}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score.ranking-grade{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;justify-items:stretch;gap:9px;width:100%;min-height:42px}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score.ranking-grade>strong{display:flex;align-items:center;justify-content:center;height:42px;font-family:Impact,"Arial Narrow",sans-serif;font-size:2.15rem;font-weight:900;line-height:1;text-align:center}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score .ranking-grade-detail{display:grid;min-width:0;gap:5px}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score .ability-meter{width:100%;height:8px;margin:0;align-self:center}
@media(max-width:760px){.comparison-grid:not(.player-comparison-grid) .compare-overall{min-width:88px}.comparison-grid:not(.player-comparison-grid) .compare-overall b{font-size:2.15rem}}
@media(max-width:1100px){.compare-table.compare-metric-grid{grid-template-columns:1fr}.player-comparison-grid{grid-template-columns:repeat(3,minmax(270px,1fr));overflow-x:auto}.player-comparison-grid .comparison-side{min-width:270px}}
@media(max-width:760px){.comparison-grid,.player-comparison-grid{display:grid;grid-template-columns:1fr;overflow:visible}.comparison-side,.player-comparison-grid .comparison-side{min-width:0}.compare-head{min-height:96px;padding:14px}.compare-head>img{width:62px;height:62px}.compare-overall b{font-size:2.3rem}.compare-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}.compare-snapshot>span:nth-child(2){border-right:0}.compare-snapshot>span:nth-child(-n+2){border-bottom:1px solid #e2e7ee}}
.compare-team-head{display:grid;grid-template-columns:68px minmax(130px,.9fr) minmax(210px,1.25fr) 90px;align-items:center;gap:12px;min-height:124px}
.compare-team-head>img{width:68px;height:68px;object-fit:contain}
.compare-team-identity{min-width:0}.compare-team-identity h2{overflow-wrap:anywhere}
.compare-team-strengths{display:grid;min-width:0;gap:7px;padding:4px 12px;border-right:1px solid #e1e6ed;border-left:1px solid #e1e6ed}
.compare-team-strength{display:grid;grid-template-columns:47px 25px minmax(70px,1fr);align-items:center;gap:6px;min-width:0}
.compare-team-strength>small{color:#667085;font-size:.58rem;font-weight:650;line-height:1;white-space:nowrap}
.compare-team-strength>b{display:inline-block;min-width:25px;background:linear-gradient(180deg,var(--rank-top,#667085) 0%,var(--rank-bottom,#344054) 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:1.24rem;font-weight:1000;line-height:1;text-align:center;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom,#344054) 18%,transparent)}
.compare-team-strength .team-grade-modifier{position:relative;top:-.12em;left:auto;display:inline;margin-left:.02em;font-size:.5em!important}
.compare-team-strength>.ability-meter{width:100%;height:7px;margin:0}
.compare-depth-balance{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head ranks" "scale ranks" "track ranks";align-items:center;gap:2px 14px;margin:10px 12px 0;padding:9px 11px;border:1px solid #dfe5ed;border-radius:6px;background:linear-gradient(135deg,#fbfcfe,#f4f7fa)}
.compare-depth-balance>header{grid-area:head;display:flex;align-items:center;justify-content:center}.compare-depth-balance>header strong{color:#273247;font-size:.72rem;text-align:center}
.compare-depth-scale{grid-area:scale;display:flex;justify-content:space-between;color:#758096;font-size:.5rem;font-weight:600}
.compare-depth-track{grid-area:track;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;height:10px;padding:2px;border-radius:3px;background:#e7ecf2}.compare-depth-track i{border-radius:1px;background:#cfd7e2}.compare-depth-track i.is-current{background:linear-gradient(90deg,#35a7dd,#126da6);box-shadow:0 1px 4px rgba(18,109,166,.3)}
.compare-depth-balance>footer{grid-area:ranks;display:grid;gap:5px;min-width:82px;padding-left:13px;border-left:1px solid #d8dee7}.compare-depth-balance>footer span{display:flex;align-items:center;justify-content:space-between;gap:9px;color:#536076;font-size:.66rem;font-weight:800}.compare-depth-balance>footer b{background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:1.24rem;font-weight:1000;line-height:1}
.comparison-grid:not(.player-comparison-grid) .compare-overall b[class*="rank-letter-"],
.comparison-grid:not(.player-comparison-grid) .compare-metric-score>b[class*="rank-letter-"],
.comparison-grid:not(.player-comparison-grid) .compare-metric-score.ranking-grade>strong{background:linear-gradient(180deg,var(--rank-top,#667085) 0%,var(--rank-bottom,#344054) 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-weight:1000;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom,#344054) 18%,transparent)}
.comparison-grid:not(.player-comparison-grid) .compare-overall b[class*="rank-letter-"]{font-size:3rem;letter-spacing:0;line-height:.92}
@media(max-width:1180px){.compare-team-head{grid-template-columns:58px minmax(110px,.8fr) minmax(170px,1fr) 76px;gap:9px;padding-inline:13px}.compare-team-head>img{width:58px;height:58px}.compare-team-strengths{padding-inline:8px}.compare-team-strength{grid-template-columns:41px 22px minmax(55px,1fr);gap:4px}.compare-team-strength>small{font-size:.53rem}.compare-team-strength>b{font-size:1.08rem}.comparison-grid:not(.player-comparison-grid) .compare-overall{min-width:76px}}
@media(max-width:760px){.compare-team-head{grid-template-columns:62px minmax(0,1fr) 76px;gap:10px;min-height:0}.compare-team-head>img{grid-column:1;grid-row:1;width:62px;height:62px}.compare-team-identity{grid-column:2;grid-row:1}.compare-team-strengths{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px 0 0;border:0;border-top:1px solid #e1e6ed}.compare-team-strength{grid-template-columns:1fr 24px;grid-template-rows:auto 7px;gap:4px 5px}.compare-team-strength>small{font-size:.58rem}.compare-team-strength>b{font-size:1.15rem}.compare-team-strength>.ability-meter{grid-column:1/-1;grid-row:2}.compare-team-head>.compare-overall{grid-column:3;grid-row:1;min-width:70px}.comparison-grid:not(.player-comparison-grid) .compare-overall b[class*="rank-letter-"]{font-size:2.55rem}}
@media(max-width:520px){.compare-depth-balance{gap:2px 9px;margin-inline:9px;padding-inline:9px}.compare-depth-balance>footer{min-width:70px;padding-left:9px}.compare-depth-balance>footer span{font-size:.61rem}.compare-depth-balance>footer b{font-size:1.12rem}.compare-depth-balance>header strong{font-size:.68rem}}
.compare-lineups{margin:0 12px 12px;overflow:hidden;border:1px solid #d9e0e9;border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(17,24,39,.06)}
.compare-lineups-title{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;border-bottom:1px solid #dfe5ed;background:linear-gradient(135deg,#fff,#f7f9fc)}
.compare-lineups-title .kicker{margin:0 0 3px;color:#ad7912;font-size:.61rem;font-weight:700;text-transform:uppercase}.compare-lineups-title h2{margin:0;color:#172033;font-size:1.2rem}.compare-lineups-title>p:last-child{margin:5px 0 0;color:#6d778a;font-size:.66rem;font-weight:400}
.compare-lineups-title>div:first-child>p:last-child{margin:5px 0 0;color:#6d778a;font-size:.66rem;font-weight:400}.compare-lineups-tabs{display:flex;flex:0 0 auto;gap:3px;padding:3px;border:1px solid #d9e0e9;border-radius:6px;background:#eef2f6}.compare-lineups-tab{min-height:34px;padding:0 13px;border:0;border-radius:4px;background:transparent;color:#667085;font:inherit;font-size:.7rem;font-weight:750;cursor:pointer}.compare-lineups-tab.active{background:#172033;color:#fff;box-shadow:0 3px 8px rgba(23,32,51,.18)}.compare-lineup-panel[hidden]{display:none!important}
.compare-lineups-grid{display:grid;grid-template-columns:minmax(0,1fr) 46px minmax(0,1fr);gap:0;padding:14px;background:#edf1f6}
.compare-lineup-side{min-width:0;overflow:hidden;border:1px solid #dbe1ea;border-radius:7px;background:#fff}.compare-lineup-side>header{position:relative;display:flex;align-items:center;gap:10px;min-height:62px;padding:9px 12px;border-bottom:1px solid #e1e6ed;background:linear-gradient(120deg,color-mix(in srgb,var(--lineup-team-accent) 10%,#fff),#fff 68%)}.compare-lineup-side>header:before{position:absolute;inset:0 auto 0 0;width:4px;background:var(--lineup-team-accent);content:""}.compare-lineup-side>header img{width:44px;height:44px;object-fit:contain}.compare-lineup-side>header div{position:relative;min-width:0;flex:1}.compare-lineup-side>header small{display:block;color:#707b8e;font-size:.52rem;font-weight:600;letter-spacing:.06em}.compare-lineup-side>header h3{overflow:hidden;margin:2px 0 0;color:#172033;font-size:.88rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.compare-lineup-count{position:absolute;right:0;bottom:0;color:var(--lineup-team-accent);font-size:.64rem;font-weight:800}.compare-lineup-side-right .compare-lineup-count{right:auto;left:0}
.compare-lineup-side-right>header{flex-direction:row-reverse;text-align:right}.compare-lineup-side-right>header:before{right:0;left:auto}
.compare-lineup-list{display:grid;gap:1px;background:#e4e8ef}.compare-lineup-player{display:grid;grid-template-columns:58px minmax(90px,1fr) minmax(210px,1.45fr);align-items:center;gap:9px;min-width:0;min-height:82px;padding:6px 9px;background:#fff;color:#172033;text-decoration:none;transition:background .16s,transform .16s}.compare-lineup-player:hover{position:relative;z-index:1;background:color-mix(in srgb,var(--lineup-team-accent) 6%,#fff);transform:translateY(-1px)}.compare-lineup-player .photo-shell{width:58px;height:70px;min-height:0;border-radius:6px;overflow:hidden}.compare-lineup-player .photo-shell img{width:100%;height:100%;object-fit:cover;object-position:50% 10%;transform:scale(1.13);transform-origin:50% 12%}.compare-lineup-identity{display:grid;min-width:0;gap:4px}.compare-lineup-identity strong{overflow:hidden;font-size:.78rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.compare-lineup-identity small{overflow:hidden;color:#727d90;font-size:.56rem;font-weight:400;text-overflow:ellipsis;white-space:nowrap}
.compare-lineup-ranks{display:grid;grid-template-columns:repeat(5,minmax(34px,1fr));gap:3px}.compare-lineup-ranks>span{display:grid;place-items:center;min-height:42px;padding:3px 1px;border-radius:4px;background:#f3f6fa}.compare-lineup-ranks small{color:#737e91;font-size:.5rem;font-weight:700}.compare-lineup-ranks b{font-family:Impact,"Arial Narrow",sans-serif;font-size:1.24rem;font-weight:900;line-height:1;background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.compare-lineup-player-right{grid-template-columns:minmax(210px,1.45fr) minmax(90px,1fr) 58px}.compare-lineup-player-right>.photo-shell{grid-column:3}.compare-lineup-player-right>.compare-lineup-identity{grid-column:2;grid-row:1;text-align:right}.compare-lineup-player-right>.compare-lineup-ranks{grid-column:1;grid-row:1}.compare-lineup-versus{display:grid;place-items:center}.compare-lineup-versus span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #cbd3df;border-radius:50%;background:#172033;color:#fff;font-size:.62rem;font-weight:900;box-shadow:0 5px 12px rgba(23,32,51,.16)}.compare-lineup-vacancy{display:flex;align-items:center;justify-content:center;gap:8px;min-height:82px;background:#fff;color:#7b8595}.compare-lineup-vacancy span{display:grid;place-items:center;width:32px;height:25px;border-radius:4px;background:#eef1f5;font-size:.62rem;font-weight:800}.compare-lineup-vacancy strong{font-size:.68rem}
@media(max-width:1180px){.compare-lineup-player{grid-template-columns:50px minmax(76px,1fr) minmax(160px,1.35fr);gap:6px;padding:5px 6px}.compare-lineup-player .photo-shell{width:50px;height:64px}.compare-lineup-player-right{grid-template-columns:minmax(160px,1.35fr) minmax(76px,1fr) 50px}.compare-lineup-ranks{gap:2px}.compare-lineup-ranks>span{min-height:38px}.compare-lineup-ranks b{font-size:1.05rem}}
@media(max-width:820px){.compare-lineups-grid{grid-template-columns:1fr;gap:10px;padding:10px}.compare-lineup-versus{height:26px}.compare-lineup-versus span{width:32px;height:32px}.compare-lineup-side-right>header{flex-direction:row;text-align:left}.compare-lineup-side-right>header:before{right:auto;left:0}.compare-lineup-side-right .compare-lineup-count{right:0;left:auto}.compare-lineup-player-right{grid-template-columns:58px minmax(90px,1fr) minmax(210px,1.45fr)}.compare-lineup-player-right>.photo-shell{grid-column:1}.compare-lineup-player-right>.compare-lineup-identity{grid-column:2;text-align:left}.compare-lineup-player-right>.compare-lineup-ranks{grid-column:3}}
@media(max-width:560px){.compare-lineups{margin:0 8px 8px}.compare-lineups-title{display:grid;padding:14px}.compare-lineups-title h2{font-size:1.05rem}.compare-lineups-tabs{width:100%}.compare-lineups-tab{flex:1}.compare-lineup-player,.compare-lineup-player-right{grid-template-columns:48px minmax(0,1fr);min-height:0;padding:6px}.compare-lineup-player .photo-shell{grid-column:1;grid-row:1;width:48px;height:59px}.compare-lineup-player .compare-lineup-identity,.compare-lineup-player-right>.compare-lineup-identity{grid-column:2;grid-row:1;text-align:left}.compare-lineup-player .compare-lineup-ranks,.compare-lineup-player-right>.compare-lineup-ranks{grid-column:1/-1;grid-row:2}.compare-lineup-ranks>span{min-height:34px}.compare-lineup-ranks b{font-size:1rem}}
.compare-lineup-simulators .compare-lineups-title{padding-block:13px}.compare-lineup-simulator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px;background:#edf1f6}.compare-lineup-simulators .compare-lineup-simulator{min-width:0;margin:0;padding:17px 8px 8px;border:1px solid #d9e1ec;border-radius:8px;background:linear-gradient(155deg,#fff 0%,#f7f9fc 100%)}.compare-lineup-simulators .lineup-builder-main{grid-template-columns:minmax(0,1fr) minmax(210px,.96fr);min-height:488px;gap:8px}.compare-lineup-simulators .lineup-builder-starters,.compare-lineup-simulators .lineup-builder-bench{padding:6px}.compare-lineup-simulators .lineup-builder-radar-wrap{min-height:194px}.compare-lineup-simulators .lineup-builder-radar{width:186px;height:186px}.compare-lineup-simulators .lineup-builder-starter-list{margin-top:7px;gap:3px}.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 42px minmax(0,1fr) 98px;min-height:61px;padding:3px 4px 3px 1px;gap:3px}.compare-lineup-simulators .lineup-builder-player--starter .photo-shell{width:40px;height:54px}.compare-lineup-simulators .lineup-builder-player--starter .photo-shell img{transform:translateY(4px) scale(1.43)}.compare-lineup-simulators .lineup-builder-player-topline>strong{font-size:.68rem}.compare-lineup-simulators .lineup-builder-player-copy>small{font-size:.52rem}.compare-lineup-simulators .lineup-builder-player-side{grid-template-rows:17px 1fr;gap:2px}.compare-lineup-simulators .lineup-builder-player-position-meta,.compare-lineup-simulators .lineup-builder-player-position-meta .position-icon{height:17px;min-height:17px;font-size:.45rem}.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{min-height:26px;padding:2px 1px}.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1rem}.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks small{font-size:.45rem}.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:38px minmax(0,1fr) 98px;min-height:49px;padding:3px 4px;gap:3px}.compare-lineup-simulators .lineup-builder-player--bench .photo-shell{width:37px;height:43px}.compare-lineup-simulators .lineup-builder-player--bench .photo-shell img{transform:translateY(3px) scale(1.35)}.compare-lineup-simulators .lineup-builder-bench-list{max-height:440px}.compare-lineup-simulators .lineup-builder-status{top:-18px;font-size:.51rem}.compare-lineup-simulators .lineup-builder-overall{top:5px;left:5px}.compare-lineup-simulators .lineup-builder-overall b{font-size:1.42rem}
@media(max-width:1120px){.compare-lineup-simulator-grid{grid-template-columns:1fr}.compare-lineup-simulators .lineup-builder-main{grid-template-columns:minmax(0,1fr) minmax(250px,.8fr)}}
@media(max-width:620px){.compare-lineup-simulator-grid{padding:8px;gap:8px}.compare-lineup-simulators .compare-lineup-simulator{padding:19px 5px 5px}.compare-lineup-simulators .lineup-builder-main{grid-template-columns:1fr;min-height:0}.compare-lineup-simulators .lineup-builder-bench{max-height:350px}.compare-lineup-simulators .lineup-builder-radar-wrap{min-height:177px}.compare-lineup-simulators .lineup-builder-radar{width:170px;height:170px}}
.standalone-ability-samples{display:grid;gap:16px;background:#eef2f7!important}.ability-samples-heading{padding:4px 2px}.ability-samples-heading h3{margin:0;font-size:1.35rem}.ability-samples-heading>p:last-child{margin:7px 0 0;color:#667085;font-size:.78rem;font-weight:400}.ability-sample-panel{overflow:hidden;border:1px solid #d8dee8;border-radius:8px;background:#fff;box-shadow:0 10px 25px rgba(23,32,51,.06)}.ability-sample-panel>header{display:flex;align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid #e1e6ed;background:linear-gradient(135deg,#fff,#f8fafc)}.ability-sample-panel>header>span{display:grid;place-items:center;width:42px;height:42px;border-radius:6px;background:#172033;color:#fff;font-size:.7rem;font-weight:900}.ability-sample-panel h4{margin:0;color:#172033;font-size:1rem}.ability-sample-panel header p{margin:3px 0 0;color:#687488;font-size:.68rem;font-weight:400}.ability-sample-matrix{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.ability-sample-matrix-group{min-width:0;padding:12px 13px;border-right:1px solid #e1e6ed}.ability-sample-matrix-group:last-child{border-right:0}.ability-sample-matrix-group>header{display:flex;align-items:center;gap:7px;margin-bottom:5px;padding-bottom:8px;border-bottom:2px solid #172033}.ability-sample-matrix-group>header span{color:#ad7912;font-size:.58rem;font-weight:900}.ability-sample-matrix-group>header strong{font-size:.72rem}.ability-sample-matrix-row{display:grid;grid-template-columns:minmax(72px,92px) minmax(48px,1fr) 24px;align-items:center;gap:7px;min-height:45px;border-bottom:1px solid #edf0f4}.ability-sample-matrix-row:last-child{border-bottom:0}.ability-sample-matrix-row>small{color:#4f5d72;font-size:.64rem;font-weight:650}.ability-sample-matrix-row>.ability-meter{width:100%;height:8px;margin:0}.ability-sample-matrix-row>b{font-family:Impact,"Arial Narrow",sans-serif;font-size:1.25rem;text-align:center}.ability-sample-features{display:flex;grid-column:1/-1;gap:3px;margin-top:-5px;padding:0 0 5px 99px}.ability-sample-features:empty{display:none}.ability-sample-features .ability-feature-tag{height:16px;padding:1px 5px;font-size:.46rem}.ability-sample-rails{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:8px 16px 14px}.ability-sample-rail-row{display:grid;grid-template-columns:minmax(125px,1fr) 32px minmax(90px,.8fr) minmax(70px,.7fr);align-items:center;gap:9px;min-height:56px;border-bottom:1px solid #e5e9ef}.ability-sample-rail-name{display:grid;color:#263249;font-size:.72rem;font-weight:750}.ability-sample-rail-name small{margin-top:3px;color:#7b8596;font-size:.55rem;font-weight:400}.ability-sample-rail-row>b{font-family:Impact,"Arial Narrow",sans-serif;font-size:1.65rem;text-align:center}.ability-sample-rail-meter>.ability-meter{width:100%;height:9px;margin:0}.ability-sample-rail-row>.ability-sample-features{grid-column:auto;margin:0;padding:0}.ability-sample-score-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px}.ability-sample-score-tile{display:grid;grid-template-rows:auto 9px 18px;gap:9px;min-width:0;min-height:104px;padding:12px;border:1px solid #dfe5ed;border-top:3px solid var(--rank-bottom,#667085);border-radius:7px;background:linear-gradient(160deg,#fff,#f7f9fc)}.ability-sample-score-tile header{display:flex;align-items:center;justify-content:space-between;gap:8px}.ability-sample-score-tile header small{color:#4e5c72;font-size:.68rem;font-weight:750}.ability-sample-score-tile header b{font-family:Impact,"Arial Narrow",sans-serif;font-size:2rem;line-height:1}.ability-sample-score-tile>.ability-meter{width:100%;height:9px;margin:0}.ability-sample-score-tile>.ability-sample-features{grid-column:auto;margin:0;padding:0}.ability-sample-no-feature{color:#a0a8b5;font-size:.48rem;font-weight:650;letter-spacing:.08em}.ability-sample-score-tile:has(.rank-letter-S){--rank-bottom:#c51468}.ability-sample-score-tile:has(.rank-letter-A){--rank-bottom:#b60f1c}.ability-sample-score-tile:has(.rank-letter-B){--rank-bottom:#b27600}.ability-sample-score-tile:has(.rank-letter-C){--rank-bottom:#087e39}.ability-sample-score-tile:has(.rank-letter-D){--rank-bottom:#1453a7}.ability-sample-score-tile:has(.rank-letter-E){--rank-bottom:#573194}.ability-sample-score-tile:has(.rank-letter-F){--rank-bottom:#515963}@media(max-width:900px){.ability-sample-matrix,.ability-sample-score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ability-sample-matrix-group:nth-child(2){border-right:0}.ability-sample-matrix-group:nth-child(-n+2){border-bottom:1px solid #e1e6ed}.ability-sample-rails{grid-template-columns:1fr}}@media(max-width:560px){.standalone-ability-samples{gap:12px}.ability-sample-panel>header{padding:11px 12px}.ability-sample-matrix{grid-template-columns:1fr}.ability-sample-matrix-group{border-right:0;border-bottom:1px solid #e1e6ed}.ability-sample-matrix-group:last-child{border-bottom:0}.ability-sample-score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px}.ability-sample-score-tile{min-height:96px;padding:9px}.ability-sample-rail-row{grid-template-columns:minmax(105px,1fr) 28px minmax(70px,.8fr);gap:6px}.ability-sample-rail-row>.ability-sample-features{grid-column:1/-1;padding:0 0 5px}.ability-sample-rails{padding:6px 11px 12px}}
@media(max-width:760px){.player-abilities>.ability-card{grid-template-rows:16px 29px 13px 17px;min-height:83px;padding:4px 6px}.ability-rank-area>.rank,.ability-rank-area .ability-rank-stack>.rank{font-size:1.65rem}.ability-icon-slot{height:17px;padding:2px 0 0}.ability-feature-tag{height:14px;padding:1px;font-size:.4rem}.ability-rank-area{padding-left:0}}

/* Last-season table: use the full panel height and keep values readable. */
.season-stat-analysis{display:flex;flex-direction:column}
.season-stat-analysis>.radar-title{flex:0 0 auto}
.season-stat-table{flex:1;grid-template-rows:repeat(10,minmax(0,1fr));min-height:0;margin-top:6px}
.season-stat-group{min-height:0;padding:6px 0;align-items:stretch}
.season-stat-group>b{display:flex;align-items:center;font-size:.75rem;line-height:1.25}
.season-stat-cells{align-items:stretch}
.season-stat-cell{align-content:center;padding:6px 7px}
.season-stat-cell>small{font-size:.64rem;line-height:1.25}
.season-stat-cell>div{align-items:center;margin-top:4px}
.season-stat-cell strong{font-size:.86rem;line-height:1.1}
.season-stat-cell em{display:flex;flex:0 0 auto;flex-direction:column;align-items:flex-end;justify-content:center;color:#175cd3;font-style:normal;line-height:1}
.season-stat-cell em small{color:#667085;font-size:.48rem;font-weight:400;line-height:1}
.season-stat-cell em b{margin-top:2px;font-size:.86rem;font-weight:700;line-height:1}
@media(max-width:1180px){.season-stat-table{grid-template-rows:none}.season-stat-group{min-height:62px}.season-stat-cell>small{font-size:.7rem}.season-stat-cell strong,.season-stat-cell em b{font-size:.92rem}}
.season-stat-cell>small{display:block;text-align:center}
.season-stat-cell>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px}
.season-stat-cell strong,.season-stat-cell em,.season-stat-cell em b{align-self:baseline;line-height:1}
.season-stat-cell em{color:#172033}
.season-stat-cell.is-top-three{background:#fff4c7}
.season-stat-cell.is-best{background:#f5cf58;box-shadow:inset 0 0 0 1px rgba(155,108,0,.18)}
.season-stat-cell.is-bottom-three{background:#ffe1df}
.season-stat-cell.is-worst{background:#ed8b84;box-shadow:inset 0 0 0 1px rgba(153,32,24,.18)}
/* Present each category as one compact table instead of three competing cards. */
.season-stat-table{gap:5px;padding-top:2px}
.season-stat-group{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:2px;padding:0;border:1px solid #e4e9f0;border-radius:6px;background:#fff;overflow:hidden}
.season-stat-group>b{display:flex;min-height:18px;align-items:center;padding:3px 7px;border-left:3px solid var(--team-accent,#667085);background:#edf1f5;color:#344054;font-size:.66rem;font-weight:700;line-height:1}
.season-stat-cells{gap:0;min-height:0;background:#fff}
.season-stat-cell{align-content:center;min-height:0;padding:4px 7px;border-right:1px solid #e7ebf1;border-radius:0;background:transparent}
.season-stat-cell:last-child{border-right:0}
.season-stat-cell>small{font-size:.58rem;line-height:1.15}
.season-stat-cell>div{grid-template-columns:minmax(0,1fr) minmax(28px,auto);gap:5px;margin-top:3px}
.season-stat-cell strong{font-size:.82rem;font-weight:800}
.season-stat-cell em{min-width:28px;padding-left:5px;border-left:1px solid #d8dee8;text-align:right}
.season-stat-cell em b{font-size:.78rem;font-weight:700}
.season-stat-cell.is-top-three{background:linear-gradient(135deg,#fffdf0 0%,#fff3c2 58%,#efd98a 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
.season-stat-cell.is-best{background:linear-gradient(135deg,#fff5bd 0%,#e8be45 52%,#b78318 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.season-stat-cell.is-bottom-three{background:#ffe5e2}
.season-stat-cell.is-worst{background:linear-gradient(135deg,#ffe0dc 0%,#df746b 55%,#b32d25 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
@media(max-width:1180px){.season-stat-group{min-height:68px}.season-stat-group>b{font-size:.7rem}.season-stat-cell>small{font-size:.66rem}.season-stat-cell strong{font-size:.94rem}.season-stat-cell em b{font-size:.88rem}}
/* Give the dense last-season data its own full-width comparison surface. */
@media(min-width:1181px){
  .radar-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .season-stat-analysis{grid-column:1/-1;padding:14px 16px 16px}
  .season-stat-table{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:9px;margin-top:8px}
  .season-stat-group{min-height:132px}
}

.not-found-page{width:min(680px,calc(100% - 32px));margin:12vh auto 0;padding:52px 36px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:center;box-shadow:var(--shadow)}
.not-found-page p{margin:0;color:var(--gold);font-size:.82rem;font-weight:900}
.not-found-page h1{margin:10px 0 14px;font-size:clamp(1.7rem,5vw,2.6rem);letter-spacing:0}
.not-found-page span{display:block;color:var(--muted);line-height:1.8}
.not-found-page a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin-top:24px;padding:0 18px;border-radius:6px;background:#172033;color:#fff;font-weight:800;text-decoration:none}
.site-policy-head{padding:30px;border-bottom:1px solid var(--line);background:#fff}
.site-policy-head h1{margin:0;font-size:clamp(2rem,5vw,3.2rem);letter-spacing:0}
.site-policy-head p:last-child{margin:12px 0 0;color:var(--muted);line-height:1.8}
.site-policy-body{display:grid;gap:0;padding:0 30px 28px;background:#fff}
.site-policy-body section{padding:24px 0;border-bottom:1px solid var(--line)}
.site-policy-body h2{margin:0 0 10px;font-size:1.08rem}
.site-policy-body p{max-width:980px;margin:0;color:#445066;line-height:1.9}
.site-policy-body a{color:#175cd3;font-weight:800}
.site-policy-updated{padding-top:20px!important;color:var(--muted)!important;font-size:.78rem}
@media(max-width:760px){.site-policy-head{padding:22px 18px}.site-policy-body{padding:0 18px 22px}.site-policy-body section{padding:20px 0}}

/* 5項目化後もシミュレーターの能力表示が重ならないよう、共通カードを再定義する。 */
.team-themed .starting-lineup-builder .lineup-builder-player-ranks{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:3px!important;
  align-items:stretch!important;
}
.team-themed .starting-lineup-builder .lineup-builder-player-ranks>span{
  display:grid!important;
  grid-template-rows:11px minmax(0,1fr)!important;
  place-items:center!important;
  min-width:0!important;
  padding:2px 1px!important;
  gap:0!important;
  background:#f2f5f9;
  border-radius:4px;
}
.team-themed .starting-lineup-builder .lineup-builder-player-ranks small{
  color:#66758a!important;
  font-size:.5rem!important;
  font-weight:700!important;
  line-height:1!important;
}
.team-themed .starting-lineup-builder .lineup-builder-player-ranks b{
  display:block!important;
  min-width:0!important;
  padding:0!important;
  background:linear-gradient(180deg,var(--rank-top,#667085),var(--rank-bottom,#344054))!important;
  background-clip:text!important;
  -webkit-background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif!important;
  font-size:1.1rem!important;
  font-weight:1000!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-shadow:0 1px 3px color-mix(in srgb,var(--rank-bottom,#344054) 12%,transparent)!important;
}
.team-themed .starting-lineup-builder .lineup-builder-player-ranks .team-grade-modifier{position:static!important;display:inline!important;margin-left:.03em!important;font-family:inherit!important;font-size:.5em!important;line-height:1!important;vertical-align:super!important}
@media(max-width:760px){
  .team-themed .starting-lineup-builder .lineup-builder-player-ranks{gap:2px!important}
  .team-themed .starting-lineup-builder .lineup-builder-player-ranks>span{grid-template-rows:10px minmax(0,1fr)!important;padding:2px 0!important}
  .team-themed .starting-lineup-builder .lineup-builder-player-ranks small{font-size:.45rem!important}
  .team-themed .starting-lineup-builder .lineup-builder-player-ranks b{font-size:.94rem!important}
}

/* 全チーム最終適用: チーム戦力分析と戦力シミュレーターを川崎基準に統一する。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder) .radar-column,
  .team-themed .radar-section:has(.starting-lineup-builder) .season-stat-analysis{height:873px!important}
  .team-themed .radar-section:has(.starting-lineup-builder) .grouped-team-analysis{display:flex;min-height:0;flex-direction:column}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-ability-grid{min-height:0;flex:1 1 auto}
  .team-themed .radar-section:has(.starting-lineup-builder) .grouped-team-analysis .team-group-card{height:calc(100% - 12px)!important}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-group-details{flex:0 0 276px;height:276px;grid-template-rows:repeat(6,41px);align-content:start;margin-top:3px}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-group-detail{min-height:25px}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-composition{margin-top:7px;padding-top:6px;transform:translateY(-7px)}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-units{grid-template-rows:repeat(2,24px);min-height:50px;height:50px;gap:2px}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-unit-power{height:24px}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(2,79.2px);gap:7px;min-height:165.4px;margin-top:7px;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated>.team-depth-balance-card,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated>.team-season-composition-card{width:100%;height:79.2px;min-height:79.2px;box-sizing:border-box;padding:9px 13px;border-color:#d8e0ea;background:linear-gradient(135deg,#fff,#f6f8fb);box-shadow:0 2px 7px rgba(27,38,58,.05)}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated header strong{font-size:.79rem}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-depth-balance-bars i,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-season-composition-bars i{font-size:.69rem;font-weight:900}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-depth-balance-ranks span,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-season-composition-count span{font-size:.79rem}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-depth-balance-ranks b{font-size:1.32rem}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-season-composition-count b{font-size:1.01rem}
  .starting-lineup-builder .lineup-builder-radar-wrap{min-height:260px;flex:1 1 auto}
  .starting-lineup-builder .lineup-builder-radar{width:250px;height:250px;transform:translateY(5%)}
  .starting-lineup-builder .lineup-builder-starter-list{grid-template-rows:repeat(5,84.4px);flex:0 0 auto;gap:3px;margin-top:auto}
  .starting-lineup-builder .lineup-builder-bench-list{grid-auto-rows:84.4px;align-content:start}
  .starting-lineup-builder .lineup-builder-player--starter,
  .starting-lineup-builder .lineup-builder-player--bench{height:84.4px;min-height:84.4px;max-height:84.4px}
  .starting-lineup-builder .lineup-builder-starters-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0 2px 5px;padding-bottom:5px;border-bottom:1px solid #e1e7ef}
  .starting-lineup-builder .lineup-builder-starters-head strong{color:#1b263a;font-size:.76rem}
  .starting-lineup-builder .lineup-builder-starters-head small{color:#778397;font-size:.55rem}
}

/* A+ uses a distinct pink-red tone across every team ability surface. */
.ranking-grade.rank-letter-A.team-rank-a-plus>strong{
  background:linear-gradient(180deg,#ff6f9f,#d9165d);
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
}
.starting-lineup-builder #lineupRankAPlus stop:first-child{stop-color:#ff6f9f}
.starting-lineup-builder #lineupRankAPlus stop:last-child{stop-color:#d9165d}

/* 全チーム共通: 六角形レーダーのランク書体をチーム戦力分析と統一する。 */
.team-themed .starting-lineup-builder .lineup-builder-radar text.lineup-builder-radar-axis-rank,
.team-themed .starting-lineup-builder .lineup-builder-overall b{
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif!important;
  font-weight:1000!important;
  letter-spacing:0!important;
}

/* 全チーム最終優先: レーダー周囲のランク・数値・総合表示を統一する。 */
.starting-lineup-builder .lineup-builder-radar-value{font-size:11px}
.starting-lineup-builder .lineup-builder-radar-axis-rank{font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:22px;font-weight:1000}
.starting-lineup-builder .lineup-builder-radar-axis-rank-letter{font-size:18px;font-weight:1000}
.starting-lineup-builder .lineup-builder-radar-axis-value{font-size:13px;font-weight:800;letter-spacing:0}
.starting-lineup-builder .lineup-builder-radar-label{fill:#26364d;font-size:9.6px;font-weight:600}
.starting-lineup-builder .lineup-builder-overall{top:2px;left:2px}

.arena-official-link{
  display:inline;
  align-items:center;
  margin-left:4px;
  color:var(--team-accent,#1f5fa8);
  font-size:inherit;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:3px;
}
.arena-official-link:hover,.arena-official-link:focus{
  color:#172033;
  text-decoration-thickness:2px;
}

/* Salary marks keep only their individual tiles; the group has no outer frame. */
.player--stacked-vitals .player-card-meta{align-items:center}
.player--uniform-meta-icons .player-card-meta>.number-icon,
.player--uniform-meta-icons .player-card-meta>.position-icon,
.player--uniform-meta-icons .player-card-meta>.salary-badge,
.player--uniform-meta-icons .player-card-meta>.slot-icon{
  box-sizing:border-box;
  height:21px;
  min-height:21px
}
.player--uniform-meta-icons .player-card-meta>.number-icon,
.player--uniform-meta-icons .player-card-meta>.slot-icon{width:21px}
.player--uniform-meta-icons .player-card-meta>.slot-icon.slot-icon--label{
  width:auto;
  min-width:52px;
  padding:0 7px
}
.player--uniform-meta-icons .player-card-meta>.money-icons{height:100%}
.player--uniform-meta-icons .player-card-meta>.salary-badge .money-icons i{
  width:15px;
  height:21px
}
.player--uniform-meta-icons .player-card-meta>.salary-badge,
.player--uniform-meta-icons .player-card-meta>.slot-icon{
  align-self:center;
  line-height:1
}
.player--uniform-meta-icons .player-card-meta>.salary-badge .money-icons{
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1
}
.player--uniform-meta-icons .player-card-meta>.salary-badge .money-icons i{
  display:grid;
  place-items:center;
  margin:0;
  padding:0;
  line-height:1
}
.player--stacked-vitals .player-card-body--meta{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  margin-left:3px;
  padding-left:8px;
  border-left:1px solid #d6dee8;
  color:#4b5a70;
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.025em;
  font-variant-numeric:tabular-nums;
  white-space:nowrap
}
@media(max-width:760px){
  .player--uniform-meta-icons .player-card-meta>.number-icon,
  .player--uniform-meta-icons .player-card-meta>.position-icon,
  .player--uniform-meta-icons .player-card-meta>.salary-badge,
  .player--uniform-meta-icons .player-card-meta>.slot-icon{
    height:18px;
    min-height:18px
  }
  .player--uniform-meta-icons .player-card-meta>.number-icon,
  .player--uniform-meta-icons .player-card-meta>.slot-icon{width:18px}
  .player--uniform-meta-icons .player-card-meta>.slot-icon.slot-icon--label{
    width:auto;
    min-width:47px;
    padding:0 6px
  }
  .player--stacked-vitals .player-card-body--meta{
    min-height:22px;
    margin-left:2px;
    padding-left:6px;
    font-size:.65rem
  }
}

/* 川崎確認用: 出場5カードを可変伸長させず、下端へ密着配置する。 */
@media(min-width:1181px){
  .team-themed .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-starter-list{
    display:grid;
    grid-template-rows:repeat(5,84.4px)!important;
    align-content:end!important;
    flex:0 0 434px!important;
    height:434px!important;
    min-height:434px!important;
    max-height:434px!important;
    gap:3px!important;
    margin-top:auto!important;
  }
  .team-themed .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-player--starter{
    height:84.4px!important;
    min-height:84.4px!important;
    max-height:84.4px!important;
  }
}

/* チーム比較のモバイル表示: 2チームをタブで切り替え、同じ位置で比較する。 */
.team-compare-select-heading{display:none}
@media(max-width:760px){
  body[data-page="teamCompare"] .team-compare-controls{
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:end;
    gap:8px;
    padding:12px;
    box-shadow:none;
  }
  body[data-page="teamCompare"] .team-compare-controls label{
    min-width:0;
    gap:5px;
    color:#596579;
    font-size:.64rem;
    font-weight:750;
  }
  body[data-page="teamCompare"] .team-compare-select-heading{
    display:block;
    grid-column:1/-1;
    color:#172033;
    font-size:.78rem;
    line-height:1.2;
  }
  body[data-page="teamCompare"] .team-compare-select-label{display:none}
  body[data-page="teamCompare"] .team-compare-controls select{
    min-width:0;
    min-height:42px;
    padding:0 27px 0 9px;
    border-color:#d6dde7;
    background-color:#fff;
    font-size:.9rem;
    font-weight:700;
  }
  body[data-page="teamCompare"] .team-compare-controls .versus{display:none}
  body[data-page="teamCompare"] .team-compare-mobile-tabs{
    position:sticky;
    top:var(--mobile-site-nav-height,95px);
    z-index:48;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    margin:0;
    padding:10px 12px 0;
    border-bottom:1px solid #bcc6d4;
    background:rgba(239,243,248,.96);
    box-shadow:0 8px 17px rgba(23,32,51,.12);
    backdrop-filter:blur(13px);
  }
  body[data-page="teamCompare"] .team-compare-mobile-tab{
    position:relative;
    display:grid;
    grid-template-columns:30px minmax(0,1fr);
    align-items:center;
    gap:7px;
    min-width:0;
    min-height:54px;
    margin-bottom:-1px;
    padding:9px 9px 10px;
    overflow:hidden;
    border:1px solid #cdd5e0;
    border-bottom-color:#bcc6d4;
    border-radius:7px 7px 0 0;
    background:linear-gradient(180deg,#e8edf3,#dfe5ed);
    color:#536076;
    cursor:pointer;
    text-align:left;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
    transition:background .18s,border-color .18s,box-shadow .18s,transform .18s,color .18s;
  }
  body[data-page="teamCompare"] .team-compare-mobile-tab::before{
    position:absolute;
    inset:0 0 auto;
    height:4px;
    background:var(--tab-accent);
    content:"";
    opacity:.42;
  }
  body[data-page="teamCompare"] .team-compare-mobile-tab::after{
    position:absolute;
    right:0;
    bottom:0;
    left:0;
    height:3px;
    background:#bcc6d4;
    content:"";
  }
  body[data-page="teamCompare"] .team-compare-mobile-tab>img{
    width:30px;
    height:30px;
    object-fit:contain;
    filter:saturate(.55);
    opacity:.72;
  }
  body[data-page="teamCompare"] .team-compare-mobile-tab>span{
    display:grid;
    min-width:0;
    gap:2px;
  }
  body[data-page="teamCompare"] .team-compare-mobile-tab small{
    color:#8792a3;
    font-size:.45rem;
    font-weight:850;
    letter-spacing:0;
  }
  body[data-page="teamCompare"] .team-compare-mobile-tab strong{
    overflow:hidden;
    font-size:.68rem;
    line-height:1.15;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body[data-page="teamCompare"] .team-compare-mobile-tab.is-active{
    z-index:1;
    border-color:color-mix(in srgb,var(--tab-accent) 58%,#aeb9c7);
    border-bottom-color:var(--tab-accent);
    background:linear-gradient(145deg,color-mix(in srgb,var(--tab-accent) 8%,#fff),#fff 66%);
    color:#172033;
    box-shadow:0 -3px 12px color-mix(in srgb,var(--tab-accent) 15%,transparent),0 4px 0 #fff;
    transform:translateY(-3px);
  }
  body[data-page="teamCompare"] .team-compare-mobile-tab.is-active::before{opacity:1}
  body[data-page="teamCompare"] .team-compare-mobile-tab.is-active::after{background:var(--tab-accent)}
  body[data-page="teamCompare"] .team-compare-mobile-tab.is-active>img{filter:none;opacity:1}
  body[data-page="teamCompare"] .compare-page{overflow:visible}
  body[data-page="teamCompare"] [data-team-compare-side]{display:none}
  body[data-page="teamCompare"] [data-team-compare-side].is-mobile-active{
    display:block;
    animation:team-compare-tab-in .22s ease-out both;
  }
  body[data-page="teamCompare"] .comparison-grid,
  body[data-page="teamCompare"] .compare-lineup-simulator-grid{grid-template-columns:minmax(0,1fr)}
  body[data-page="teamCompare"] .comparison-grid{
    padding-top:0;
    padding-bottom:0;
  }
  body[data-page="teamCompare"] .comparison-grid>.comparison-side{
    border-top:0;
    border-radius:0;
  }
  body[data-page="teamCompare"] .compare-lineups{
    margin:0 12px 12px;
    border-top:0;
    border-radius:0 0 8px 8px;
  }
}
@keyframes team-compare-tab-in{
  from{opacity:.35;transform:translateY(5px)}
  to{opacity:1;transform:translateY(0)}
}
@media(prefers-reduced-motion:reduce){
  body[data-page="teamCompare"] [data-team-compare-side].is-mobile-active{animation:none}
}

/* チーム比較専用: 個別ページ用のシミュレーター寸法を打ち消し、左右比較に収める。 */
.compare-lineup-simulators{min-width:0;overflow:hidden}
.compare-lineup-simulators .compare-lineup-simulator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;padding:12px;background:#edf1f6}
.compare-lineup-simulators .compare-lineup-simulator{position:relative;box-sizing:border-box;display:block;width:100%;min-width:0;margin:0;padding:10px 7px 7px;border:1px solid #d9e1ec;border-radius:8px;background:linear-gradient(155deg,#fff 0%,#f7f9fc 100%)}
.compare-lineup-simulators .lineup-builder-main{position:static;top:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:7px;min-width:0;min-height:0;margin:0}
.compare-lineup-simulators .lineup-builder-starters,.compare-lineup-simulators .lineup-builder-bench{min-width:0;padding:6px;border-radius:6px}
.compare-lineup-simulators .lineup-builder-radar-wrap{min-height:186px}
.compare-lineup-simulators .lineup-builder-radar{width:178px;height:178px}
.compare-lineup-simulators .lineup-builder-overall{top:4px;left:4px}
.compare-lineup-simulators .lineup-builder-overall b{font-size:1.38rem}
.compare-lineup-simulators .lineup-builder-starter-list{gap:3px;margin-top:6px}
.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 40px minmax(0,1fr) 94px;gap:3px;min-height:58px;padding:3px 4px 3px 1px}
.compare-lineup-simulators .lineup-builder-player--starter .photo-shell{width:38px;height:51px}
.compare-lineup-simulators .lineup-builder-player--starter .photo-shell img{transform:translateY(4px) scale(1.4)}
.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:36px minmax(0,1fr) 94px;gap:3px;min-height:47px;padding:3px 4px}
.compare-lineup-simulators .lineup-builder-player--bench .photo-shell{width:35px;height:41px}
.compare-lineup-simulators .lineup-builder-player--bench .photo-shell img{transform:translateY(3px) scale(1.3)}
.compare-lineup-simulators .lineup-builder-player-topline>strong{top:7px;right:50px;font-size:.66rem}
.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-topline>strong{left:54px}
.compare-lineup-simulators .lineup-builder-player--bench .lineup-builder-player-topline>strong{left:47px}
.compare-lineup-simulators .lineup-builder-player-copy>small,.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-copy>small{font-size:.5rem;transform:translateY(7px)}
.compare-lineup-simulators .lineup-builder-player-position-meta{top:5px;right:4px;height:16px}
.compare-lineup-simulators .lineup-builder-player-position-meta .position-icon,.compare-lineup-simulators .lineup-builder-player-position-meta .slot-icon.slot-icon--label{height:16px;min-height:16px;padding:0 3px;font-size:.42rem}
.compare-lineup-simulators .lineup-builder-player-side{grid-template-rows:16px 25px;gap:1px}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks{gap:2px;transform:translateY(2px)}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{min-height:24px;padding:2px 1px}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks small{font-size:.42rem}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:.94rem}
.compare-lineup-simulators .lineup-builder-bench-head{margin:1px 1px 5px;padding-bottom:5px}
.compare-lineup-simulators .lineup-builder-bench-head strong{font-size:.69rem}
.compare-lineup-simulators .lineup-builder-bench-head small{font-size:.48rem}
.compare-lineup-simulators .lineup-builder-bench-list{max-height:430px;min-height:0}
.compare-lineup-simulators .lineup-builder-status{position:static;max-width:none;margin:6px 1px 0;font-size:.5rem;text-align:right}
@media(max-width:1320px){.compare-lineup-simulators .compare-lineup-simulator-grid{grid-template-columns:1fr}.compare-lineup-simulators .lineup-builder-main{grid-template-columns:minmax(0,1fr) minmax(240px,.78fr)}}
@media(max-width:620px){.compare-lineup-simulators .compare-lineup-simulator-grid{gap:8px;padding:8px}.compare-lineup-simulators .compare-lineup-simulator{padding:8px 5px 5px}.compare-lineup-simulators .lineup-builder-main{grid-template-columns:1fr}.compare-lineup-simulators .lineup-builder-radar-wrap{min-height:172px}.compare-lineup-simulators .lineup-builder-radar{width:164px;height:164px}.compare-lineup-simulators .lineup-builder-bench{max-height:350px}.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 38px minmax(0,1fr) 91px;min-height:56px}.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:35px minmax(0,1fr) 91px}}

/* 比較画面では一つのチームを一列にまとめ、カードが4分割されないようにする。 */
.compare-lineup-simulators .compare-lineup-simulator-grid{align-items:start}
.compare-lineup-simulator-shell{min-width:0;overflow:hidden;border:1px solid #d9e1ec;border-radius:8px;background:#fff;box-shadow:0 5px 14px rgba(17,24,39,.05)}
.compare-lineup-simulator-shell>header{display:flex;align-items:center;gap:8px;min-height:52px;padding:7px 10px;border-bottom:1px solid #e0e6ee;background:linear-gradient(115deg,color-mix(in srgb,var(--team-accent) 9%,#fff),#fff 68%)}
.compare-lineup-simulator-shell>header img{width:37px;height:37px;object-fit:contain}
.compare-lineup-simulator-shell>header span{display:grid;min-width:0;gap:1px}.compare-lineup-simulator-shell>header small{color:#718096;font-size:.5rem;font-weight:700}.compare-lineup-simulator-shell>header strong{overflow:hidden;color:#1b263a;font-size:.78rem;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.compare-lineup-simulators .compare-lineup-simulator{border:0;border-radius:0;background:transparent}
.compare-lineup-simulators .lineup-builder-main{grid-template-columns:minmax(0,1fr);gap:7px}
.compare-lineup-simulators .lineup-builder-bench{max-height:365px}
.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:10px 46px minmax(0,1fr) 108px;min-height:62px;padding:3px 5px 3px 2px}.compare-lineup-simulators .lineup-builder-player--starter .photo-shell{width:43px;height:55px}.compare-lineup-simulators .lineup-builder-player--starter .photo-shell img{transform:translateY(4px) scale(1.43)}
.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:41px minmax(0,1fr) 108px;min-height:50px}.compare-lineup-simulators .lineup-builder-player--bench .photo-shell{width:39px;height:44px}
.compare-lineup-simulators .lineup-builder-player-topline>strong{right:58px;font-size:.71rem}.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-topline>strong{left:60px}.compare-lineup-simulators .lineup-builder-player--bench .lineup-builder-player-topline>strong{left:52px}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1.05rem}
@media(max-width:760px){.compare-lineup-simulators .compare-lineup-simulator-grid{grid-template-columns:1fr}.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 40px minmax(0,1fr) 96px;min-height:57px}.compare-lineup-simulators .lineup-builder-player--starter .photo-shell{width:38px;height:50px}.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:37px minmax(0,1fr) 96px}.compare-lineup-simulators .lineup-builder-player--bench .photo-shell{width:35px;height:41px}.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-topline>strong{left:53px}.compare-lineup-simulators .lineup-builder-player--bench .lineup-builder-player-topline>strong{left:47px}}
.salary-badge{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important
}

/* Standalone player profile hierarchy and mobile-safe long names. */
.standalone-player-profile{
  min-width:0
}
.standalone-player-team-row{
  display:flex;
  min-width:0;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 12px;
  margin-bottom:8px
}
.standalone-player-team-row .detail-kicker{
  min-width:0;
  margin:0;
  color:#667085;
  font-size:.78rem;
  font-weight:600
}
.standalone-player-team-row .player-badges{
  flex:0 0 auto;
  margin:0
}
.standalone-player-vitals{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:26px;
  padding:0 2px 0 4px;
  color:#3f4c62;
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;
  font-size:.83rem;
  font-weight:800;
  letter-spacing:.035em;
  font-variant-numeric:tabular-nums;
  white-space:nowrap
}
.standalone-player-vitals span{color:#536178}
.standalone-player-vitals b{
  display:inline-grid;
  place-items:center;
  min-width:31px;
  height:21px;
  padding:0 6px;
  border-left:1px solid #cbd5e1;
  color:#172033;
  font-size:.76rem;
  font-weight:1000;
  letter-spacing:.02em
}
.standalone-player-head--stacked-vitals .standalone-player-name{
  display:flex;
  align-items:baseline;
  gap:10px;
  min-height:38px
}
.standalone-player-head--stacked-vitals .standalone-player-name h1{margin:0}
.standalone-player-head--stacked-vitals .standalone-player-name .player-roman-name{
  color:#718096;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.02em
}
.standalone-player-team-row--after-name{
  margin:8px 0 0;
  min-height:28px
}
.standalone-player-vitals-row{
  display:flex;
  align-items:center;
  min-height:31px;
  margin-top:2px
}
.standalone-player-head--stacked-vitals .standalone-player-vitals{
  gap:10px;
  min-height:30px;
  padding-left:0;
  font-size:1rem;
  letter-spacing:.045em
}
.standalone-player-head--stacked-vitals .standalone-player-vitals b{
  display:inline;
  min-width:0;
  height:auto;
  padding:0 0 0 10px;
  border-left:1px solid #cbd5e1;
  color:#536178;
  font:inherit;
  letter-spacing:inherit
}
.standalone-player-name{
  overflow:visible;
  flex-wrap:wrap
}
.standalone-player-name h1{
  min-width:0;
  max-width:100%;
  overflow-wrap:normal;
  word-break:keep-all
}
.standalone-player-name.is-long h1{font-size:clamp(1.85rem,3.35vw,3.15rem)}
.standalone-player-name.is-very-long h1{font-size:clamp(1.65rem,3vw,2.8rem)}
.standalone-player-dimensions{
  margin:8px 0 0!important;
  color:#475467!important;
  font-size:.94rem;
  font-weight:500
}
.standalone-profile-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px 16px;
  margin-top:14px
}
.standalone-profile-facts span{
  min-width:0;
  overflow-wrap:anywhere
}
.standalone-player-awards{
  padding:0;
  border:0;
  background:transparent
}
.standalone-player-awards .award-history{
  margin:0;
  padding:13px 16px;
  border-top:1px solid #ead69d;
  border-bottom:1px solid #ead69d;
  background:linear-gradient(90deg,#fffdf6,#fff9e7 52%,#fffdf6)
}
@media(max-width:760px){
  .standalone-player-profile{
    min-width:0
  }
  .standalone-player-team-row{
    gap:5px 7px;
    margin-bottom:6px
  }
  .standalone-player-team-row .detail-kicker{
    font-size:clamp(.58rem,2.3vw,.7rem);
    line-height:1.35
  }
  .standalone-player-team-row .player-badges{
    gap:2px
  }
  .standalone-player-vitals{
    gap:5px;
    min-height:21px;
    padding-left:2px;
    font-size:.66rem;
    letter-spacing:.02em
  }
  .standalone-player-vitals b{
    min-width:25px;
    height:19px;
    padding:0 4px;
    font-size:.62rem
  }
  .standalone-player-head--stacked-vitals .standalone-player-name{
    display:block;
    min-height:0
  }
  .standalone-player-head--stacked-vitals .standalone-player-name .player-roman-name{
    display:block;
    margin-top:2px;
    font-size:.62rem
  }
  .standalone-player-team-row--after-name{margin-top:6px}
  .standalone-player-vitals-row{
    min-height:21px;
    margin-top:2px
  }
  .standalone-player-head--stacked-vitals .standalone-player-vitals{
    gap:7px;
    min-height:24px;
    font-size:.8rem
  }
  .standalone-player-head--stacked-vitals .standalone-player-vitals b{
    min-width:0;
    height:auto;
    padding:0 0 0 7px;
    font-size:inherit
  }
  .standalone-player-team-row .number-icon.large{
    width:27px;
    height:21px;
    font-size:.64rem
  }
  .standalone-player-team-row .position-icon,
  .standalone-player-team-row .slot-icon,
  .standalone-player-team-row .salary-badge{
    min-height:21px;
    height:21px
  }
  .standalone-player-name{
    display:block;
    margin-top:2px
  }
  .standalone-player-head h1{
    width:100%;
    font-size:clamp(1.25rem,6.2vw,1.8rem);
    line-height:1.14
  }
  .standalone-player-name .player-roman-name{
    display:block;
    margin-top:3px;
    font-size:.62rem;
    white-space:normal;
    overflow-wrap:anywhere
  }
  .standalone-player-dimensions{
    margin-top:6px!important;
    font-size:.76rem
  }
  .standalone-profile-facts{
    grid-template-columns:1fr;
    gap:4px;
    margin-top:10px;
    font-size:.65rem
  }
  .standalone-player-awards .award-history{
    padding:10px 11px
  }
}

/* Retired-player archive: searchable, but isolated from active roster calculations. */
.retired-player-head{
  grid-template-columns:180px minmax(0,1fr) 150px;
  align-items:center;
  background:linear-gradient(120deg,#f7f9fc,#fff 58%,#eef2f7)
}
.retired-player-head .photo-shell{border-color:#cad2de;background:#eef2f6}
.retired-status-badge{
  display:inline-grid;place-items:center;min-height:30px;padding:0 10px;border:1px solid #56657a;border-radius:5px;
  background:linear-gradient(145deg,#34445c,#172033);color:#fff;font-size:.7rem;font-weight:800
}
.retired-peak-rank{
  display:grid;justify-items:center;align-content:center;min-height:138px;padding:14px;border-left:1px solid #d9dfe8
}
.retired-peak-rank span{color:#5d6879;font-size:.72rem;font-weight:700}
.retired-peak-rank strong{font-family:Impact,"Arial Narrow",sans-serif;font-size:4.8rem;line-height:.95;color:#e61e72}
.retired-peak-rank small{margin-top:7px;color:#758094;font-size:.62rem;font-weight:500}
.retired-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px}
.retired-section-heading h3{margin:0}
.retired-section-heading>span{color:#6d7788;font-size:.7rem;font-weight:500}
.retired-career-summary{padding:18px;border:1px solid #d7dee8;border-radius:8px;background:linear-gradient(145deg,#f7f9fc,#fff)}
.retired-career-summary .detail-kicker{margin:0 0 3px;color:#7b5e1d;font-size:.62rem}
.retired-career-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid #dce2ea;border-radius:7px;overflow:hidden;background:#fff}
.retired-career-grid div{display:grid;grid-template-columns:auto auto;align-items:baseline;justify-content:center;gap:4px;padding:13px 8px;border-right:1px solid #e1e6ed;text-align:center}
.retired-career-grid div:last-child{border-right:0}
.retired-career-grid small{grid-column:1/-1;color:#687488;font-size:.62rem;font-weight:500}
.retired-career-grid strong{color:#172033;font-size:1.45rem;font-variant-numeric:tabular-nums}
.retired-career-grid span{color:#667085;font-size:.68rem}
.retired-minutes{margin:10px 0 0!important;color:#667085!important;font-size:.72rem!important;text-align:right}
.retired-source-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.retired-source-links a{padding:7px 9px;border:1px solid #d9dfe8;border-radius:5px;color:#40506a;font-size:.68rem;text-decoration:none;background:#f8fafc}
.retired-source-links a:hover{border-color:#ad7912;color:#7b5e1d;background:#fffaf0}
@media(max-width:900px){
  .retired-player-head{grid-template-columns:140px minmax(0,1fr)}
  .retired-player-head .retired-peak-rank{grid-column:1/-1;grid-template-columns:auto auto auto;gap:10px;min-height:66px;border-top:1px solid #d9dfe8;border-left:0}
  .retired-player-head .retired-peak-rank strong{font-size:3rem}
  .retired-career-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .retired-career-grid div:nth-child(3){border-right:0}.retired-career-grid div:nth-child(-n+3){border-bottom:1px solid #e1e6ed}
}
@media(max-width:560px){
  .retired-player-head{grid-template-columns:88px minmax(0,1fr);gap:12px}
  .retired-career-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .retired-career-grid div:nth-child(3){border-right:1px solid #e1e6ed}.retired-career-grid div:nth-child(even){border-right:0}.retired-career-grid div:nth-child(-n+4){border-bottom:1px solid #e1e6ed}
  .retired-section-heading{align-items:flex-start;flex-direction:column;gap:4px}
}

/* Roster view switch and all-team scout heatmap. */
.roster-section-title{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  padding-top:18px;
  padding-bottom:12px
}
.roster-section-title h2,.roster-section-title p{margin-bottom:0}
.roster-view-switch{
  display:inline-flex;
  flex:0 0 auto;
  gap:3px;
  padding:3px;
  border:1px solid #d6dee8;
  border-radius:7px;
  background:#f3f6f9
}
.roster-view-switch button{
  min-height:34px;
  border:0;
  border-radius:5px;
  padding:0 13px;
  background:transparent;
  color:#667085;
  font-size:.72rem;
  font-weight:800;
  cursor:pointer
}
.roster-view-switch button.active{
  background:linear-gradient(180deg,#2c374c,#172033);
  color:#fff;
  box-shadow:0 4px 10px rgba(23,32,51,.15)
}
.team-themed>#teamPlayersListMount{
  order:4;
  padding:0 22px 22px;
  background:color-mix(in srgb,var(--team-accent) 14%,#fff)
}
.roster-list-shell{
  max-height:min(72vh,820px);
  overflow:auto;
  border:1px solid #d8e0ea;
  border-radius:8px;
  background:#fff;
  scrollbar-color:#98a5b6 #edf1f5;
  overscroll-behavior:contain
}
.roster-list-table{
  width:1590px;
  min-width:1590px;
  table-layout:fixed;
  border-collapse:separate;
  border-spacing:0
}
.roster-list-table th,.roster-list-table td{
  border-right:1px solid #e3e8ef;
  border-bottom:1px solid #e3e8ef;
  text-align:center
}
.roster-list-table thead th{
  position:sticky;
  top:0;
  z-index:7;
  height:30px;
  background:#f6f8fb;
  color:#536178;
  font-size:.58rem;
  font-weight:900;
  box-shadow:0 1px 0 #d6dee9
}
.roster-list-table thead tr:last-child th{top:30px;height:34px}
.roster-list-table .roster-list-category{
  color:#fff;
  font-size:.65rem;
  letter-spacing:.04em;
  text-shadow:0 1px 2px rgba(0,0,0,.22);
  box-shadow:inset 0 1px rgba(255,255,255,.28),inset 0 -1px rgba(0,0,0,.18)
}
.roster-list-table .roster-list-category.shoot{
  border-left:7px solid #e9eef4;
  background:linear-gradient(118deg,#7f1237 0%,#c52b55 52%,#ef6680 100%)
}
.roster-list-table .roster-list-category.handling{background:linear-gradient(118deg,#07594f 0%,#128674 52%,#43b8a1 100%)}
.roster-list-table .roster-list-category.physical{background:linear-gradient(118deg,#694400 0%,#ae7709 52%,#e4b13d 100%)}
.roster-list-table .roster-list-category.technique{background:linear-gradient(118deg,#173e72 0%,#326baa 52%,#69a3d8 100%)}
.roster-list-table thead tr:last-child th:nth-child(-n+4){background:#fff5f7;color:#8e2943}
.roster-list-table thead tr:last-child th:nth-child(n+5):nth-child(-n+8){background:#f2faf8;color:#176f61}
.roster-list-table thead tr:last-child th:nth-child(n+9):nth-child(-n+12){background:#fff9ec;color:#815f14}
.roster-list-table thead tr:last-child th:nth-child(n+13){background:#f2f7fd;color:#315f96}
.roster-list-table thead tr:last-child th:nth-child(1),
.roster-list-table thead tr:last-child th:nth-child(5),
.roster-list-table thead tr:last-child th:nth-child(9),
.roster-list-table thead tr:last-child th:nth-child(13){border-left:7px solid #e9eef4}
.roster-list-table .roster-list-player-head{
  left:0;
  z-index:10;
  width:255px;
  min-width:255px;
  background:#f6f8fb;
  box-shadow:1px 0 #dbe2eb
}
.roster-list-table .roster-list-overall-head{
  width:58px;
  background:linear-gradient(135deg,#f6f4f6,#eadde2);
  color:#6f2940;
  box-shadow:inset 0 3px #8d2344,inset 0 -1px #d4c8cd
}
.roster-list-table .roster-list-trend-head{
  width:58px;
  background:linear-gradient(135deg,#f4f8f7,#dfeee9);
  color:#21664f;
  box-shadow:inset 0 3px #318266,inset 0 -1px #c6d9d2
}
.roster-list-table .roster-list-ability-head{width:65px;min-width:65px}
.roster-list-table .roster-list-position-head{
  width:78px;
  min-width:78px;
  border-left:7px solid #e9eef4;
  background:linear-gradient(135deg,#f4f7fb,#e7edf5);
  color:#40506a
}
.roster-list-table .roster-list-salary-head{
  width:126px;
  min-width:126px;
  background:linear-gradient(135deg,#fffaf0,#f5e8bb);
  color:#76550c
}
.roster-list-table tbody td{height:78px;background:#fff}
.roster-list-table tbody tr.roster-list-player-row:hover td{background:#fff8fa}
.roster-list-table tbody tr.roster-list-player-row>td:first-child{
  position:sticky;
  left:0;
  z-index:3;
  width:255px;
  min-width:255px;
  padding:6px 10px;
  background:#fff;
  text-align:left;
  box-shadow:1px 0 #dfe5ed
}
.roster-list-person{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  align-items:center;
  gap:9px;
  color:inherit;
  text-decoration:none
}
.roster-list-person .photo-shell{
  width:56px;
  height:66px;
  min-height:0;
  overflow:hidden;
  border:1px solid #dce3ec;
  border-radius:6px;
  background:repeating-linear-gradient(135deg,#edf1f6 0 7px,#fafbfd 7px 14px)
}
.roster-list-person .photo-shell img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 10%;
  transform:scale(1.25);
  transform-origin:50% 12%
}
.roster-list-person .photo-shell>span{font-size:.42rem}
.roster-list-person-copy{display:flex;min-width:0;flex-direction:column;justify-content:center}
.roster-list-name-row{
  display:flex;
  min-width:0;
  align-items:center;
  gap:5px
}
.roster-list-name-row .number-icon{
  flex:0 0 27px;
  width:27px;
  height:21px;
  min-height:21px
}
.roster-list-name-row strong{
  overflow:hidden;
  min-width:0;
  font-size:.88rem;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap
}
.roster-list-name-row.is-long strong{font-size:.77rem}
.roster-list-name-row.is-very-long strong{
  overflow-wrap:anywhere;
  font-size:.68rem;
  line-height:1;
  text-overflow:clip;
  white-space:normal
}
.roster-list-person-copy>small{
  overflow:hidden;
  margin-top:3px;
  color:#69758a;
  font-size:.6rem;
  font-weight:650;
  text-overflow:ellipsis;
  white-space:nowrap
}
.roster-list-position-cell,.roster-list-salary-cell{padding:4px;background:#fff!important}
.roster-list-position-cell{
  border-left:7px solid #e9eef4!important;
  background:linear-gradient(180deg,#fff,#f8fafc)!important
}
.roster-list-position-cell .position-icon{
  min-width:44px;
  height:24px;
  white-space:nowrap
}
.roster-list-salary-cell{background:linear-gradient(180deg,#fff,#fffdf8)!important}
.roster-list-salary-cell .salary-badge{height:24px;min-height:24px}
.roster-list-salary-cell .money-icons{justify-content:center}
.roster-list-shell--uniform-meta-icons .roster-list-name-row .number-icon,
.roster-list-shell--uniform-meta-icons .roster-list-position-cell .position-icon,
.roster-list-shell--uniform-meta-icons .roster-list-salary-cell .salary-badge{
  box-sizing:border-box;
  height:21px;
  min-height:21px
}
.roster-list-shell--uniform-meta-icons .roster-list-salary-cell .money-icons{height:100%}
.roster-list-shell--uniform-meta-icons .roster-list-salary-cell .money-icons i{
  width:15px;
  height:21px
}
.roster-list-shell--uniform-meta-icons .roster-list-salary-cell .salary-badge{
  align-self:center;
  line-height:1
}
.roster-list-shell--uniform-meta-icons .roster-list-salary-cell .money-icons{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  line-height:1
}
.roster-list-shell--uniform-meta-icons .roster-list-salary-cell .money-icons i{
  display:grid;
  place-items:center;
  margin:0;
  padding:0;
  line-height:1
}
@media(max-width:760px){
  .roster-list-shell--uniform-meta-icons .roster-list-name-row .number-icon,
  .roster-list-shell--uniform-meta-icons .roster-list-position-cell .position-icon,
  .roster-list-shell--uniform-meta-icons .roster-list-salary-cell .salary-badge{
    height:18px;
    min-height:18px
  }
  .roster-list-shell--uniform-meta-icons .roster-list-salary-cell .money-icons i{
    width:12px;
    height:18px
  }
}
.roster-list-overall{
  background:linear-gradient(180deg,#fff,#faf7f8)!important;
  box-shadow:inset 2px 0 #b46a80,inset -1px 0 #dfe5ed
}
.roster-list-overall>b{
  display:inline-block;
  font-size:1.62rem;
  font-weight:1000;
  line-height:1;
  filter:drop-shadow(0 2px 3px rgba(28,37,55,.1))
}
.roster-list-trend{background:linear-gradient(180deg,#fff,#f7faf9)!important}
.roster-list-trend .player-trend{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid #9fd7bf;
  border-radius:6px;
  background:linear-gradient(145deg,#f8fffb,#e2f4eb);
  color:#168d49;
  font-size:1.24rem;
  box-shadow:0 3px 8px rgba(23,64,48,.1)
}
.roster-list-trend .strong-up{border-color:#ef9ac5;background:linear-gradient(145deg,#fffafa,#fde5f0);color:#d81b75}
.roster-list-trend .up{border-color:#efadb8;background:linear-gradient(145deg,#fffafa,#fde5e9);color:#d7232d}
.roster-list-trend .flat,.roster-list-trend .young-down{color:#168d49}
.roster-list-trend .down{border-color:#aecbed;background:linear-gradient(145deg,#fbfdff,#e6f0fb);color:#246fca}
.roster-list-trend .strong-down{border-color:#c4ace8;background:linear-gradient(145deg,#fdfbff,#eee6fb);color:#7044bd}
.roster-list-rank-cell{background:#fff!important}
.roster-list-rank-cell>b{
  display:inline-block;
  font-family:"Arial Narrow","Avenir Next Condensed",Arial,sans-serif;
  font-size:1.35rem;
  font-weight:850;
  line-height:1;
  transform:scaleX(.9)
}
.roster-list-table b[class*="rank-letter-"]{
  background:linear-gradient(180deg,var(--roster-rank-top,#8792a1),var(--roster-rank-bottom,#4f5967));
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  text-shadow:0 2px 4px color-mix(in srgb,var(--roster-rank-bottom,#4f5967) 14%,transparent)
}
.roster-list-table .rank-letter-S{--roster-rank-top:#ff73b5;--roster-rank-bottom:#e31777}
.roster-list-table .rank-letter-A{--roster-rank-top:#ff606a;--roster-rank-bottom:#d51e31}
.roster-list-table .rank-letter-B{--roster-rank-top:#ffd34a;--roster-rank-bottom:#be7800}
.roster-list-table .rank-letter-C{--roster-rank-top:#54d57d;--roster-rank-bottom:#079044}
.roster-list-table .rank-letter-D{--roster-rank-top:#6bacff;--roster-rank-bottom:#1c62c3}
.roster-list-table .rank-letter-E{--roster-rank-top:#aa79eb;--roster-rank-bottom:#6940b3}
.roster-list-table .rank-letter-F{--roster-rank-top:#8792a1;--roster-rank-bottom:#4f5967}
.roster-list-table tbody tr.roster-list-player-row td:nth-child(4),
.roster-list-table tbody tr.roster-list-player-row td:nth-child(8),
.roster-list-table tbody tr.roster-list-player-row td:nth-child(12),
.roster-list-table tbody tr.roster-list-player-row td:nth-child(16){border-left:7px solid #e9eef4}
.roster-list-position-row td{
  position:static!important;
  height:34px!important;
  padding:0 12px!important;
  background:linear-gradient(90deg,#edf2f7,#fafbfd)!important;
  text-align:left!important;
  box-shadow:none!important
}
.roster-list-position-row strong{margin-right:9px;color:var(--team-accent);font-size:.82rem}
.roster-list-position-row span{color:#718096;font-size:.53rem;font-weight:800;letter-spacing:.08em}

/* Standalone player header: aligned photo, profile facts and upper-right evaluation. */
.standalone-player-breadcrumb{
  min-height:42px;
  margin:0;
  padding:10px 28px;
  border-bottom:1px solid #e4e8ef;
  background:#fff
}
body[data-page="player"] .standalone-player-head:not(.retired-player-head){
  grid-template-columns:160px minmax(0,1fr) 114px;
  align-items:stretch;
  gap:22px;
  min-height:226px
}
body[data-page="player"] .standalone-player-head:not(.retired-player-head)>.photo-shell{
  align-self:stretch;
  width:160px;
  height:auto;
  min-height:100%;
  aspect-ratio:auto
}
body[data-page="player"] .standalone-player-head:not(.retired-player-head)>.photo-shell img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 8%
}
body[data-page="player"] .standalone-player-profile{
  display:flex;
  min-height:100%;
  flex-direction:column
}
body[data-page="player"] .standalone-profile-facts{
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin-top:auto;
  padding-top:14px
}
.standalone-player-ratings{
  display:grid;
  grid-template-columns:repeat(2,55px);
  align-self:start;
  justify-self:end;
  gap:4px;
  transform:translateY(-5px)
}
.standalone-player-ratings .player-eval-card{margin:0}

@media(max-width:760px){
  .roster-section-title{align-items:center;padding:12px 12px 9px}
  .roster-section-title h2{font-size:1.15rem}
  .roster-section-title p{font-size:.58rem}
  .roster-view-switch button{min-height:32px;padding:0 9px;font-size:.65rem}
  .team-themed>#teamPlayersListMount{padding:0 0 14px}
  .roster-list-shell{max-height:calc(100vh - 122px);border-right:0;border-left:0;border-radius:0}
  .roster-list-table{width:1510px;min-width:1510px}
  .roster-list-table .roster-list-player-head,
  .roster-list-table tbody tr.roster-list-player-row>td:first-child{width:225px;min-width:225px}
  .roster-list-person{grid-template-columns:52px minmax(0,1fr)}
  .roster-list-person .photo-shell{width:52px;height:64px}
  body[data-page="player"] .standalone-player-head:not(.retired-player-head){
    position:relative;
    grid-template-columns:88px minmax(0,1fr);
    gap:12px;
    min-height:184px;
    padding:14px 12px
  }
  body[data-page="player"] .standalone-player-head:not(.retired-player-head)>.photo-shell{
    width:88px;
    min-height:184px
  }
  body[data-page="player"] .standalone-player-profile{padding-right:0}
  body[data-page="player"] .standalone-player-team-row{padding-right:112px}
  body[data-page="player"] .standalone-player-name{
    margin-top:15px;
    padding-right:0
  }
  body[data-page="player"] .standalone-player-name.is-long h1{font-size:clamp(1.12rem,5vw,1.42rem)}
  body[data-page="player"] .standalone-player-name.is-very-long h1{font-size:clamp(1rem,4.5vw,1.28rem)}
  body[data-page="player"] .standalone-player-ratings{
    position:absolute;
    top:9px;
    right:12px;
    grid-template-columns:repeat(2,49px);
    gap:3px;
    transform:none
  }
  body[data-page="player"] .standalone-profile-facts{
    grid-template-columns:1fr;
    margin-top:10px;
    padding-top:0
  }
  .standalone-player-breadcrumb{
    min-height:36px;
    padding:8px 12px;
    font-size:.64rem
  }
}

/* Use the full desktop roster width while giving long player names more room. */
@media(min-width:761px){
  .roster-list-table{
    width:100%;
    min-width:1510px
  }
  .roster-list-table .roster-list-player-head,
  .roster-list-table tbody tr.roster-list-player-row>td:first-child{
    width:280px;
    min-width:280px
  }
}

/* Compact all-team roster list with centered portraits and left-aligned salary marks. */
body[data-page="team"] .roster-list-table tbody td{
  height:60px
}
body[data-page="team"] .roster-list-table tbody tr.roster-list-player-row>td:first-child{
  padding-top:2px;
  padding-bottom:2px
}
body[data-page="team"] .roster-list-person{
  grid-template-columns:48px minmax(0,1fr);
  gap:7px
}
body[data-page="team"] .roster-list-person .photo-shell{
  width:48px;
  height:54px
}
body[data-page="team"] .roster-list-person .photo-shell img{
  object-position:50% 15%;
  transform:translateY(3px) scale(1.34);
  transform-origin:50% 12%
}
body[data-page="team"] .roster-list-person-copy>small{
  margin-top:2px
}
body[data-page="team"] .roster-list-position-cell,
body[data-page="team"] .roster-list-salary-cell{
  padding-top:2px;
  padding-bottom:2px
}
body[data-page="team"] .roster-list-salary-cell{
  padding-left:10px;
  text-align:left!important
}
body[data-page="team"] .roster-list-salary-cell .salary-badge,
body[data-page="team"] .roster-list-salary-cell .money-icons{
  justify-content:flex-start
}

/* Mobile player shot-map tabs keep the court and guide in one viewport area. */
.shot-map-mobile-tabs{display:none}
@media(max-width:760px){
  body[data-page="player"] .shot-map-mobile-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px;
    margin:0 0 12px;
    padding:3px;
    border:1px solid #d9e0ea;
    border-radius:6px;
    background:#edf1f6
  }
  body[data-page="player"] .shot-map-mobile-tabs button{
    min-height:36px;
    padding:0 8px;
    border:0;
    border-radius:4px;
    background:transparent;
    color:#667085;
    font:inherit;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:0;
    cursor:pointer
  }
  body[data-page="player"] .shot-map-mobile-tabs button.is-active{
    background:#172033;
    color:#fff;
    box-shadow:0 4px 10px rgba(23,32,51,.16)
  }
  body[data-page="player"] .shot-heatmap-section .zone-shot-layout{display:block}
  body[data-page="player"] .shot-heatmap-section .shot-map-mobile-panel{display:none}
  body[data-page="player"] .shot-heatmap-section .shot-map-mobile-panel.is-active{display:block}
  body[data-page="player"] .shot-heatmap-section .zone-shot-aside.shot-map-mobile-panel.is-active{
    display:grid;
    max-width:none
  }
}

/* Final standalone player hierarchy: profile first, evaluation beside abilities. */
body[data-page="player"] .standalone-player-head,
body[data-page="player"] .standalone-player-head:not(.retired-player-head),
body[data-page="player"] .retired-player-head{
  grid-template-columns:160px minmax(0,1fr);
  align-items:stretch;
  gap:22px
}
body[data-page="player"] .standalone-player-team-row{
  min-height:24px;
  padding-right:0
}
body[data-page="player"] .standalone-player-name,
body[data-page="player"] .standalone-player-name.is-long,
body[data-page="player"] .standalone-player-name.is-very-long{
  margin-top:8px
}
body[data-page="player"] .standalone-player-name h1,
body[data-page="player"] .standalone-player-name.is-long h1,
body[data-page="player"] .standalone-player-name.is-very-long h1{
  max-width:100%;
  font-size:clamp(1.45rem,2.15vw,2.05rem);
  line-height:1.12
}
.standalone-player-ability-heading{
  display:flex;
  min-height:64px;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px
}
.standalone-player-ability-heading h3{margin:0}
.standalone-player-ability-heading>div:first-child>span{
  display:block;
  margin-top:4px;
  color:#6d7788;
  font-size:.7rem;
  font-weight:500
}
body[data-page="player"] .standalone-player-ability-heading .standalone-player-ratings{
  position:static;
  top:auto;
  right:auto;
  grid-template-columns:repeat(2,55px);
  align-self:center;
  justify-self:auto;
  flex:0 0 auto;
  gap:5px;
  transform:none
}
.standalone-player-ability-heading .retired-peak-rank{
  min-height:62px;
  grid-template-columns:auto auto auto;
  align-items:center;
  gap:10px;
  padding:6px 10px;
  border:1px solid #d9dfe8;
  border-radius:6px
}
.standalone-player-ability-heading .retired-peak-rank strong{font-size:2.8rem}
.standalone-player-ability-heading .retired-peak-rank small{margin-top:0}
.player-editorial-references{display:none!important}
@media(max-width:760px){
  body[data-page="player"] .standalone-player-head,
  body[data-page="player"] .standalone-player-head:not(.retired-player-head),
  body[data-page="player"] .retired-player-head{
    grid-template-columns:88px minmax(0,1fr);
    gap:12px
  }
  body[data-page="player"] .standalone-player-team-row{
    min-height:21px;
    padding-right:0
  }
  body[data-page="player"] .standalone-player-name,
  body[data-page="player"] .standalone-player-name.is-long,
  body[data-page="player"] .standalone-player-name.is-very-long{
    margin-top:6px;
    padding-right:0
  }
  body[data-page="player"] .standalone-player-name h1,
  body[data-page="player"] .standalone-player-name.is-long h1,
  body[data-page="player"] .standalone-player-name.is-very-long h1{
    font-size:clamp(1.08rem,4.7vw,1.38rem);
    line-height:1.15
  }
  .standalone-player-ability-heading{
    min-height:58px;
    gap:8px;
    margin-bottom:9px
  }
  body[data-page="player"] .standalone-player-ability-heading .standalone-player-ratings{
    grid-template-columns:repeat(2,49px);
    gap:3px
  }
  .standalone-player-ability-heading .retired-peak-rank{
    grid-template-columns:auto auto;
    gap:5px;
    padding:5px 7px
  }
  .standalone-player-ability-heading .retired-peak-rank small{grid-column:1/-1}
  .standalone-player-ability-heading .retired-peak-rank strong{font-size:2.2rem}
}

/* Player profile polish: aligned salary marks, clear sections and compact mobile rails. */
body[data-page="player"] .standalone-player-team-row .salary-badge{
  height:24px;
  min-height:24px
}
body[data-page="player"] .standalone-player-team-row .money-icons i{
  width:18px;
  height:24px;
  font-size:.58rem
}
body[data-page="player"] .standalone-player-ability-section{
  margin-top:2px;
  padding-top:18px;
  border-top:1px solid #dfe4ec
}
@media(max-width:560px){
  body[data-page="player"] .standalone-player-team-row .salary-badge,
  body[data-page="player"] .standalone-player-team-row .number-icon,
  body[data-page="player"] .standalone-player-team-row .position-icon{
    height:22px;
    min-height:22px
  }
  body[data-page="player"] .standalone-player-team-row .money-icons i{
    width:16px;
    height:22px;
    font-size:.52rem
  }
  body[data-page="player"] .standalone-profile-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px 8px
  }
  body[data-page="player"] .standalone-profile-facts span:first-child{
    grid-column:1/-1
  }
  body[data-page="player"] .standalone-profile-facts span{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
  }
  body[data-page="player"] .standalone-player-ability-section{
    padding-top:14px
  }
  body[data-page="player"] .adopted-ability-rank-rails .ability-sample-rail-row{
    grid-template-columns:minmax(70px,1.2fr) 23px minmax(44px,.72fr);
    column-gap:4px
  }
  body[data-page="player"] .adopted-ability-rank-rails .ability-sample-rail-name{
    font-size:.64rem;
    white-space:nowrap
  }
}

/* Keep navigation responsive while detailed team ratings are calculated. */
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .number-icon.large,
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .position-icon,
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .salary-badge,
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .slot-icon{
  box-sizing:border-box;
  height:22px;
  min-height:22px
}
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .money-icons{height:100%}
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .money-icons i{
  width:17px;
  height:22px;
  font-size:.56rem
}
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .salary-badge,
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .slot-icon{
  align-self:center;
  line-height:1
}
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .slot-icon.slot-icon--label{
  width:auto;
  min-width:54px;
  padding:0 8px;
  white-space:nowrap
}
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .money-icons{
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1
}
body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .money-icons i{
  display:grid;
  place-items:center;
  margin:0;
  padding:0;
  line-height:1
}
@media(max-width:560px){
  body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .number-icon.large,
  body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .position-icon,
  body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .salary-badge,
  body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .slot-icon{
    height:19px;
    min-height:19px
  }
  body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .money-icons i{
    width:14px;
    height:19px;
    font-size:.5rem
  }
  body[data-page="player"] .standalone-player-head--uniform-meta-icons .standalone-player-team-row .slot-icon.slot-icon--label{
    min-width:48px;
    padding:0 6px
  }
}

.page-loading{min-height:180px;display:flex;align-items:center;justify-content:center;gap:12px;color:#64748b;font-size:14px;background:rgba(255,255,255,.72);border-top:1px solid #e2e8f0}
.page-loading span{width:18px;height:18px;border:2px solid #dbe3ee;border-top-color:var(--team-accent,#111827);border-radius:50%;animation:page-loading-spin .75s linear infinite}
.roster-loading{min-height:96px;display:flex;align-items:center;justify-content:center;color:#64748b;font-size:14px;background:rgba(255,255,255,.6);border-top:1px solid rgba(148,163,184,.25)}
.detail>#teamPlayersMount{order:4}
.team-themed>#teamPlayersMount{background:color-mix(in srgb,var(--team-accent) 14%,#fff)}
.players>.player{content-visibility:auto;contain-intrinsic-size:auto 560px}
.coaches>.coach-card{content-visibility:auto;contain-intrinsic-size:auto 360px}

/* Hokkaido sample: spotlight the HC; AC is a concise role, note, and career card. */
.coaches--hokkaido-sample{grid-template-columns:minmax(0,2fr) minmax(220px,1fr) minmax(0,1fr)}
.coaches--hokkaido-sample .coach-card--head{grid-template-columns:90px minmax(205px,1.2fr) minmax(0,1.8fr);grid-template-rows:auto auto auto;column-gap:10px}
.coaches--hokkaido-sample .coach-card--head .coach-photo{width:90px}
.coaches--hokkaido-sample .coach-photo img{transform:scale(1.3);transform-origin:50% 16%}
.coaches--hokkaido-sample .coach-card--head .coach-summary{min-height:0;padding-top:1px}
.coaches--hokkaido-sample .coach-card--head .coach-name-line{display:flex;flex-wrap:nowrap;align-items:baseline;gap:5px;margin:2px 0 4px;white-space:nowrap}
.coaches--hokkaido-sample .coach-card--head h3{font-size:1.1rem;line-height:1.25;white-space:nowrap}
.coaches--hokkaido-sample .coach-card--head .coach-roman,.coaches--hokkaido-sample .coach-card--head .coach-inline-age{display:inline-block;margin-top:0;white-space:nowrap}
.coaches--hokkaido-sample .coach-nationality{display:inline-block;color:#667085;font-size:.72rem;font-weight:700;white-space:nowrap}
.coach-operation-row{display:grid;grid-column:1/-1;grid-template-columns:minmax(112px,1.15fr) minmax(0,2.85fr);gap:6px;align-items:stretch;min-height:48px;margin-top:5px}
.coaches--hokkaido-sample .coach-card--head .coach-operation-row{grid-column:2/-1;grid-row:1;grid-template-columns:minmax(205px,1.2fr) minmax(0,1.8fr);height:68px;min-height:68px;max-height:68px;margin:52px 0 0;align-self:start}
.coaches--hokkaido-sample .coach-card--head .coach-note{grid-row:2}
.coaches--hokkaido-sample .coach-card--head .coach-career{grid-row:3}
.coach-compact-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
.coach-compact-metrics>span{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid #e1e7ef;border-radius:5px;background:#f7f9fc;padding:3px;text-align:center}
.coach-compact-metrics small{color:#667085;font-size:.54rem;font-weight:700;line-height:1;white-space:nowrap;text-align:center}
.coach-compact-metrics .rank{width:auto;height:auto;border:0;border-radius:0;background:linear-gradient(180deg,var(--rank-top,#667085),var(--rank-bottom,#344054))!important;background-clip:text!important;-webkit-background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;font-size:1.48rem;font-weight:1000;line-height:.9;box-shadow:none;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom,#344054) 18%,transparent)}
.coach-compact-metrics .rank-S{--rank-top:#ff77b9;--rank-bottom:#c51468}.coach-compact-metrics .rank-A{--rank-top:#ff5a62;--rank-bottom:#b60f1c}.coach-compact-metrics .rank-B{--rank-top:#ffd94f;--rank-bottom:#b27600}.coach-compact-metrics .rank-C{--rank-top:#45d67a;--rank-bottom:#087e39}.coach-compact-metrics .rank-D{--rank-top:#62adff;--rank-bottom:#1453a7}.coach-compact-metrics .rank-E{--rank-top:#a982ff;--rank-bottom:#573194}.coach-compact-metrics .rank-F{--rank-top:#aab2bd;--rank-bottom:#515963}
.coach-compact-decisions{display:grid;min-height:0;grid-template-rows:repeat(3,minmax(0,1fr));gap:3px;overflow:hidden}
.coach-compact-decisions .coach-style-line{min-height:0;grid-template-columns:34px repeat(3,minmax(0,1fr));gap:3px;height:100%;overflow:hidden}
.coach-compact-decisions .coach-style-line small{display:flex;min-height:0;align-items:center;justify-content:center;border:0;background:transparent;color:#667085;font-size:.58rem;font-weight:700;line-height:1;text-align:center}
.coach-compact-decisions .coach-style-chip{min-height:0;height:100%;padding:1px 3px;border-radius:3px;font-size:.6rem;font-weight:700;line-height:1}
.coaches--hokkaido-sample .coach-card--head .coach-career{height:116px;min-height:116px;max-height:116px;overflow-y:scroll;scrollbar-gutter:stable;padding-right:14px;scrollbar-width:thin;scrollbar-color:#8e9bab #e7ecf2;background:linear-gradient(#e7ecf2,#e7ecf2) calc(100% - 2px) 7px/5px calc(100% - 14px) no-repeat,linear-gradient(#8e9bab,#8e9bab) calc(100% - 2px) 11px/5px 52px no-repeat}
.coaches--hokkaido-sample .coach-career-heading{display:inline-block;margin-bottom:3px;color:#475467;font-size:.7rem;font-weight:800;letter-spacing:.02em}
.coach-career-scroll-hint{color:#98a2b3}
.coaches--hokkaido-sample .coach-card--head .coach-career::-webkit-scrollbar{width:9px}
.coaches--hokkaido-sample .coach-card--head .coach-career::-webkit-scrollbar-track{border-radius:999px;background:#e7ecf2}
.coaches--hokkaido-sample .coach-card--head .coach-career::-webkit-scrollbar-thumb{min-height:28px;border:2px solid #e7ecf2;border-radius:999px;background:#8e9bab}
.coaches--hokkaido-sample .coach-card--head .coach-career::-webkit-scrollbar-thumb:hover{background:#667085}
.coaches--hokkaido-sample .coach-card--assistant-brief{grid-template-columns:90px minmax(0,1fr);gap:8px}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-photo{display:block;width:90px;grid-column:1;grid-row:1}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-summary{display:flex;grid-column:2;grid-row:1;min-height:120px;height:120px;flex-direction:column}
.coach-assistant-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;min-height:48px;margin-top:auto}
.coach-assistant-metrics>span{display:flex;min-height:48px;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid #e1e7ef;border-radius:5px;background:#f7f9fc;padding:3px;text-align:center}
.coach-assistant-metrics small{color:#667085;font-size:.58rem;font-weight:700;line-height:1}
.coach-assistant-metrics .rank{width:auto;height:auto;border:0;border-radius:0;background:linear-gradient(180deg,var(--rank-top,#667085),var(--rank-bottom,#344054))!important;background-clip:text!important;-webkit-background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;font-size:1.3rem;font-weight:1000;line-height:.9;box-shadow:none}
.coach-assistant-metrics .rank-S{--rank-top:#ff77b9;--rank-bottom:#c51468}.coach-assistant-metrics .rank-A{--rank-top:#ff5a62;--rank-bottom:#b60f1c}.coach-assistant-metrics .rank-B{--rank-top:#ffd94f;--rank-bottom:#b27600}.coach-assistant-metrics .rank-C{--rank-top:#45d67a;--rank-bottom:#087e39}.coach-assistant-metrics .rank-D{--rank-top:#62adff;--rank-bottom:#1453a7}.coach-assistant-metrics .rank-E{--rank-top:#a982ff;--rank-bottom:#573194}.coach-assistant-metrics .rank-F{--rank-top:#aab2bd;--rank-bottom:#515963}
.coaches--hokkaido-sample .coach-assistant-profile-meta{display:flex;align-items:center;gap:8px;margin-top:2px;color:#667085;font-size:.7rem;font-weight:700;line-height:1.1}
.coaches--hokkaido-sample .coach-nationality--assistant{display:inline;margin:0;color:inherit;font-size:inherit;font-weight:inherit;line-height:inherit}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-note{grid-column:1/-1;grid-row:2}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-career{grid-column:1/-1;grid-row:3}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-career{height:116px;min-height:116px;max-height:116px;overflow-y:scroll;scrollbar-gutter:stable;padding-right:14px;scrollbar-width:thin;scrollbar-color:#8e9bab #e7ecf2;background:linear-gradient(#e7ecf2,#e7ecf2) calc(100% - 2px) 7px/5px calc(100% - 14px) no-repeat,linear-gradient(#8e9bab,#8e9bab) calc(100% - 2px) 11px/5px 52px no-repeat}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-career::-webkit-scrollbar{width:9px}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-career::-webkit-scrollbar-track{border-radius:999px;background:#e7ecf2}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-career::-webkit-scrollbar-thumb{min-height:24px;border:2px solid #e7ecf2;border-radius:999px;background:#8e9bab}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-career::-webkit-scrollbar-thumb:hover{background:#667085}
.coaches--gunma-head-adjustment .coach-card--assistant-brief{grid-template-rows:120px 96px 116px}
.coaches--gunma-head-adjustment .coach-card--assistant-brief .coach-note{min-height:96px}
.coaches--gunma-head-adjustment .coach-card--head{grid-template-rows:108px 86px auto}
.coaches--gunma-head-adjustment .coach-card--head .coach-photo,.coaches--gunma-head-adjustment .coach-card--assistant-brief .coach-photo{height:108px;aspect-ratio:auto}
.coaches--gunma-head-adjustment .coach-card--head .coach-summary{height:108px;min-height:108px}
.coaches--gunma-head-adjustment .coach-card--head .coach-note{min-height:86px}
.coaches--gunma-head-adjustment .coach-card--head .coach-career,.coaches--gunma-head-adjustment .coach-card--assistant-brief .coach-career{grid-row:3;margin-top:0;padding-top:9px;transform:none}
.coaches--gunma-head-adjustment .coach-card--head .coach-career{transform:translateY(-3px)}
.coaches--gunma-head-adjustment .coach-inline-age,.coaches--gunma-head-adjustment .coach-nationality,.coaches--gunma-head-adjustment .coach-assistant-profile-meta{font-weight:400}
.coaches--hokkaido-sample .coach-card--head{grid-template-rows:108px 86px auto}
.coaches--hokkaido-sample .coach-card--head .coach-photo,.coaches--hokkaido-sample .coach-card--assistant-brief .coach-photo{height:108px;aspect-ratio:auto}
.coaches--hokkaido-sample .coach-card--head .coach-summary,.coaches--hokkaido-sample .coach-card--assistant-brief .coach-summary{height:108px;min-height:108px}
.coaches--hokkaido-sample .coach-card--head .coach-operation-row{height:61px;min-height:61px;max-height:61px;margin-top:47px}
.coaches--hokkaido-sample .coach-card--head .coach-note{min-height:86px}
.coaches--hokkaido-sample .coach-card--head .coach-career,.coaches--hokkaido-sample .coach-card--assistant-brief .coach-career{grid-row:3;margin-top:0;padding-top:9px;transform:none}
.coaches--hokkaido-sample .coach-card--head .coach-career{height:104px;min-height:104px;max-height:104px;transform:translateY(-3px)}
.coaches--hokkaido-sample .coach-card--assistant-brief{height:100%;grid-template-rows:108px 86px minmax(104px,1fr)}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-note{min-height:86px;padding-top:5px}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-career{height:auto;min-height:104px;max-height:none;align-self:stretch}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-assistant-metrics{min-height:30px}
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-assistant-metrics>span{height:30px;min-height:30px;flex-direction:row;gap:5px;padding:1px 6px}
.coaches--hokkaido-sample .coach-inline-age,.coaches--hokkaido-sample .coach-nationality,.coaches--hokkaido-sample .coach-assistant-profile-meta{font-weight:400}
.coaches--gunma-head-adjustment .coach-card--head .coach-operation-row{height:61px;min-height:61px;max-height:61px;margin-top:47px}
.coaches--gunma-head-adjustment .coach-card--head .coach-career{height:104px;min-height:104px;max-height:104px}
.coaches--gunma-head-adjustment .coach-card--assistant-brief{height:100%;grid-template-rows:108px 86px minmax(104px,1fr)}
.coaches--gunma-head-adjustment .coach-card--assistant-brief .coach-summary{height:108px;min-height:108px}
.coaches--gunma-head-adjustment .coach-card--assistant-brief .coach-note{min-height:86px;padding-top:5px}
.coaches--gunma-head-adjustment .coach-card--assistant-brief .coach-career{height:auto;min-height:104px;max-height:none;align-self:stretch}
.coaches--gunma-head-adjustment .coach-card--assistant-brief .coach-assistant-metrics{min-height:30px}
.coaches--gunma-head-adjustment .coach-card--assistant-brief .coach-assistant-metrics>span{height:30px;min-height:30px;flex-direction:row;gap:5px;padding:1px 6px}
.coaches--hokkaido-normalized .coach-card--assistant-brief .coach-career{
  height:108px;
  min-height:108px;
  max-height:108px;
  align-self:auto;
  overflow-y:scroll
}
/* Keep the coaching section compact: biographies remain available by scroll. */
.coaches--hokkaido-sample .coach-card--head{grid-template-rows:108px 86px 78px}
.coaches--hokkaido-sample .coach-card--head .coach-career,
.coaches--hokkaido-sample .coach-card--assistant-brief .coach-career,
.coaches--hokkaido-sample.coaches--hokkaido-normalized .coach-card--assistant-brief .coach-career{
  height:78px;
  min-height:78px;
  max-height:78px;
  align-self:auto;
  overflow-y:scroll
}
.coaches--hokkaido-sample .coach-card--assistant-brief{grid-template-rows:108px 86px 78px}
.coaches--hokkaido-sample .coach-career-wrap{display:grid;grid-column:1/-1;grid-row:3;grid-template-rows:auto minmax(0,1fr);height:102px;min-height:102px;max-height:102px;align-self:auto;margin:-22px 0 -24px;padding-top:9px;border-top:1px solid #e5e9f0;overflow:hidden}
.coaches--hokkaido-sample .coach-career-wrap .coach-career-heading{display:flex;align-items:center;gap:6px;margin:0 0 5px;padding:0 0 5px;border-bottom:1px solid #dbe3ed;color:#253047;font-size:.76rem;font-weight:900;letter-spacing:.03em;line-height:1}
.coaches--hokkaido-sample .coach-career-wrap .coach-career-heading::before{width:3px;height:13px;border-radius:2px;background:linear-gradient(180deg,#b78318,#e4b04a);content:""}
.coaches--hokkaido-sample .coach-career-wrap .coach-career-scroll{min-height:0;overflow-y:scroll;scrollbar-gutter:stable;padding-right:14px;color:#667085;font-size:.68rem;font-weight:400;line-height:1.55;scrollbar-width:thin;scrollbar-color:#8e9bab #e7ecf2;background:linear-gradient(#e7ecf2,#e7ecf2) calc(100% - 2px) 3px/5px calc(100% - 6px) no-repeat,linear-gradient(#8e9bab,#8e9bab) calc(100% - 2px) 7px/5px 40px no-repeat}
.coaches--hokkaido-sample .coach-career-wrap .coach-career-scroll::-webkit-scrollbar{width:9px}.coaches--hokkaido-sample .coach-career-wrap .coach-career-scroll::-webkit-scrollbar-track{border-radius:999px;background:#e7ecf2}.coaches--hokkaido-sample .coach-career-wrap .coach-career-scroll::-webkit-scrollbar-thumb{min-height:24px;border:2px solid #e7ecf2;border-radius:999px;background:#8e9bab}

/* 公式にACが3名いるクラブは、HCを1段目・ACを2段目へ整然と配置する。 */
.coaches--hokkaido-sample.coaches--four-staff{grid-template-columns:repeat(3,minmax(0,1fr))}
.coaches--hokkaido-sample.coaches--four-staff .coach-card--head{grid-column:1/-1}
@media(max-width:760px){
}
@media(max-width:760px){
  .coaches--hokkaido-sample{grid-template-columns:1fr}
  .coaches--hokkaido-sample .coach-card--head{grid-template-columns:82px minmax(0,1fr)}
  .coaches--hokkaido-sample .coach-card--head .coach-photo{width:82px}
  .coaches--hokkaido-sample .coach-card--head .coach-operation-row{grid-column:1/-1;grid-row:2;margin-top:2px}
  .coaches--hokkaido-sample .coach-card--head .coach-operation-row{grid-template-columns:1fr}
  .coaches--hokkaido-sample .coach-card--head .coach-note{grid-row:3}
  .coaches--hokkaido-sample .coach-card--head .coach-career{grid-row:4}
  .coaches--hokkaido-sample .coach-card--head .coach-career{max-height:126px}
  .coaches--hokkaido-sample .coach-card--head .coach-career-wrap{grid-row:4}
}
@keyframes page-loading-spin{to{transform:rotate(360deg)}}
.season-stat-flat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(10,minmax(0,1fr));gap:0;border:1px solid #dce2ea;border-radius:7px;background:#fff;overflow:hidden}
.season-stat-flat>.season-stat-cell{min-height:48px;border-right:1px solid #e5e9ef;border-bottom:1px solid #e5e9ef}
.season-stat-flat>.season-stat-cell:nth-child(3n){border-right:0}
.season-stat-flat>.season-stat-cell:nth-last-child(-n+3){border-bottom:0}
@media(max-width:760px){
  .season-stat-flat{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}
  .season-stat-flat>.season-stat-cell:nth-child(3n){border-right:1px solid #e5e9ef}
  .season-stat-flat>.season-stat-cell:nth-child(2n){border-right:0}
  .season-stat-flat>.season-stat-cell:nth-last-child(-n+3){border-bottom:1px solid #e5e9ef}
  .season-stat-flat>.season-stat-cell:nth-last-child(-n+2){border-bottom:0}
}
.season-stat-analysis{height:auto;align-self:start}
.season-stat-flat{flex:none;grid-template-rows:repeat(10,36px)}
.season-stat-flat>.season-stat-cell{min-height:36px;padding:3px 7px}
.season-stat-flat>.season-stat-cell>small{font-size:.62rem;line-height:1.05}
.season-stat-flat>.season-stat-cell>div{gap:5px}
.season-stat-flat>.season-stat-cell strong{font-size:.82rem}
.season-stat-flat>.season-stat-cell em{padding-left:6px}
.season-stat-flat>.season-stat-cell em b{font-size:.76rem}
@media(max-width:760px){
  .season-stat-flat{grid-template-rows:none}
  .season-stat-flat>.season-stat-cell{min-height:40px}
}
.season-stat-analysis>.radar-title{margin-bottom:2px;padding-bottom:8px;border-bottom:1px solid #e5e9ef}
.season-stat-analysis>.radar-title h3{font-size:1.02rem}
.season-stat-group{display:flex;flex-direction:column;border-color:#dce2ea;background:#fff;box-shadow:0 3px 10px rgba(23,32,51,.045)}
.season-stat-group>b{flex:0 0 auto;min-height:28px;padding:6px 9px;border-left:0;border-bottom:1px solid #dfe5ed;background:#e9eef4;color:#172033;font-size:.75rem}
.season-stat-cells{display:grid;flex:1;grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(0,1fr))}
.season-stat-cell{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 9px;border-right:0;border-bottom:1px solid #e8ecf2}
.season-stat-cell:last-child{border-bottom:0}
.season-stat-cell>small{overflow:visible;color:#596579;font-size:.68rem;text-align:left;text-overflow:clip;white-space:normal}
.season-stat-cell>div{display:grid;grid-template-columns:minmax(46px,auto) minmax(32px,auto);align-items:baseline;gap:8px;margin:0}
.season-stat-cell strong{font-size:.9rem;text-align:right}
.season-stat-cell em{min-width:34px;padding-left:8px}
.season-stat-cell em b{font-size:.82rem}
@media(max-width:1180px){
  .season-stat-analysis{grid-column:auto}
  .season-stat-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .season-stat-group{min-height:138px}
}
@media(max-width:620px){
  .season-stat-table{grid-template-columns:1fr}
  .season-stat-group{min-height:132px}
}



.season-stat-group{min-height:104px}
.season-stat-group>b{display:none}
.season-stat-cells{height:100%}
@media(max-width:1180px){.season-stat-group{min-height:112px}}
.radar-average-area{fill:rgba(47,128,237,.08);stroke:#2f80ed;stroke-width:2.5;stroke-dasharray:8 6;stroke-linejoin:round}
.radar-legend .average i{height:0;border-top:2px dashed #2f80ed;background:transparent}
@media(min-width:1181px){
  .radar-section{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)}
  .season-stat-analysis{grid-column:auto}
  .season-stat-table{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));gap:8px}
  .season-stat-group{min-height:104px}
}
/* Keep the portrait and the three-line player summary on one shared baseline. */
.player{grid-template-rows:minmax(154px,auto) auto auto auto}
.player-main{height:auto;min-height:154px}
.player>.photo-shell{align-self:stretch;width:96px;height:100%;min-height:154px;aspect-ratio:auto}
.player>.photo-shell img{height:100%;object-fit:cover;object-position:50% 8%;transform:scale(1.17);transform-origin:50% 12%}
.player-card-comment p{display:block;overflow:visible;-webkit-line-clamp:unset;line-clamp:unset}
@media(max-width:760px){
  .player{grid-template-rows:minmax(134px,auto) auto auto auto}
  .player-main{height:auto;min-height:134px}
  .player>.photo-shell{width:78px;height:100%;min-height:134px}
  .player-card-comment p{-webkit-line-clamp:unset;line-clamp:unset}
}
/* Enlarge the 2026-27 radar while keeping the position-depth summary compact. */
.radar-column{grid-template-rows:auto auto}
.radar-column .radar{width:100%;max-width:500px}
.radar-label{font-size:16px;font-weight:800}
.radar-score{font-size:21px;font-weight:1000}
.radar-point{r:5px}
.radar-column .position-coverage{padding:7px 10px}
.radar-column .position-coverage h3{margin-bottom:3px;font-size:.8rem}
.radar-column .position-grid{height:auto;gap:2px}
.radar-column .pos-card{min-height:30px;padding:3px 7px}
.radar-column .pos-card strong{font-size:.67rem;line-height:1}
.radar-column .pos-card strong b{font-size:.76rem}
.radar-column .pos-bar{height:4px;margin-top:2px}
.radar-column .pos-card small{margin-top:1px;font-size:.52rem;line-height:1}
@media(max-width:760px){
  .radar-label{font-size:14px}
  .radar-score{font-size:18px}
  .radar-column .radar{max-width:100%}
}
/* Balance the radar scale and align both analysis columns on one baseline. */
.radar-section{align-items:stretch}
.radar-column{height:100%}
.radar-column .radar{max-width:445px}
.radar-label{font-size:14px}
.radar-score{font-size:18px}
.season-stat-analysis{height:100%;align-self:stretch}
@media(min-width:1181px){
  .radar-column{grid-template-rows:minmax(0,1fr) auto}
  .radar-column>.radar-panel{height:100%}
  .radar-column .position-coverage{min-height:142px}
}
@media(max-width:760px){
  .radar-label{font-size:12px}
  .radar-score{font-size:16px}
}
/* Fill the full stats panel instead of leaving unused space below the grid. */
@media(min-width:1181px){
  .season-stat-analysis{display:flex;flex-direction:column}
  .season-stat-analysis .season-stat-table{flex:1;min-height:0;grid-template-rows:repeat(5,minmax(0,1fr))}
  .season-stat-analysis .season-stat-group{height:100%;min-height:0}
  .season-stat-analysis .season-stat-cells{grid-template-rows:repeat(3,minmax(0,1fr))}
}
/* Refined radar strokes and ability-style rank badges. */
.radar-grid-line{stroke:#dfe4ec;stroke-width:.65}
.radar-axis{stroke:#e2e7ef;stroke-width:.65}
.radar-area{fill:rgba(184,138,44,.14);stroke:#b88a2c;stroke-width:1.65;stroke-linejoin:round}
.radar-average-area{fill:rgba(47,128,237,.035);stroke:#2f80ed;stroke-width:1.25;stroke-dasharray:5 5;stroke-linejoin:round}
.radar-point{r:3.25px;fill:#172033;stroke:#fff;stroke-width:1.25}
.radar-score{font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;font-size:18px;font-weight:1000;paint-order:stroke;stroke:rgba(255,255,255,.82);stroke-width:1.4px;stroke-linejoin:round}
.radar-score.rank-text-S{fill:url(#radar-rank-S)}
.radar-score.rank-text-A{fill:url(#radar-rank-A)}
.radar-score.rank-text-B{fill:url(#radar-rank-B)}
.radar-score.rank-text-C{fill:url(#radar-rank-C)}
.radar-score.rank-text-D{fill:url(#radar-rank-D)}
.radar-score.rank-text-E{fill:url(#radar-rank-E)}
.radar-score.rank-text-F{fill:url(#radar-rank-F)}
.radar-legend i{height:2px}
.radar-legend .average i{border-top-width:1px}
/* Keep every last-season stat cell on the same width and inner rhythm. */
.season-stat-flat{grid-template-columns:repeat(3,minmax(0,1fr))}
.season-stat-flat>.season-stat-cell{width:100%;min-width:0;grid-template-columns:minmax(0,1fr) 92px}
.season-stat-flat>.season-stat-cell>small{min-width:0}
.season-stat-flat>.season-stat-cell>div{width:92px;grid-template-columns:minmax(0,1fr) 36px}
/* Compact five-column vertical position coverage chart. */
.radar-column .vertical-position-coverage{min-height:0;padding:8px 10px 9px}
.radar-column .vertical-position-coverage .position-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;height:124px}
.radar-column .vertical-position-coverage .pos-card{display:grid;grid-template-rows:18px minmax(0,1fr) 23px;align-items:stretch;min-width:0;min-height:0;padding:5px 6px;background:linear-gradient(180deg,#fff,#f7f9fc)}
.radar-column .vertical-position-coverage .pos-card strong{display:block;font-size:.72rem;line-height:18px;text-align:center}
.radar-column .vertical-position-coverage .pos-bar{position:relative;align-self:stretch;width:24px;height:auto;min-height:52px;margin:0 auto;border-radius:4px;background:#e8edf5;overflow:hidden}
.radar-column .vertical-position-coverage .pos-bar i{position:absolute;inset:auto 0 0;width:100%;height:var(--coverage,0);border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,color-mix(in srgb,var(--team-accent) 62%,#fff),var(--team-accent))}
.radar-column .vertical-position-coverage .pos-card small{display:flex;align-items:end;justify-content:center;gap:4px;margin:0;font-size:.55rem;line-height:1;white-space:nowrap}
.radar-column .vertical-position-coverage .pos-card small b{color:#172033;font-size:.65rem}
.radar-column .vertical-position-coverage .pos-card small span{color:#667085}
.radar-column .vertical-position-coverage .pos-card.thin .pos-bar i{background:linear-gradient(180deg,#f8bbb5,#df746b)}
.radar-column .vertical-position-coverage .pos-card.thick .pos-bar i{background:linear-gradient(180deg,#9edaf5,#3198d4)}
@media(max-width:760px){
  .season-stat-flat>.season-stat-cell{grid-template-columns:minmax(0,1fr) 84px}
  .season-stat-flat>.season-stat-cell>div{width:84px}
  .radar-column .vertical-position-coverage .position-grid{grid-template-columns:repeat(5,minmax(0,1fr));height:116px}
}
/* Stable final layout: 30 stats = 3 equal columns x 10 equal rows. */
@media(min-width:1181px){
  .season-stat-analysis .season-stat-table.season-stat-flat{display:grid;flex:1;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(10,minmax(0,1fr));grid-auto-flow:row;grid-auto-rows:minmax(0,1fr);gap:0;width:100%;min-height:0}
  .season-stat-analysis .season-stat-table.season-stat-flat>.season-stat-cell{height:auto;min-height:0}
}
.radar-column .position-coverage.vertical-position-coverage{display:block;height:auto;min-height:0;padding:8px 10px 9px}
.radar-column .position-coverage.vertical-position-coverage .position-grid{display:grid;height:124px;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:1fr;gap:7px}
.radar-column .position-coverage.vertical-position-coverage .pos-card{display:grid;height:124px;min-width:0;min-height:0;grid-template-rows:18px 76px 20px;align-content:start;padding:4px 6px}
.radar-column .position-coverage.vertical-position-coverage .pos-bar{display:block;align-self:stretch;width:24px;height:76px;min-height:0;margin:0 auto}
.radar-column .position-coverage.vertical-position-coverage .pos-card small{display:flex;height:20px;align-items:center;justify-content:center;margin:0}
@media(max-width:760px){
  .radar-column .position-coverage.vertical-position-coverage .position-grid{height:112px;gap:4px}
  .radar-column .position-coverage.vertical-position-coverage .pos-card{height:112px;grid-template-rows:18px 64px 20px;padding:4px}
  .radar-column .position-coverage.vertical-position-coverage .pos-bar{height:64px}
}
/* Position coverage reading order: status, count bar, position name. */
.radar-column .position-coverage.vertical-position-coverage .pos-card{grid-template-rows:18px 76px 20px}
.radar-column .position-coverage.vertical-position-coverage .pos-status{display:flex;height:18px;align-items:center;justify-content:center;margin:0;color:#667085;font-size:.57rem;line-height:1}
.radar-column .position-coverage.vertical-position-coverage .pos-bar{position:relative}
.radar-column .position-coverage.vertical-position-coverage .pos-count{position:absolute;left:50%;bottom:5px;z-index:2;display:flex;min-width:23px;height:17px;align-items:center;justify-content:center;padding:0;transform:translateX(-50%);border-radius:0;background:transparent;color:#172033;font-size:.59rem;font-weight:800;line-height:1;white-space:nowrap;text-shadow:0 1px 0 rgba(255,255,255,.95),1px 0 0 rgba(255,255,255,.85),-1px 0 0 rgba(255,255,255,.85)}
.radar-column .position-coverage.vertical-position-coverage .pos-name{display:flex;height:20px;align-items:end;justify-content:center;color:#172033;font-size:.72rem;line-height:1}
@media(max-width:760px){
  .radar-column .position-coverage.vertical-position-coverage .pos-card{grid-template-rows:18px 64px 20px}
  .radar-column .position-coverage.vertical-position-coverage .pos-count{bottom:4px}
}
/* Short definitions beneath each last-season stat label. */
.season-stat-label{display:grid;min-width:0;gap:2px;align-content:center}
.season-stat-label>b{overflow:visible;color:#344054;font-size:.68rem;font-weight:700;line-height:1.12;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
.season-stat-label>small{display:block;overflow:visible;color:#697386;font-size:.54rem;font-weight:400;line-height:1.2;white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:unset;line-clamp:unset}
@media(max-width:1180px){
  .season-stat-label>b{font-size:.74rem}
  .season-stat-label>small{font-size:.59rem}
}
/* Main/sub position stacks; status colors affect only the border and text. */
.radar-column .position-coverage.vertical-position-coverage{position:relative}
.radar-column .position-coverage.vertical-position-coverage .position-role-legend{position:absolute;top:8px;right:10px;display:flex;align-items:center;gap:4px;color:#667085;font-size:.5rem;font-weight:400}
.radar-column .position-coverage.vertical-position-coverage .position-role-legend i{display:inline-block;width:7px;height:7px;border-radius:2px;background:linear-gradient(145deg,color-mix(in srgb,var(--team-accent) 54%,#fff),var(--team-accent))}
.radar-column .position-coverage.vertical-position-coverage .position-role-legend i:nth-of-type(2){background:linear-gradient(145deg,color-mix(in srgb,var(--team-accent) 16%,#fff),color-mix(in srgb,var(--team-accent) 50%,#fff))}
.radar-column .position-coverage.vertical-position-coverage .pos-card,.radar-column .position-coverage.vertical-position-coverage .pos-card.thin,.radar-column .position-coverage.vertical-position-coverage .pos-card.thick{background:linear-gradient(180deg,#fff,#f7f9fc)!important}
.radar-column .position-coverage.vertical-position-coverage .pos-card.thin{border-color:#e58b83}
.radar-column .position-coverage.vertical-position-coverage .pos-card.thick{border-color:#55a8d8}
.radar-column .position-coverage.vertical-position-coverage .pos-card.thin .pos-status{color:#c53b32;font-weight:700}
.radar-column .position-coverage.vertical-position-coverage .pos-card.thick .pos-status{color:#1677ad;font-weight:700}
.radar-column .position-coverage.vertical-position-coverage .pos-card:not(.thin):not(.thick) .pos-status{color:#667085;font-weight:500}
.radar-column .position-coverage.vertical-position-coverage .pos-bar i.pos-main{position:absolute;inset:auto 0 0;width:100%;height:var(--main);border-radius:3px 3px 2px 2px;background:linear-gradient(165deg,color-mix(in srgb,var(--team-accent) 48%,#fff) 0%,var(--team-accent) 55%,color-mix(in srgb,var(--team-accent) 88%,#111827) 100%)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.92),inset 2px 0 0 rgba(255,255,255,.18)}
.radar-column .position-coverage.vertical-position-coverage .pos-bar i.pos-sub{position:absolute;right:0;bottom:var(--main);left:0;width:100%;height:var(--sub);border-radius:3px 3px 0 0;background:linear-gradient(165deg,color-mix(in srgb,var(--team-accent) 12%,#fff) 0%,color-mix(in srgb,var(--team-accent) 38%,#fff) 52%,color-mix(in srgb,var(--team-accent) 62%,#fff) 100%)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.96),inset 2px 0 0 rgba(255,255,255,.28)}
.radar-column .position-coverage.vertical-position-coverage .pos-segment-count{position:absolute;left:50%;z-index:3;display:block;min-width:20px;transform:translate(-50%,50%);font-size:.54rem;font-weight:800;line-height:1;text-align:center;white-space:nowrap;pointer-events:none}
.radar-column .position-coverage.vertical-position-coverage .pos-main-count{bottom:var(--center);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.65)}
.radar-column .position-coverage.vertical-position-coverage .pos-sub-count{bottom:var(--center);color:#172033;text-shadow:0 1px 0 rgba(255,255,255,.9)}
/* Join main and sub segments without a rounded or anti-aliased seam. */
.radar-column .position-coverage.vertical-position-coverage .pos-bar i.pos-main{border-radius:4px}
.radar-column .position-coverage.vertical-position-coverage .pos-bar.has-sub i.pos-main{border-radius:0 0 4px 4px}
.radar-column .position-coverage.vertical-position-coverage .pos-bar i.pos-sub{bottom:calc(var(--main) - 1px);height:calc(var(--sub) + 1px);border-radius:4px 4px 0 0}

/* Team strength uses the same rank language as player abilities. */
.team-ability-panel{display:flex;flex-direction:column;min-height:0}
.team-ability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:7px}
.team-ability-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 34px;grid-template-rows:30px 13px;gap:4px 8px;align-items:center;min-width:0;padding:6px 8px;border:1px solid #e1e6ed;border-radius:6px;background:linear-gradient(180deg,#fff,#f8fafc)}
.team-ability-card>small{overflow:hidden;color:#48556a;font-size:.66rem;font-weight:500;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.team-ability-rank{justify-self:end;background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:1.55rem;font-weight:1000;line-height:1;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom) 16%,transparent)}
.rank-letter-S{--rank-top:#ff77b9;--rank-bottom:#c51468}.rank-letter-A{--rank-top:#ff5a62;--rank-bottom:#b60f1c}.rank-letter-B{--rank-top:#ffd94f;--rank-bottom:#b27600}.rank-letter-C{--rank-top:#45d67a;--rank-bottom:#087e39}.rank-letter-D{--rank-top:#62adff;--rank-bottom:#1453a7}.rank-letter-E{--rank-top:#a982ff;--rank-bottom:#573194}.rank-letter-F{--rank-top:#aab2bd;--rank-bottom:#515963}
.team-overall-list.rank-letter-S{--rank-top:#ff20e6;--rank-bottom:#f0009c}
.team-overall-list.rank-letter-S strong{text-shadow:0 2px 6px rgba(255,0,184,.4),0 5px 16px rgba(240,0,156,.5)}
.team-rank-b-plus{--rank-top:#ffbd45;--rank-bottom:#d65400;--meter-a:#ffad24;--meter-b:#d65400}
.team-rank-a-plus{--rank-top:#ff6f9f;--rank-bottom:#d9165d;--meter-a:#ff4f89;--meter-b:#d9165d}
.team-rank-c{--rank-top:#43dfbf;--rank-bottom:#007f73;--meter-a:#38cfad;--meter-b:#007f73}
.team-rank-c-plus{--rank-top:#6fe28e;--rank-bottom:#087733;--meter-a:#20a957;--meter-b:#087733}
.team-rank-d-plus{--rank-top:#63d8ff;--rank-bottom:#0878b8;--meter-a:#42c9f5;--meter-b:#0878b8}
.rank.team-rank-b-plus{background:linear-gradient(145deg,#ffd17a 0%,#f28b13 56%,#c94700 100%);color:#111}
.rank.team-rank-a-plus{background:linear-gradient(145deg,#ff91b7 0%,#f0377a 52%,#c80e51 100%);color:#fff}
.rank.team-rank-c{background:linear-gradient(145deg,#79ebd3 0%,#16b99b 54%,#006f69 100%);color:#fff}
.rank.team-rank-c-plus{background:linear-gradient(145deg,#8aecaa 0%,#31bd68 54%,#087733 100%);color:#fff}
.rank.team-rank-d-plus{background:linear-gradient(145deg,#8be5ff 0%,#28addf 54%,#06689f 100%);color:#fff}
.premier-area-columns .team-rank-b-plus{--rank-top:#ffad27;--rank-bottom:#d94700;--meter-a:#ff9418;--meter-b:#ca3d00}
.premier-area-columns .team-rank-c{--rank-top:#43dfbf;--rank-bottom:#007f73;--meter-a:#38cfad;--meter-b:#007f73}
.premier-area-columns .team-rank-c-plus{--rank-top:#6fe28e;--rank-bottom:#087733;--meter-a:#20a957;--meter-b:#087733}
.premier-area-columns .rank.team-rank-b-plus{background:linear-gradient(145deg,#ffd06b 0%,#f47f0b 54%,#c83e00 100%);color:#111}
.premier-area-columns .rank.team-rank-c{background:linear-gradient(145deg,#79ebd3 0%,#16b99b 54%,#006f69 100%);color:#fff}
.premier-area-columns .rank.team-rank-c-plus{background:linear-gradient(145deg,#8aecaa 0%,#31bd68 54%,#087733 100%);color:#fff}

.adopted-ability-rank-rails{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:12px;padding:0;border:1px solid #d8dee8;border-radius:8px;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);overflow:hidden}.adopted-ability-rank-rails .ability-sample-rail-row{grid-template-columns:minmax(82px,1fr) 28px minmax(68px,.9fr);grid-template-rows:minmax(44px,auto) 18px;gap:5px 7px;min-width:0;min-height:76px;padding:8px 11px;border-right:1px solid #e2e7ee;border-bottom:1px solid #e2e7ee}.adopted-ability-rank-rails .ability-sample-rail-row:nth-child(4n){border-right:0}.adopted-ability-rank-rails .ability-sample-rail-row:nth-last-child(-n+4){border-bottom:0}.adopted-ability-rank-rails .ability-sample-rail-row>b[class*="rank-letter-"]{display:inline-block;background:linear-gradient(180deg,var(--rank-top,#667085) 0%,var(--rank-bottom,#344054) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:Impact,"Arial Narrow",sans-serif;font-weight:900;line-height:1;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom,#344054) 18%,transparent)}.adopted-ability-rank-rails .ability-sample-rail-name{min-width:0;letter-spacing:0}.adopted-ability-rank-rails .ability-sample-rail-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adopted-ability-rank-rails .ability-sample-rail-meter{min-width:0}.adopted-ability-rank-rails .ability-sample-features{grid-column:1/-1;justify-content:flex-end;min-width:0;margin:0;padding:0}.adopted-ability-rank-rails .ability-sample-features:empty{display:block}
@media(max-width:900px){.adopted-ability-rank-rails{grid-template-columns:repeat(2,minmax(0,1fr))}.adopted-ability-rank-rails .ability-sample-rail-row:nth-child(4n){border-right:1px solid #e2e7ee}.adopted-ability-rank-rails .ability-sample-rail-row:nth-child(2n){border-right:0}.adopted-ability-rank-rails .ability-sample-rail-row:nth-last-child(-n+4){border-bottom:1px solid #e2e7ee}.adopted-ability-rank-rails .ability-sample-rail-row:nth-last-child(-n+2){border-bottom:0}}
@media(max-width:560px){.adopted-ability-rank-rails{grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.adopted-ability-rank-rails .ability-sample-rail-row{grid-template-columns:minmax(68px,1fr) 24px;grid-template-rows:auto 8px 18px;gap:4px 6px;min-height:92px;padding:8px}.adopted-ability-rank-rails .ability-sample-rail-meter{grid-column:1/-1}.adopted-ability-rank-rails .ability-sample-features{grid-column:1/-1;justify-content:flex-start}.adopted-ability-rank-rails .ability-sample-rail-name{font-size:.66rem}.adopted-ability-rank-rails .ability-sample-rail-name small{font-size:.5rem}.adopted-ability-rank-rails .ability-sample-rail-row>b{font-size:1.4rem}}

/* Team directory: make club identity and the overall rating readable at a glance. */
.team-grid{grid-template-columns:repeat(auto-fit,minmax(258px,1fr));gap:12px}
.team-card{grid-template-columns:62px minmax(0,1fr) 62px;gap:13px;min-height:122px;padding:15px 16px 15px 13px;border-left-width:5px;background:linear-gradient(135deg,#fff 0%,#fafcff 70%,color-mix(in srgb,var(--accent) 7%,#fff) 100%)}
.team-card:hover,.team-card.selected{border-color:color-mix(in srgb,var(--accent) 52%,#d4dbe6);box-shadow:0 18px 34px rgba(23,32,51,.12)}
.team-logo{width:58px;height:58px}
.team-card-body{display:grid;min-width:0;align-content:center;gap:4px}
.team-card strong{overflow:hidden;font-size:1.08rem;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.team-card small{overflow:hidden;font-size:.74rem;font-weight:400;text-overflow:ellipsis;white-space:nowrap}
.team-card em{color:#6d788a;font-size:.69rem;font-weight:400;line-height:1.2}
.team-card em b{color:#273247;font-weight:800}
.team-card-meter{width:100%;height:4px;overflow:hidden;border-radius:99px;background:#e3e9f1}
.team-card-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 92%,#111827),color-mix(in srgb,var(--accent) 38%,#fff));box-shadow:0 1px 4px color-mix(in srgb,var(--accent) 25%,transparent)}
.team-overall{display:grid;align-self:stretch;min-width:0;place-items:center;align-content:center;color:var(--rank-bottom);text-align:center}
.team-overall small{color:#6d788a;font-size:.57rem;font-weight:500;letter-spacing:.03em;line-height:1;white-space:nowrap}
.team-overall strong{display:block;margin-top:3px;background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:3.15rem;font-weight:1000;letter-spacing:-.04em;line-height:.85;text-shadow:0 3px 8px color-mix(in srgb,var(--rank-bottom) 16%,transparent)}
.team-grade-modifier{position:absolute;top:.01em;left:calc(50% + .47em);display:block;margin:0;padding:0;background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent!important;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:.72em!important;font-style:normal;font-weight:1000;letter-spacing:0;line-height:1;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom) 32%,transparent);-webkit-text-fill-color:transparent!important;transform:none}
.team-overall strong,.team-ability-rank,.team-group-detail b,.team-support-factors b,.team-rank{position:relative;text-align:center}
.team-overall strong{min-width:1.1em}
.team-ability-rank{width:2.1em}
.team-group-detail b{display:block;min-width:25px}
.team-support-factors b{display:inline-block;min-width:22px}
.team-rank{min-width:42px;width:auto;padding:0 6px;white-space:nowrap}
.detail-head{grid-template-columns:120px minmax(0,1fr) 116px}
.team-overall-page{position:relative;align-self:stretch;min-height:108px;padding:10px 0 9px;border-left:1px solid #e2e7ef;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--rank-top) 5%,#fff) 100%)}
.team-overall-page::before{position:absolute;top:16px;bottom:16px;left:0;width:3px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));content:""}
.team-overall-page small{font-size:.62rem;font-weight:600}
.team-overall-page strong{margin-top:7px;font-size:5.6rem;letter-spacing:-.08em;line-height:.72}
@media(max-width:760px){.team-grid{grid-template-columns:1fr;gap:8px}.team-card{grid-template-columns:52px minmax(0,1fr) 54px;min-height:104px;padding:12px 13px 12px 10px}.team-logo{width:48px;height:48px}.team-card strong{font-size:1rem}.team-overall strong{font-size:2.75rem}.detail-head{grid-template-columns:78px minmax(0,1fr) 76px}.team-overall-page{min-height:76px}.team-overall-page strong{font-size:4.15rem}.team-overall-page small{font-size:.53rem}}

/* Keep team names and grade letters intact at every list width. */
.team-card{overflow:visible}
.team-card-body{container-type:inline-size}
.team-card strong{overflow:visible;font-size:clamp(.72rem,5.4cqi,1.08rem);white-space:nowrap;text-overflow:clip}
.team-card small{overflow:visible;text-overflow:clip}
.team-overall{min-width:76px;overflow:visible}
.team-overall small,.team-overall strong{overflow:visible}
.team-overall strong{padding:4px 3px 7px;letter-spacing:0;line-height:1}
.team-overall-list strong{margin:0;padding:4px 3px 7px}
.team-overall-list strong{font-size:4.05rem;line-height:.95;text-shadow:0 4px 10px color-mix(in srgb,var(--rank-bottom) 26%,transparent)}
@media(max-width:760px){.team-overall-list strong{font-size:3.45rem}}

/* B.PREMIER directory is organized by area: west on the left, east on the right. */
.premier-area-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.premier-area-column{min-width:0;padding:14px;border:1px solid #e1e6ee;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc)}
.premier-area-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 2px 12px;padding-bottom:10px;border-bottom:1px solid #e5eaf1}
.premier-area-heading span{color:#758196;font-size:.64rem;font-weight:700;letter-spacing:.08em}
.premier-area-heading h3{margin:0;color:#172033;font-size:1.05rem}
.premier-area-column .team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.premier-area-column .team-card{grid-template-columns:54px minmax(0,1fr) 68px;min-height:104px;padding:12px 13px 12px 10px}
.premier-area-column .team-logo{width:50px;height:50px}
.premier-area-column .team-overall-list strong{font-size:3.5rem}
.bone-area-columns{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.bone-area-column{min-width:0;padding:10px;border:1px solid #e1e6ee;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc)}
.premier-area-column#westAreaColumn{border-color:#ead7aa;background:linear-gradient(180deg,#fffdf3,#fff8e6)}
.premier-area-column#eastAreaColumn{border-color:#bddcf1;background:linear-gradient(180deg,#f6fbff,#eaf6ff)}
.premier-area-column#westAreaColumn .premier-area-heading{border-color:#ead7aa}
.premier-area-column#eastAreaColumn .premier-area-heading{border-color:#bddcf1}
.premier-area-column#westAreaColumn .premier-area-heading span{color:#a26a08}
.premier-area-column#eastAreaColumn .premier-area-heading span{color:#1774a8}
.bone-area-column:has(#boneGridNorth){border-color:#d8c9ee;background:linear-gradient(180deg,#fcfaff,#f4effc)}
.bone-area-column:has(#boneGridEast){border-color:#bcdcef;background:linear-gradient(180deg,#f7fcff,#eaf7ff)}
.bone-area-column:has(#boneGridCentral){border-color:#bfe2cf;background:linear-gradient(180deg,#f8fffb,#edf9f2)}
.bone-area-column:has(#boneGridWest){border-color:#ecd5a7;background:linear-gradient(180deg,#fffdf7,#fff6e6)}
.bone-area-column:has(#boneGridSouth){border-color:#efc3cb;background:linear-gradient(180deg,#fff9fa,#fff0f2)}
.bone-area-column:has(#boneGridNorth) .premier-area-heading{border-color:#d8c9ee}.bone-area-column:has(#boneGridNorth) .premier-area-heading span{color:#73529d}
.bone-area-column:has(#boneGridEast) .premier-area-heading{border-color:#bcdcef}.bone-area-column:has(#boneGridEast) .premier-area-heading span{color:#1974a5}
.bone-area-column:has(#boneGridCentral) .premier-area-heading{border-color:#bfe2cf}.bone-area-column:has(#boneGridCentral) .premier-area-heading span{color:#24754b}
.bone-area-column:has(#boneGridWest) .premier-area-heading{border-color:#ecd5a7}.bone-area-column:has(#boneGridWest) .premier-area-heading span{color:#9a6700}
.bone-area-column:has(#boneGridSouth) .premier-area-heading{border-color:#efc3cb}.bone-area-column:has(#boneGridSouth) .premier-area-heading span{color:#a9344d}
.bone-area-column .premier-area-heading{align-items:flex-start;flex-direction:column;gap:2px;margin:0 0 9px;padding:0 1px 8px}
.bone-area-column .premier-area-heading span{font-size:.52rem}
.bone-area-column .premier-area-heading h3{font-size:.94rem}
.bone-area-column .team-grid{grid-template-columns:1fr;gap:7px}
.bone-area-column .team-card{grid-template-columns:38px minmax(0,1fr) 50px;min-height:86px;padding:9px 7px}
.bone-area-column .team-logo{width:36px;height:36px}
.bone-area-column .team-card-name{font-size:.78rem}
.bone-area-column .team-card small{font-size:.57rem}
.bone-area-column .team-overall-list{min-width:48px}
.bone-area-column .team-overall-list strong{font-size:2.7rem;padding:2px 1px 5px}
@media(max-width:1420px){.premier-area-column .team-grid{grid-template-columns:1fr}.bone-area-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.bone-area-column .premier-area-heading{align-items:baseline;flex-direction:row;justify-content:space-between;gap:8px}.bone-area-column .team-card{grid-template-columns:48px minmax(0,1fr) 60px;min-height:94px;padding:10px}.bone-area-column .team-logo{width:44px;height:44px}.bone-area-column .team-card-name{font-size:.88rem}.bone-area-column .team-card small{font-size:.63rem}.bone-area-column .team-overall-list{min-width:58px}.bone-area-column .team-overall-list strong{font-size:3.2rem}}
@media(max-width:1080px){.premier-area-columns{grid-template-columns:1fr}.premier-area-column .team-card{grid-template-columns:62px minmax(0,1fr) 76px}.premier-area-column .team-logo{width:58px;height:58px}.premier-area-column .team-overall-list strong{font-size:4.05rem}.bone-area-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.premier-area-columns{gap:12px}.premier-area-column{padding:10px}.premier-area-column .team-card{grid-template-columns:48px minmax(0,1fr) 68px}.premier-area-column .team-logo{width:46px;height:46px}.premier-area-column .team-overall-list strong{font-size:3.4rem}}
@media(max-width:760px){.bone-area-columns{grid-template-columns:1fr;gap:10px}.bone-area-column{padding:10px}.bone-area-column .team-card{grid-template-columns:48px minmax(0,1fr) 60px}.bone-area-column .team-logo{width:44px;height:44px}.bone-area-column .team-overall-list strong{font-size:3.2rem}}

.team-overall-page{min-width:118px;overflow:visible}
.team-overall-page strong{padding:7px 5px 12px;letter-spacing:0;line-height:.84}
@media(max-width:1080px){.team-grid{grid-template-columns:1fr}.team-card{grid-template-columns:62px minmax(0,1fr) 76px}.team-card-body{padding-right:4px}}
@media(max-width:760px){.team-card{grid-template-columns:48px minmax(0,1fr) 68px;padding-right:10px}.team-overall{min-width:68px}.team-overall strong{font-size:2.65rem;padding:3px 2px 6px}.team-overall-page{min-width:76px}.team-overall-page strong{padding:4px 2px 8px;line-height:.9}}

/* Directory card: club name is the header; logo, location and grade form the second row. */
.team-card{display:block;min-height:108px;padding:10px 12px}
.team-card-title{display:block;overflow:visible;margin:0 0 7px;color:#172033;font-size:clamp(1.02rem,1.2vw,1.3rem)!important;font-weight:750;letter-spacing:0;line-height:1.08;text-overflow:clip;white-space:nowrap}
.team-card-content{display:grid;grid-template-columns:54px minmax(0,1fr) 72px;gap:11px;align-items:center;min-width:0}
.team-card-content .team-logo{width:46px;height:46px}
.team-card-content .team-card-body{gap:5px}
.team-card-content .team-overall{min-width:64px;min-height:48px}
.team-card-content .team-overall strong{font-size:3.45rem}
.premier-area-column .team-card{display:block;min-height:106px;padding:10px 11px}
.premier-area-column .team-card-content{grid-template-columns:48px minmax(0,1fr) 62px;gap:9px}
.premier-area-column .team-card-content .team-logo{width:42px;height:42px}
.premier-area-column .team-card-content .team-overall{min-width:56px;min-height:44px}
.premier-area-column .team-card-content .team-overall strong{font-size:3.1rem}
.premier-area-column .team-card-title{margin-bottom:7px;font-size:1.1rem!important}
.bone-area-column .team-card{display:block;min-height:88px;padding:7px}
.bone-area-column .team-card-content{grid-template-columns:34px minmax(0,1fr) 44px;gap:6px}
.bone-area-column .team-card-content .team-logo{width:28px;height:28px}
.bone-area-column .team-card-content .team-overall{min-width:40px;min-height:30px}
.bone-area-column .team-card-content .team-overall strong{font-size:2.25rem}
.bone-area-column{overflow:hidden}
.bone-area-column .team-card-title{width:100%;max-width:100%;overflow:hidden;margin-bottom:5px;font-size:clamp(.68rem,.88vw,.82rem)!important;text-overflow:ellipsis;white-space:nowrap}
.bone-area-column .team-card-tokyo-u .team-card-title{font-size:clamp(.6rem,.78vw,.72rem)!important}

/* Keep the B.ONE rating column inside each narrow district column. */
.bone-area-column .team-card-content{grid-template-columns:34px minmax(0,1fr) 46px!important;gap:6px!important}
.bone-area-column .team-card-content .team-logo{width:32px!important;height:32px!important}
.bone-area-column .team-card-content .team-overall{width:46px!important;min-width:46px!important;min-height:36px!important;overflow:visible!important}
.bone-area-column .team-card-content .team-overall strong{font-size:2.7rem!important}
.bone-area-column .team-card-body{min-width:0!important}
.bone-area-column .team-card-body small,.bone-area-column .team-card-body em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* B.PREMIER has a roomier two-column area layout, so cards can stay compact. */
.premier-area-column .team-card{min-height:92px!important;padding:8px 10px!important}
.premier-area-column .team-card-title{margin-bottom:5px!important}
.premier-area-column .team-card-content{grid-template-columns:40px minmax(0,1fr) 54px!important;gap:8px!important}
.premier-area-column .team-card-content .team-logo{width:38px!important;height:38px!important}
.premier-area-column .team-card-content .team-overall{min-width:52px!important;min-height:40px!important}
.premier-area-column .team-card-content .team-overall strong{font-size:2.9rem!important}
@media(max-width:1420px){.premier-area-column .team-card-content{grid-template-columns:58px minmax(0,1fr) 72px;gap:12px}.premier-area-column .team-card-content .team-logo{width:54px;height:54px}.premier-area-column .team-card-content .team-overall{min-width:68px}.premier-area-column .team-card-content .team-overall strong{font-size:3.8rem}.bone-area-column .team-card-content{grid-template-columns:44px minmax(0,1fr) 58px;gap:9px}.bone-area-column .team-card-content .team-logo{width:40px;height:40px}.bone-area-column .team-card-content .team-overall{min-width:54px}.bone-area-column .team-card-content .team-overall strong{font-size:3rem}.bone-area-column .team-card-title{font-size:1.06rem!important}}
@media(max-width:760px){.team-card{min-height:122px;padding:11px 12px}.team-card-title{font-size:1.06rem!important}.team-card-content{grid-template-columns:46px minmax(0,1fr) 60px;gap:9px}.team-card-content .team-logo{width:44px;height:44px}.team-card-content .team-overall{min-width:56px}.team-card-content .team-overall strong{font-size:3.15rem}.premier-area-column .team-card-content,.bone-area-column .team-card-content{grid-template-columns:46px minmax(0,1fr) 60px;gap:9px}.premier-area-column .team-card-content .team-logo,.bone-area-column .team-card-content .team-logo{width:44px;height:44px}.premier-area-column .team-card-content .team-overall,.bone-area-column .team-card-content .team-overall{min-width:56px}.premier-area-column .team-card-content .team-overall strong,.bone-area-column .team-card-content .team-overall strong{font-size:3.15rem}.premier-area-column .team-card-title,.bone-area-column .team-card-title{font-size:1.06rem!important}}

/* The list already uses area backgrounds and team logos for identification. */
.premier-area-columns .team-card,
.bone-area-columns .team-card{border-left:1px solid var(--line)!important}
.premier-area-columns .team-card:hover,
.premier-area-columns .team-card:focus-visible,
.bone-area-columns .team-card:hover,
.bone-area-columns .team-card:focus-visible{
  position:relative;
  z-index:2;
  border-left-color:color-mix(in srgb,var(--accent) 52%,#d4dbe6)!important;
}
.team-card.team-rank-pending .team-overall{visibility:hidden}

/* Keep district headers quiet and centered; cards carry the visual identity. */
.premier-area-column,
.bone-area-column,
.premier-area-column#westAreaColumn,
.premier-area-column#eastAreaColumn,
.bone-area-column:has(#boneGridNorth),
.bone-area-column:has(#boneGridEast),
.bone-area-column:has(#boneGridCentral),
.bone-area-column:has(#boneGridWest),
.bone-area-column:has(#boneGridSouth){background:transparent}
.premier-area-column .premier-area-heading,
.bone-area-column .premier-area-heading{display:block;margin:0 0 10px;padding:0 0 9px;text-align:center}
.premier-area-column .premier-area-heading span,
.bone-area-column .premier-area-heading span{display:none}
.premier-area-column .premier-area-heading h3,
.bone-area-column .premier-area-heading h3{width:100%;text-align:center}

/* Square directory tiles put the club mark first and keep metadata compact. */
.premier-area-columns .team-card,
.bone-area-columns .team-card{
  display:flex!important;
  aspect-ratio:1;
  min-height:0!important;
  padding:12px!important;
  flex-direction:column;
}
.premier-area-columns .team-card-title,
.bone-area-columns .team-card-title{
  min-height:2.45em;
  margin:0!important;
  font-size:clamp(.76rem,.92vw,.96rem)!important;
  font-weight:700;
  line-height:1.22;
  text-align:center;
  white-space:normal;
}
.premier-area-columns .team-card-content,
.bone-area-columns .team-card-content{
  display:grid;
  width:100%;
  min-height:0;
  flex:1;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:minmax(0,1fr) auto;
  gap:7px 8px!important;
  align-items:end;
}
.premier-area-columns .team-card-content .team-logo,
.bone-area-columns .team-card-content .team-logo{
  align-self:center;
  justify-self:center;
  grid-column:1/-1;
  object-fit:contain;
}
.premier-area-columns .team-card-content .team-logo{width:132px!important;height:112px!important}
.bone-area-columns .team-card-content .team-logo{width:104px!important;height:92px!important}
.premier-area-columns .team-card-body,
.bone-area-columns .team-card-body{align-self:end;gap:3px!important}
.premier-area-columns .team-card-body small,
.bone-area-columns .team-card-body small{font-size:.64rem}
.premier-area-columns .team-card-body em,
.bone-area-columns .team-card-body em{font-size:.64rem}
.premier-area-columns .team-card-content .team-overall,
.bone-area-columns .team-card-content .team-overall{
  width:auto!important;
  min-width:42px!important;
  min-height:34px!important;
  align-self:end;
}
.premier-area-columns .team-card-content .team-overall strong,
.bone-area-columns .team-card-content .team-overall strong{font-size:2.55rem!important}
@media(max-width:760px){
  .premier-area-columns .team-card,
  .bone-area-columns .team-card{padding:13px!important}
  .premier-area-columns .team-card-title,
  .bone-area-columns .team-card-title{font-size:.9rem!important}
}
@media(min-width:1081px){
  .premier-area-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
  .premier-area-column .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bone-area-columns{grid-template-columns:repeat(5,minmax(0,1fr))}
  .bone-area-column .team-grid{grid-template-columns:1fr}
}
@media(min-width:761px) and (max-width:1080px){
  .premier-area-columns{grid-template-columns:1fr}
  .premier-area-column .team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .bone-area-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bone-area-column .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .premier-area-column .team-grid,
  .bone-area-column .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  .premier-area-column .team-grid,
  .bone-area-column .team-grid{grid-template-columns:1fr}
  .premier-area-columns .team-card,
  .bone-area-columns .team-card{width:min(100%,280px);justify-self:center}
}

/* Desktop directory: PREMIER uses east/west columns; B.ONE uses five area columns. */
.premier-area-column#eastAreaColumn{order:1}
.premier-area-column#westAreaColumn{order:2}
@media(min-width:1081px){
  .premier-area-columns{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px;
  }
  .bone-area-columns{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:12px;
  }
  .premier-area-column .team-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px;
  }
  .bone-area-column .team-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px;
  }
  .premier-area-columns .team-card,
  .bone-area-columns .team-card{
    width:100%;
    height:auto;
    aspect-ratio:1;
    padding:8px!important;
  }
  .premier-area-columns .team-card-title,
  .bone-area-columns .team-card-title{
    min-height:2.25em;
    font-size:clamp(.62rem,.74vw,.78rem)!important;
    line-height:1.14;
  }
  .premier-area-columns .team-card-content,
  .bone-area-columns .team-card-content{gap:3px 5px!important}
  .premier-area-columns .team-card-content .team-logo,
  .bone-area-columns .team-card-content .team-logo{width:92px!important;height:74px!important}
  .premier-area-columns .team-card-body,
  .bone-area-columns .team-card-body{gap:2px!important}
  .premier-area-columns .team-card-body small,
  .premier-area-columns .team-card-body em,
  .bone-area-columns .team-card-body small,
  .bone-area-columns .team-card-body em{font-size:.54rem}
  .premier-area-columns .team-card-content .team-overall,
  .bone-area-columns .team-card-content .team-overall{
    min-width:34px!important;
    min-height:28px!important;
    margin-bottom:-4px;
    transform:translateY(2px);
  }
  .premier-area-columns .team-card-content .team-overall strong,
  .bone-area-columns .team-card-content .team-overall strong{font-size:2.05rem!important}
  .bone-area-columns .team-card-title{font-size:clamp(.72rem,.82vw,.88rem)!important}
  .bone-area-columns .team-card-content .team-logo{width:118px!important;height:94px!important}
  .bone-area-columns .team-card-body small,
  .bone-area-columns .team-card-body em{font-size:.62rem}
  .bone-area-columns .team-card-content .team-overall strong{font-size:2.55rem!important}
}

/* B.ONE uses compact landscape tiles so five areas remain easy to scan. */
.bone-area-columns .team-card{
  height:132px!important;
  min-height:132px!important;
  aspect-ratio:auto!important;
  padding:7px 8px!important;
}
.bone-area-columns .team-card-title{
  min-height:2.15em;
  margin-bottom:2px!important;
  line-height:1.08;
  transform:translateY(5px);
}
.bone-area-columns .team-card-content{
  grid-template-rows:minmax(0,1fr) auto;
  gap:1px 5px!important;
}
.bone-area-columns .team-card-content .team-logo{
  width:84px!important;
  height:64px!important;
}
.premier-area-columns .team-card-content .team-logo{
  width:84px!important;
  height:64px!important;
}
.bone-area-columns .team-card-content .team-overall{
  min-height:25px!important;
  margin-bottom:-2px;
  transform:translateX(-6px);
}
.bone-area-columns .team-card-content .team-overall strong{font-size:2.25rem!important}
.bone-area-columns .team-card-body{
  display:flex;
  gap:0!important;
  white-space:nowrap;
}
.bone-area-columns .team-card-body small::after{content:" / ";}
.bone-area-columns .team-card-body small,
.bone-area-columns .team-card-body em{
  overflow:hidden;
  font-size:.47rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* PREMIER directory: two wide, low-profile tiles in each east/west column. */
@media(min-width:1081px){
  .premier-area-column .team-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px;
  }
  .premier-area-columns .team-card{
    position:relative;
    display:block!important;
    height:66px!important;
    min-height:66px!important;
    aspect-ratio:auto!important;
    padding:6px 8px!important;
  }
  .premier-area-columns .team-card-title{
    position:absolute;
    top:12px;
    right:52px;
    left:98px;
    z-index:1;
    width:auto!important;
    min-height:0;
    overflow:hidden;
    font-size:.66rem!important;
    line-height:1.1;
    text-align:left;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .premier-area-columns .team-card-shinshu .team-card-title{
    font-size:.66rem!important;
  }
  .premier-area-columns .team-card-nagoya-d .team-card-title{
    top:7px;
    max-height:2.2em;
    font-size:.66rem!important;
    line-height:1.08;
    white-space:normal;
  }
  .premier-area-columns .team-card-content{
    display:grid;
    height:100%;
    grid-template-columns:84px minmax(0,1fr) 42px!important;
    grid-template-rows:1fr;
    gap:8px!important;
    align-items:center;
  }
  .premier-area-columns .team-card-content .team-logo{
    width:84px!important;
    height:52px!important;
    grid-column:1;
    grid-row:1;
  }
  .premier-area-columns .team-card-body{
    display:flex;
    align-self:end;
    grid-column:2;
    grid-row:1;
    gap:0!important;
    padding-bottom:2px;
    transform:translateY(-14px);
    white-space:nowrap;
  }
  .premier-area-columns .team-card-body small::after{content:" / ";}
  .premier-area-columns .team-card-body small,
  .premier-area-columns .team-card-body em{
    overflow:hidden;
    font-size:.45rem;
    line-height:1.15;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .premier-area-columns .team-card-content .team-overall{
    min-width:42px!important;
    min-height:38px!important;
    margin:0;
    align-self:center;
    grid-column:3;
    grid-row:1;
    transform:translateX(-6px);
  }
  .premier-area-columns .team-card-content .team-overall strong{
    font-size:2.45rem!important;
  }

  .bone-area-columns .team-card{
    position:relative;
    display:block!important;
    height:66px!important;
    min-height:66px!important;
    aspect-ratio:auto!important;
    padding:6px!important;
  }
  .bone-area-columns .team-card-title{
    position:absolute;
    top:12px;
    right:40px;
    left:64px;
    z-index:1;
    width:auto!important;
    min-height:0;
    overflow:hidden;
    font-size:.66rem!important;
    line-height:1.1;
    text-align:left;
    text-overflow:ellipsis;
    transform:none;
    white-space:nowrap;
  }
  .bone-area-columns .team-card-tokyo-u .team-card-title{
    top:3px;
    display:block;
    max-height:3.3em;
    font-size:.66rem!important;
    line-height:1.08;
    white-space:normal;
  }
  .bone-area-columns .team-card-hachioji .team-card-title,
  .bone-area-columns .team-card-niigata .team-card-title,
  .bone-area-columns .team-card-fe-nagoya .team-card-title,
  .bone-area-columns .team-card-ehime .team-card-title,
  .bone-area-columns .team-card-fukuoka .team-card-title{
    top:7px;
    max-height:2.2em;
    font-size:.66rem!important;
    line-height:1.08;
    white-space:normal;
  }
  .bone-area-columns .team-card-content{
    display:grid;
    height:100%;
    grid-template-columns:52px minmax(0,1fr) 34px!important;
    grid-template-rows:1fr;
    gap:6px!important;
    align-items:center;
  }
  .bone-area-columns .team-card-content .team-logo{
    width:52px!important;
    height:48px!important;
    grid-column:1;
    grid-row:1;
  }
  .bone-area-columns .team-card-body{
    align-self:end;
    grid-column:2;
    grid-row:1;
    padding-bottom:2px;
    transform:translateY(-14px);
  }
  .bone-area-columns .team-card-body small,
  .bone-area-columns .team-card-body em{
    font-size:.38rem;
    line-height:1.1;
  }
  .bone-area-columns .team-card-content .team-overall{
    min-width:34px!important;
    min-height:34px!important;
    margin:0;
    align-self:center;
    grid-column:3;
    grid-row:1;
    transform:translateX(-6px);
  }
  .bone-area-columns .team-card-content .team-overall strong{
    font-size:2.2rem!important;
  }
}

/* Keep the mobile team tabs in the viewport beneath the fixed global header. */
@media(max-width:760px){
  body[data-page="team"] .detail.team-themed{overflow:visible}
}

/* Player comparison: reserve equal space for rank, meter and feature badges. */
.player-comparison-grid .compare-metric-card{
  grid-template-columns:minmax(0,1fr) minmax(158px,1.15fr);
  gap:10px;
  min-height:52px;
  padding:4px 10px
}
.player-comparison-grid .compare-metric-copy{
  gap:3px
}
.player-comparison-grid .compare-metric-copy small{
  display:-webkit-box;
  overflow:hidden;
  line-height:1.2;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2
}
.player-comparison-grid .compare-metric-score.ranking-grade{
  grid-template-columns:34px minmax(116px,1fr);
  grid-column:auto;
  grid-row:auto;
  gap:8px
}
.player-comparison-grid .compare-metric-score.ranking-grade>strong{
  justify-content:flex-start;
  text-align:left
}
.player-comparison-grid .compare-metric-score .ranking-grade-detail{
  width:100%;
  gap:5px
}
.player-comparison-grid .compare-metric-score .ranking-feature-icons{
  width:100%;
  overflow:hidden
}
.player-comparison-grid .compare-metric-score .ranking-feature-icons .ability-feature-tag{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}

/* Compact shot-location comparison below the ability cards. */
.player-compare-shot-areas{
  margin:14px;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent
}
.player-compare-shot-areas>header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:16px 18px;
  border-bottom:1px solid #dfe5ed
}
.player-compare-shot-areas>header h2{
  margin:0;
  font-size:1.25rem
}
.player-compare-shot-areas>header>p{
  margin:0;
  color:#667085;
  font-size:.7rem
}
.player-compare-shot-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  padding:0;
  background:transparent
}
.player-compare-shot-card{
  min-width:0;
  overflow:hidden;
  border:1px solid #dce2ea;
  border-top:3px solid var(--compare-accent,#344054);
  border-radius:7px;
  background:#fff
}
.player-compare-shot-card>header{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  min-height:54px;
  padding:8px 10px;
  border-bottom:1px solid #e3e7ed
}
.player-compare-shot-card>header img{
  width:32px;
  height:32px;
  object-fit:contain
}
.player-compare-shot-card>header span{
  display:grid;
  min-width:0
}
.player-compare-shot-card>header small{
  overflow:hidden;
  color:#7a8494;
  font-size:.58rem;
  text-overflow:ellipsis;
  white-space:nowrap
}
.player-compare-shot-card>header strong{
  overflow:hidden;
  color:#172033;
  font-size:.86rem;
  text-overflow:ellipsis;
  white-space:nowrap
}
.player-compare-shot-card>header em{
  color:#697586;
  font-size:.58rem;
  font-style:normal
}
.player-compare-shot-card .shot-heatmap-section{
  padding:10px;
  border:0;
  box-shadow:none
}
.player-compare-shot-card .shot-heatmap-head,
.player-compare-shot-card .zone-shot-aside{
  display:none
}
.player-compare-shot-card .zone-shot-layout{
  display:block
}
.player-compare-shot-card .zone-shot-map{
  width:100%;
  max-width:390px;
  margin:auto;
  box-shadow:none
}
.player-compare-shot-card .shot-map-empty{
  display:grid;
  place-items:center;
  min-height:245px;
  padding:18px;
  color:#7a8494;
  text-align:center
}
@media(max-width:1100px){
  .player-comparison-grid .compare-metric-card{
    grid-template-columns:minmax(0,1fr) minmax(148px,1.15fr)
  }
  .player-comparison-grid .compare-metric-score.ranking-grade{
    grid-template-columns:32px minmax(108px,1fr)
  }
  .player-compare-shot-grid{
    grid-template-columns:repeat(3,minmax(300px,1fr));
    overflow-x:auto;
    scroll-snap-type:x mandatory
  }
  .player-compare-shot-card{
    scroll-snap-align:start
  }
}
@media(max-width:760px){
  .player-comparison-grid .compare-metric-card{
    grid-template-columns:minmax(0,1fr) minmax(140px,1.15fr);
    gap:7px;
    padding:8px
  }
  .player-comparison-grid .compare-metric-score.ranking-grade{
    grid-template-columns:30px minmax(102px,1fr);
    gap:6px
  }
  .player-compare-shot-areas{
    margin:8px
  }
  .player-compare-shot-areas>header{
    display:grid;
    gap:5px;
    padding:13px
  }
  .player-compare-shot-areas>header h2{
    font-size:1.05rem
  }
  .player-compare-shot-grid{
    grid-template-columns:repeat(3,minmax(292px,82vw));
    padding:0
  }
}

/* Mobile player comparison: one fixed metric column and three swipeable players. */
.player-comparison-mobile{display:none}
@media(max-width:760px){
  .player-comparison-grid{display:none!important}
  .player-comparison-mobile{
    display:block;
    margin:8px;
    overflow:hidden;
    border:1px solid #d9e0e9;
    border-radius:8px;
    background:#fff;
    box-shadow:0 8px 22px rgba(17,24,39,.06)
  }
  .player-mobile-compare-scroll{
    --mobile-label-width:84px;
    width:100%;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-padding-left:var(--mobile-label-width);
    scroll-snap-type:x mandatory;
    scrollbar-width:thin;
    scrollbar-color:#aab5c4 #eef1f5;
    -webkit-overflow-scrolling:touch
  }
  .player-mobile-compare-matrix{
    --mobile-player-width:174px;
    display:grid;
    width:max-content;
    min-width:100%;
    grid-template-columns:var(--mobile-label-width) repeat(3,var(--mobile-player-width));
    background:#dfe5ed;
    gap:1px
  }
  .player-mobile-label{
    position:sticky;
    left:0;
    z-index:4;
    display:flex;
    min-width:0;
    align-items:center;
    padding:9px 8px;
    background:#f7f9fc;
    box-shadow:5px 0 12px rgba(17,24,39,.08);
    color:#48546a
  }
  .player-mobile-label strong{
    font-size:.68rem;
    font-weight:700;
    line-height:1.35
  }
  .player-mobile-corner{
    z-index:6;
    min-height:92px;
    align-items:flex-end;
    background:linear-gradient(145deg,#f8fafc,#edf1f6);
    color:#7a8494;
    font-size:.58rem;
    font-weight:600
  }
  .player-mobile-head-card{
    position:relative;
    display:grid;
    min-width:0;
    min-height:92px;
    grid-template-columns:48px minmax(0,1fr) 26px;
    align-items:center;
    gap:7px;
    overflow:hidden;
    padding:9px 7px;
    background:linear-gradient(135deg,color-mix(in srgb,var(--compare-accent,#172033) 10%,#fff),#fff 70%);
    color:#172033;
    text-decoration:none;
    scroll-snap-align:start
  }
  .player-mobile-head-card:before{
    position:absolute;
    inset:0 auto 0 0;
    width:3px;
    background:var(--compare-accent,#172033);
    content:""
  }
  .player-mobile-head-card .photo-shell{
    width:48px;
    height:66px;
    overflow:hidden;
    border-radius:5px
  }
  .player-mobile-head-card .photo-shell img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:50% 12%
  }
  .player-mobile-head-card>span{
    display:grid;
    min-width:0;
    gap:2px
  }
  .player-mobile-head-card small,
  .player-mobile-head-card strong,
  .player-mobile-head-card em{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
  }
  .player-mobile-head-card small{color:#697586;font-size:.49rem;font-weight:500}
  .player-mobile-head-card strong{font-size:.72rem;line-height:1.25}
  .player-mobile-head-card em{color:#697586;font-size:.52rem;font-style:normal}
  .player-mobile-head-card>b{
    justify-self:center;
    font-family:Impact,"Arial Narrow",sans-serif;
    font-size:1.65rem;
    font-weight:900;
    line-height:1
  }
  .player-mobile-head-card>b[class*="rank-letter-"],
  .player-mobile-grade>b[class*="rank-letter-"]{
    background:linear-gradient(180deg,var(--rank-top,#667085) 0%,var(--rank-bottom,#344054) 100%);
    background-clip:text;
    -webkit-background-clip:text;
    color:var(--rank-bottom,#344054);
    -webkit-text-fill-color:transparent;
    text-shadow:0 2px 4px color-mix(in srgb,var(--rank-bottom,#344054) 16%,transparent)
  }
  .player-mobile-ability{
    display:grid;
    min-width:0;
    min-height:55px;
    align-content:center;
    gap:2px;
    padding:4px 7px;
    background:#fff;
    scroll-snap-align:start
  }
  .player-mobile-grade{
    display:grid;
    grid-template-columns:25px minmax(0,1fr);
    align-items:center;
    gap:6px
  }
  .player-mobile-grade>b{
    justify-self:center;
    font-family:Impact,"Arial Narrow",sans-serif;
    font-size:1.45rem;
    font-weight:900;
    line-height:1
  }
  .player-mobile-grade .ability-meter{
    width:100%;
    height:7px;
    margin:0
  }
  .player-mobile-ability>small{
    overflow:hidden;
    color:#697386;
    font-size:.49rem;
    font-weight:400;
    line-height:1.3;
    text-overflow:ellipsis;
    white-space:nowrap
  }
  .player-mobile-ability .ranking-feature-icons{
    display:flex;
    min-width:0;
    gap:3px
  }
  .player-mobile-ability .ranking-feature-icons .ability-feature-tag{
    width:auto;
    min-width:0;
    max-width:72px;
    height:14px;
    flex:0 1 auto;
    padding-inline:4px;
    overflow:hidden;
    font-size:.44rem;
    text-overflow:ellipsis;
    white-space:nowrap
  }
  .player-mobile-head-card.is-empty,
  .player-mobile-ability.is-empty{
    place-items:center;
    color:#98a2b3
  }
}

/* Feature badges use their meaning, rather than the parent ability, for color. */
.ability-feature-tag.feature-tone-red.is-active{
  border-color:#dfa1a7;
  background:linear-gradient(180deg,#fff7f7 0%,#f5d8dc 100%);
  color:#942934;
  box-shadow:0 1px 3px rgba(148,41,52,.1),inset 0 1px rgba(255,255,255,.82)
}
.ability-feature-tag.feature-tone-green.is-active{
  border-color:#91c6a2;
  background:linear-gradient(180deg,#f5fff7 0%,#d8f0df 100%);
  color:#21623a;
  box-shadow:0 1px 3px rgba(33,98,58,.09),inset 0 1px rgba(255,255,255,.84)
}
.ability-feature-tag.feature-tone-blue.is-active{
  border-color:#91afd5;
  background:linear-gradient(180deg,#f6f9ff 0%,#dce7f6 100%);
  color:#285486;
  box-shadow:0 1px 3px rgba(40,84,134,.1),inset 0 1px rgba(255,255,255,.84)
}

.team-ability-card>.ability-meter{grid-column:1/-1;grid-row:2;width:100%;height:12px;margin:0}
.team-average-marker{position:absolute;right:auto;bottom:5px;z-index:2;width:2px;height:16px;transform:translateX(-1px);border-radius:1px;background:#55bff2;box-shadow:0 0 0 1px rgba(255,255,255,.82),0 0 5px rgba(85,191,242,.35);pointer-events:none}
.team-ability-panel .team-profile{margin:9px 0 0;padding:9px 10px;border-top:1px solid #e5e9ef;color:#344054;font-size:.73rem;font-weight:400;line-height:1.65}
@media(max-width:620px){.team-ability-grid{grid-template-columns:1fr}.team-ability-card>small{font-size:.72rem}}

/* Group 2026-27 team strength into offense, defense and physical profiles. */
.grouped-team-analysis .team-ability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.team-group-card{min-width:0;padding:10px;border:1px solid #dfe5ed;border-radius:7px;background:linear-gradient(180deg,#fff 0%,#f7f9fc 100%)}
.team-group-card>header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px}
.team-group-card>header strong{display:block;color:#172033;font-size:.86rem}
.team-group-card .team-ability-rank{flex:0 0 auto;font-size:2rem}
.team-depth-balance-card{display:flex;min-width:0;flex-direction:column;padding:10px;border:1px solid #dfe5ed;border-radius:7px;background:linear-gradient(180deg,#fff 0%,#f7f9fc 100%)}
.team-depth-balance-card>header{min-height:32px}.team-depth-balance-card>header strong{color:#172033;font-size:.72rem;white-space:nowrap}
.team-depth-balance-scale{display:flex;justify-content:space-between;gap:4px;margin-top:8px;color:#697586;font-size:.46rem;font-weight:700;white-space:nowrap}
.team-depth-balance-bars{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;gap:3px;height:44px;margin-top:5px;padding:4px;border-radius:4px;background:#eef2f6}
.team-depth-balance-bars i{height:45%;border-radius:2px;background:#d8dee7}.team-depth-balance-bars i:nth-child(2){height:56%}.team-depth-balance-bars i:nth-child(3){height:68%}.team-depth-balance-bars i:nth-child(4){height:80%}.team-depth-balance-bars i:nth-child(5){height:92%}
.team-depth-balance-bars i.is-current{background:linear-gradient(180deg,#35a7dd,#126da6);box-shadow:0 2px 6px rgba(18,109,166,.28)}
.team-depth-balance-ranks{display:flex;justify-content:space-between;gap:5px;margin-top:auto;padding-top:9px;color:#5f6c80;font-size:.5rem;font-weight:700}.team-depth-balance-ranks span{display:flex;align-items:center;gap:3px}.team-depth-balance-ranks b{background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:.92rem;font-weight:1000}
.grouped-team-analysis>.radar-title{display:grid;grid-template-columns:auto minmax(270px,1fr) auto;align-items:center;gap:14px}
.radar-title .team-depth-balance-card{display:grid;grid-template-columns:minmax(180px,1fr) 68px;grid-template-rows:16px 22px;grid-template-areas:"scale ranks" "bars ranks";align-items:center;gap:0 9px;width:100%;max-width:410px;justify-self:center;padding:0 8px;border:0;background:transparent}
.radar-title .team-depth-balance-card>header{grid-area:scale;z-index:2;display:flex;align-items:center;justify-content:center;min-height:0;pointer-events:none}
.radar-title .team-depth-balance-card>header strong{color:#172033;font-size:.66rem;text-align:center;white-space:nowrap}
.radar-title .team-depth-balance-scale{grid-area:scale;margin:0;font-size:.48rem}
.radar-title .team-depth-balance-bars{grid-area:bars;align-items:center;height:18px;margin:0;padding:3px;gap:3px}
.radar-title .team-depth-balance-bars i,.radar-title .team-depth-balance-bars i:nth-child(n){height:10px}
.radar-title .team-depth-balance-ranks{grid-area:ranks;display:grid;gap:2px;margin:0;padding:0;border-left:1px solid #dfe5ed;padding-left:8px}
.radar-title .team-depth-balance-ranks span{justify-content:space-between;color:#5f6c80;font-size:.48rem}
.radar-title .team-depth-balance-ranks b{font-size:.82rem}
.team-analysis-status-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.team-analysis-status-row .team-depth-balance-card,.team-season-composition-card{display:grid;grid-template-columns:minmax(0,1fr) 78px;grid-template-rows:20px 15px 22px;grid-template-areas:"head head" "scale meta" "bars meta";align-items:center;min-width:0;padding:8px 12px;border:1px solid #dfe5ed;border-radius:7px;background:linear-gradient(135deg,#fff,#f6f8fb)}
.team-analysis-status-row .team-depth-balance-card>header,.team-season-composition-card>header{grid-area:head;display:flex;align-items:center;justify-content:center;min-height:0}
.team-analysis-status-row .team-depth-balance-card>header strong,.team-season-composition-card>header strong{color:#172033;font-size:.72rem;font-weight:800;text-align:center}
.team-analysis-status-row .team-depth-balance-scale,.team-season-composition-scale{grid-area:scale;display:flex;justify-content:space-between;margin:0;color:#697586;font-size:.51rem;font-weight:700}
.team-analysis-status-row .team-depth-balance-bars,.team-season-composition-bars{grid-area:bars;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:4px;height:18px;margin:0;padding:3px;border-radius:4px;background:#e9eef4}
.team-analysis-status-row .team-depth-balance-bars i,.team-analysis-status-row .team-depth-balance-bars i:nth-child(n),.team-season-composition-bars i{height:10px;border-radius:2px;background:#d3dbe5}
.team-analysis-status-row .team-depth-balance-bars i.is-current{background:linear-gradient(90deg,#35a7dd,#126da6);box-shadow:0 2px 6px rgba(18,109,166,.28)}
.team-analysis-status-row .team-depth-balance-ranks{grid-area:meta;display:grid;align-self:stretch;gap:3px;margin:0;padding:3px 0 3px 11px;border-left:1px solid #d8dee7}
.team-analysis-status-row .team-depth-balance-ranks span{justify-content:space-between;color:#536076;font-size:.62rem;font-weight:800}.team-analysis-status-row .team-depth-balance-ranks b{font-size:1.12rem}
.team-season-composition-count{grid-area:meta;display:flex;align-self:stretch;align-items:center;justify-content:space-between;gap:5px;padding-left:11px;border-left:1px solid #d8dee7;color:#536076}.team-season-composition-count span{font-size:.58rem;font-weight:750}.team-season-composition-count b{color:#9d1733;font-size:1.05rem;font-weight:900;white-space:nowrap}.team-season-composition-count em{font-style:normal;color:#1f6fae}
.team-season-composition-bars i.is-current{background:linear-gradient(90deg,#db4963,#9d1733);box-shadow:0 2px 6px rgba(157,23,51,.24)}
.grouped-team-analysis.has-season-composition>.radar-title{grid-template-columns:1fr auto}
.team-analysis-status-triple{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.team-analysis-status-triple>.team-depth-balance-card,.team-analysis-status-triple>.team-season-composition-card{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:22px 16px 22px;grid-template-areas:"head meta" "scale scale" "bars bars";height:100%;box-sizing:border-box}
.team-analysis-status-triple>.team-depth-balance-card{grid-template-rows:22px 34px;grid-template-areas:"head meta" "bars bars"}
.team-analysis-status-triple>.team-season-composition-card{grid-template-rows:22px 34px;grid-template-areas:"head meta" "bars bars"}
.team-analysis-status-triple>.team-depth-balance-card>header,.team-analysis-status-triple>.team-season-composition-card>header{justify-content:flex-start}
.team-analysis-status-triple>.team-depth-balance-card>header strong,.team-analysis-status-triple>.team-season-composition-card>header strong{text-align:left}
.team-analysis-status-triple .team-depth-balance-scale,.team-analysis-status-triple .team-season-composition-scale{display:none}
.team-analysis-status-triple .team-depth-balance-bars{grid-template-columns:repeat(5,minmax(0,1fr));height:30px;padding:3px;gap:4px}
.team-analysis-status-triple .team-depth-balance-bars i,.team-analysis-status-triple .team-depth-balance-bars i:nth-child(n){display:flex;height:24px;align-items:center;justify-content:center;padding:0 3px;background:#d3dbe5;color:#536076;font-size:.52rem;font-style:normal;font-weight:800;line-height:1.05;text-align:center;white-space:nowrap}
.team-analysis-status-triple .team-depth-balance-bars i.is-current{background:linear-gradient(90deg,#35a7dd,#126da6)!important;color:#fff;box-shadow:0 2px 6px rgba(18,109,166,.28)}
.team-analysis-status-triple .team-season-composition-bars{grid-template-columns:repeat(5,minmax(0,1fr));height:30px;padding:3px;gap:4px}
.team-analysis-status-triple .team-season-composition-bars i,.team-analysis-status-triple .team-season-composition-bars i:nth-child(n){display:flex;height:24px;align-items:center;justify-content:center;padding:0 3px;background:#d3dbe5;color:#536076;font-size:.56rem;font-style:normal;font-weight:800;line-height:1.05;text-align:center;white-space:nowrap}
.team-analysis-status-triple .team-season-composition-bars i.is-current{background:linear-gradient(90deg,#db4963,#9d1733)!important;color:#fff;box-shadow:0 2px 6px rgba(157,23,51,.24)}
/* 川崎の試作表示は、中央から外側へ広がる方向性を矢印形で示す。 */
.team-analysis-status-triple .team-depth-balance-bars,.team-analysis-status-triple .team-season-composition-bars{gap:0;padding:3px 0;background:transparent;overflow:visible;transform:translateY(2px)}
.team-analysis-status-triple .team-depth-balance-bars,.team-analysis-status-triple .team-season-composition-bars{gap:3px}
.team-analysis-status-triple .team-depth-balance-bars i,.team-analysis-status-triple .team-season-composition-bars i{border-radius:3px!important;clip-path:none!important;padding-inline:3px!important}
.team-analysis-status-triple .team-depth-balance-bars i.is-current:nth-child(1),.team-analysis-status-triple .team-season-composition-bars i.is-current:nth-child(1){background:linear-gradient(90deg,#b51532,#700015)!important;color:#fff;box-shadow:0 2px 6px rgba(112,0,21,.28)}
.team-analysis-status-triple .team-depth-balance-bars i.is-current:nth-child(2),.team-analysis-status-triple .team-season-composition-bars i.is-current:nth-child(2){background:linear-gradient(90deg,#df5b72,#b92240)!important;color:#fff;box-shadow:0 2px 6px rgba(185,34,64,.28)}
.team-analysis-status-triple .team-depth-balance-bars i.is-current:nth-child(3),.team-analysis-status-triple .team-season-composition-bars i.is-current:nth-child(3){background:linear-gradient(90deg,#43bd7b,#14894c)!important;color:#fff;box-shadow:0 2px 6px rgba(20,137,76,.24)}
.team-analysis-status-triple .team-depth-balance-bars i.is-current:nth-child(4),.team-analysis-status-triple .team-season-composition-bars i.is-current:nth-child(4){background:linear-gradient(90deg,#459fc9,#176d9d)!important;color:#fff;box-shadow:0 2px 6px rgba(23,109,157,.28)}
.team-analysis-status-triple .team-depth-balance-bars i.is-current:nth-child(5),.team-analysis-status-triple .team-season-composition-bars i.is-current:nth-child(5){background:linear-gradient(90deg,#276ba8,#103d70)!important;color:#fff;box-shadow:0 2px 6px rgba(16,61,112,.28)}
.team-analysis-status-triple .team-depth-balance-ranks{display:flex;align-self:center;justify-content:flex-end;gap:12px;margin:0;padding:0;border-left:0}
.team-analysis-status-triple .team-depth-balance-ranks span{display:flex;align-items:center;gap:5px}
.team-analysis-status-triple .team-depth-balance-ranks span{font-size:.72rem}
.team-analysis-status-triple .team-depth-balance-ranks b{font-size:1.2rem}
.team-analysis-status-triple .team-season-composition-count{align-self:center;justify-content:flex-end;gap:6px;padding:0;border-left:0}
.team-analysis-status-triple .team-season-composition-count span{font-size:.72rem}.team-analysis-status-triple .team-season-composition-count b{font-size:.92rem}
.team-analysis-status-triple .position-coverage.vertical-position-coverage{height:auto!important;min-height:0;padding:8px 9px;border:1px solid #dfe5ed;border-radius:7px;background:linear-gradient(135deg,#fff,#f6f8fb)}
.team-analysis-status-triple .position-coverage.vertical-position-coverage h3{margin:0 0 4px;font-size:.72rem;text-align:center}
.team-analysis-status-triple .position-role-legend{top:8px!important;right:8px!important;font-size:.42rem!important}
.team-analysis-status-triple .position-coverage.vertical-position-coverage .position-grid{height:64px!important;gap:4px}
.team-analysis-status-triple .position-coverage.vertical-position-coverage .pos-card{height:64px!important;grid-template-rows:13px 35px 12px!important;padding:2px 3px!important}
.team-analysis-status-triple .position-coverage.vertical-position-coverage .pos-status{height:13px!important;font-size:.44rem!important}
.team-analysis-status-triple .position-coverage.vertical-position-coverage .pos-bar{width:18px!important;height:35px!important}
.team-analysis-status-triple .position-coverage.vertical-position-coverage .pos-name{height:12px!important;font-size:.54rem!important}
.team-analysis-status-triple .position-coverage.vertical-position-coverage .pos-segment-count{font-size:.43rem!important}
.team-profile-standalone{align-self:stretch;height:100%;min-height:0;box-sizing:border-box;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc)}
.team-profile-standalone h3{margin:0 0 9px;padding:0 0 7px;border-bottom:1px solid #dfe5ed;color:#172033;font-size:.92rem;font-weight:900;line-height:1.2}.team-profile-standalone p{display:-webkit-box;overflow:hidden;margin:0;color:#344054;font-size:.78rem;line-height:1.62;-webkit-box-orient:vertical;-webkit-line-clamp:6}
.team-profile-scroll-hint{margin-left:6px;color:#8a94a6;font-size:.68rem;font-weight:600}
.team-profile-standalone.team-profile-scroll-sample{display:flex;flex-direction:column;height:214px;min-height:214px;max-height:214px}
.team-profile-standalone.team-profile-scroll-sample p{display:block;flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:7px;scrollbar-color:#aab5c4 transparent;scrollbar-width:thin}
.team-profile-standalone.team-profile-scroll-sample p::-webkit-scrollbar{width:6px}
.team-profile-standalone.team-profile-scroll-sample p::-webkit-scrollbar-track{background:transparent}
.team-profile-standalone.team-profile-scroll-sample p::-webkit-scrollbar-thumb{border-radius:99px;background:#aab5c4}
@media(min-width:1181px){.team-themed .radar-column.radar-column-sample{grid-template-rows:auto minmax(0,1fr)!important}.team-themed .radar-column.radar-column-sample>.grouped-team-analysis{height:auto!important;align-self:start!important}}
@media(min-width:1181px){.team-themed .radar-column .team-profile-scroll-sendai{height:152px!important;min-height:152px!important;max-height:152px!important;align-self:stretch}.team-themed .radar-column .team-profile-scroll-sendai p{scrollbar-gutter:stable}}
/* 仙台試作: 左側のコメントを右側のラインナップ面と同じ下端まで伸ばす。 */
@media(min-width:1181px){.team-themed .radar-column.radar-column-sample{grid-template-rows:auto minmax(0,1fr)!important}.team-themed .radar-column .team-profile-scroll-sendai{height:100%!important;min-height:0!important;max-height:none!important;align-self:stretch!important}}
.team-snapshot-kawasaki{grid-template-columns:minmax(58px,.27fr) repeat(4,minmax(205px,1fr));gap:8px}
.team-snapshot-kawasaki>.snapshot-item{box-sizing:border-box;padding:10px}
.team-snapshot-kawasaki>.snapshot-item:first-child{display:grid;min-width:0;grid-template-rows:auto minmax(0,1fr);align-items:start;text-align:left}
.team-snapshot-kawasaki>.snapshot-item:first-child>span{color:var(--muted);font-family:inherit;font-size:.72rem;font-weight:400;line-height:1.2}
.team-snapshot-kawasaki>.snapshot-item:first-child>strong{align-self:center;justify-self:center;text-align:center}
.team-snapshot-kawasaki .snapshot-with-chart{grid-template-columns:minmax(72px,.58fr) minmax(120px,1.42fr);align-items:center;gap:6px}
.team-snapshot-kawasaki .snapshot-metric-copy{display:grid;align-content:start;min-height:100%}
.team-snapshot-kawasaki .snapshot-with-chart .snapshot-metric-copy>span{color:var(--muted);font-family:inherit;font-size:.72rem;font-weight:400;line-height:1.2}
.team-snapshot-kawasaki .snapshot-with-chart .snapshot-metric-copy>strong{transform:translateY(2px)}
.team-snapshot-kawasaki .snapshot-metric-copy .snapshot-league-average,.team-snapshot-kawasaki .snapshot-metric-copy .snapshot-league-rank{font-family:inherit!important;font-size:11px!important;font-weight:500!important;line-height:1.25!important;letter-spacing:0!important}
.team-snapshot-kawasaki .snapshot-metric-copy .snapshot-league-average{transform:translateY(4px)}
.team-snapshot-kawasaki .snapshot-metric-copy .snapshot-league-rank{transform:translateY(8px)}
.team-snapshot-kawasaki .snapshot-with-chart .snapshot-distribution{grid-template-rows:78px 24px;align-self:stretch;justify-self:stretch;box-sizing:border-box;width:calc(100% + 4px);height:calc(100% + 4px);min-height:112px;padding:8px 3px 0;border:1px solid #e5e9f0;border-radius:5px;transform:translate(-4px,-2px)}
.team-snapshot-kawasaki .snapshot-with-chart .distribution-bars{height:78px}
.team-snapshot-kawasaki .snapshot-with-chart .distribution-axis{transform:none}
.team-snapshot-kawasaki>.position-coverage.vertical-position-coverage{position:relative;order:0;display:grid;height:auto!important;min-height:0;grid-template-rows:auto minmax(0,1fr);box-sizing:border-box;padding:10px 9px;border:1px solid #e7eaf0;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc)}
@media(min-width:761px){.team-snapshot-kawasaki>.snapshot-item,.team-snapshot-kawasaki>.position-coverage.vertical-position-coverage{min-height:134px}}
.team-snapshot-kawasaki>.position-coverage.vertical-position-coverage h3{margin:0 0 3px;color:var(--muted);font-family:inherit;font-size:.72rem;font-weight:400;line-height:1.2;text-align:left}
.team-snapshot-kawasaki .position-role-legend{position:absolute;top:10px!important;right:8px!important;display:flex;align-items:center;gap:4px;color:#667085;font-size:.52rem!important;font-weight:650;white-space:nowrap}
.team-snapshot-kawasaki .position-role-legend i{display:inline-block;width:7px;height:7px;border-radius:2px;background:linear-gradient(145deg,color-mix(in srgb,var(--team-accent) 54%,#fff),var(--team-accent))}
.team-snapshot-kawasaki .position-role-legend i:nth-of-type(2){background:linear-gradient(145deg,color-mix(in srgb,var(--team-accent) 16%,#fff),color-mix(in srgb,var(--team-accent) 50%,#fff))}
.team-snapshot-kawasaki .position-grid{display:grid;align-self:center;grid-template-columns:repeat(5,minmax(0,1fr));height:96px!important;gap:5px;transform:translateY(5px)}
.team-snapshot-kawasaki .pos-card{display:grid;height:96px!important;min-width:0;grid-template-rows:14px 67px 12px!important;align-content:start;padding:1px 3px!important;border:0;border-radius:0;background:transparent!important}
.team-snapshot-kawasaki .pos-status{display:flex;height:14px!important;align-items:center;justify-content:center;margin:0;color:#667085;font-size:.42rem!important;font-weight:400;line-height:1}
.team-snapshot-kawasaki .pos-bar{position:relative;display:block;align-self:center;width:8px!important;height:62px!important;min-height:0;margin:0 auto;border-radius:3px;background:#e8edf5;overflow:hidden}
.team-snapshot-kawasaki .pos-bar i.pos-main{position:absolute;inset:auto 0 0;width:100%;height:var(--main);border-radius:4px;background:linear-gradient(165deg,color-mix(in srgb,var(--team-accent) 48%,#fff) 0%,var(--team-accent) 55%,color-mix(in srgb,var(--team-accent) 88%,#111827) 100%)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.92)}
.team-snapshot-kawasaki .pos-bar.has-sub i.pos-main{border-radius:0 0 4px 4px}
.team-snapshot-kawasaki .pos-bar i.pos-sub{position:absolute;right:0;bottom:calc(var(--main) - 1px);left:0;width:100%;height:calc(var(--sub) + 1px);border-radius:4px 4px 0 0;background:linear-gradient(165deg,color-mix(in srgb,var(--team-accent) 12%,#fff) 0%,color-mix(in srgb,var(--team-accent) 38%,#fff) 52%,color-mix(in srgb,var(--team-accent) 62%,#fff) 100%)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.96)}
.team-snapshot-kawasaki .pos-name{display:flex;height:12px!important;align-items:end;justify-content:center;color:#172033;font-size:.54rem!important;line-height:1}
.team-snapshot-kawasaki .pos-segment-count{position:absolute;left:50%;z-index:3;display:block;min-width:18px;transform:translate(-50%,50%);font-size:.43rem!important;font-weight:800;line-height:1;text-align:center;white-space:nowrap}
.team-snapshot-kawasaki .pos-main-count{bottom:var(--center);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.65)}
.team-snapshot-kawasaki .pos-sub-count{bottom:var(--center);color:#172033;text-shadow:0 1px 0 rgba(255,255,255,.9)}
.team-snapshot-kawasaki .pos-card.thin{border-color:#e58b83}.team-snapshot-kawasaki .pos-card.thick{border-color:#55a8d8}
.team-snapshot-kawasaki .pos-card.thin .pos-status{color:#c53b32;font-weight:700}.team-snapshot-kawasaki .pos-card.thick .pos-status{color:#1677ad;font-weight:700}
.team-group-meter{position:relative;margin-top:5px}.team-group-meter>.ability-meter{width:100%;height:13px;margin:0}.team-group-meter>.team-average-marker{bottom:-1px;height:16px}.team-group-meter>.team-average-marker>span{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);color:#329bca;font-size:.49rem;font-style:normal;font-weight:700;line-height:1;white-space:nowrap;text-shadow:0 1px 0 rgba(255,255,255,.9)}
.team-main-bench-composition{margin-top:5px;padding:2px 0 1px}.team-main-bench-track{display:grid;grid-template-columns:minmax(0,var(--main-share)) minmax(0,var(--bench-share));width:var(--composition-width);max-width:100%;height:15px;overflow:hidden;border:0;border-radius:2px;background:transparent;box-shadow:none}.team-main-bench-half{position:relative;display:flex;min-width:0;align-items:center;justify-content:center;overflow:hidden;color:#475467;font-size:.46rem;font-style:normal;font-weight:850;line-height:1;text-align:center;text-shadow:none;white-space:nowrap}.team-main-bench-half b{position:relative;z-index:1;overflow:hidden;padding:0 3px;text-overflow:ellipsis}.team-main-six{border-right:1px solid rgba(255,255,255,.96);background:linear-gradient(90deg,color-mix(in srgb,var(--meter-a,#94a3b8) 31%,#fff),color-mix(in srgb,var(--meter-b,#475569) 38%,#fff))}.team-bench-rest{background:linear-gradient(90deg,color-mix(in srgb,var(--meter-a,#94a3b8) 13%,#fff),color-mix(in srgb,var(--meter-b,#475569) 18%,#fff))}
.team-main-bench-units{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,16px);align-items:center;gap:2px;min-height:34px;height:34px}.team-main-bench-units>i{display:none}.team-unit-power{display:grid;grid-template-columns:26px minmax(26px,1fr) 21px;align-items:center;gap:4px;min-width:0;height:16px}.team-unit-power em{overflow:hidden;color:#667085;font-size:.5rem;font-style:normal;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.team-unit-power b{background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:1rem;font-weight:1000;line-height:1;text-align:center;text-shadow:0 1px 3px color-mix(in srgb,var(--rank-bottom) 12%,transparent)}.team-unit-meter.ability-meter{height:8px;min-height:8px;max-height:8px;margin:0;align-self:center;opacity:1}.team-unit-meter.ability-meter i{height:8px;min-height:8px;border-radius:1px}
.team-unit-power{grid-template-columns:48px minmax(26px,1fr) 30px}.team-unit-power b{display:inline-flex;height:16px;align-items:center;justify-content:center;overflow:visible;white-space:nowrap}.team-unit-power .team-grade-modifier{position:static;top:auto;left:auto;display:inline-block;width:auto;margin:0 0 0 .04em;font-size:.56em;line-height:1;vertical-align:baseline;transform:translateY(-.25em)}

/* 仙台試作: コメントを圧縮して、3カテゴリと下段の比較情報へ縦方向の余白を渡す。 */
@media(min-width:1181px){
  .team-themed .team-analysis-layout-current .radar-column.radar-column-sample{grid-template-rows:minmax(0,1fr) 158px!important}
  .team-themed .team-analysis-layout-current .team-profile-scroll-sendai{height:158px!important;min-height:158px!important;max-height:158px!important}
  .team-themed .team-analysis-layout-current .radar-column.radar-column-sample>.grouped-team-analysis{height:100%!important;align-self:stretch!important}
  .team-themed .team-analysis-layout-current .grouped-team-analysis .team-ability-grid{flex:1 1 auto;align-items:stretch}
  .team-themed .team-analysis-layout-current .team-group-card{display:flex;flex-direction:column;height:calc(100% - 12px);box-sizing:border-box;align-self:start}
  .team-themed .team-analysis-layout-current .team-group-card .team-group-details{margin-top:8px;transform:translateY(5px)}
  .team-themed .team-analysis-layout-current .team-unit-power{grid-template-columns:48px minmax(26px,1fr) 30px}
  .team-themed .team-analysis-layout-current .team-group-card .team-main-bench-composition{position:relative;margin-top:auto;padding-top:4px;border-top:0}
  .team-themed .team-analysis-layout-current .team-group-card .team-main-bench-composition::before{position:absolute;top:-9px;right:0;left:0;height:1px;background:#dfe5ed;content:""}
  .team-themed .team-analysis-layout-current .team-main-bench-units .team-unit-power:first-child{transform:translateY(-4px)}
  .team-themed .team-analysis-layout-current .radar-title .team-support-factors>span{min-height:0;padding:1px 7px}
  .team-themed .team-analysis-layout-current .radar-title .team-support-factors b{min-width:34px;font-size:2rem;font-weight:1000;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom) 22%,transparent)}
  .team-themed .team-analysis-layout-current .team-analysis-status-row{position:relative;z-index:2;margin-top:auto;transform:none}
}
.team-group-details{display:grid;gap:0;margin-top:8px;border-top:1px solid #e5e9ef}
.team-group-detail{display:grid;grid-template-columns:minmax(64px,78px) minmax(60px,1fr) 24px;align-items:center;gap:4px;min-height:27px;border-bottom:1px solid #edf0f4}
.team-group-detail small{overflow:hidden;color:#536176;font-size:.58rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.team-group-detail b,.team-support-factors b{background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-weight:1000;line-height:1;text-align:center;text-shadow:0 1px 3px color-mix(in srgb,var(--rank-bottom) 12%,transparent)}
.team-group-detail b{font-size:1rem}
.team-detail-meter.ability-meter{display:grid;width:100%;height:8px;margin:0;align-self:center;gap:1px}
.team-detail-meter.ability-meter i{min-width:0;border-radius:1px}
.detail-head .power-mark,.detail-head .power-mark.rank-S,.detail-head .power-mark.rank-A,.detail-head .power-mark.rank-B,.detail-head .power-mark.rank-C,.detail-head .power-mark.rank-D,.detail-head .power-mark.rank-E,.detail-head .power-mark.rank-F{min-height:0;border:0!important;background:transparent!important;box-shadow:none!important}
.detail-head .power-mark span{background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:4.6rem;font-weight:1000;line-height:.9;transform:scaleX(.94);text-shadow:0 3px 9px color-mix(in srgb,var(--rank-bottom) 24%,transparent)}
.team-support-factors{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:8px}.team-support-factors>small{margin-right:auto;color:#697586;font-size:.58rem;font-weight:500}.team-support-factors>span{display:flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid #dfe5ed;border-radius:4px;background:#f8fafc;color:#536176;font-size:.58rem}.team-support-factors b{font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:.9rem;font-weight:900;line-height:1}
@media(max-width:760px){.grouped-team-analysis .team-ability-grid{grid-template-columns:1fr}.team-group-card>header small{font-size:.6rem}.team-group-detail small{font-size:.64rem}.grouped-team-analysis>.radar-title{grid-template-columns:minmax(0,1fr) auto;gap:7px}.radar-title .team-depth-balance-card{grid-column:1/-1;grid-template-columns:minmax(160px,1fr) 62px;max-width:none;padding:3px 0 0}.team-analysis-status-row{grid-template-columns:1fr}.team-analysis-status-triple{grid-template-columns:1fr}.team-profile-standalone{height:auto;min-height:130px}.team-profile-standalone.team-profile-scroll-sample{height:214px;min-height:214px;max-height:214px}.team-snapshot-kawasaki{grid-template-columns:1fr}.team-snapshot-kawasaki>.position-coverage.vertical-position-coverage{min-height:92px}}

/* Separate regular-season and postseason records and finish each with a weighted summary. */
.career-season-group+.career-season-group{margin-top:18px}
.career-season-group h4{margin:0 0 7px;color:#344054;font-size:.88rem}
.career-summary-row td{border-top:2px solid #c8d0dc;background:linear-gradient(180deg,#f2f5f9,#e8edf4);color:#172033;font-weight:800}
/* Referee database */
.referee-method{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.referee-method strong,.referee-method span{padding:8px 10px;border:1px solid #e3e7ee;border-radius:5px;background:#fff;color:#475467;font-size:.76rem}.referee-method strong{background:#172033;color:#fff;border-color:#172033}.referee-card{grid-template-columns:96px minmax(0,1fr);min-height:196px}.referee-photo{position:relative;width:96px;height:164px;margin:0;overflow:hidden;border-radius:6px;background:linear-gradient(145deg,#253047,#111827)}.referee-photo img{width:100%;height:100%;object-fit:cover}.referee-photo span{position:absolute;left:6px;bottom:6px;display:grid;place-items:center;min-width:34px;height:28px;padding:0 6px;border-radius:4px;background:rgba(17,24,39,.9);color:#fff;font-size:.74rem;font-weight:900}.referee-photo.is-missing{display:grid;place-items:center}.referee-photo.is-missing span{position:static}.referee-card-copy{min-width:0}.referee-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.referee-card-title small{display:block;margin-top:2px;color:#8a94a6;font-size:.65rem}.referee-card-title em{flex:0 0 auto;padding:3px 5px;border-radius:4px;background:#edf2f7;color:#526176;font-size:.58rem;font-style:normal}.referee-highlight{display:block;margin-top:9px;padding-top:8px;border-top:1px solid #e8ebf0;color:#344054;font-size:.7rem;line-height:1.45}.referee-detail-head{grid-template-columns:190px minmax(0,1fr);align-items:center}.referee-photo.is-detail{width:184px;height:230px}.referee-name-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px}.referee-name-line span{color:#697586;font-size:.9rem}.referee-facts{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.referee-facts span{padding:7px 9px;border:1px solid #dce2eb;border-radius:4px;background:#fff;color:#475467;font-size:.74rem}.referee-detail-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.referee-career,.referee-sources{padding:18px;border-top:1px solid var(--line)}.referee-career h2,.referee-sources h2{margin:0 0 14px;font-size:1.1rem}.section-heading-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-heading-row>span{color:#667085;font-size:.68rem}.referee-score-row{grid-template-columns:80px 44px minmax(0,1fr)}.referee-score-row small{color:#667085;font-size:.7rem;line-height:1.55}.referee-profile h2:not(:first-child){margin-top:22px}.referee-highlights{margin:0;padding-left:1.2rem;color:#344054}.referee-highlights li{margin:7px 0;line-height:1.55}.referee-career ol{display:grid;gap:8px;margin:0;padding-left:1.35rem;color:#344054}.referee-sources>p{margin:0;color:#344054;line-height:1.8}.referee-sources>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.referee-sources a{padding:8px 10px;border:1px solid #d7dee8;border-radius:4px;color:#344054;font-size:.74rem;text-decoration:none}.referee-sources a:hover{border-color:#b38a2e;background:#fffaf0}@media(max-width:760px){.referee-card{grid-template-columns:82px minmax(0,1fr)}.referee-photo{width:82px;height:142px}.referee-detail-head{grid-template-columns:104px minmax(0,1fr)}.referee-photo.is-detail{width:100px;height:142px}.referee-detail-body{grid-template-columns:1fr}.referee-score-row{grid-template-columns:68px 40px minmax(0,1fr)}}
/* Player shot-location sample */
.shot-heatmap-section{padding:22px}.shot-heatmap-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.shot-heatmap-head h3{margin:2px 0 0}.shot-heatmap-head>span{padding:6px 9px;border:1px solid #dce2eb;border-radius:4px;color:#526176;font-size:.7rem}.shot-heatmap-layout{display:grid;grid-template-columns:minmax(420px,1.35fr) minmax(230px,.65fr);gap:22px;align-items:center}.shot-court{position:relative;width:100%;aspect-ratio:450/277;overflow:hidden;border:2px solid #354154;border-radius:4px;background:linear-gradient(180deg,#f7f8fa,#eef1f5)}.shot-court:before{content:"";position:absolute;left:50%;bottom:-51%;width:91%;aspect-ratio:1;border:2px solid #9ba5b4;border-radius:50%;transform:translateX(-50%)}.court-paint{position:absolute;left:37%;bottom:0;width:26%;height:43%;border:2px solid #9ba5b4;border-bottom:0}.court-hoop{position:absolute;left:50%;bottom:13%;width:4.5%;aspect-ratio:1;border:2px solid #7a8492;border-radius:50%;transform:translateX(-50%);z-index:2}.court-three{position:absolute;left:4%;right:4%;bottom:-49%;height:140%;border:2px solid #9ba5b4;border-bottom:0;border-radius:50% 50% 0 0}.shot-heat-zone{position:absolute;left:var(--shot-x);top:var(--shot-y);z-index:4;display:grid;place-items:center;width:clamp(42px,8vw,72px);aspect-ratio:1;border:1px solid rgba(133,25,72,.2);border-radius:50%;transform:translate(-50%,-50%);background:rgba(210,36,102,var(--shot-heat));color:#fff;text-align:center;box-shadow:0 5px 14px rgba(97,20,51,.16)}.shot-heat-zone strong{font-size:clamp(.86rem,1.5vw,1.15rem);line-height:1;text-shadow:0 1px 3px rgba(0,0,0,.3)}.shot-heat-zone small{max-width:62px;margin-top:2px;font-size:clamp(.45rem,.7vw,.6rem);line-height:1.1;text-shadow:0 1px 3px rgba(0,0,0,.35)}.shot-heatmap-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.shot-heatmap-summary>div{padding:10px;border-left:3px solid #cf285f;background:#f5f7fa}.shot-heatmap-summary span{display:block;color:#667085;font-size:.66rem}.shot-heatmap-summary strong{display:block;margin-top:3px;font-size:1.05rem}.shot-heatmap-summary p{grid-column:1/-1;margin:8px 0 0;color:#475467;font-size:.78rem;line-height:1.8}.shot-heatmap-summary a{grid-column:1/-1;color:#344054;font-size:.72rem}.shot-heat-legend{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:10px;color:#667085;font-size:.65rem}.shot-heat-legend i{width:120px;height:7px;border-radius:2px;background:linear-gradient(90deg,rgba(210,36,102,.18),rgba(210,36,102,.96))}@media(max-width:760px){.shot-heatmap-layout{grid-template-columns:1fr}.shot-heatmap-head{align-items:flex-start;flex-direction:column}.shot-heat-zone{width:42px}.shot-heat-zone small{display:none}}
/* Detailed FIBA half-court shot map */
.shot-heatmap-section{background:linear-gradient(145deg,#fff 0%,#fafbfe 72%,#f7f8fb 100%)}.shot-heatmap-head{padding-bottom:14px;border-bottom:1px solid #e5e8ee}.shot-heatmap-head h3{font-size:1.35rem}.shot-court{aspect-ratio:500/467;border:1px solid #d6dce5;border-radius:6px;background:#fff;box-shadow:0 14px 35px rgba(23,32,51,.1)}.shot-court:before,.court-paint,.court-hoop,.court-three{display:none}.shot-court-lines{position:absolute;inset:2.5%;z-index:1;width:95%;height:95%;overflow:visible}.shot-court-lines .court-markings{fill:none;stroke:#8c97a6;stroke-width:2;vector-effect:non-scaling-stroke}.shot-court-lines .court-dash{stroke-dasharray:6 6;opacity:.72}.shot-density{stroke:none;opacity:.16}.shot-density.is-two{fill:#ff315f}.shot-density.is-three{fill:#2f72e4;opacity:.14}.shot-density.is-deep{fill:#7846d8;opacity:.19}.shot-point{stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke}.shot-point.is-two{fill:#ef2854}.shot-point.is-three{fill:#2764c9}.shot-point.is-deep{fill:#6e3ec8;stroke:#24123f;stroke-width:1.5}.shot-heatmap-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.shot-heatmap-summary>div{padding:12px;border:1px solid #e3e7ee;border-left:3px solid #d52d68;border-radius:5px;background:rgba(255,255,255,.9)}.shot-heatmap-summary .deep-three-stat{grid-column:1/-1;border-color:#ded2ef;border-left-color:#7546c7;background:linear-gradient(110deg,#fff,#f8f3ff)}.deep-three-stat small{display:block;margin-top:4px;color:#705a83;font-size:.62rem}.shot-heat-legend{gap:10px}.shot-heat-legend span.is-two,.shot-heat-legend span.is-three,.shot-heat-legend span.is-deep{position:relative;padding-left:12px;color:#475467}.shot-heat-legend span.is-two:before,.shot-heat-legend span.is-three:before,.shot-heat-legend span.is-deep:before{content:"";position:absolute;left:0;top:50%;width:7px;height:7px;border-radius:50%;transform:translateY(-50%)}.shot-heat-legend span.is-two:before{background:#ef2854}.shot-heat-legend span.is-three:before{background:#2764c9}.shot-heat-legend span.is-deep:before{background:#6e3ec8}.shot-heat-legend i{margin-left:auto;background:linear-gradient(90deg,rgba(234,48,118,.12),#ed315f)}
/* Side-by-side shot frequency and efficiency sample */
.dual-shot-maps{display:grid;grid-template-columns:repeat(2,minmax(0,360px));justify-content:center;gap:28px}.dual-shot-maps figure{margin:0}.dual-shot-maps figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:9px}.dual-shot-maps figcaption strong{font-size:.92rem}.dual-shot-maps figcaption span{color:#7a8494;font-size:.64rem}.dual-shot-maps .shot-court{max-width:360px;margin:auto;box-shadow:0 9px 24px rgba(23,32,51,.08)}.dual-heat-spot circle{stroke:rgba(255,255,255,.8);stroke-width:1.5;vector-effect:non-scaling-stroke}.dual-heat-spot.volume circle{fill:rgba(220,37,83,calc(.14 + var(--heat)*.72))}.dual-heat-spot.efficiency circle{fill:rgba(17,151,105,calc(.12 + var(--heat)*.78))}.dual-heat-spot text{fill:#fff;font-size:13px;font-weight:800;text-anchor:middle;paint-order:stroke;stroke:rgba(19,28,44,.5);stroke-width:2px;stroke-linejoin:round}.dual-heat-layer{isolation:isolate}.dual-map-scale{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:8px;color:#667085;font-size:.62rem}.dual-map-scale i{width:88px;height:6px;border-radius:2px}.dual-map-scale.volume i{background:linear-gradient(90deg,#f9d5de,#dc2553)}.dual-map-scale.efficiency i{background:linear-gradient(90deg,#d9f1e8,#119769)}.shot-map-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-top:18px;padding-top:14px;border-top:1px solid #e5e8ee}.shot-map-footer p{max-width:760px;margin:0;color:#5d697a;font-size:.73rem;line-height:1.7}.shot-map-footer a{flex:0 0 auto;color:#344054;font-size:.7rem}@media(max-width:760px){.dual-shot-maps{grid-template-columns:1fr;gap:22px}.dual-shot-maps .shot-court{max-width:320px}.shot-map-footer{flex-direction:column}.dual-shot-maps figcaption{align-items:flex-start;flex-direction:column;gap:2px}}
/* Combined shot volume and efficiency map */
.combined-shot-layout{display:grid;grid-template-columns:minmax(300px,430px) minmax(180px,240px);justify-content:center;gap:30px;align-items:center}.combined-map{max-width:430px;margin:auto;box-shadow:0 9px 24px rgba(23,32,51,.08)}.combined-heat-spot circle{fill:color-mix(in srgb,#169a6d calc(var(--efficiency)*100%),#df3c4f);fill-opacity:.76;stroke:rgba(255,255,255,.92);stroke-width:2;vector-effect:non-scaling-stroke}.combined-heat-spot.is-deep circle{stroke:#31204f;stroke-width:4;stroke-dasharray:7 4}.combined-heat-spot text{fill:#fff;font-size:13px;font-weight:900;text-anchor:middle;paint-order:stroke;stroke:rgba(21,28,42,.58);stroke-width:2px;stroke-linejoin:round}.combined-heat-spot .deep-label{font-size:9px;letter-spacing:.08em}.combined-map-legends{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:10px;color:#5d697a;font-size:.64rem}.combined-map-legends>span{display:flex;align-items:center;gap:5px}.size-dot{display:inline-block;border:1px solid #9b6971;border-radius:50%;background:#df7b89}.size-dot.small{width:8px;height:8px}.size-dot.large{width:15px;height:15px;margin-left:-2px}.rate-gradient{display:inline-block;width:60px;height:7px;border-radius:2px;background:linear-gradient(90deg,#df3c4f,#d6b044,#169a6d)}.combined-map-legends b{display:grid;place-items:center;width:23px;height:18px;border:2px dashed #31204f;border-radius:3px;color:#31204f;font-size:.55rem}.combined-shot-summary{display:grid;gap:8px}.combined-shot-summary>div{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:12px;border:1px solid #e0e5ec;border-radius:5px;background:#fff}.combined-shot-summary span{color:#596579;font-size:.69rem}.combined-shot-summary strong{font-size:1rem}.combined-shot-summary small{grid-column:1/-1;color:#119769;font-size:.72rem;text-align:right}.combined-shot-summary p{margin:4px 0 0;color:#667085;font-size:.7rem;line-height:1.65}@media(max-width:760px){.combined-shot-layout{grid-template-columns:1fr}.combined-map{max-width:330px}.combined-shot-summary{grid-template-columns:repeat(3,1fr)}.combined-shot-summary p{grid-column:1/-1}}
/* Fixed 16-zone shot map */
.zone-shot-layout{display:grid;justify-items:center}.zone-shot-map{width:min(100%,500px);box-shadow:0 9px 24px rgba(23,32,51,.08)}.zone-shot-layer{isolation:isolate}.zone-shot-spot rect{stroke-width:1.5;vector-effect:non-scaling-stroke}.zone-shot-spot.strong rect{fill:url(#none);fill:#dbeeff;stroke:#8abde7}.zone-shot-spot.weak rect{fill:#ffe1e3;stroke:#e7a1a8}.zone-shot-spot.low rect{fill:#e9edf2;stroke:#c6cdd6}.zone-shot-spot.average rect{fill:#fff;stroke:#cfd6df}.zone-shot-spot text{fill:#172033;font-weight:850;text-anchor:middle}.zone-shot-count{font-size:13px}.zone-shot-rate{font-size:11px}.zone-shot-legend{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:12px}.zone-shot-legend span{padding:6px 9px;border:1px solid;border-radius:4px;font-size:.65rem}.zone-shot-legend .strong{border-color:#8abde7;background:linear-gradient(135deg,#f4faff,#cfe8ff);color:#215f92}.zone-shot-legend .weak{border-color:#e7a1a8;background:linear-gradient(135deg,#fff7f7,#ffd9dd);color:#9f3340}.zone-shot-legend .low{border-color:#c6cdd6;background:linear-gradient(135deg,#f8f9fb,#e5e9ee);color:#596579}.zone-shot-legend .average{border-color:#d7dde5;background:#fff;color:#667085}@media(max-width:760px){.zone-shot-map{width:min(100%,360px)}.zone-shot-spot rect{width:68px;transform:translateX(-3px)}}
/* SVG gradient fills for the 16-zone map. */
.zone-shot-spot.strong rect{fill:url(#zone-blue)}
.zone-shot-spot.weak rect{fill:url(#zone-red)}
.zone-shot-spot.low rect{fill:url(#zone-gray)}
.zone-shot-spot .zone-shot-number{fill:#667085;font-size:7px;font-weight:900;text-anchor:start;letter-spacing:.04em}
.zone-shot-map{aspect-ratio:590/477}
.zone-shot-spot circle{stroke:none}
.zone-shot-spot.strong circle{fill:url(#zone-blue)}
.zone-shot-spot.elite circle{fill:url(#zone-blue-deep)}
.zone-shot-spot.weak circle{fill:url(#zone-red)}
.zone-shot-spot.low circle{fill:url(#zone-gray)}
.zone-shot-spot.none circle{fill:#f7f8fa}
.zone-shot-spot.average circle{fill:#fff;stroke:#cfd6df}
.zone-shot-spot.average circle{fill:url(#zone-green);stroke:none}
.zone-shot-spot circle{opacity:.84}.zone-shot-label{fill:#4f5c70!important;font-size:8.4px;font-weight:400!important;text-anchor:middle;letter-spacing:0}.zone-shot-legend .elite{border-color:#5d9fd2;background:linear-gradient(135deg,#edf8ff,#77b9e9);color:#155581}
.shot-map-empty{display:grid;place-items:center;min-height:180px;padding:28px;border:1px dashed #cbd3df;background:#f7f9fc;color:#526176;text-align:center}.shot-map-empty strong{font-size:18px;color:#182235}.shot-map-empty p{margin:7px 0 0;font-size:13px;font-weight:400}
.detail-head .power-mark{min-height:82px}.detail-head .power-mark span{align-self:center}@media(max-width:760px){.detail-head .power-mark{min-height:64px}}
.zone-shot-legend .average{border-color:#9bd4ae;background:linear-gradient(135deg,#f5fff8,#d2f2dc);color:#31724a}
.zone-shot-layout{grid-template-columns:minmax(0,500px) minmax(210px,1fr);justify-content:start;align-items:center;gap:30px}.zone-shot-aside{display:grid;gap:14px;align-content:center;max-width:330px}.zone-shot-comment,.zone-shot-note{margin:0;color:#475467;font-size:.78rem;line-height:1.8}.zone-shot-note{padding-top:14px;border-top:1px solid #e3e7ee;color:#667085;font-size:.69rem}.zone-shot-aside>a{color:#344054;font-size:.72rem}.zone-shot-aside .zone-shot-legend{justify-content:flex-start;margin-top:0}@media(max-width:760px){.zone-shot-layout{grid-template-columns:1fr;justify-items:center;gap:18px}.zone-shot-aside{max-width:360px}.zone-shot-aside .zone-shot-legend{justify-content:center}}
.zone-shot-layout{align-items:stretch;gap:24px}.zone-shot-aside{width:100%;max-width:none;min-height:100%;padding:22px;border:1px solid #dfe5ed;border-radius:6px;background:linear-gradient(145deg,#fff,#f7f9fc);box-shadow:0 9px 22px rgba(23,32,51,.05);align-content:start}.zone-shot-aside-intro{padding-bottom:18px;border-bottom:1px solid #e4e8ee}.zone-shot-aside h4{margin:3px 0 9px;color:#172033;font-size:1rem}.zone-shot-aside-label{margin:0;color:#7a8494;font-size:.62rem;font-weight:850;letter-spacing:.08em}.zone-shot-aside-legend{padding:2px 0 16px;border-bottom:1px solid #e4e8ee}.zone-shot-aside-legend .zone-shot-aside-label{margin-bottom:10px}.zone-shot-aside-source{display:grid;gap:10px;align-content:end;height:100%}.zone-shot-note{padding-top:0;border-top:0}.zone-shot-aside-source a{color:#344054;font-size:.72rem}@media(max-width:760px){.zone-shot-aside{max-width:360px}.zone-shot-aside-source{height:auto}}
/* Clarifies the variable-size shot markers. */
.zone-shot-size-note{margin:10px 0 0;color:#667085;font-size:.68rem;line-height:1.55}
.zone-shot-size-key{display:flex;align-items:center;gap:13px;margin-top:14px;color:#596579;font-size:.68rem;line-height:1}.zone-shot-size-title{color:#667085;font-size:.66rem}.zone-shot-size-key span:not(.zone-shot-size-title){display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.zone-shot-size-key i{display:inline-block;flex:0 0 auto;border:1px solid #98a4b3;border-radius:50%;background:linear-gradient(145deg,#f7f9fc,#dce3eb);box-shadow:inset 0 1px rgba(255,255,255,.9)}.zone-shot-size-key .size-small{width:12px;height:12px}.zone-shot-size-key .size-medium{width:19px;height:19px}.zone-shot-size-key .size-large{width:28px;height:28px}.zone-shot-size-key .size-xlarge{width:36px;height:36px}@media(max-width:760px){.zone-shot-size-key{justify-content:center;gap:10px;flex-wrap:wrap}.zone-shot-size-title{width:100%;text-align:center}}
.zone-shot-size-key i{border:0}
.zone-shot-size-key .size-small{width:11px;height:11px}.zone-shot-size-key .size-medium{width:16px;height:16px}.zone-shot-size-key .size-large{width:22px;height:22px}.zone-shot-size-key .size-xlarge{width:28px;height:28px}.zone-shot-size-key .size-xxlarge{width:34px;height:34px}
.zone-shot-size-key .size-small{width:12px;height:12px}.zone-shot-size-key .size-medium{width:17px;height:17px}.zone-shot-size-key .size-large{width:22px;height:22px}.zone-shot-size-key .size-xlarge{width:28px;height:28px}.zone-shot-size-key .size-xxlarge{width:34px;height:34px}.zone-shot-size-key .size-xxxlarge{width:41px;height:41px}

/* Criteria page: use the live ability-card language and keep registration marks centered. */
.criteria-intro{color:#172033;font-weight:700}
.criteria-sample .criteria-player-abilities{grid-column:1/-1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;width:100%;margin-top:2px}
.criteria-sample .criteria-player-abilities>.ability-card{display:grid!important;grid-template-rows:18px 34px 14px 18px!important;align-items:center!important;justify-items:stretch;min-width:0;min-height:96px!important;height:96px!important;padding:6px 8px!important;border:1px solid #cfd8e3!important;border-radius:6px!important;overflow:hidden}
.criteria-sample .criteria-player-abilities>.ability-card>small{display:grid!important;place-items:center!important;align-self:stretch!important;width:100%;margin:0!important;text-align:center!important}
.criteria-sample .criteria-player-abilities .ability-card-main{height:34px!important;align-self:center!important}
.criteria-sample .criteria-player-abilities .ability-rank-area{height:34px!important;align-items:center!important;justify-content:center!important}
.criteria-sample .criteria-player-abilities .ability-meter{width:100%!important;height:10px!important;margin:0!important;align-self:center!important}
.criteria-sample .criteria-player-abilities .ability-icon-slot{height:18px!important;align-self:end!important}
.criteria-sample .criteria-player-abilities>.criteria-ability-card{grid-template-rows:20px 38px 14px minmax(68px,1fr)!important;row-gap:4px;min-height:164px!important;height:auto!important}
.criteria-sample .criteria-player-abilities>.criteria-ability-card>small{font-weight:700!important}
.criteria-sample .criteria-player-abilities>.criteria-ability-card .ability-tags{display:none!important}
.criteria-sample .criteria-player-abilities>.criteria-ability-card>p{align-self:start;margin:5px 0 0;color:#596579;font-size:.7rem;font-weight:400;line-height:1.55;text-align:left}
.criteria-team-sample .criteria-position-note{margin:12px 0 0;padding:9px 10px;border-top:1px solid #e5e9ef;color:#667085;font-size:.72rem;font-weight:400;line-height:1.6}
.criteria-detail-title{margin:28px 20px 0;padding:0 0 10px;border-bottom:1px solid #e2e7ef;color:#172033;font-size:1.15rem;line-height:1.2}
.mark-demo>span{display:inline-flex;align-items:center;gap:5px;color:#344054;font-size:.78rem;font-weight:700}
.mark-demo .slot-icon{display:grid!important;place-items:center!important;flex:0 0 24px!important;width:24px!important;height:24px!important;padding:0!important;color:#fff!important;line-height:1!important;text-align:center!important}
.mark-demo .slot-icon.japan{color:#d92d20!important}
.criteria-icon-card{grid-column:span 2}
.criteria-icon-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.criteria-icon-legend>span{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-width:0;padding:5px 6px;border:1px solid #e5e9f0;border-radius:5px;background:#f8fafc}
.criteria-icon-legend b{display:inline-grid;place-items:center;min-width:48px;min-height:22px;padding:2px 5px;border:1px solid #cdd5df;border-radius:4px;background:linear-gradient(180deg,#fff,#eef2f6);color:#344054;font-size:.61rem;line-height:1;white-space:nowrap}
.criteria-icon-legend small{color:#596579;font-size:.65rem;font-weight:400;line-height:1.35}
.criteria-inline-icons{display:grid;gap:6px;margin-top:12px}
.criteria-icon-item{display:flex;align-items:center;gap:7px;min-width:0}
.criteria-icon-item b{display:inline-grid;place-items:center;flex:0 0 auto;min-width:48px;min-height:22px;padding:2px 5px;border:1px solid #cdd5df;border-radius:4px;background:linear-gradient(180deg,#fff,#eef2f6);color:#344054;font-size:.61rem;line-height:1;white-space:nowrap}
.criteria-icon-item b.tone-shooting{border-color:#efb26b;background:linear-gradient(180deg,#fff8e8,#ffe0af);color:#8c4500}
.criteria-icon-item b.tone-ft{border-color:#86cab8;background:linear-gradient(180deg,#effff9,#ccefe4);color:#12634f}
.criteria-icon-item b.tone-power{border-color:#9ac8a5;background:linear-gradient(180deg,#f4fff5,#d7f0dc);color:#246135}
.criteria-icon-item b.tone-skill{border-color:#b8a1e5;background:linear-gradient(180deg,#faf7ff,#e5dcf7);color:#563b8d}
.criteria-icon-item b.tone-rebound,.criteria-icon-item b.tone-height{border-color:#e3bd64;background:linear-gradient(180deg,#fffaf0,#f7e4b5);color:#755000}
.criteria-icon-item b.tone-defense{border-color:#86a8d9;background:linear-gradient(180deg,#f3f7ff,#d8e4f6);color:#274e84}
.criteria-icon-item b.tone-impact{border-color:#82c59b;background:linear-gradient(180deg,#f2fff6,#d5f1df);color:#21623a}
.criteria-icon-item b.tone-experience{border-color:#d0a74c;background:linear-gradient(180deg,#fff9e9,#f2d891);color:#684800}
.criteria-icon-item small{color:#667085;font-size:.72rem;font-weight:400;line-height:1.4}
@media(max-width:980px){.criteria-sample .criteria-player-abilities{grid-template-columns:repeat(4,minmax(0,1fr))}.criteria-icon-card{grid-column:auto}}
@media(max-width:640px){.criteria-sample .criteria-player-abilities{grid-template-columns:repeat(2,minmax(0,1fr))}.criteria-icon-legend{grid-template-columns:1fr}.mark-demo>span{font-size:.7rem}}

/* 判定基準は専用ページとして表示する。 */
body[data-page="criteria"] .hero{display:none}
body[data-page="criteria"] .criteria-page{margin-top:18px}

/* 選手能力ランキング */
.ranking-page{display:none;margin-top:18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.ranking-page.active{display:block}body[data-page="rankings"] .hero,body[data-page="teamRankings"] .hero{display:none}
.ranking-head{padding:30px 32px 25px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,#fffdf7,#fff 64%,#f3f6fa)}.ranking-head p{margin:0 0 8px;color:#ad7912;font-size:.68rem;font-weight:800;letter-spacing:.12em}.ranking-head h1{margin:0;color:#172033;font-size:clamp(2rem,4vw,3.5rem);line-height:1}.ranking-head span{display:block;margin-top:12px;color:#5d687a;font-size:.88rem;line-height:1.7}
.ranking-controls{--ranking-control-height:34px;--ranking-control-font:13px;--ranking-control-radius:5px;display:grid;gap:12px;padding:18px 24px;border-bottom:1px solid var(--line);background:#fafbfc}.ranking-view-modes,.ranking-leagues,.ranking-metrics{display:flex;align-items:center;gap:5px;overflow-x:auto;scrollbar-width:thin}.ranking-view-modes button,.ranking-leagues button,.ranking-metrics button{flex:0 0 auto;min-height:var(--ranking-control-height);padding:0 12px;border:1px solid #d8dee8;border-radius:var(--ranking-control-radius);background:#fff;color:#536075;font-family:inherit;font-size:var(--ranking-control-font);font-weight:700;line-height:1;letter-spacing:0;cursor:pointer;transition:border-color .15s,background .15s,color .15s,box-shadow .15s}.ranking-view-modes button.active,.ranking-leagues button.active,.ranking-metrics button.active{border-color:#172033;background:#172033;color:#fff;box-shadow:0 3px 10px rgba(23,32,51,.12)}.ranking-view-modes,.ranking-leagues{width:max-content;padding:3px;border:1px solid #dce2ea;border-radius:7px;background:#fff}.ranking-view-modes button,.ranking-leagues button{border-color:transparent}.ranking-view-modes button[data-ranking-direction="worst"].active{background:linear-gradient(135deg,#a71f2b,#e54955);color:#fff}
.ranking-filter-panel{display:grid;gap:8px;padding:11px 12px;border:1px solid #e0e5ec;border-radius:7px;background:#fff}.ranking-filter-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ranking-filter-row>span{flex:0 0 76px;color:#59667a;font-size:var(--ranking-control-font);font-weight:800;line-height:1}.ranking-check{position:relative;display:inline-flex;align-items:center;cursor:pointer}.ranking-check input{position:absolute;opacity:0;pointer-events:none}.ranking-check b{display:flex;align-items:center;justify-content:center;min-width:42px;min-height:var(--ranking-control-height);padding:0 10px;border:1px solid #d8dee8;border-radius:var(--ranking-control-radius);background:#fff;color:#536075;font-family:inherit;font-size:var(--ranking-control-font);font-weight:700;line-height:1;letter-spacing:0;transition:border-color .15s,background .15s,color .15s,box-shadow .15s}.ranking-check input:focus-visible+b{outline:2px solid #4e8de6;outline-offset:2px}.ranking-check input:checked+b{border-color:#172033;background:#172033;color:#fff;box-shadow:0 3px 10px rgba(23,32,51,.12)}.ranking-check-nationality b{min-width:94px}.ranking-check-age b{min-width:68px}.ranking-filter-reset{min-height:var(--ranking-control-height);padding:0 10px;border:1px solid transparent;border-radius:var(--ranking-control-radius);background:#f2f4f7;color:#657186;font-family:inherit;font-size:var(--ranking-control-font);font-weight:700;line-height:1;cursor:pointer}.ranking-filter-reset:disabled{color:#8b95a6;opacity:.58;cursor:default}
.ranking-toolbar{position:relative;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ranking-dropdown{position:relative;z-index:20}.ranking-dropdown[open]{z-index:30}.ranking-dropdown summary{display:grid;grid-template-columns:auto auto 10px;align-items:center;gap:7px;min-height:42px;padding:0 12px;border:1px solid #d8dee8;border-radius:7px;background:#fff;color:#172033;list-style:none;cursor:pointer;box-shadow:0 2px 7px rgba(23,32,51,.04);transition:border-color .15s,box-shadow .15s}.ranking-dropdown summary::-webkit-details-marker{display:none}.ranking-dropdown summary::after{content:"";width:6px;height:6px;border-right:2px solid #778397;border-bottom:2px solid #778397;transform:translateY(-2px) rotate(45deg);transition:transform .15s}.ranking-dropdown[open] summary{border-color:#172033;box-shadow:0 4px 14px rgba(23,32,51,.12)}.ranking-dropdown[open] summary::after{transform:translateY(2px) rotate(225deg)}.ranking-dropdown summary span{color:#7b8798;font-size:.63rem;font-weight:700}.ranking-dropdown summary strong{font-size:.78rem;white-space:nowrap}.ranking-dropdown-menu{position:absolute;top:calc(100% + 7px);left:0;display:grid;gap:6px;padding:9px;border:1px solid #d8dee8;border-radius:7px;background:#fff;box-shadow:0 14px 34px rgba(23,32,51,.16)}.ranking-dropdown-menu button{min-height:34px;padding:0 12px;border:1px solid #d8dee8;border-radius:5px;background:#fff;color:#536075;font-family:inherit;font-size:13px;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer}.ranking-dropdown-menu button:hover{border-color:#9ca8b9;background:#f6f8fb}.ranking-dropdown-menu button.active{border-color:#172033;background:#172033;color:#fff}.ranking-league-menu{width:190px}.ranking-league-menu button{text-align:left}.ranking-filter-menu{width:min(500px,calc(100vw - 48px));padding:0}.ranking-filter-dropdown .ranking-filter-panel{border:0;padding:13px}.ranking-ability-dropdown .ranking-dropdown-menu{right:0;left:auto}.ranking-metric-menu{grid-template-columns:repeat(2,minmax(128px,1fr));width:340px}.ranking-metric-menu button{text-align:left}.ranking-active-filters{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.ranking-active-filters span{padding:5px 9px;border:1px solid #ccd5e1;border-radius:999px;background:#fff;color:#4f5d72;font-size:.68rem;font-weight:700;line-height:1}
.ranking-summary{display:grid;grid-template-columns:170px minmax(0,1fr) auto;align-items:center;gap:20px;padding:15px 24px;border-bottom:1px solid var(--line)}.ranking-summary div{display:grid;gap:2px}.ranking-summary span{color:#7a8597;font-size:.65rem}.ranking-summary strong{font-size:1.2rem}.ranking-summary p{margin:0;color:#586578;font-size:.75rem;line-height:1.55}.ranking-summary b{color:#9a7019;font-size:.72rem;letter-spacing:.06em}
.ranking-list{display:grid}.ranking-row{display:grid;grid-template-columns:52px 54px minmax(170px,1.1fr) minmax(180px,1fr) minmax(240px,1.35fr) 140px;align-items:center;gap:12px;min-height:76px;padding:8px 24px;border-bottom:1px solid #e8ebf0;color:#172033;text-decoration:none;transition:background .15s,transform .15s}.ranking-row:last-child{border-bottom:0}.ranking-row:hover{background:#fffaf0}.ranking-position{font-size:1.2rem;font-weight:900;text-align:center}.ranking-list.is-top-mode .ranking-row:nth-child(-n+3) .ranking-position{color:#b07a12;font-size:1.45rem}.ranking-list.is-worst-mode .ranking-row:nth-child(-n+3) .ranking-position{color:#c42c39;font-size:1.45rem}.ranking-list.is-worst-mode .ranking-row:hover{background:#fff5f5}.ranking-player-photo{display:grid;place-items:center;width:50px;height:58px;border:1px solid #dce2ea;border-radius:6px;background:#f2f4f7;overflow:hidden}.ranking-player-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 16%}.ranking-photo-fallback{font-size:1.1rem;font-weight:900;color:#7a8597}.ranking-player,.ranking-team{display:grid;min-width:0;gap:3px}.ranking-player strong{overflow:hidden;font-size:.96rem;text-overflow:ellipsis;white-space:nowrap}.ranking-player small,.ranking-team small{color:#788397;font-size:.65rem}.ranking-team{grid-template-columns:30px minmax(0,1fr);align-items:center}.ranking-team img{grid-row:1/3;width:28px;height:28px;object-fit:contain}.ranking-team span{overflow:hidden;font-size:.75rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.ranking-evidence{color:#4f5d72;font-size:.7rem;font-weight:600;line-height:1.45}.ranking-grade{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-height:38px}.ranking-grade>strong{display:flex;align-items:center;justify-content:center;height:38px;font-family:Impact,"Arial Narrow",sans-serif;font-size:2.1rem;line-height:1;text-align:center}.ranking-grade .ability-meter{width:100%;height:8px;margin:0;align-self:center}.ranking-grade.rank-letter-S>strong{color:#e61e72}.ranking-grade.rank-letter-A>strong{color:#df2633}.ranking-grade.rank-letter-B>strong{color:#d39a00}.ranking-grade.rank-letter-C>strong{color:#16a35b}.ranking-grade.rank-letter-D>strong{color:#2877d5}.ranking-grade.rank-letter-E>strong{color:#7650c8}.ranking-grade.rank-letter-F>strong{color:#667085}.ranking-metrics button{min-height:29px!important;padding:0 9px!important;font-size:.68rem!important;font-weight:650!important}
.ranking-metrics{padding-top:12px;border-top:1px solid #e1e6ed}.ranking-metrics button{min-height:var(--ranking-control-height)!important;padding:0 10px!important;font-size:var(--ranking-control-font)!important;font-weight:700!important}
.ranking-player .ranking-player-roman,.ranking-player .ranking-player-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-player .ranking-player-meta{color:#536075;font-weight:700}
@media(max-width:1120px){.ranking-row{grid-template-columns:38px 48px minmax(130px,1fr) minmax(140px,.85fr) 120px;grid-template-rows:auto auto}.ranking-position,.ranking-player-photo{grid-row:1/3}.ranking-player,.ranking-team{grid-row:1}.ranking-evidence{display:block;grid-column:3/5;grid-row:2;font-size:.66rem;line-height:1.35}.ranking-grade{grid-column:5;grid-row:1/3}.ranking-summary{grid-template-columns:140px minmax(0,1fr)}.ranking-summary>b{display:none}}
@media(max-width:640px){.ranking-page{margin-top:10px}.ranking-head{padding:22px 18px}.ranking-controls{padding:12px}.ranking-filter-panel{gap:9px;padding:10px}.ranking-filter-row{gap:5px}.ranking-filter-row>span{flex:0 0 100%;margin-bottom:2px}.ranking-check b{min-width:39px;min-height:31px;padding:0 8px}.ranking-check-nationality b{min-width:86px}.ranking-check-age b{min-width:62px}.ranking-summary{grid-template-columns:1fr;padding:12px 14px;gap:6px}.ranking-summary p{font-size:.7rem}.ranking-row{grid-template-columns:30px 42px minmax(110px,1fr) 84px;grid-template-rows:auto auto;gap:5px 7px;min-height:66px;padding:7px 10px}.ranking-player-photo{width:40px;height:48px}.ranking-team{display:none}.ranking-player strong{font-size:.82rem}.ranking-player small{font-size:.58rem}.ranking-evidence{display:block;grid-column:3;grid-row:2;font-size:.62rem}.ranking-grade{grid-column:4;grid-row:1/3;grid-template-columns:28px minmax(0,1fr);gap:5px}.ranking-grade>strong{font-size:1.7rem}.ranking-grade .ability-meter{height:7px}}
@media(max-width:640px){.ranking-check b{min-height:var(--ranking-control-height)}}
@media(max-width:640px){.ranking-controls{gap:10px}.ranking-toolbar{gap:6px}.ranking-dropdown summary{min-height:40px;padding:0 10px}.ranking-dropdown summary span{font-size:.6rem}.ranking-dropdown summary strong{font-size:.72rem}.ranking-dropdown[open]{flex:1 0 100%}.ranking-dropdown[open] summary{width:100%}.ranking-dropdown-menu,.ranking-ability-dropdown .ranking-dropdown-menu{position:static;right:auto;left:auto;width:100%;max-width:none;margin-top:6px;box-shadow:0 8px 24px rgba(23,32,51,.12)}.ranking-metric-menu{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-filter-menu{width:100%}.ranking-active-filters{gap:4px}.ranking-active-filters span{padding:4px 7px;font-size:.63rem}}
.ranking-grade-detail{display:grid;min-width:0;gap:5px}.ranking-feature-icons{display:flex;min-width:0;gap:3px}.ranking-feature-icons .ability-feature-tag{flex:1 1 0;min-width:0;height:17px;padding:1px 2px;font-size:.48rem}
@media(max-width:640px){.ranking-row{grid-template-columns:30px 42px minmax(110px,1fr) 92px;min-height:70px}.ranking-feature-icons{gap:2px}.ranking-feature-icons .ability-feature-tag{height:15px;padding:1px;font-size:.42rem}}
.ranking-player-photo{position:relative}.ranking-player-photo img{position:absolute;inset:0}
.ranking-player-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 12%;transform:scale(1.32);transform-origin:50% 12%}
.team-ranking-row{grid-template-columns:52px 72px minmax(230px,1.1fr) minmax(300px,1.5fr) 170px;min-height:84px}
.ranking-team-logo{display:grid;place-items:center;width:66px;height:62px;padding:7px;border:1px solid #dce2ea;border-radius:6px;background:#fff}
.ranking-team-logo img{width:100%;height:100%;object-fit:contain}
.team-ranking-name strong{font-size:1rem}
.team-ranking-list .ranking-evidence{font-size:.72rem;line-height:1.55}
.team-ranking-number{grid-template-columns:minmax(68px,auto) minmax(54px,1fr);gap:10px}
.team-ranking-number>strong{justify-content:flex-end;height:auto;color:#172033!important;font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif!important;font-size:1.12rem!important;font-weight:900;letter-spacing:0;white-space:nowrap}
.team-number-meter{display:block;width:100%;height:8px;border-radius:2px;background:#e4e9f0;overflow:hidden}
.team-number-meter>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1769aa 0%,#35a9cf 100%)}
.team-ranking-empty{display:grid;place-items:center;gap:6px;min-height:220px;padding:36px;color:#69758a;text-align:center}
.team-ranking-empty strong{color:#172033;font-size:1rem}
.team-ranking-empty span{font-size:.75rem}
@media(max-width:900px){.team-ranking-row{grid-template-columns:38px 58px minmax(150px,1fr) 125px;grid-template-rows:auto auto}.ranking-team-logo{grid-row:1/3;width:54px;height:54px}.team-ranking-row .ranking-evidence{grid-column:3;grid-row:2}.team-ranking-row .ranking-grade{grid-column:4;grid-row:1/3}}
@media(max-width:640px){.team-ranking-row{grid-template-columns:30px 45px minmax(110px,1fr) 92px;gap:5px 7px;padding:7px 10px}.ranking-team-logo{width:42px;height:42px;padding:4px}.team-ranking-name strong{font-size:.8rem}.team-ranking-name small{font-size:.56rem}.team-ranking-list .ranking-evidence{font-size:.6rem;line-height:1.35}.team-ranking-number{grid-template-columns:1fr;gap:5px}.team-ranking-number>strong{justify-content:flex-start;font-size:.88rem!important}.team-ranking-number .ranking-grade-detail{width:100%}.team-number-meter{height:7px}}

/* 全クラブでチーム分析の2列幅と昨季スタッツの内側グリッドを固定する。 */
@media(min-width:1181px){
  .team-themed .radar-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .team-themed .radar-section{align-items:start!important}
  .team-themed .radar-column,.team-themed .season-stat-analysis{min-width:0;width:100%;height:628px!important;box-sizing:border-box;align-self:start!important}
  .team-themed .season-stat-analysis{grid-column:auto!important}
  .team-themed .season-stat-analysis .season-stat-table.season-stat-flat{display:grid;flex:1!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(10,minmax(0,1fr))!important}
  .team-themed .season-stat-analysis .season-stat-table.season-stat-flat>.season-stat-cell{height:auto!important}
  .team-themed .radar-column{grid-template-rows:minmax(0,1fr) 208px!important}
  .team-themed .radar-column>.team-ability-panel{height:100%}
  .team-themed .radar-column .position-coverage.vertical-position-coverage{height:208px;box-sizing:border-box}
  .team-themed .radar-column .position-coverage.vertical-position-coverage .position-grid{height:156px}
  .team-themed .radar-column .position-coverage.vertical-position-coverage .pos-card{height:156px;box-sizing:border-box;grid-template-rows:18px 110px 20px}
  .team-themed .radar-column .position-coverage.vertical-position-coverage .pos-bar{height:110px}
}

/* ポジション編成の帯と状態ラベルを、一覧性が出るサイズへ調整。 */
.vertical-position-coverage .pos-bar{width:34px!important}
.vertical-position-coverage .pos-status{font-size:.68rem!important;font-weight:700!important}
.vertical-position-coverage .pos-count{font-size:.68rem!important}
@media(max-width:760px){
  .vertical-position-coverage .pos-bar{width:30px!important}
  .vertical-position-coverage .pos-status{font-size:.62rem!important}
}

/* チーム分析の補正値と所見を主役にし、選手層の高さで全体を整える。 */
.grouped-team-analysis .team-support-factors{gap:10px;margin-top:12px}
.grouped-team-analysis .radar-title .team-support-factors{margin-top:0;margin-left:auto}
.grouped-team-analysis .team-support-factors>span{min-height:34px;gap:7px;padding:6px 10px;font-size:.76rem;font-weight:700}
.grouped-team-analysis .team-support-factors b{font-size:1.28rem}
.grouped-team-analysis .team-profile{margin-top:10px;padding:13px 14px;color:#344054;font-size:.78rem;line-height:1.78}
@media(min-width:1181px){
  .team-themed .radar-column{grid-template-rows:minmax(0,1fr) 152px!important}
  .team-themed .radar-column .position-coverage.vertical-position-coverage{height:152px}
  .team-themed .radar-column .position-coverage.vertical-position-coverage .position-grid{height:100px}
  .team-themed .radar-column .position-coverage.vertical-position-coverage .pos-card{height:100px;grid-template-rows:18px 54px 20px}
  .team-themed .radar-column .position-coverage.vertical-position-coverage .pos-bar{height:54px}
  .team-themed .grouped-team-analysis{display:flex;flex-direction:column;overflow:hidden}
  .team-themed .grouped-team-analysis .team-ability-grid{flex:0 0 auto}
  .team-themed .grouped-team-analysis .team-profile{display:-webkit-box;overflow:hidden;font-size:.74rem;line-height:1.62;-webkit-box-orient:vertical;-webkit-line-clamp:7}
}

/* 川崎のみの試作：昨季スタッツと想定スタメンを同じ分析面で切り替える。 */
.analysis-tabs{display:flex;align-items:center;gap:4px;padding:3px;border:1px solid #dfe5ed;border-radius:6px;background:#f7f9fc}.analysis-tab{min-height:27px;padding:0 9px;border:0;border-radius:4px;background:transparent;color:#667085;font-size:.66rem;font-weight:700;cursor:pointer}.analysis-tab.active{background:#172033;color:#fff;box-shadow:0 2px 5px rgba(23,32,51,.16)}.analysis-tab-panel{display:flex;min-height:0;flex:1;flex-direction:column}.analysis-tab-panel[hidden]{display:none!important}.analysis-tab-panel .season-stat-table{flex:1}.season-stat-analysis.lineup-mode .analysis-stats-legend{opacity:0;pointer-events:none}.starting-lineup-panel{min-height:0}.starting-lineup-note{margin:3px 0 7px;color:#667085;font-size:.67rem;font-weight:400;text-align:right}.starting-court{position:relative;isolation:isolate;flex:1;min-height:392px;overflow:hidden;border:2px solid #cfd8e6;border-radius:8px;background:linear-gradient(135deg,#fff 0%,#f7f9fd 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.8)}.starting-court::before{position:absolute;inset:8% 7%;z-index:-1;border-top:2px solid #d5dde9;border-left:2px solid #d5dde9;border-right:2px solid #d5dde9;border-radius:50% 50% 0 0;content:""}.starting-court::after{position:absolute;top:0;right:8%;left:8%;z-index:-1;height:38%;border-bottom:2px solid #d5dde9;content:""}.court-hoop{position:absolute;top:8%;left:50%;z-index:-1;width:18px;height:18px;transform:translateX(-50%);border:2px solid #ed664f;border-radius:50%;background:#fff}.court-key{position:absolute;top:0;left:50%;z-index:-1;width:27%;height:42%;transform:translateX(-50%);border:2px solid #d5dde9;border-top:0}.court-arc{position:absolute;top:17%;left:50%;z-index:-1;width:36%;height:24%;transform:translateX(-50%);border:2px solid #d5dde9;border-bottom:0;border-radius:50% 50% 0 0}.starting-lineup-player{position:absolute;z-index:1;display:grid;grid-template-columns:46px minmax(0,1fr);gap:6px;align-items:center;width:148px;min-height:70px;padding:5px 6px;border:1px solid color-mix(in srgb,var(--lineup-accent) 50%,#d9e0ea);border-radius:7px;background:rgba(255,255,255,.94);box-shadow:0 7px 16px rgba(23,32,51,.12);transform:translate(-50%,-50%)}.starting-lineup-player .photo-shell{width:46px;height:58px;min-height:0;border-radius:5px}.starting-lineup-player .photo-shell img{transform:scale(1.14);transform-origin:50% 12%}.starting-lineup-info{display:grid;min-width:0;gap:2px}.starting-lineup-info>strong{overflow:hidden;color:#172033;font-size:.72rem;font-weight:800;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.starting-lineup-info>small{overflow:hidden;color:#667085;font-size:.57rem;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.starting-lineup-ranks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;margin-top:2px}.starting-lineup-ranks>span{display:flex;align-items:baseline;justify-content:center;gap:2px;min-width:0;padding:2px 1px;border-radius:3px;background:#f3f6fa}.starting-lineup-ranks small{color:#667085;font-size:.48rem;font-weight:700}.starting-lineup-ranks b{font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:.78rem;font-weight:1000;line-height:1}.lineup-slot-0{top:21%;left:50%}.lineup-slot-1{top:43%;left:18%}.lineup-slot-2{top:43%;left:82%}.lineup-slot-3{top:73%;left:29%}.lineup-slot-4{top:73%;left:71%}
@media(max-width:760px){.analysis-tabs{margin-right:auto}.starting-court{min-height:505px}.starting-lineup-player{width:138px}.lineup-slot-1{left:22%}.lineup-slot-2{left:78%}.lineup-slot-3{left:27%}.lineup-slot-4{left:73%}}

/* 想定スタメン：表示面いっぱいに使う、正面から見たハーフコート。 */
.starting-lineup-panel{display:flex;flex:1;min-height:0;flex-direction:column}
.starting-lineup-panel[hidden]{display:none!important}
.starting-lineup-note{margin:2px 0 8px;font-size:.72rem}
.starting-court{flex:0 1 auto;width:min(100%,590px);height:auto;aspect-ratio:15/14;margin:auto;border-color:#cbd7e7;border-radius:7px;background:linear-gradient(145deg,#ffffff 0%,#f6f8fc 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.9)}
.starting-court::before,.starting-court::after{display:none}
.starting-court-svg{position:absolute;inset:0;z-index:0;width:100%;height:100%;fill:none;pointer-events:none;stroke:#91a4ba;stroke-width:2}
.starting-court-svg .court-dash{stroke-dasharray:5 5}
.shot-court{background:#fff}.starting-court{background:linear-gradient(145deg,#fff 0%,#f6f8fc 100%)}
.starting-lineup-player{z-index:2;grid-template-columns:66px minmax(0,1fr);gap:9px;align-items:end;width:276px;min-height:106px;padding:7px 10px 12px;border-color:color-mix(in srgb,var(--lineup-accent) 58%,#cfd8e5);border-radius:8px;box-shadow:0 9px 19px rgba(23,32,51,.14)}
.starting-lineup-player .photo-shell{align-self:end;width:66px;height:82px;border-radius:6px}
.starting-lineup-player .photo-shell img{transform:translateY(7px) scale(1.76);transform-origin:50% 10%}
.starting-lineup-info{gap:3px}
.starting-lineup-info>strong{font-size:.96rem;line-height:1.18}
.starting-lineup-profile{display:flex;min-width:0;align-items:center;gap:6px}.starting-lineup-profile>b{display:grid;place-items:center;min-width:31px;height:23px;padding:0 5px;border-radius:4px;background:#172033;color:#fff;font-size:.72rem;line-height:1}.starting-lineup-profile>small{overflow:hidden;color:#667085;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}
.starting-lineup-ranks{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;margin-top:3px}
.starting-lineup-ranks>span{min-height:34px;gap:4px;padding:4px 3px;background:#f3f6fa}
.starting-lineup-ranks small{font-size:.7rem;font-weight:800;line-height:1}
.starting-lineup-ranks b{font-size:1.4rem;background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;line-height:.9;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom) 22%,transparent)}
.starting-lineup-vacancy{grid-template-columns:66px minmax(0,1fr);border-style:dashed;border-color:#aeb8c7;background:rgba(248,250,252,.9);box-shadow:none}.lineup-vacancy-mark{display:grid;width:58px;height:58px;place-items:center;border:1px solid #cbd3df;border-radius:6px;background:#e8edf4;color:#697386;font-size:1rem;font-weight:900}.starting-lineup-vacancy .starting-lineup-info>strong{color:#536075}.starting-lineup-vacancy .starting-lineup-info>small{white-space:normal}
.lineup-slot-0{top:16%;left:50%}.lineup-slot-1{top:43%;left:24%}.lineup-slot-2{top:43%;left:76%}.lineup-slot-3{top:73%;left:25%}.lineup-slot-4{top:73%;left:75%}
@media(max-width:760px){.starting-court{width:100%;min-height:0;aspect-ratio:15/14}.starting-lineup-player{grid-template-columns:47px minmax(0,1fr);width:180px;min-height:76px;padding:4px 5px 8px}.starting-lineup-player .photo-shell{align-self:end;width:47px;height:59px}.starting-lineup-player .photo-shell img{transform:translateY(5px) scale(1.72);transform-origin:50% 10%}.starting-lineup-info>strong{font-size:.72rem}.starting-lineup-info>small{font-size:.56rem}.starting-lineup-ranks>span{min-height:27px;gap:1px;padding:3px 1px}.starting-lineup-ranks b{font-size:1rem}.starting-lineup-ranks small{font-size:.54rem}.lineup-slot-1{left:25%}.lineup-slot-2{left:75%}.lineup-slot-3{left:25%}.lineup-slot-4{left:75%}}

/* 川崎限定: コートを使わず、選択した5人をベンチと入れ替えられるラインナップ編集面。 */
.starting-lineup-builder{min-height:0;padding:8px 0 0}.starting-lineup-builder .lineup-builder-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr);gap:10px;min-height:455px}.lineup-builder-starters,.lineup-builder-bench{min-width:0;border:1px solid #d9e1ec;border-radius:8px;background:linear-gradient(155deg,#fff 0%,#f7f9fc 100%)}.lineup-builder-starters{display:flex;flex-direction:column;padding:8px}.lineup-builder-radar-wrap{position:relative;display:grid;min-height:176px;place-items:center;border-bottom:1px solid #e1e7ef}.lineup-builder-radar{width:178px;height:178px;overflow:visible}.lineup-builder-radar-grid{fill:none;stroke:#d6e0ec;stroke-width:1.3}.lineup-builder-radar-shape{fill:color-mix(in srgb,var(--team-accent,#a80f42) 24%,transparent);stroke:var(--team-accent,#a80f42);stroke-width:2.4}.lineup-builder-radar text{fill:#536278;font-family:inherit;font-size:10px;font-weight:800}.lineup-builder-overall{position:absolute;top:8px;right:8px;display:grid;place-items:center;min-width:38px}.lineup-builder-overall small{color:#68758a;font-size:.52rem;font-weight:800}.lineup-builder-overall b{font-family:Impact,"Arial Narrow",sans-serif;font-size:1.65rem;line-height:.9;background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 2px 5px color-mix(in srgb,var(--rank-bottom) 22%,transparent)}.lineup-builder-starter-list{display:grid;gap:3px;margin-top:7px}.lineup-builder-player{position:relative;display:grid;grid-template-columns:22px 45px minmax(0,1fr) 102px;gap:6px;align-items:center;width:100%;min-height:54px;padding:4px 5px;border:1px solid transparent;border-radius:5px;background:#fff;color:#172033;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.lineup-builder-player:hover{border-color:color-mix(in srgb,var(--team-accent,#a80f42) 45%,#cfd8e5);box-shadow:0 4px 12px rgba(23,32,51,.09);transform:translateY(-1px)}.lineup-builder-player.is-selected{border-color:var(--team-accent,#a80f42);box-shadow:inset 3px 0 0 var(--team-accent,#a80f42),0 4px 12px rgba(23,32,51,.09)}.lineup-builder-slot{display:grid;place-items:center;color:var(--team-accent,#a80f42);font-size:.66rem;font-weight:900}.lineup-builder-player .photo-shell{width:43px;height:48px;min-height:0;border-radius:5px}.lineup-builder-player .photo-shell img{transform:translateY(4px) scale(1.42);transform-origin:50% 10%}.lineup-builder-player-copy{display:grid;min-width:0;gap:2px}.lineup-builder-player-copy>strong{overflow:hidden;color:#1b263a;font-size:.71rem;font-weight:850;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.lineup-builder-player-copy>small{overflow:hidden;color:#66758a;font-size:.55rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.lineup-builder-player-meta{display:flex;min-width:0;height:17px;align-items:center;gap:3px;overflow:hidden}.lineup-builder-player-meta .position-icon,.lineup-builder-player-meta .slot-icon{height:16px;min-height:16px;padding:0 4px;font-size:.48rem;line-height:16px}.lineup-builder-player-meta .slot-icon.japan{padding:0 2px;font-size:.64rem}.lineup-builder-player-ranks{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;align-items:center}.lineup-builder-player-ranks>span{display:flex;align-items:baseline;justify-content:center;gap:1px;min-width:0;padding:3px 1px;border-radius:3px;background:#f2f5f9}.lineup-builder-player-ranks small{color:#65738a;font-size:.47rem;font-weight:850}.lineup-builder-player-ranks b{font-family:Impact,"Arial Narrow",sans-serif;font-size:1rem;line-height:.9;background:linear-gradient(180deg,var(--rank-top),var(--rank-bottom));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 3px color-mix(in srgb,var(--rank-bottom) 20%,transparent)}.lineup-builder-bench{display:flex;min-height:0;flex-direction:column;padding:8px}.lineup-builder-bench-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:1px 2px 7px;padding-bottom:6px;border-bottom:1px solid #e1e7ef}.lineup-builder-bench-head strong{font-size:.76rem}.lineup-builder-bench-head small{color:#778397;font-size:.55rem}.lineup-builder-bench-list{display:grid;gap:3px;min-height:0;overflow:auto;padding-right:2px}.lineup-builder-player--bench{grid-template-columns:45px minmax(0,1fr) 102px}.lineup-builder-player--bench .lineup-builder-slot{display:none}.lineup-builder-status{margin:6px 2px 0;color:#748197;font-size:.58rem;line-height:1.35;text-align:right}.starting-lineup-builder .lineup-builder-player:focus-visible{outline:2px solid #3c89db;outline-offset:1px}
@media(max-width:760px){.starting-lineup-builder .lineup-builder-main{grid-template-columns:1fr;min-height:0;gap:8px}.starting-lineup-builder .lineup-builder-starters{padding:6px}.starting-lineup-builder .lineup-builder-radar-wrap{min-height:164px}.starting-lineup-builder .lineup-builder-radar{width:164px;height:164px}.starting-lineup-builder .lineup-builder-bench{max-height:355px}.lineup-builder-player{grid-template-columns:20px 40px minmax(0,1fr) 94px;min-height:51px;padding:3px 4px;gap:5px}.lineup-builder-player--bench{grid-template-columns:40px minmax(0,1fr) 94px}.lineup-builder-player .photo-shell{width:39px;height:44px}.lineup-builder-player-copy>strong{font-size:.68rem}.lineup-builder-player-copy>small{font-size:.52rem}.lineup-builder-player-ranks b{font-size:.94rem}.lineup-builder-player-ranks small{font-size:.44rem}.lineup-builder-status{font-size:.55rem}}
.starting-lineup-builder .lineup-builder-slot{line-height:1.05;text-align:center;writing-mode:vertical-rl;text-orientation:upright}
.starting-lineup-builder .lineup-builder-radar-shape{stroke-width:1.35}
.starting-lineup-builder .lineup-builder-player.is-selected{box-shadow:0 4px 12px rgba(23,32,51,.09)}
.starting-lineup-builder .lineup-builder-player{border-color:#d8e0e9}
.starting-lineup-builder .lineup-builder-main{grid-template-columns:minmax(0,1.04fr) minmax(280px,.96fr)}
@media(max-width:760px){.starting-lineup-builder .lineup-builder-main{grid-template-columns:1fr}}
.starting-lineup-builder .lineup-builder-player-copy{display:flex;flex-direction:column;align-self:stretch;justify-content:center}
.starting-lineup-builder .lineup-builder-player-topline{display:flex;min-width:0;align-items:center;gap:4px}.starting-lineup-builder .lineup-builder-player-topline>strong{overflow:hidden;min-width:0;color:#1b263a;font-size:.78rem;font-weight:850;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.starting-lineup-builder .lineup-builder-player-inline-meta{display:flex;flex:0 0 auto;align-items:center;gap:3px}.starting-lineup-builder .lineup-builder-player-inline-meta .position-icon{min-width:31px;height:18px;padding:0 4px;font-size:.5rem}.starting-lineup-builder .lineup-builder-player-inline-meta .slot-icon.slot-icon--label{min-width:0;height:18px;min-height:18px;padding:0 4px;font-size:.46rem}.starting-lineup-builder .lineup-builder-player-copy>.lineup-builder-player-age{margin-top:1px;font-size:.56rem}
.starting-lineup-builder .lineup-builder-player-position-meta{display:flex;align-items:center;justify-content:flex-end;gap:3px;min-width:0;height:18px}.starting-lineup-builder .lineup-builder-player-position-meta .position-icon{min-width:31px;height:18px;padding:0 4px;font-size:.5rem}.starting-lineup-builder .lineup-builder-player-position-meta .slot-icon.slot-icon--label{min-width:0;height:18px;min-height:18px;padding:0 4px;font-size:.46rem}
.starting-lineup-builder .lineup-builder-player-side{grid-template-rows:1fr;align-items:end}.starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks{align-self:end}
.starting-lineup-builder .lineup-builder-player:hover{border-color:var(--team-accent,#a80f42);box-shadow:0 0 0 1px color-mix(in srgb,var(--team-accent,#a80f42) 38%,transparent),0 5px 14px rgba(23,32,51,.11)}.starting-lineup-builder .lineup-builder-player.is-selected{border-color:var(--team-accent,#a80f42);box-shadow:0 0 0 2px color-mix(in srgb,var(--team-accent,#a80f42) 72%,transparent),0 6px 16px rgba(23,32,51,.14)}
.starting-lineup-builder .lineup-builder-player--starter{grid-template-columns:22px 56px minmax(0,1fr) 140px;gap:5px;min-height:70px;padding:4px 7px 4px 3px}.starting-lineup-builder .lineup-builder-player--starter .photo-shell{width:54px;height:62px}.starting-lineup-builder .lineup-builder-player--starter .photo-shell img{transform:translateY(5px) scale(1.5)}.starting-lineup-builder .lineup-builder-player-copy{align-self:stretch;align-content:center;gap:4px}.starting-lineup-builder .lineup-builder-player-copy>strong{overflow:hidden;color:#1b263a;font-size:.82rem;font-weight:850;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.starting-lineup-builder .lineup-builder-player-copy>small{font-size:.62rem;font-weight:700}.starting-lineup-builder .lineup-builder-player-side{display:grid;min-width:0;height:100%;grid-template-rows:18px 1fr;align-items:start;justify-items:end;gap:3px}.starting-lineup-builder .lineup-builder-player-side>.position-icon{min-width:31px;height:18px;padding:0 4px;font-size:.5rem}.starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks{align-self:end;width:100%;gap:3px}.starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks>span{min-height:30px;padding:3px 2px}.starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1.18rem}.starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks small{font-size:.54rem}
.lineup-builder-player-name-row{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px}.lineup-builder-player-name-row>strong{overflow:hidden;color:#1b263a;font-size:.71rem;font-weight:850;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.lineup-builder-player-name-row .position-icon{min-width:25px;height:16px;padding:0 3px;font-size:.45rem;line-height:1}
.starting-lineup-builder .lineup-builder-player--starter{grid-template-columns:18px 45px minmax(0,1fr) 102px;gap:2px;padding-left:2px}
.starting-lineup-builder .lineup-builder-radar-wrap{min-height:210px}.starting-lineup-builder .lineup-builder-radar{width:205px;height:205px}.starting-lineup-builder .lineup-builder-starter-list{margin-top:12px}
.starting-lineup-builder{position:relative;padding-top:17px}.starting-lineup-builder .lineup-builder-status{position:absolute;top:-23px;right:2px;margin:0;text-align:right}
@media(max-width:760px){.starting-lineup-builder{padding-top:23px}.starting-lineup-builder .lineup-builder-status{top:-18px;right:2px;max-width:100%;font-size:.52rem}.starting-lineup-builder .lineup-builder-radar-wrap{min-height:190px}.starting-lineup-builder .lineup-builder-radar{width:186px;height:186px}.starting-lineup-builder .lineup-builder-starter-list{margin-top:10px}}
.starting-lineup-builder .lineup-builder-player--starter{grid-template-columns:18px 45px minmax(0,1fr) 102px;gap:2px;padding-left:2px}
@media(max-width:760px){.starting-lineup-builder .lineup-builder-player--starter{grid-template-columns:17px 40px minmax(0,1fr) 94px;gap:2px;padding-left:2px}}
.starting-lineup-builder .lineup-builder-player--starter{grid-template-columns:10px 56px minmax(0,1fr) 140px;gap:4px;min-height:70px;padding:4px 7px 4px 2px}
@media(max-width:760px){.starting-lineup-builder .lineup-builder-player--starter{grid-template-columns:9px 46px minmax(0,1fr) 110px;gap:3px;min-height:62px;padding:3px 5px 3px 1px}.starting-lineup-builder .lineup-builder-player--starter .photo-shell{width:44px;height:56px}.starting-lineup-builder .lineup-builder-player--starter .photo-shell img{transform:translateY(4px) scale(1.45)}.starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks>span{min-height:27px}.starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1.04rem}}

/* 選手一覧：総合評価と前年比を文字グラデーションで強調。 */
.player .player-eval-card>.rank,
.player .player-growth-card .player-trend{
  background-clip:text!important;
  -webkit-background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  filter:drop-shadow(0 2px 2px rgba(23,32,51,.14));
}
.player .player-eval-card>.rank-S,.player .player-growth-card .strong-up{background-image:linear-gradient(180deg,#ff84c2 0%,#ed2e8a 52%,#b80e5d 100%)!important}
.player .player-eval-card>.rank-A,.player .player-growth-card .up{background-image:linear-gradient(180deg,#ff6f76 0%,#e5232d 54%,#a80b17 100%)!important}
.player .player-eval-card>.rank-B{background-image:linear-gradient(180deg,#ffe477 0%,#e7ad15 55%,#9c6500 100%)!important}
.player .player-eval-card>.rank-C,.player .player-growth-card .flat,.player .player-growth-card .young-down{background-image:linear-gradient(180deg,#63de87 0%,#18a451 55%,#087332 100%)!important}
.player .player-eval-card>.rank-D,.player .player-growth-card .down{background-image:linear-gradient(180deg,#6cb4ff 0%,#2676d8 55%,#104991 100%)!important}
.player .player-eval-card>.rank-E,.player .player-growth-card .strong-down{background-image:linear-gradient(180deg,#b995ff 0%,#7a4bca 55%,#51308d 100%)!important}
.player .player-eval-card>.rank-F{background-image:linear-gradient(180deg,#aeb6c1 0%,#747e8a 56%,#4e5660 100%)!important}
.player .player-overall-card>.rank{font-size:1.9rem}
.player .player-growth-card .player-trend{font-size:2.05rem}
@media(max-width:760px){.player .player-overall-card>.rank{font-size:1.68rem}.player .player-growth-card .player-trend{font-size:1.82rem}}

/* 独立ページへ直接移動するナビゲーション。 */
.site-links a{gap:7px;padding-inline:10px}
body[data-page="teamCompare"] .hero,body[data-page="playerCompare"] .hero{display:none}
body[data-page="teamCompare"] .site-links a[href$="team-compare.html"],
body[data-page="playerCompare"] .site-links a[href$="player-compare.html"],
body[data-page="rankings"] .site-links a[href="rankings.html"],
body[data-page="teamRankings"] .site-links a[href$="team-rankings.html"],
body[data-page="referees"] .site-links a[href$="referees/index.html"],
body[data-page="referee"] .site-links a[href$="referees/index.html"],
body[data-page="criteria"] .site-links a[href$="criteria.html"],
body[data-page="home"] .site-links a[href$="b1-analysis-site.html"],
body[data-page="team"] .site-links a[href$="b1-analysis-site.html"],
body[data-page="formerPlayers"] .site-links a[href$="former-players.html"],
body[data-page="about"] .site-links a[href$="about.html"]{background:#f1f4f8;color:#172033}
@media(max-width:920px){.site-links a{padding-inline:6px}}
@media(max-width:620px){.site-links{gap:0}}

/* Team index: conference-board layout. */
.premier-area-column#eastAreaColumn{--board-accent:#2f72b7;--board-wash:#eff7ff}
.premier-area-column#westAreaColumn{--board-accent:#ae741b;--board-wash:#fff8ec}
.bone-area-column:has(#boneGridNorth){--board-accent:#76539d;--board-wash:#f6f1fb}
.bone-area-column:has(#boneGridEast){--board-accent:#2478a9;--board-wash:#eff7fc}
.bone-area-column:has(#boneGridCentral){--board-accent:#258467;--board-wash:#eff8f4}
.bone-area-column:has(#boneGridWest){--board-accent:#ae711f;--board-wash:#fff7ed}
.bone-area-column:has(#boneGridSouth){--board-accent:#b94c59;--board-wash:#fff1f2}
.premier-area-column,
.bone-area-column,
.premier-area-column#eastAreaColumn,
.premier-area-column#westAreaColumn,
.bone-area-column:has(#boneGridNorth),
.bone-area-column:has(#boneGridEast),
.bone-area-column:has(#boneGridCentral),
.bone-area-column:has(#boneGridWest),
.bone-area-column:has(#boneGridSouth){
  overflow:hidden;
  padding:0 13px 8px;
  border:0;
  border-top:5px solid var(--board-accent);
  border-radius:0 0 7px 7px;
  background:linear-gradient(180deg,var(--board-wash) 0,#fff 96px);
}
.premier-area-column .premier-area-heading,
.bone-area-column .premier-area-heading{
  display:flex;
  min-height:48px;
  margin:0;
  padding:12px 2px 9px;
  align-items:baseline;
  justify-content:space-between;
  border:0;
  text-align:left;
}
.premier-area-column .premier-area-heading h3,
.bone-area-column .premier-area-heading h3{
  width:auto;
  margin:0;
  color:#172033;
  font-size:1rem;
  font-weight:800;
  text-align:left;
}
.premier-area-column .team-grid,
.bone-area-column .team-grid{
  display:block!important;
}
.premier-area-columns .team-card,
.bone-area-columns .team-card{
  position:relative;
  display:grid!important;
  width:100%;
  height:auto!important;
  min-height:68px!important;
  aspect-ratio:auto!important;
  grid-template-columns:62px minmax(0,1fr) 52px!important;
  gap:10px!important;
  align-items:center;
  padding:6px 2px!important;
  border:0!important;
  border-top:1px solid rgba(94,107,126,.2)!important;
  border-radius:0;
  background:transparent!important;
  box-shadow:none;
}
.premier-area-columns .team-card:hover,
.premier-area-columns .team-card:focus-visible,
.bone-area-columns .team-card:hover,
.bone-area-columns .team-card:focus-visible{
  z-index:1;
  padding-left:7px!important;
  background:color-mix(in srgb,var(--accent) 7%,#fff)!important;
  box-shadow:none;
}
.premier-area-columns .team-card>.team-logo,
.bone-area-columns .team-card>.team-logo{
  width:58px!important;
  height:54px!important;
  object-fit:contain;
  filter:drop-shadow(0 4px 5px rgba(23,32,51,.12));
}
.premier-area-columns .team-card-body,
.bone-area-columns .team-card-body{
  display:grid;
  min-width:0;
  gap:4px!important;
  align-self:center;
  transform:none;
}
.premier-area-columns .team-card-title,
.bone-area-columns .team-card-title{
  position:static;
  display:block;
  width:auto!important;
  min-height:0;
  max-height:none;
  margin:0!important;
  overflow:visible;
  color:#172033;
  font-size:.86rem!important;
  font-weight:750;
  line-height:1.22;
  text-align:left;
  text-overflow:clip;
  transform:none;
  white-space:normal;
}
.bone-area-columns .team-card .team-card-title{
  font-size:.76rem!important;
  line-height:1.18;
}
.premier-area-columns .team-card-body small,
.bone-area-columns .team-card-body small{
  overflow:hidden;
  color:#697586;
  font-size:.62rem;
  font-weight:400;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.premier-area-columns .team-card-body small::after,
.bone-area-columns .team-card-body small::after{content:none}
.premier-area-columns .team-card>.team-overall,
.bone-area-columns .team-card>.team-overall{
  width:52px!important;
  min-width:52px!important;
  min-height:48px!important;
  margin:0;
  align-self:center;
  transform:none;
}
.premier-area-columns .team-card>.team-overall strong,
.bone-area-columns .team-card>.team-overall strong{
  display:inline-block;
  width:100%;
  font-size:2.75rem!important;
  line-height:.92;
  text-align:left;
}
.premier-area-columns .team-card>.team-overall strong .team-grade-modifier,
.bone-area-columns .team-card>.team-overall strong .team-grade-modifier{
  margin-left:-.10em;
  transform:none;
}

/* Keep every team-grade modifier visually attached to its letter. */
.team-grade-modifier{
  position:relative!important;
  top:-.18em!important;
  left:auto!important;
  display:inline-block!important;
  margin-left:-.10em!important;
  transform:none!important;
}
.premier-area-columns .team-card>.team-overall strong .team-grade-modifier,
.bone-area-columns .team-card>.team-overall strong .team-grade-modifier{
  margin-left:-.04em!important;
}

@media(max-width:1080px){
  .premier-area-columns{grid-template-columns:1fr}
  .bone-area-columns{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  .bone-area-columns{grid-template-columns:1fr!important}
  .premier-area-column,.bone-area-column{padding-inline:10px}
  .premier-area-columns .team-card,.bone-area-columns .team-card{grid-template-columns:58px minmax(0,1fr) 48px!important;min-height:66px!important}
  .premier-area-columns .team-card>.team-logo,.bone-area-columns .team-card>.team-logo{width:54px!important;height:50px!important}
  .premier-area-columns .team-card-title{font-size:.84rem!important}
  .bone-area-columns .team-card .team-card-title{font-size:.78rem!important}
  .premier-area-columns .team-card>.team-overall,.bone-area-columns .team-card>.team-overall{width:48px!important;min-width:48px!important}
  .premier-area-columns .team-card>.team-overall strong,.bone-area-columns .team-card>.team-overall strong{font-size:2.5rem!important}
}

/* Top-page player search */
.player-search{position:relative;z-index:5;flex:0 1 320px;min-width:230px;margin-left:4px}
.player-search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.player-search-control{position:relative}
.player-search-control input{width:100%;height:40px;padding:0 38px 0 39px;border:1px solid #d7dde7;border-radius:6px;outline:0;background:linear-gradient(180deg,#fff,#fbfcfe);color:#172033;font-size:.82rem;font-weight:600;box-shadow:inset 0 1px 2px rgba(23,32,51,.04);transition:border-color .16s,box-shadow .16s,background .16s}
.player-search-control input::placeholder{color:#8a94a6;font-weight:500}
.player-search-control input:focus{border-color:#9ba8ba;background:#fff;box-shadow:0 0 0 3px rgba(39,119,217,.12),0 8px 22px rgba(23,32,51,.08)}
.player-search-control input::-webkit-search-cancel-button{opacity:.62;cursor:pointer}
.player-search-icon{position:absolute;z-index:1;left:15px;top:50%;width:13px;height:13px;border:2px solid #667085;border-radius:50%;transform:translateY(-58%);pointer-events:none}
.player-search-icon::after{content:"";position:absolute;width:6px;height:2px;right:-5px;bottom:-2px;border-radius:2px;background:#667085;transform:rotate(45deg);transform-origin:left center}
.player-search-results{position:absolute;top:calc(100% + 8px);right:0;width:min(430px,calc(100vw - 24px));max-height:min(480px,70vh);overflow:auto;padding:6px;border:1px solid #d8dee8;border-radius:7px;background:rgba(255,255,255,.98);box-shadow:0 22px 55px rgba(23,32,51,.2);backdrop-filter:blur(16px)}
.player-search-result{display:grid;grid-template-columns:40px minmax(105px,.8fr) minmax(130px,1.2fr) 20px;align-items:center;gap:10px;min-height:58px;padding:8px 9px;border-radius:5px;color:#172033;text-decoration:none;transition:background .12s,color .12s}
.player-search-result:hover,.player-search-result.active{background:#f0f4f9}
.player-search-result img{width:38px;height:38px;object-fit:contain}
.player-search-result-player,.player-search-result-team{display:grid;min-width:0;gap:2px}
.player-search-result strong{overflow:hidden;font-size:.78rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.player-search-result small{overflow:hidden;color:#788397;font-size:.62rem;font-weight:400;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.player-search-result-player>strong{font-size:.84rem}
.player-search-result-arrow{color:#8a94a6;font-size:1rem;text-align:right}
.player-search-empty{margin:0;padding:20px 14px;color:#667085;font-size:.78rem;text-align:center}
@media(max-width:1120px){.site-nav-inner{flex-wrap:wrap;padding:8px 0}.site-links{margin-left:auto}.player-search{order:3;flex:1 0 100%;width:100%;max-width:none;margin-left:0}.player-search-results{left:0;right:auto;width:min(520px,calc(100vw - 20px))}}
@media(max-width:760px){.site-links{max-width:calc(100% - 52px);overflow-x:auto;scrollbar-width:none}.site-links::-webkit-scrollbar{display:none}.player-search-control input{height:38px;font-size:.78rem}.player-search-result{grid-template-columns:36px minmax(90px,.8fr) minmax(105px,1.2fr) 14px;gap:8px}.player-search-result img{width:34px;height:34px}}

/* Team averages: compact chart with single-line league context. */
.snapshot-with-chart{grid-template-columns:minmax(136px,.94fr) minmax(136px,1.06fr);gap:8px}
.snapshot-metric-copy{min-width:0}
.snapshot-metric-copy .snapshot-league-average,.snapshot-metric-copy .snapshot-league-rank{overflow:visible;font-size:.68rem;font-weight:500;line-height:1.25;white-space:nowrap}
.snapshot-metric-copy .snapshot-league-rank{margin-top:2px;color:#667085}
.snapshot-with-chart .snapshot-distribution{justify-self:stretch;width:100%;transform:translate(0,8px)}
.snapshot-with-chart .distribution-axis span{font-size:.51rem;line-height:1.08}
.snapshot-with-chart .distribution-bars i b{font-size:.56rem}
@media(max-width:1180px) and (min-width:761px){.snapshot-with-chart{grid-template-columns:minmax(122px,.92fr) minmax(122px,1.08fr);gap:6px}.snapshot-metric-copy .snapshot-league-average,.snapshot-metric-copy .snapshot-league-rank{font-size:.62rem}}
@media(max-width:760px){.snapshot-with-chart{grid-template-columns:1fr;align-content:start}.snapshot-with-chart .snapshot-distribution{justify-self:stretch;width:100%;transform:none}.snapshot-metric-copy .snapshot-league-average,.snapshot-metric-copy .snapshot-league-rank{font-size:.62rem}.snapshot-with-chart .distribution-axis span{font-size:.47rem}}

/* Mobile layout consolidation. Desktop rules above remain unchanged. */
.hero h1{
  font-size:clamp(1.5rem,3.5vw,3.35rem);
  white-space:nowrap
}
body[data-page="home"] .hero-copy p:last-child{font-size:clamp(.72rem,.78vw,.82rem);line-height:1.65}
.hero{min-height:185px;padding:18px 34px}
.hero-brand{min-height:149px;padding:16px 24px}
.bp-premier-hero-logo{width:min(100%,280px)}
@media(max-width:1120px) and (min-width:761px){
  .hero{padding:18px 24px}
  .hero-brand{min-height:120px;padding:14px 22px}
  .bp-premier-hero-logo{width:min(62%,280px)}
}
.mobile-team-tabs{display:none}
@media(max-width:760px){
html,body{max-width:100%;overflow-x:clip}
  html{scroll-padding-top:calc(var(--mobile-site-nav-height,95px) + 10px)}
  body{padding-top:var(--mobile-site-nav-height,95px);font-size:15px}
  .site-nav{position:fixed;inset:0 0 auto;z-index:120;width:100%;box-shadow:0 8px 22px rgba(23,32,51,.09)}
  .shell{width:100%;max-width:none;padding:10px 10px 38px}
  .site-nav-inner{width:100%;min-height:0;padding:7px 10px;gap:8px}
  .site-brand{display:none}
  .site-links{display:flex;flex:1 1 auto;max-width:none;gap:1px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity}
  .site-links a{min-height:34px;flex:0 0 auto;padding:0 7px;font-size:.68rem;scroll-snap-align:start}
  .player-search{order:3;flex:1 0 100%;min-width:0;margin:0}
  .player-search-results{left:0;right:0;width:100%;max-height:58vh}

  .hero{min-height:0;grid-template-columns:1fr;gap:12px;padding:16px 17px}
  .hero h1{font-size:clamp(.95rem,4.9vw,1.35rem);line-height:1.02;word-break:keep-all;white-space:nowrap}
  body[data-page="home"] .hero-copy p:last-child{margin-top:9px;font-size:.68rem;line-height:1.5}
  .hero-brand{min-height:92px;padding:10px 16px}
  .bp-premier-hero-logo{width:min(72%,180px)}
  .hero-card{grid-template-columns:minmax(0,1fr) 88px;grid-template-rows:auto;padding:15px;gap:12px;align-items:center}
  .hero-card-top{display:contents}
  .hero-logo{grid-column:2;width:82px;height:82px}
  .hero-card h2{font-size:1.3rem}
  .hero-card p{font-size:.78rem;line-height:1.55}
  .notice{margin-top:13px;padding:10px 11px;font-size:.74rem}
  .controls{margin:12px 0}

  .team-list{padding:14px 10px}
  .section-title h2{margin-bottom:13px;font-size:1.28rem;line-height:1.25}
  .premier-area-columns,.bone-area-columns{grid-template-columns:1fr!important;gap:12px!important}
  .premier-area-column,.bone-area-column{padding-inline:9px}
  .premier-area-column .premier-area-heading,.bone-area-column .premier-area-heading{min-height:42px;padding:9px 2px 7px}
  .premier-area-columns .team-card,.bone-area-columns .team-card{grid-template-columns:58px minmax(0,1fr) 50px!important;min-height:66px!important;padding:5px 2px!important}
  .premier-area-columns .team-card>.team-logo,.bone-area-columns .team-card>.team-logo{width:54px!important;height:50px!important}
  .premier-area-columns .team-card-title,.bone-area-columns .team-card .team-card-title{font-size:.84rem!important;line-height:1.2}
  .premier-area-columns .team-card-body small,.bone-area-columns .team-card-body small{font-size:.6rem}
  .layout{display:block;margin-top:10px!important}
  .detail{width:100%;overflow:visible;border-radius:7px}
  .detail-head{position:relative;grid-template-columns:70px minmax(0,1fr) 62px;gap:10px;align-items:start;padding:16px 12px}
  .detail-head>img{width:64px;height:64px;margin-top:5px}
  .detail-head>div:nth-child(2){min-width:0}
  .detail-head .detail-kicker{margin-bottom:5px;font-size:.62rem;line-height:1.3}
  .detail-head h2{margin:0;font-size:clamp(1.72rem,8.1vw,2.35rem);line-height:1.06;word-break:keep-all;overflow-wrap:normal}
  .detail-head .team-intro{grid-column:1/-1;margin-top:9px!important;font-size:.76rem;line-height:1.65}
  .detail-head .team-overall-page,.detail-head .power-mark{align-self:start;min-height:64px}
  .detail-head .team-overall-page strong,.detail-head .power-mark span{font-size:3.35rem!important;line-height:.92}
  .detail-head .team-overall-page small{font-size:.5rem}

  .mobile-team-tabs{position:sticky;top:var(--mobile-site-nav-height,95px);z-index:24;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;order:0;padding:8px 10px;border-top:1px solid rgba(255,255,255,.7);border-bottom:1px solid #d9e0e9;background:rgba(250,251,253,.96);box-shadow:0 8px 18px rgba(23,32,51,.1);backdrop-filter:blur(12px)}
  .mobile-team-tab{position:relative;display:grid;min-width:0;min-height:48px;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-content:center;align-items:center;gap:1px 6px;padding:6px 12px;border:1px solid #dce2ea;border-radius:6px;background:#fff;color:#344054;font-size:.82rem;font-weight:800;line-height:1.15;cursor:pointer}
  .mobile-team-tab span{grid-column:1/-1;color:#8a94a6;font-size:.52rem;font-weight:700;letter-spacing:.08em}
  .mobile-team-tab b{display:grid;min-width:22px;height:20px;place-items:center;padding:0 5px;border-radius:4px;background:#e9edf3;color:#526176;font-size:.65rem}
  .mobile-team-tab.active{border-color:#172033;background:linear-gradient(145deg,#253047,#111827);color:#fff;box-shadow:0 5px 12px rgba(23,32,51,.2)}
  .mobile-team-tab.active span{color:#e1e6ed}
  .mobile-team-tab.active b{background:rgba(255,255,255,.17);color:#fff}
  [data-mobile-team-panel].mobile-team-panel-inactive{display:none!important}

  .team-info-band,.team-snapshot{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:10px}
  .snapshot-item{min-width:0;padding:10px}
  .snapshot-item span{font-size:.65rem}
  .snapshot-item strong{font-size:.94rem;overflow-wrap:anywhere}
  .snapshot-item small{font-size:.6rem}
  .snapshot-with-chart{grid-template-columns:1fr;gap:5px}
  .snapshot-with-chart .snapshot-distribution{width:100%;transform:none}
  .snapshot-with-chart .distribution-axis span{font-size:.48rem}

  .radar-section{grid-template-columns:1fr;gap:10px;padding:10px}
  .radar-column,.analysis-panel,.grouped-team-analysis{width:100%;min-width:0;height:auto!important}
  .radar-panel{padding:10px}
  .radar-title{align-items:flex-start;flex-wrap:wrap}
  .team-ability-grid{grid-template-columns:1fr!important;gap:7px}
  .team-ability-group{min-width:0}
  .team-ability-row{min-width:0}
  .team-profile{font-size:.74rem!important;line-height:1.65!important}
  .grouped-team-analysis .team-support-factors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:6px}
  .grouped-team-analysis .team-support-factors>span{min-width:0;min-height:31px;padding:5px 7px;font-size:.67rem}
  .grouped-team-analysis .team-support-factors b{font-size:1rem}
  .season-stat-analysis{overflow:hidden;padding:10px}
  .season-stat-table.season-stat-flat{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .season-stat-cell{min-height:56px;padding:6px}
  .season-stat-label>b{font-size:.69rem}
  .season-stat-label>small{font-size:.56rem}

  .radar-column .position-coverage.vertical-position-coverage{padding:9px 7px}
  .radar-column .position-coverage.vertical-position-coverage .position-grid{height:116px;gap:4px}
  .radar-column .position-coverage.vertical-position-coverage .pos-card{height:116px;grid-template-rows:20px 66px 20px;padding:4px 2px}
  .radar-column .position-coverage.vertical-position-coverage .pos-status{font-size:.55rem!important}
  .radar-column .position-coverage.vertical-position-coverage .pos-bar{width:21px;height:66px}
  .radar-column .position-coverage.vertical-position-coverage .pos-name{font-size:.68rem}

  .analysis-tabs{max-width:100%;overflow-x:auto}
  .analysis-tab{flex:0 0 auto;min-height:32px;font-size:.68rem}
  .starting-court{width:100%;aspect-ratio:10/12;min-height:430px}
  .starting-lineup-player{grid-template-columns:42px minmax(0,1fr);width:min(39vw,145px);min-height:72px;gap:5px;padding:4px 5px 7px}
  .starting-lineup-player .photo-shell{width:42px;height:56px}
  .starting-lineup-info>strong{font-size:.68rem}
  .starting-lineup-profile{gap:3px}
  .starting-lineup-profile>b{min-width:25px;height:20px;font-size:.62rem}
  .starting-lineup-profile>small{font-size:.58rem}
  .starting-lineup-ranks{gap:2px}
  .starting-lineup-ranks>span{min-height:24px;padding:2px 0}
  .starting-lineup-ranks small{font-size:.46rem}
  .starting-lineup-ranks b{font-size:.9rem}
  .lineup-slot-0{top:16%;left:50%}
  .lineup-slot-1{top:43%;left:23%}
  .lineup-slot-2{top:43%;left:77%}
  .lineup-slot-3{top:75%;left:24%}
  .lineup-slot-4{top:75%;left:76%}

  .players-title{padding:0 12px}
  .players{grid-template-columns:1fr!important;gap:10px;padding:0 10px 14px}
  .player{width:100%;min-width:0;grid-template-columns:78px minmax(0,1fr);gap:9px;padding:10px;overflow:hidden}
  .player-main{min-width:0}
  .player-top{gap:6px}
  .player-name-line{min-width:0}
  .player h3{font-size:1rem}
  .player-roman-name,.player-card-body{font-size:.62rem}
  .player-card-comment p{font-size:.72rem;line-height:1.55}
  .player-rank-column{gap:4px}
  .player>.recent-table{width:100%;max-width:100%;grid-template-columns:repeat(8,minmax(76px,1fr));overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}
  .recent-stats-heading{position:sticky;left:0;z-index:2;min-width:calc(100vw - 42px)}
  .player>.player-abilities,.standalone-page .player-abilities,.player-detail .player-abilities{display:grid!important;width:100%!important;max-width:100%!important;min-width:0!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;overflow:visible!important}
  .player-abilities>.ability-card{width:auto!important;max-width:100%!important;height:74px!important;min-width:0!important;grid-template-rows:15px 20px 8px 19px;min-height:74px!important;padding:3px 6px}
  .player-abilities>.ability-card>small{font-size:.65rem}
  .ability-card-main,.ability-rank-area,.ability-icon-slot,.ability-meter{min-width:0!important;max-width:100%!important}
  .ability-rank-area>.rank,.ability-rank-area .ability-rank-stack>.rank{font-size:1.22rem}
  .ability-icon-slot{height:19px;padding-top:2px}
  .ability-feature-tag{height:16px}
  .ability-feature-tag{font-size:.46rem}
  .player-award-area{min-width:0}

  .coaches{grid-template-columns:1fr!important;padding:0 10px 14px}
  .coach-card{grid-template-columns:82px minmax(0,1fr);gap:8px;padding:10px}
  .coach-photo{width:82px}
  .coach-card h3{font-size:1rem}
  .coach-note,.coach-career{font-size:.7rem;line-height:1.6}

  .standalone-page,.referee-page{margin-top:10px}
  .standalone-player-head{grid-template-columns:82px minmax(0,1fr);gap:12px;padding:14px 12px}
  .standalone-player-head .photo-shell{width:80px}
  .standalone-player-head h1{font-size:clamp(1.65rem,8vw,2.15rem);line-height:1.08}
  .standalone-player-name{gap:6px}
  .standalone-player-name .player-roman-name{font-size:.68rem}
  .standalone-back{min-height:32px;margin-bottom:10px;padding:0 8px;font-size:.68rem}
  .breadcrumb{gap:5px;margin-bottom:9px;font-size:.65rem;flex-wrap:wrap}
  .profile-inline{gap:5px 9px;font-size:.66rem}
  .award-history{grid-column:1/-1}
  .detail-sections{grid-template-columns:1fr;gap:10px;padding:12px}
  .detail-block{min-width:0}
  .detail-block h3{font-size:1.05rem}
  .player-comment{font-size:.78rem;line-height:1.75}
  .shot-heatmap-section{padding:12px}
  .shot-heatmap-layout{grid-template-columns:1fr;gap:14px}
  .shot-heatmap-head{gap:8px;margin-bottom:12px;padding-bottom:9px}
  .shot-heatmap-head h3{font-size:1.15rem}
  .shot-court{width:100%;max-width:100%}
  .shot-zone-label{font-size:.54rem!important;white-space:nowrap}
  .shot-heatmap-summary{grid-template-columns:1fr 1fr;gap:6px}
  .shot-heatmap-summary p{font-size:.74rem;line-height:1.65}
  .career-table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}

  .compare-controls{padding:14px}
  .comparison-grid{grid-template-columns:1fr}
  .comparison-side{padding:14px}
  .compare-head{align-items:flex-start}
  .referee-intro{padding:18px 14px}
  .referee-intro p{font-size:.78rem;line-height:1.7}
  .referee-card{min-width:0}
  .criteria-sample{grid-template-columns:82px minmax(0,1fr)!important;padding:12px!important}
  .criteria-sample .criteria-player-abilities{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:390px){
  .detail-head{grid-template-columns:60px minmax(0,1fr);padding-right:68px;padding-left:10px}
  .detail-head>img{width:56px;height:56px}
  .detail-head>div:nth-child(2){padding-right:0}
  .detail-head h2{width:100%;font-size:1.52rem!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;transform:scaleX(.82);transform-origin:left center}
  .detail-head .team-intro{width:calc(100vw - 44px);margin-left:-70px!important;padding-top:12px}
  .detail-head .team-overall-page,.detail-head .power-mark{position:absolute;top:16px;right:9px;width:54px;min-width:54px}
  .detail-head .team-overall-page strong,.detail-head .power-mark span{font-size:3rem!important}
  .team-info-band{grid-template-columns:1fr 1fr;padding:8px}
  .team-snapshot{grid-template-columns:1fr;padding:8px}
  .team-snapshot>.snapshot-item:first-child{min-height:74px}
  .team-snapshot .snapshot-with-chart{grid-template-columns:104px minmax(0,1fr);align-items:center;gap:8px}
  .team-snapshot .snapshot-with-chart .snapshot-distribution{transform:none}
  .snapshot-item{padding:8px}
  .starting-lineup-player{width:142px}
  .lineup-slot-1{left:22%}.lineup-slot-2{left:78%}.lineup-slot-3{left:23%}.lineup-slot-4{left:77%}
}

/* Keep the expanded club introductions compact on every team page. */
.detail-head .team-intro{
  font-size:.8rem;
  line-height:1.7;
}
@media(max-width:760px){
  .detail-head .team-intro{
    font-size:.7rem;
    line-height:1.6;
  }
}

/* Kawasaki-only roster layout study: replace the ability area inside each player card. */
.kawasaki-ability-layout-switch{
  display:flex;
  align-items:center;
  gap:6px;
  margin:0 22px 12px;
  padding:9px 11px;
  border:1px solid var(--line);
  border-radius:7px;
  background:rgba(255,255,255,.88)
}
.kawasaki-ability-layout-switch span{margin-right:4px;color:#344054;font-size:.76rem;font-weight:800}
.kawasaki-ability-layout-switch button{
  min-width:54px;
  height:30px;
  border:1px solid #d8dee8;
  border-radius:5px;
  background:#fff;
  color:#667085;
  cursor:pointer;
  font-size:.72rem;
  font-weight:800
}
.kawasaki-ability-layout-switch button.active{border-color:#8d1747;background:#8d1747;color:#fff}
.kawasaki-ability-layout-switch small{margin-left:auto;color:#667085;font-size:.66rem;font-weight:400}
.player>.kawasaki-team-ability-sample{
  grid-column:1/-1;
  grid-row:3;
  width:100%;
  min-width:0
}
.kawasaki-team-ability-grid{display:grid;gap:7px;margin-top:4px}
.kawasaki-team-ability-grid.layout-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.kawasaki-team-ability-grid.layout-six{display:none;grid-template-columns:repeat(3,minmax(0,1fr))}
.kawasaki-layout-six .kawasaki-team-ability-grid.layout-four{display:none}
.kawasaki-layout-six .kawasaki-team-ability-grid.layout-six{display:grid}
.kawasaki-team-ability-column{
  display:block;
  min-width:0;
  padding:7px 8px;
  border:1px solid #dfe5ed;
  border-radius:7px;
  background:linear-gradient(180deg,#fff 0%,#f7f9fc 100%)
}
.kawasaki-team-ability-column .player-ability-analysis-row{
  position:relative;
  min-height:34px;
  grid-template-columns:minmax(58px,66px) minmax(42px,1fr) 25px;
  gap:4px
}
.kawasaki-team-ability-column .player-ability-analysis-row>small{
  display:block;
  overflow:visible;
  color:#435168;
  font-size:.59rem;
  font-weight:650;
  line-height:1.22;
  text-overflow:clip;
  white-space:normal;
  word-break:keep-all
}
.kawasaki-team-ability-grid.layout-six .player-ability-analysis-row{
  min-height:32px;
  grid-template-columns:minmax(76px,88px) minmax(62px,1fr) 27px;
  gap:5px
}
.kawasaki-team-ability-grid.layout-six .player-ability-analysis-row>small{font-size:.64rem}
.kawasaki-team-ability-column .player-ability-analysis-row>b,
.ability-rank-feature>b{
  background:linear-gradient(180deg,var(--rank-top,#667085),var(--rank-bottom,#344054));
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;
  font-size:1rem;
  font-weight:1000;
  line-height:1;
  text-align:center;
  text-shadow:0 1px 3px color-mix(in srgb,var(--rank-bottom,#344054) 14%,transparent)
}
body[data-page="team"] #teamPlayersMount .kawasaki-team-ability-column .ability-meter{
  display:grid!important;
  width:100%;
  height:9px!important;
  margin:0!important;
  align-self:center
}
.ability-rank-feature{
  position:relative;
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:4px;
  cursor:pointer;
  outline:none
}
.rank-feature-mark{
  position:absolute;
  top:-2px;
  right:-3px;
  display:grid;
  place-items:center;
  width:12px;
  height:12px;
  background:linear-gradient(145deg,#f5d679,#a86c00);
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
  color:#fff;
  font-size:.42rem;
  font-style:normal;
  font-weight:1000;
  line-height:1;
  text-shadow:0 1px 2px rgba(0,0,0,.3)
}
.rank-feature-count{
  position:absolute;
  inset:0;
  z-index:2;
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  line-height:1;
  text-align:center;
  text-indent:0;
  font-variant-numeric:tabular-nums
}
body[data-page="team"] #teamPlayersMount .rank-feature-mark{
  top:-2px;
  right:-3px;
  width:12px;
  height:12px;
  box-sizing:border-box;
  padding-top:0;
  border:1px solid rgba(255,226,128,.72);
  border-radius:2px;
  clip-path:none;
  overflow:hidden;
  background:linear-gradient(145deg,#f0c34d 0%,#c18108 55%,#805000 100%);
  box-shadow:0 2px 5px rgba(166,105,0,.3);
  color:#fff;
  font-size:.42rem;
  text-shadow:0 1px 2px rgba(70,39,0,.5);
  isolation:isolate
}
body[data-page="team"] #teamPlayersMount .rank-feature-count{
  transform:translateY(.5px)
}
body[data-page="team"] #teamPlayersMount .rank-feature-mark::after{
  content:"";
  position:absolute;
  inset:-3px;
  z-index:1;
  background:linear-gradient(110deg,transparent 31%,rgba(255,255,255,.9) 48%,transparent 65%);
  opacity:0;
  pointer-events:none;
  transform:translateX(-170%);
  animation:kawasaki-feature-gold-shine 2.6s ease-in-out infinite
}
@keyframes kawasaki-feature-gold-shine{
  0%,24%{opacity:0;transform:translateX(-170%)}
  35%{opacity:.82}
  52%{opacity:0;transform:translateX(170%)}
  100%{opacity:0;transform:translateX(170%)}
}
@media(prefers-reduced-motion:reduce){
  body[data-page="team"] #teamPlayersMount .rank-feature-mark::after{animation:none}
}
.ability-rank-feature:focus-visible{box-shadow:0 0 0 2px rgba(184,138,44,.32)}
.ability-feature-popover{
  position:absolute;
  right:0;
  bottom:calc(100% + 5px);
  z-index:20;
  display:none;
  width:max-content;
  max-width:190px;
  align-items:center;
  gap:4px;
  padding:6px;
  border:1px solid #d7dde7;
  border-radius:6px;
  background:#fff;
  box-shadow:0 8px 22px rgba(23,32,51,.18)
}
.ability-rank-feature.is-open .ability-feature-popover{display:flex}
.ability-feature-popover .ability-feature-tag{
  width:auto;
  min-width:42px;
  height:20px;
  padding:2px 6px;
  font-size:.55rem
}
@media(hover:hover) and (pointer:fine){
  .ability-rank-feature:hover .ability-feature-popover,
  .ability-rank-feature:focus .ability-feature-popover{display:flex}
}
@media(max-width:760px){
  .kawasaki-ability-layout-switch{margin:0 10px 10px;flex-wrap:wrap}
  .kawasaki-ability-layout-switch small{width:100%;margin:2px 0 0}
  .kawasaki-team-ability-grid.layout-four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kawasaki-team-ability-grid.layout-six{grid-template-columns:1fr}
  .kawasaki-team-ability-column .player-ability-analysis-row,
  .kawasaki-team-ability-grid.layout-six .player-ability-analysis-row{min-height:34px;grid-template-columns:minmax(76px,88px) minmax(56px,1fr) 28px;gap:5px}
  .kawasaki-team-ability-column .player-ability-analysis-row>small,
  .kawasaki-team-ability-grid.layout-six .player-ability-analysis-row>small{font-size:.64rem}
  .ability-rank-feature{width:28px;height:28px}
  .ability-rank-feature>b{font-size:1rem}
}

/* Team roster cards stay compact; granular meters remain on player detail pages. */
body[data-page="team"] #teamPlayersMount .ability-meter{display:none!important}
body[data-page="team"] #teamPlayersMount .player-abilities>.ability-card{
  height:65px!important;
  min-height:65px!important;
  grid-template-rows:15px 22px 20px!important;
  gap:1px!important
}

/* Shared roster layout: team-analysis-style player abilities. */
.player>.player-abilities-grouped{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:4px
}
.player-abilities-grouped>.player-ability-group{
  display:block;
  min-width:0;
  min-height:0;
  padding:8px 9px;
  border:1px solid #dfe5ed;
  border-radius:7px;
  background:linear-gradient(180deg,#fff 0%,#f7f9fc 100%)
}
.player-abilities-grouped.player-abilities-no-column-frame>.player-ability-group{
  padding:4px 10px;
  border:0;
  border-radius:0;
  background:transparent
}
.player-abilities-grouped.player-abilities-no-column-frame{
  gap:0
}
.player-abilities-grouped.player-abilities-no-column-frame>.player-ability-group+.player-ability-group{
  border-left:1px solid #dfe5ed
}
.player-abilities-grouped.player-abilities-no-column-frame .player-ability-analysis-row:not(:last-child){
  border-bottom-color:#d7dee8
}
.player-ability-group>h4{
  margin:0 0 5px;
  padding-bottom:5px;
  border-bottom:1px solid #e5e9ef;
  color:#172033;
  font-size:.76rem;
  font-weight:800;
  line-height:1.1
}
.player-ability-analysis-row{
  display:grid;
  min-width:0;
  min-height:34px;
  grid-template-columns:minmax(56px,72px) minmax(34px,1fr) 24px;
  align-items:center;
  gap:5px;
  border-bottom:1px solid #edf0f4
}
.player-ability-analysis-row:last-child{border-bottom:0}
.player-ability-analysis-row>small{
  overflow:visible;
  color:#536176;
  font-size:.58rem;
  font-weight:600;
  line-height:1.15;
  text-align:left;
  text-overflow:clip;
  white-space:normal;
  word-break:keep-all
}
body[data-page="team"] #teamPlayersMount .player-abilities-grouped .ability-meter{
  display:grid!important;
  width:100%!important;
  height:8px!important;
  margin:0!important;
  align-self:center
}
.player-ability-analysis-row>b{
  background:linear-gradient(180deg,var(--rank-top,#667085),var(--rank-bottom,#344054));
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;
  font-size:1rem;
  font-weight:1000;
  line-height:1;
  text-align:center;
  text-shadow:0 1px 3px color-mix(in srgb,var(--rank-bottom,#344054) 14%,transparent)
}
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row>b,
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row .ability-rank-feature>b{
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;
  font-size:1.2rem;
  font-weight:1000;
  letter-spacing:0;
  -webkit-text-stroke:0 transparent;
  paint-order:normal;
  transform:translateX(-2px)
}
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row{
  min-height:34px;
  grid-template-columns:minmax(44px,56px) minmax(42px,1fr) 28px;
  grid-template-rows:24px;
  column-gap:3px;
  align-items:center;
  align-content:center
}
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row>small{
  display:flex;
  min-height:24px;
  align-items:center;
  line-height:1.1
}
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row>.ability-meter,
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row>.ability-rank-feature,
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row>b{
  align-self:center;
  justify-self:center;
  margin-block:0;
  transform-box:border-box
}
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row>b{
  display:grid;
  width:28px;
  height:24px;
  place-items:center
}
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row>.ability-rank-feature{
  width:28px;
  height:24px
}
body[data-page="team"] #teamPlayersMount .player-ability-analysis-row>.ability-rank-feature>b{
  display:grid;
  width:28px;
  height:24px;
  place-items:center;
  line-height:1
}
.player-analysis-feature{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:flex-start;
  gap:5px;
  overflow:hidden;
  padding:0
}
.player-analysis-feature .ability-feature-tag{
  width:auto;
  max-width:none;
  min-width:0;
  height:16px;
  flex:1 1 0;
  padding:1px 2px;
  font-size:.41rem
}
@media(max-width:760px){
  .player>.player-abilities-grouped{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  .player-abilities-grouped>.player-ability-group{padding:7px}
  .player>.player-abilities-grouped.player-abilities-no-column-frame{gap:0!important}
  .player-abilities-grouped.player-abilities-no-column-frame>.player-ability-group:nth-child(odd){
    border-left:0
  }
  .player-abilities-grouped.player-abilities-no-column-frame>.player-ability-group:nth-child(even){
    border-left:1px solid #dfe5ed
  }
  .player-abilities-grouped.player-abilities-no-column-frame>.player-ability-group:nth-child(n+3){
    border-top:1px solid #c7d0dc;
    padding-top:7px
  }
  .player-abilities-grouped.player-abilities-no-column-frame .player-ability-analysis-row:not(:last-child){
    border-bottom-color:#e5eaf0
  }
  .player-ability-analysis-row{grid-template-columns:minmax(70px,94px) minmax(48px,1fr) 28px;gap:5px}
}
@media(max-width:520px){
  .player>.player-abilities-grouped{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .player-ability-analysis-row{grid-template-columns:minmax(60px,82px) minmax(36px,1fr) 26px;gap:4px}
}

/* Final 4 x 4 player ability system. */
.standalone-page .player-abilities-detail-grid,
.player-detail .player-abilities{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(4,auto);
  grid-auto-flow:column
}
.criteria-sample .criteria-player-abilities{
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:repeat(4,auto);
  grid-auto-flow:column
}
@media(max-width:760px){
  .standalone-page .player-abilities-detail-grid,
  .player-detail .player-abilities,
  .criteria-sample .criteria-player-abilities{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:repeat(8,auto)
  }
}

/* Final team header grade. */
.detail-head .team-overall-page{
  min-width:108px;
  min-height:112px;
  align-self:center;
  overflow:visible;
  padding:13px 8px 11px;
  border:1px solid #dfe4ec!important;
  border-left:1px solid #dfe4ec!important;
  border-radius:7px;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(18,29,47,.1);
}
.detail-head .team-overall-page::before{display:none}
.detail-head .team-overall-page small{
  color:#697386;
  font-size:.64rem;
  font-weight:500;
  letter-spacing:.04em;
}
.detail-head .team-overall-page strong{
  display:inline-flex;
  align-items:flex-start;
  justify-content:center;
  margin-top:8px;
  padding:0 4px 5px;
  font-size:5.25rem;
  line-height:.78;
  filter:drop-shadow(0 4px 7px color-mix(in srgb,var(--rank-bottom) 32%,transparent));
}
.detail-head .team-overall-page .team-grade-modifier{
  position:static;
  top:auto;
  left:auto;
  margin-left:.02em;
  font-size:.66em!important;
  transform:translateY(-.02em);
}
@media(max-width:760px){
  .detail-head .team-overall-page{
    width:66px!important;
    min-width:66px!important;
    min-height:76px;
    padding:9px 4px 8px;
    border-radius:6px;
  }
  .detail-head .team-overall-page small{font-size:.48rem}
  .detail-head .team-overall-page strong{
    margin-top:6px;
    padding:0 2px 4px;
    font-size:3.45rem!important;
    line-height:.78;
  }
}
@media(max-width:390px){
  .detail-head .team-overall-page{
    width:54px!important;
    min-width:54px!important;
    min-height:70px;
    padding:8px 2px 7px;
  }
  .detail-head .team-overall-page strong{font-size:3.05rem!important}
}

/* Keep long club names inside the mobile team header. */
@media(max-width:760px){
  .detail{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow:hidden
  }
  .detail-head{
    width:100%;
    max-width:100%;
    min-width:0;
    grid-template-columns:70px minmax(0,1fr) 62px;
    grid-template-rows:auto auto auto;
    align-items:start
  }
  .detail-head>img{
    grid-column:1;
    grid-row:1/3
  }
  .detail-head>div:nth-child(2){display:contents}
  .detail-head .detail-kicker{
    grid-column:2;
    grid-row:1
  }
  .detail-head h2{
    grid-column:2;
    grid-row:2;
    max-width:100%;
    font-size:clamp(1.3rem,6.4vw,1.9rem)!important;
    line-height:1.12;
    line-break:strict;
    overflow-wrap:anywhere;
    word-break:normal
  }
  .detail-head .team-intro{
    grid-column:1/-1;
    grid-row:3;
    width:auto!important;
    margin:8px 0 0!important;
    padding:0!important
  }
  .detail-head .team-overall-page,.detail-head .power-mark{
    grid-column:3;
    grid-row:1/3
  }
}
@media(max-width:390px){
  .detail-head{
    grid-template-columns:60px minmax(0,1fr) 54px;
    padding-right:10px
  }
  .detail-head h2{
    width:100%;
    font-size:clamp(1.12rem,5.35vw,1.3rem)!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    text-wrap:balance;
    transform:none!important
  }
  .detail-head .team-overall-page,.detail-head .power-mark{
    position:static;
    width:54px;
    min-width:54px
  }
}

/* Player detail rank rails: badges have a fixed row above equal-width meters. */
.adopted-ability-rank-rails .ability-sample-rail-row{
  grid-template-columns:minmax(76px,1fr) 28px minmax(76px,1.05fr);
  grid-template-rows:20px 10px;
  align-content:center;
  column-gap:8px;
  row-gap:4px;
  min-height:66px;
  padding:8px 11px
}
.adopted-ability-rank-rails .ability-sample-rail-name{
  grid-column:1;
  grid-row:1/3;
  align-self:center
}
.adopted-ability-rank-rails .ability-sample-rail-row>b{
  grid-column:2;
  grid-row:1/3;
  align-self:end;
  padding:0;
  font-size:2rem;
  line-height:.8;
  transform:translateY(2px)
}
.adopted-ability-rank-rails .ability-sample-rail-meter{
  grid-column:3;
  grid-row:2;
  width:100%;
  min-width:0;
  align-self:end
}
.adopted-ability-rank-rails .ability-sample-rail-meter>.ability-meter{
  width:100%;
  height:9px;
  margin:0
}
.adopted-ability-rank-rails .ability-sample-features,
.adopted-ability-rank-rails .ability-sample-features:empty{
  display:flex;
  grid-column:3;
  grid-row:1;
  width:100%;
  min-width:0;
  height:20px;
  margin:0;
  padding:0;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  gap:3px;
  overflow:hidden
}
.adopted-ability-rank-rails .ability-sample-features .ability-feature-tag{
  position:relative;
  width:auto;
  max-width:50%;
  height:18px;
  flex:0 1 auto;
  overflow:hidden;
  padding:1px 7px;
  border-color:color-mix(in srgb,currentColor 42%,#fff);
  box-shadow:0 2px 7px color-mix(in srgb,currentColor 18%,transparent),inset 0 1px rgba(255,255,255,.88)
}
.adopted-ability-rank-rails .ability-sample-features .feature-tone-red.is-active{
  border-color:#dfa1a7;
  box-shadow:0 1px 2px rgba(148,41,52,.08),inset 0 1px rgba(255,255,255,.72)
}
.adopted-ability-rank-rails .ability-sample-features .feature-tone-green.is-active{
  border-color:#91c6a2;
  box-shadow:0 1px 2px rgba(33,98,58,.07),inset 0 1px rgba(255,255,255,.74)
}
.adopted-ability-rank-rails .ability-sample-features .feature-tone-blue.is-active{
  border-color:#91afd5;
  box-shadow:0 1px 2px rgba(40,84,134,.08),inset 0 1px rgba(255,255,255,.74)
}
.adopted-ability-rank-rails .ability-sample-features .ability-feature-tag:after{
  position:absolute;
  inset:-60% auto -60% -45%;
  width:34%;
  transform:skewX(-20deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.88),transparent);
  content:"";
  animation:ability-badge-glint 3.2s cubic-bezier(.4,0,.2,1) infinite
}
.adopted-ability-rank-rails .ability-sample-features :is(.feature-tone-red,.feature-tone-green,.feature-tone-blue):after{
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent);
  animation-duration:4.8s
}
@keyframes ability-badge-glint{
  0%,28%{left:-45%;opacity:0}
  34%{opacity:.9}
  58%{left:118%;opacity:0}
  100%{left:118%;opacity:0}
}
@media(prefers-reduced-motion:reduce){
  .adopted-ability-rank-rails .ability-feature-tag:after{animation:none}
}
@media(max-width:560px){
  .adopted-ability-rank-rails .ability-sample-rail-row{
    grid-template-columns:minmax(60px,.9fr) 24px minmax(62px,1.1fr);
    grid-template-rows:18px 9px;
    column-gap:5px;
    row-gap:3px;
    min-height:64px;
    padding:7px 8px
  }
  .adopted-ability-rank-rails .ability-sample-rail-name{
    grid-column:1;
    grid-row:1/3
  }
  .adopted-ability-rank-rails .ability-sample-rail-row>b{
    grid-column:2;
    grid-row:1/3;
    font-size:1.8rem;
    line-height:.8
  }
  .adopted-ability-rank-rails .ability-sample-rail-meter{
    grid-column:3;
    grid-row:2
  }
  .adopted-ability-rank-rails .ability-sample-features,
  .adopted-ability-rank-rails .ability-sample-features:empty{
    grid-column:3;
    grid-row:1;
    height:18px;
    gap:2px
  }
  .adopted-ability-rank-rails .ability-sample-features .ability-feature-tag{
    height:16px;
    max-width:50%;
    padding-inline:3px;
    font-size:.4rem
  }
}

/* Former-player archive. Players remain outside active-roster calculations. */
body[data-page="formerPlayers"] .hero,
body[data-page="formerPlayers"] #teamBoard,
body[data-page="formerPlayers"] .source{
  display:none
}
body[data-page="formerPlayers"] .standalone-page{
  overflow:visible;
  border:0;
  background:transparent;
  box-shadow:none
}
.former-page-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:18px;
  margin-bottom:14px;
  padding:24px 26px;
  border:1px solid #d8dee8;
  border-radius:8px;
  background:linear-gradient(135deg,#fff 0%,#f8fafc 68%,#eef2f7 100%);
  box-shadow:0 10px 26px rgba(23,32,51,.06)
}
.former-page-head>.detail-kicker,
.former-page-head>h1,
.former-page-head>p{
  grid-column:1
}
.former-page-head .detail-kicker{
  margin:0 0 -8px;
  color:#986a13;
  font-size:.65rem;
  font-weight:800
}
.former-page-head h1{
  margin:0;
  font-size:clamp(1.8rem,3vw,2.8rem);
  letter-spacing:0
}
.former-page-head>p{
  max-width:820px;
  margin:0;
  color:#566276;
  font-size:.8rem;
  line-height:1.75
}
.former-page-counts{
  grid-column:2;
  grid-row:1/4;
  display:flex;
  align-items:stretch;
  gap:6px
}
.former-page-counts>div{
  display:grid;
  min-width:92px;
  padding:10px 12px;
  border:1px solid #d9e0e9;
  border-radius:6px;
  background:rgba(255,255,255,.86);
  text-align:center
}
.former-page-counts span{
  color:#627086;
  font-size:.62rem;
  font-weight:700
}
.former-page-counts strong{
  align-self:end;
  color:#172033;
  font-size:1.6rem;
  line-height:1
}
.former-page-counts small{
  color:#778397;
  font-size:.58rem
}
.former-player-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px
}
.former-player-card{
  position:relative;
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  min-height:126px;
  overflow:hidden;
  border:1px solid #d9e0e9;
  border-radius:7px;
  color:#172033;
  text-decoration:none;
  background:#fff;
  box-shadow:0 7px 18px rgba(23,32,51,.045);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease
}
.former-player-card:before{
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:#526177;
  content:""
}
.former-player-card[data-former-status="引退"]:before{background:#303b4d}
.former-player-card[data-former-status="海外移籍"]:before{background:#2476b8}
.former-player-card[data-former-status="去就確認中"]:before{background:#c58c18}
.former-player-card:hover{
  z-index:1;
  transform:translateY(-2px);
  border-color:#b8c3d1;
  box-shadow:0 13px 28px rgba(23,32,51,.1)
}
.former-player-card>.photo-shell{
  width:88px;
  height:100%;
  min-height:126px;
  border:0;
  border-right:1px solid #e0e5ec;
  border-radius:0;
  background:#f0f3f7
}
.former-player-card>.photo-shell img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 14%
}
.former-player-card-body{
  min-width:0;
  padding:12px 13px
}
.former-player-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:7px
}
.former-player-status{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 7px;
  border:1px solid #d6dde7;
  border-radius:4px;
  color:#536177;
  background:#f7f9fc;
  font-size:.58rem;
  font-weight:800
}
.former-player-card-top .rank{
  width:auto;
  height:auto;
  min-width:24px;
  color:transparent;
  background:none;
  background-clip:text;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  box-shadow:none;
  font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;
  font-size:1.45rem;
  font-weight:1000
}
.former-player-card-top .rank-S{background-image:linear-gradient(180deg,#ff84c2,#b80e5d)}
.former-player-card-top .rank-A{background-image:linear-gradient(180deg,#ff6f76,#a80b17)}
.former-player-card-top .rank-B{background-image:linear-gradient(180deg,#f2c22f,#9c6500)}
.former-player-card-top .rank-C{background-image:linear-gradient(180deg,#63de87,#087332)}
.former-player-card-top .rank-D{background-image:linear-gradient(180deg,#6cb4ff,#104991)}
.former-player-card-top .rank-E{background-image:linear-gradient(180deg,#b995ff,#51308d)}
.former-player-card-top .rank-F{background-image:linear-gradient(180deg,#aeb6c1,#4e5660)}
.former-player-card-body h2{
  overflow:hidden;
  margin:0;
  font-size:1rem;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap
}
.former-player-roman{
  display:block;
  overflow:hidden;
  margin-top:1px;
  color:#8190a5;
  font-size:.6rem;
  text-overflow:ellipsis;
  white-space:nowrap
}
.former-player-card-body p{
  overflow:hidden;
  margin:9px 0 1px;
  color:#4f5d72;
  font-size:.68rem;
  font-weight:700;
  text-overflow:ellipsis;
  white-space:nowrap
}
.former-player-card-body>small{
  color:#7a8799;
  font-size:.62rem
}
.former-status-badge{
  min-height:24px;
  border-color:#c9d2df;
  color:#48566b;
  background:linear-gradient(180deg,#fff,#edf1f6)
}
.archive-state-card strong{
  display:grid;
  place-items:center;
  min-height:44px;
  color:#40506a;
  font-size:.74rem;
  line-height:1.2;
  text-align:center
}

/* Hokkaido mobile sample: keep the roster snapshot readable as one vertical flow. */
@media(max-width:760px){
  .detail.team-snapshot-single-mobile .team-snapshot.team-snapshot-kawasaki{
    grid-template-columns:1fr;
  }
  .detail.team-comment-expanded-mobile .team-profile-standalone p{
    display:block;
    overflow:visible;
    -webkit-line-clamp:unset;
    line-clamp:unset;
  }
}
@media(max-width:1040px){
  .former-player-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .former-page-head{grid-template-columns:1fr}
  .former-page-counts{grid-column:1;grid-row:auto;justify-content:start}
}
@media(max-width:620px){
  .former-page-head{gap:12px;padding:18px 16px}
  .former-page-head>p{font-size:.72rem}
  .former-page-counts{width:100%;overflow-x:auto}
  .former-page-counts>div{min-width:78px;padding:8px 9px}
  .former-player-grid{grid-template-columns:1fr}
  .former-player-card{grid-template-columns:80px minmax(0,1fr);min-height:116px}
  .former-player-card>.photo-shell{width:80px;min-height:116px}
}

/* Player career block used in place of the generic source note. */
.player-career-highlight{margin-top:18px;padding:18px 20px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#fffdf8,#fff);color:#344054}
.player-career-highlight .detail-kicker{margin-bottom:5px}
.player-career-highlight h3{margin:0;color:#172033;font-size:1.08rem}
.player-career-columns{display:grid;grid-template-columns:1.25fr 1fr;gap:28px;margin-top:14px}
.player-career-columns h4{margin:0 0 8px;color:#667085;font-size:.72rem;font-weight:900}
.player-career-columns ol,.player-career-columns ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}
.player-career-columns li{display:grid;grid-template-columns:78px minmax(0,1fr);gap:10px;align-items:baseline;font-size:.78rem;line-height:1.45}
.player-career-columns time{color:#9a6b12;font-weight:900}
.player-career-columns ul li{display:block;padding-left:12px;position:relative}
.player-career-columns ul li::before{content:"";position:absolute;top:.52em;left:0;width:5px;height:5px;border-radius:50%;background:#b88a2c}
.player-career-sources{display:flex;flex-wrap:wrap;gap:8px 14px;margin:14px 0 0;padding-top:10px;border-top:1px solid #e8edf3}
.player-career-sources a{color:#8b6508;font-size:.68rem;font-weight:800;text-decoration:none}
.player-career-sources a:hover{text-decoration:underline}
@media(max-width:760px){.player-career-highlight{padding:15px 14px}.player-career-columns{grid-template-columns:1fr;gap:16px}.player-career-columns li{font-size:.72rem}.player-career-sources{gap:6px 10px}}

/* Registration labels use full wording across every roster and player page. */
.slot-icon.slot-icon--label{display:inline-flex;box-sizing:border-box;width:auto;min-width:46px;padding:0 7px;align-items:center;justify-content:center;font-size:.62rem;font-weight:500;line-height:1!important;white-space:nowrap}
@media(max-width:760px){.slot-icon.slot-icon--label{min-width:42px;padding:0 6px;font-size:.56rem}}

/* 川崎の戦力シミュレーター試作: 分析面全体に約10%の縦余白を渡す。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder) .radar-column,
  .team-themed .radar-section:has(.starting-lineup-builder) .season-stat-analysis{
    height:759px!important;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .radar-column{
    height:759px!important;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .starting-lineup-builder,
  .team-themed .radar-section:has(.starting-lineup-builder) .starting-lineup-panel{
    display:flex;
    min-height:0;
    flex:1 1 auto;
    flex-direction:column;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-main{
    min-height:0;
    flex:1 1 auto;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-player--starter{
    min-height:70px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-player--bench{
    min-height:59px;
  }
}

/* ポジション表示を名前行へ移した後の余分な上段を除き、能力ランクをカード内へ収める。 */
.starting-lineup-builder .lineup-builder-player-side{
  grid-template-rows:18px 30px;
  align-content:center;
  gap:2px;
}
.starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks{
  grid-row:2;
  align-self:start;
}
.starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks>span{
  align-items:center;
}
.starting-lineup-builder .lineup-builder-player--starter .lineup-builder-player-copy>small,
.starting-lineup-builder .lineup-builder-player--starter .lineup-builder-player-ranks{
  transform:translateY(4px);
}
.starting-lineup-builder .lineup-builder-player--starter .lineup-builder-player-position-meta{
  transform:none;
}
.starting-lineup-builder .lineup-builder-bench-list{
  flex:1 1 auto;
  overflow-x:hidden;
  overflow-y:auto;
  scrollbar-color:#aab5c4 transparent;
  scrollbar-width:thin;
}
.starting-lineup-builder .lineup-builder-bench-list::-webkit-scrollbar{width:6px}
.starting-lineup-builder .lineup-builder-bench-list::-webkit-scrollbar-track{background:transparent}
.starting-lineup-builder .lineup-builder-bench-list::-webkit-scrollbar-thumb{border-radius:99px;background:#aab5c4}
/* チームページではベンチ人数にかかわらず、5選手分の表示高へ固定する。 */
.team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-bench{
  align-self:start;
}
.team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-bench-list{
  height:282px;
  max-height:282px;
  flex:0 0 282px;
}
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-main{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-player--bench{
    grid-template-columns:56px minmax(0,1fr) 140px;
    gap:4px;
    min-height:70px;
    padding:4px 7px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-player--bench .photo-shell{
    width:54px;
    height:62px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-player--bench .photo-shell img{
    transform:translateY(5px) scale(1.5);
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-bench-list{
    height:362px;
    max-height:362px;
    flex-basis:362px;
  }
}
@media(max-width:760px){
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-bench-list{
    height:267px;
    max-height:267px;
    flex-basis:267px;
  }
}
.starting-lineup-builder .lineup-builder-player-topline>strong{
  position:absolute;
  top:10px;
  right:70px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.starting-lineup-builder .lineup-builder-player--starter .lineup-builder-player-topline>strong{
  left:72px;
}
.starting-lineup-builder .lineup-builder-player--bench .lineup-builder-player-topline>strong{
  left:67px;
}
@media(max-width:760px){
  .starting-lineup-builder .lineup-builder-player--starter .lineup-builder-player-topline>strong{
    left:58px;
    right:56px;
  }
  .starting-lineup-builder .lineup-builder-player--bench .lineup-builder-player-topline>strong{
    left:52px;
    right:56px;
  }
}
/* 川崎の戦力シミュレーター: 選手名と登録区分・ポジションを同じ基準線へ。 */
.starting-lineup-builder .lineup-builder-player-position-meta{
  position:absolute;
  top:7px;
  right:7px;
  transform:none!important;
}
.starting-lineup-builder .lineup-builder-player-copy>small{
  font-weight:500;
  transform:translateY(8px);
}
.starting-lineup-builder .lineup-builder-player--starter .lineup-builder-player-copy>small{
  transform:translateY(12px);
}
.starting-lineup-builder .lineup-builder-radar text{font-size:8.4px}
.starting-lineup-builder .lineup-builder-radar-value{
  fill:#172033;
  font-size:11.5px;
  font-weight:900;
  font-variant-numeric:tabular-nums;
}
.starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-radar-value{font-size:11px}
.starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-radar-axis-rank{font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:22px;font-weight:1000}
.starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-radar-axis-value{font-size:13px;font-weight:800;letter-spacing:0}
.starting-lineup-builder .lineup-builder-radar-axis-rank.rank-letter-S{fill:url(#lineupRankS)}.starting-lineup-builder .lineup-builder-radar-axis-rank.rank-letter-A{fill:url(#lineupRankA)}.starting-lineup-builder .lineup-builder-radar-axis-rank.rank-letter-B{fill:url(#lineupRankB)}.starting-lineup-builder .lineup-builder-radar-axis-rank.rank-letter-C{fill:url(#lineupRankC)}.starting-lineup-builder .lineup-builder-radar-axis-rank.rank-letter-D{fill:url(#lineupRankD)}.starting-lineup-builder .lineup-builder-radar-axis-rank.rank-letter-E{fill:url(#lineupRankE)}.starting-lineup-builder .lineup-builder-radar-axis-rank.rank-letter-F{fill:url(#lineupRankF)}
.starting-lineup-builder .lineup-builder-radar-axis-rank.team-rank-a-plus{fill:url(#lineupRankAPlus)}
.starting-lineup-builder .lineup-builder-radar-axis-rank.team-rank-b-plus{fill:url(#lineupRankBPlus)}
.starting-lineup-builder .lineup-builder-radar-axis-rank.team-rank-c-plus{fill:url(#lineupRankCPlus)}
.starting-lineup-builder .lineup-builder-radar-axis-rank.team-rank-d-plus{fill:url(#lineupRankDPlus)}
.starting-lineup-builder .lineup-builder-radar-label{
  font-size:9.5px;
}
.starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-radar-label{fill:#26364d;font-size:9.6px;font-weight:600}
.starting-lineup-builder .lineup-builder-radar-wrap{
  border-bottom:0;
}
/* 戦力シミュレーター: 総合評価をレーダー左上へ配置。 */
.starting-lineup-builder .lineup-builder-overall{
  right:auto;
  left:8px;
}
.starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-overall{top:2px;left:2px}
/* 川崎サンプル: シミュレーター面を15%拡張し、右はレーダーだけを広げる。 */
@media(min-width:1181px){
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-starters-head{
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:8px;
    margin:0 2px 5px;
    padding-bottom:5px;
    border-bottom:1px solid #e1e7ef;
  }
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-starters-head strong{
    color:#1b263a;
    font-size:.76rem;
  }
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-starters-head small{
    color:#778397;
    font-size:.55rem;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .radar-column,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .season-stat-analysis{
    height:873px!important;
  }
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-radar-wrap{
    min-height:260px;
    flex:1 1 auto;
  }
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-radar{
    width:250px;
    height:250px;
  }
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-player--starter,
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-player--bench{
    height:84.4px;
    min-height:84.4px;
    max-height:84.4px;
  }
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-starter-list{
    grid-template-rows:repeat(5,84.4px);
    flex:0 0 auto;
    gap:3px;
    margin-top:auto;
  }
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-bench-list{
    grid-auto-rows:84.4px;
    align-content:start;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-group-card{
    height:100%;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-group-details{
    display:grid;
    grid-template-rows:repeat(6,minmax(0,1fr));
    flex:1 1 auto;
    align-content:stretch;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-group-detail{
    height:auto;
    min-height:0;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .grouped-team-analysis{
    display:flex;
    min-height:0;
    flex-direction:column;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-ability-grid{
    min-height:0;
    flex:1 1 auto;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-analysis-status-separated{
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:repeat(2,79.2px);
    gap:7px;
    min-height:165.4px;
    margin-top:7px;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-analysis-status-separated>.team-depth-balance-card,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-analysis-status-separated>.team-season-composition-card{
    width:100%;
    height:79.2px;
    min-height:79.2px;
    box-sizing:border-box;
    padding:9px 13px;
    border-color:#d8e0ea;
    background:linear-gradient(135deg,#fff,#f6f8fb);
    box-shadow:0 2px 7px rgba(27,38,58,.05);
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-analysis-status-separated header strong{
    font-size:.79rem;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-depth-balance-bars i,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-depth-balance-bars i:nth-child(n){
    font-size:.57rem;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-season-composition-bars i,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-season-composition-bars i:nth-child(n){
    font-size:.62rem;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-depth-balance-ranks span,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-season-composition-count span{
    font-size:.79rem;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-depth-balance-ranks b{
    font-size:1.32rem;
  }
.team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-season-composition-count b{
    font-size:1.01rem;
  }

  /* 川崎: 小項目は密度を上げ、主力・ベンチの2行には読み取り用の余白を残す。 */
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-group-details{
    margin-top:5px;
    grid-template-rows:repeat(6,minmax(25px,1fr));
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-group-detail{
    min-height:25px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-main-bench-composition{
    margin-top:10px;
    padding-top:4px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-main-bench-units{
    grid-template-rows:repeat(2,21px);
    min-height:44px;
    height:44px;
    gap:2px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-unit-power{
    height:21px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-unit-meter.ability-meter,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-unit-meter.ability-meter i{
    height:9px;
    min-height:9px;
    max-height:9px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-depth-balance-bars i,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-depth-balance-bars i:nth-child(n),
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-season-composition-bars i,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-season-composition-bars i:nth-child(n){
    font-weight:400;
  }
}

/* 川崎: 主力・ベンチ戦力の2行だけを、カード内でわずかに上寄せする。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-main-bench-composition{
    transform:translateY(-5px);
  }
}

/* 川崎: 3つの分析タイルは親コンテナの下端より内側で止める。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .grouped-team-analysis .team-group-card{
    height:calc(100% - 12px);
  }
}

/* 北海道で共通化候補を検証: 分析タイルは親枠の下端に余白を残す。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="hokkaido"]) .grouped-team-analysis .team-group-card{
    height:calc(100% - 12px);
  }
}

/* 川崎: 図だけを下げ、出場・ベンチのカード配置は固定する。 */
@media(min-width:1181px){
  .starting-lineup-builder[data-lineup-builder-team="kawasaki"] .lineup-builder-radar{
    transform:translateY(5%);
  }
}

/* 川崎: 主力・ベンチ戦力と区切り線を一体でわずかに上寄せする。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-main-bench-composition{
    transform:translateY(-7px);
  }
}

/* 川崎: 6つの小項目だけを少し下げ、主力・ベンチ戦力は固定する。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-group-details{
    transform:none;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-group-detail{
    transform:translateY(15px);
  }
}

/* 川崎: 上部のポジション別選手層は、人数表示が読める帯幅を確保する。 */
.team-themed .team-snapshot-kawasaki .pos-bar{
  width:22px!important;
}
.team-themed .team-snapshot-kawasaki .pos-segment-count{
  min-width:26px;
  font-size:.62rem!important;
}

/* 川崎: 戦力バランス・編成方針の段階ラベルに、控えめな太さを与える。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-depth-balance-bars i,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-depth-balance-bars i:nth-child(n),
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-season-composition-bars i,
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-season-composition-bars i:nth-child(n){
    font-weight:600;
  }
}

/* 川崎: 分析本体を圧縮し、コメント欄は下端を固定したまま上方向へ拡張する。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .radar-column.radar-column-sample{
    grid-template-rows:669px 194px!important;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-profile-standalone.team-profile-scroll-sample{
    height:194px;
    min-height:194px;
    max-height:194px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-profile-scroll-sendai{
    height:194px!important;
    min-height:194px!important;
    max-height:194px!important;
  }
}

/* 川崎: 分析カードは小項目を上詰めにし、主力・ベンチの2行へ余白を配分する。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-group-details{
    flex:0 0 276px;
    height:276px;
    grid-template-rows:repeat(6,41px);
    align-content:start;
    margin-top:3px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-main-bench-composition{
    margin-top:7px;
    padding-top:6px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-main-bench-units{
    grid-template-rows:repeat(2,24px);
    min-height:50px;
    height:50px;
    gap:2px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder[data-lineup-builder-team="kawasaki"]) .team-unit-power{
    height:24px;
  }
}
/* 余計な線を抑え、チームカラーを主役にしたレーダー表現。 */
.starting-lineup-builder .lineup-builder-radar-wrap{
  background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--team-accent) 11%,#fff) 0%,rgba(255,255,255,0) 67%);
}
.starting-lineup-builder .lineup-builder-radar-grid{
  stroke:color-mix(in srgb,var(--team-accent) 22%,#b7c6d8);
  stroke-width:1;
}
.starting-lineup-builder .lineup-builder-radar-grid polygon:nth-child(1){opacity:.28}
.starting-lineup-builder .lineup-builder-radar-grid polygon:nth-child(2){opacity:.5}
.starting-lineup-builder .lineup-builder-radar-grid polygon:nth-child(3){opacity:.8}
.starting-lineup-builder .lineup-builder-radar-grid line{opacity:.44}
.starting-lineup-builder .lineup-builder-radar-shape{
  fill:color-mix(in srgb,var(--team-accent) 22%,transparent);
  stroke:var(--team-accent);
  stroke-width:1.8;
  filter:drop-shadow(0 0 5px color-mix(in srgb,var(--team-accent) 32%,transparent));
}
.starting-lineup-builder .lineup-builder-radar-dot-halo{
  fill:#fff;
  stroke:color-mix(in srgb,var(--team-accent) 56%,#fff);
  stroke-width:1.1;
}
.starting-lineup-builder .lineup-builder-radar-dot-core{
  fill:var(--team-accent);
  filter:drop-shadow(0 0 2px color-mix(in srgb,var(--team-accent) 74%,transparent));
}
.starting-lineup-builder .lineup-builder-radar text{
  fill:#46566a;
  font-weight:900;
}
/* 戦力シミュレーター: レーダーと選手枠だけをタブ直下へ寄せる。 */
.starting-lineup-builder .lineup-builder-main{
  position:relative;
  top:-10px;
  margin-bottom:-10px;
}
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder) .team-group-card .team-main-bench-composition{
    margin-top:12px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-group-detail{
    min-height:31px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-units{
    grid-template-rows:repeat(2,18px);
    min-height:38px;
    height:38px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-unit-power{
    height:18px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row{
    min-height:88px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-triple>.team-depth-balance-card,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-triple>.team-season-composition-card{
    grid-template-rows:22px minmax(0,1fr);
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-triple .team-depth-balance-bars,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-triple .team-season-composition-bars{
    align-self:center;
  }
  /* 川崎: コメント枠は下端を固定したまま上へ広げ、上段の下部カードも連動して少し上へ。 */
  .team-themed .radar-section:has(.starting-lineup-builder) .radar-column.radar-column-sample{
    grid-template-rows:minmax(0,1fr) 174px!important;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-profile-scroll-sendai{
    height:174px!important;
    min-height:174px!important;
    max-height:174px!important;
  }
}

/* チーム比較専用の最終調整: 個別チームページの後続ルールを完全に打ち消す。 */
.compare-lineup-simulators{min-width:0;overflow:hidden}
.compare-lineup-simulators .compare-lineup-simulator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;min-width:0;padding:12px;background:#edf1f6}
.compare-lineup-simulator-shell{min-width:0;overflow:hidden;border:1px solid #d9e1ec;border-radius:8px;background:#fff;box-shadow:0 5px 14px rgba(17,24,39,.05)}
.compare-lineup-simulator-shell>header{display:flex;align-items:center;gap:8px;min-height:52px;padding:7px 10px;border-bottom:1px solid #e0e6ee;background:linear-gradient(115deg,color-mix(in srgb,var(--team-accent) 9%,#fff),#fff 68%)}
.compare-lineup-simulator-shell>header img{width:37px;height:37px;object-fit:contain}.compare-lineup-simulator-shell>header span{display:grid;min-width:0;gap:1px}.compare-lineup-simulator-shell>header small{color:#718096;font-size:.5rem;font-weight:700}.compare-lineup-simulator-shell>header strong{overflow:hidden;color:#1b263a;font-size:.78rem;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.compare-lineup-simulators .compare-lineup-simulator{position:relative;box-sizing:border-box;display:block;width:100%;min-width:0;margin:0;padding:10px 7px 7px;border:0;border-radius:0;background:transparent}
.compare-lineup-simulators .lineup-builder-main{position:static;top:auto;display:grid;grid-template-columns:minmax(0,1fr);gap:7px;min-width:0;min-height:0;margin:0}
.compare-lineup-simulators .lineup-builder-starters,.compare-lineup-simulators .lineup-builder-bench{min-width:0;padding:6px;border-radius:6px}.compare-lineup-simulators .lineup-builder-radar-wrap{min-height:186px}.compare-lineup-simulators .lineup-builder-radar{width:178px;height:178px}.compare-lineup-simulators .lineup-builder-overall{top:4px;left:4px}.compare-lineup-simulators .lineup-builder-overall b{font-size:1.38rem}.compare-lineup-simulators .lineup-builder-starter-list{gap:3px;margin-top:6px}
.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:10px 46px minmax(0,1fr) 108px;gap:3px;min-height:62px;padding:3px 5px 3px 2px}.compare-lineup-simulators .lineup-builder-player--starter .photo-shell{width:43px;height:55px}.compare-lineup-simulators .lineup-builder-player--starter .photo-shell img{transform:translateY(4px) scale(1.43)}
.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:41px minmax(0,1fr) 108px;gap:3px;min-height:50px;padding:3px 4px}.compare-lineup-simulators .lineup-builder-player--bench .photo-shell{width:39px;height:44px}.compare-lineup-simulators .lineup-builder-player--bench .photo-shell img{transform:translateY(3px) scale(1.3)}
.compare-lineup-simulators .lineup-builder-player-topline>strong{top:7px;right:58px;font-size:.71rem}.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-topline>strong{left:60px}.compare-lineup-simulators .lineup-builder-player--bench .lineup-builder-player-topline>strong{left:52px}.compare-lineup-simulators .lineup-builder-player-copy>small,.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-copy>small{font-size:.5rem;transform:translateY(7px)}
.compare-lineup-simulators .lineup-builder-player-position-meta{top:5px;right:4px;height:16px}.compare-lineup-simulators .lineup-builder-player-position-meta .position-icon,.compare-lineup-simulators .lineup-builder-player-position-meta .slot-icon.slot-icon--label{height:16px;min-height:16px;padding:0 3px;font-size:.42rem}.compare-lineup-simulators .lineup-builder-player-side{grid-template-rows:16px 25px;gap:1px}.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks{gap:2px;transform:translateY(2px)}.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{min-height:24px;padding:2px 1px}.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks small{font-size:.42rem}.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1.05rem}
.compare-lineup-simulators .lineup-builder-bench-head{margin:1px 1px 5px;padding-bottom:5px}.compare-lineup-simulators .lineup-builder-bench-head strong{font-size:.69rem}.compare-lineup-simulators .lineup-builder-bench-head small{font-size:.48rem}.compare-lineup-simulators .lineup-builder-bench-list{max-height:365px;min-height:0}.compare-lineup-simulators .lineup-builder-status{position:static;max-width:none;margin:6px 1px 0;font-size:.5rem;text-align:right}
@media(max-width:1320px){.compare-lineup-simulators .compare-lineup-simulator-grid{grid-template-columns:1fr}.compare-lineup-simulators .lineup-builder-main{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.compare-lineup-simulators .compare-lineup-simulator-grid{gap:8px;padding:8px}.compare-lineup-simulators .compare-lineup-simulator{padding:8px 5px 5px}.compare-lineup-simulators .lineup-builder-radar-wrap{min-height:172px}.compare-lineup-simulators .lineup-builder-radar{width:164px;height:164px}.compare-lineup-simulators .lineup-builder-bench{max-height:350px}.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 40px minmax(0,1fr) 96px;min-height:57px}.compare-lineup-simulators .lineup-builder-player--starter .photo-shell{width:38px;height:50px}.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:37px minmax(0,1fr) 96px}.compare-lineup-simulators .lineup-builder-player--bench .photo-shell{width:35px;height:41px}.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-topline>strong{left:53px}.compare-lineup-simulators .lineup-builder-player--bench .lineup-builder-player-topline>strong{left:47px}}

/* 比較用シミュレーター: 攻 / 守 / 速 / 強 を小さな補足ではなく、即読できる主情報にする。 */
.compare-lineup-simulators .lineup-builder-player-side{
  grid-template-rows:16px 29px;
  gap:2px;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks{
  gap:3px;
  transform:translateY(0);
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{
  min-height:28px;
  padding:2px 1px;
  background:#f1f4f8;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks small{
  font-size:.46rem;
  font-weight:900;
  line-height:1;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{
  font-size:1.25rem;
  font-weight:1000;
  line-height:.92;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player-side{grid-template-rows:15px 27px}
  .compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{min-height:26px}
  .compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1.12rem}
}

/* 戦力シミュレーターは攻・守・速・強・高の5ステータスを等幅で表示する。 */
.starting-lineup-builder .lineup-builder-player-ranks{grid-template-columns:repeat(5,minmax(0,1fr))}
.starting-lineup-builder .lineup-builder-player-ranks b{
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;
  font-weight:1000;
}
.starting-lineup-builder .lineup-builder-player--starter{grid-template-columns:10px 56px minmax(0,1fr) 156px}
.starting-lineup-builder .lineup-builder-player--bench{grid-template-columns:56px minmax(0,1fr) 156px}
.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:10px 46px minmax(0,1fr) 128px}
.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:41px minmax(0,1fr) 128px}
@media(max-width:760px){
  .starting-lineup-builder .lineup-builder-player--starter{grid-template-columns:9px 46px minmax(0,1fr) 128px}
  .starting-lineup-builder .lineup-builder-player--bench{grid-template-columns:46px minmax(0,1fr) 128px}
  .compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 40px minmax(0,1fr) 112px}
  .compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:37px minmax(0,1fr) 112px}
}

/* 比較ページ: 登録区分・ポジションは氏名側へ集約し、4能力を枠いっぱいに表示。 */
.compare-lineup-simulators .lineup-builder-player--starter{
  grid-template-columns:10px 46px minmax(0,1fr) 148px;
  min-height:68px;
}
.compare-lineup-simulators .lineup-builder-player--bench{
  grid-template-columns:41px minmax(0,1fr) 148px;
  min-height:56px;
}
.compare-lineup-simulators .lineup-builder-player-copy{
  min-width:0;
}
.compare-lineup-simulators .lineup-builder-player-topline{
  display:flex;
  align-items:center;
  min-width:0;
  gap:3px;
}
.compare-lineup-simulators .lineup-builder-player-topline>strong{
  position:static;
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.compare-lineup-simulators .lineup-builder-player-topline-meta{
  position:static;
  flex:0 0 auto;
  justify-content:flex-end;
  height:16px;
  margin-left:auto;
  transform:none!important;
}
.compare-lineup-simulators .lineup-builder-player-side{
  grid-template-rows:minmax(0,1fr);
  align-self:stretch;
  height:100%;
  gap:0;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks{
  grid-row:1;
  align-self:stretch;
  height:100%;
  gap:3px;
  transform:none;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{
  min-height:0;
  height:100%;
  padding:3px 1px;
  border-radius:4px;
  background:linear-gradient(155deg,#f7f9fc,#edf2f7);
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks small{
  font-size:.5rem;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{
  font-size:1.42rem;
  line-height:.88;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 40px minmax(0,1fr) 126px;min-height:62px}
  .compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:37px minmax(0,1fr) 126px;min-height:53px}
  .compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1.2rem}
}

/* 比較ページ: 体格と年齢は1行に集約して、選手情報を短く読めるようにする。 */
.compare-lineup-simulators .lineup-builder-player-copy{
  display:grid;
  grid-template-columns:max-content max-content;
  grid-template-rows:18px 14px;
  align-content:center;
  column-gap:3px;
  row-gap:1px;
}
.compare-lineup-simulators .lineup-builder-player-topline{
  grid-column:1/-1;
}
.compare-lineup-simulators .lineup-builder-player-copy>small,
.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-copy>small{
  min-width:0;
  margin:0;
  overflow:visible;
  transform:none;
  white-space:nowrap;
}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-age{
  grid-column:2;
}

/* 比較ページ: 選手情報は写真の隣へ、登録区分とポジションは能力欄の右に分離する。 */
.compare-lineup-simulators .lineup-builder-player--starter{
  grid-template-columns:10px 46px minmax(0,1fr) 178px;
}
.compare-lineup-simulators .lineup-builder-player--bench{
  grid-template-columns:41px minmax(0,1fr) 178px;
}
.compare-lineup-simulators .lineup-builder-player-copy{
  align-content:start;
  justify-content:start;
  padding-top:5px;
}
.compare-lineup-simulators .lineup-builder-player-topline,
.compare-lineup-simulators .lineup-builder-player-topline>strong{
  justify-self:start;
  text-align:left;
}
.compare-lineup-simulators .lineup-builder-player-copy>small,
.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-copy>small{
  color:#66758a;
  font-family:inherit;
  font-size:.52rem;
  font-weight:650;
  line-height:1.1;
}
.compare-lineup-simulators .lineup-builder-player-side{
  display:grid;
  grid-template-columns:minmax(0,1fr) 27px;
  grid-template-rows:minmax(0,1fr);
  align-self:stretch;
  gap:3px;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks{
  grid-column:1;
  grid-row:1;
  width:100%;
}
.compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta{
  position:static;
  display:flex;
  grid-column:2;
  grid-row:1;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  width:27px;
  height:auto;
  min-width:0;
  gap:3px;
  margin:0;
  transform:none!important;
}
.compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta .position-icon,
.compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{
  display:grid;
  place-items:center;
  width:27px;
  min-width:27px;
  height:auto;
  min-height:0;
  padding:1px 2px;
  font-size:.38rem;
  line-height:1.05;
  text-align:center;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{
  font-size:1.46rem;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 40px minmax(0,1fr) 150px}
  .compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:37px minmax(0,1fr) 150px}
  .compare-lineup-simulators .lineup-builder-player-side{grid-template-columns:minmax(0,1fr) 24px}
  .compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta{width:24px}
  .compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta .position-icon,
  .compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{width:24px;min-width:24px;font-size:.35rem}
  .compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1.24rem}
}

/* 比較ページもチームページと同じ、戦力バランス・編成方針の5段階カードを使用する。 */
.compare-team-status-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:10px 12px 0;
}
.compare-team-status-cards>.team-depth-balance-card,
.compare-team-status-cards>.team-season-composition-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:20px 34px;
  grid-template-areas:"head meta" "bars bars";
  min-width:0;
  min-height:0;
  padding:8px 9px;
  border:1px solid #dfe5ed;
  border-radius:7px;
  background:linear-gradient(135deg,#fff,#f6f8fb);
}
.compare-team-status-cards>.team-depth-balance-card>header,
.compare-team-status-cards>.team-season-composition-card>header{
  grid-area:head;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  min-height:0;
}
.compare-team-status-cards>.team-depth-balance-card>header strong,
.compare-team-status-cards>.team-season-composition-card>header strong{
  color:#172033;
  font-size:.66rem;
  font-weight:800;
  text-align:left;
  white-space:nowrap;
}
.compare-team-status-cards .team-depth-balance-scale,
.compare-team-status-cards .team-season-composition-scale{display:none}
.compare-team-status-cards .team-depth-balance-bars,
.compare-team-status-cards .team-season-composition-bars{
  grid-area:bars;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:center;
  height:30px;
  margin:0;
  padding:3px;
  gap:3px;
  border-radius:4px;
  background:#e9eef4;
}
.compare-team-status-cards .team-depth-balance-bars i,
.compare-team-status-cards .team-depth-balance-bars i:nth-child(n),
.compare-team-status-cards .team-season-composition-bars i{
  display:flex;
  align-items:center;
  justify-content:center;
  height:24px;
  padding:0 2px;
  border-radius:2px;
  background:#d3dbe5;
  color:#536076;
  font-size:.43rem;
  font-style:normal;
  font-weight:800;
  line-height:1.05;
  text-align:center;
  white-space:nowrap;
}
.compare-team-status-cards .team-depth-balance-bars i.is-current{background:linear-gradient(90deg,#35a7dd,#126da6);color:#fff;box-shadow:0 2px 6px rgba(18,109,166,.26)}
.compare-team-status-cards .team-season-composition-bars i.is-current{background:linear-gradient(90deg,#db4963,#9d1733);color:#fff;box-shadow:0 2px 6px rgba(157,23,51,.24)}
.compare-team-status-cards .team-depth-balance-ranks,
.compare-team-status-cards .team-season-composition-count{
  grid-area:meta;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
  color:#5f6c80;
  font-size:.46rem;
  font-weight:700;
}
.compare-team-status-cards .team-depth-balance-ranks span{display:flex;align-items:center;gap:2px}
.compare-team-status-cards .team-depth-balance-ranks b,
.compare-team-status-cards .team-season-composition-count b{font-size:.88rem}
@media(max-width:760px){
  .compare-team-status-cards{grid-template-columns:1fr;margin-inline:9px;gap:7px}
  .compare-team-status-cards>.team-depth-balance-card,
  .compare-team-status-cards>.team-season-composition-card{grid-template-rows:20px 34px}
}

/* 比較ページ: 能力ランクは左半分、登録区分・ポジションは右半分を使って余裕を確保。 */
.compare-lineup-simulators .lineup-builder-player-side{
  grid-template-columns:minmax(88px,1fr) minmax(78px,1fr);
  gap:5px;
}
.compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta{
  width:auto;
  justify-content:space-evenly;
  gap:4px;
}
.compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta .position-icon,
.compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{
  width:100%;
  min-width:0;
  padding:2px 4px;
  font-size:.46rem;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks{
  justify-self:start;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{
  padding-inline:0;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player-side{grid-template-columns:minmax(76px,1fr) minmax(64px,1fr);gap:4px}
  .compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta .position-icon,
  .compare-lineup-simulators .lineup-builder-player-side>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{font-size:.4rem}
}

/* 比較ページ: 登録区分・ポジションは体格情報の直下へ1行に集約。 */
.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:10px 46px minmax(0,1fr) 178px;min-height:76px}
.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:41px minmax(0,1fr) 178px;min-height:63px}
.compare-lineup-simulators .lineup-builder-player-copy{
  grid-template-rows:18px 14px 18px;
  padding-top:3px;
}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta{
  position:static;
  display:flex;
  grid-column:1/-1;
  grid-row:3;
  align-items:center;
  justify-content:flex-start;
  width:auto;
  height:17px;
  min-width:0;
  gap:3px;
  margin:0;
  transform:none!important;
}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .position-icon,
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{
  display:grid;
  place-items:center;
  width:auto;
  min-width:0;
  height:17px;
  min-height:17px;
  padding:0 4px;
  font-size:.42rem;
  line-height:1;
  text-align:center;
}
.compare-lineup-simulators .lineup-builder-player-side{
  grid-template-columns:minmax(0,1fr);
  gap:0;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks{
  grid-column:1;
  justify-self:stretch;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 40px minmax(0,1fr) 150px;min-height:69px}
  .compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:37px minmax(0,1fr) 150px;min-height:59px}
  .compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .position-icon,
  .compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{font-size:.38rem}
}

/* 比較ページだけは、全16能力を4列×4行で一覧する。 */
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player--starter{min-height:108px}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player--bench{min-height:94px}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks{
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:repeat(4,minmax(0,1fr));
  gap:2px;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks>span{
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:1px;
  min-height:0;
  padding:1px 0;
  border-radius:2px;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks small{
  color:#65738a;
  font-size:.34rem;
  font-weight:900;
  line-height:1;
  letter-spacing:0;
  white-space:nowrap;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks b{
  font-size:.78rem;
  line-height:.9;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player--starter{min-height:99px}
  .compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player--bench{min-height:87px}
  .compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks{gap:1px}
  .compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks small{font-size:.31rem}
  .compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:.7rem}
}

/* 比較ページ: 16能力は選手カードの全幅を使う一行16列の帯として表示する。 */
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player--starter{
  grid-template-columns:10px 46px minmax(0,1fr);
  grid-template-rows:58px 26px;
  min-height:88px;
  row-gap:1px;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player--bench{
  grid-template-columns:41px minmax(0,1fr);
  grid-template-rows:51px 25px;
  min-height:80px;
  row-gap:1px;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-slot,
.compare-lineup-simulators .lineup-builder--detail-abilities .photo-shell,
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-copy{
  grid-row:1;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side{
  display:block;
  grid-column:1/-1;
  grid-row:2;
  width:100%;
  height:100%;
  min-height:0;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks{
  display:grid;
  grid-template-columns:repeat(16,minmax(0,1fr));
  grid-template-rows:1fr;
  width:100%;
  height:100%;
  gap:1px;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks>span{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-width:0;
  height:100%;
  padding:1px 0;
  gap:0;
  border-radius:1px;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks small{
  overflow:hidden;
  max-width:100%;
  color:#65738a;
  font-size:.31rem;
  font-weight:900;
  line-height:.9;
  text-align:center;
  text-overflow:clip;
  white-space:nowrap;
}
.compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks b{
  flex:0 0 auto;
  font-size:.8rem;
  line-height:.82;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player--starter{grid-template-columns:9px 40px minmax(0,1fr);grid-template-rows:53px 23px;min-height:79px}
  .compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player--bench{grid-template-columns:37px minmax(0,1fr);grid-template-rows:47px 22px;min-height:72px}
  .compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks small{font-size:.27rem}
  .compare-lineup-simulators .lineup-builder--detail-abilities .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:.68rem}
}

/* 比較ページ: 4能力は横幅を広げ、登録区分・ポジションも一目で読める大きさにする。 */
.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:10px 46px minmax(0,1fr) 220px;min-height:80px}
.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:41px minmax(0,1fr) 220px;min-height:67px}
.compare-lineup-simulators .lineup-builder-player-copy{grid-template-rows:18px 14px 21px}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta{height:20px;gap:4px}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .position-icon,
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{
  height:20px;
  min-height:20px;
  padding:0 6px;
  font-size:.52rem;
  font-weight:750;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks{gap:4px}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{padding-inline:2px}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks small{font-size:.54rem}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1.55rem}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 40px minmax(0,1fr) 184px;min-height:74px}
  .compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:37px minmax(0,1fr) 184px;min-height:63px}
  .compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .position-icon,
  .compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{font-size:.46rem}
  .compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks small{font-size:.48rem}
  .compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{font-size:1.3rem}
}

/* 比較ページ: 体格・年齢・登録区分・ポジションを氏名の下の一行へ集約。 */
.compare-lineup-simulators .lineup-builder-player--starter{min-height:68px}
.compare-lineup-simulators .lineup-builder-player--bench{min-height:58px}
.compare-lineup-simulators .lineup-builder-player-copy{
  grid-template-columns:max-content max-content minmax(0,1fr);
  grid-template-rows:18px 21px;
  align-content:center;
  column-gap:3px;
  row-gap:1px;
  padding-top:1px;
}
.compare-lineup-simulators .lineup-builder-player-topline{grid-column:1/-1;grid-row:1}
.compare-lineup-simulators .lineup-builder-player-copy>small{grid-row:2}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-age{grid-column:2;grid-row:2}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta{
  grid-column:3;
  grid-row:2;
  height:20px;
  min-width:0;
  margin-left:2px;
  overflow:hidden;
  white-space:nowrap;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player--starter{min-height:64px}
  .compare-lineup-simulators .lineup-builder-player--bench{min-height:55px}
  .compare-lineup-simulators .lineup-builder-player-copy{grid-template-rows:17px 19px}
  .compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta{height:19px}
}

/* 比較ページ: 4能力タイルはカード全高ではなく、選手写真と同じ高さで揃える。 */
.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-side{
  align-self:center;
  height:55px;
}
.compare-lineup-simulators .lineup-builder-player--bench .lineup-builder-player-side{
  align-self:center;
  height:44px;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{
  height:100%;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-side{height:50px}
  .compare-lineup-simulators .lineup-builder-player--bench .lineup-builder-player-side{height:41px}
}

/* 比較ページ: 能力名とランクは上下2段で読み分ける。 */
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks>span{
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks small{
  font-size:.54rem;
  line-height:1;
}
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{
  line-height:.84;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks small{font-size:.48rem}
}

/* 比較ページ: 出場メンバーもベンチと同じ見出しで区切る。 */
.lineup-builder-starters-head{display:none}
.compare-lineup-simulators .lineup-builder-starters-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:8px;
  margin:5px 1px 5px;
  padding-bottom:5px;
  border-bottom:1px solid #e1e7ef;
}
.compare-lineup-simulators .lineup-builder-starters-head strong{color:#1b263a;font-size:.69rem}
.compare-lineup-simulators .lineup-builder-starters-head small{color:#778397;font-size:.48rem}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-starters-head{margin-top:4px}
}

/* 比較ページ: 体格・年齢と登録区分・ポジションを同一の高さに揃える。 */
.compare-lineup-simulators .lineup-builder-player-copy>small,
.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-copy>small{
  display:flex;
  align-items:center;
  height:20px;
  color:#596a80;
  font-size:.62rem;
  font-weight:700;
  line-height:1;
}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-age{
  font-family:inherit;
  font-size:.62rem;
  font-weight:700;
}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta{
  align-self:center;
  height:20px;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player-copy>small,
  .compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-copy>small,
  .compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-age{height:19px;font-size:.56rem}
}

/* 比較画面では操作案内を省き、2チームの比較そのものへ集中させる。 */
.compare-lineup-simulators .lineup-builder-status{display:none}

/* 比較ページ: 総合ランクはレーダーと並ぶ主情報として大きく表示する。 */
.compare-lineup-simulators .lineup-builder-overall b{font-size:2.76rem}
.compare-lineup-simulators .lineup-builder-overall small{font-size:.58rem}
.compare-lineup-simulators .lineup-builder-overall{left:14px}

/* 比較ページ: 選手能力のランク文字は一覧・能力表示と同じ書体に揃える。 */
.compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks b{
  font-family:"Arial Narrow","Avenir Next Condensed",Arial,sans-serif;
  font-weight:850;
  transform:scaleX(.9);
}

/* 比較ページの戦力シミュレーター: 能力カードの余白を圧縮して密度を上げる。 */
.comparison-grid:not(.player-comparison-grid) .compare-metric-card{
  min-height:58px;
  padding:8px 10px;
}
.comparison-grid:not(.player-comparison-grid) .compare-metric-copy{gap:3px}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score.ranking-grade{min-height:36px}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score.ranking-grade>strong{height:36px}

/* 比較ページの戦力シミュレーター: 戦力バランスと編成方針を縦積みにして判読性を確保。 */
.compare-lineup-simulators .compare-team-status-cards{
  grid-template-columns:minmax(0,1fr);
  gap:9px;
}

/* 比較ページの戦力シミュレーター: 選手情報を能力表示に埋もれない大きさへ。 */
.compare-lineup-simulators .lineup-builder-player-topline>strong{
  font-size:.84rem;
  line-height:1.1;
}
.compare-lineup-simulators .lineup-builder-player-copy>small,
.compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-copy>small,
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-age{
  font-size:.69rem;
}
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .position-icon,
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{
  font-size:.57rem;
  font-weight:700;
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player-topline>strong{font-size:.76rem}
  .compare-lineup-simulators .lineup-builder-player-copy>small,
  .compare-lineup-simulators .lineup-builder-player--starter .lineup-builder-player-copy>small,
  .compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-age{font-size:.62rem}
  .compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .position-icon,
.compare-lineup-simulators .lineup-builder-player-copy>.lineup-builder-player-position-meta .slot-icon.slot-icon--label{font-size:.51rem}
}

/* チーム比較: チーム名から個別のチーム詳細へ直接移動する。 */
.compare-team-name-row{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
}
.compare-team-name-row h2{min-width:0;flex:1 1 auto}
.compare-team-detail-link{
  flex:0 0 auto;
  padding:4px 7px;
  border:1px solid color-mix(in srgb,var(--compare-accent,#1f6fae) 42%,#cfd8e5);
  border-radius:4px;
  color:var(--compare-accent,#1f6fae);
  background:#fff;
  font-size:.56rem;
  font-weight:750;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
.compare-team-detail-link:hover{background:color-mix(in srgb,var(--compare-accent,#1f6fae) 9%,#fff)}
@media(max-width:760px){
  .compare-team-name-row{gap:5px}
  .compare-team-detail-link{padding:4px 6px;font-size:.51rem}
}

/* チーム比較: 個別ページへの導線は戦力シミュレーターのチーム名に添える。 */
.compare-lineup-simulator-shell>header>span{flex:1 1 auto}
.compare-lineup-team-detail{
  flex:0 0 auto;
  padding:4px 7px;
  border:1px solid color-mix(in srgb,var(--team-accent) 42%,#cfd8e5);
  border-radius:4px;
  color:var(--team-accent);
  background:#fff;
  font-size:.56rem;
  font-weight:750;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
.compare-lineup-team-detail:hover{background:color-mix(in srgb,var(--team-accent) 9%,#fff)}
@media(max-width:760px){.compare-lineup-team-detail{padding:4px 6px;font-size:.51rem}}

/* チーム戦力比較: 各チーム内の2つの構成指標は、横幅を使って縦積みで表示する。 */
.compare-team-status-cards{
  grid-template-columns:minmax(0,1fr);
  gap:9px;
}

/* チーム戦力比較: 構成指標を本文と同じ視認性へ引き上げる。 */
.compare-team-status-cards>.team-depth-balance-card,
.compare-team-status-cards>.team-season-composition-card{
  grid-template-rows:24px 38px;
  padding:10px 12px;
}
.compare-team-status-cards>.team-depth-balance-card>header strong,
.compare-team-status-cards>.team-season-composition-card>header strong{font-size:.8rem}
.compare-team-status-cards .team-depth-balance-bars,
.compare-team-status-cards .team-season-composition-bars{height:34px;padding:3px 4px;gap:4px}
.compare-team-status-cards .team-depth-balance-bars i,
.compare-team-status-cards .team-depth-balance-bars i:nth-child(n),
.compare-team-status-cards .team-season-composition-bars i{height:28px;font-size:.57rem}
.compare-team-status-cards .team-depth-balance-ranks,
.compare-team-status-cards .team-season-composition-count{font-size:.61rem}
.compare-team-status-cards .team-depth-balance-ranks b,
.compare-team-status-cards .team-season-composition-count b{font-size:1.12rem}
.comparison-grid:not(.player-comparison-grid) .compare-snapshot .compare-snapshot-rank{
  color:#64748b;
  font-size:.54rem;
  font-weight:650;
  line-height:1.1;
}

/* チーム戦力比較: 両方の5段階バーを、左=赤 / 中央=青 / 右=緑の共通スケールにする。 */
.compare-team-status-cards .team-depth-balance-bars i,
.compare-team-status-cards .team-depth-balance-bars i:nth-child(n),
.compare-team-status-cards .team-season-composition-bars i{
  opacity:.32;
  box-shadow:none;
}
.compare-team-status-cards .team-depth-balance-bars i:nth-child(1),
.compare-team-status-cards .team-season-composition-bars i:nth-child(1){background:linear-gradient(90deg,#8d1028,#d94c62)!important}
.compare-team-status-cards .team-depth-balance-bars i:nth-child(2),
.compare-team-status-cards .team-season-composition-bars i:nth-child(2){background:linear-gradient(90deg,#c9474e,#ef8a70)!important}
.compare-team-status-cards .team-depth-balance-bars i:nth-child(3),
.compare-team-status-cards .team-season-composition-bars i:nth-child(3){background:linear-gradient(90deg,#116eae,#3baee5)!important}
.compare-team-status-cards .team-depth-balance-bars i:nth-child(4),
.compare-team-status-cards .team-season-composition-bars i:nth-child(4){background:linear-gradient(90deg,#2b9a69,#70ce9c)!important}
.compare-team-status-cards .team-depth-balance-bars i:nth-child(5),
.compare-team-status-cards .team-season-composition-bars i:nth-child(5){background:linear-gradient(90deg,#08763d,#3db56e)!important}
.compare-team-status-cards .team-depth-balance-bars i.is-current,
.compare-team-status-cards .team-season-composition-bars i.is-current{
  opacity:1;
  color:#fff;
  box-shadow:0 2px 6px rgba(23,42,68,.22);
}
.compare-team-status-cards .team-depth-balance-bars i:not(.is-current),
.compare-team-status-cards .team-season-composition-bars i:not(.is-current){
  opacity:1;
  background:#d3dbe5!important;
  color:#536076;
  box-shadow:none;
}
@media(max-width:760px){
  .compare-team-status-cards>.team-depth-balance-card,
  .compare-team-status-cards>.team-season-composition-card{grid-template-rows:23px 36px;padding:9px 10px}
  .compare-team-status-cards>.team-depth-balance-card>header strong,
  .compare-team-status-cards>.team-season-composition-card>header strong{font-size:.76rem}
  .compare-team-status-cards .team-depth-balance-bars i,
  .compare-team-status-cards .team-depth-balance-bars i:nth-child(n),
  .compare-team-status-cards .team-season-composition-bars i{font-size:.53rem}
}

/* チーム比較の戦力シミュレーター: 出場・ベンチの選手カード高を統一。 */
.compare-lineup-simulators .lineup-builder-player--bench{min-height:68px}
.compare-lineup-simulators .lineup-builder-player--bench .lineup-builder-player-side{height:55px}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player--bench{min-height:64px}
  .compare-lineup-simulators .lineup-builder-player--bench .lineup-builder-player-side{height:50px}
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-overall b{font-size:2.35rem}
  .compare-lineup-simulators .lineup-builder-overall{left:11px}
}

/* チーム戦力比較: 小項目カードを約80%の高さへ圧縮し、一覧性を上げる。 */
.comparison-grid:not(.player-comparison-grid) .compare-table.compare-metric-grid{
  gap:6px;
  padding:9px 12px 0;
}
.comparison-grid:not(.player-comparison-grid) .compare-metric-card{
  min-height:46px;
  padding:6px 9px;
  gap:6px;
}
.comparison-grid:not(.player-comparison-grid) .compare-metric-copy{gap:2px}
.comparison-grid:not(.player-comparison-grid) .compare-metric-copy strong{
  font-size:.72rem;
  line-height:1.1;
}
.comparison-grid:not(.player-comparison-grid) .compare-metric-copy small{
  font-size:.55rem;
  line-height:1.15;
}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score.ranking-grade{
  grid-template-columns:32px minmax(0,1fr);
  min-height:30px;
  gap:6px;
}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score.ranking-grade>strong{
  height:30px;
  font-size:1.85rem;
}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score .ranking-grade-detail{gap:3px}
.comparison-grid:not(.player-comparison-grid) .compare-metric-score .ability-meter{height:7px}

/* モバイルのチーム比較: 根拠文をランク側まで使い、早すぎる折り返しを抑える。 */
@media(max-width:760px){
  body[data-page="teamCompare"] .comparison-grid:not(.player-comparison-grid) .compare-metric-card{
    grid-template-columns:minmax(0,1fr) 96px;
    gap:2px;
    padding-right:7px;
  }
  body[data-page="teamCompare"] .comparison-grid:not(.player-comparison-grid) .compare-metric-score.ranking-grade{
    grid-column:auto;
    grid-row:auto;
    grid-template-columns:32px minmax(0,1fr);
    gap:3px;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .compare-lineup-simulator-grid{
    background:#fff;
  }
}

/* チーム戦力比較: 戦力バランス・編成方針の文字を読みやすい大きさへ。 */
.compare-team-status-cards>.team-depth-balance-card,
.compare-team-status-cards>.team-season-composition-card{
  grid-template-rows:27px 40px;
}
.compare-team-status-cards>.team-depth-balance-card>header strong,
.compare-team-status-cards>.team-season-composition-card>header strong{font-size:.9rem}
.compare-team-status-cards .team-depth-balance-bars,
.compare-team-status-cards .team-season-composition-bars{height:38px}
.compare-team-status-cards .team-depth-balance-bars i,
.compare-team-status-cards .team-depth-balance-bars i:nth-child(n),
.compare-team-status-cards .team-season-composition-bars i{
  height:32px;
  font-size:.66rem;
}
.compare-team-status-cards .team-depth-balance-ranks,
.compare-team-status-cards .team-season-composition-count{font-size:.7rem}
.compare-team-status-cards .team-depth-balance-ranks b,
.compare-team-status-cards .team-season-composition-count b{font-size:1.2rem}
@media(max-width:760px){
  .compare-team-status-cards>.team-depth-balance-card,
  .compare-team-status-cards>.team-season-composition-card{grid-template-rows:25px 38px}
  .compare-team-status-cards>.team-depth-balance-card>header strong,
  .compare-team-status-cards>.team-season-composition-card>header strong{font-size:.84rem}
  .compare-team-status-cards .team-depth-balance-bars i,
  .compare-team-status-cards .team-depth-balance-bars i:nth-child(n),
  .compare-team-status-cards .team-season-composition-bars i{font-size:.61rem}
}

/* チーム戦力比較: 選手カード下部の余白を写真表示へ回し、出場・ベンチを揃える。 */
.compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:10px 51px minmax(0,1fr) 220px}
.compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:46px minmax(0,1fr) 220px}
.compare-lineup-simulators .lineup-builder-player--starter .photo-shell,
.compare-lineup-simulators .lineup-builder-player--bench .photo-shell{
  width:48px;
  height:59px;
}
.compare-lineup-simulators .lineup-builder-player--starter .photo-shell img,
.compare-lineup-simulators .lineup-builder-player--bench .photo-shell img{
  transform:translateY(4px) scale(1.5);
}
@media(max-width:760px){
  .compare-lineup-simulators .lineup-builder-player--starter{grid-template-columns:9px 47px minmax(0,1fr) 184px}
  .compare-lineup-simulators .lineup-builder-player--bench{grid-template-columns:42px minmax(0,1fr) 184px}
  .compare-lineup-simulators .lineup-builder-player--starter .photo-shell,
  .compare-lineup-simulators .lineup-builder-player--bench .photo-shell{width:44px;height:54px}
  .compare-lineup-simulators .lineup-builder-player--starter .photo-shell img,
  .compare-lineup-simulators .lineup-builder-player--bench .photo-shell img{transform:translateY(4px) scale(1.46)}
}

/* 全チーム共通: 戦力シミュレーターの選手カード高を約1.1倍にする。 */
.team-themed .starting-lineup-builder .lineup-builder-player--starter{
  min-height:77px;
}
.team-themed .starting-lineup-builder .lineup-builder-starter-list{
  flex:1 1 auto;
  grid-template-rows:repeat(5,minmax(0,1fr));
  align-content:stretch;
}
.team-themed .starting-lineup-builder .lineup-builder-player--bench{
  min-height:77px;
}
.team-themed .starting-lineup-builder .lineup-builder-bench-list{
  height:auto;
  max-height:none;
  flex:1 1 0;
  padding-right:0;
}
.team-themed .starting-lineup-builder .lineup-builder-bench{
  height:100%;
  align-self:stretch;
}
.team-themed .starting-lineup-builder .lineup-builder-player-dimensions{
  overflow:visible;
  white-space:nowrap;
}
@media(min-width:1181px){
  .team-themed .starting-lineup-builder .lineup-builder-player--starter,
  .team-themed .starting-lineup-builder .lineup-builder-player--bench{
    min-height:84.4px;
  }
  .team-themed .starting-lineup-builder .lineup-builder-bench-list{
    height:auto;
    max-height:none;
    flex-basis:0;
  }
}
@media(max-width:760px){
  .team-themed .starting-lineup-builder .lineup-builder-player--starter{
    min-height:68px;
  }
  .team-themed .starting-lineup-builder .lineup-builder-starter-list{
    grid-template-rows:repeat(5,minmax(68px,1fr));
  }
  .team-themed .starting-lineup-builder .lineup-builder-player--bench{
    min-height:68px;
  }
  .team-themed .starting-lineup-builder .lineup-builder-bench-list{
    height:auto;
    max-height:none;
    flex-basis:0;
  }
}

/* 全チーム共通: ロースター人数を戦力分析見出しへ移し、概要帯を4項目で再配分。 */
@media(min-width:761px){
  .team-themed .team-snapshot-kawasaki{
    grid-template-columns:minmax(174px,.85fr) repeat(3,minmax(215px,1.05fr));
  }
}
.team-themed .team-snapshot-kawasaki>.snapshot-item:first-child{
  display:none;
}
.team-themed .team-analysis-heading-meta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}
.team-themed .team-analysis-heading-meta .team-support-factors{
  margin:0;
}
.team-themed .team-analysis-roster-count{
  display:flex;
  align-items:baseline;
  gap:5px;
  color:#536176;
  font-size:.72rem;
  font-weight:600;
  white-space:nowrap;
}
.team-themed .team-analysis-roster-count b{
  color:#172033;
  font-size:1rem;
  font-weight:900;
}
@media(max-width:760px){
  .team-themed .team-analysis-heading-meta{
    gap:7px;
  }
  .team-themed .team-analysis-roster-count{
    font-size:.65rem;
  }
}

/* 全チーム共通: 選手情報を写真右側の上下2段へ整理し、能力欄を横いっぱいに使う。 */
.team-themed .starting-lineup-builder .lineup-builder-player{
  grid-template-rows:34px minmax(0,1fr);
  align-items:stretch;
  padding-top:2px;
  padding-bottom:2px;
}
.team-themed .starting-lineup-builder .lineup-builder-player--starter{
  grid-template-columns:10px 56px minmax(0,1fr);
}
.team-themed .starting-lineup-builder .lineup-builder-player--bench{
  grid-template-columns:10px 56px minmax(0,1fr);
  padding-right:7px;
  padding-left:2px;
}
.team-themed .starting-lineup-builder .lineup-builder-slot,
.team-themed .starting-lineup-builder .photo-shell{
  grid-row:1/3;
  align-self:center;
}
.team-themed .starting-lineup-builder .lineup-builder-player--starter .lineup-builder-player-copy,
.team-themed .starting-lineup-builder .lineup-builder-player--starter .lineup-builder-player-side{
  grid-column:3;
}
.team-themed .starting-lineup-builder .lineup-builder-player--bench .lineup-builder-player-copy,
.team-themed .starting-lineup-builder .lineup-builder-player--bench .lineup-builder-player-side{
  grid-column:3;
}
.team-themed .starting-lineup-builder .lineup-builder-player--bench .lineup-builder-slot{
  display:block;
  visibility:hidden;
}
.team-themed .starting-lineup-builder .lineup-builder-player-copy{
  grid-row:1;
  display:flex;
  align-self:stretch;
  justify-content:center;
  gap:0;
  padding-right:66px;
}
.team-themed .starting-lineup-builder .lineup-builder-player-topline>strong{
  position:static;
  display:block;
  width:100%;
  overflow:hidden;
  font-size:.76rem;
  line-height:1.22;
  text-overflow:ellipsis;
  transform:translateY(2px);
  white-space:nowrap;
}
.team-themed .starting-lineup-builder .lineup-builder-player-topline{
  width:100%;
}
.team-themed .starting-lineup-builder .lineup-builder-player-position-meta{
  top:8px;
  right:7px;
  display:flex;
  height:auto;
  flex-direction:column-reverse;
  align-items:flex-end;
  gap:2px;
}
.team-themed .starting-lineup-builder .lineup-builder-player-position-meta .position-icon,
.team-themed .starting-lineup-builder .lineup-builder-player-position-meta .slot-icon.slot-icon--label{
  height:15px;
  min-height:15px;
  line-height:15px;
}
.team-themed .starting-lineup-builder .lineup-builder-player-position-meta .position-icon{
  transform:translateY(-1px);
}
.team-themed .starting-lineup-builder .lineup-builder-player-position-meta .slot-icon.slot-icon--label{
  transform:translateY(1px);
}
.team-themed .starting-lineup-builder .lineup-builder-player-dimensions{
  display:block;
  overflow:hidden;
  font-size:.58rem;
  line-height:1.05;
  text-overflow:ellipsis;
  transform:translateY(6px) !important;
  white-space:nowrap;
}
.team-themed .starting-lineup-builder .lineup-builder-player-side{
  grid-row:2;
  display:block;
  width:100%;
  height:auto;
  align-self:stretch;
  transform:translateY(2px);
}
.team-themed .starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks{
  width:100%;
  height:85.5%;
  align-self:end;
  overflow:visible;
  transform:none !important;
}
.team-themed .starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks>span{
  min-height:0;
  height:100%;
  gap:3px;
  overflow:visible;
}
.team-themed .starting-lineup-builder .lineup-builder-player-side .lineup-builder-player-ranks b{
  display:inline-block;
  padding-inline:1px;
  font-size:1.36rem;
}
.team-themed .starting-lineup-builder .lineup-builder-player--starter .photo-shell,
.team-themed .starting-lineup-builder .lineup-builder-player--bench .photo-shell{
  height:77px;
  transform:translateY(1px);
}
.team-themed .starting-lineup-builder .lineup-builder-player--starter .photo-shell img,
.team-themed .starting-lineup-builder .lineup-builder-player--bench .photo-shell img{
  transform:translateY(5px) scale(1.62);
  transform-origin:50% 10%;
}

/* 全チーム共通: 戦力分析本体と編成指標を独立した外枠へ分割する。 */
.team-themed .grouped-team-analysis{
  padding:0;
  overflow:visible;
  border:0;
  background:transparent;
}
.team-themed .grouped-team-analysis>.radar-title{
  margin:0;
  padding:12px 12px 4px;
  border:1px solid var(--line);
  border-bottom:0;
  border-radius:8px 8px 0 0;
  background:linear-gradient(180deg,#fffdf7,#fff);
}
.team-themed .grouped-team-analysis>.team-ability-grid{
  padding:15px 12px 12px;
  border:1px solid var(--line);
  border-top:0;
  border-radius:0 0 8px 8px;
  background:#fff;
}
.team-themed .grouped-team-analysis>.team-ability-grid{
  margin-top:0;
}
.team-themed .grouped-team-analysis>.team-analysis-status-row{
  margin-top:10px;
  padding:8px;
  border:1px solid var(--line);
  border-radius:8px;
  background:linear-gradient(180deg,#fffdf7,#fff);
}
.team-themed .grouped-team-analysis .team-group-card{
  height:100%;
}
.team-themed .grouped-team-analysis .team-group-meter>.ability-meter{
  height:15px;
}
.team-themed .grouped-team-analysis .team-group-details{
  display:grid;
  flex:1 1 auto;
  grid-template-rows:repeat(6,minmax(27px,1fr));
  margin-top:8px;
}
.team-themed .grouped-team-analysis .team-group-detail{
  grid-template-columns:minmax(58px,68px) minmax(60px,1fr) 24px;
  min-height:27px;
}
.team-themed .grouped-team-analysis .team-group-detail small{
  font-size:.62rem;
}
.team-themed .grouped-team-analysis .team-group-detail b{
  font-size:1.1rem;
}
.team-themed .grouped-team-analysis .team-detail-meter.ability-meter{
  height:10px;
}

.team-themed .grouped-team-analysis .team-unit-meter.ability-meter,
.team-themed .grouped-team-analysis .team-unit-meter.ability-meter i{
  height:10px;
  min-height:10px;
  max-height:10px;
}

/* 全チーム共通: 川崎で確定した分析・編成・シミュレーターの密度を統一する。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder) .radar-column,
  .team-themed .radar-section:has(.starting-lineup-builder) .season-stat-analysis{
    height:873px!important;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .grouped-team-analysis{
    display:flex;
    min-height:0;
    flex-direction:column;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-ability-grid{
    min-height:0;
    flex:1 1 auto;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .grouped-team-analysis .team-group-card{
    height:calc(100% - 12px);
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-group-details{
    flex:0 0 276px;
    height:276px;
    grid-template-rows:repeat(6,41px);
    align-content:start;
    margin-top:3px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-group-detail{
    min-height:25px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-composition{
    margin-top:7px;
    padding-top:6px;
    transform:translateY(-7px);
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-units{
    grid-template-rows:repeat(2,24px);
    min-height:50px;
    height:50px;
    gap:2px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-unit-power{
    height:24px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-separated{
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:repeat(2,79.2px);
    gap:7px;
    min-height:165.4px;
    margin-top:7px;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-separated>.team-depth-balance-card,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-separated>.team-season-composition-card{
    width:100%;
    height:79.2px;
    min-height:79.2px;
    box-sizing:border-box;
    padding:9px 13px;
    border-color:#d8e0ea;
    background:linear-gradient(135deg,#fff,#f6f8fb);
    box-shadow:0 2px 7px rgba(27,38,58,.05);
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-separated header strong{
    font-size:.79rem;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-depth-balance-bars i,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-season-composition-bars i{
    font-size:.6rem;
    font-weight:600;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-depth-balance-ranks span,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-season-composition-count span{
    font-size:.79rem;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-depth-balance-ranks b{
    font-size:1.32rem;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-season-composition-count b{
    font-size:1.01rem;
  }
  .starting-lineup-builder .lineup-builder-radar-wrap{
    min-height:260px;
    flex:1 1 auto;
  }
  .starting-lineup-builder .lineup-builder-radar{
    width:250px;
    height:250px;
    transform:translateY(5%);
  }
  .starting-lineup-builder .lineup-builder-starter-list{
    grid-template-rows:repeat(5,84.4px);
    flex:0 0 auto;
    gap:3px;
    margin-top:auto;
  }
  .starting-lineup-builder .lineup-builder-bench-list{
    grid-auto-rows:84.4px;
    align-content:start;
  }
  .starting-lineup-builder .lineup-builder-player--starter,
  .starting-lineup-builder .lineup-builder-player--bench{
    height:84.4px;
    min-height:84.4px;
    max-height:84.4px;
  }
  .starting-lineup-builder .lineup-builder-starters-head{
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:8px;
    margin:0 2px 5px;
    padding-bottom:5px;
    border-bottom:1px solid #e1e7ef;
  }
  .starting-lineup-builder .lineup-builder-starters-head strong{color:#1b263a;font-size:.76rem}
  .starting-lineup-builder .lineup-builder-starters-head small{color:#778397;font-size:.55rem}
}

/* 全チーム最終適用: 小項目6行と主力・ベンチ2行の縦配置を統一する。 */
.team-themed .radar-section:has(.starting-lineup-builder) .team-group-detail:last-child{
  border-bottom:0;
}
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder) .team-group-details{
    flex:0 0 246px;
    height:246px;
    grid-template-rows:repeat(6,41px);
    align-content:start;
    transform:translateY(13px);
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-composition{
    margin-top:0;
    padding-top:0;
    transform:translateY(21px);
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-composition::before{
    top:-4px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-units{
    grid-template-rows:repeat(2,41px);
    min-height:82px;
    height:82px;
    gap:0;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-unit-power{
    height:41px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-units .team-unit-power:first-child{
    transform:none;
  }
}

/* 全チーム共通: 小項目のメーターだけを6px下げる。 */
.team-themed .radar-section:has(.starting-lineup-builder) .team-detail-meter.ability-meter{
  transform:translateY(6px);
}

/* 全チーム共通: ベンチカードを人数に応じて圧縮せず、スタメンと同じ高さでスクロールする。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-player--bench{
    grid-template-columns:10px 56px minmax(0,1fr);
    min-height:84.4px;
    height:84.4px;
    gap:6px;
    padding-right:7px;
    padding-left:2px;
    padding-top:2px;
    padding-bottom:2px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-player--bench .photo-shell{
    width:54px;
    height:77px;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-player--bench .photo-shell img{
    transform:translateY(5px) scale(1.62);
    transform-origin:50% 10%;
  }
  .team-themed .radar-section:has(.starting-lineup-builder) .lineup-builder-bench-list{
    height:auto;
    max-height:none;
    flex:1 1 0;
    grid-auto-rows:84.4px;
    overflow-y:auto;
  }
}

/* 全チーム共通: モバイルのチーム情報・戦力シミュレーター・コーチ欄を整える。 */
@media(max-width:760px){
  .team-themed .grouped-team-analysis>.radar-title{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto;
    align-items:center;
    gap:8px;
    padding:11px 12px 8px;
  }
  .team-themed .grouped-team-analysis>.radar-title>h3{
    grid-column:1;
    grid-row:1;
    width:100%;
    min-width:0;
    margin:0;
    font-size:.94rem;
    line-height:1.3;
    white-space:nowrap;
  }
  .team-themed .grouped-team-analysis>.radar-title>.team-analysis-heading-meta{
    grid-column:1;
    grid-row:2;
    width:100%;
    min-width:0;
    justify-content:space-between;
    gap:8px;
  }
  .team-themed .team-analysis-heading-meta .team-support-factors{
    display:flex;
    width:auto;
    flex:0 0 auto;
    margin:0 0 0 auto;
  }
  .team-themed .team-analysis-heading-meta .team-support-factors>span{
    min-height:34px;
    padding:4px 8px;
  }
  .team-themed .team-analysis-roster-count{
    min-width:0;
    font-size:.69rem;
  }
  .team-themed .team-analysis-roster-count b{
    font-size:1.02rem;
  }

  .detail.team-comment-expanded-mobile .team-profile-standalone.team-profile-scroll-sample{
    display:flex;
    height:214px;
    min-height:214px;
    max-height:214px;
    flex-direction:column;
  }
  .detail.team-comment-expanded-mobile .team-profile-standalone.team-profile-scroll-sample p{
    display:block;
    min-height:0;
    flex:1 1 auto;
    overflow-x:hidden;
    overflow-y:auto;
    padding-right:7px;
    overscroll-behavior:contain;
    touch-action:pan-y;
    -webkit-line-clamp:unset;
    line-clamp:unset;
    scrollbar-color:#aab5c4 transparent;
    scrollbar-width:thin;
  }

  .team-themed .starting-lineup-builder .lineup-builder-player--starter,
  .team-themed .starting-lineup-builder .lineup-builder-player--bench{
    height:68px;
    min-height:68px;
    overflow:hidden;
  }
  .team-themed .starting-lineup-builder .lineup-builder-player--starter .photo-shell,
  .team-themed .starting-lineup-builder .lineup-builder-player--bench .photo-shell{
    width:47px;
    height:60px;
    max-height:60px;
    align-self:center;
    transform:none;
  }
  .team-themed .starting-lineup-builder .lineup-builder-player--starter .photo-shell img,
  .team-themed .starting-lineup-builder .lineup-builder-player--bench .photo-shell img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:50% 14%;
    transform:translateY(3px) scale(1.48);
    transform-origin:50% 10%;
  }

  .coaches--hokkaido-sample .coach-card--head{
    width:calc(100vw - 42px);
    max-width:calc(100vw - 42px);
    min-width:0;
    grid-template-columns:82px minmax(0,1fr);
    grid-template-rows:108px 74px 86px 78px;
    box-sizing:border-box;
  }
  .coaches--hokkaido-sample{
    width:100%;
    max-width:100%;
    min-width:0;
    grid-template-columns:minmax(0,1fr);
    overflow:hidden;
  }
  .coaches--hokkaido-sample .coach-card{
    width:calc(100vw - 42px);
    max-width:calc(100vw - 42px);
    min-width:0;
    justify-self:start;
    box-sizing:border-box;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-summary,
  .coaches--hokkaido-sample .coach-card--head .coach-name-line{
    min-width:0;
    overflow:hidden;
  }
  .coaches--hokkaido-sample .coach-card--head h3{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-operation-row{
    grid-column:1/-1;
    grid-row:2;
    grid-template-columns:minmax(0,1.05fr) minmax(0,1.55fr);
    height:70px;
    width:100%;
    max-width:100%;
    min-width:0;
    min-height:70px;
    max-height:70px;
    gap:6px;
    margin:2px 0 0;
    overflow:visible;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-note{
    grid-row:3;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-career{
    grid-row:4;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-compact-metrics{
    min-width:0;
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .coaches--hokkaido-sample .coach-card--head .coach-compact-metrics>span{
    min-width:0;
    padding:2px 1px;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-compact-metrics small{
    font-size:.49rem;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-compact-metrics .rank{
    font-size:1.3rem;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-compact-decisions{
    min-width:0;
    grid-template-rows:repeat(3,minmax(0,1fr));
    gap:3px;
    overflow:visible;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-compact-decisions .coach-style-line{
    min-width:0;
    min-height:0;
    grid-template-columns:28px repeat(3,minmax(0,1fr));
    gap:3px;
    overflow:visible;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-compact-decisions .coach-style-line small{
    font-size:.52rem;
  }
  .coaches--hokkaido-sample .coach-card--head .coach-compact-decisions .coach-style-chip{
    min-width:0;
    padding:1px 2px;
    font-size:.53rem;
    white-space:nowrap;
  }
}

/* モバイルのチーム比較シミュレーター: 選手情報と4能力の重なりを解消する。 */
@media(max-width:760px){
  body[data-page="teamCompare"],
  body[data-page="teamCompare"] .compare-page,
  body[data-page="teamCompare"] .comparison-grid{
    background:#fff;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player--starter,
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player--bench{
    box-sizing:border-box;
    height:54px;
    min-height:54px;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player--starter{
    grid-template-columns:9px 43px minmax(0,1fr) 140px;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player--bench{
    grid-template-columns:43px minmax(0,1fr) 140px;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player--starter .photo-shell,
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player--bench .photo-shell{
    width:41px;
    height:46px;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player-copy{
    height:46px;
    align-self:center;
    grid-template-rows:20px 20px;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player-side{
    width:140px;
    height:42px;
    align-self:center;
    justify-self:end;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player-side .lineup-builder-player-ranks{
    height:42px;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-player-topline>strong{
    font-size:.7rem;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-starters,
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-bench{
    border:0;
    border-radius:0;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .compare-lineup-simulator-shell{
    border:0;
    border-radius:0;
    box-shadow:none;
    overflow:visible;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .compare-lineup-simulator-grid{
    padding-right:0;
    padding-left:0;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .compare-lineup-simulator{
    padding-right:0;
    padding-left:0;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-starters,
  body[data-page="teamCompare"] .compare-lineup-simulators .lineup-builder-bench{
    padding-right:0;
    padding-left:0;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .slot-icon.slot-icon--label{
    box-sizing:border-box;
    position:relative;
    overflow:hidden;
    width:20px;
    min-width:20px;
    padding:0;
    text-indent:-999px;
    text-align:center;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .slot-icon.slot-icon--label::after{
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    width:auto;
    font-size:.62rem;
    font-weight:400;
    line-height:20px;
    text-indent:0;
    text-align:center;
  }
  body[data-page="teamCompare"] .compare-lineup-simulators .slot-icon.foreign::after{content:"外"}
  body[data-page="teamCompare"] .compare-lineup-simulators .slot-icon.asian::after{content:"ア"}
  body[data-page="teamCompare"] .compare-lineup-simulators .slot-icon.naturalized::after{content:"帰"}

  body[data-page="teamCompare"] .compare-team-status-cards{
    width:auto;
    margin:10px 8px 0;
  }
  body[data-page="teamCompare"] .compare-team-status-cards>.team-depth-balance-card,
  body[data-page="teamCompare"] .compare-team-status-cards>.team-season-composition-card{
    padding:7px 0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  body[data-page="teamCompare"] .comparison-grid:not(.player-comparison-grid)>.comparison-side{
    padding-right:0;
    padding-left:0;
  }
  body[data-page="teamCompare"] .comparison-grid:not(.player-comparison-grid) .compare-table.compare-metric-grid{
    padding-right:0;
    padding-left:0;
    gap:0;
  }
  body[data-page="teamCompare"] .comparison-grid:not(.player-comparison-grid) .compare-metric-card{
    border:0;
    border-top:1px solid #dfe5ed;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  body[data-page="teamCompare"] .comparison-grid:not(.player-comparison-grid) .compare-metric-card:last-child{
    border-bottom:1px solid #dfe5ed;
  }
}

/* Keep the S-rank accent consistent across every page and component. */
.rank-letter-S,
.ability-card:has(.rank-S),
.coach-mini div:has(.rank-S),
.coach-compact-metrics .rank-S,
.coach-assistant-metrics .rank-S{
  --rank-top:#ff20e6;
  --rank-bottom:#f0009c;
}
.roster-list-table .rank-letter-S{
  --roster-rank-top:#ff20e6;
  --roster-rank-bottom:#f0009c;
}
.rank.rank-S{
  background:linear-gradient(145deg,#ff65ef 0%,#ff20e6 48%,#f0009c 100%);
  color:#fff;
}
.radar-score.rank-text-S{
  fill:#f0009c;
}
.ranking-grade.rank-letter-S>strong,
.player-eval-card>.rank-S,
.retired-peak-rank strong{
  color:#f0009c;
}
.player .player-eval-card>.rank-S,
.former-player-card-top .rank-S{
  background-image:linear-gradient(180deg,#ff65ef 0%,#ff20e6 48%,#f0009c 100%)!important;
}
.ability-sample-score-tile:has(.rank-letter-S){
  --rank-bottom:#f0009c;
}
.team-overall.rank-letter-S strong,
.team-ability-rank.rank-letter-S,
.compare-overall .rank-letter-S,
.ranking-grade.rank-letter-S>strong{
  text-shadow:0 2px 6px rgba(255,0,184,.4),0 5px 16px rgba(240,0,156,.5);
}

/* 全チーム最終優先: 川崎で確定したチーム分析・シミュレーターの配置を共通化する。 */
@media(min-width:1181px){
  .team-themed .radar-section:has(.starting-lineup-builder) .radar-column,
  .team-themed .radar-section:has(.starting-lineup-builder) .season-stat-analysis{height:873px!important}
  .team-themed .radar-section:has(.starting-lineup-builder) .grouped-team-analysis{display:flex;min-height:0;flex-direction:column}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-ability-grid{min-height:0;flex:1 1 auto}
  .team-themed .radar-section:has(.starting-lineup-builder) .grouped-team-analysis .team-group-card{height:calc(100% - 12px)!important}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-group-details{flex:0 0 276px;height:276px;grid-template-rows:repeat(6,41px);align-content:start;margin-top:3px}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-group-detail{min-height:25px}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-composition{margin-top:7px;padding-top:6px;transform:translateY(-7px)}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-main-bench-units{grid-template-rows:repeat(2,24px);min-height:50px;height:50px;gap:2px}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-unit-power{height:24px}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(2,79.2px);gap:7px;min-height:165.4px;margin-top:7px;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated>.team-depth-balance-card,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated>.team-season-composition-card{width:100%;height:79.2px;min-height:79.2px;box-sizing:border-box;padding:9px 13px;border-color:#d8e0ea;background:linear-gradient(135deg,#fff,#f6f8fb);box-shadow:0 2px 7px rgba(27,38,58,.05)}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated header strong{font-size:.79rem}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-depth-balance-bars i,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-season-composition-bars i{font-size:.69rem;font-weight:900}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-depth-balance-ranks span,
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-season-composition-count span{font-size:.79rem}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-depth-balance-ranks b{font-size:1.32rem}
  .team-themed .radar-section:has(.starting-lineup-builder) .team-analysis-status-row.team-analysis-status-separated .team-season-composition-count b{font-size:1.01rem}
  .starting-lineup-builder .lineup-builder-radar-wrap{min-height:260px;flex:1 1 auto}
  .starting-lineup-builder .lineup-builder-radar{width:250px;height:250px;transform:translateY(5%)}
  .starting-lineup-builder .lineup-builder-starter-list{grid-template-rows:repeat(5,84.4px);flex:0 0 auto;gap:3px;margin-top:auto}
  .starting-lineup-builder .lineup-builder-bench-list{grid-auto-rows:84.4px;align-content:start}
  .starting-lineup-builder .lineup-builder-player--starter,
  .starting-lineup-builder .lineup-builder-player--bench{height:84.4px;min-height:84.4px;max-height:84.4px}
  .starting-lineup-builder .lineup-builder-starters-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0 2px 5px;padding-bottom:5px;border-bottom:1px solid #e1e7ef}
  .starting-lineup-builder .lineup-builder-starters-head strong{color:#1b263a;font-size:.76rem}
  .starting-lineup-builder .lineup-builder-starters-head small{color:#778397;font-size:.55rem}
}
