/* ============================================================
   Dark Mode Overrides
   All selectors scoped under body.dark-mode
   Loaded after all existing CSS to override via specificity
   ============================================================ */

/* Dark palette:
   Page bg:      #1a1a2e
   Card/panel:   #16213e
   Surface:      #0f3460
   Text primary: #e0e0e0
   Text second:  #a0a0a0
   Text muted:   #707070
   Borders:      #2a2a4a
   Links:        #64b5f6
   Input bg:     #1e1e3a
*/

/* ============================================================
   ROOT.JSP INLINE STYLE OVERRIDES
   ============================================================ */

body.dark-mode {
	background-color: #1a1a2e !important;
	color: #e0e0e0;
}

body.dark-mode #all {
	background-color: #16213e;
	border-color: #2a2a4a;
	background-image: none;
}

body.dark-mode #outside {
	background-color: #16213e;
}

body.dark-mode #mainpage {
	background-color: #16213e;
}

body.dark-mode #page {
	background-color: #16213e;
}

body.dark-mode pre,
body.dark-mode td,
body.dark-mode div,
body.dark-mode th,
body.dark-mode p,
body.dark-mode li {
	color: #e0e0e0;
}

body.dark-mode a {
	color: #64b5f6;
}

body.dark-mode a:visited {
	color: #9fa8da;
}

body.dark-mode #menu a {
	color: #64b5f6;
}

body.dark-mode .field-label {
	color: #a0a0a0;
}

body.dark-mode .list-odd {
	background: #1e1e3a;
}

body.dark-mode #input-search,
body.dark-mode #input-title,
body.dark-mode #input-body,
body.dark-mode textarea {
	background-color: #1e1e3a;
	color: #e0e0e0;
	border-color: #2a2a4a;
}

body.dark-mode .hmenu {
	background-color: #1e1e3a;
}

body.dark-mode .hmenu .current {
	background-color: #16213e;
	border-color: #2a2a4a;
	color: #e0e0e0;
}

body.dark-mode .hmenu .notcurrent {
	border-color: #2a2a4a;
}

body.dark-mode .hmenu a.current,
body.dark-mode .hmenu a.current:visited {
	color: #e0e0e0;
}

body.dark-mode .hmenu a.notcurrent,
body.dark-mode .hmenu a.notcurrent:visited {
	color: #707070;
}

body.dark-mode .profilemenu a.current,
body.dark-mode .profilemenu a.current:visited {
	color: #e0e0e0;
}

body.dark-mode .profilemenu a.notcurrent,
body.dark-mode .profilemenu a.notcurrent:visited {
	color: #64b5f6;
}

body.dark-mode h1 a,
body.dark-mode h1 a:visited,
body.dark-mode #profile h2 span {
	color: #e0e0e0;
}

body.dark-mode h2 a,
body.dark-mode h2 a:visited,
body.dark-mode h2 span {
	color: #e0e0e0;
}

body.dark-mode h3 span {
	color: #c0c0c0;
}

body.dark-mode h4 span {
	color: #c0c0c0;
}

body.dark-mode .mainheader a,
body.dark-mode .mainheader a:visited {
	color: #e0e0e0;
}

body.dark-mode .summary {
	background: #1e1e3a;
	color: #a0a0a0;
}

body.dark-mode .pages {
	color: #a0a0a0;
}

body.dark-mode #forum table {
	border-color: #2a2a4a;
}

body.dark-mode #forum .topic-item {
	border-color: #2a2a4a;
}

body.dark-mode #forum .header {
	background: #1e1e3a;
}

body.dark-mode #forum .name {
	background: #0f3460;
}

body.dark-mode #forum .title {
	border-color: #2a2a4a;
}

body.dark-mode #forum .bar {
	border-color: #707070;
}

body.dark-mode .statLine td {
	border-color: #2a2a4a;
}

body.dark-mode .statCard {
	background-color: #0f3460;
}

body.dark-mode .lrgStat2,
body.dark-mode .lrgStat3,
body.dark-mode .lrgStat4 {
	color: #e0e0e0;
}

body.dark-mode .col2Label,
body.dark-mode .col1MonthLabel {
	color: #e0e0e0;
}

body.dark-mode .col1Label {
	color: #707070;
}

body.dark-mode .todayStat {
	color: #e0e0e0;
}

body.dark-mode .label {
	color: #707070;
}

body.dark-mode th {
	color: #707070;
}

body.dark-mode .barGray {
	background-color: #2a2a4a;
}

body.dark-mode .blockGray {
	background-color: #2a2a4a;
}

body.dark-mode .blockDarkGray {
	background-color: #555;
}

body.dark-mode .barLegendLeft,
body.dark-mode .barLegendRight {
	color: #707070;
}

body.dark-mode .upvote span {
	color: #707070;
	background-color: #1e1e3a;
}

body.dark-mode .menu2 li a,
body.dark-mode .menu2 li a:visited {
	color: #64b5f6;
}

body.dark-mode .menu2 li a:hover {
	background-color: #1e1e3a;
}

