/* User Visual Design Classic Base — Phase 3D.1
   Preserves the original/simple user-facing look as a selectable skin while
   still using the central safe overlay and semantic action contracts.
*/
html[data-uvd-skin="classic-base"] {
  --uvd-active-skin-phase: phase-3c-0-1-classic-legacy-modal-audit;
  --uvd-active-skin-layout-policy: preserve-original-look;
  --uvd-active-skin-surface-model: legacy-compatible;
  --uvd-overlay-backdrop: rgba(0, 0, 0, .48);
  --uvd-overlay-backdrop-image: linear-gradient(180deg, rgba(0,0,0,.46), rgba(0,0,0,.58));
  --uvd-overlay-backdrop-filter: blur(6px) saturate(105%);
  --uvd-dialog-width: min(92vw, 620px);
  --uvd-dialog-width-notice: min(92vw, 650px);
  --uvd-dialog-bg: #ffffff;
  --uvd-dialog-text: #1f2937;
  --uvd-dialog-border: 1px solid rgba(15, 23, 42, .14);
  --uvd-dialog-shadow: 0 24px 70px rgba(15, 23, 42, .26);
  --uvd-dialog-radius: 18px;
  --uvd-action-height: 46px;
  --uvd-action-neutral-bg: linear-gradient(135deg, #3975C4, #6CA0DC);
  --uvd-action-neutral-border: rgba(57,117,196,.28);
  --uvd-action-neutral-shadow: 0 10px 24px rgba(57,117,196,.18);
}

/* Classic should not inherit Hero/Luxury drama from the new theme. */
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-action-variant="hero"] > a {
  min-height: var(--uvd-action-height) !important;
  gap: 8px !important;
  overflow: hidden !important;
  background: var(--uvd-action-neutral-bg) !important;
  border-color: var(--uvd-action-neutral-border) !important;
  box-shadow: var(--uvd-action-neutral-shadow) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-action-variant="hero"] > a::before,
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-action-variant="hero"] > a::after,
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-action-variant="hero"]::before,
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-action-variant="hero"]::after {
  content: none !important;
  display: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .uvd-action-hero-subtitle {
  display: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .uvd-action-hero-copy {
  display: inline !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .uvd-action-hero-icon {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}


/* Classic functional dialogs: simple, readable, and not Dark Luxury. */
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__card,
html[data-uvd-skin="classic-base"] .dc-modal,
html[data-uvd-skin="classic-base"] .push-result-modal-card,
html[data-uvd-skin="classic-base"] .account-trial-modal__card,
html[data-uvd-skin="classic-base"] .uvd-device-check-card {
  background: #fff !important;
  color: #1f2937 !important;
  border: 1px solid rgba(15,23,42,.13) !important;
  box-shadow: 0 24px 70px rgba(15,23,42,.25) !important;
  border-radius: 18px !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__titlebox h2,
html[data-uvd-skin="classic-base"] .push-result-modal-title {
  color: #111827 !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__eyebrow,
html[data-uvd-skin="classic-base"] .push-result-modal-subtitle {
  color: #475569 !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__x,
html[data-uvd-skin="classic-base"] .push-result-modal-close {
  background: #f1f5f9 !important;
  color: #334155 !important;
  border-color: rgba(15,23,42,.14) !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__close,
html[data-uvd-skin="classic-base"] .push-result-modal-ok,
html[data-uvd-skin="classic-base"] .push-result-modal-action,
html[data-uvd-skin="classic-base"] .dc-btn {
  background: linear-gradient(135deg, #3975C4, #6CA0DC) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 10px 22px rgba(57,117,196,.20) !important;
}
html[data-uvd-skin="classic-base"] .push-result-modal-action--ghost {
  background: #eef2f7 !important;
  color: #1f2937 !important;
  border: 1px solid rgba(15,23,42,.14) !important;
}

/* Respect the admin dashboard-notice color even in Classic. */
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--danger .dashboard-notice-modal__message{background:linear-gradient(180deg,#fff1f2,#ffe4e6)!important;color:#881337!important;border-color:#fecdd3!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--warning .dashboard-notice-modal__message{background:linear-gradient(180deg,#fffbeb,#fef3c7)!important;color:#92400e!important;border-color:#fde68a!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--success .dashboard-notice-modal__message{background:linear-gradient(180deg,#ecfdf5,#dcfce7)!important;color:#166534!important;border-color:#bbf7d0!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--info .dashboard-notice-modal__message{background:linear-gradient(180deg,#eff6ff,#dbeafe)!important;color:#1d4ed8!important;border-color:#bfdbfe!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--neutral .dashboard-notice-modal__message{background:linear-gradient(180deg,#f8fafc,#e2e8f0)!important;color:#334155!important;border-color:#cbd5e1!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--danger .dashboard-notice-modal__icon,html[data-uvd-skin="classic-base"] .dashboard-notice-modal--danger .dashboard-notice-modal__close{background:linear-gradient(135deg,#ef4444,#fb7185)!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--warning .dashboard-notice-modal__icon,html[data-uvd-skin="classic-base"] .dashboard-notice-modal--warning .dashboard-notice-modal__close{background:linear-gradient(135deg,#d97706,#fbbf24)!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--success .dashboard-notice-modal__icon,html[data-uvd-skin="classic-base"] .dashboard-notice-modal--success .dashboard-notice-modal__close{background:linear-gradient(135deg,#16a34a,#4ade80)!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--info .dashboard-notice-modal__icon,html[data-uvd-skin="classic-base"] .dashboard-notice-modal--info .dashboard-notice-modal__close{background:linear-gradient(135deg,#3975C4,#80b7ff)!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--neutral .dashboard-notice-modal__icon,html[data-uvd-skin="classic-base"] .dashboard-notice-modal--neutral .dashboard-notice-modal__close{background:linear-gradient(135deg,#64748b,#cbd5e1)!important;color:#111827!important}

/* Classic theme switcher: dark classic surface aligned with the dashboard theme. */
html[data-uvd-skin="classic-base"] .uvd-theme-switcher {
  background: linear-gradient(180deg, rgba(15,23,42,.92), rgba(8,18,39,.76)) !important;
  border-color: rgba(59,130,246,.28) !important;
  color: rgba(226,232,240,.96) !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-option {
  background: linear-gradient(180deg, rgba(15,31,62,.82), rgba(10,21,43,.72)) !important;
  border-color: rgba(148,163,184,.22) !important;
  color: rgba(226,232,240,.92) !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-option.is-active {
  background: linear-gradient(135deg, rgba(59,130,246,.92), rgba(37,99,235,.76)) !important;
  border-color: rgba(147,197,253,.58) !important;
  color: #fff !important;
}

/* Phase 3B.13 — Classic Legacy Modal Fidelity Fix
   Restore the original dashboard modal language for Classic. Classic is not a
   white/default browser dialog skin; it should keep the site's original dark,
   compact, blue-accent functional modals while still using the central overlay
   safety/visibility contract.
*/
html[data-uvd-skin="classic-base"] {
  --uvd-active-skin-phase: phase-3b-14-classic-action-neutrality-menu-fit;
  --uvd-overlay-backdrop: rgba(0, 0, 0, .70);
  --uvd-overlay-backdrop-image: radial-gradient(circle at center, rgba(57,117,196,.16), rgba(2,6,23,.84) 42%, rgba(0,0,0,.88));
  --uvd-overlay-backdrop-filter: blur(12px) saturate(112%);
  --uvd-dialog-bg: rgba(2, 6, 23, .96);
  --uvd-dialog-text: rgba(226, 232, 240, .96);
  --uvd-dialog-border: 1px solid rgba(148, 163, 184, .20);
  --uvd-dialog-shadow: 0 34px 105px rgba(0,0,0,.66), 0 0 0 1px rgba(148,163,184,.10) inset;
  --uvd-dialog-radius: 28px;
  --uvd-dialog-width-push-result: min(94vw, 465px);
  --uvd-dialog-width-notice: min(94vw, 660px);
  --uvd-dialog-width-device-confirm: min(94vw, 520px);
}

/* Classic dashboard notice modal — copied back to the original dark shell +
   admin-selected color body. */
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__card {
  --notice-accent:#3975C4;
  --notice-accent-2:#80b7ff;
  --notice-glow:rgba(57,117,196,.18);
  --notice-glow-strong:rgba(57,117,196,.34);
  width:min(94vw,660px) !important;
  padding:24px 24px 20px !important;
  border-radius:30px !important;
  overflow:hidden !important;
  background:radial-gradient(circle at 92% 0,var(--notice-glow),transparent 34%),linear-gradient(180deg,rgba(15,23,42,.98),rgba(2,6,23,.98)) !important;
  border:1px solid rgba(148,163,184,.20) !important;
  box-shadow:0 34px 110px rgba(0,0,0,.66),0 0 0 1px rgba(255,255,255,.04) inset !important;
  color:rgba(226,232,240,.96) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__card::before {
  content:'' !important;
  position:absolute !important;
  inset:0 0 auto 0 !important;
  height:5px !important;
  border-radius:30px 30px 0 0 !important;
  background:linear-gradient(90deg,var(--notice-accent),var(--notice-accent-2)) !important;
  box-shadow:0 0 24px var(--notice-glow-strong) !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__x {
  position:absolute !important;
  left:14px !important;
  top:12px !important;
  width:38px !important;
  height:38px !important;
  border:1px solid rgba(148,163,184,.18) !important;
  border-radius:15px !important;
  background:rgba(15,23,42,.72) !important;
  color:rgba(226,232,240,.85) !important;
  font-size:25px !important;
  line-height:34px !important;
  box-shadow:none !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__x:hover {
  background:rgba(30,41,59,.94) !important;
  color:#fff !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__hero {
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  padding-left:44px !important;
  margin-bottom:16px !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__icon {
  width:60px !important;
  height:60px !important;
  border-radius:22px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:31px !important;
  background:linear-gradient(135deg,var(--notice-accent),var(--notice-accent-2)) !important;
  box-shadow:0 18px 42px var(--notice-glow-strong),0 0 0 1px rgba(255,255,255,.12) inset !important;
  color:#fff !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__eyebrow {
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:6px 11px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  color:rgba(226,232,240,.96) !important;
  font-size:12px !important;
  font-weight:900 !important;
  margin-bottom:8px !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__titlebox h2 {
  margin:0 !important;
  font-size:20px !important;
  font-weight:950 !important;
  color:#fff !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__message {
  padding:16px 17px !important;
  border-radius:21px !important;
  box-shadow:0 1px 0 rgba(255,255,255,.34) inset !important;
  font-size:15px !important;
  line-height:2 !important;
  min-height:76px !important;
  max-height:min(50dvh,430px) !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__actions {
  display:flex !important;
  justify-content:flex-end !important;
  margin-top:18px !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal__close {
  border:0 !important;
  border-radius:16px !important;
  padding:11px 24px !important;
  background:linear-gradient(135deg,var(--notice-accent),var(--notice-accent-2)) !important;
  color:#fff !important;
  font-family:inherit !important;
  font-weight:900 !important;
  box-shadow:0 16px 34px var(--notice-glow-strong) !important;
}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--danger .dashboard-notice-modal__card{--notice-accent:#dc2626;--notice-accent-2:#fb7185;--notice-glow:rgba(220,38,38,.18);--notice-glow-strong:rgba(220,38,38,.32)}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--warning .dashboard-notice-modal__card{--notice-accent:#d97706;--notice-accent-2:#fbbf24;--notice-glow:rgba(217,119,6,.18);--notice-glow-strong:rgba(217,119,6,.32)}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--success .dashboard-notice-modal__card{--notice-accent:#16a34a;--notice-accent-2:#4ade80;--notice-glow:rgba(22,163,74,.18);--notice-glow-strong:rgba(22,163,74,.30)}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--info .dashboard-notice-modal__card{--notice-accent:#3975C4;--notice-accent-2:#80b7ff;--notice-glow:rgba(57,117,196,.18);--notice-glow-strong:rgba(57,117,196,.34)}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--neutral .dashboard-notice-modal__card{--notice-accent:#64748b;--notice-accent-2:#cbd5e1;--notice-glow:rgba(100,116,139,.18);--notice-glow-strong:rgba(100,116,139,.30)}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--danger .dashboard-notice-modal__message{background:linear-gradient(180deg,#fff1f2,#ffe4e6)!important;color:#881337!important;border-color:#fecdd3!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--warning .dashboard-notice-modal__message{background:linear-gradient(180deg,#fffbeb,#fef3c7)!important;color:#92400e!important;border-color:#fde68a!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--success .dashboard-notice-modal__message{background:linear-gradient(180deg,#ecfdf5,#dcfce7)!important;color:#166534!important;border-color:#bbf7d0!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--info .dashboard-notice-modal__message{background:linear-gradient(180deg,#eff6ff,#dbeafe)!important;color:#1d4ed8!important;border-color:#bfdbfe!important}
html[data-uvd-skin="classic-base"] .dashboard-notice-modal--neutral .dashboard-notice-modal__message{background:linear-gradient(180deg,#f8fafc,#e2e8f0)!important;color:#334155!important;border-color:#cbd5e1!important}

/* Classic push notification/result modal — restore the original dark dialog,
   icon badge, tone colors and compact button style. */
html[data-uvd-skin="classic-base"] .push-result-modal-overlay {
  --uvd-dialog-width-push-result: min(94vw,465px);
  color-scheme: dark !important;
}
html[data-uvd-skin="classic-base"] .push-result-modal-card {
  width:min(94vw,465px) !important;
  padding:24px 22px 20px !important;
  border-radius:28px !important;
  background:radial-gradient(circle at 88% 0,rgba(57,117,196,.24),transparent 38%),linear-gradient(180deg,rgba(15,23,42,.98),rgba(2,6,23,.98)) !important;
  box-shadow:0 34px 105px rgba(0,0,0,.66),0 0 0 1px rgba(148,163,184,.10) inset !important;
  border:1px solid rgba(148,163,184,.20) !important;
  color:rgba(226,232,240,.96) !important;
  text-align:right !important;
  overflow:auto !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
html[data-uvd-skin="classic-base"] .push-result-modal-card::before {
  content:'' !important;
  position:absolute !important;
  inset:0 0 auto 0 !important;
  height:5px !important;
  background:linear-gradient(90deg,#3975C4,#80b7ff,#f4c95d) !important;
  border-radius:28px 28px 0 0 !important;
  box-shadow:0 0 22px rgba(57,117,196,.32) !important;
}
html[data-uvd-skin="classic-base"] .push-result-modal-close {
  position:absolute !important;
  left:14px !important;
  top:12px !important;
  width:36px !important;
  height:36px !important;
  border:1px solid rgba(148,163,184,.16) !important;
  border-radius:14px !important;
  background:rgba(15,23,42,.72) !important;
  color:rgba(226,232,240,.78) !important;
  font-size:22px !important;
  line-height:34px !important;
  box-shadow:none !important;
}
html[data-uvd-skin="classic-base"] .push-result-modal-close:hover{background:rgba(30,41,59,.92)!important;color:#fff!important;border-color:rgba(148,163,184,.28)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-head{display:flex!important;gap:14px!important;align-items:center!important;padding-left:36px!important;margin-bottom:12px!important}
html[data-uvd-skin="classic-base"] .push-result-modal-icon{
  width:58px!important;height:58px!important;border-radius:22px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  font-size:29px!important;font-weight:900!important;
  background:linear-gradient(135deg,#3975C4,#65a5ff)!important;color:#fff!important;
  box-shadow:0 18px 40px rgba(57,117,196,.35),0 0 0 1px rgba(255,255,255,.12) inset!important;
}
html[data-uvd-skin="classic-base"] .push-result-modal-title{margin:0!important;font-size:18px!important;font-weight:900!important;color:#f8fafc!important}
html[data-uvd-skin="classic-base"] .push-result-modal-subtitle{margin:4px 0 0!important;font-size:12px!important;color:rgba(203,213,225,.66)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-message{
  margin:14px 0 18px!important;padding:14px 15px!important;border-radius:18px!important;
  background:rgba(15,23,42,.72)!important;color:rgba(226,232,240,.94)!important;
  line-height:2!important;font-size:14px!important;border:1px solid rgba(148,163,184,.14)!important;
  white-space:pre-wrap!important;box-shadow:0 1px 0 rgba(255,255,255,.04) inset!important;
}
html[data-uvd-skin="classic-base"] .push-result-modal-actions{display:flex!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important}
html[data-uvd-skin="classic-base"] .push-result-modal-ok,
html[data-uvd-skin="classic-base"] .push-result-modal-action{
  border:0!important;border-radius:16px!important;background:linear-gradient(135deg,#3975C4,#245da6)!important;color:#fff!important;
  font-weight:800!important;padding:10px 22px!important;box-shadow:0 16px 34px rgba(37,99,235,.32)!important;
}
html[data-uvd-skin="classic-base"] .push-result-modal-action--ghost{
  background:rgba(15,23,42,.62)!important;border:1px solid rgba(148,163,184,.18)!important;color:rgba(226,232,240,.88)!important;box-shadow:none!important;
}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="success"] .push-result-modal-icon{background:linear-gradient(135deg,#19a463,#43d38b)!important;box-shadow:0 16px 34px rgba(25,164,99,.25)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="success"]::before{background:linear-gradient(90deg,#159957,#7adf9f)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="success"] .push-result-modal-message{background:rgba(20,83,45,.26)!important;border-color:rgba(74,222,128,.20)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="error"] .push-result-modal-icon,
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="permission"] .push-result-modal-icon{background:linear-gradient(135deg,#d64545,#ff8a65)!important;box-shadow:0 18px 40px rgba(214,69,69,.32),0 0 0 1px rgba(255,255,255,.12) inset!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="error"]::before,
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="permission"]::before{background:linear-gradient(90deg,#d64545,#ff9a7a)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="network"] .push-result-modal-icon{background:linear-gradient(135deg,#f59f00,#ffd166)!important;box-shadow:0 18px 40px rgba(245,159,0,.32),0 0 0 1px rgba(255,255,255,.12) inset!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="network"]::before{background:linear-gradient(90deg,#f59f00,#ffd166)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="server"] .push-result-modal-icon{background:linear-gradient(135deg,#6c63ff,#64b5f6)!important;box-shadow:0 18px 40px rgba(108,99,255,.30),0 0 0 1px rgba(255,255,255,.12) inset!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="mobile"] .push-result-modal-icon,
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="info"] .push-result-modal-icon{background:linear-gradient(135deg,#3975C4,#80b7ff)!important;box-shadow:0 18px 40px rgba(57,117,196,.34),0 0 0 1px rgba(255,255,255,.12) inset!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="error"] .push-result-modal-message,
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="permission"] .push-result-modal-message{background:rgba(127,29,29,.25)!important;border-color:rgba(248,113,113,.22)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="network"] .push-result-modal-message{background:rgba(120,53,15,.25)!important;border-color:rgba(251,191,36,.24)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="server"] .push-result-modal-message{background:rgba(49,46,129,.24)!important;border-color:rgba(129,140,248,.22)!important}
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="mobile"] .push-result-modal-message,
html[data-uvd-skin="classic-base"] .push-result-modal-card[data-tone="info"] .push-result-modal-message{background:rgba(30,64,175,.20)!important;border-color:rgba(96,165,250,.20)!important}

/* Classic device confirmation dialog — restore the compact original dark box. */
html[data-uvd-skin="classic-base"] .dc-modal {
  width:100% !important;
  max-width:520px !important;
  background:rgba(2,6,23,.92) !important;
  border-radius:18px !important;
  box-shadow:0 18px 60px rgba(0,0,0,.60) !important;
  overflow:hidden !important;
  border:1px solid rgba(148,163,184,.16) !important;
  color:rgba(226,232,240,.92) !important;
}
html[data-uvd-skin="classic-base"] .dc-header{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:14px 16px!important;background:rgba(59,130,246,.14)!important;border-bottom:1px solid rgba(148,163,184,.12)!important}
html[data-uvd-skin="classic-base"] .dc-header h3{margin:0!important;font-size:16px!important;color:rgba(226,232,240,.95)!important;font-weight:900!important}
html[data-uvd-skin="classic-base"] .dc-body{padding:16px!important;color:rgba(226,232,240,.90)!important;line-height:1.9!important;font-size:14px!important;background:transparent!important}
html[data-uvd-skin="classic-base"] .dc-warn{margin-top:12px!important;padding:12px!important;border-radius:14px!important;background:rgba(251,191,36,.12)!important;border:1px solid rgba(251,191,36,.25)!important;color:rgba(255,232,179,.95)!important}
html[data-uvd-skin="classic-base"] .dc-note{display:block!important;margin-top:6px!important;font-size:12px!important;opacity:.9!important}
html[data-uvd-skin="classic-base"] .dc-actions{display:flex!important;gap:10px!important;padding:14px 16px 16px!important;background:rgba(2,6,23,.92)!important;border-top:1px solid rgba(148,163,184,.12)!important}
html[data-uvd-skin="classic-base"] .dc-btn{flex:1!important;border:none!important;border-radius:14px!important;padding:12px 10px!important;font-weight:900!important;font-size:13px!important;box-shadow:none!important}
html[data-uvd-skin="classic-base"] .dc-yes{background:linear-gradient(135deg,#22c55e,#16a34a)!important;color:#fff!important;box-shadow:0 10px 26px rgba(34,197,94,.18)!important}
html[data-uvd-skin="classic-base"] .dc-no{background:linear-gradient(135deg,#3975C4,#6CA0DC)!important;color:#fff!important;box-shadow:0 10px 26px rgba(59,130,246,.18)!important}
html[data-uvd-skin="classic-base"] .dc-meta{margin-top:10px!important;font-size:12px!important;color:rgba(226,232,240,.70)!important;background:rgba(148,163,184,.08)!important;padding:8px 10px!important;border-radius:10px!important}

@media(max-width:640px){
  html[data-uvd-skin="classic-base"] .dashboard-notice-modal__card{border-radius:24px!important;padding:21px 16px 16px!important;max-height:calc(100dvh - 24px)!important}
  html[data-uvd-skin="classic-base"] .dashboard-notice-modal__hero{gap:11px!important;padding-left:40px!important}
  html[data-uvd-skin="classic-base"] .dashboard-notice-modal__icon{width:50px!important;height:50px!important;border-radius:18px!important;font-size:26px!important}
  html[data-uvd-skin="classic-base"] .dashboard-notice-modal__titlebox h2{font-size:17px!important}
  html[data-uvd-skin="classic-base"] .dashboard-notice-modal__message{font-size:14px!important;line-height:2!important;padding:14px 13px!important;max-height:min(48dvh,390px)!important}
  html[data-uvd-skin="classic-base"] .dashboard-notice-modal__actions{justify-content:stretch!important}
  html[data-uvd-skin="classic-base"] .dashboard-notice-modal__close{width:100%!important}
}


/* ==========================================================
   Phase 3B.14 — Classic action neutrality and menu switcher fit.
   Classic must not receive Hero/Luxury visual variants. Shared semantic
   attributes remain in HTML,
but classic resolves downloads and idle online
   actions to the same legacy button language as other ordinary actions.
   ========================================================== */
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"]{
  position: static !important;
  isolation: auto !important;
  filter: none !important;
  transform: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"]::before,
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"]::after{
  content: none !important;
  display: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] > a{
  min-height: var(--uvd-action-height, 46px) !important;
  height: auto !important;
  padding: 14px 12px !important;
  gap: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: row !important;
  overflow: hidden !important;
  border-radius: inherit !important;
  background: var(--uvd-action-neutral-bg, linear-gradient(135deg, #3975C4, #6CA0DC)) !important;
  border: 1px solid var(--uvd-action-neutral-border, rgba(57,117,196,.28)) !important;
  box-shadow: var(--uvd-action-neutral-shadow, 0 10px 24px rgba(57,117,196,.18)) !important;
  color: #fff !important;
  text-shadow: none !important;
  letter-spacing: normal !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] > a::before,
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] > a::after{
  content: none !important;
  display: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] .uvd-action-hero-copy {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] .uvd-action-hero-icon {
  display: inline !important;
  order: 2 !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 0 0 6px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] .uvd-action-hero-title {
  display: inline !important;
  order: 1 !important;
  font: inherit !important;
  color: inherit !important;
  text-shadow: inherit !important;
  white-space: normal !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] .uvd-action-hero-subtitle {
  display: none !important;
}

html[data-uvd-skin="classic-base"] #side-menu .uvd-theme-switcher--menu {
  background: rgba(248,250,252,.96) !important;
  border-color: rgba(15,23,42,.14) !important;
  color: #334155 !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] #side-menu .uvd-theme-switcher--menu .uvd-theme-option {
  background: #fff !important;
  border-color: rgba(15,23,42,.14) !important;
  color: #334155 !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] #side-menu .uvd-theme-switcher--menu .uvd-theme-option.is-active {
  background: #e8f1ff !important;
  border-color: rgba(57,117,196,.42) !important;
  color: #1d4ed8 !important;
}

/* ==========================================================
   Phase 3B.15 — Classic Baseline Buttons + Classic Hero Downloads
   Source of truth: the original dashboard action recipe from the raw baseline.
   The new action order remains, but Classic owns its own button language.
   Dark Luxury hero/status visuals must never leak into classic-base.
   ========================================================== */
html[data-uvd-skin="classic-base"] {
  --uvd-active-skin-phase: phase-3b-15-classic-baseline-buttons-hero-downloads;
  --uvd-classic-action-bg: linear-gradient(180deg, rgba(2,6,23,.25), rgba(15,23,42,.55));
  --uvd-classic-action-bg-important: linear-gradient(135deg, rgba(59,130,246,.22), rgba(15,23,42,.55));
  --uvd-classic-action-border: rgba(148,163,184,.14);
  --uvd-classic-action-border-hover: rgba(59,130,246,.35);
  --uvd-classic-action-shadow: 0 10px 25px rgba(0,0,0,.28);
  --uvd-classic-action-shadow-hover: var(--u-shadow2, 0 10px 28px rgba(0,0,0,.40));
  --uvd-classic-action-radius: 16px;
  --uvd-classic-action-padding: 14px 14px;
  --uvd-classic-action-text: var(--u-text, rgba(226,232,240,.95));
  --uvd-action-neutral-bg: var(--uvd-classic-action-bg);
  --uvd-action-neutral-border: var(--uvd-classic-action-border);
  --uvd-action-neutral-shadow: var(--uvd-classic-action-shadow);
}

/* Phase 3D.20.7: exclude online-class CTA from generic Classic action overrides so dashboard.css owns legacy live/soon/idle pulse states. */
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-component="action-card"]:not([data-uvd-action-kind="online-class"]) > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: var(--uvd-classic-action-padding) !important;
  border-radius: var(--uvd-classic-action-radius) !important;
  text-decoration: none !important;
  color: var(--uvd-classic-action-text) !important;
  font-weight: 900 !important;
  text-align: center !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  border: 1px solid var(--uvd-classic-action-border) !important;
  background: var(--uvd-classic-action-bg) !important;
  box-shadow: var(--uvd-classic-action-shadow) !important;
  min-height: 0 !important;
  height: auto !important;
  letter-spacing: normal !important;
  text-shadow: none !important;
  overflow: hidden !important;
  transform: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-component="action-card"]:not([data-uvd-action-kind="online-class"]) > a:hover {
  transform: translateY(-2px) !important;
  border-color: var(--uvd-classic-action-border-hover) !important;
  box-shadow: var(--uvd-classic-action-shadow-hover) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section .activity-card.important:not([data-uvd-action-kind="downloads"]):not([data-uvd-action-kind="online-class"]) > a {
  background: var(--uvd-classic-action-bg-important) !important;
  border-color: rgba(59,130,246,.25) !important;
}


/* Phase 3D.20.8 — Classic idle online-class CTA should match the other classic important buttons.
   Only the idle/no-active-session state is brought back under the Classic important-button skin.
   Soon/live remain owned by dashboard.css so the yellow/red state colors and livePulseCard animation stay intact. */
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="online-class"][data-uvd-online-state="idle"] > a {
  background: var(--uvd-classic-action-bg-important) !important;
  border-color: rgba(59,130,246,.25) !important;
  box-shadow: var(--uvd-classic-action-shadow) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="online-class"][data-uvd-online-state="idle"] > a:hover {
  transform: translateY(-2px) !important;
  border-color: var(--uvd-classic-action-border-hover) !important;
  box-shadow: var(--uvd-classic-action-shadow-hover) !important;
}

/* Classic Downloads is still the first CTA, but with a classic/baseline hero card — not Dark Luxury. */
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"][data-uvd-action-variant="hero"] {
  position: relative !important;
  isolation: isolate !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"][data-uvd-action-variant="hero"]::before,
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"][data-uvd-action-variant="hero"]::after {
  content: '' !important;
  position: absolute !important;
  pointer-events: none !important;
  border-radius: 22px !important;
  opacity: .72 !important;
  z-index: -1 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"][data-uvd-action-variant="hero"]::before {
  inset: -5px 8px !important;
  background: radial-gradient(circle at 50% 0, rgba(59,130,246,.22), transparent 64%) !important;
  filter: blur(12px) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"][data-uvd-action-variant="hero"]::after {
  inset: auto 22px -6px !important;
  height: 14px !important;
  background: rgba(59,130,246,.16) !important;
  filter: blur(10px) !important;
  opacity: .55 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"][data-uvd-action-variant="hero"] > a {
  min-height: 68px !important;
  padding: 15px 18px !important;
  gap: 12px !important;
  border-radius: 18px !important;
  flex-direction: row !important;
  background:
    radial-gradient(circle at 82% 0, rgba(96,165,250,.24), transparent 46%),
    linear-gradient(135deg, rgba(59,130,246,.32), rgba(15,23,42,.62)) !important;
  border: 1px solid rgba(96,165,250,.34) !important;
  box-shadow: 0 16px 32px rgba(37,99,235,.18), 0 10px 25px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.11) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"][data-uvd-action-variant="hero"] > a::before,
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"][data-uvd-action-variant="hero"] > a::after {
  content: none !important;
  display: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] .uvd-action-hero-icon {
  order: 2 !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, rgba(255,255,255,.20), rgba(59,130,246,.20)) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.16) !important;
  filter: none !important;
  transform: none !important;
  font-size: 19px !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] .uvd-action-hero-copy {
  order: 1 !important;
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  min-width: 0 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] .uvd-action-hero-title {
  display: block !important;
  font: inherit !important;
  color: inherit !important;
  text-shadow: none !important;
  white-space: normal !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .activities-section [data-uvd-action-kind="downloads"] .uvd-action-hero-subtitle {
  display: block !important;
  font-size: 12px !important;
  line-height: 1.7 !important;
  font-weight: 750 !important;
  color: rgba(226,232,240,.70) !important;
  margin-top: 1px !important;
}


/* ==========================================================
   Phase 3C.0.1 — Classic Legacy Modal Audit & Restore
   Restore every legacy user-facing modal to the protected Classic baseline.
   Core still owns overlay visibility/backdrop/scroll-lock; Classic owns only
   the original dark modal appearance. This block intentionally comes last so
   earlier white/default compatibility rules cannot override Classic fidelity.
   ========================================================== */
html[data-uvd-skin="classic-base"] {
  --uvd-active-skin-phase: phase-3c-0-1-classic-legacy-modal-audit;
  --uvd-classic-modal-panel-bg: radial-gradient(circle at 92% 0, rgba(57,117,196,.18), transparent 34%), linear-gradient(180deg, rgba(15,23,42,.98), rgba(2,6,23,.98));
  --uvd-classic-modal-panel-border: rgba(148,163,184,.20);
  --uvd-classic-modal-panel-text: rgba(226,232,240,.96);
  --uvd-classic-modal-muted: rgba(203,213,225,.68);
  --uvd-classic-modal-shadow: 0 34px 105px rgba(0,0,0,.66), 0 0 0 1px rgba(148,163,184,.10) inset;
  --uvd-classic-modal-accent: #3975C4;
  --uvd-classic-modal-accent-2: #80b7ff;
  --uvd-classic-modal-accent-glow: rgba(57,117,196,.34);
}

/* Expired-course / account-access modal: exact Classic dark shell restored from baseline. */
html[data-uvd-skin="classic-base"] .account-trial-modal__card {
  position: relative !important;
  width: min(92vw, 620px) !important;
  max-height: calc(100dvh - 36px) !important;
  overflow: auto !important;
  border-radius: 30px !important;
  padding: 24px !important;
  background: radial-gradient(circle at 92% 0, rgba(251,191,36,.20), transparent 34%), linear-gradient(180deg, rgba(15,23,42,.98), rgba(2,6,23,.98)) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 34px 110px rgba(0,0,0,.66) !important;
  color: #e5e7eb !important;
  text-align: right !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__shade {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__x {
  position: absolute !important;
  left: 14px !important;
  top: 12px !important;
  width: 38px !important;
  height: 38px !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 15px !important;
  background: rgba(255,255,255,.08) !important;
  color: #fff !important;
  font-size: 24px !important;
  line-height: 34px !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__hero {
  display: flex !important;
  align-items: center !important;
  gap: 13px !important;
  margin-bottom: 16px !important;
  padding-left: 42px !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__icon {
  width: 62px !important;
  height: 62px !important;
  min-width: 62px !important;
  border-radius: 23px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 32px !important;
  background: linear-gradient(135deg, #fbbf24, #3b82f6) !important;
  box-shadow: 0 18px 42px rgba(251,191,36,.22) !important;
  color: #fff !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__eyebrow {
  display: inline-flex !important;
  margin-bottom: 8px !important;
  border-radius: 999px !important;
  padding: 6px 11px !important;
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  color: rgba(226,232,240,.96) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__title {
  margin: 0 !important;
  font-size: 20px !important;
  font-weight: 950 !important;
  color: #fff !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__message {
  border-radius: 22px !important;
  padding: 16px !important;
  background: linear-gradient(180deg, #fffbeb, #eff6ff) !important;
  border: 1px solid rgba(251,191,36,.25) !important;
  color: #1f2937 !important;
  line-height: 2 !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__items {
  display: grid !important;
  gap: 9px !important;
  margin-top: 12px !important;
  max-height: min(32dvh,260px) !important;
  overflow: auto !important;
  padding-left: 2px !important;
}
html[data-uvd-skin="classic-base"] .account-access-item {
  border-radius: 18px !important;
  padding: 11px 12px !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  line-height: 1.8 !important;
  opacity: 1 !important;
}
html[data-uvd-skin="classic-base"] .account-access-item__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  font-weight: 950 !important;
  color: #fff !important;
}
html[data-uvd-skin="classic-base"] .account-access-item__status {
  font-size: 11px !important;
  border-radius: 999px !important;
  padding: 4px 8px !important;
  background: rgba(251,191,36,.13) !important;
  border: 1px solid rgba(251,191,36,.24) !important;
  color: #fde68a !important;
  white-space: nowrap !important;
}
html[data-uvd-skin="classic-base"] .account-access-item__msg {
  font-size: 12px !important;
  color: rgba(226,232,240,.80) !important;
  margin-top: 4px !important;
  opacity: 1 !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__actions {
  display: flex !important;
  justify-content: flex-end !important;
  margin-top: 16px !important;
}
html[data-uvd-skin="classic-base"] .account-trial-modal__btn {
  border: 0 !important;
  border-radius: 16px !important;
  padding: 11px 24px !important;
  background: linear-gradient(135deg, #fbbf24, #3b82f6) !important;
  color: #fff !important;
  font-weight: 950 !important;
  font-family: inherit !important;
  box-shadow: 0 15px 34px rgba(59,130,246,.22) !important;
}

/* Avatar crop/delete modals: include them in the Classic modal audit. */
html[data-uvd-skin="classic-base"] .avatar-crop-panel,
html[data-uvd-skin="classic-base"] .avatar-confirm-panel {
  background: linear-gradient(180deg, rgba(15,23,42,.98), rgba(2,6,23,.98)) !important;
  border: 1px solid rgba(148,163,184,.22) !important;
  box-shadow: 0 24px 90px rgba(0,0,0,.55) !important;
  color: rgba(226,232,240,.98) !important;
  border-radius: 28px !important;
  overflow: hidden !important;
}
html[data-uvd-skin="classic-base"] .avatar-crop-head {
  border-bottom: 1px solid rgba(148,163,184,.14) !important;
  background: transparent !important;
  color: rgba(226,232,240,.98) !important;
}
html[data-uvd-skin="classic-base"] .avatar-crop-head p {
  color: rgba(226,232,240,.68) !important;
}
html[data-uvd-skin="classic-base"] .avatar-crop-close {
  background: rgba(148,163,184,.14) !important;
  color: #fff !important;
  border: 0 !important;
}
html[data-uvd-skin="classic-base"] .avatar-crop-stage {
  background: rgba(15,23,42,.72) !important;
  border: 1px solid rgba(148,163,184,.18) !important;
}
html[data-uvd-skin="classic-base"] .avatar-zoom-label {
  color: rgba(226,232,240,.80) !important;
}
html[data-uvd-skin="classic-base"] .avatar-secondary-btn {
  background: rgba(148,163,184,.14) !important;
  color: rgba(226,232,240,.94) !important;
  border: 1px solid rgba(148,163,184,.18) !important;
}
html[data-uvd-skin="classic-base"] .avatar-primary-btn {
  background: linear-gradient(135deg, #3b82f6, #8b5cf6) !important;
  color: #fff !important;
  box-shadow: 0 12px 28px rgba(59,130,246,.20) !important;
}
html[data-uvd-skin="classic-base"] .avatar-danger-btn {
  background: linear-gradient(135deg, #ef4444, #dc2626) !important;
  color: #fff !important;
}

/* Classic modal audit guard: all legacy modal panels must stay readable/dark. */
html[data-uvd-skin="classic-base"] .account-trial-modal,
html[data-uvd-skin="classic-base"] .dashboard-notice-modal,
html[data-uvd-skin="classic-base"] .push-result-modal-overlay,
html[data-uvd-skin="classic-base"] .avatar-crop-modal,
html[data-uvd-skin="classic-base"] .avatar-confirm-modal,
html[data-uvd-skin="classic-base"] #deviceConfirmOverlay {
  color-scheme: dark !important;
}

@media(max-width:640px){
  html[data-uvd-skin="classic-base"] .account-trial-modal__card{border-radius:24px!important;padding:20px 16px!important;max-height:calc(100dvh - 24px)!important;overflow:auto!important}
  html[data-uvd-skin="classic-base"] .account-trial-modal__hero{padding-left:38px!important;gap:10px!important}
  html[data-uvd-skin="classic-base"] .account-trial-modal__icon{width:52px!important;height:52px!important;min-width:52px!important;border-radius:18px!important;font-size:27px!important}
  html[data-uvd-skin="classic-base"] .account-trial-modal__title{font-size:17px!important;line-height:1.7!important}
  html[data-uvd-skin="classic-base"] .account-trial-modal__message{font-size:13.2px!important;line-height:1.95!important;padding:13px!important}
  html[data-uvd-skin="classic-base"] .account-access-item__top{flex-direction:column!important;align-items:flex-start!important}
  html[data-uvd-skin="classic-base"] .account-access-item__status{white-space:normal!important}
  html[data-uvd-skin="classic-base"] .account-trial-modal__actions{justify-content:stretch!important}
  html[data-uvd-skin="classic-base"] .account-trial-modal__btn{width:100%!important}
}

/* ==========================================================
   Phase 3D.1 — Classic User Page Shell Contract
   Classic remains the protected baseline; these variables only affect future
   opt-in .uvd-user-* wrappers and do not restyle existing legacy pages.
   ========================================================== */
html[data-uvd-skin="classic-base"] {
  --uvd-active-skin-phase: phase-3d-2-1-1-simple-pages-classic-restore-dark-polish;
  --uvd-user-shell-max: 980px;
  --uvd-user-shell-gutter: 28px;
  --uvd-user-shell-margin-y: 22px;
  --uvd-user-shell-padding: 22px;
  --uvd-user-shell-bg: rgba(255,255,255,.96);
  --uvd-user-shell-border: rgba(57,117,196,.18);
  --uvd-user-shell-shadow: 0 12px 28px rgba(15,23,42,.12);
  --uvd-user-card-bg: #ffffff;
  --uvd-user-card-border: rgba(57,117,196,.18);
  --uvd-user-card-shadow: 0 10px 24px rgba(15,23,42,.10);
  --uvd-user-title: #12345f;
  --uvd-user-muted: #526579;
  --uvd-user-input-bg: #ffffff;
  --uvd-user-input-border: rgba(57,117,196,.24);
  --uvd-user-button-bg: linear-gradient(135deg, #3975C4, #6CA0DC);
  --uvd-user-button-text: #ffffff;
  --uvd-user-button-border: rgba(57,117,196,.30);
  --uvd-user-button-secondary-bg: #f0f4ff;
  --uvd-user-button-secondary-text: #2851a3;
  --uvd-user-alert-bg: #f0f4ff;
  --uvd-user-alert-border: rgba(57,117,196,.18);
  --uvd-user-table-bg: #ffffff;
  --uvd-user-table-head-bg: rgba(57,117,196,.08);
}


/* ==========================================================
   Phase 3D.2.1 — Classic Simple User Page Contract Values
   Classic stays the protected baseline; these variables only affect pages that
   opted into the .uvd-user-* simple page shell.
   ========================================================== */
html[data-uvd-skin="classic-base"] {
  --uvd-active-skin-phase: phase-3d-2-1-1-simple-pages-classic-restore-dark-polish;
  --uvd-user-success-border: rgba(22,163,74,.24);
  --uvd-user-success-bg: rgba(220,252,231,.88);
  --uvd-user-success-text: #166534;
  --uvd-user-error-border: rgba(220,38,38,.24);
  --uvd-user-error-bg: rgba(254,226,226,.88);
  --uvd-user-error-text: #991b1b;
  --uvd-user-warning-border: rgba(217,119,6,.24);
  --uvd-user-warning-bg: rgba(254,243,199,.90);
  --uvd-user-warning-text: #92400e;
  --uvd-user-meter-bg: rgba(57,117,196,.10);
  --uvd-user-meter-border: rgba(57,117,196,.16);
  --uvd-user-progress-bg: linear-gradient(135deg, #3975C4, #6CA0DC);
  --uvd-user-rule-bg: #f8fbff;
  --uvd-user-rule-border: rgba(57,117,196,.14);
  --uvd-user-rule-text: #334155;
  --uvd-user-chip-bg: #f8fbff;
  --uvd-user-chip-border: rgba(57,117,196,.16);
  --uvd-user-chip-text: #334155;
  --uvd-user-new-bg: rgba(57,117,196,.10);
  --uvd-user-new-border: rgba(57,117,196,.25);
  --uvd-user-new-text: #12345f;
  --uvd-user-notification-row-bg: #ffffff;
  --uvd-user-notification-new-bg: linear-gradient(135deg, rgba(57,117,196,.09), rgba(255,255,255,.98));
  --uvd-user-notification-seen-bg: #ffffff;
  --uvd-user-notification-seen-text: #64748b;
  --uvd-user-notification-row-border: rgba(57,117,196,.13);
  --uvd-user-notification-row-hover-border: rgba(57,117,196,.26);
  --uvd-user-notification-row-shadow: 0 8px 18px rgba(15,23,42,.08);
  --uvd-user-notification-row-hover-shadow: 0 12px 26px rgba(15,23,42,.12);
  --uvd-user-notification-msg-text: #1f2937;
  --uvd-user-download-dialog-bg: #ffffff;
  --uvd-user-download-dialog-border: rgba(57,117,196,.18);
  --uvd-user-download-dialog-shadow: 0 18px 50px rgba(15,23,42,.20);
  --uvd-user-download-dialog-text: #1f2937;
}


/* ==========================================================
   Phase 3D.2.1 — Classic Simple Pages Baseline Restore
   Restores the original dark/glass baseline for change_password.php and
   notifications.php after Phase 3D.2 introduced the shared .uvd-user-* shell.
   Source baseline: raw html(1).zip inline styles for these two pages.
   ========================================================== */
html[data-uvd-skin="classic-base"] {
  --uvd-active-skin-phase: phase-3d-2-1-simple-pages-classic-restore-dark-polish;
  --uvd-user-text: rgba(226,232,240,.95);
  --uvd-user-card-text: rgba(226,232,240,.95);
  --uvd-user-title: rgba(226,232,240,.96);
  --uvd-user-muted: rgba(226,232,240,.70);
  --uvd-user-label: rgba(226,232,240,.78);
  --uvd-user-section-border: rgba(148,163,184,.12);
  --uvd-user-shell-bg: linear-gradient(180deg, rgba(15,23,42,.72), rgba(2,6,23,.55));
  --uvd-user-shell-border: rgba(148,163,184,.14);
  --uvd-user-shell-shadow: 0 18px 55px rgba(0,0,0,.55);
  --uvd-user-card-bg: rgba(2,6,23,.22);
  --uvd-user-card-border: rgba(148,163,184,.12);
  --uvd-user-card-shadow: 0 10px 28px rgba(0,0,0,.40);
  --uvd-user-input-bg: rgba(2,6,23,.40);
  --uvd-user-input-border: rgba(148,163,184,.14);
  --uvd-user-input-text: rgba(226,232,240,.95);
  --uvd-user-focus-border: rgba(59,130,246,.45);
  --uvd-user-focus-shadow: 0 0 0 4px rgba(59,130,246,.14);
  --uvd-user-button-bg: linear-gradient(135deg, #3b82f6, #2563eb);
  --uvd-user-button-text: #ffffff;
  --uvd-user-button-border: rgba(59,130,246,.35);
  --uvd-user-button-shadow: 0 14px 30px rgba(59,130,246,.18);
  --uvd-user-button-secondary-bg: linear-gradient(135deg, rgba(59,130,246,.22), rgba(2,6,23,.35));
  --uvd-user-button-secondary-text: rgba(226,232,240,.95);
  --uvd-user-button-secondary-border: rgba(59,130,246,.25);
  --uvd-user-alert-bg: rgba(2,6,23,.22);
  --uvd-user-alert-border: rgba(148,163,184,.12);
  --uvd-user-alert-text: rgba(226,232,240,.95);
  --uvd-user-table-bg: transparent;
  --uvd-user-table-border: transparent;
  --uvd-user-table-head-bg: rgba(148,163,184,.08);
  --uvd-user-table-head-border: rgba(148,163,184,.12);
  --uvd-user-table-row-border: rgba(148,163,184,.12);
  --uvd-user-success-border: rgba(34,197,94,.22);
  --uvd-user-success-bg: rgba(34,197,94,.10);
  --uvd-user-success-text: rgba(187,247,208,.95);
  --uvd-user-error-border: rgba(239,68,68,.22);
  --uvd-user-error-bg: rgba(239,68,68,.10);
  --uvd-user-error-text: rgba(254,202,202,.95);
  --uvd-user-warning-border: rgba(251,191,36,.24);
  --uvd-user-warning-bg: linear-gradient(135deg, rgba(251,191,36,.12), rgba(2,6,23,.18));
  --uvd-user-warning-text: rgba(253,230,138,.95);
  --uvd-user-meter-bg: rgba(148,163,184,.12);
  --uvd-user-meter-border: rgba(148,163,184,.14);
  --uvd-user-progress-bg: linear-gradient(135deg, rgba(239,68,68,.95), rgba(185,28,28,.95));
  --uvd-user-rule-bg: rgba(2,6,23,.22);
  --uvd-user-rule-border: rgba(148,163,184,.12);
  --uvd-user-rule-text: rgba(226,232,240,.78);
  --uvd-user-chip-bg: rgba(148,163,184,.08);
  --uvd-user-chip-border: rgba(148,163,184,.14);
  --uvd-user-chip-text: rgba(226,232,240,.78);
  --uvd-user-new-bg: rgba(59,130,246,.12);
  --uvd-user-new-border: rgba(59,130,246,.25);
  --uvd-user-new-text: rgba(226,232,240,.95);
  --uvd-user-notification-row-bg: rgba(2,6,23,.18);
  --uvd-user-notification-new-bg: linear-gradient(135deg, rgba(59,130,246,.14), rgba(2,6,23,.22));
  --uvd-user-notification-seen-bg: rgba(2,6,23,.15);
  --uvd-user-notification-seen-text: rgba(226,232,240,.78);
  --uvd-user-notification-row-border: rgba(148,163,184,.12);
  --uvd-user-notification-row-hover-border: rgba(59,130,246,.26);
  --uvd-user-notification-row-shadow: 0 10px 24px rgba(0,0,0,.26);
  --uvd-user-notification-row-hover-shadow: 0 10px 28px rgba(0,0,0,.40);
  --uvd-user-notification-msg-text: rgba(226,232,240,.92);
  --uvd-user-download-dialog-bg: rgba(2,6,23,.80);
  --uvd-user-download-dialog-border: rgba(148,163,184,.16);
  --uvd-user-download-dialog-shadow: 0 18px 60px rgba(0,0,0,.55);
  --uvd-user-download-dialog-text: rgba(226,232,240,.95);
}

html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password,
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications {
  color: rgba(226,232,240,.95) !important;
  background:
    radial-gradient(900px 420px at 50% -10%, rgba(59,130,246,.22), transparent 60%),
    radial-gradient(700px 340px at 10% 10%, rgba(34,197,94,.12), transparent 55%),
    linear-gradient(180deg, #0b1220, #0f172a) !important;
  background-attachment: fixed !important;
}

html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-user-page,
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-user-page {
  color: rgba(226,232,240,.95) !important;
}

/* Change password: original cp-card/cp-head/cp-body proportions. */
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-change-password-shell {
  width: min(520px, calc(100% - 28px)) !important;
  max-width: 520px !important;
  margin: 22px auto 40px !important;
  padding: 0 !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, rgba(15,23,42,.72), rgba(2,6,23,.55)) !important;
  border: 1px solid rgba(148,163,184,.14) !important;
  box-shadow: 0 18px 55px rgba(0,0,0,.55) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-simple-page-head {
  margin: 0 !important;
  padding: 16px 16px 14px !important;
  border-bottom: 1px solid rgba(148,163,184,.12) !important;
  background: rgba(0,0,0,.12) !important;
  border-radius: 0 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-user-title {
  font-size: 18px !important;
  color: rgba(226,232,240,.95) !important;
  text-shadow: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-user-subtitle {
  font-size: 12.5px !important;
  color: rgba(226,232,240,.70) !important;
  line-height: 1.9 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-user-toolbar {
  display: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-password-card {
  width: 100% !important;
  margin: 0 !important;
  padding: 16px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-user-input::placeholder {
  color: rgba(226,232,240,.55) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-password-rules li.valid::before { content: "✅" !important; }
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-password-rules li.invalid::before { content: "❌" !important; }
html[data-uvd-skin="classic-base"] body.uvd-page-key-change-password .uvd-password-submit {
  box-shadow: 0 14px 30px rgba(59,130,246,.18) !important;
}

/* Notifications: original dark table/shell treatment. */
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-notifications-shell {
  width: min(1200px, 92%) !important;
  max-width: 1200px !important;
  margin: 22px auto 40px !important;
  padding: 14px !important;
  border-radius: 20px !important;
  background: linear-gradient(180deg, rgba(15,23,42,.72), rgba(2,6,23,.55)) !important;
  border: 1px solid rgba(148,163,184,.14) !important;
  box-shadow: 0 18px 55px rgba(0,0,0,.55) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-notifications-head {
  padding: 6px 4px 12px !important;
  margin-bottom: 12px !important;
  border-bottom: 1px solid rgba(148,163,184,.10) !important;
  background: transparent !important;
  border-radius: 0 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-user-title {
  font-size: 18px !important;
  color: rgba(226,232,240,.95) !important;
  text-shadow: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-user-subtitle {
  font-size: 13px !important;
  color: rgba(226,232,240,.70) !important;
  line-height: 1.8 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-user-table-wrap {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-notifications-table th {
  background: rgba(148,163,184,.08) !important;
  color: rgba(226,232,240,.90) !important;
  border-color: rgba(148,163,184,.12) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-notifications-table tr.seen td {
  color: rgba(226,232,240,.78) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-notifications-page .dash,
html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .dash {
  color: rgba(226,232,240,.68) !important;
}
@media (max-width: 768px) {
  html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-notifications-shell {
    width: 92% !important;
    padding: 12px !important;
    margin: 18px auto 28px !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-notifications .uvd-notifications-head {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }
}

/* ==========================================================
   Phase 3D.3 — Classic Preservation Gate: Dashboard Profile/Settings
   Before any new dashboard profile/settings polish, keep the current/original
   dashboard profile, avatar, student-info and theme switcher look explicitly
   anchored in Classic. These rules intentionally mirror the legacy dashboard
   CSS and do not introduce a new Classic redesign.
   ========================================================== */
html[data-uvd-skin="classic-base"] {
  --uvd-active-skin-phase: phase-3d-3-classic-gate-dashboard-profile-settings;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-section--profile {
  position: relative !important;
  z-index: 30 !important;
  overflow: visible !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 18px !important;
  text-align: right !important;
  padding: 18px 18px 12px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-copy {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-section--profile h2 {
  color: var(--u-text) !important;
  text-shadow: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-text {
  color: var(--u-muted) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-card {
  z-index: 40 !important;
  width: 146px !important;
  height: 146px !important;
  flex: 0 0 146px !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 30px !important;
  background: linear-gradient(135deg,rgba(255,255,255,.14),rgba(59,130,246,.10)) !important;
  border: 1px solid rgba(226,232,240,.22) !important;
  box-shadow: 0 22px 54px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.16) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 10px !important;
  border-radius: 24px !important;
  background: radial-gradient(circle at 30% 20%,rgba(96,165,250,.25),transparent 45%),radial-gradient(circle at 80% 90%,rgba(168,85,247,.22),transparent 48%) !important;
  pointer-events: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-orb {
  width: 102px !important;
  height: 102px !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  z-index: 1 !important;
  background: linear-gradient(135deg,rgba(59,130,246,.28),rgba(168,85,247,.24)) !important;
  border: 3px solid rgba(255,255,255,.18) !important;
  color: rgba(226,232,240,.98) !important;
  font-weight: 900 !important;
  font-size: 30px !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.28) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-edit {
  top: 12px !important;
  left: 12px !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  background: rgba(15,23,42,.74) !important;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.28) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-menu {
  top: 54px !important;
  left: 10px !important;
  z-index: 100000 !important;
  width: 178px !important;
  padding: 8px !important;
  border-radius: 18px !important;
  background: rgba(15,23,42,.96) !important;
  border: 1px solid rgba(148,163,184,.22) !important;
  box-shadow: 0 22px 52px rgba(0,0,0,.46) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-menu__item {
  border-radius: 13px !important;
  background: transparent !important;
  color: rgba(226,232,240,.96) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-align: right !important;
  padding: 10px 11px !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-menu__item:hover {
  background: rgba(59,130,246,.16) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-menu__item--danger {
  color: #fecaca !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .user-info-section[data-student-info-card] {
  background: linear-gradient(180deg, var(--u-card), var(--u-card2)) !important;
  border: 1px solid var(--u-border) !important;
  border-radius: var(--u-radius) !important;
  box-shadow: var(--u-shadow) !important;
  color: var(--u-text) !important;
  padding: 14px 14px 12px !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin-bottom: 10px !important;
  padding: 0 !important;
  border: 0 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-title-wrap h3 {
  margin: 0 0 10px !important;
  color: var(--u-text) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-shadow: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-details {
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-details li {
  padding: 8px 10px !important;
  border-radius: 14px !important;
  background: rgba(148,163,184,.06) !important;
  border: 1px solid rgba(148,163,184,.12) !important;
  color: var(--u-text) !important;
  font-size: 13.5px !important;
  line-height: 1.7 !important;
  box-shadow: none !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-details li strong {
  color: rgba(226,232,240,.86) !important;
  font-weight: 900 !important;
  font-size: 12.8px !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .group-chip {
  background: rgba(59,130,246,.14) !important;
  border: 1px solid rgba(59,130,246,.24) !important;
  color: rgba(226,232,240,.96) !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .group-more-toggle {
  background: linear-gradient(135deg,rgba(251,191,36,.18),rgba(59,130,246,.12)) !important;
  border: 1px solid rgba(251,191,36,.32) !important;
  color: rgba(255,244,214,.98) !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard {
  background: radial-gradient(180px 72px at 12% 0%, rgba(59,130,246,.16), transparent 70%),
              linear-gradient(180deg, rgba(15,23,42,.92), rgba(8,18,39,.76)) !important;
  background-color: rgba(8,18,39,.88) !important;
  border-color: rgba(59,130,246,.28) !important;
  color: rgba(226,232,240,.96) !important;
  border-radius: 16px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 14px 34px rgba(2,6,23,.22) !important;
}
@media(max-width:768px){
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-section--profile {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 10px !important;
    padding: 14px 12px 8px !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-card {
    width: 124px !important;
    height: 124px !important;
    flex-basis: 124px !important;
    border-radius: 26px !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-orb {
    width: 88px !important;
    height: 88px !important;
    font-size: 25px !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-edit {
    top: 9px !important;
    left: 9px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 13px !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .welcome-avatar-menu {
    top: 48px !important;
    left: 6px !important;
  }
}

/* Phase 3D.3 Classic Gate mobile parity: restore the dashboard's original compact profile card sizing after the desktop anchors above. */
@media(max-width:768px){
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .user-info-section[data-student-info-card] {
    padding: 10px 10px 8px !important;
    border-radius: 14px !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-details {
    grid-template-columns: 1fr 1fr !important;
    gap: 6px !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-details li {
    padding: 7px 8px !important;
    border-radius: 12px !important;
    font-size: 12.5px !important;
    line-height: 1.55 !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-details li strong {
    display: block !important;
    margin-bottom: 2px !important;
    font-size: 11.8px !important;
    opacity: .85 !important;
  }
}
@media(max-width:640px){
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .user-info-section[data-student-info-card] .student-info-head {
    margin-bottom: 0 !important;
    cursor: pointer !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .user-info-section[data-student-info-card].is-student-info-open .student-info-head {
    margin-bottom: 10px !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-title-wrap h3 {
    margin: 0 !important;
    font-size: 13.5px !important;
  }
}
@media(max-width:380px){
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-details {
    grid-template-columns: 1fr !important;
  }
}

/* Phase 3D.4 — Chat Module Classic Preservation Gate
   The chat module already has a mature standalone visual baseline in
   chat/assets/chat-app.css. Classic intentionally preserves that exact baseline
   and only records a scoped guard so future theme passes do not leak into it. */
html[data-uvd-skin="classic-base"] body.uvd-page-key-chat-module.uvd-chat-module {
  --uvd-chat-classic-preservation-phase: phase-3d-4;
  --uvd-chat-classic-policy: preserve-current-chat-app-css;
}

/* Phase 3D.5 — Troubleshooting Classic Preservation Gate
   The raw/current troubleshooting page used a dark glass inline UI. These
   scoped variables recreate that exact baseline after moving the inline CSS
   into the UVD contract so Dark Luxury can be themed independently. */
html[data-uvd-skin="classic-base"] body.uvd-page-key-troubleshooting {
  --uvd-trouble-classic-preservation-phase: phase-3d-5;
  --uvd-trouble-text: rgba(226, 232, 240, .95);
  --uvd-trouble-muted: rgba(226, 232, 240, .70);
  --uvd-trouble-heading: rgba(226, 232, 240, .95);
  --uvd-trouble-shell-bg: linear-gradient(180deg, rgba(15, 23, 42, .72), rgba(2, 6, 23, .55));
  --uvd-trouble-shell-border: rgba(148, 163, 184, .14);
  --uvd-trouble-shell-shadow: 0 18px 55px rgba(0,0,0,.55);
  --uvd-trouble-shell-filter: blur(12px);
  --uvd-trouble-back-text: rgba(226, 232, 240, .95);
  --uvd-trouble-back-bg: linear-gradient(135deg, rgba(59,130,246,.22), rgba(2,6,23,.35));
  --uvd-trouble-back-border: rgba(59,130,246,.25);
  --uvd-trouble-back-hover-border: rgba(59,130,246,.35);
  --uvd-trouble-back-shadow: 0 10px 26px rgba(0,0,0,.35);
  --uvd-trouble-back-hover-shadow: 0 14px 34px rgba(0,0,0,.45);
  --uvd-trouble-input-bg: rgba(2,6,23,.30);
  --uvd-trouble-input-border: rgba(148,163,184,.18);
  --uvd-trouble-input-text: rgba(226, 232, 240, .95);
  --uvd-trouble-input-focus-border: rgba(59,130,246,.35);
  --uvd-trouble-input-focus-shadow: 0 0 0 4px rgba(59,130,246,.12);
  --uvd-trouble-option-bg: #0f172a;
  --uvd-trouble-option-text: rgba(226, 232, 240, .95);
  --uvd-trouble-submit-bg: linear-gradient(135deg, #3b82f6, #2563eb);
  --uvd-trouble-submit-text: #fff;
  --uvd-trouble-submit-shadow: 0 12px 28px rgba(59,130,246,.18);
  --uvd-trouble-submit-hover-shadow: 0 16px 38px rgba(59,130,246,.22);
  --uvd-trouble-card-bg: rgba(2,6,23,.28);
  --uvd-trouble-card-border: rgba(148,163,184,.14);
  --uvd-trouble-card-shadow: 0 14px 36px rgba(0,0,0,.35);
  --uvd-trouble-card-title: rgba(226,232,240,.95);
  --uvd-trouble-solver: rgba(34,197,94,.95);
  --uvd-trouble-image-shadow: 0 12px 30px rgba(0,0,0,.35);
  --uvd-trouble-answer-bg: rgba(148,163,184,.08);
  --uvd-trouble-answer-border: rgba(148,163,184,.12);
  --uvd-trouble-answer-text: rgba(226,232,240,.90);
  --uvd-trouble-lightbox-bg: rgba(0,0,0,.82);
  --uvd-trouble-lightbox-filter: blur(10px);
  --uvd-trouble-lightbox-caption-text: rgba(226,232,240,.95);
  --uvd-trouble-lightbox-caption-bg: rgba(2,6,23,.55);
  --uvd-trouble-lightbox-caption-border: rgba(148,163,184,.14);
  --uvd-trouble-lightbox-close-text: #fff;
  --uvd-trouble-lightbox-close-bg: rgba(148,163,184,.14);
  --uvd-trouble-lightbox-close-border: rgba(148,163,184,.16);
  --uvd-trouble-lightbox-close-hover-bg: rgba(148,163,184,.20);
}

/* ==========================================================
   Phase 3D.6 — Classic media shell preservation
   The media/watch routes did not use the shared header. This block preserves
   their existing compact dark player/error baseline as the Classic reference,
   while future themes can override the same media-shell contract in their own CSS.
   ========================================================== */
html[data-uvd-skin="classic-base"] body.uvd-media-page {
  --uvd-active-skin-phase: phase-3d-6-classic-media-shell;
  --uvd-media-page-bg:
    radial-gradient(900px 420px at 15% 10%, rgba(87,184,255,.18), transparent 55%),
    radial-gradient(900px 520px at 85% 30%, rgba(161,98,255,.16), transparent 60%),
    linear-gradient(180deg, #0b1220, #0a0c14);
  --uvd-media-card-bg: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.05));
  --uvd-media-card-border: rgba(255,255,255,.12);
  --uvd-media-card-shadow: 0 18px 55px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.10);
  --uvd-media-top-bg: rgba(0,0,0,.18);
  --uvd-media-divider: rgba(255,255,255,.10);
  --uvd-media-text: #e9eefc;
  --uvd-media-title: rgba(233,238,252,.95);
  --uvd-media-muted: rgba(233,238,252,.72);
  --uvd-media-button-bg: linear-gradient(135deg, rgba(59,130,246,.22), rgba(2,6,23,.55));
  --uvd-media-button-border: rgba(59,130,246,.28);
  --uvd-media-button-shadow: 0 10px 30px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.10);
}

/* ==========================================================
   Phase 3D.8 — Classic public/auth preservation gate
   The current public homepage, login, register and password recovery visuals
   were extracted from inline page styles into public-auth.css. Classic keeps
   that baseline and only records the preservation scope here.
   ========================================================== */
html[data-uvd-skin="classic-base"] body.uvd-page-key-public-home,
html[data-uvd-skin="classic-base"] body.uvd-page-key-login,
html[data-uvd-skin="classic-base"] body.uvd-page-key-register,
html[data-uvd-skin="classic-base"] body.uvd-page-key-forgot-password {
  --uvd-public-auth-classic-preservation-phase: phase-3d-8;
  --uvd-public-auth-classic-policy: preserve-extracted-legacy-public-auth-css;
}

/* ==========================================================
   Phase 3D.16 — Classic public/static preservation gate
   Maintenance/About now have central page keys and CSS hooks. Classic keeps
   the extracted legacy baseline from public-static.css and does not add a new
   visual skin on top of it.
   ========================================================== */
html[data-uvd-skin="classic-base"] body.uvd-page-key-maintenance,
html[data-uvd-skin="classic-base"] body.uvd-page-key-about {
  --uvd-public-static-classic-preservation-phase: phase-3d-16;
  --uvd-public-static-classic-policy: preserve-extracted-legacy-public-static-css;
}

/* Phase 3D.20.6 — Classic dashboard CTA cleanup: stale classic-only live CTA overrides removed so the shared dashboard contract owns the pulse/highlight. */

/* ==========================================================
   Phase 3D.20.9 — Classic Theme Switcher Visual Alignment
   Keep the central theme-switcher markup/behavior untouched. Classic only skins
   the shared contract so the dashboard and sidebar switchers match the dark
   classic dashboard language instead of the earlier light/white fallback.
   Future themes should target the same [data-uvd-component="theme-switcher"]
   hooks from their own theme CSS without changing PHP pages.
   ========================================================== */
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"],
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] {
  background: linear-gradient(180deg, rgba(15, 23, 42, .78), rgba(2, 6, 23, .42)) !important;
  border-color: rgba(59, 130, 246, .24) !important;
  color: rgba(226, 232, 240, .92) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06) !important;
}
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-switcher__label,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-switcher__label {
  color: rgba(226, 232, 240, .86) !important;
  text-shadow: 0 1px 0 rgba(0, 0, 0, .22) !important;
}
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-switcher__options,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-switcher__options {
  background: transparent !important;
}
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-option,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-option {
  background: linear-gradient(180deg, rgba(15, 23, 42, .64), rgba(2, 6, 23, .34)) !important;
  border-color: rgba(148, 163, 184, .20) !important;
  color: rgba(226, 232, 240, .88) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-option:hover,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-option:hover {
  border-color: rgba(59, 130, 246, .30) !important;
  background: linear-gradient(180deg, rgba(30, 64, 120, .48), rgba(15, 23, 42, .54)) !important;
  color: rgba(248, 250, 252, .96) !important;
}
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-option.is-active,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-option.is-active {
  background: linear-gradient(135deg, rgba(59, 130, 246, .24), rgba(15, 23, 42, .58)) !important;
  border-color: rgba(59, 130, 246, .44) !important;
  color: rgba(239, 246, 255, .98) !important;
  box-shadow: 0 10px 24px rgba(2, 6, 23, .18), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
}
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-option__dot,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-option__dot {
  background: rgba(148, 163, 184, .78) !important;
  box-shadow: none !important;
}
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-option.is-active .uvd-theme-option__dot,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-option.is-active .uvd-theme-option__dot {
  background: #3b82f6 !important;
  box-shadow: 0 0 0 4px rgba(59, 130, 246, .12) !important;
}
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-option__text,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-option__text {
  color: inherit !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard,
body.uvd-skin-classic-base.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard {
  border-radius: 18px !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .student-info-theme-detail [data-uvd-component="theme-switcher"],
body.uvd-skin-classic-base.uvd-page-key-dashboard-home .student-info-theme-detail [data-uvd-component="theme-switcher"] {
  width: 100% !important;
  margin: 0 !important;
}
html[data-uvd-skin="classic-base"] [data-uvd-component="site-menu"] [data-uvd-component="theme-switcher"].uvd-theme-switcher--menu,
body.uvd-skin-classic-base [data-uvd-component="site-menu"] [data-uvd-component="theme-switcher"].uvd-theme-switcher--menu,
html[data-uvd-skin="classic-base"] #side-menu [data-uvd-component="theme-switcher"].uvd-theme-switcher--menu,
body.uvd-skin-classic-base #side-menu [data-uvd-component="theme-switcher"].uvd-theme-switcher--menu {
  background: linear-gradient(180deg, rgba(15, 23, 42, .86), rgba(2, 6, 23, .58)) !important;
  border-color: rgba(59, 130, 246, .22) !important;
  color: rgba(226, 232, 240, .92) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06) !important;
}


/* ==========================================================
   Phase 3D.20.10 — Classic Theme Switcher Final Dark Surface Lock
   The theme switcher is a shared semantic component. Classic skins the same
   [data-uvd-component="theme-switcher"] / .uvd-theme-switcher contract used by
   future themes, without changing PHP, JS, menu behavior, or theme switching.
   This final block intentionally targets both dashboard and sidebar placements
   and neutralizes the earlier light fallback chips/cards in classic-base.
   ========================================================== */
html[data-uvd-skin="classic-base"] .uvd-theme-switcher,
body.uvd-skin-classic-base .uvd-theme-switcher,
body.user-dark.uvd-skin-classic-base .uvd-theme-switcher,
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"],
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] {
  background: radial-gradient(180px 72px at 12% 0%, rgba(59, 130, 246, .18), transparent 70%),
              linear-gradient(180deg, rgba(15, 23, 42, .92), rgba(8, 18, 39, .76)) !important;
  background-color: rgba(8, 18, 39, .88) !important;
  border: 1px solid rgba(59, 130, 246, .28) !important;
  color: rgba(226, 232, 240, .96) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 14px 34px rgba(2, 6, 23, .22) !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-switcher__label,
body.uvd-skin-classic-base .uvd-theme-switcher__label,
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-switcher__label,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-switcher__label {
  color: rgba(226, 232, 240, .88) !important;
  opacity: 1 !important;
  text-shadow: 0 1px 0 rgba(0, 0, 0, .28) !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-switcher__options,
body.uvd-skin-classic-base .uvd-theme-switcher__options,
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-switcher__options,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-switcher__options {
  background: rgba(2, 6, 23, .18) !important;
  border-radius: 999px !important;
  padding: 2px !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-switcher .uvd-theme-option,
body.uvd-skin-classic-base .uvd-theme-switcher .uvd-theme-option,
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] a[data-uvd-theme-option],
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] a[data-uvd-theme-option] {
  background: linear-gradient(180deg, rgba(15, 31, 62, .82), rgba(10, 21, 43, .72)) !important;
  background-color: rgba(10, 21, 43, .78) !important;
  border: 1px solid rgba(148, 163, 184, .22) !important;
  color: rgba(226, 232, 240, .92) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), 0 8px 18px rgba(2, 6, 23, .14) !important;
  filter: none !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-switcher .uvd-theme-option:hover,
body.uvd-skin-classic-base .uvd-theme-switcher .uvd-theme-option:hover,
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] a[data-uvd-theme-option]:hover,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] a[data-uvd-theme-option]:hover {
  background: linear-gradient(180deg, rgba(30, 64, 120, .72), rgba(15, 31, 62, .76)) !important;
  background-color: rgba(22, 47, 91, .8) !important;
  border-color: rgba(96, 165, 250, .42) !important;
  color: rgba(248, 250, 252, .98) !important;
  transform: translateY(-1px) !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-switcher .uvd-theme-option.is-active,
body.uvd-skin-classic-base .uvd-theme-switcher .uvd-theme-option.is-active,
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] a[data-uvd-theme-option].is-active,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] a[data-uvd-theme-option].is-active {
  background: linear-gradient(135deg, rgba(59, 130, 246, .92), rgba(37, 99, 235, .76)) !important;
  background-color: rgba(37, 99, 235, .86) !important;
  border-color: rgba(147, 197, 253, .58) !important;
  color: #ffffff !important;
  box-shadow: 0 12px 26px rgba(37, 99, 235, .20), inset 0 1px 0 rgba(255, 255, 255, .22) !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-switcher .uvd-theme-option__dot,
body.uvd-skin-classic-base .uvd-theme-switcher .uvd-theme-option__dot,
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-option__dot,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-option__dot {
  background: rgba(148, 163, 184, .86) !important;
  box-shadow: 0 0 0 3px rgba(148, 163, 184, .10) !important;
  opacity: 1 !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-switcher .uvd-theme-option.is-active .uvd-theme-option__dot,
body.uvd-skin-classic-base .uvd-theme-switcher .uvd-theme-option.is-active .uvd-theme-option__dot,
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] a[data-uvd-theme-option].is-active .uvd-theme-option__dot,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] a[data-uvd-theme-option].is-active .uvd-theme-option__dot {
  background: #bfdbfe !important;
  box-shadow: 0 0 0 4px rgba(191, 219, 254, .20), 0 0 16px rgba(96, 165, 250, .30) !important;
}
html[data-uvd-skin="classic-base"] .uvd-theme-switcher .uvd-theme-option__text,
body.uvd-skin-classic-base .uvd-theme-switcher .uvd-theme-option__text,
html[data-uvd-skin="classic-base"] [data-uvd-component="theme-switcher"] .uvd-theme-option__text,
body.uvd-skin-classic-base [data-uvd-component="theme-switcher"] .uvd-theme-option__text {
  color: inherit !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard,
body.uvd-skin-classic-base.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard,
body.uvd-skin-classic-base .student-info-card .uvd-theme-switcher--dashboard {
  border-radius: 18px !important;
  margin-top: 8px !important;
  margin-bottom: 12px !important;
}
html[data-uvd-skin="classic-base"] #side-menu .uvd-theme-switcher--menu,
body.uvd-skin-classic-base #side-menu .uvd-theme-switcher--menu,
html[data-uvd-skin="classic-base"] [data-uvd-component="site-menu"] .uvd-theme-switcher--menu,
body.uvd-skin-classic-base [data-uvd-component="site-menu"] .uvd-theme-switcher--menu {
  background: radial-gradient(160px 70px at 10% 0%, rgba(59, 130, 246, .14), transparent 72%),
              linear-gradient(180deg, rgba(10, 22, 46, .96), rgba(4, 12, 28, .90)) !important;
  background-color: rgba(4, 12, 28, .94) !important;
  border-color: rgba(59, 130, 246, .24) !important;
  color: rgba(226, 232, 240, .94) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .07), 0 12px 28px rgba(2, 6, 23, .20) !important;
}
html[data-uvd-skin="classic-base"] #side-menu .uvd-theme-switcher--menu .uvd-theme-option,
body.uvd-skin-classic-base #side-menu .uvd-theme-switcher--menu .uvd-theme-option,
html[data-uvd-skin="classic-base"] [data-uvd-component="site-menu"] .uvd-theme-switcher--menu .uvd-theme-option,
body.uvd-skin-classic-base [data-uvd-component="site-menu"] .uvd-theme-switcher--menu .uvd-theme-option {
  background: linear-gradient(180deg, rgba(15, 31, 62, .88), rgba(8, 18, 39, .78)) !important;
  background-color: rgba(8, 18, 39, .82) !important;
  border-color: rgba(148, 163, 184, .20) !important;
  color: rgba(226, 232, 240, .92) !important;
}
html[data-uvd-skin="classic-base"] #side-menu .uvd-theme-switcher--menu .uvd-theme-option.is-active,
body.uvd-skin-classic-base #side-menu .uvd-theme-switcher--menu .uvd-theme-option.is-active,
html[data-uvd-skin="classic-base"] [data-uvd-component="site-menu"] .uvd-theme-switcher--menu .uvd-theme-option.is-active,
body.uvd-skin-classic-base [data-uvd-component="site-menu"] .uvd-theme-switcher--menu .uvd-theme-option.is-active {
  background: linear-gradient(135deg, rgba(59, 130, 246, .94), rgba(37, 99, 235, .78)) !important;
  background-color: rgba(37, 99, 235, .88) !important;
  border-color: rgba(147, 197, 253, .58) !important;
  color: #ffffff !important;
}

/* ==========================================================
   Phase 3D.20.11 — Classic Dashboard Theme Switcher White Surface Fix
   The dashboard placement previously had an older, more-specific white classic
   override above the shared switcher contract. Keep the shared markup/behavior
   untouched and explicitly lock the dashboard surface to the same dark classic
   theme-switcher contract used by the sidebar/menu placement.
   ========================================================== */
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard,
body.uvd-skin-classic-base.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard,
body.user-dark.uvd-skin-classic-base.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard {
  background: radial-gradient(220px 86px at 10% 0%, rgba(59,130,246,.18), transparent 72%),
              linear-gradient(180deg, rgba(15,23,42,.94), rgba(8,18,39,.78)) !important;
  background-color: rgba(8,18,39,.9) !important;
  border: 1px solid rgba(59,130,246,.28) !important;
  color: rgba(226,232,240,.96) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 14px 34px rgba(2,6,23,.22) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard .uvd-theme-switcher__options,
body.uvd-skin-classic-base.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard .uvd-theme-switcher__options,
body.user-dark.uvd-skin-classic-base.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard .uvd-theme-switcher__options {
  background: rgba(2,6,23,.18) !important;
  border-radius: 999px !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard .uvd-theme-switcher__label,
body.uvd-skin-classic-base.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard .uvd-theme-switcher__label,
body.user-dark.uvd-skin-classic-base.uvd-page-key-dashboard-home .uvd-theme-switcher--dashboard .uvd-theme-switcher__label {
  color: rgba(226,232,240,.88) !important;
  opacity: 1 !important;
}



/* ==========================================================
   Phase 3D.20.12 — Classic Account Access Banner Badge Alignment
   The account/status banner already uses the shared account-access contract.
   Classic only fixes the visual badge/surface alignment for the dashboard
   banner so the "دوره پایان یافت" chip does not look like an unskinned
   floating pill. No PHP, state logic, dismiss/modal behavior, or other themes
   are changed.
   ========================================================== */
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner"],
body.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner"],
body.user-dark.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner"] {
  position: relative !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 16px 18px !important;
  overflow: visible !important;
  background: radial-gradient(260px 94px at 88% 0%, rgba(96,165,250,.20), transparent 70%),
              linear-gradient(135deg, rgba(21,46,87,.92), rgba(12,28,58,.90)) !important;
  background-color: rgba(12,28,58,.94) !important;
  border: 1px solid rgba(96,165,250,.36) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 18px 42px rgba(2,6,23,.20) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner-text"],
body.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner-text"],
body.user-dark.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner-text"] {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  color: rgba(226,232,240,.96) !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.30) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner-badge"],
body.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner-badge"],
body.user-dark.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner-badge"] {
  flex: 0 0 auto !important;
  align-self: center !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 0 15px !important;
  border-radius: 999px !important;
  line-height: 1.5 !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  white-space: nowrap !important;
  color: #fde68a !important;
  background: radial-gradient(64px 42px at 50% 0%, rgba(250,204,21,.28), transparent 70%),
              linear-gradient(180deg, rgba(120,92,22,.44), rgba(54,44,18,.34)) !important;
  background-color: rgba(69,55,22,.40) !important;
  border: 1px solid rgba(250,204,21,.46) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 10px 24px rgba(251,191,36,.12) !important;
  transform: none !important;
  opacity: 1 !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .account-trial-banner--annual-expired [data-uvd-component="account-access-banner-badge"],
body.uvd-skin-classic-base.uvd-page-key-dashboard-home .account-trial-banner--annual-expired [data-uvd-component="account-access-banner-badge"] {
  color: #fef3c7 !important;
  border-color: rgba(250,204,21,.52) !important;
}
html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home .account-trial-banner--group-locked [data-uvd-component="account-access-banner-badge"],
body.uvd-skin-classic-base.uvd-page-key-dashboard-home .account-trial-banner--group-locked [data-uvd-component="account-access-banner-badge"] {
  color: #fecaca !important;
  background: linear-gradient(180deg, rgba(127,29,29,.38), rgba(69,10,10,.30)) !important;
  border-color: rgba(248,113,113,.46) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 10px 24px rgba(248,113,113,.10) !important;
}
@media (max-width: 640px) {
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner"],
  body.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner"],
  body.user-dark.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner"] {
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 13px 14px !important;
  }
  html[data-uvd-skin="classic-base"] body.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner-badge"],
  body.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner-badge"],
  body.user-dark.uvd-skin-classic-base.uvd-page-key-dashboard-home [data-uvd-component="account-access-banner-badge"] {
    align-self: flex-start !important;
    min-height: 34px !important;
    padding: 0 11px !important;
    font-size: 11.8px !important;
    white-space: normal !important;
    max-width: 100% !important;
  }
}
