/* White match rows retain the original draw and match-centre layout at every viewport. */
.center-match,.center-match.live,.match-center-mine .center-match,.bracket-list-round,.bracket-list-match,.bracket-list-match.my-match{background:#fff!important;color:#17212b!important}
.center-match .center-player,.center-match .center-player-name,.center-match .center-player-name b,.center-match .player-name-link,.center-match .human-player-name,.center-match .ai-player-name,.center-match .player-loser-name,.center-match .center-set-scores,.center-match .center-set-scores b,.center-match .center-set-scores span,.bracket-list-match .bracket-list-side,.bracket-list-match .bracket-list-player,.bracket-list-match .bracket-player-empty,.bracket-list-match .bracket-bye,.bracket-list-match .player-name-link,.bracket-list-match .human-player-name,.bracket-list-match .ai-player-name,.bracket-list-match .player-loser-name,.bracket-list-match .player-name-with-belt,.bracket-list-match .bracket-list-score{color:#17212b!important;opacity:1!important}
.center-match .center-player-name .player-winner-name,.bracket-list-match .player-winner-name,.bracket-list-match .winner .player-name-link,.center-match .center-set-scores .center-live-point{color:#166534!important}
.center-match .center-match-meta small,.center-match .center-status,.center-match .center-club-name,.center-match .center-seed,.bracket-list-match .muted,.bracket-list-match .bracket-list-number,.bracket-list-round .bracket-list-wave{color:#475569!important;opacity:1}
.center-match .center-status.live{color:#166534!important}
.center-match button:not(.player-name-link),.bracket-list-match button:not(.player-name-link){background:#173a56!important;color:#fff!important;border-color:#426d92!important}
.center-match .center-tournament-title{color:#17212b!important}
/* The yellow/green round and tournament headers retain their existing backgrounds. */
.bracket-list-round>header,.bracket-list-round>header h3,.bracket-list-round>header .bracket-list-wave{color:#102015!important}
/* Readable selected/unselected controls, without relying on a generic primary foreground. */
.profile-mode221 button,#olympicsContent218 .actions button{background:#173a56!important;color:#fff!important;border:1px solid #6e94b5!important;border-radius:20px;padding:9px 15px;min-height:38px;font-weight:800}
.profile-mode221 button[aria-pressed="true"],#olympicsContent218 .actions button.primary{background:#d9ef00!important;color:#102015!important;border-color:#d9ef00!important}
.profile-mode221{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.profile-mode221 button:focus-visible,#olympicsContent218 button:focus-visible{outline:3px solid #fff;outline-offset:3px}
[data-profile-content221][hidden]{display:none!important}
[data-profile-content221] .muted small,[data-profile-content221] td>small{display:block;margin-top:4px}
/* Message actions are full-size targets with an explicit background. */
.message-options218>summary{min-width:36px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:24px}
.message-options218>div{min-width:220px;max-width:calc(100vw - 36px);padding:7px;background:#102d44!important;border:1px solid #7898b0;box-shadow:0 8px 28px #0008}
.message-options218>div button{display:block;width:100%;min-height:44px;margin:2px 0;padding:11px 14px;background:#173a56!important;color:#fff!important;border:1px solid #426d92;border-radius:6px;text-align:left;font-size:14px;font-weight:650;line-height:1.4;white-space:normal}
.message-options218>div button:hover,.message-options218>div button:focus-visible{background:#285f83!important;color:#fff!important;outline:2px solid #d9ef00;outline-offset:-2px}
/* Avatar: HSV square, hue slider, HEX and the original preset swatches. */
.avatar-color221{display:grid;gap:10px;margin-top:12px;max-width:340px;min-width:0}
.avatar-color221-controls{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:12px}
.avatar-sv221{height:180px;position:relative;cursor:crosshair;touch-action:none;background:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,transparent),var(--hue221,#f00);border:1px solid #7898b0;border-radius:8px;overflow:hidden}
.avatar-sv221:focus-visible{outline:3px solid #d9ef00;outline-offset:3px}
.avatar-sv221>i{position:absolute;width:12px;height:12px;border:2px solid white;box-shadow:0 0 0 1px #000;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.avatar-hue221{display:flex;flex-direction:column;align-items:center;gap:5px;color:#fff;font-size:11px}
.avatar-hue221 input{writing-mode:vertical-lr;direction:rtl;appearance:none;-webkit-appearance:none;width:26px;height:156px;background:linear-gradient(to top,#f00,#f0f,#00f,#0ff,#0f0,#ff0,#f00);border:1px solid #7898b0;border-radius:4px;cursor:pointer}
.avatar-hue221 input::-webkit-slider-thumb{appearance:none;width:34px;height:8px;border:2px solid white;border-radius:3px;background:#17212b;box-shadow:0 0 1px black}
.avatar-hue221 input::-moz-range-thumb{width:32px;height:7px;border:2px solid white;border-radius:3px;background:#17212b}
.avatar-hex221{display:flex;align-items:center;gap:10px}
.avatar-hex221>span{height:34px;width:44px;border:1px solid #7898b0;border-radius:5px}
.avatar-hex221 label{display:flex;align-items:center;gap:8px;color:#fff}
.avatar-hex221 input{width:110px;background:#102d44;color:#fff;border:1px solid #7898b0;border-radius:5px;padding:8px;font:14px ui-monospace,monospace}
.avatar-hex221 input:invalid{border-color:#ff8590}
@media(max-width:760px){.message-options218>div{min-width:200px}.profile-mode221 button,#olympicsContent218 .actions button{min-height:44px}.avatar-sv221{height:170px}}

/* Explicit author colors keep public chat inputs white under the app's dark scheme. */
#generalChatInput,#liveChatInput{background:#fff!important;background-color:#fff!important;color:#17212b!important;caret-color:#17212b;border-color:#9aabb9;color-scheme:only light;forced-color-adjust:none}
#generalChatInput::placeholder,#liveChatInput::placeholder{color:#596776!important;opacity:1}

/* Native fields stay light even when the surrounding application uses dark mode.
   Controls with custom author colors retain their existing palette. */
input,textarea,select{color-scheme:only light}
#trainingPackName{background:#fff!important;color:#17212b!important;caret-color:#17212b;border:1px solid #9aabb9;forced-color-adjust:none}
#trainingPackName::placeholder{color:#596776!important;opacity:1}
/* Next-week equipment allocation follows the white-field convention. */
#equipmentRedistribution247 input{background:#fff!important;color:#17212b!important;caret-color:#17212b;color-scheme:only light}
#equipmentRedistribution247 .primary{background:#d9ef00!important;color:#102d44!important}
#equipmentRedistribution247 details{margin-top:12px}
#equipmentRedistribution247 summary{cursor:pointer;font-weight:700;margin-bottom:12px}
