/* Games mode (DEC-230..DEC-234). Built on the server-screens layout (screens.css); no inline styles (CSP style-src
   'self', DEC-065). Logical properties so the layout mirrors in RTL locales. */

.games-card { width: min(1180px, 100%); }
.games-body .fineprint { margin-top: 14px; }
#games-status:empty { display: none; }
#games-status { margin: 0 0 6px; font-weight: 600; }
.games-disc { margin: 10px 0; padding: 8px 12px; border: 1px solid var(--line); border-radius: 10px; min-width: 0; }
.games-disc legend { padding: 0 6px; font-weight: 700; }
.games-events { list-style: none; padding-inline-start: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 2px 14px; }
.games-events li { min-width: 0; }
.games-events label.check { display: inline-flex; align-items: center; gap: 6px; }
.games-events small { display: block; margin-inline-start: 26px; }
.games-next { margin: 8px 0 10px; padding: 10px 14px; border: 1px solid var(--line); border-inline-start: 4px solid var(--focus); border-radius: 12px; background: #132030; }
.games-next.mine { border-inline-start-color: var(--accent); }
.games-next h4 { margin: 0 0 4px; font-size: 1.08rem; }
.games-next p { margin: 2px 0; }
.games-session { list-style: none; padding-inline-start: 0; }
.games-contest { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 4px 0; border-bottom: 1px solid var(--line); }
.games-contest .sc-actions { margin-inline-start: auto; }
.sc-chip.st-done, .sc-chip.st-complete { border-color: var(--teal); color: #c9fff7; }
.sc-chip.st-ready, .sc-chip.st-running { border-color: var(--focus); }
.sc-chip.st-waiting, .sc-chip.st-scheduled { color: var(--muted); }
.sc-chip.st-void { border-color: #8a6a20; color: #ffe2a0; }
.games-ceremony { border-inline-start-color: var(--accent); }
.games-podium { list-style: none; padding-inline-start: 0; }
.games-medal { padding: 3px 0; }
.games-medal-name { display: inline-block; min-width: 5.5em; font-weight: 700; }
.games-medal.m-gold .games-medal-name { color: #ffd76a; }
.games-medal.m-silver .games-medal-name { color: #d9e2ea; }
.games-medal.m-bronze .games-medal-name { color: #e2a46a; }
.games-medal.withheld .games-medal-name { text-decoration: line-through; color: var(--muted); }
.games-body table.results-table { margin: 8px 0 12px; }
.games-body tr.me td { background: rgba(55, 208, 192, 0.12); }

@media (max-width: 600px) {
  .games-card { padding: 12px 12px; }
  .games-events { grid-template-columns: minmax(0, 1fr); }
  .games-contest .sc-actions { margin-inline-start: 0; }
  .games-body table.results-table { font-size: 0.86rem; }
}

/* Party mode (DEC-666..670): the join code large and spaced, friends' parties as a plain list. */
.party-code { font-size: 1.1rem; }
.party-code-value { font-size: 1.6rem; font-weight: 700; letter-spacing: 0.12em; font-variant-numeric: tabular-nums; }
.party-friends { list-style: none; padding: 0; margin: 6px 0 12px; }
.party-friends li { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: space-between; padding: 4px 0; }
.party-settings .check { display: block; margin: 6px 0; }
.party-turn { font-weight: 600; }
.party-unranked { margin-top: 0; }
