/**
 * LineAlgo Mastery Unified Theme — platform-wide dark branding
 * Matches linealgo.com/mastery: Inter, dark surfaces, mastery buttons, team logos.
 * Excludes /system (injected only on non-system pages).
 */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");

:root {
  --ms-bg: #0f1218;
  --ms-bg-elevated: #151a22;
  --ms-panel: #1a1f28;
  --ms-panel-2: #222833;
  --ms-panel-3: #2c3442;
  --ms-border: #343d4d;
  --ms-text: #e8ecf1;
  --ms-muted: #8b95a8;
  --ms-blue: #1a73e8;
  --ms-blue-hover: #1557b0;
  --ms-green: #5fba7d;
  --ms-brand: #9bd51c;
  --ms-orange: #f5a623;
  --ms-radius: 6px;
  --ms-radius-lg: 8px;
  --ms-radius-pill: 980px;
  --ms-font: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  --ms-mono: "SF Mono", "Roboto Mono", ui-monospace, monospace;
}

html.la-mastery-theme {
  color-scheme: dark;
}

html.la-mastery-theme,
html.la-mastery-theme body {
  font-family: var(--ms-font) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html.la-mastery-theme body,
html.la-mastery-theme body.la-branded,
html.la-mastery-theme body.la-platform,
html.la-mastery-theme body:not(.ms-body) {
  background: var(--ms-bg) !important;
  color: var(--ms-text) !important;
}

/* ── Headers & nav (live newspaper + paper shell) ── */
html.la-mastery-theme .live-header,
html.la-mastery-theme .paper-header,
html.la-mastery-theme body.la-branded .paper-header {
  background: var(--ms-bg-elevated) !important;
  color: var(--ms-text) !important;
  border-bottom: 1px solid var(--ms-border) !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.4);
}

html.la-mastery-theme .live-wordmark span,
html.la-mastery-theme .paper-wordmark,
html.la-mastery-theme .paper-wordmark span {
  color: var(--ms-text) !important;
  font-family: var(--ms-font) !important;
  font-weight: 700 !important;
}

html.la-mastery-theme .la-header-wordmark {
  color: #1a73ff !important;
  font-family: var(--ms-font) !important;
  font-weight: 700 !important;
}

html.la-mastery-theme .live-wordmark em,
html.la-mastery-theme .paper-wordmark em {
  color: var(--ms-brand) !important;
  font-style: normal !important;
}

