#game-results-backdrop { z-index: 1000; padding: 12px; }
.results-dialog { position: relative; width: min(880px, 100%); max-height: calc(100dvh - 24px); display: flex; flex-direction: column; gap: 20px; padding: 26px; border: 1px solid #d7c394; border-radius: 18px; background: #fffcf5; box-shadow: 0 24px 90px #081c2a55; overflow: hidden; }
.results-dialog [hidden] { display: none !important; }
.results-close { position: absolute; z-index: 2; right: 10px; top: 10px; width: 36px; height: 36px; border: 1px solid #e6dece; border-radius: 50%; background: #fffcf5; color: #53644e; font-size: 23px; cursor: pointer; }
.results-heading { display: flex; align-items: center; gap: 16px; padding-right: 30px; flex: none; }
.results-heading > div { min-width: 0; }
.results-symbol { display: grid; place-items: center; width: 62px; height: 62px; flex: none; border: 1px solid #c7ad6e; border-radius: 50%; background: #f4ecd6; color: #ac873b; font-size: 31px; }
.results-eyebrow { margin: 0 0 4px; color: #8a764e; font: 700 9px/1.4 'DM Sans', sans-serif; letter-spacing: 1.3px; }
.results-heading h2 { margin: 0; color: #254d39; font: 500 36px/1.1 'Playfair Display', Georgia, serif; }
.results-heading #results-subtitle { margin: 5px 0 0; color: #6b7667; font-size: 12px; overflow-wrap: anywhere; }
.results-dialog[data-outcome="loss"] .results-symbol { color: #a16954; border-color: #c49a85; background: #f5e9df; }
.results-dialog[data-outcome="loss"] .results-heading h2 { color: #825746; }
.results-body { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 22px; min-height: 0; overflow: hidden; }
.results-summary-section, .results-league-section { min-width: 0; min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: none; }
.results-summary-section::-webkit-scrollbar, .results-league-section::-webkit-scrollbar { display: none; }
.results-overview, .results-scores { min-width: 0; }
.results-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.results-metrics > div { display: grid; align-content: start; gap: 5px; min-width: 0; padding: 12px 9px; border-radius: 9px; background: #f2efe4; }
.results-metrics span { color: #737d6c; font-size: 10px; }
.results-metrics strong { color: #33513e; font-size: 20px; line-height: 1.2; }
.results-metrics small { color: #818574; font-size: 9px; }
.results-called { margin: 9px 0; color: #7a704f; font-size: 10px; line-height: 1.4; overflow-wrap: anywhere; }
.results-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 6px; margin: 14px 0 8px; }
.results-section-heading h3 { margin: 0; color: #445a43; font: 700 12px 'DM Sans', sans-serif; }
.results-section-heading > span { color: #8b836e; font-size: 10px; }
.results-section-heading button { padding: 3px 0; border: 0; background: none; color: #8f743f; font: 600 10px 'DM Sans', sans-serif; cursor: pointer; }
.results-league-section > .results-section-heading { margin-top: 0; }
.results-players { display: grid; gap: 5px; }
.results-player { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 10px; border: 1px solid #e6e1d4; border-radius: 8px; }
.results-player.is-me { background: #edf3e7; border-color: #a5b88d; }
.results-player-name { display: grid; gap: 2px; min-width: 0; }
.results-player-name strong { font-size: 12px; color: #3b5341; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.results-player-name small { color: #7c8372; font-size: 10px; }
.results-player > b { font-size: 12px; white-space: nowrap; }
.results-dialog .is-positive { color: #2e7051; }
.results-dialog .is-negative { color: #a25445; }
.results-league-message { margin: 0 0 10px; color: #75806d; font-size: 11px; line-height: 1.5; }
.results-league-cards { display: grid; gap: 10px; }
.results-league-card { padding: 13px; border: 1px solid #d6cba9; border-radius: 11px; background: #f7f1df; }
.results-league-card-heading { display: flex; align-items: center; gap: 8px; }
.results-league-logo { width: 34px; height: 40px; }
.results-league-identity { display: grid; gap: 3px; flex: 1; min-width: 0; }
.results-league-identity small { color: #7c795f; font-size: 10px; }
.results-league-identity strong { color: #5f532e; font: 600 18px/1.1 'Playfair Display', Georgia, serif; }
.results-delta { white-space: nowrap; font-size: 22px; color: #7c795f; }
.results-total { margin: 9px 0 7px; font: 600 12px 'DM Sans', sans-serif; color: #5a684f; }
.results-league-card progress { display: block; width: 100%; height: 5px; border: 0; border-radius: 8px; overflow: hidden; background: #e4dcc5; accent-color: #b39755; }
.results-league-card progress::-webkit-progress-bar { background: #e4dcc5; }
.results-league-card progress::-webkit-progress-value { background: #b39755; }
.results-league-card progress::-moz-progress-bar { background: #b39755; }
.results-next { display: block; margin-top: 7px; color: #8b7c56; font-size: 10px; }
.results-next.is-promotion { color: #2e7051; font-weight: 700; }
.results-footer { border-top: 1px solid #e7dfcc; padding-top: 13px; flex: none; }
.results-actions { display: flex; gap: 8px; }
.results-actions button { padding: 10px 15px; border: 1px solid #d9d1bd; border-radius: 7px; background: #fffdf7; color: #54664b; font: 600 12px 'DM Sans', sans-serif; cursor: pointer; }
.results-actions .results-primary { margin-left: auto; min-width: 140px; background: #244d3a; border-color: #244d3a; color: #fff8e6; }
.results-actions button:disabled { opacity: .55; cursor: default; }
#results-action-status { margin: 6px 0 0; min-height: 13px; color: #8f7258; font-size: 10px; }
#results-action-status:empty { display: none; }
.results-dialog button:focus-visible { outline: 2px solid #b39451; outline-offset: 2px; }
.results-tabs { display: flex; flex: none; border-bottom: 1px solid #ded6c4; }
.results-tabs button { flex: 1; border: 0; border-bottom: 2px solid transparent; padding: 8px; background: transparent; color: #7e806b; font: 600 12px 'DM Sans', sans-serif; cursor: pointer; }
.results-tabs [aria-pressed="true"] { color: #315640; border-bottom-color: #b79a5b; }
@media (max-width: 680px), (max-height: 580px) {
  .results-dialog { gap: 12px; padding: 16px; }
  .results-body { display: flex; flex-direction: column; }
  .results-heading { gap: 10px; }
  .results-symbol { width: 42px; height: 42px; font-size: 24px; }
  .results-heading h2 { font-size: 28px; }
  .results-eyebrow { font-size: 8px; letter-spacing: .7px; }
  .results-heading #results-subtitle { font-size: 11px; }
  .results-metrics > div { padding: 9px 6px; gap: 3px; }
  .results-metrics strong { font-size: 18px; }
  .results-metrics span { font-size: 9px; }
  .results-player { padding: 6px 9px; }
  .results-player-name strong { font-size: 11px; }
  .results-actions button { flex: 1; padding: 9px 5px; font-size: 11px; }
  .results-actions .results-primary { min-width: 0; }
  .results-footer { padding-top: 10px; }
}
@media (max-height: 420px) and (min-width: 480px) {
  .results-dialog { padding: 8px 16px; gap: 4px; }
  .results-heading h2 { font-size: 24px; }
  .results-symbol { width: 34px; height: 34px; }
  .results-heading #results-subtitle { margin-top: 2px; }
  .results-tabs button { padding: 5px; font-size: 11px; }
  .results-summary-section { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 12px; }
  .results-metrics { grid-template-columns: 1fr; gap: 4px; }
  .results-metrics > div { grid-template-columns: 1fr auto; align-items: center; padding: 5px; }
  .results-metrics strong { font-size: 16px; }
  .results-metrics small { display: none; }
  .results-called { margin-bottom: 0; font-size: 9px; }
  .results-section-heading { margin: 0 0 5px; }
  .results-section-heading h3 { font-size: 10px; }
  .results-section-heading button { font-size: 9px; padding: 0; }
  .results-players { gap: 2px; }
  .results-player { gap: 5px; padding: 2px 6px; line-height: 14px; }
  .results-player-name { display: flex; align-items: center; gap: 5px; flex: 1; }
  .results-player-name strong { font-size: 10px; }
  .results-player-name small { font-size: 8px; white-space: nowrap; }
  .results-player-outcome { display: none; }
  .results-player > b { font-size: 10px; }
  .results-league-message { font-size: 10px; line-height: 1.3; margin-bottom: 6px; }
  .results-league-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .results-league-card { padding: 4px 8px; }
  .results-league-logo { width: 25px; height: 30px; }
  .results-league-identity strong { font-size: 15px; }
  .results-delta { font-size: 18px; }
  .results-total { margin: 5px 0; }
  .results-next { margin-top: 4px; line-height: 1.2; }
  .results-footer { padding-top: 6px; }
  .results-actions button { padding: 7px 5px; }
  #results-action-status { margin-top: 3px; }
}
@media (max-height: 650px) and (max-width: 479px) {
  .results-dialog { padding: 14px; gap: 9px; }
  .results-metrics > div { padding: 7px 5px; }
  .results-metrics span, .results-metrics small { font-size: 8px; }
  .results-section-heading { margin-top: 9px; }
  .results-players { gap: 4px; }
  .results-player { padding: 3px 8px; }
  .results-player-name { gap: 1px; }
  .results-player-name small { font-size: 9px; }
}
