/* SCOVER PX-R1-B.4 — Role-Aware Solid Primary CTA (FREEZE 2026-10-11)
 * CSS-only, additive to PX-R1-A + PX-R1-B + PX-R1-B.1 + B.2 + B.3.
 * Student Light Home: Purple #6D53C6 with white text.
 * Tutor Light Home: Deep Cyan #087C9F with white text.
 * Original role accents (#A78BFA, #6EE7FF) remain unchanged for non-CTA UI.
 * Source of truth for preview: data-pxr1b-light="on" + data-theme="light".
 * NO changes to API, routes, ClassNote, Web Push, navigation or theme runtime.
 */

/* One semantic CTA token family per canonical portal role, ONLY when Home is in Light Preview. */
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"]:has(#app .portal-r3-shell.role-student .student-home) {
  --pxr1b4-cta-bg: #6d53c6;
  --pxr1b4-cta-hover: #6045b8;
  --pxr1b4-cta-active: #543fa0;
  --pxr1b4-cta-shadow: rgba(75, 49, 146, .18);
}
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"]:has(#app .portal-r3-shell.role-tutor .tutor-home) {
  --pxr1b4-cta-bg: #087c9f;
  --pxr1b4-cta-hover: #086987;
  --pxr1b4-cta-active: #075a74;
  --pxr1b4-cta-shadow: rgba(8, 96, 126, .17);
}

/* Default non-secondary primary actions inside Student / Tutor Home.
 * Do not touch navigation buttons, utility notification bell or secondary actions. */
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-student .student-home button:not(.secondary):not(.notification-bell),
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .tutor-home button:not(.secondary):not(.notification-bell),
/* The ClassNote entrance is a high-emphasis CTA but is marked .secondary in legacy HTML. */
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .portal-hero-actions #teachingAccessBtn,
/* The optional push onboarding dialog is attached to document.body, not #app. */
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #pushOnboardingPrompt #pushOnboardingEnable {
  background: var(--pxr1b4-cta-bg) !important;
  background-image: none !important;
  color: #ffffff !important;
  border-color: transparent !important;
  text-shadow: none !important;
  box-shadow: 0 5px 15px var(--pxr1b4-cta-shadow) !important;
}

/* Inherit foreground into the ClassNote label/icon and other nested CTA wording. */
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor #teachingAccessBtn :is(span,b,strong,svg),
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app :is(.role-student .student-home,.role-tutor .tutor-home) button:not(.secondary):not(.notification-bell) :is(span,b,strong,svg),
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #pushOnboardingPrompt #pushOnboardingEnable :is(span,b,strong,svg) {
  color: inherit !important;
}

/* Native pseudo states: visually stable, no event or disabled-state changes. */
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-student .student-home button:not(.secondary):not(.notification-bell):hover:not(:disabled),
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .tutor-home button:not(.secondary):not(.notification-bell):hover:not(:disabled),
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .portal-hero-actions #teachingAccessBtn:hover:not(:disabled),
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #pushOnboardingPrompt #pushOnboardingEnable:hover:not(:disabled) {
  background: var(--pxr1b4-cta-hover) !important;
  background-image: none !important;
  color: #ffffff !important;
}
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-student .student-home button:not(.secondary):not(.notification-bell):active:not(:disabled),
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .tutor-home button:not(.secondary):not(.notification-bell):active:not(:disabled),
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .portal-hero-actions #teachingAccessBtn:active:not(:disabled),
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #pushOnboardingPrompt #pushOnboardingEnable:active:not(:disabled) {
  background: var(--pxr1b4-cta-active) !important;
  background-image: none !important;
}
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-student .student-home button:not(.secondary):not(.notification-bell):focus-visible,
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .tutor-home button:not(.secondary):not(.notification-bell):focus-visible,
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .portal-hero-actions #teachingAccessBtn:focus-visible,
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #pushOnboardingPrompt #pushOnboardingEnable:focus-visible {
  outline: 3px solid var(--pxr1b4-cta-bg) !important;
  outline-offset: 3px !important;
}
/* Disabled CTA styling is visually muted; the existing disabled property and logic stay authoritative. */
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-student .student-home button:not(.secondary):not(.notification-bell):disabled,
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .tutor-home button:not(.secondary):not(.notification-bell):disabled,
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #app .role-tutor .portal-hero-actions #teachingAccessBtn:disabled,
html[data-theme="light"][data-pxr1b-light="on"] body[data-academic-shell="portal"] #pushOnboardingPrompt #pushOnboardingEnable:disabled {
  opacity: .58 !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
}
/* Explicitly DO NOT modify secondary, drawer navigation, Guardian, Admin or Dark. */