body.dark-mode a.iogc-SidePanel-title,
body.dark-mode div.iogc-SidePanel-title {
	color: white;
}

body.dark-mode .iogc-SidePanel-inner .iogc-LoginPanel-playerRow:not(:last-child) {
	border-color: #2a2a4a;
}

body.dark-mode .iogc-noclick a {
	color: #e0e0e0;
}

body.dark-mode .footerHeading {
	color: #707070;
	border-color: #2a2a4a;
}

body.dark-mode .footerSection {
	color: #a0a0a0;
}

body.dark-mode .quoteh {
	color: #e0e0e0;
}

body.dark-mode .quote {
	color: #a0a0a0;
}

body.dark-mode .quoteAuth {
	color: #707070;
}

body.dark-mode #profile .date {
	color: #707070;
}

body.dark-mode #profile .tagline {
	color: #a0a0a0;
}

body.dark-mode .all-item .footer {
	color: #707070;
}

body.dark-mode .sideStats .label {
	color: #a0a0a0;
}

body.dark-mode .iogc-AvailableGameSidePanel .iogc-SidePanel-inner > div > div:not(:last-child),
body.dark-mode .iogc-favoritePanel-list > tbody > tr:not(:last-child) {
	border-color: #2a2a4a;
}

body.dark-mode .social-icon.tiktok,
body.dark-mode .social-icon.x-twitter {
	background-color: #333;
}


/* ============================================================
   CORE GWT MAIN.CSS OVERRIDES
   ============================================================ */

body.dark-mode .iogc-GameWindow {
	background-color: #16213e;
}

body.dark-mode .iogc-GameWindow-container {
	background-color: #16213e;
	border-color: #2a2a4a;
}

body.dark-mode .iogc-GameWindow-layout {
	background-color: #1e1e3a;
}

body.dark-mode .iogc-GameWindow-table {
	background-color: #16213e;
}

body.dark-mode .gwt-DialogBox {
	background-color: #16213e;
	color: #e0e0e0;
}

body.dark-mode .gwt-DialogBox .Caption {
	color: #e0e0e0;
}

body.dark-mode .iogc-SidePanel-inner {
	background-color: #16213e;
	border-color: #2a2a4a;
	color: #e0e0e0;
}

body.dark-mode .iogc-DialogOuter {
	background-color: #16213e;
	border-color: #2a2a4a;
	color: #e0e0e0;
}

body.dark-mode .gwt-Button {
	color: #e0e0e0;
}

body.dark-mode .iogc-ChatPanel-messages {
	background-color: #1e1e3a;
	color: #e0e0e0;
}

body.dark-mode .iogc-ChatPanel-messages a {
	color: #64b5f6;
}

body.dark-mode .gwt-MenuBarPopup {
	background-color: #16213e;
	border-color: #2a2a4a;
}

body.dark-mode .gwt-MenuBarPopup .gwt-MenuItem {
	color: #e0e0e0;
}

body.dark-mode .gwt-MenuBarPopup .gwt-MenuItem-selected {
	background-color: #0f3460;
	color: #e0e0e0;
}

body.dark-mode .iogc-CountdownPanel {
	background-color: #1e1e3a;
	border-color: #2a2a4a;
	color: #e0e0e0;
}

body.dark-mode .iogc-Controls {
	background-color: #1e1e3a;
}

body.dark-mode .rdews-RoundedComposite {
	background-color: #2a2a4a;
}

body.dark-mode .iogc-LoginPanel-menuPopup {
	background-color: #16213e;
	border-color: #2a2a4a;
}

body.dark-mode .iogc-LoginPanel-menu .gwt-MenuItem {
	color: #e0e0e0;
}

body.dark-mode .iogc-LoginPanel-menu .gwt-MenuItem:hover {
	background-color: #0f3460;
}

body.dark-mode .iogc-LoginPanel-menuItemToggle {
	color: #e0e0e0;
}

body.dark-mode .oauth-button {
	background-color: #1e1e3a;
	border-color: #2a2a4a;
	color: #e0e0e0;
}

body.dark-mode .iogc-AvailableGamePanel-tile {
	background-color: #16213e;
	border-color: #2a2a4a;
	color: #e0e0e0;
}

body.dark-mode .iogc-ChangeTableDialog-tile {
	background-color: #16213e;
	border-color: #2a2a4a;
	color: #e0e0e0;
}

body.dark-mode .iogc-ChangeTableDialog-tile:hover {
	background-color: #0f3460;
}

body.dark-mode .gwt-TextBox,
body.dark-mode .gwt-PasswordTextBox,
body.dark-mode .gwt-TextArea {
	background-color: #1e1e3a;
	color: #e0e0e0;
	border-color: #2a2a4a;
}

body.dark-mode .gwt-ListBox {
	background-color: #1e1e3a;
	color: #e0e0e0;
	border-color: #2a2a4a;
}

body.dark-mode .gwt-TabBar {
	border-color: #0f3460;
}

