/* Shared Duck community shell. All overrides are scoped to this page. */
.rating-topbar-breadcrumb { display:none; }
body.ratings-mode { --duck-rail:238px; background:radial-gradient(ellipse at 58% -20%,#203d5140,transparent 60%),#090f17; }
.ratings-mode .ambient { display:none; }
.ratings-mode .app-shell { width:100%; max-width:none; padding:0; }
.ratings-mode .topbar { position:relative; inset:auto; width:auto; height:64px; min-height:64px; margin-left:var(--duck-rail); padding:0 30px; background:#0c1621b3; border-bottom:1px solid #24313e; box-shadow:none; }
.ratings-mode .topbar .brand-button,.ratings-mode #install-btn { display:none; }
.ratings-mode .rating-topbar-breadcrumb { display:block; color:#a3b3c3; font-size:12px; }
.ratings-mode .rating-topbar-breadcrumb i { padding:0 14px; color:#425b6e; font-style:normal; }
.ratings-mode .account-chip { background:transparent; border-color:#2b3c4a; padding:5px 10px; }
.ratings-mode .account-short { width:30px; height:30px; font-size:11px; }
.ratings-mode .account-copy strong { font-size:12px; }
.ratings-mode .account-copy small { font-size:9px; }
#ratings-page { width:auto; max-width:none; margin:0; padding:0; color:#dce7f0; }
#ratings-page::before { display:none; }
#ratings-page .rating-layout { display:block; }
#ratings-page button:focus-visible,#ratings-page summary:focus-visible,#ratings-page a:focus-visible { outline:2px solid #e0c485; outline-offset:3px; }
#ratings-page .rating-rail { position:fixed; inset:0 auto 0 0; z-index:15; width:var(--duck-rail); height:100dvh; padding:28px 17px 20px; display:flex; flex-direction:column; overflow:hidden; border:0; border-right:1px solid #2e3d49; border-radius:0; background:linear-gradient(145deg,#152331,#0c1621 52%,#0a121b); box-shadow:none; }
.rating-brand { display:flex; align-items:center; gap:13px; padding:0 9px; color:#e0e8ef; text-decoration:none; font-size:22px; font-weight:700; letter-spacing:1px; flex-shrink:0; }
.rating-brand small { display:block; font-size:10px; color:#8d9eac; font-weight:400; letter-spacing:3px; margin-top:4px; }
.rating-brand-symbol { width:39px; height:45px; display:grid; place-items:center; color:#ecce89; font-size:25px; border:1px solid #a58c56; border-radius:8px 2px 8px 2px; background:linear-gradient(140deg,#d6b25b1a,transparent); }
#ratings-page .duck-community-tabs { display:grid; grid-template-columns:1fr; gap:7px; padding:0; margin:34px 0 23px; border:0; flex-shrink:0; }
#ratings-page .duck-community-tabs button { display:flex; align-items:center; gap:12px; border:1px solid transparent; border-radius:7px; background:none; text-align:left; padding:13px 14px; font-size:15px; color:#8298aa; }
#ratings-page .duck-community-tabs button[aria-selected=true] { background:linear-gradient(95deg,#c3a45324,#b6984607); border-color:#90794265; color:#ecd49a; box-shadow:inset 2px 0 #d6b66b; }
#ratings-page .duck-community-tabs button>span { font:25px/1 system-ui; }
#ratings-page .duck-community-tabs button>i { margin-left:auto; font-style:normal; opacity:0; }
#ratings-page .duck-community-tabs button[aria-selected=true]>i { opacity:1; }
.rating-directory { position:relative; border-top:1px solid #2a3b4b; padding-top:21px; min-height:0; flex:1; display:flex; flex-direction:column; }
.rating-directory>summary { display:none; }
.rating-directory-content { display:flex; flex-direction:column; min-height:0; flex:1; }
@media(min-width:761px) { .rating-directory-content { position:absolute; inset:21px 0 0; } }
#ratings-page .rating-event-filter { padding:0; }
#ratings-page .rating-event-filter>span { display:block; margin:0 3px 9px; font-size:11px; color:#7d93a5; }
#ratings-page .rating-event-filter select { height:39px; border-color:#334655; background:#142432; color:#d8e2ec; font-size:12px; font-weight:400; }
#ratings-page .rating-event-summary { padding:8px 3px; font-size:9px; }
#ratings-page .rating-event-summary strong { display:none; }
#ratings-page .rating-search { width:100%; display:block; margin-top:5px; }
#ratings-page .rating-search input { height:32px; padding:0 8px 0 29px; font-size:11px; border-color:#253b4a; border-radius:5px; background:#0b1723; }
#ratings-page .rating-search span { left:10px; font-size:16px; color:#6c8497; }
#ratings-page .rating-series-directory-head { color:#8d9fae; padding:0; margin:19px 3px 8px; border:0; font-size:11px; }
#ratings-page .rating-series-list { display:flex; flex-direction:column; gap:8px; min-height:0; overflow:auto; padding:1px 3px 4px 0; scrollbar-width:thin; scrollbar-color:#6f6247 #0d1924; }
#ratings-page .rating-series-item { flex-shrink:0; min-width:0; padding:12px 10px; border:1px solid #293c4e55; background:#15243255; border-radius:6px; }
#ratings-page .rating-series-item.active { border-color:#a58b51aa; background:linear-gradient(120deg,#c7a9571a,#1a2c3c55); box-shadow:inset 2px 0 #d8bb79; }
#ratings-page .rating-series-item small { color:#ad9c76; font-size:10px; }
#ratings-page .rating-series-item strong { color:#bbcbd8; font-size:12px; font-weight:500; margin:9px 0 11px; overflow-wrap:anywhere; }
#ratings-page .rating-series-item span b { font:600 19px system-ui; color:#d2dee6; }
#ratings-page .rating-series-item em { margin:0; font-size:9px; color:#88a0b1; }
.rating-rail-footer { padding-top:18px; margin-top:auto; flex-shrink:0; }
.rating-rail-footer>span { font-size:9px; color:#566f83; display:block; padding:0 4px 12px; }
#ratings-page .rating-rail-footer .back-btn { padding:8px 4px; border:0; background:none; color:#a99468; font-size:11px; }
.rating-workspace { margin-left:var(--duck-rail); padding:22px 30px 32px; min-width:0; }
.rating-workspace>main,.rating-workspace>section,.rating-workspace>.rating-page-heading { max-width:1620px; margin-left:auto; margin-right:auto; }
.rating-page-heading { display:flex; justify-content:space-between; align-items:center; gap:15px; margin-bottom:14px; font-size:11px; color:#a6b6c6; }
.rating-credit { color:#526b7e; font:8px system-ui; letter-spacing:1px; flex-shrink:0; }
.rating-credit b { color:#ae9970; font-size:9px; margin-left:6px; }
.rating-overview { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); border:1px solid #38444c; border-top-color:#a38d56; border-radius:9px; background:linear-gradient(115deg,#263c4829,#111b27); overflow:hidden; margin-bottom:18px; }
.rating-match-brief { padding:18px 22px 13px; border-right:1px solid #293945; min-width:0; display:flex; flex-direction:column; justify-content:center; }
.rating-match-brief>header { display:flex; justify-content:space-between; gap:12px; align-items:center; }
#ratings-page #rating-stage-title { color:#c6b181; font-size:12px; font-weight:500; line-height:1.6; margin:0; overflow-wrap:anywhere; }
#rating-series-status { white-space:nowrap; font-size:9px; color:#809bad; }
.rating-versus { display:grid; grid-template-columns:minmax(0,1fr) 90px minmax(0,1fr); align-items:center; gap:12px; padding:22px 0 17px; }
.rating-team { display:flex; align-items:center; gap:12px; min-width:0; }
.rating-team.blue { color:#6dc1fc; }
.rating-team.red { color:#f093a8; justify-content:flex-end; text-align:right; }
.rating-team>strong { font-size:19px; font-weight:600; line-height:1.45; overflow-wrap:anywhere; }
.rating-team-emblem { display:grid; place-items:center; flex-shrink:0; width:39px; height:46px; border:1px solid #48739577; border-radius:7px 2px; font-size:22px; background:linear-gradient(145deg,#366f9429,transparent); }
.rating-team.red .rating-team-emblem { border-color:#9b566277; background:linear-gradient(145deg,#95425522,transparent); }
#ratings-page .rating-series-scoreline { display:block; text-align:center; }
.rating-series-scoreline>div { display:flex; align-items:center; justify-content:center; gap:10px; }
#ratings-page .rating-series-scoreline span { font:600 37px/1.1 system-ui; color:#deE5ed; min-width:0; }
#ratings-page .rating-series-scoreline i { font:22px system-ui; color:#687c8c; }
.rating-series-scoreline>small { display:block; font:9px system-ui; color:#758b9c; letter-spacing:3px; margin-top:6px; }
.rating-match-foot { display:flex; justify-content:space-between; color:#698094; font-size:9px; }
#ratings-page .rating-series-averages { display:flex; flex-direction:column; align-items:stretch; justify-content:center; gap:9px; padding:15px 22px; border:0; width:auto; }
#ratings-page .rating-series-averages>header { display:flex; justify-content:space-between; align-items:center; text-align:left; }
#ratings-page .rating-series-averages>header strong { font-size:12px; font-weight:500; color:#cbb57f; }
#ratings-page .rating-series-averages>header>span { color:#617a8e; font:9px system-ui; letter-spacing:2px; }
#ratings-page .rating-series-average-grid { width:100%; max-width:650px; gap:3px; }
#ratings-page .rating-series-average-row { grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr); gap:6px; min-height:21px; }
#ratings-page .rating-series-average-row>b { font-size:9px; color:#6b8296; font-weight:400; }
#ratings-page .rating-series-average-player { padding:2px 0; border:0; background:transparent; gap:7px; }
#ratings-page .rating-series-average-player span { color:#a1b4c4; font-size:10px; }
#ratings-page .rating-series-average-player strong { color:#75bfee; font:600 15px system-ui; min-width:26px; text-align:center; text-shadow:none; }
#ratings-page .rating-series-average-player.red strong { color:#e18fa4; text-align:center; }
#ratings-page .rating-series-average-player.rating-score-gold strong { color:#ffd46d; }
#ratings-page .rating-stage { border:0; border-radius:0; background:transparent; box-shadow:none; overflow:visible; }
.rating-game-toolbar { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-bottom:14px; margin-bottom:14px; border-bottom:1px solid #293b4a; }
#ratings-page .rating-game-tabs { display:flex; order:0; gap:7px; padding:0; margin:0; border:0; overflow:auto; background:transparent; }
#ratings-page .rating-game-tabs button { flex-shrink:0; padding:8px 15px; min-width:49px; border-radius:5px; border-color:#304354; background:#11202e; text-align:center; }
#ratings-page .rating-game-tabs button strong { color:#8ba3b6; font:500 13px system-ui; }
#ratings-page .rating-game-tabs button.active { border-color:#ac935a; background:#c5a86418; box-shadow:inset 0 -2px #d2b777; }
#ratings-page .rating-game-tabs button.active strong { color:#e5ce99; }
.rating-game-actions { display:flex; align-items:center; gap:14px; }
#ratings-page .rating-live-note { padding:0; border:0; background:transparent; font-size:10px; color:#819cac; white-space:nowrap; }
#ratings-page .rating-live-note i { width:5px; height:5px; box-shadow:none; background:#7bb8a7; }
#ratings-page .rating-refresh-btn { height:32px; min-width:90px; padding:6px 11px; border-radius:5px; border-color:#84734677; color:#d3bb84; background:#ad8b3610; font-size:11px; white-space:nowrap; }
#ratings-page .rating-game-panel { padding:0; }
.rating-team-headings { display:grid; grid-template-columns:1fr auto 1fr; gap:10px; align-items:center; margin:0 3px 11px; font-size:12px; }
.rating-team-headings .blue { color:#8ac8f5; }
.rating-team-headings .red { color:#de94aa; text-align:right; }
.rating-team-headings>span { color:#5e7b90; font-size:9px; }
.rating-team-headings b { display:inline-block; border:1px solid #c6a75d88; border-radius:3px; margin-left:10px; padding:1px 5px; font-size:9px; color:#e4c886; background:#b3964010; }
#ratings-page .rating-matchups { gap:10px; }
#ratings-page .rating-matchup { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; }
#ratings-page .rating-player-card,#ratings-page .rating-bp-card { padding:13px 13px 9px; border:1px solid #30445488; border-radius:7px; background:linear-gradient(110deg,#162b3e66,#111c28); box-shadow:none; }
#ratings-page .rating-player-card.rating-red,#ratings-page .rating-bp-card.rating-red { background:linear-gradient(250deg,#3e223333,#111c28); border-color:#4b374b88; }
#ratings-page .rating-player-main { display:grid; grid-template-columns:48px minmax(0,1fr) auto 59px; gap:11px; align-items:center; }
.rating-portrait { display:grid; place-items:center; padding:0; border:1px solid #846e4288; border-radius:6px; width:48px; height:48px; overflow:hidden; background:#0a1722; cursor:pointer; }
.rating-portrait>img { width:100%; height:100%; object-fit:cover; }
#ratings-page .rating-player-hero-empty { width:100%; height:100%; border:0; border-radius:0; }
#ratings-page .rating-player-copy { min-width:0; }
#ratings-page .rating-player-copy h3 { font-size:15px; margin:0 0 6px; color:#d6e2ec; font-weight:500; }
#ratings-page .rating-player-copy>strong { font:11px/1.4 Consolas,monospace; color:#91aabe; letter-spacing:1px; }
#ratings-page .rating-score-axis.rating-star-axis { display:flex; flex-direction:column; gap:3px; padding:0; align-items:flex-end; grid-column:auto; grid-row:auto; }
#ratings-page .rating-star-caption { font-size:8px; width:auto; line-height:1.4; color:#7e96a8; order:2; text-align:right; }
#ratings-page .rating-stars { gap:0; justify-content:flex-end; }
#ratings-page .rating-star { --star-size:25px; width:var(--star-size); min-width:0; flex:0 0 var(--star-size); height:29px; min-height:29px; font-size:var(--star-size)!important; padding:0; color:#304356; filter:none; text-shadow:none; }
#ratings-page .rating-star.filled { color:var(--axis-tone); }
#ratings-page .rating-star:hover:not(:disabled) { filter:brightness(1.25); transform:none; }
#ratings-page .rating-average { grid-column:auto; grid-row:auto; padding:0; justify-self:end; min-width:0; align-self:center; justify-items:end; }
#ratings-page .rating-average b { font:600 30px/1.1 system-ui; color:var(--rating-score-color,#60bbfa); text-shadow:none; }
#ratings-page .rating-average span { font-size:9px; margin-top:4px; color:#7c94a6; }
#ratings-page .rating-average em { color:#d7ba7e; font-size:8px; font-weight:400; margin-bottom:3px; }
#ratings-page .rating-average.user-best b { color:var(--rating-score-color,#60bbfa); }
#ratings-page .rating-hot-comment { display:grid; grid-template-columns:minmax(0,1fr) 48px; align-items:stretch; gap:7px; padding:0; margin:10px 0 0; background:none; border:0; }
#ratings-page .rating-hot-comment-open { display:flex; align-items:center; gap:8px; text-align:left; border:1px solid #243b4c66; border-radius:4px; padding:7px 8px; background:#08131e50; min-width:0; overflow:hidden; }
#ratings-page .rating-hot-comment-open>span { color:#bda464; font-size:9px; flex-shrink:0; }
#ratings-page .rating-hot-comment-open>p { color:#b0c0cd; font-size:12px; font-weight:400; line-height:1.5; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin:0; }
#ratings-page .rating-hot-comment-like { display:flex; gap:4px; align-items:center; justify-content:center; border:1px solid #4c354659; border-radius:4px; background:#42283727; color:#dc7d96; padding:4px; min-width:0; }
#ratings-page .rating-hot-comment-like span { font-size:17px; line-height:1; text-shadow:none; }
#ratings-page .rating-hot-comment-like b { font:11px system-ui; }
#ratings-page .rating-hot-comment-like small { display:none; }
#ratings-page .rating-hot-comment-like.liked { background:#8a36523b; border-color:#b05f77; color:#ff95b4; }
#ratings-page .rating-comments-link { width:100%; display:block; margin:5px 0 0; padding:0; text-align:right; font-size:9px; color:#637f94; line-height:1.6; }
#ratings-page .rating-bp-section { margin-top:19px; padding-top:0; border:0; }
#ratings-page .rating-bp-section>header { display:flex; align-items:center; gap:12px; margin:0 0 10px; }
#ratings-page .rating-bp-section>header::after { content:""; height:1px; flex:1; background:#2a37424d; }
#ratings-page .rating-bp-section>header h3 { color:#b6a075; font-size:11px; font-weight:400; margin:0; }
#ratings-page .rating-bp-section>div { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; }
#ratings-page .rating-bp-card>header { display:grid; grid-template-columns:minmax(0,1fr) auto 59px; gap:10px; align-items:center; }
#ratings-page .rating-bp-card>header h3 { font-size:14px; margin-top:5px; }
#ratings-page .rating-bp-card>header small { font-size:9px; color:#8f9d9f; }
#ratings-page .rating-bp-draft { margin-top:12px; }
#ratings-page .rating-bp-icons img { width:26px; height:26px; }
#ratings-page .rating-autosave-bar { position:static; backdrop-filter:none; border:0; background:none; padding:14px 2px; margin:0; min-height:0; }
#ratings-page .rating-autosave-status { font-size:10px; color:#6e889b; }
#ratings-page .rating-autosave-status.error { color:#ff8898; }
#ratings-page .rating-empty-list { min-height:210px; display:grid; place-content:center; border:1px dashed #344754; border-radius:7px; font-size:13px; line-height:1.8; }
#ratings-page .rating-series-list .rating-empty-list { min-height:110px; font-size:11px; }
#ratings-page .duck-predictions { padding:0; border:0; background:none; box-shadow:none; }
#ratings-page .dp-toolbar { margin-bottom:12px; }
#ratings-page .dp-toolbar h2 { font-size:15px; }
#ratings-page .dp-match { margin-top:0; padding:16px 18px; }
#ratings-page .dp-match .dp-support { margin-top:7px; }
#ratings-page .dp-panel { background:#11212f66; border-color:#2d4252; }

@media(min-width:1750px) {
  #ratings-page .rating-player-main { grid-template-columns:53px minmax(0,1fr) auto 72px; gap:14px; }
  .rating-portrait { width:53px; height:53px; }
  #ratings-page .rating-player-copy h3 { font-size:17px; }
  #ratings-page .rating-star { --star-size:28px; }
  #ratings-page .rating-player-card { padding:15px 16px 11px; }
  #ratings-page .rating-hot-comment-open>p { font-size:13px; }
}
@media(max-width:1280px) {
  body.ratings-mode { --duck-rail:215px; }
  .rating-workspace { padding:20px; }
  .ratings-mode .topbar { padding:0 20px; }
  .rating-overview { grid-template-columns:minmax(0,1fr) 360px; }
  .rating-match-brief { padding:16px; }
  .rating-versus { gap:6px; grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr); }
  .rating-team { gap:7px; }
  .rating-team>strong { font-size:16px; }
  .rating-team-emblem { width:32px; height:39px; font-size:18px; }
  #ratings-page .rating-series-scoreline span { font-size:28px; }
  #ratings-page .rating-player-main { grid-template-columns:43px minmax(0,1fr) auto 50px; gap:8px; }
  .rating-portrait { width:43px; height:43px; }
  #ratings-page .rating-player-copy h3 { font-size:13px; }
  #ratings-page .rating-star { --star-size:21px; }
  #ratings-page .rating-average b { font-size:26px; }
  #ratings-page .rating-average span { font-size:8px; }
  #ratings-page .rating-series-averages { padding-inline:15px; }
}
@media(min-width:761px) and (max-width:1060px) {
  .rating-overview { grid-template-columns:1fr; }
  .rating-match-brief { border-right:0; border-bottom:1px solid #293945; }
  .rating-versus { padding:12px 0; }
  #ratings-page .rating-player-main { grid-template-columns:43px minmax(0,1fr) 51px; row-gap:3px; }
  #ratings-page .rating-score-axis.rating-star-axis { grid-column:2; grid-row:2; align-items:flex-start; }
  #ratings-page .rating-player-main>.rating-average { grid-column:3; grid-row:1 / span 2; }
  .rating-portrait { grid-row:1 / span 2; }
  #ratings-page .rating-player-main .rating-star-caption { display:none; }
  #ratings-page .rating-bp-card>header { grid-template-columns:minmax(0,1fr) 51px; }
  #ratings-page .rating-bp-card>header .rating-star-axis { grid-column:1; }
  #ratings-page .rating-bp-card>header .rating-average { grid-column:2; grid-row:1 / span 2; }
}
@media(max-width:760px) {
  body.ratings-mode { --duck-rail:0px; }
  .ratings-mode .topbar { height:46px; min-height:46px; margin:0; padding:0 14px; }
  .ratings-mode .rating-topbar-breadcrumb { font-size:10px; }
  .ratings-mode .rating-topbar-breadcrumb i { padding:0 8px; }
  .ratings-mode .account-copy,.ratings-mode .account-chip .chevron { display:none; }
  .ratings-mode .account-chip { padding:0; border:0; }
  .ratings-mode .account-short { width:27px; height:27px; }
  #ratings-page .rating-rail { position:static; width:100%; height:auto; padding:16px 16px 0; border:0; border-bottom:1px solid #2e3d49; display:block; }
  .rating-brand { font-size:19px; gap:10px; padding:0 2px; }
  .rating-brand-symbol { width:31px; height:34px; font-size:21px; }
  .rating-brand small { font-size:9px; letter-spacing:2px; margin-top:2px; }
  #ratings-page .duck-community-tabs { grid-template-columns:1fr 1fr; gap:8px; margin:18px 0 14px; }
  #ratings-page .duck-community-tabs button { font-size:14px; padding:10px 12px; justify-content:center; background:#15232f; }
  #ratings-page .duck-community-tabs button>i { display:none; }
  #ratings-page .duck-community-tabs button>span { font-size:21px; }
  .rating-directory { display:block; padding:0; }
  .rating-directory>summary { display:flex; list-style:none; align-items:center; gap:10px; padding:13px 2px; color:#94aabb; font-size:11px; cursor:pointer; }
  .rating-directory>summary::-webkit-details-marker { display:none; }
  .rating-directory summary b { color:#d8c497; font-size:11px; font-weight:400; margin-left:auto; max-width:56%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .rating-directory summary i { font-size:15px; font-style:normal; }
  .rating-directory[open] summary i { transform:rotate(180deg); }
  .rating-directory-content { padding-bottom:12px; }
  #ratings-page .rating-series-directory-head { margin-top:12px; }
  #ratings-page .rating-series-list { flex-direction:row; overflow:auto; max-height:250px; }
  #ratings-page .rating-series-item { width:180px; min-width:180px; }
  .rating-rail-footer { display:none; }
  .rating-workspace { margin:0; padding:16px 12px; }
  .rating-page-heading { font-size:10px; margin-bottom:10px; }
  .rating-credit { font-size:6px; letter-spacing:.5px; }
  .rating-credit b { font-size:7px; margin-left:3px; }
  .rating-overview { grid-template-columns:1fr; margin-bottom:14px; }
  .rating-match-brief { padding:13px 13px 10px; border-right:0; border-bottom:1px solid #293945; }
  #ratings-page #rating-stage-title { font-size:11px; }
  .rating-versus { grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr); gap:7px; padding:14px 0; }
  .rating-team { gap:7px; }
  .rating-team>strong { font-size:14px; }
  .rating-team-emblem { width:27px; height:34px; font-size:17px; }
  #ratings-page .rating-series-scoreline span { font-size:27px; }
  .rating-series-scoreline>small { font-size:8px; letter-spacing:1px; }
  .rating-match-foot { font-size:8px; }
  #ratings-page .rating-series-averages { padding:11px 13px; gap:7px; }
  #ratings-page .rating-series-averages>header strong { font-size:11px; }
  #ratings-page .rating-series-average-row { min-height:19px; }
  #ratings-page .rating-series-average-player span { font-size:9px; }
  #ratings-page .rating-series-average-player strong { font-size:13px; }
  .rating-game-toolbar { gap:8px; flex-wrap:wrap; padding-bottom:12px; margin-bottom:12px; }
  #ratings-page .rating-game-tabs { gap:5px; }
  #ratings-page .rating-game-tabs button { min-width:35px; padding:8px; }
  #ratings-page .rating-game-tabs button strong { font-size:12px; }
  .rating-game-actions { margin-left:auto; }
  #ratings-page .rating-live-note { display:none; }
  #ratings-page .rating-refresh-btn { min-width:0; font-size:10px; padding:7px 9px; }
  .rating-team-headings { display:none; }
  #ratings-page .rating-mobile-team-tabs { display:grid; grid-template-columns:1fr 1fr; gap:0; padding:0; margin:0 0 11px; border-bottom:1px solid #334454; }
  #ratings-page .rating-mobile-team-tabs button { display:flex; align-items:center; justify-content:center; min-width:0; gap:6px; border:0; border-bottom:2px solid transparent; border-radius:0; background:#14263749; padding:10px 8px; color:#7d94a8; }
  #ratings-page .rating-mobile-team-tabs button strong { font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  #ratings-page .rating-mobile-team-tabs button.active.blue { color:#72c3ff; border-color:#68b7ef; background:#16355055; }
  #ratings-page .rating-mobile-team-tabs button.active.red { color:#ef91ac; border-color:#d0809a; background:#4727393b; }
  #ratings-page .rating-mobile-team-tabs button i { font-size:9px; flex-shrink:0; }
  #ratings-page .rating-matchup { grid-template-columns:1fr; gap:10px; }
  #ratings-page [data-rating-mobile-side=blue] .rating-red,#ratings-page [data-rating-mobile-side=red] .rating-blue { display:none; }
  #ratings-page .rating-player-card { padding:13px 11px 10px; }
  #ratings-page .rating-player-main { grid-template-columns:48px minmax(0,1fr) 58px; gap:4px 12px; }
  .rating-portrait { width:48px; height:48px; grid-row:1 / span 2; }
  #ratings-page .rating-player-copy { grid-column:2; grid-row:1; padding-right:0; }
  #ratings-page .rating-player-copy h3 { font-size:15px; margin-bottom:3px; }
  #ratings-page .rating-player-copy>strong { font-size:11px; }
  #ratings-page .rating-player-main>.rating-star-axis { grid-column:2; grid-row:2; margin-top:3px; align-items:flex-start; }
  #ratings-page .rating-stars { justify-content:flex-start; }
  #ratings-page .rating-star { --star-size:26px; min-height:32px; height:32px; }
  #ratings-page .rating-player-main>.rating-average { position:static; grid-column:3; grid-row:1 / span 2; align-self:start; }
  #ratings-page .rating-average b { font-size:30px; }
  #ratings-page .rating-average span { font-size:9px; }
  #ratings-page .rating-star-caption { font-size:8px; }
  #ratings-page .rating-hot-comment { grid-template-columns:minmax(0,1fr) 51px; margin-top:10px; }
  #ratings-page .rating-hot-comment-open { padding:8px; }
  #ratings-page .rating-hot-comment-open>p { font-size:12px; }
  #ratings-page .rating-hot-comment-like { min-height:37px; }
  #ratings-page .rating-bp-section>div { display:grid; grid-template-columns:1fr; }
  #ratings-page .rating-bp-card>header { grid-template-columns:minmax(0,1fr) auto 58px; }
  #ratings-page .rating-bp-card>header .rating-star { --star-size:22px; }
  #ratings-page .rating-bp-card>header>.rating-score-axis { grid-row:auto; grid-column:auto; }
  #ratings-page .rating-bp-icons img { width:24px; height:24px; }
  #ratings-page .dp-toolbar { flex-wrap:wrap; gap:8px; }
}

.rating-brand{font-size:18px;gap:9px;padding-inline:3px;letter-spacing:0;white-space:nowrap}.rating-brand-symbol{width:36px;height:42px;flex-shrink:0}

/* Avatars share the existing author row; they never create an extra grid row
 * or reduce the comment body's width. Frame overflow stays in the left gutter. */
#rating-comments-modal .rating-comment-author{position:relative;padding-left:46px;min-width:0;gap:8px}
#rating-comments-modal .rating-comment-avatar{position:absolute;left:5px;top:50%;transform:translateY(-50%);display:block;width:32px;height:32px;pointer-events:none}
#rating-comments-modal .rating-comment-avatar .decorated-avatar{--portrait-size:32px;padding:2px;vertical-align:top}
#rating-comments-modal .rating-comment-avatar .decorated-avatar[data-frame="0"]{padding:0}
#rating-comments-modal .rating-comment-author>strong{min-width:0;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#rating-comments-modal .rating-comment-author>.vip-badge{min-width:0;max-width:200px;margin:0;flex-shrink:1;white-space:nowrap}
#rating-comments-modal .rating-comment-author>.rating-comment-score{flex-shrink:0}
#rating-comments-modal .rating-comment-reply>.rating-comment-author{padding-left:38px}
#rating-comments-modal .rating-comment-reply .rating-comment-avatar{width:26px;height:26px;left:4px}
#rating-comments-modal .rating-comment-reply .rating-comment-avatar .decorated-avatar{--portrait-size:26px}
#rating-comments-modal .rating-reply-recipient{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Comment-only compact nameplates: 80% of the adjacent name's line height.
 * Resize their contents too, so decorative plates keep both the title and LV
 * without reserving the old, oversized layout box. Other pages are unchanged. */
#rating-comments-modal .rating-comment-author{--author-line:20px;--plate-font:9px}
#rating-comments-modal .rating-comment-reply>.rating-comment-author{--author-line:18px;--plate-font:8px}
#rating-comments-modal .rating-comment-author>strong{line-height:var(--author-line)}
#rating-comments-modal .rating-comment-author>.vip-badge{box-sizing:border-box;height:calc(var(--author-line) * .8);padding:0 5px;gap:3px;font-size:var(--plate-font);line-height:1;letter-spacing:0;border-radius:3px}
#rating-comments-modal .rating-comment-author>.prismatic-nameplate{padding:0 8px 0 5px;border-radius:0}
#rating-comments-modal .rating-comment-author .prismatic-emblem{width:10px;height:12px}
#rating-comments-modal .rating-comment-author .vip-badge small{font-size:7px!important;line-height:1;letter-spacing:0;padding-left:3px}
#rating-comments-modal .rating-comment-author .vip-badge .nameplate-meta{gap:3px}
#rating-comments-modal .rating-comment-author .nameplate-custom+.nameplate-level{padding-left:3px}
#rating-comments-modal .rating-comment-author .prismatic-nameplate>i{font-size:10px;top:0;right:-1px}
@media(min-width:801px){
  /* More reading room on PCs; keep the composer visible on short screens. */
  #rating-comments-modal{padding:16px}
  #rating-comments-modal .rating-modal-card{height:min(980px,calc(100dvh - 32px))}
}
@media(max-width:520px){
  #rating-comments-modal .rating-comment-author{padding-left:36px;gap:5px}
  #rating-comments-modal .rating-comment-avatar{width:26px;height:26px;left:3px}
  #rating-comments-modal .rating-comment-avatar .decorated-avatar{--portrait-size:26px}
  #rating-comments-modal .rating-comment-reply>.rating-comment-author{padding-left:31px}
  #rating-comments-modal .rating-comment-reply .rating-comment-avatar{width:22px;height:22px;left:2px}
  #rating-comments-modal .rating-comment-reply .rating-comment-avatar .decorated-avatar{--portrait-size:22px}
  #rating-comments-modal .rating-comment-author>strong{flex-shrink:1;max-width:90px}
  #rating-comments-modal .rating-comment-author>.vip-badge{max-width:112px}
  #rating-comments-modal .rating-comment-author>time{flex-shrink:0;font-size:0}
  #rating-comments-modal .rating-comment-author>time::after{content:attr(data-short-date);font-size:9px}
}
