/* Shared surfaces for practice, strategy and multiplayer, including mounted board dialogs. */
:root[data-theme=dark] .board-workspace,:root[data-theme=dark] .xq-table{--paper:#101f32;--surface:#192c41;--bg:#081321;--ink:#f4f8ff;--text:#c8d5e5;--muted:#a2b4ca;--line:#52677c;--green:#c8ff3d;--accent:#c8ff3d;--action-ink:#10200b;--rank:#58e0cf;background:var(--paper);color:var(--ink);border-color:var(--line)}
:root[data-theme=dark] :is(.board-ready,.board-waiting,.strategy-dialog){background:#101f32;color:#f4f8ff;border-color:#52677c}
:root[data-theme=dark] :is(.board-ready p,.board-waiting p,.xq-table-note,.xq-captured,.mp-clocks){color:#c8d5e5}
:root[data-theme=dark] .board-workspace .xq-primary{background:#c8ff3d;color:#10200b}
:root[data-theme=dark] .board-workspace .mp-level-badge{color:#58e0cf;background:#192c41;border-color:#52677c;--rank:#58e0cf}
:root[data-theme=dark] .board-controls .mp-danger{color:#ffb6aa;border-color:#b77469}
:root[data-theme=dark] .xq-side-red{color:#ffb6aa}
:root[data-theme=dark] :is(.mp-danger,.mp-feedback.is-error){background:#3e262c;color:#ffd3c3;border-color:#b77469}
:root[data-theme=dark] .mp-feedback:not(.is-error){background:#192c41;color:#c8ff3d;border-color:#52677c}
:root[data-theme=dark] :is(.mp-panel select,.mp-panel input:not([type=radio]),.mp-share input,.mp-action-pair button){background:#192c41;color:#f4f8ff;border-color:#52677c}
:root[data-theme=dark] .mp-clocks .mp-clock-caption small{color:#ffcf66}
:root[data-theme=dark] .xq-result-symbol{color:#c8ff3d}
:root[data-theme=light] .strategy-dialog{background:#fff;color:#10243b;border-color:#8b9fb4}
:root[data-theme=light] .strategy-tabs [aria-current]{color:#765000}
:root[data-theme=light] .strategy-notice{color:#884500}
:root[data-theme=light] .strategy-result{background:#deeed7;color:#234d07}
:root[data-theme=light] .strategy-panel{background:var(--paper);color:var(--ink);border-color:var(--line)}
:root[data-theme=light] .strategy-panel select,:root[data-theme=light] .strategy-panel input:not([type=checkbox]){background:var(--bg);color:var(--ink);border-color:var(--line)}
:root[data-theme=dark] .xq-captured>div>span{display:inline-grid;place-items:center;min-width:25px;min-height:25px;padding:2px;background:#f2dfbc;border-radius:4px;color:#253b3d}
:root[data-theme=dark] .xq-captured>div>.xq-captured-r{color:#a0322a}
:root[data-theme=dark] .strategy-panel{background:var(--paper);border-color:var(--line)}
/* Multiplayer also supports light mode outside its focused board view. */
:root[data-theme=light] body:has(.mp-page){--bg:#f3f7fc;--paper:#fff;--surface:#e5edf6;--ink:#10243b;--text:#344e68;--muted:#506780;--line:#b9cadd;--green:#335f00;--accent:#c8ff3d;--action-ink:#10200b;background:var(--bg);color:var(--ink);color-scheme:light}
:root[data-theme=light] .mp-page{--bg:#f3f7fc;--paper:#fff;--surface:#e5edf6;--ink:#10243b;--text:#344e68;--muted:#506780;--line:#b9cadd;--green:#335f00;--gold:#865600;--accent:#c8ff3d;--action-ink:#10200b}
:root[data-theme=light] .mp-page :is(.focus-exit,.focus-game-tabs,.focus-game-tabs button[aria-pressed=true],.focus-popup .xq-panel,.arena-room-row,.quick-player,.quick-status-card,.quick-match,.arena-empty-compact,.mp-outline){background:var(--surface);color:var(--ink);border-color:var(--line)}
:root[data-theme=light] .mp-page :is(.arena-tabs,.mp-game-choices label,.arena-create-panel .xq-side label){background:var(--surface);color:var(--ink)}
:root[data-theme=light] .mp-page :is(.mp-game-choices label:has(input:checked),.arena-create-panel .xq-side label:has(input:checked)){background:#dceecb;color:#234d07;border-color:#46721e}
:root[data-theme=light] .mp-page .mp-time-rules{background:var(--surface);color:var(--text)!important;border-color:var(--line)}
:root[data-theme=light] .mp-page :is(.arena-room-stats,.arena-waiting){color:#40536c!important}
:root[data-theme=light] .mp-page .arena-chess{color:#10243b}
:root[data-theme=light] body:has(.mp-page.is-board-focused){background:var(--bg)}

/* Dialog contents share the page palette, including optional room and profile panels. */
:root[data-theme=light] .mp-page{--badge:#53635f}
:root[data-theme=light] .mp-page input:not([type=radio]):not([type=checkbox]){background:var(--paper);color:var(--ink);border-color:var(--line)}
:root[data-theme=light] .mp-page :is(.arena-profile-game,.arena-profile .mp-rating-cards article,.quick-prize-note,.quick-match>small,.board-workspace>.mp-clocks,.board-stage .board-waiting,.board-stage .board-ready,.focus-popup .board-controls>.xq-panel){background:var(--surface);color:var(--ink);border-color:var(--line)}
:root[data-theme=light] .mp-page .arena-game-card{background:linear-gradient(145deg,var(--surface),var(--paper));color:var(--ink);border-color:var(--line)}
:root[data-theme=light] .mp-page .arena-game-card strong{color:var(--green);border-color:var(--line)}
:root[data-theme=light] .mp-page :is(.quick-code,.mp-award,[data-draw-incoming],.quick-match>.is-winner){background:#e2f2de;color:#244b1e;border-color:#75996c}
:root[data-theme=light] .mp-page .quick-code :is(small,strong,span){color:inherit}
:root[data-theme=light] .mp-page .arena-profile .mp-rating-track{background:#bdcbd9}
:root[data-theme=light] .mp-page .arena-profile .mp-rating-track span{background:#335f00}
:root[data-theme=dark] .mp-page .quick-capacity small{color:#c3d0ce}
/* The nested online board defines its own variables and must receive the full light palette too. */
:root[data-theme=light] .mp-page .board-workspace{--bg:#f3f7fc;--paper:#fff;--surface:#e5edf6;--ink:#10243b;--text:#344e68;--muted:#506780;--line:#b9cadd;--green:#335f00;--gold:#865600;--rank:#1d665d;--accent:#c8ff3d;--action-ink:#10200b}
