/* Scoped to collected match content; existing SIL7 chrome stays unchanged. */
.collected-match-loading { min-height:clamp(230px,48svh,380px); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; padding:32px 16px; }
.collected-match-loading.is-compact { min-height:170px; padding:18px 12px; gap:12px; }
.collected-loading-animation { position:relative; display:block; width:88px; height:94px; }
.collected-loading-ball { position:absolute; display:block; left:20px; bottom:8px; width:48px; height:48px; transform-origin:50% 100%; transform:translate3d(0,0,0); will-change:transform; animation:collected-ball-bounce 1.1s infinite; }
.collected-loading-art { display:block; width:100%; height:100%; object-fit:contain; }
.collected-loading-shadow { position:absolute; bottom:2px; left:22px; width:44px; height:8px; border-radius:50%; background:#bd71ea; filter:blur(3px); opacity:.35; animation:collected-ball-shadow 1.1s infinite; }
.collected-loading-label { color:#e9ddf4; font-size:14px; font-weight:500; line-height:1.4; letter-spacing:.02em; }
@keyframes collected-ball-bounce {
  0%,100% { transform:translateY(0) scale(1.07,.93); animation-timing-function:cubic-bezier(.2,.65,.35,1); }
  48% { transform:translateY(-36px) scale(.98,1.02); animation-timing-function:cubic-bezier(.65,0,.8,.35); }
  92% { transform:translateY(0) scale(1,1); }
}
@keyframes collected-ball-shadow {
  0%,92%,100% { transform:scaleX(1); opacity:.35; }
  48% { transform:scaleX(.55); opacity:.12; }
}
/* Keep the short loading indicator perceptible in mobile reduced-motion mode.
   The HTML wrapper also gives SVG balls and image pucks the same transform box. */
@keyframes collected-ball-bounce-soft {
  0%,100% { transform:translate3d(0,0,0); }
  50% { transform:translate3d(0,-8px,0); }
}
@keyframes collected-ball-shadow-soft {
  0%,100% { transform:scaleX(1); opacity:.35; }
  50% { transform:scaleX(.85); opacity:.25; }
}
@media (prefers-reduced-motion:reduce) {
  .collected-loading-ball { animation:collected-ball-bounce-soft 1.4s ease-in-out infinite; }
  .collected-loading-shadow { animation:collected-ball-shadow-soft 1.4s ease-in-out infinite; }
}
/* More specific than the shared reduce-motion rule which runs animations once. */
html[data-reduced-motion="true"] .collected-loading-ball {
  animation:collected-ball-bounce-soft 1.4s ease-in-out infinite !important;
}
html[data-reduced-motion="true"] .collected-loading-shadow {
  animation:collected-ball-shadow-soft 1.4s ease-in-out infinite !important;
}
.collected-timeline { padding:12px 10px; }
.collected-event-period h4 { display:flex; justify-content:space-between; align-items:center; gap:10px; margin:12px 0 3px; padding:7px 8px; border-radius:5px; text-align:left; font-size:11px; font-weight:500; background:#261731; color:#dec8ea; }
.collected-timeline > .collected-event-period:first-child h4 { margin-top:0; }
.collected-event-period h4 b { flex:none; font-size:11px; font-weight:600; font-variant-numeric:tabular-nums; }
.collected-event-period ol { list-style:none; margin:0; padding:0; }
.collected-event { display:flex; flex-direction:column; align-items:flex-start; gap:3px; padding:8px 0; }
.collected-event.is-away { align-items:flex-end; }
.collected-event.is-neutral { align-items:center; }
.collected-event-entry { position:relative; display:flex; align-items:center; gap:6px; width:max-content; max-width:100%; min-width:0; }
.collected-event.is-away .collected-event-entry { flex-direction:row-reverse; }
.collected-event-a11y { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.collected-event-time { flex:none; min-width:30px; font-size:11px; font-variant-numeric:tabular-nums; line-height:1.4; color:#d2c1df; }
.collected-event.is-away .collected-event-time { text-align:right; }
.collected-event-badge { display:inline-flex; flex:none; align-items:center; gap:4px; padding:3px 4px; border:1px solid #483052; border-radius:6px; background:#20132b; }
.collected-event.is-away .collected-event-badge { flex-direction:row-reverse; border-color:#2f4c51; background:#132229; }
.collected-event-icon { display:flex; flex:none; align-items:center; justify-content:center; width:18px; height:18px; color:#e2cce9; }
.collected-event-svg { display:block; width:18px; height:18px; }
.collected-event-icon.is-penalty-outcome,
.collected-event-icon.is-penalty-outcome .collected-event-svg { width:22px; height:22px; }
.collected-event-svg.is-penalty-scored { color:#ece7f4; }
.collected-event-svg.is-penalty-missed { color:#ff4c65; }
.collected-event-score { color:#f2e7fa; font-size:11px; font-weight:600; line-height:1; font-variant-numeric:tabular-nums; white-space:nowrap; }
.collected-event-body { min-width:0; text-align:left; }
.collected-event.is-away .collected-event-body { text-align:right; }
.collected-event-players { font-size:12px; font-weight:400; line-height:1.55; overflow-wrap:anywhere; color:#c4b2d0; }
.collected-event-player.is-primary { font-weight:600; color:#f4eaff; }
.collected-event-player:not(.is-primary),.collected-event-assists,.collected-event-reason { font-size:11px; }
.collected-event-assists { max-width:100%; line-height:1.45; color:#baa5c8; overflow-wrap:anywhere; }
.collected-event.is-away .collected-event-assists { text-align:right; }
.collected-event-caption { display:block; margin-top:2px; font-size:10px; line-height:1.4; color:#c4b2d0; }
.collected-event-review { display:inline-block; margin-top:3px; padding:2px 5px; border:1px solid #6b5280; border-radius:4px; font-size:10px; line-height:1.4; color:#dac5e9; }
.collected-lineup-table { width:100%; table-layout:fixed; border-collapse:separate; border-spacing:0; border:1px solid #382350; border-radius:12px; overflow:hidden; background:#0d081b; }
.collected-lineup-team { width:50%; padding:11px 8px; vertical-align:top; text-align:center; color:#c4b6d3; font:inherit; }
.collected-lineup-team small { display:block; margin-bottom:4px; font-size:10px; }
.collected-lineup-team strong { display:block; font-size:12px; line-height:1.4; overflow-wrap:anywhere; }
.collected-lineup-team.is-home { background:#31123f; color:#f8d6ff; }
.collected-lineup-team.is-away { background:#0f3035; color:#baf2ef; }
.collected-lineup-heading { padding:9px 6px; background:#241630; border-top:1px solid #453053; border-bottom:1px solid #382350; text-align:center; font-size:12px; font-weight:600; color:#e0cde9; }
.collected-lineup-row td { padding:8px 7px; vertical-align:middle; border-bottom:1px solid #2c1c39; }
.collected-lineup-row:nth-child(odd) td { background:#160e23; }
.collected-lineup-row td + td { border-left:1px solid #30203e; }
.collected-lineup-player { display:flex; align-items:center; gap:6px; min-width:0; }
.collected-lineup-number { flex:0 0 25px; padding:5px 1px; border-radius:6px; background:#291938; color:#dfc7ed; text-align:center; font-size:11px; font-variant-numeric:tabular-nums; }
.collected-lineup-person { display:grid; gap:3px; min-width:0; }
.collected-lineup-flag { display:inline-flex; align-items:center; justify-content:center; flex:0 0 18px; width:18px; height:12px; border-radius:2px; overflow:hidden; background:#35263f; box-shadow:0 0 0 1px #ffffff24; }
.collected-lineup-flag img { display:block; width:18px; height:12px; object-fit:cover; }
.collected-lineup-flag .country-flag-code { font-size:8px; line-height:12px; color:#eadbf1; }
.collected-lineup-person strong { font-size:12px; font-weight:600; line-height:1.4; overflow-wrap:anywhere; }
.collected-lineup-person small { font-size:10px; line-height:1.3; color:#b5a1c4; overflow-wrap:anywhere; }
.collected-lineup-role { white-space:nowrap; color:#cab6d9; font-weight:500; }
.collected-lineup-contributions { display:inline-flex; gap:3px; margin-left:4px; vertical-align:middle; }
.collected-lineup-contributions:empty { display:none; }
.collected-lineup-substitution { display:inline-flex; align-items:center; gap:1px; margin-left:3px; vertical-align:middle; white-space:nowrap; font-size:10px; font-weight:500; line-height:20px; font-variant-numeric:tabular-nums; }
.collected-lineup-substitution svg { flex:none; width:14px; height:14px; }
.collected-lineup-substitution.is-in { color:#77dcb0; }
.collected-lineup-substitution.is-out { color:#f18ca1; }
.collected-lineup-substitution-number { font-weight:600; }
.collected-lineup-substitution-divider { padding:0 2px; opacity:.6; }
.collected-lineup-contribution { position:relative; display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; border:1px solid #644174; border-radius:5px; background:#291835; color:#ecd8f4; }
.collected-lineup-contribution .collected-event-svg { width:16px; height:16px; }
.collected-lineup-contribution sup { position:absolute; right:-4px; top:-6px; min-width:12px; padding:1px 2px; border-radius:4px; background:#ab50ba; color:#fff; font-size:9px; line-height:1.2; font-weight:600; text-align:center; }
.collected-contribution-assist { font-size:11px; font-weight:600; line-height:1; }
.collected-lineup-row .is-away .collected-lineup-contribution { border-color:#39656a; background:#143336; color:#cff1f0; }
.collected-lineup-row .is-away .collected-lineup-contribution sup { background:#297c80; }
.collected-lineup-row .is-away .collected-lineup-player { flex-direction:row-reverse; text-align:right; }
.collected-lineup-row .is-away .collected-lineup-number { background:#153135; color:#baf2ef; }
.collected-lineup-gap { display:block; text-align:center; color:#887697; }
.collected-content { min-width:0; padding:8px 0 18px; color:#f4eaff; }
.collected-section { margin:0 0 12px; padding:10px; border:1px solid #382350; border-radius:13px; background:linear-gradient(135deg,#120b25,#070513); }
.collected-section h3 { margin:0 0 10px; font-size:13px; color:#f4eaff; overflow-wrap:anywhere; }
.collected-empty { padding:12px; color:#c4b6d3; font-size:12px; line-height:1.5; }
.collected-history { margin-bottom:8px; padding:0 10px; }
.collected-history>summary { display:flex; align-items:center; gap:8px; min-height:48px; padding:10px 0; list-style:none; cursor:pointer; }
.collected-history>summary::-webkit-details-marker { display:none; }
.collected-history-label { flex:1; min-width:0; font-size:12px; font-weight:700; line-height:1.4; overflow-wrap:anywhere; }
.collected-history-count { flex:none; min-width:22px; padding:3px 5px; border-radius:8px; background:#2d1d40; color:#cbbbda; font-size:10px; text-align:center; font-variant-numeric:tabular-nums; }
.collected-history-chevron { width:7px; height:7px; flex:none; margin:0 3px; border-right:1.5px solid #c4a6d7; border-bottom:1.5px solid #c4a6d7; transform:rotate(45deg); }
.collected-history[open]>summary .collected-history-chevron { transform:rotate(225deg); }
.collected-history-row { display:grid; grid-template-columns:48px minmax(0,1fr) 24px; gap:4px 8px; align-items:center; width:100%; min-height:66px; padding:10px 0; border:0; border-top:1px solid #30203e; background:transparent; text-align:left; color:#f3ecfa; cursor:pointer; font:inherit; }
.collected-history-outcome { position:relative; display:grid; place-items:center; width:24px; height:24px; overflow:hidden; border-radius:6px; font-size:12px; font-weight:800; line-height:1; white-space:nowrap; }
.collected-history-outcome.is-win { color:#fff; background:#18794e; }
.collected-history-outcome.is-loss { color:#fff; background:#c42a49; }
.collected-history-outcome.is-draw { color:#171119; background:#d9b654; }
.collected-history-outcome.is-unknown { color:#bcabcd; background:#251a32; }
.collected-history-outcome.has-extra-time::after { content:''; position:absolute; right:0; bottom:0; width:0; height:0; border-left:7px solid transparent; border-bottom:7px solid #ffd568; }
.collected-history-perspective { margin:0 0 9px; color:#c1afd1; font-size:10px; line-height:1.4; overflow-wrap:anywhere; }
.collected-history-filters { display:flex; gap:4px; margin:0 0 8px; padding:3px; border-radius:10px; background:#080511; }
.collected-history-filters button { flex:1; min-width:0; min-height:36px; padding:7px 5px; border:1px solid transparent; border-radius:8px; background:transparent; color:#bdadcc; font:600 12px/1.3 var(--sil7-font, sans-serif); cursor:pointer; }
.collected-history-filters button[aria-pressed="true"] { background:#33203f; border-color:#865297; color:#f8eaff; }
.collected-history-more { display:flex; justify-content:center; align-items:center; gap:8px; width:100%; min-height:44px; margin:0; padding:10px 4px; border:0; border-top:1px solid #30203e; background:transparent; color:#e2b9f2; font:600 12px/1.4 var(--sil7-font, sans-serif); cursor:pointer; }
.collected-history-more[aria-disabled="true"] { color:#ad9dbb; cursor:wait; }
.collected-history-more-icon { display:block; flex:0 0 16px; width:16px; height:16px; }
.collected-history-filters button:focus-visible,.collected-history-more:focus-visible { outline:2px solid #dc7aee; outline-offset:-2px; }
.collected-history-message { margin:8px 0; color:#d5b6d3; font-size:12px; line-height:1.4; }
.collected-history-date { font-size:10px; color:#bfb0d0; font-variant-numeric:tabular-nums; }
.collected-history-game { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; column-gap:6px; row-gap:6px; min-width:0; font-size:12px; line-height:1.35; }
.collected-history-game.has-result-type { grid-template-columns:minmax(0,1fr) auto auto; }
.collected-history-team { grid-column:1; display:flex; align-items:center; gap:6px; min-width:0; font-weight:500; color:#d0c3df; }
.collected-history-team--home,.collected-history-score--home { grid-row:1; }
.collected-history-team--away,.collected-history-score--away { grid-row:2; }
.collected-history-team>span:last-child { min-width:0; overflow-wrap:anywhere; }
.collected-history-team.is-winner { font-weight:800; color:#fff; }
.collected-history-logo { display:flex; flex:none; align-items:center; justify-content:center; width:20px; height:20px; }
/* Legacy small-logo rules use !important at every mobile breakpoint. Keep both
   real emblems and placeholders inside the same reserved H2H slot. */
.collected-history-logo > .league-team-logo,
.collected-history-logo > .league-team-logo-fallback {
  box-sizing:border-box;
  flex:0 0 20px;
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  min-height:20px !important;
  max-width:20px !important;
  max-height:20px !important;
  margin:0;
  box-shadow:none;
  font-size:7px;
}
.collected-history-logo img { width:100%; height:100%; object-fit:contain; }
.collected-history-score { grid-column:2; min-width:16px; text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.collected-history-score>sup { margin-left:1px; font-size:9px; font-weight:500; line-height:0; vertical-align:super; color:#c4b2d3; }
.has-result-type>.collected-history-score { grid-column:3; }
.collected-history-result-type { grid-column:2; grid-row:1/3; max-width:62px; color:#c4b2d3; text-align:center; font-size:9px; font-weight:600; line-height:1.4; overflow-wrap:normal; }
.collected-history-result-type.is-penalties { max-width:none; white-space:nowrap; }
.collected-history-league { grid-column:2; grid-row:2; color:#b5a1c6; font-size:10px; line-height:1.3; overflow-wrap:anywhere; }
.collected-history .collected-empty { margin:0; padding:4px 0 14px; }
.collected-history-empty .collected-empty { margin:0; padding:4px 2px; }
.collected-history-row:active { background:#241232; }
.collected-history>summary:focus-visible,.collected-history-row:focus-visible { outline:2px solid #dc7aee; outline-offset:2px; border-radius:6px; }
.collected-stat-row,.collected-stats-head { display:grid; grid-template-columns:minmax(45px,1fr) minmax(0,2.3fr) minmax(45px,1fr); gap:5px; align-items:center; text-align:center; padding:9px 2px; border-top:1px solid #2c1c3a; font-size:12px; overflow-wrap:anywhere; }
.collected-stats-head { font-size:10px; color:#bdaccc; }
.collected-stat-row>span { color:#ccbbdc; }
.collected-stat-comparison { padding:11px 0; }
.collected-stat-values { display:grid; grid-template-columns:minmax(62px,1fr) minmax(0,2fr) minmax(62px,1fr); gap:6px; align-items:center; font-size:12px; line-height:1.35; }
.collected-stat-label { min-width:0; text-align:center; color:#ddcfea; overflow-wrap:anywhere; font-size:11px; }
.collected-stat-value { min-width:0; font-weight:700; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.collected-stat-value--home { text-align:left; }
.collected-stat-value--away { text-align:right; }
.collected-stat-value small { display:block; margin-top:2px; color:#ae9ebd; font-size:10px; font-weight:400; }
.collected-stat-bars { display:grid; grid-template-columns:1fr 1fr; gap:3px; margin-top:8px; }
.collected-stat-track { display:flex; height:6px; overflow:hidden; border-radius:2px; background:#2a2039; }
.collected-stat-track--home { justify-content:flex-end; }
.collected-stat-fill { display:block; height:100%; max-width:100%; border-radius:2px; background:#9476ba; }
.collected-stat-fill.is-larger { background:linear-gradient(90deg,#c23add,#f156d6); }
.collected-stats-head>span:first-child { text-align:left; }
.collected-stats-head>span:last-child { text-align:right; }
.collected-period-tabs { display:flex; gap:6px; margin:0 0 10px; padding:3px 1px; overflow-x:auto; scrollbar-width:none; }
.collected-period-tabs::-webkit-scrollbar { display:none; }
.collected-period-tab { flex:1 0 60px; min-height:38px; padding:8px 10px; border:1px solid #382350; border-radius:10px; background:#100a20; color:#bdaeCD; font:inherit; font-size:12px; font-weight:600; line-height:1.3; white-space:nowrap; cursor:pointer; }
.collected-period-tab.is-active { border-color:#bc4dce; background:linear-gradient(135deg,#45204f,#21112f); color:#fae7ff; }
.collected-period-tabs.is-dense .collected-period-tab { padding-inline:6px; }
.collected-period-tab:focus-visible { outline:2px solid #dc7aee; outline-offset:1px; }
.collected-period-panel .collected-stats-head { border-top:0; padding-top:3px; }
.collected-period-panel .collected-empty { margin:0; padding:8px 2px; }
.collected-odds-row { display:flex; gap:12px; justify-content:space-between; padding:9px 0; border-top:1px solid #30203e; font-size:12px; }
.collected-odds-row>span { min-width:0; overflow-wrap:anywhere; }
.collected-odds-row small { display:block; margin-top:4px; color:#bba4d2; font-size:10px; }
.collected-odds-row strong { flex:none; color:#f29de8; }
.collected-odds-periods { display:flex; gap:6px; overflow-x:auto; padding:2px 1px 8px; scrollbar-width:none; }
.collected-odds-periods::-webkit-scrollbar { display:none; }
.collected-odds-period { flex:0 0 auto; min-height:36px; padding:7px 13px; border:1px solid #49325f; border-radius:10px; background:#10091e; color:#baa9cd; font:600 12px/1.2 var(--sil7-font,sans-serif); cursor:pointer; }
.collected-odds-period.is-active { border-color:#d453df; background:linear-gradient(135deg,#4b1c54,#22102f); color:#f9e9ff; }
.collected-odds-group { margin:0 0 8px; border:1px solid #382350; border-radius:12px; background:linear-gradient(135deg,#120b25,#070513); overflow:hidden; }
.collected-odds-group summary { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; padding:10px 12px; list-style:none; cursor:pointer; color:#e9dcef; font-size:12px; font-weight:600; }
.collected-odds-group summary::-webkit-details-marker { display:none; }
.collected-odds-group summary svg { flex:none; width:16px; height:16px; fill:none; stroke:#b896cc; stroke-width:1.7; transition:transform .15s; }
.collected-odds-group[open] summary svg { transform:rotate(180deg); }
.collected-odds-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; padding:0 10px 10px; }
.collected-odds-options.is-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.collected-odds-option { display:flex; flex-direction:column; justify-content:space-between; gap:7px; min-width:0; padding:10px 7px; border:1px solid #332040; border-radius:8px; background:#21112e66; text-align:center; }
.collected-odds-option span { color:#cbb9dc; font-size:11px; line-height:1.4; overflow-wrap:anywhere; }
.collected-odds-option strong { color:#f29de8; font-size:14px; font-variant-numeric:tabular-nums; }
.collected-odds-period:focus-visible,.collected-odds-group summary:focus-visible { outline:2px solid #dc7aee; outline-offset:-3px; }
.collected-retry { display:block; width:100%; padding:15px; border:1px solid #5c356f; border-radius:12px; background:#1a0e28; color:#f5d8f0; cursor:pointer; }
/* This card has no legacy form row: logos and names determine its height. */
.collected-match-page .match-hero-card {
  grid-template-columns: minmax(0, 1fr) 84px minmax(0, 1fr);
  align-items: start;
  gap: 8px;
  min-height: 0;
  padding: 14px 10px;
}
.collected-match-page .match-hero-team {
  grid-template-rows: auto auto;
  align-content: start;
  gap: 12px;
}
.collected-match-page .match-hero-team > strong {
  display: block;
  min-height: 2.6em;
  max-height: none;
  overflow: visible;
  overflow-wrap: anywhere;
  white-space: normal;
  -webkit-line-clamp: unset;
  font-size: 12px;
  line-height: 1.3;
  letter-spacing: 0;
}
.collected-match-page .match-hero-center {
  align-self: start;
  padding-top: 12px;
  gap: 7px;
  text-align: center;
}
.collected-match-page .match-hero-date {
  color: #c4b4d8;
  font-size: 10px;
  line-height: 1.2;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.collected-match-page .match-hero-time {
  font-size: 28px;
  line-height: 1.1;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.collected-match-page .match-hero-time.is-final-score { font-size: 22px; }
.collected-match-page .match-hero-status {
  min-width: 0;
  max-width: 100%;
  height: auto;
  min-height: 22px;
  padding: 4px 7px;
  font-size: 9px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
@media (max-width: 340px) {
  .collected-match-page .match-hero-card {
    grid-template-columns: minmax(0, 1fr) 76px minmax(0, 1fr);
    gap: 6px;
    padding: 12px 8px;
  }
  .collected-match-page .match-hero-center { padding-top: 8px; }
  .collected-match-page .match-hero-time { font-size: 26px; }
  .collected-match-page .match-hero-time.is-final-score { font-size: 20px; }
}
.collected-match-page .match-section-tab { flex:1; }
.collected-match-page.has-scrollable-tabs .match-section-tabs { scroll-behavior:auto; }
.collected-match-page.has-scrollable-tabs .match-section-tab { flex:0 0 auto; min-width:76px; padding:0 14px; }
.collected-match-page .match-hero-card.has-period-scores { grid-template-columns:minmax(0,1fr) 122px minmax(0,1fr); }
.collected-match-page .match-hero-card.is-live { grid-template-columns:minmax(0,1fr) 126px minmax(0,1fr); }
.collected-period-scores { display:flex; flex-wrap:wrap; justify-content:center; align-items:baseline; gap:4px 8px; width:100%; color:#d4c2e5; font-size:12px; line-height:1.4; font-weight:600; font-variant-numeric:tabular-nums; }
.collected-period-score { white-space:nowrap; }
.collected-period-score.is-extra-period { flex-basis:100%; }
.collected-period-score small { margin-right:5px; color:#b29cc8; font-size:9px; }
.collected-set-separator { margin:0 2px; color:#9782b0; }
.collected-period-score sup { margin-left:1px; font-size:8px; line-height:0; color:#b29cc8; }
.collected-match-page .match-retirement-status { grid-column:1 / -1; border-top:1px solid #ffffff16; padding:10px 4px 0; color:#f1a2e8; font-size:12px; line-height:1.5; text-align:center; font-weight:600; overflow-wrap:anywhere; }
.tennis-retirement-scroll { overflow-x:auto; }
.tennis-retirement table { width:100%; border-collapse:collapse; font-size:14px; font-variant-numeric:tabular-nums; }
.tennis-retirement th,.tennis-retirement td { padding:12px 7px; border-bottom:1px solid #ffffff10; text-align:center; }
.tennis-retirement thead th { color:#a99aba; font-size:11px; font-weight:500; }
.tennis-retirement th:first-child { text-align:left; padding-left:0; overflow-wrap:anywhere; }
.tennis-retirement tbody th { font-weight:500; min-width:95px; }
.tennis-retirement .is-winner th { color:#fff; font-weight:700; }
.tennis-retirement-total { color:#fff; font-weight:700; }
.tennis-retirement .is-incomplete { color:#b3a5c4; }
.tennis-retirement sup { margin-left:2px; font-size:9px; }
.tennis-retirement .tennis-retirement-note { color:#a99aba; font-size:12px; margin:12px 0 0; }
.collected-back { display:inline-flex; gap:8px; align-items:center; border:0; padding:0; background:transparent; color:#f4eaff; font:inherit; text-align:left; cursor:pointer; }
.collected-back>span:first-child { font-size:24px; line-height:1; color:#ee8de7; }
.sil7-calendar-note { margin:5px 0 10px; font-size:11px; color:#b9a8c9; line-height:1.4; }
.collected-match-page.is-prematch .match-section-tabs { display:grid; grid-template-columns:var(--match-tab-columns); gap:3px; }
.collected-match-page.is-prematch .match-section-tab { min-width:0; padding:0 3px; font-size:12px; }
.collected-tab-empty { min-height:140px; padding:16px 12px; }
.collected-tab-empty .collected-empty { padding:14px 0; }
.collected-standing-group h4 { margin:16px 0 8px; font-size:12px; color:#c7afdc; }
.collected-standings table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:12px; font-variant-numeric:tabular-nums; }
.collected-standings th,.collected-standings td { padding:10px 3px; text-align:center; border-bottom:1px solid #30203e; }
.collected-standings tr > * + * { border-left:1px solid #3d2a4c; }
.collected-standings td { white-space:nowrap; }
.collected-standings thead th:first-child { width:22px; }
.collected-standings thead th:nth-child(n+3) { width:26px; }
.collected-standings thead th:nth-child(4) { width:52px; }
.collected-standings thead th:nth-child(5) { width:32px; }
.collected-standings th:nth-child(2),.collected-standings tbody th { text-align:left; overflow-wrap:anywhere; }
.collected-standings thead { color:#b5a1c6; }
.collected-standings tbody th { font-weight:500; }
.collected-standings .is-match-home { --standing-accent:#d579f4; --standing-fill:#6c327b59; --standing-text:#f3cdff; }
.collected-standings .is-match-away { --standing-accent:#54dcd3; --standing-fill:#1a655a59; --standing-text:#c0f5ed; }
.collected-standings .is-match-team { background:var(--standing-fill); color:var(--standing-text); }
.collected-standings .is-match-team td:first-child { box-shadow:inset 3px 0 var(--standing-accent); }
.collected-standings .is-match-team th { font-weight:700; }
.collected-standing-key { display:flex; flex-wrap:wrap; gap:14px; margin:0 0 10px; font-size:11px; }
.collected-standing-key > span { display:inline-flex; align-items:center; gap:6px; color:var(--standing-text); }
.collected-standing-key > span::before { content:""; width:8px; height:8px; border-radius:2px; background:var(--standing-accent); }
.collected-standings caption { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.collected-tournament-team { display:flex; align-items:center; gap:6px; min-width:0; }
.collected-tournament-name { min-width:0; overflow-wrap:anywhere; }
.collected-tournament-logo { display:flex; flex:0 0 22px; align-items:center; justify-content:center; width:22px; height:22px; }
/* Keep the shared crest and its error fallback inside the table column, even
   where the legacy match-list stylesheet enlarges small logos on mobile. */
.collected-tournament-logo > :is(.league-team-logo,.league-team-logo-fallback) {
  box-sizing:border-box;
  flex:0 0 22px;
  width:22px !important; height:22px !important;
  min-width:22px !important; min-height:22px !important;
  max-width:22px !important; max-height:22px !important;
  margin:0; padding:0; border:0; border-radius:0; background:none; box-shadow:none;
  font-size:8px;
}
.collected-tournament-logo img { display:block; width:100%; height:100%; object-fit:contain; }

.collected-overview-note { margin:-4px 0 12px; color:#b5a1c6; font-size:10px; line-height:1.5; }
.collected-form-team { display:flex; flex-wrap:wrap; align-items:center; gap:9px; padding:12px 0; border-top:1px solid #30203e; }
.collected-form-name { display:flex; align-items:center; gap:8px; flex:1 1 130px; min-width:0; font-size:12px; line-height:1.4; }
.collected-form-name>strong { min-width:0; overflow-wrap:anywhere; font-weight:600; }
.collected-form-results { display:flex; flex:none; gap:5px; align-items:center; }
.collected-form-results>button { width:28px; height:28px; padding:0; border:0; font-family:inherit; cursor:pointer; }
.collected-form-empty { color:#aa98bc; font-size:11px; line-height:1.4; }
.collected-overview-link { display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; min-height:40px; border:0; border-top:1px solid #30203e; padding:10px 0 0; background:transparent; color:#e2b9f2; font:600 12px/1.4 var(--sil7-font, sans-serif); text-align:left; cursor:pointer; }
.collected-overview-link>span { font-size:22px; line-height:1; }
.collected-form-results>button:focus-visible,.collected-overview-link:focus-visible { outline:2px solid #dc7aee; outline-offset:2px; }
.collected-overview-info dl { margin:0; }
.collected-overview-info dl>div { display:grid; grid-template-columns:minmax(65px,.8fr) minmax(0,1.7fr); gap:12px; border-top:1px solid #30203e; padding:10px 0; font-size:12px; line-height:1.5; }
.collected-overview-info dl>div:last-child { padding-bottom:2px; }
.collected-overview-info dt { color:#b5a1c6; }
.collected-overview-info dd { min-width:0; margin:0; color:#eee3f7; text-align:right; overflow-wrap:anywhere; }
@media(max-width:340px) { .collected-match-page.is-prematch .match-section-tab { font-size:11px; } }
.collected-sample-control label { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:12px; font-weight:600; }
.collected-sample-control output { flex:none; color:#efb7fa; font-variant-numeric:tabular-nums; }
.collected-sample-control input[type="range"] { display:block; appearance:none; -webkit-appearance:none; width:100%; min-height:40px; margin:4px 0 0; padding:0; border:0; border-radius:0; background:linear-gradient(to right,#d84cdd var(--form-progress),#352140 var(--form-progress)) center/100% 5px no-repeat; cursor:pointer; touch-action:pan-y; }
.collected-sample-control input::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; width:22px; height:22px; border:2px solid #f5b2f6; border-radius:50%; background:#a83fbc; box-shadow:0 0 9px #d84cdd55; }
.collected-sample-control input::-moz-range-thumb { width:18px; height:18px; border:2px solid #f5b2f6; border-radius:50%; background:#a83fbc; }
.collected-sample-control input:focus-visible { outline:2px solid #dc7aee; outline-offset:2px; }
.collected-sample-scale { position:relative; height:10px; color:#ac99be; font-size:10px; line-height:1; }
.collected-sample-scale>span { position:absolute; }
.collected-sample-scale>span:nth-child(1) { left:0; }
.collected-sample-scale>span:nth-child(2) { left:44.44%; transform:translateX(-50%); }
.collected-sample-scale>span:nth-child(3) { right:0; }
.collected-overview-form .collected-form-name { flex-basis:100%; }
.collected-form-name>small { flex:none; margin-left:auto; color:#b7a5c7; font-size:11px; font-weight:400; }
.collected-overview-form .collected-form-results { flex:0 1 auto; flex-wrap:wrap; min-width:0; }
.collected-average-samples { display:flex; justify-content:space-between; gap:8px; margin-top:5px; color:#ae9ebd; font-size:10px; }
.collected-average-samples small { font-size:inherit; }

/* Prematch overview: original SIL7 form card and compact comparison cells. */
.collected-league-flag { flex:none; width:24px; height:16px; object-fit:cover; border-radius:3px; box-shadow:0 0 0 1px #a876d566; }
.collected-match-page.is-prematch .match-hero-card { row-gap:8px; padding-top:16px; padding-bottom:18px; }
.collected-match-page.is-prematch .match-hero-team { grid-template-rows:auto auto; align-self:start; }
.collected-match-page.is-prematch .match-hero-center { align-self:center; }
.collected-hero-form { grid-row:2; justify-self:center; min-width:0; max-width:100%; }
.collected-hero-form--home { grid-column:1; }
.collected-hero-form--away { grid-column:3; }
.collected-hero-form-results { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; width:116px; max-width:100%; }
.collected-hero-form-results>button { width:100%; height:22px; padding:0; border:1px solid #ffffff55; font-family:inherit; font-size:11px; font-weight:600; cursor:pointer; box-shadow:inset 0 1px 3px #ffffff35,0 0 5px #0005; }
.collected-hero-form-results .is-win { background:linear-gradient(145deg,#379e70,#126045); border-color:#57bd91; }
.collected-hero-form-results .is-loss { background:linear-gradient(145deg,#d25a71,#92203c); border-color:#ec6b8c; }
.collected-hero-form-results .is-draw { background:linear-gradient(145deg,#f4d574,#c6992a); border-color:#ffe17d; }
.collected-hero-form-results .collected-form-empty { grid-column:1/-1; text-align:center; }
.collected-hero-form-results>button:focus-visible { outline:2px solid #efb9ff; outline-offset:2px; }
.collected-sample-control { padding:13px 14px 18px; border-color:#473065; border-radius:17px; }
.collected-sample-control label { justify-content:flex-start; font-size:14px; line-height:1.5; }
.collected-sample-control output { color:#f06bed; }
.collected-sample-control input[type="range"] { margin-top:3px; min-height:38px; background:linear-gradient(to right,#ee42dd,#aa44ee var(--form-progress),#392852 var(--form-progress)) center/100% 5px no-repeat; }
.collected-sample-control input::-webkit-slider-thumb { width:24px; height:24px; border:3px solid #f3d3ff; background:#ba44ed; box-shadow:0 0 0 3px #ac48dd40,0 0 11px #de4eed66; }
.collected-sample-control input::-moz-range-thumb { width:18px; height:18px; border:3px solid #f3d3ff; background:#ba44ed; box-shadow:0 0 0 3px #ac48dd40; }
.collected-sample-scale { display:flex; justify-content:space-between; height:12px; font-size:10px; color:#9c8db0; }
.collected-sample-scale>span:nth-child(n) { position:static; transform:none; width:12px; text-align:center; }
.collected-sample-scale>span.is-selected { color:#efbeff; font-weight:600; }
.collected-overview-averages { padding:0; overflow:hidden; border-radius:15px; border-color:#3e2d55; background:linear-gradient(150deg,#151024,#0c0818); font-family:var(--sil7-font,sans-serif); }
.collected-average-heading { display:flex; align-items:center; gap:8px; padding:12px; border-bottom:1px solid #b998db18; }
.collected-average-heading>span { display:grid; place-items:center; flex:none; width:24px; height:24px; padding:4px; border-radius:6px; background:#a56ddd18; color:#c8a7e4; }
.collected-average-heading svg { width:100%; height:100%; }
.collected-average-heading h3 { margin:0; font-size:16px; font-weight:600; }
.collected-overview-subtabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; margin:10px 12px 2px; padding:3px; border:1px solid #a57bcc20; border-radius:10px; background:#090613; }
.collected-overview-subtabs button { display:flex; align-items:center; justify-content:center; gap:6px; min-width:0; min-height:36px; padding:6px; border:1px solid transparent; border-radius:7px; background:transparent; color:#aea1bd; font:500 12px/1.35 var(--sil7-font,sans-serif); cursor:pointer; }
.collected-overview-subtabs svg { width:17px; height:17px; flex:none; }
.collected-overview-subtabs button[aria-selected="true"] { color:#f5eaff; border-color:#b48bda44; background:#38234e; }
.collected-overview-subtabs button:focus-visible { outline:2px solid #eebaff; outline-offset:2px; }
.collected-average-body { padding:0 12px 12px; }
.collected-average-teams,.collected-average-row-head { display:grid; grid-template-columns:minmax(48px,.75fr) minmax(0,1.9fr) minmax(48px,.75fr); align-items:start; gap:8px; }
.collected-average-teams { align-items:center; padding:12px 0; min-height:42px; border-bottom:1px solid #b998db25; font-size:11px; line-height:1.4; color:#e3d9ec; }
.collected-average-teams strong { font-weight:500; overflow-wrap:anywhere; }
.collected-average-teams>span { text-align:center; color:#95889f; font-size:10px; font-weight:400; }
.collected-average-teams>strong:last-child { text-align:right; }
.collected-average-row { padding:9px 0; }
.collected-average-row.is-without-bars + .collected-average-row { border-top:1px solid #b998db14; }
.collected-average-label { padding-top:1px; text-align:center; color:#d6ccdf; font-size:12px; font-weight:500; line-height:1.4; text-wrap:balance; }
.collected-average-value { display:grid; justify-items:start; justify-self:start; gap:2px; font-variant-numeric:tabular-nums; }
.collected-average-value:last-child { justify-self:end; justify-items:end; }
.collected-average-value strong { color:#eee6f5; font-size:14px; font-weight:500; line-height:1.3; white-space:nowrap; }
.collected-average-value small { color:#a99ab9; font-size:9px; font-weight:400; line-height:1.4; }
.collected-average-value.is-empty strong { color:#8c7b9d; }
.collected-average-bars { margin-top:5px; gap:3px; }
.collected-average-bars .collected-stat-track { height:4px; }
.collected-average-bars .collected-stat-track--home .collected-stat-fill { background:linear-gradient(90deg,#bb49d0,#e869df); }
.collected-average-bars .collected-stat-track--away .collected-stat-fill { background:linear-gradient(90deg,#59babb,#338b99); }
.collected-average-body>.collected-overview-note { margin:5px 0 0; padding-top:10px; border-top:1px solid #b998db20; color:#a99ab9; font-size:10px; font-weight:400; line-height:1.5; }
@media(max-width:360px) {
  .collected-hero-form-results { gap:3px; width:102px; }
  .collected-hero-form-results>button { height:20px; font-size:10px; }
  .collected-sample-control label { font-size:13px; }
  .collected-overview-subtabs button { gap:4px; }
  .collected-average-teams,.collected-average-row-head { gap:6px; }
}
.collected-average-note { margin:12px 0 0; }
/* Live freshness uses a compact caption; the SIL7 card layout stays intact. */
.collected-live-status { margin:0 2px 10px; color:#ada1bf; font-size:12px; line-height:1.4; }
.collected-live-status.is-stale { color:#d9bc7c; }