html.la-mastery-theme .la-header-wordmark em {
  background: linear-gradient(90deg, #a855f7 0%, #c026d3 55%, #e040fb 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  font-style: normal !important;
}

html.la-mastery-theme .live-wordmark small {
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .masthead-right,
html.la-mastery-theme .masthead-right strong {
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .masthead-right strong {
  color: var(--ms-text) !important;
}

html.la-mastery-theme .live-nav,
html.la-mastery-theme .section-switch,
html.la-mastery-theme .live-dateline,
html.la-mastery-theme .archive-date-bar {
  background: var(--ms-bg-elevated) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .live-nav a,
html.la-mastery-theme .section-switch a,
html.la-mastery-theme body.la-branded .paper-nav a,
html.la-mastery-theme .paper-nav a {
  color: var(--ms-muted) !important;
  background: transparent !important;
  border-bottom-color: transparent !important;
}

html.la-mastery-theme .live-nav a:hover,
html.la-mastery-theme .section-switch a:hover,
html.la-mastery-theme body.la-branded .paper-nav a:hover,
html.la-mastery-theme .paper-nav a:hover {
  color: var(--ms-text) !important;
  background: transparent !important;
}

html.la-mastery-theme .live-nav a.active,
html.la-mastery-theme .section-switch a.active,
html.la-mastery-theme body.la-branded .paper-nav a.active,
html.la-mastery-theme .paper-nav a.active {
  color: var(--ms-text) !important;
  border-bottom-color: var(--ms-brand) !important;
  background: transparent !important;
}

/* ── Stats bars & heroes ── */
html.la-mastery-theme .la-stats-bar,
html.la-mastery-theme .la-stats-bar--light,
html.la-mastery-theme #la-today-hero,
html.la-mastery-theme #la-stats-bar {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .la-stats-bar span[id^="stat-"],
html.la-mastery-theme #la-today-hero span {
  color: var(--ms-text) !important;
}

html.la-mastery-theme .la-stats-sep {
  color: var(--ms-border) !important;
}

/* ── Feature callouts & info drawer (live-newspaper hardcoded light panels) ── */
html.la-mastery-theme .feature-callout {
  border: 1px solid var(--ms-border) !important;
  border-left: 5px solid var(--ms-brand) !important;
  background: var(--ms-panel) !important;
  color: var(--ms-text) !important;
  border-radius: var(--ms-radius-lg);
}

html.la-mastery-theme .feature-callout strong {
  color: var(--ms-text) !important;
  font-family: var(--ms-font) !important;
  font-weight: 600;
}

html.la-mastery-theme .feature-callout p {
  color: var(--ms-muted) !important;
  font-weight: 500;
}

html.la-mastery-theme .feature-callout .new-tag {
  border-color: var(--ms-brand) !important;
  background: rgba(155, 213, 28, 0.12) !important;
  color: var(--ms-brand) !important;
}

html.la-mastery-theme .feature-callout .details-link {
  color: var(--ms-blue) !important;
  font-weight: 600;
}

html.la-mastery-theme .live-info-drawer {
  border: 1px solid var(--ms-border) !important;
  background: var(--ms-panel) !important;
  color: var(--ms-muted) !important;
  border-radius: var(--ms-radius-lg);
  overflow: hidden;
}

html.la-mastery-theme .live-info-drawer summary {
  color: var(--ms-text) !important;
  font-family: var(--ms-font) !important;
  font-size: 0.8125rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  list-style: none;
}

html.la-mastery-theme .live-info-drawer summary::-webkit-details-marker {
  display: none;
}

html.la-mastery-theme .live-info-drawer .rail-list {
  border-top: 1px solid var(--ms-border) !important;
}

html.la-mastery-theme .live-info-drawer .rail-item {
  border-right: 1px solid var(--ms-border) !important;
}

html.la-mastery-theme .live-info-drawer .rail-item b {
  color: var(--ms-text) !important;
  font-weight: 600;
}

html.la-mastery-theme .live-info-drawer .rail-item span {
  color: var(--ms-muted) !important;
  font-weight: 400;
}

@media (max-width: 768px) {
  html.la-mastery-theme .live-info-drawer .rail-item {
    border-right: 0 !important;
    border-bottom: 1px solid var(--ms-border) !important;
  }
}

/* ── Cards, panels, tables ── */
html.la-mastery-theme .scorecard,
html.la-mastery-theme .news-panel,
html.la-mastery-theme .step-card,
html.la-mastery-theme .status-card,
html.la-mastery-theme .la-glass-card,
html.la-mastery-theme .la-move-card,
html.la-mastery-theme .la-value-card,
html.la-mastery-theme .la-founding-inner,
html.la-mastery-theme body.la-branded .scorecard,
html.la-mastery-theme body.la-branded .news-panel,
html.la-mastery-theme body.la-branded .step-card,
html.la-mastery-theme body.la-branded .status-card,
html.la-mastery-theme body.la-branded .la-glass-card {
  background: var(--ms-panel) !important;
  border: 1px solid var(--ms-border) !important;
  color: var(--ms-text) !important;
  box-shadow: var(--la-shadow-sm) !important;
  border-radius: var(--ms-radius-lg) !important;
}

html.la-mastery-theme .page-title {
  border-bottom-color: var(--ms-border) !important;
}

html.la-mastery-theme .page-title h1 {
  color: var(--ms-text) !important;
  font-family: var(--ms-font) !important;
}

html.la-mastery-theme .page-title p,
html.la-mastery-theme .dateline {
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .agate-table,
html.la-mastery-theme .movement-table,
html.la-mastery-theme .timeline-table {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
}

html.la-mastery-theme .agate-table th,
html.la-mastery-theme .movement-table th,
html.la-mastery-theme .timeline-table th,
html.la-mastery-theme body.la-branded .agate-table th,
html.la-mastery-theme body.la-branded .movement-table th {
  background: var(--ms-panel-2) !important;
  color: var(--ms-muted) !important;
  border-color: var(--ms-border) !important;
}

html.la-mastery-theme .agate-table td,
html.la-mastery-theme .movement-table td,
html.la-mastery-theme .timeline-table td,
html.la-mastery-theme body.la-branded .agate-table td {
  color: var(--ms-text) !important;
  border-color: var(--ms-border) !important;
}

html.la-mastery-theme .agate-table tbody tr:hover td,
html.la-mastery-theme body.la-branded .agate-table tbody tr:hover td {
  background: rgba(26, 115, 232, 0.08) !important;
}

/* ── Buttons (mastery ms-btn pattern) ── */
html.la-mastery-theme .paper-cta,
html.la-mastery-theme .la-btn-primary,
html.la-mastery-theme .la-btn-primary-inline,
html.la-mastery-theme body.la-branded .paper-cta,
html.la-mastery-theme body.la-branded .la-btn-primary,
html.la-mastery-theme button.primary,
html.la-mastery-theme .ms-empty-cta {
  background: var(--ms-blue) !important;
  color: #fff !important;
  border: 1px solid transparent !important;
  border-radius: var(--ms-radius) !important;
  font-weight: 600 !important;
  font-size: 0.8125rem !important;
  box-shadow: none !important;
  transition: background 0.15s ease, transform 0.15s ease;
}

html.la-mastery-theme .paper-cta:hover,
html.la-mastery-theme .la-btn-primary:hover,
html.la-mastery-theme .la-btn-primary-inline:hover {
  background: var(--ms-blue-hover) !important;
  transform: translateY(-1px);
}

html.la-mastery-theme .paper-button,
html.la-mastery-theme .la-btn-secondary,
html.la-mastery-theme .la-btn-secondary-inline,
html.la-mastery-theme body.la-branded .paper-button,
html.la-mastery-theme body.la-branded .la-btn-secondary {
  background: var(--ms-panel-2) !important;
  color: var(--ms-text) !important;
  border: 1px solid var(--ms-border) !important;
  border-radius: var(--ms-radius) !important;
  font-weight: 600 !important;
}

html.la-mastery-theme .book-tab,
html.la-mastery-theme .cons-tab,
html.la-mastery-theme .cons-cohort,
html.la-mastery-theme .dfs-cohort-tab,
html.la-mastery-theme .la-chip,
html.la-mastery-theme body.la-branded .book-tab,
html.la-mastery-theme body.la-branded .cons-tab {
  background: var(--ms-panel-2) !important;
  border: 1px solid var(--ms-border) !important;
  color: var(--ms-muted) !important;
  border-radius: var(--ms-radius-pill) !important;
}

html.la-mastery-theme .book-tab.active,
html.la-mastery-theme .cons-tab.active,
html.la-mastery-theme .cons-cohort.active,
html.la-mastery-theme .dfs-cohort-tab.active,
html.la-mastery-theme .la-chip.active,
html.la-mastery-theme body.la-branded .book-tab.active {
  background: rgba(26, 115, 232, 0.15) !important;
  border-color: var(--ms-blue) !important;
  color: var(--ms-blue) !important;
}

/* ── Forms ── */
html.la-mastery-theme input,
html.la-mastery-theme select,
html.la-mastery-theme textarea,
html.la-mastery-theme body.la-branded input,
html.la-mastery-theme body.la-branded select,
html.la-mastery-theme body.la-branded textarea {
  background: var(--ms-panel-2) !important;
  border: 1px solid var(--ms-border) !important;
  color: var(--ms-text) !important;
  border-radius: var(--ms-radius) !important;
  color-scheme: dark;
}

html.la-mastery-theme input::placeholder,
html.la-mastery-theme textarea::placeholder {
  color: var(--ms-muted) !important;
}

/* ── Game / DFS panels ── */
html.la-mastery-theme body.la-branded .game-hero,
html.la-mastery-theme body.la-branded .pick-form-panel,
html.la-mastery-theme body.la-branded .dfs-control-bar,
html.la-mastery-theme body.la-branded .ss-hero,
html.la-mastery-theme .game-hero,
html.la-mastery-theme .dfs-control-bar {
  background: var(--ms-panel) !important;
  color: var(--ms-text) !important;
  border: 1px solid var(--ms-border) !important;
}

/* ── Platform chrome ── */
html.la-mastery-theme .la-warehouse-chip {
  background: var(--ms-panel-2) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .la-warehouse-chip[data-state="ok"] {
  border-color: rgba(95, 186, 125, 0.45) !important;
  background: rgba(95, 186, 125, 0.12) !important;
  color: var(--ms-green) !important;
}

html.la-mastery-theme .la-warehouse-chip[data-state="warn"] {
  border-color: rgba(245, 166, 35, 0.45) !important;
  background: rgba(245, 166, 35, 0.12) !important;
  color: var(--ms-orange) !important;
}

html.la-mastery-theme .la-platform-guide-fab {
  background: var(--ms-panel) !important;
  border-color: rgba(26, 115, 232, 0.45) !important;
  color: var(--ms-blue) !important;
  box-shadow: var(--la-shadow-md);
}

html.la-mastery-theme .la-platform-guide-fab:hover {
  background: var(--ms-panel-2) !important;
}

html.la-mastery-theme .la-mobile-nav {
  background: rgba(15, 18, 24, 0.94) !important;
  border-top-color: var(--ms-border) !important;
  backdrop-filter: saturate(140%) blur(12px);
}

html.la-mastery-theme .la-mobile-nav a {
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .la-mobile-nav a.active,
html.la-mastery-theme .la-mobile-nav a:hover {
  color: var(--ms-blue) !important;
}

html.la-mastery-theme .la-site-footer,
html.la-mastery-theme footer {
  background: var(--ms-bg-elevated) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .la-site-footer a,
html.la-mastery-theme footer a {
  color: var(--ms-text) !important;
}

/* ── Login / auth ── */
html.la-mastery-theme body.auth-page-body {
  background: var(--ms-bg) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .auth-brand-panel {
  background:
    radial-gradient(120% 80% at 0% 0%, rgba(26, 115, 232, 0.12), transparent 55%),
    radial-gradient(90% 70% at 100% 100%, rgba(155, 213, 28, 0.08), transparent 50%),
    linear-gradient(160deg, var(--ms-bg-elevated) 0%, var(--ms-bg) 100%) !important;
  border-right-color: var(--ms-border) !important;
}

html.la-mastery-theme .auth-brand-copy h1,
html.la-mastery-theme .auth-title {
  color: var(--ms-text) !important;
}

html.la-mastery-theme .auth-brand-copy p,
html.la-mastery-theme .auth-subtitle,
html.la-mastery-theme .auth-brand-foot {
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .auth-card {
  background: var(--ms-panel) !important;
  border: 1px solid var(--ms-border) !important;
  box-shadow: var(--la-shadow-md) !important;
}

html.la-mastery-theme .auth-tab {
  color: var(--ms-muted) !important;
  border-color: var(--ms-border) !important;
}

html.la-mastery-theme .auth-tab.active {
  color: var(--ms-text) !important;
  border-color: var(--ms-blue) !important;
  background: rgba(26, 115, 232, 0.1) !important;
}

html.la-mastery-theme .auth-submit,
html.la-mastery-theme #loginBtn,
html.la-mastery-theme #signupBtn {
  background: var(--ms-blue) !important;
  color: #fff !important;
  border-radius: var(--ms-radius) !important;
}

html.la-mastery-theme .auth-field input {
  background: var(--ms-panel-2) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

/* ── Team logos (shared with Mastery) ── */
html.la-mastery-theme .ms-team-logo,
html.la-mastery-theme .la-team-logo,
html.la-mastery-theme .ms-logo-fallback,
html.la-mastery-theme .la-logo-fallback,
html.la-mastery-theme .mlb-team-logo-fallback {
  border-radius: 4px;
  flex-shrink: 0;
  vertical-align: middle;
}

html.la-mastery-theme .ms-logo-fallback,
html.la-mastery-theme .la-logo-fallback,
html.la-mastery-theme .mlb-team-logo-fallback {
  display: inline-grid;
  place-items: center;
  background: var(--ms-panel-2);
  font-size: 0.6rem;
  font-weight: 800;
  color: var(--ms-muted);
}

html.la-mastery-theme .la-team-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

/* ── Kill legacy light inline backgrounds ── */
html.la-mastery-theme [style*="background:#f8"],
html.la-mastery-theme [style*="background: #f8"],
html.la-mastery-theme [style*="background:#f5"],
html.la-mastery-theme [style*="background:#f7"],
html.la-mastery-theme [style*="background:#eef"],
html.la-mastery-theme [style*="background:#faf"] {
  background: var(--ms-panel) !important;
  color: var(--ms-text) !important;
  border-color: var(--ms-border) !important;
}

html.la-mastery-theme #la-cookie-banner {
  background: var(--ms-panel) !important;
  color: var(--ms-text) !important;
  border-top: 1px solid var(--ms-border) !important;
}

html.la-mastery-theme #la-cookie-banner a {
  color: var(--ms-blue) !important;
}

/* ── Legal / prose pages ── */
html.la-mastery-theme .legal-shell,
html.la-mastery-theme .legal-content,
html.la-mastery-theme main.prose {
  color: var(--ms-text) !important;
}

html.la-mastery-theme .legal-content h1,
html.la-mastery-theme .legal-content h2,
html.la-mastery-theme main.prose h1,
html.la-mastery-theme main.prose h2 {
  color: var(--ms-text) !important;
}

html.la-mastery-theme .legal-content p,
html.la-mastery-theme main.prose p {
  color: var(--ms-muted) !important;
}

/* ── Live newspaper + legacy la-* token remap (html beats later :root from brand/design-system) ── */
html.la-mastery-theme {
  --la-bg: var(--ms-bg);
  --la-paper: var(--ms-bg);
  --la-surface: var(--ms-panel);
  --la-surface-muted: var(--ms-panel-2);
  --la-surface-paper: var(--ms-panel-2);
  --la-panel: var(--ms-panel);
  --la-ink: var(--ms-text);
  --la-muted: var(--ms-muted);
  --la-border: var(--ms-border);
  --la-border-strong: var(--ms-panel-3);
  --la-navy: var(--ms-bg-elevated);
  --la-blue: var(--ms-blue);
  --la-blue-hover: var(--ms-blue-hover);
  --la-green: var(--ms-brand);
  --la-green-brand: var(--ms-brand);
  --la-font: var(--ms-font);
  --la-display: var(--ms-font);
  --la-mono: var(--ms-mono);
  --la-radius-sm: var(--ms-radius);
  --la-radius-md: var(--ms-radius-lg);
  --la-radius-lg: 12px;
  --la-radius-pill: var(--ms-radius-pill);
  --la-shadow-sm: 0 1px 0 rgba(0, 0, 0, 0.35);
  --la-shadow-md: 0 12px 40px rgba(0, 0, 0, 0.45);
  --la-dark-bg: var(--ms-bg);
  --la-dark-surface: var(--ms-panel);
  --la-dark-surface-2: var(--ms-panel-2);
  --la-dark-border: var(--ms-border);
  --la-dark-ink: var(--ms-text);
  --la-dark-muted: var(--ms-muted);
  --la-dark-blue: var(--ms-blue);
  --la-dark-blue-hover: var(--ms-blue-hover);
  --la-dark-brand: var(--ms-brand);
  --la-dark-green: var(--ms-green);
  --newsprint: var(--ms-bg);
  --newsprint-deep: var(--ms-panel);
  --ink: var(--ms-text);
  --muted: var(--ms-muted);
  --rule: var(--ms-border);
  --navy: var(--ms-bg-elevated);
  --blue: var(--ms-blue);
  --green: var(--ms-brand);
  /* Live sports newspaper tokens (body.live-sports-paper defines dark --np-ink on light paper) */
  --np-paper: var(--ms-bg);
  --np-ink: var(--ms-text);
  --np-muted: var(--ms-muted);
  --np-rule: var(--ms-border);
  --np-rule-light: var(--ms-border);
}

html.la-mastery-theme body {
  background: var(--ms-bg) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .game-card,
html.la-mastery-theme .score-tile,
html.la-mastery-theme .classic-boxscore,
html.la-mastery-theme .boxscore-panel,
html.la-mastery-theme .movement-card,
html.la-mastery-theme .live-game-row,
html.la-mastery-theme .archive-toolbar {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .team-abbr {
  color: var(--ms-text) !important;
}

html.la-mastery-theme .team-abbr.winner {
  color: var(--ms-blue) !important;
}

/* ── Product pages token remap ── */
html.la-mastery-theme {
  --paper: var(--ms-bg);
  --panel: var(--ms-panel);
  --rule: var(--ms-border);
}

html.la-mastery-theme .paper-shell {
  background: transparent !important;
}

html.la-mastery-theme .status-card,
html.la-mastery-theme .page-status-grid article,
html.la-mastery-theme .consensus-taxonomy article,
html.la-mastery-theme .room-card,
html.la-mastery-theme .expert-card,
html.la-mastery-theme .leaderboard-card {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .page-status-grid article.active {
  border-color: var(--ms-blue) !important;
  background: rgba(26, 115, 232, 0.1) !important;
}

/* ── Algorithm results → mastery palette ── */
html.la-mastery-theme .algo-results-shell {
  background: var(--ms-bg) !important;
}

html.la-mastery-theme .algo-results-titlebar,
html.la-mastery-theme .algo-results-toolbar,
html.la-mastery-theme .algo-table-panel,
html.la-mastery-theme .algo-source-card,
html.la-mastery-theme .algo-day-card {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme body.algo-results-body {
  font-family: var(--ms-font) !important;
}

/* ── App shell alignment ── */
html.la-mastery-theme .app-shell,
html.la-mastery-theme .side-nav {
  background: var(--ms-bg-elevated) !important;
  border-color: var(--ms-border) !important;
}

html.la-mastery-theme .main-panel,
html.la-mastery-theme .top-bar,
html.la-mastery-theme .games-list article,
html.la-mastery-theme .selected-game,
html.la-mastery-theme .dfs-board {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .nav-item.active,
html.la-mastery-theme .nav-item:hover {
  border-color: rgba(155, 213, 28, 0.34) !important;
  background: rgba(155, 213, 28, 0.08) !important;
  color: var(--ms-text) !important;
}

/* ── Admin console ── */
html.la-mastery-theme body.la-mastery-admin .admin-main,
html.la-mastery-theme .admin-main {
  background: var(--ms-bg) !important;
}

html.la-mastery-theme .admin-card,
html.la-mastery-theme .admin-panel,
html.la-mastery-theme .admin-table-wrap,
html.la-mastery-theme .warning {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .admin-top h1,
html.la-mastery-theme .admin-label {
  color: var(--ms-text) !important;
}

html.la-mastery-theme .admin-nav.active,
html.la-mastery-theme .admin-nav:hover {
  border-color: rgba(155, 213, 28, 0.34) !important;
  background: rgba(155, 213, 28, 0.08) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .admin-main button,
html.la-mastery-theme .admin-main .admin-action {
  background: var(--ms-panel-2) !important;
  border: 1px solid var(--ms-border) !important;
  color: var(--ms-text) !important;
  border-radius: 6px !important;
}

html.la-mastery-theme .admin-main button.primary,
html.la-mastery-theme .admin-main .admin-action.primary {
  background: var(--ms-blue) !important;
  border-color: transparent !important;
  color: #fff !important;
}

/* ── Admin data integrity (admin-data.html) ── */
html.la-mastery-theme .di-section {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
}

html.la-mastery-theme .di-section > button.di-head {
  color: var(--ms-brand) !important;
  font-family: var(--ms-font) !important;
}

html.la-mastery-theme .di-title h1,
html.la-mastery-theme .di-body,
html.la-mastery-theme .di-token {
  color: var(--ms-text) !important;
  font-family: var(--ms-font) !important;
}

html.la-mastery-theme .di-token input,
html.la-mastery-theme .di-controls input[type="date"] {
  background: var(--ms-panel-2) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .di-controls button,
html.la-mastery-theme .di-action {
  background: var(--ms-blue) !important;
  border-color: transparent !important;
  color: #fff !important;
  font-family: var(--ms-font) !important;
}

/* ── Product pages light panels ── */
html.la-mastery-theme .product-pages .status-pill,
html.la-mastery-theme .room-thread,
html.la-mastery-theme .tool-panel {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

/* ── Platform walkthrough (inline light styles) ── */
html.la-mastery-theme .pw-tab {
  background: var(--ms-panel-2) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .pw-tab.active {
  background: var(--ms-blue) !important;
  border-color: var(--ms-blue) !important;
  color: #fff !important;
}

html.la-mastery-theme .pw-steps,
html.la-mastery-theme .pw-panel {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .pw-steps button {
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .pw-steps button.active {
  background: rgba(26, 115, 232, 0.12) !important;
  color: var(--ms-blue) !important;
}

html.la-mastery-theme .pw-checklist li {
  background: var(--ms-panel-2) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .pw-checklist strong {
  color: var(--ms-text) !important;
}

html.la-mastery-theme .pw-btn {
  background: var(--ms-blue) !important;
  border-color: var(--ms-blue) !important;
  color: #fff !important;
  border-radius: 6px !important;
}

html.la-mastery-theme .pw-btn.secondary {
  background: var(--ms-panel-2) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-blue) !important;
}

html.la-mastery-theme .pw-progress {
  background: var(--ms-panel-2) !important;
}

html.la-mastery-theme .pw-progress > span {
  background: var(--ms-blue) !important;
}

/* ── About / pain-points / system-logic prose pages ── */
html.la-mastery-theme .about-contact,
html.la-mastery-theme .about-card,
html.la-mastery-theme .sl-card,
html.la-mastery-theme .pp-card {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .btn-white,
html.la-mastery-theme .pp-cta a {
  background: var(--ms-panel-2) !important;
  color: var(--ms-blue) !important;
}

html.la-mastery-theme .la-nav {
  background: var(--ms-bg-elevated) !important;
  border-bottom-color: var(--ms-border) !important;
}

html.la-mastery-theme .la-nav a {
  color: var(--ms-text) !important;
}

/* ── Responsible gaming warning box ── */
html.la-mastery-theme .rg-warning {
  background: rgba(245, 166, 35, 0.12) !important;
  border-color: rgba(245, 166, 35, 0.35) !important;
}

html.la-mastery-theme .rg-warning p {
  color: var(--ms-text) !important;
}

/* ── Login page (login.css light remnants) ── */
html.la-mastery-theme .auth-shell,
html.la-mastery-theme .auth-aside {
  background: var(--ms-bg) !important;
}

html.la-mastery-theme .auth-message.error {
  background: rgba(231, 76, 60, 0.12) !important;
  border-color: rgba(231, 76, 60, 0.35) !important;
  color: #f5a0a0 !important;
}

html.la-mastery-theme .auth-message.success {
  background: rgba(95, 186, 125, 0.12) !important;
  border-color: rgba(95, 186, 125, 0.35) !important;
  color: #9bd9b0 !important;
}

html.la-mastery-theme .auth-divider {
  background: var(--ms-border) !important;
  color: var(--ms-muted) !important;
}

/* ── Product-pages.css light surface kill ── */
html.la-mastery-theme .paper-header,
html.la-mastery-theme .paper-footer,
html.la-mastery-theme .paper-main,
html.la-mastery-theme .status-board,
html.la-mastery-theme .consensus-board,
html.la-mastery-theme .expert-shell,
html.la-mastery-theme .leaderboard-shell,
html.la-mastery-theme .community-shell,
html.la-mastery-theme .contest-shell,
html.la-mastery-theme .research-shell,
html.la-mastery-theme .journey-shell,
html.la-mastery-theme .tools-shell,
html.la-mastery-theme .faq-shell,
html.la-mastery-theme .contact-shell {
  background: var(--ms-bg) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .paper-card,
html.la-mastery-theme .status-card,
html.la-mastery-theme .consensus-card,
html.la-mastery-theme .expert-profile,
html.la-mastery-theme .leaderboard-row,
html.la-mastery-theme .room-card,
html.la-mastery-theme .contest-card,
html.la-mastery-theme .research-card,
html.la-mastery-theme .tool-card,
html.la-mastery-theme .faq-item,
html.la-mastery-theme .contact-card {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme .paper-nav a,
html.la-mastery-theme .la-header-nav a {
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .paper-nav a:hover,
html.la-mastery-theme .paper-nav a.active,
html.la-mastery-theme .la-header-nav a:hover,
html.la-mastery-theme .la-header-nav a.active {
  color: var(--ms-text) !important;
  border-bottom-color: var(--ms-brand) !important;
}

html.la-mastery-theme .la-header-wordmark em,
html.la-mastery-theme .paper-wordmark em {
  color: var(--ms-brand) !important;
}

html.la-mastery-theme .paper-cta,
html.la-mastery-theme .la-cta-primary,
html.la-mastery-theme .status-cta {
  background: var(--ms-blue) !important;
  border-color: transparent !important;
  color: #fff !important;
  border-radius: 6px !important;
}

/* ── Expanded inline light background neutralizer ── */
html.la-mastery-theme [style*="background:#fff"],
html.la-mastery-theme [style*="background: #fff"],
html.la-mastery-theme [style*="background:#ffffff"],
html.la-mastery-theme [style*="background: #ffffff"],
html.la-mastery-theme [style*="background:#f9"],
html.la-mastery-theme [style*="background: #f9"],
html.la-mastery-theme [style*="background:#fbf"],
html.la-mastery-theme [style*="background:var(--bg,#fff)"],
html.la-mastery-theme [style*="background: var(--bg, #fff)"] {
  background: var(--ms-panel) !important;
  color: var(--ms-text) !important;
  border-color: var(--ms-border) !important;
}

html.la-mastery-theme [style*="color:var(--text-primary,#111)"],
html.la-mastery-theme [style*="color: var(--text-primary, #111)"] {
  color: var(--ms-text) !important;
}

/* ── Algorithm lab hero ── */
html.la-mastery-theme .algorithm-lab-shell .algo-lab-callout,
html.la-mastery-theme .algorithm-lab-shell .algo-evidence-guide,
html.la-mastery-theme .algorithm-lab-shell .algo-lab-notice {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
  box-shadow: inset 4px 0 0 var(--ms-blue) !important;
}

/* ── Theme collision guards (la-branded + la-mastery-theme + light token bleed) ── */
html.la-mastery-theme body.la-branded,
html.la-mastery-theme body.la-platform,
html.la-mastery-theme body.la-branded.la-platform {
  background-color: var(--ms-bg, #0f1218) !important;
  color: var(--ms-text, #e8ecf1) !important;
}

html.la-mastery-theme body.la-branded .paper-shell,
html.la-mastery-theme body.la-branded .paper-main,
html.la-mastery-theme body.la-branded main,
html.la-mastery-theme body.la-branded .product-main {
  color: var(--ms-text, #e8ecf1) !important;
}

html.la-mastery-theme .la-stats-bar--light,
html.la-mastery-theme .la-move-card,
html.la-mastery-theme .la-value-card,
html.la-mastery-theme .la-value-grid h2,
html.la-mastery-theme .la-platform-guide-fab {
  color: var(--ms-text, #e8ecf1) !important;
}

html.la-mastery-theme .la-platform-guide-fab {
  background: var(--ms-panel-2, #222833) !important;
  border-color: var(--ms-border, #343d4d) !important;
}

html.la-mastery-theme .la-mobile-nav {
  background: var(--ms-bg-elevated, #151a22) !important;
  border-top-color: var(--ms-border, #343d4d) !important;
}

html.la-mastery-theme .la-mobile-nav a {
  color: var(--ms-muted, #8b95a8) !important;
}

html.la-mastery-theme #la-onboard-overlay > div,
html.la-mastery-theme #la-onboard-overlay h2,
html.la-mastery-theme #la-onboard-overlay p,
html.la-mastery-theme #la-onboard-overlay div {
  color: inherit;
}

html.la-mastery-theme .leo-chat-msg,
html.la-mastery-theme .leo-chat-msg.system,
html.la-mastery-theme .leo-chat-msg.user {
  color: var(--ms-text, #e8ecf1) !important;
}

/* ── Live newspaper box scores (homepage + archive) — hardcoded dark rgba on dark shell ── */
html.la-mastery-theme .classic-stat-summary,
html.la-mastery-theme .classic-stat-summary-title,
html.la-mastery-theme .classic-stat-collapsible > summary {
  color: var(--ms-text) !important;
}

html.la-mastery-theme .classic-stat-summary::before {
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .classic-stat-summary-preview {
  color: var(--ms-muted) !important;
}

html.la-mastery-theme .live-paper-shell,
html.la-mastery-theme body.la-branded .live-paper-shell {
  background: transparent !important;
  color: var(--ms-text) !important;
}

/* ── Live sports newspaper page under mastery dark (body.live-sports-paper) ── */
html.la-mastery-theme body.live-sports-paper {
  --np-paper: var(--ms-bg);
  --np-ink: var(--ms-text);
  --np-muted: var(--ms-muted);
  --np-rule: var(--ms-border);
  --np-rule-light: var(--ms-border);
  background: var(--ms-bg) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme body.live-sports-paper .np-score-item,
html.la-mastery-theme body.live-sports-paper .np-game-headline,
html.la-mastery-theme body.live-sports-paper .np-game-headline .np-winner,
html.la-mastery-theme body.live-sports-paper .classic-stat-summary-title,
html.la-mastery-theme body.live-sports-paper h1,
html.la-mastery-theme body.live-sports-paper h2,
html.la-mastery-theme body.live-sports-paper h3,
html.la-mastery-theme body.live-sports-paper p,
html.la-mastery-theme body.live-sports-paper span,
html.la-mastery-theme body.live-sports-paper strong {
  color: var(--ms-text) !important;
}

html.la-mastery-theme body.live-sports-paper .np-score-strip {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid var(--ms-blue, #1a73e8) !important;
}

html.la-mastery-theme body.live-sports-paper .np-score-item,
html.la-mastery-theme body.live-sports-paper .box-score-card {
  background: var(--ms-panel) !important;
  border-color: var(--ms-border) !important;
  color: var(--ms-text) !important;
}

html.la-mastery-theme body.live-sports-paper .np-score-team-winner .np-score-abbr,
html.la-mastery-theme body.live-sports-paper .np-score-team-winner .np-score-runs {
  color: var(--ms-green, #22c55e) !important;
}

html.la-mastery-theme body.live-sports-paper .np-score-team-loser .np-score-abbr,
html.la-mastery-theme body.live-sports-paper .np-score-team-loser .np-score-runs {
  color: var(--ms-muted) !important;
  opacity: 0.75;
}

html.la-mastery-theme body.ms-body {
  background-color: var(--ms-bg, #0f1218) !important;
  color: var(--ms-text, #e8ecf1) !important;
}