body.dark-mode .gwt-TabBar .gwt-TabBarItem {
	color: #a0a0a0;
}

body.dark-mode .gwt-TabBar .gwt-TabBarItem-selected {
	background-color: #0f3460;
	color: #e0e0e0;
}

body.dark-mode .gwt-TabPanelBottom {
	background-color: #16213e;
	border-color: #2a2a4a;
}

body.dark-mode .iogc-notice,
body.dark-mode .iogc-hint {
	color: #a0a0a0;
}

body.dark-mode .iogc-LoginPanel-heading {
	color: #e0e0e0;
}

body.dark-mode a.iogc-LoginPanel-nameHeading {
	color: #64b5f6;
}

body.dark-mode .iogc-LoginPanel-bigstat {
	color: #e0e0e0;
}

body.dark-mode .iogc-LoginPanel-quotePanel {
	color: #a0a0a0;
}

body.dark-mode .gwt-HTML {
	color: #e0e0e0;
}

body.dark-mode .gwt-Label {
	color: #e0e0e0;
}

body.dark-mode .iogc-PlayerPanel-name {
	color: #e0e0e0;
}


/* ============================================================
   GPOKR GAME OVERRIDES
   ============================================================ */

body.dark-mode .iogc-PlayerPanel .iogc-GamePanel {
	background-color: #0f3460;
	border-color: #2a2a4a;
}

body.dark-mode .gpokr-PlayerPanel-onsitout .iogc-GamePanel {
	background-color: #1e1e3a;
	border-color: #2a2a4a;
}

body.dark-mode .iogc-PlayerPanel-onturn .iogc-GamePanel {
	background-color: #1a3a2a;
	border-color: #02c45e;
}

body.dark-mode .gpokr-commandPanel {
	background-color: #1e1e3a;
}

body.dark-mode .gpokr-ChipStack-label {
	color: #e0e0e0;
	background-color: rgba(0, 0, 0, 0.7);
}


/* ============================================================
   KDICE GAME OVERRIDES
   ============================================================ */

body.dark-mode .iogc-PlayerPanel0,
body.dark-mode .iogc-PlayerPanel1,
body.dark-mode .iogc-PlayerPanel2,
body.dark-mode .iogc-PlayerPanel3,
body.dark-mode .iogc-PlayerPanel4,
body.dark-mode .iogc-PlayerPanel5,
body.dark-mode .iogc-PlayerPanel6 {
	background-color: #16213e;
}

body.dark-mode .iogc-PlayerPanel-onturn .iogc-playerStatsPanel,
body.dark-mode .iogc-PlayerPanel-onturn .iogc-PlayerPanel-name {
	background-color: #1a3a2a;
}

body.dark-mode .iogc-GamePanel {
	background-color: #1e1e3a;
}

body.dark-mode .kdice-commandPanel {
	background-color: #1e1e3a;
}

body.dark-mode .kdice-statSur {
	background-color: #2a2a4a;
}

body.dark-mode .kdice-battle {
	background-color: rgba(22, 33, 62, 0.9);
}

body.dark-mode .kdice-placeMeter,
body.dark-mode .kdice-luckMeter,
body.dark-mode .kdice-domMeter {
	color: #707070;
}

body.dark-mode .roundn {
	color: #707070;
}

body.dark-mode .selected {
	background-color: #0f3460;
	color: #e0e0e0;
}


/* ============================================================
   XSKETCH GAME OVERRIDES
   ============================================================ */

body.dark-mode .xsketch-paper {
	background-color: #1e1e3a;
}

body.dark-mode .gwt-MenuBar {
	background-color: #16213e;
	border-color: #2a2a4a;
	color: #e0e0e0;
}

body.dark-mode .gwt-MenuBar .gwt-MenuItem {
	color: #e0e0e0;
}


/* ============================================================
   MOBILE STYLE.CSS OVERRIDES
   ============================================================ */

body.dark-mode .backgroundArea {
	background-color: #1a1a2e;
}

body.dark-mode .player-card {
	background-color: #16213e;
	color: #e0e0e0;
}

body.dark-mode .chatarea {
	background-color: rgba(22, 33, 62, 0.95);
	color: #e0e0e0;
}

body.dark-mode .popup-message {
	background-color: rgba(22, 33, 62, 0.97);
	color: #e0e0e0;
}

body.dark-mode .entryBackground {
	background-color: #16213e;
}

body.dark-mode .formcontainer {
	background-color: rgba(0, 0, 0, 0.2);
}

body.dark-mode .tagline h1,
body.dark-mode .tagline h2 {
	color: rgba(255, 255, 255, 0.3);
}


/* ============================================================
   SCROLLBAR STYLING
   ============================================================ */

body.dark-mode ::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}

body.dark-mode ::-webkit-scrollbar-track {
	background: #1a1a2e;
}

body.dark-mode ::-webkit-scrollbar-thumb {
	background: #2a2a4a;
	border-radius: 4px;
}

body.dark-mode ::-webkit-scrollbar-thumb:hover {
	background: #3a3a5a;
}
