/* "Mijn ronde": gamertag kiezen, groep, room en uitslag. Telefoon eerst. */
.claim-list { display: grid; gap: 8px; }
.claim-item { justify-content: flex-start; text-align: left; padding: 14px 16px; font-size: 1.05rem; }
.player-label small { font-size: .78em; }

.member-list { list-style: none; padding: 0; margin: 12px 0 0; display: grid; gap: 6px; }
.member-list li { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.host-badge { margin-left: 8px; }

.room-info { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 0; }
.room-info dt { color: var(--muted); }
.room-info dd { margin: 0; font-weight: 600; word-break: break-all; }

.result-card .status.confirmed { background: color-mix(in srgb, var(--ok) 18%, transparent); color: var(--ok); }
.result-card .status.disputed { background: var(--vives-soft); color: var(--danger-text); }
.result-order { margin: 12px 0; padding-left: 24px; display: grid; gap: 4px; }
.report { color: var(--danger-text); margin: 6px 0; }

.order-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 8px; margin: 12px 0; }
.order-item { justify-content: flex-start; gap: 10px; padding: 12px; }
.order-item.picked { box-shadow: inset 0 0 0 2px var(--cyan); }
.order-place { min-width: 1.6em; font: 700 1.1rem var(--font-display); color: var(--cyan); }

.check-buttons { margin-top: 12px; }
.btn.big { flex: 1 1 140px; padding: 18px 16px; font-size: 1.15rem; }
.btn.big.chosen { box-shadow: inset 0 0 0 3px var(--text); }

/* Algemeen klassement en tv-modus */
.leaderboard td.player { font-size: 1.05rem; }
.leaderboard .provisional { color: var(--muted); margin-left: 6px; }
.leaderboard-foot { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-top: 16px; color: var(--muted); }

body.tv .topbar { display: none; }
body.tv .page { max-width: none; padding: 2vh 3vw; }
body.tv .leaderboard table.data { font-size: 2.4vh; }
body.tv .leaderboard td.player { font-size: 3.2vh; }
body.tv .leaderboard td.player small { font-size: 2vh; }
body.tv .leaderboard th { font-size: 1.8vh; }
body.tv .leaderboard-foot { font-size: 3vh; color: var(--text); }
body.tv h1 { font-size: 5vh; }

/* Host-kaart */
.host-steps { margin: 12px 0; padding-left: 24px; display: grid; gap: 6px; }
.host-settings td { padding: 6px 10px; }
.host-settings tr.changed td { color: #f2b705; }
.host-settings tr.changed td:first-child { box-shadow: inset 3px 0 0 #f2b705; }

/* Beheer van LAN-rondes */
.status.submitted { background: var(--cyan-soft); color: var(--cyan); }
.status.open { background: var(--surface-2); color: var(--muted); }
.board { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; align-items: start; margin-top: 16px; }
.board-column { display: grid; gap: 8px; align-content: start; }
.board-column > h3 { margin: 0 0 4px; }
.board-column.disputed > h3 { color: var(--danger-text); }
.board-card { display: grid; gap: 4px; text-align: left; padding: 12px; background: var(--surface); border: 1px solid var(--line); color: inherit; cursor: pointer; font: inherit; }
.board-card:hover { box-shadow: inset 0 0 0 1px var(--cyan); }
.board-column.disputed .board-card { box-shadow: inset 3px 0 0 var(--vives-hot); }
.board-actions { margin-bottom: 12px; }
.group-dialog { display: grid; gap: 12px; max-height: 70vh; overflow-y: auto; min-width: min(560px, 80vw); }
.rank-list { padding-left: 24px; display: grid; gap: 6px; margin: 12px 0; }
.rank-list li { display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.group-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
@media (max-width: 900px) { .board { grid-template-columns: 1fr; } }
