/* ===========================
   Squares Pro Dark Mode - Phase 1 Foundation
   Safe global pass: shell, cards, panels, forms, tables, menus, and common inline blocks.
=========================== */
:root{
  --navy:#07111f;
  --navy2:#0b1729;
  --blue:#2563eb;
  --orange:#ff8a1f;
  --light:#0b1120;
  --border:#26364f;
  --text:#e5eefb;
  --muted:#95a3b8;
  --green:#22c55e;
  --yellow:#facc15;

  --dark-bg:#070b14;
  --dark-bg-soft:#0b1120;
  --dark-panel:#111827;
  --dark-panel-2:#162033;
  --dark-panel-3:#1e293b;
  --dark-border:#26364f;
  --dark-text:#e5eefb;
  --dark-muted:#95a3b8;
  --dark-hover:#1f3658;
}

html,
body{
  background:var(--dark-bg)!important;
  color:var(--dark-text)!important;
}

body,
.app,
main{
  background:linear-gradient(180deg,var(--dark-bg),var(--dark-bg-soft))!important;
}

.sidebar{
  background:linear-gradient(180deg,#07111f,#040711)!important;
  border-right:1px solid rgba(148,163,184,.16);
}

.logoMark{
  background:#111827!important;
  box-shadow:0 14px 32px rgba(0,0,0,.5)!important;
}
.logoMark span{
  background:#1e293b!important;
  border-color:#334155!important;
}
.logoMark span:nth-child(13){background:var(--orange)!important;}

.nav button:hover,
.nav button.active{
  background:linear-gradient(135deg,#123d73,#1d4ed8)!important;
  color:#fff!important;
}

.version{
  color:#8ea2bd!important;
  border-top-color:rgba(148,163,184,.16)!important;
}

.topbar h2,
h1,h2,h3,h4,
.boardCardTitle,
.heroTitle{
  color:var(--dark-text)!important;
}

.tag,
.sub,
.hint,
.empty,
.footerNote,
.boardCardMeta,
.heroSub,
.payoutReadout{
  color:var(--dark-muted)!important;
}

.card,
.panel,
.boardWrap,
.boardCard,
.winnerCard,
.contextMenu,
.notificationPanel,
.smartAlertPanel,
.workspaceDock,
.importCard,
.exportCard,
.snapshotCard,
.leagueCard,
.revenueCard,
.reportCard,
.actionCard,
.homeCard,
.timelineCard,
.searchPanel,
.gameScoreBox{
  background:linear-gradient(180deg,var(--dark-panel),#0f172a)!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.28)!important;
}

.card.big,
.dashboardHero{
  background:linear-gradient(135deg,#07111f,#123d73)!important;
  border:1px solid rgba(148,163,184,.18)!important;
  color:#fff!important;
}

.clickableCard:hover,
.boardCard:hover,
.actionCard:hover,
.homeCard:hover{
  box-shadow:0 14px 34px rgba(0,0,0,.38)!important;
}

label{
  color:#cbd5e1!important;
}

input,
select,
textarea,
.ownerInline,
.statusSelect{
  background:#0b1220!important;
  color:var(--dark-text)!important;
  border-color:var(--dark-border)!important;
}

input::placeholder,
textarea::placeholder{
  color:#64748b!important;
}

input:focus,
select:focus,
textarea:focus{
  outline:none!important;
  border-color:var(--orange)!important;
  box-shadow:0 0 0 3px rgba(255,138,31,.18)!important;
}

.btn.secondary,
button.secondary,
.pageBackBtn{
  background:#1e293b!important;
  color:#e5eefb!important;
  border-color:var(--dark-border)!important;
}

.btn.secondary:hover,
button.secondary:hover,
.contextMenu button:hover{
  background:var(--dark-hover)!important;
  color:#fff!important;
}

.list th,
.list td,
.winnerHistoryRow{
  border-color:var(--dark-border)!important;
}
.list th{
  background:#1e293b!important;
  color:#dbeafe!important;
}
.list td{
  color:var(--dark-text)!important;
}

.progressTrack{
  background:#26364f!important;
}

.presetChip,
.pill{
  background:#172554!important;
  color:#bfdbfe!important;
  border-color:#1d4ed8!important;
}

.statusOpen,
.statusPaid,
.paidRow{
  background:#064e3b!important;
  color:#bbf7d0!important;
}
.statusFilling{
  background:#451a03!important;
  color:#fde68a!important;
}
.statusLocked{
  background:#172554!important;
  color:#bfdbfe!important;
}
.statusFinal{
  background:#2e1065!important;
  color:#ddd6fe!important;
}
.statusArchived{
  background:#1f2937!important;
  color:#cbd5e1!important;
}
.statusOwe{
  background:#450a0a!important;
  color:#fecaca!important;
}

.contextMenu button{
  color:var(--dark-text)!important;
}

/* Keep the printable board itself clean and readable while the app shell is dark. */
table.board td.header{
  background:#334155!important;
  color:#f8fafc!important;
}
table.board td.owner{
  background:#f8fafc!important;
  color:#0f172a!important;
}
table.board td.owner:focus{
  background:#fff7cc!important;
}
table.board td.owner.selected{
  background:#fff200!important;
  color:#000!important;
}
.topName{
  color:#60a5fa!important;
  -webkit-text-stroke:1.5px #020617!important;
}
.sideName{
  -webkit-text-stroke:1.5px #020617!important;
}

/* Leave print mode untouched. */
@media print{
  body.squares-board-printing,
  body.squares-board-printing *{
    color:#000!important;
  }
}

/* ===========================
   Squares Pro Dark Mode - Phase 2
   Page-specific polish: dashboard, ownership manager, revenue, reports, imports,
   notifications, snapshots, action center, search, and modal surfaces.
=========================== */

/* Common section/page wrappers */
.page,
.view,
.content,
.dashboard,
.homeView,
.leagueView,
.reportsView,
.revenueView,
.importExportView,
.actionCenterView,
.snapshotsView{
  background:transparent!important;
  color:var(--dark-text)!important;
}

/* Dashboard / home / league cards and metric blocks */
.dashboardGrid,
.dashboardSection,
.dashboardPanel,
.dashboardCard,
.dashboardStat,
.dashboardMetric,
.statCard,
.metricCard,
.kpiCard,
.summaryCard,
.insightCard,
.quickActionCard,
.quickStartCard,
.modeCard,
.recentBoardCard,
.openBoardCard,
.ownerCard,
.teamCard,
.payoutCard,
.paymentCard,
.historyCard,
.analyticsCard,
.reportTile,
.exportTile,
.importTile,
.snapshotTile,
.alertCard,
.notificationCard,
.searchResult,
.timelineContent,
.timelineItem,
.workspaceItem,
.dockPanel,
.emptyState,
.sectionCard,
.sectionPanel{
  background:linear-gradient(180deg,var(--dark-panel),#0f172a)!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.25)!important;
}

.dashboardStat:hover,
.metricCard:hover,
.quickActionCard:hover,
.recentBoardCard:hover,
.openBoardCard:hover,
.searchResult:hover,
.snapshotTile:hover{
  background:linear-gradient(180deg,#172033,#111827)!important;
  border-color:#365071!important;
}

/* Headings, labels, captions, and helper text */
.cardTitle,
.sectionTitle,
.panelTitle,
.metricTitle,
.statTitle,
.boardTitle,
.leagueTitle,
.reportTitle,
.snapshotTitle,
.alertTitle,
.notificationTitle,
.searchTitle,
.timelineTitle,
.ownerName,
.teamName,
.pageTitle,
.modalTitle{
  color:var(--dark-text)!important;
}
.cardSub,
.sectionSub,
.panelSub,
.metricSub,
.statSub,
.boardSub,
.leagueSub,
.reportSub,
.snapshotSub,
.alertSub,
.notificationSub,
.searchMeta,
.timelineMeta,
.ownerMeta,
.teamMeta,
.helperText,
.smallText,
.muted,
.caption,
.description{
  color:var(--dark-muted)!important;
}

/* Tables and row-based layouts outside the printable board */
.tableWrap,
.dataTableWrap,
.reportTableWrap,
.ownerTableWrap,
.paymentTableWrap,
.revenueTableWrap{
  background:#0f172a!important;
  border-color:var(--dark-border)!important;
}
.tableWrap table:not(.board),
.dataTable,
.reportTable,
.ownerTable,
.paymentTable,
.revenueTable{
  background:#0f172a!important;
  color:var(--dark-text)!important;
}
.tableWrap table:not(.board) th,
.dataTable th,
.reportTable th,
.ownerTable th,
.paymentTable th,
.revenueTable th{
  background:#1e293b!important;
  color:#dbeafe!important;
  border-color:var(--dark-border)!important;
}
.tableWrap table:not(.board) td,
.dataTable td,
.reportTable td,
.ownerTable td,
.paymentTable td,
.revenueTable td,
.row,
.listRow,
.ownerRow,
.paymentRow,
.revenueRow,
.reportRow,
.historyRow,
.snapshotRow,
.alertRow,
.notificationRow{
  background:#0f172a!important;
  color:var(--dark-text)!important;
  border-color:var(--dark-border)!important;
}
.tableWrap table:not(.board) tr:nth-child(even) td,
.dataTable tr:nth-child(even) td,
.reportTable tr:nth-child(even) td,
.ownerTable tr:nth-child(even) td,
.paymentTable tr:nth-child(even) td,
.revenueTable tr:nth-child(even) td{
  background:#111827!important;
}
.row:hover,
.listRow:hover,
.ownerRow:hover,
.paymentRow:hover,
.revenueRow:hover,
.reportRow:hover,
.historyRow:hover,
.snapshotRow:hover,
.alertRow:hover,
.notificationRow:hover{
  background:#172033!important;
}

/* Modals, drawers, dropdowns, popovers */
.modal,
.modalCard,
.modalContent,
.drawer,
.drawerPanel,
.popover,
.dropdown,
.dropdownMenu,
.menu,
.flyout,
.confirmBox,
.dialog,
.dialogCard{
  background:linear-gradient(180deg,var(--dark-panel),#0f172a)!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
  box-shadow:0 24px 60px rgba(0,0,0,.55)!important;
}
.modalOverlay,
.overlay,
.backdrop{
  background:rgba(2,6,23,.78)!important;
}

/* Form builders, search, imports, reports */
.formCard,
.formGrid,
.fieldGroup,
.inputGroup,
.searchBox,
.searchInputWrap,
.filterBar,
.filterChip,
.importDropzone,
.dropZone,
.uploadBox,
.previewBox,
.mappingBox,
.validationBox,
.reportFilter,
.analyticsBox,
.revenueSummary,
.payoutSummary{
  background:#0f172a!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.filterChip,
.chip,
.badge,
.counterBadge{
  background:#172554!important;
  border-color:#1d4ed8!important;
  color:#bfdbfe!important;
}

/* Warning / danger / success blocks tuned for dark mode */
.warning,
.warnBox,
.notice,
.noticeBox,
.importWarning,
.alertWarning{
  background:#451a03!important;
  border-color:#92400e!important;
  color:#fde68a!important;
}
.danger,
.errorBox,
.importError,
.alertDanger,
.deleteBox{
  background:#450a0a!important;
  border-color:#991b1b!important;
  color:#fecaca!important;
}
.success,
.successBox,
.importSuccess,
.alertSuccess{
  background:#052e24!important;
  border-color:#047857!important;
  color:#bbf7d0!important;
}
.info,
.infoBox,
.alertInfo{
  background:#172554!important;
  border-color:#1d4ed8!important;
  color:#bfdbfe!important;
}

/* Icon buttons and compact actions */
.iconBtn,
.smallBtn,
.ghostBtn,
.kebabBtn,
.actionBtn,
.tabBtn,
.segmentBtn{
  background:#1e293b!important;
  border-color:var(--dark-border)!important;
  color:#e5eefb!important;
}
.iconBtn:hover,
.smallBtn:hover,
.ghostBtn:hover,
.kebabBtn:hover,
.actionBtn:hover,
.tabBtn:hover,
.segmentBtn:hover,
.tabBtn.active,
.segmentBtn.active{
  background:#1f3658!important;
  color:#fff!important;
}

/* Progress, dividers, scrollable panels */
.divider,
.hr,
.sectionDivider{
  border-color:var(--dark-border)!important;
  background:var(--dark-border)!important;
}
.progressBar,
.progressRail,
.meterTrack{
  background:#26364f!important;
}
.progressFill,
.meterFill{
  background:linear-gradient(90deg,#2563eb,#ff8a1f)!important;
}
.scrollPanel,
.scrollArea,
.listPanel{
  background:#0f172a!important;
  border-color:var(--dark-border)!important;
}

/* Keep bright square selection behavior readable */
table.board td.owner.locked,
table.board td.owner.paid{
  color:#0f172a!important;
}

/* ===========================
   Squares Pro Dark Mode - Phase 3
   Final polish pass: remaining named components, overlays, alerts,
   command palette, imports, home widgets, dashboard game-day, reports,
   snapshots, activity rows, focus/hover states, and custom scrollbars.
=========================== */

/* App shell finishing touches */
.topbar{
  background:rgba(7,17,31,.92)!important;
  border-bottom:1px solid rgba(148,163,184,.16)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(14px)!important;
}
.footer{
  background:#070b14!important;
  border-top:1px solid rgba(148,163,184,.14)!important;
  color:var(--dark-muted)!important;
}
.brand strong,
.eyebrow,
.heroLabel,
.leagueBannerLabel{
  color:#93c5fd!important;
}
.meta,
.metric,
.dashBoardMetaLine,
.leagueUpdated,
.sessionDetails{
  color:var(--dark-muted)!important;
}

/* Home page widgets */
.homeHero,
.commissionerHero,
.sessionHero,
.reportsHero,
.snapshotsHero,
.importExportHero{
  background:linear-gradient(135deg,#07111f,#0f2f57 55%,#111827)!important;
  border:1px solid rgba(148,163,184,.18)!important;
  color:#f8fafc!important;
  box-shadow:0 20px 55px rgba(0,0,0,.34)!important;
}
.homePrimary,
.homeWidget,
.homeHealthCard,
.homeLeagueCard,
.homeQuickLaunch,
.homeContinueBox,
.homeFavoritePicker,
.homeListItem,
.homeActivityItem,
.homeHealthItem,
.homeRevenueBig,
.moneyTile,
.metric,
.commissionerCard,
.activeLeagueBanner{
  background:linear-gradient(180deg,#111827,#0f172a)!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.homeWidgetRow,
.homeListBar,
.homeMiniStats,
.homeFavoriteActions,
.homeWidgetProgress,
.homeStatsGrid,
.homeInsightGrid{
  border-color:var(--dark-border)!important;
}
.homeFavoriteBtn,
.homeFavoriteToggle,
.playerPackBtn,
.compactScoreBtn,
.tinyBtn{
  background:#1e293b!important;
  border-color:var(--dark-border)!important;
  color:#e5eefb!important;
}
.homeFavoriteBtn:hover,
.homeFavoriteToggle:hover,
.playerPackBtn:hover,
.compactScoreBtn:hover,
.tinyBtn:hover{
  background:#1f3658!important;
  color:#fff!important;
}

/* Dashboard game-day and live board polish */
.dashboardGameDayShell,
.dashboardGameHero,
.dashboardStatusTiles,
.dashboardDropPanel,
.dashboardLiveBoardCard,
.dashboardPlayerHighlight,
.dashboardAlertsPanel,
.dashboardAlert,
.dashboardBoardStatus,
.dashboardProgressWrap,
.dashboardTimelineItem,
.dashboardScoreGrid,
.dashBoardTable,
.dashWinnerLine,
.dashCorner,
.dashTeamTop,
.dashTeamLeft,
.dashBoardStage{
  background:linear-gradient(180deg,#111827,#0f172a)!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.dashboardAlertBtn,
.dashboardScoreActions button,
.dashboardHeroActions button,
.dashboardActionRow button{
  border-color:var(--dark-border)!important;
}
.dashboardHighlightStatus,
.dashboardBoardStatus,
.dashboardAlertIcon,
.dashboardTimelineIcon,
.dashScoreModeLabel{
  background:#172554!important;
  color:#bfdbfe!important;
  border-color:#1d4ed8!important;
}
.dashboardProgressPrimary,
.dashboardProgressMeta,
.dashboardProgress,
.dashBoardMetaLine{
  color:var(--dark-muted)!important;
}

/* Reports, revenue, analytics */
.reportBar,
.reportsGrid,
.reportsSplit,
.reportHeroStats,
.reportMiniStats,
.reportStatList,
.reportProgressBlock,
.reportProgressHeader,
.reportBoardRow,
.reportPaymentRow,
.reportPlayerRow,
.reportPlayerMain,
.revenueCards,
.revenueBreakdown,
.revenueMiniTotals{
  background:#0f172a!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.reportRank,
.rankBadge,
.winBadge{
  background:#172554!important;
  color:#bfdbfe!important;
  border-color:#1d4ed8!important;
}

/* Action center, notifications, alerts */
.actionCenterList,
.actionCenterTools,
.actionFilterChips,
.actionActivityPanel,
.actionActivityList,
.actionActivityItem,
.actionPinnedGroup,
.actionUtilityButtons,
.actionCenterUtilityRow,
.actionEmptyState,
.smartAlert,
.notificationItem,
.notificationPanelActions,
.notificationPanelHeader,
.notificationEmpty,
.notificationEmptyPolished{
  background:#0f172a!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.actionFilterChip,
.actionPinBtn,
.actionIcon,
.notificationItemIcon,
.notificationUnreadDot,
.smartAlertIcon{
  background:#172554!important;
  color:#bfdbfe!important;
  border-color:#1d4ed8!important;
}
.actionActivityDate,
.actionMetaStack,
.notificationMeta,
.notificationMessage,
.notificationBody,
.notificationItemText,
.notificationGroupLabel{
  color:var(--dark-muted)!important;
}
.notificationBell,
.smartAlertBell{
  background:#1e293b!important;
  border-color:var(--dark-border)!important;
  color:#e5eefb!important;
}

/* Global search and command palette */
.commandPaletteOverlay,
.importPreviewOverlay,
.snapshotCompareOverlay{
  background:rgba(2,6,23,.82)!important;
  backdrop-filter:blur(8px)!important;
}
.commandPalette,
.commandPaletteInputRow,
.commandPaletteTrigger,
.globalSearchResults,
.globalSearchItem,
.globalSearchGroup,
.globalSearchEmpty,
.importPreviewModal,
.importPreviewHeader,
.importPreviewBody,
.snapshotCompareModal,
.snapshotCompareHeader,
.snapshotCompareBody,
.snapshotCompareGrid,
.snapshotCompareRow{
  background:linear-gradient(180deg,#111827,#0f172a)!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.globalSearchItem:hover,
.commandPaletteTrigger:hover,
.snapshotCompareRow:hover{
  background:#172033!important;
}
.globalSearchIcon,
.globalSearchAction,
.commandPaletteIndex,
.snapshotIcon{
  background:#172554!important;
  color:#bfdbfe!important;
  border-color:#1d4ed8!important;
}
.globalSearchGroupTitle,
.searchMeta,
.snapshotMeta,
.snapshotCompareColumnTitle{
  color:var(--dark-muted)!important;
}

/* Imports, backups, snapshots */
.importDropZone,
.importButtonGrid,
.importPreviewActions,
.backupMain,
.backupInfoPanel,
.backupInfoGrid,
.backupHistoryItem,
.backupStats,
.snapshotSplit,
.snapshotItem,
.snapshotTop,
.snapshotMain,
.snapshotInfoPanel,
.snapshotInfoGrid,
.snapshotActions,
.snapshotCompareActions,
.snapshotCompareWarning{
  background:#0f172a!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.importDropZone:hover,
.backupHistoryItem:hover,
.snapshotItem:hover{
  background:#172033!important;
  border-color:#365071!important;
}
.importDropIcon,
.backupIcon,
.snapshotIcon{
  background:#172554!important;
  color:#bfdbfe!important;
  border-color:#1d4ed8!important;
}

/* Leagues and boards */
.leagueActions,
.leagueCards,
.leagueEmptyState,
.leagueMeta,
.boardActions,
.boardStatusRow,
.miniBoardSummary,
.matchup,
.teams,
.sheetHeader{
  background:#0f172a!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.statusPill,
.boardStatusRow .pill{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)!important;
}

/* Toasts */
.toastContainer > *,
.toast,
.toastMessage{
  background:#111827!important;
  border:1px solid var(--dark-border)!important;
  color:var(--dark-text)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.45)!important;
}

/* Health states */
.health-good,
.homeHealth-good,
.advancedGood{
  background:#052e24!important;
  color:#bbf7d0!important;
  border-color:#047857!important;
}
.health-warn,
.homeHealth-warn,
.advancedWarn{
  background:#451a03!important;
  color:#fde68a!important;
  border-color:#92400e!important;
}
.health-danger,
.homeHealth-danger{
  background:#450a0a!important;
  color:#fecaca!important;
  border-color:#991b1b!important;
}

/* Advanced player pack / ranking rows */
.advancedBar,
.advancedMetricHeader,
.advancedMetricRow,
.advancedPlayerRow,
.advancedPlayerStats,
.advancedRankingMain,
.advancedRankingRow{
  background:#0f172a!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.advancedPlayerRow:hover,
.advancedRankingRow:hover{
  background:#172033!important;
}

/* Workspace dock */
.workspaceDockItem,
.workspaceDockSave{
  background:#111827!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
}
.workspaceDockItem:hover,
.workspaceDockSave:hover{
  background:#1f3658!important;
}
.workspaceDockLabel,
.workspaceDockValue{
  color:var(--dark-muted)!important;
}
.workspaceDockIcon{
  background:#172554!important;
  color:#bfdbfe!important;
}

/* Better disabled and focus states */
button:disabled,
.btn:disabled,
input:disabled,
select:disabled,
textarea:disabled{
  opacity:.55!important;
  cursor:not-allowed!important;
}
button:focus-visible,
.btn:focus-visible,
.nav button:focus-visible,
.iconBtn:focus-visible,
.smallBtn:focus-visible,
.tinyBtn:focus-visible{
  outline:2px solid rgba(255,138,31,.85)!important;
  outline-offset:2px!important;
}

/* Native scrollbars for dark UI */
*{
  scrollbar-width:thin;
  scrollbar-color:#334155 #0b1120;
}
*::-webkit-scrollbar{
  width:10px;
  height:10px;
}
*::-webkit-scrollbar-track{
  background:#0b1120;
}
*::-webkit-scrollbar-thumb{
  background:#334155;
  border-radius:999px;
  border:2px solid #0b1120;
}
*::-webkit-scrollbar-thumb:hover{
  background:#475569;
}


/* Phase 4: remaining inline board-card polish */
.boardCards,
.ownerCards,
.boardGrid,
.boardList,
.savedBoards,
.playersGrid{
  color:var(--dark-text)!important;
}
.boardCard,
.ownerCard,
.playerCard,
.savedBoardCard,
.gameCard,
.quickBoardCard{
  background:linear-gradient(180deg,var(--dark-panel),#0f172a)!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
  box-shadow:0 14px 32px rgba(0,0,0,.28)!important;
}
.boardCard:hover,
.ownerCard:hover,
.playerCard:hover,
.savedBoardCard:hover,
.gameCard:hover,
.quickBoardCard:hover{
  border-color:rgba(255,138,31,.55)!important;
  transform:translateY(-1px);
}
.boardCard.activeBoard,
.savedBoardCard.activeBoard,
.ownerCard.is-active{
  border-color:var(--orange)!important;
  box-shadow:0 0 0 1px rgba(255,138,31,.45),0 18px 40px rgba(0,0,0,.35)!important;
}
.boardCardTitle,
.ownerCardTitle,
.playerCardName,
.savedBoardTitle,
.gameCardTitle{
  color:#f8fafc!important;
}
.boardCardMeta,
.ownerCardMeta,
.playerCardMeta,
.savedBoardMeta,
.gameCardMeta,
.cardMeta,
.miniMeta{
  color:var(--dark-muted)!important;
}
.progressTrack,
.boardProgress,
.ownerProgress,
.revenueProgress{
  background:#111827!important;
  border:1px solid var(--dark-border)!important;
}
.progressFill,
.boardProgressFill,
.ownerProgressFill,
.revenueProgressFill{
  background:linear-gradient(90deg,var(--orange),#facc15)!important;
}
.emptyState,
.blankState,
.noData,
.noResults,
.emptyPanel{
  background:rgba(15,23,42,.72)!important;
  border:1px dashed #334155!important;
  color:var(--dark-muted)!important;
}
.emptyState h2,
.emptyState h3,
.blankState h2,
.blankState h3,
.noData h2,
.noData h3,
.noResults h2,
.noResults h3{
  color:var(--dark-text)!important;
}

/* Phase 4: iPad/mobile dark refinements */
@media (max-width: 900px){
  .sidebar,
  aside,
  nav{
    background:#07111f!important;
    border-color:var(--dark-border)!important;
  }
  .view,
  main,
  .content{
    background:var(--dark-bg)!important;
  }
  .topbar,
  .pageHeader,
  .toolbar{
    background:rgba(15,23,42,.94)!important;
    border-color:var(--dark-border)!important;
  }
}

/* Phase 4: print/export should stay clean on paper */
@media print{
  body,
  .app,
  .content,
  .card,
  .panel,
  .section,
  table,
  th,
  td{
    background:#fff!important;
    color:#111827!important;
    box-shadow:none!important;
  }
  .sidebar,
  .nav,
  .topbar,
  .toolbar,
  .btn,
  button{
    display:none!important;
  }
}
