.playerPanelTabs { grid-template-columns:repeat(5,minmax(0,1fr)); }

.gameSettingsPane { display:flex; flex-direction:column; gap:10px; }
.gameSettingsHeader { padding:2px 2px 4px; }
.gameSettingsHeader small { display:block; color:#78dbff; font-size:9px; font-weight:900; letter-spacing:1.2px; }
.gameSettingsHeader strong { display:block; color:#eefaff; font-size:18px; line-height:1.05; }
.gameSettingsHeader p { margin:5px 0 0; color:#8da8ba; font-size:10px; line-height:1.4; }
.gameSettingsCard { overflow:hidden; border:1px solid rgba(142,205,238,.18); border-radius:11px; background:rgba(1,18,31,.52); }
.gameSettingsCardHeader { display:flex; align-items:flex-end; justify-content:space-between; gap:8px; padding:9px 10px 7px; border-bottom:1px solid rgba(255,255,255,.08); }
.gameSettingsCardHeader strong { color:#eefaff; font-size:11px; letter-spacing:.06em; }
.gameSettingsCardHeader small { color:#7395aa; font-size:8px; text-align:right; }
.gameSettingsCheckList { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:rgba(255,255,255,.05); }
.gameSettingCheckRow { position:relative; min-height:48px; margin:0; padding:8px 42px 8px 10px; display:flex; align-items:center; background:#071c2c; cursor:pointer; }
.gameSettingCheckRow > span { min-width:0; display:flex; flex-direction:column; gap:2px; }
.gameSettingCheckRow strong { color:#dcecf5; font-size:10px; line-height:1.15; }
.gameSettingCheckRow small { color:#6f8ea1; font-size:8px; line-height:1.2; }
.gameSettingCheckRow input { position:absolute; opacity:0; pointer-events:none; }
.gameSettingCheckRow > i { position:absolute; right:10px; width:22px; height:22px; border:1px solid rgba(161,202,225,.38); border-radius:6px; background:rgba(0,0,0,.24); box-shadow:inset 0 0 0 2px rgba(0,0,0,.18); }
.gameSettingCheckRow input:checked + i { border-color:#60dca5; background:rgba(42,175,121,.22); }
.gameSettingCheckRow input:checked + i::after { content:'✓'; position:absolute; inset:0; display:grid; place-items:center; color:#73f0b5; font-style:normal; font-size:15px; font-weight:900; }
.gameSettingCheckRow:focus-within > i { outline:2px solid rgba(116,222,255,.55); outline-offset:1px; }
.gameSettingCheckRow.is-disabled { opacity:.5; cursor:not-allowed; }
.gameSettingCheckRow.is-disabled > i { filter:grayscale(1); }
.gameSettingsActions { display:flex; gap:6px; padding:8px 9px; }
.gameSettingsActions button { flex:1; min-height:32px; margin:0; border:1px solid rgba(112,205,239,.3); border-radius:7px; background:#0d3852; color:#dff7ff; font-size:9px; font-weight:900; }
.gameSettingsActions button:last-child { background:#123047; }
.gameSettingsMaster { margin:0; border-bottom:1px solid rgba(255,255,255,.08); }
.gameSettingsRules.is-disabled { opacity:.46; }
.gameSettingsRules.is-disabled .gameSettingCheckRow { cursor:default; }
.gameSettingsSubhead { padding:7px 10px 5px; background:#061725; color:#77a7be; font-size:8px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.gameSettingsNote { margin:0; padding:8px 10px; border-top:1px solid rgba(255,255,255,.07); color:#7697aa; font-size:8px; line-height:1.45; }
.gameSettingsNote strong { color:#bcd6e4; }
.gameSettingsFooter { display:flex; align-items:center; gap:8px; }
.gameSettingsStatus { flex:1; min-height:18px; margin:0; color:#87b39e; font-size:8px; line-height:1.35; }
.gameSettingsStatus.is-error { color:#ff9b9b; }

@media (max-width:575px) {
    .playerPanelTabs { gap:3px; padding:5px; }
    .playerPanelTab { min-width:0; padding:7px 2px; font-size:9px; }
    .gameSettingsCheckList { grid-template-columns:1fr; }
    .gameSettingCheckRow { min-height:44px; }
}

/* V2 — Galerie des backgrounds de progression. */
.gameBackgroundGallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; padding:8px; background:rgba(0,0,0,.14); }
.gameBackgroundChoice { position:relative; min-width:0; height:142px; margin:0; overflow:hidden; border:1px solid rgba(128,188,218,.18); border-radius:9px; background:#071725; cursor:pointer; isolation:isolate; }
.gameBackgroundChoice input { position:absolute; opacity:0; pointer-events:none; }
.gameBackgroundChoicePreview { position:absolute; inset:0; background-position:center center; background-repeat:no-repeat; background-size:cover; transform:scale(1.01); transition:transform .16s ease, filter .16s ease; }
.gameBackgroundChoice::after { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(3,10,18,.02) 30%,rgba(3,11,20,.2) 55%,rgba(3,11,20,.92) 100%); pointer-events:none; }
.gameBackgroundChoiceMeta { position:absolute; z-index:2; left:8px; right:8px; bottom:7px; display:flex; flex-direction:column; gap:1px; min-width:0; text-shadow:0 1px 3px rgba(0,0,0,.9); }
.gameBackgroundChoiceMeta strong { overflow:hidden; color:#f2fbff; font-size:10px; line-height:1.1; white-space:nowrap; text-overflow:ellipsis; }
.gameBackgroundChoiceMeta small { color:#a9c6d8; font-size:8px; line-height:1.15; }
.gameBackgroundChoiceBadge { position:absolute; z-index:3; top:7px; right:7px; min-width:24px; height:20px; padding:0 6px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.24); border-radius:999px; background:rgba(2,14,24,.68); color:#d7eaf4; font-size:8px; font-weight:900; letter-spacing:.04em; }
.gameBackgroundChoice input:checked ~ .gameBackgroundChoicePreview { transform:scale(1.045); box-shadow:inset 0 0 0 2px rgba(102,223,175,.9), inset 0 0 26px rgba(67,206,150,.12); }
.gameBackgroundChoice input:checked ~ .gameBackgroundChoiceBadge { border-color:#61dca8; background:rgba(24,109,80,.86); color:#d7ffeb; }
.gameBackgroundChoice:focus-within { outline:2px solid rgba(116,222,255,.55); outline-offset:1px; }
.gameBackgroundChoice--default { grid-column:1 / -1; height:108px; }
.gameBackgroundChoice--default .gameBackgroundChoicePreview { background-position:center 47%; }

@media (max-width:360px) {
    .gameBackgroundChoice { height:126px; }
    .gameBackgroundChoice--default { height:96px; }
}
