/* Shared brand colours and action text; screen-only to preserve exports. */
:root{--cp-bright-foreground:#24312d;--cp-pink-text:#4f7a00;--cp-green-text:#4f7a00}
@media screen{
 :root{--title:var(--cp-pink-text)}

 /* Website headings, links and prices on white surfaces. */
 .website-page .landing h1,.website-page .marketing-main h1,
 .website-page .marketing-main h2,.website-page .feature-card h3,
 .website-page .auth-content>h1,.website-page .auth-headline,
 .comparison-heading h2{color:var(--cp-pink-text)!important}
 .website-page .landing-eyebrow,.website-page .marketing-eyebrow,
 .website-page .auth-eyebrow,.website-page .auth-back-link,
 .website-page .marketing-text-link,.website-page .price,
 .website-page .feature-card p.feature-benefit,
 .website-page .site-nav a[aria-current="page"],
 .mobile-site-menu a:hover,.mobile-site-menu a[aria-current="page"],
 .comparison-scroll .plan-comparison .yes,.comparison-actions p a,
 .feedback-status,.feedback-close{color:var(--cp-green-text)!important}
 .website-page .site-nav .site-links a:hover,.website-page .site-nav .site-signin:hover,
 .website-page .landing-mobile-signin a,
 body.builder-page .hero .header-signin-row #proSignInLink:hover{color:var(--cp-pink-text)!important}

 /* Primary website actions retain their vivid green backgrounds. */
 body .get-pro-brand-button,
 .website-page .landing-start,.website-page .marketing-button,
 .website-page .compare-features-link,.website-page .feature-tier-pro,
 .website-page .auth-submit,.website-page #changeEmail,.website-page .auth-content .btn,
 .comparison-actions .marketing-button,.feedback-actions button{color:#fff!important}
 body .get-pro-brand-button:hover,body .get-pro-brand-button:focus-visible,
 .website-page .landing-start:hover,.website-page .landing-start:focus-visible,
 .website-page .marketing-button:hover,.website-page .marketing-button:focus-visible,
 .comparison-actions .marketing-button:hover{background:#4f7a00!important;color:#fff!important}
 .website-page .marketing-cta,.website-page .marketing-cta h2,.website-page .marketing-cta p{color:#6b2e63!important}

 /* Green app titles and assignment context on white. */
 body.builder-page .sidebar .class-overview-header>h3,
 body.builder-page .class-structure-title-row>h2,
 body.builder-page #scheduleTitle,body.builder-page #savedProgramsTitle,
 body.builder-page .schedule-dialog.schedule-class-details-dialog #scheduleDialogTitle,
 body.builder-page #mobileOverviewChevron,
 body.builder-page #savedProgramsModal #schedulePickerContext{color:var(--cp-pink-text)!important}

 /* White text on app completion actions. */
 body.builder-page .btn:not(.ghost):not(.secondary):not(.danger),
 body.builder-page #jsonBtn,body.builder-page #printBtn,body.builder-page #copyBtn,
 body.builder-page #confirmProgramAction,body.builder-page #confirmCustomLibraryModal,
 body.builder-page #updateAccountName,body.builder-page #updateAccountPassword,
 body.builder-page #confirmPlanRevert,body.builder-page #saveTeachDate,
 body.builder-page #doneCopyFallback,body.builder-page #doneMovementDrawer,
 body.builder-page #scheduleSaveNotes,body.builder-page #scheduleClassForm button[type="submit"],
 body.builder-page .mobile-exercise-done,
 body.builder-page #schedulePrev,body.builder-page #scheduleNext,body.builder-page #scheduleToday,
 body.builder-page .schedule-day-heading,body.builder-page .schedule-day-heading span,
 body.builder-page .grid .section .section-head .addOwn,
 body.builder-page .exercise-picker .exercise-picker-filter-count,
 body.builder-page .home-screen-tip,body.builder-page .home-screen-tip-copy span,
 body.builder-page .home-screen-tip>button,
 body.builder-page .contact-dialog-actions #contactCopy,
 body.builder-page .plan.pro{color:#fff!important}

 body.builder-page #scheduleToday,body.builder-page .grid .section .section-head .addOwn{color:#6b2e63!important}

 /* Assigned classes use the purple brand surface. */
 body.builder-page .schedule-class.assigned{background:#6b2e63!important;border-color:#6b2e63!important}
 body.builder-page .schedule-class.assigned,
 body.builder-page .schedule-class.assigned small,
 body.builder-page .schedule-class.assigned .schedule-card-time,
 body.builder-page .schedule-class.assigned .schedule-card-meta,
 body.builder-page .schedule-class.assigned strong,
 body.builder-page .schedule-class.assigned .schedule-card-options button{color:#fff!important}

 /* Green text uses the same brand green. */
 body.builder-page .teach-sections h3,body.builder-page .compare-header-link,
 body.builder-page .exercise-picker .custom-exercise-action,
 body.builder-page .exercise-info-popover strong,
 body.builder-page .saved-program-more-menu .openCloudProgram,
 body.builder-page .saved-program-more-menu .duplicateCloudProgram,
 body.builder-page .saved-program-more-menu .exportCloudProgram,
 body.builder-page .app-positive-confirmation #programActionTitle,
 body.builder-page .schedule-dialog.app-positive-confirmation #scheduleDialogTitle{color:var(--cp-green-text)!important}
 body.builder-page .mobile-program-actions .mobile-action:active,
 body.builder-page .mobile-program-actions .mobile-action:active .mobile-action-label{color:#fff!important}
}

/* Landing copy sits on the purple brand blob. */
@media screen{
 .website-page .landing .landing-copy h1{color:#fff!important}
 .website-page .landing .landing-mobile-signin a{color:#ff9fba!important}
 .website-page .landing .landing-copy .landing-eyebrow{color:#ff9fba!important;font-size:26px;font-weight:800;line-height:1.3}
 .website-page .landing .landing-copy .landing-hero-copy{color:#fff!important}
}

/* Readable supporting text, field boundaries and keyboard focus. */
@media screen{
 body.builder-page .teach-sections h3{background:#fff!important}
 body.website-page input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]):not([type="file"]),
 body.website-page select,body.website-page textarea,
 body.builder-page input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]):not([type="file"]),
 body.builder-page select,body.builder-page textarea,
 .feedback-form input:not([type="radio"]),.feedback-form select,.feedback-form textarea{
  border-color:#6b2e63!important;
 }
 body.website-page input::placeholder,body.website-page textarea::placeholder,
 body.builder-page input::placeholder,body.builder-page textarea::placeholder,
 .feedback-form input::placeholder,.feedback-form textarea::placeholder{
  color:#24312d;opacity:1;
 }
 body.website-page input:focus-visible,body.website-page select:focus-visible,body.website-page textarea:focus-visible,
 body.builder-page input:focus-visible,body.builder-page select:focus-visible,body.builder-page textarea:focus-visible,
 .feedback-form :focus-visible{outline:3px solid #4f7a00;outline-offset:2px}
}

/* Get Pro uses the yellow and purple treatment of the Pricing Pro badge. */
@media screen{
 body .get-pro-brand-button,
 body.builder-page .get-pro-brand-button:not(.ghost):not(.secondary):not(.danger),
 body .get-pro-brand-button:hover,body .get-pro-brand-button:focus-visible{
  background:#ff9fba!important;border-color:#ff9fba!important;color:#6b2e63!important;border-radius:999px;
 }
}

/* Free-builder popup upgrades match the rose and purple reference button. */
@media screen{
 body.builder-page:not(.pro-user) [role="dialog"] .get-pro-brand-button,
 body.builder-page #proFeatureModal .get-pro-brand-button,
 body.builder-page #pdfPreviewModal .get-pro-brand-button,
 body.builder-page #comparePlansModal .get-pro-brand-button{
  background:#ff9fba!important;border-color:#ff9fba!important;color:#6b2e63!important;
 }
 body.builder-page:not(.pro-user) [role="dialog"] .get-pro-brand-button:hover,
 body.builder-page:not(.pro-user) [role="dialog"] .get-pro-brand-button:focus-visible{
  background:#ff9fba!important;border-color:#ff9fba!important;color:#6b2e63!important;
 }
}

/* Consistent rose and purple Sign In buttons. */
@media screen{
 body.website-page .site-signin,
 body.builder-page .hero .header-signin-row #proSignInLink,
 body.website-page.auth-signin #submitBtn,
 body.website-page .site-signin:hover,body.website-page .site-signin:focus-visible,
 body.builder-page .hero .header-signin-row #proSignInLink:hover,
 body.builder-page .hero .header-signin-row #proSignInLink:focus-visible,
 body.website-page.auth-signin #submitBtn:hover,body.website-page.auth-signin #submitBtn:focus-visible{
  background:#ff9fba!important;border-color:#ff9fba!important;color:#6b2e63!important;
 }
}

@media screen{
 body.builder-page #proFeatureModal #proModalTitle{color:#6b2e63!important}
}

@media screen{
 body.builder-page #schedulePrev,body.builder-page #scheduleNext,
 body.builder-page #schedulePrev:hover,body.builder-page #scheduleNext:hover,
 body.builder-page #schedulePrev:focus-visible,body.builder-page #scheduleNext:focus-visible{
  background:#6b2e63!important;border-color:#6b2e63!important;color:#fff!important;
 }
}

@media screen{
 body.landing-home .site-signin,body.landing-home .site-signin:hover{
  background:#ff9fba!important;border-color:#ff9fba!important;color:#6b2e63!important;
  transform:none;box-shadow:none;filter:none;opacity:1;transition:none;text-decoration:none;
 }
}

/* Website header Sign In stays unchanged on hover. */
@media screen{
 body.website-page .site-nav .site-signin,
 body.website-page .site-nav .site-signin:hover{
  background:#ff9fba!important;border-color:#ff9fba!important;color:#6b2e63!important;
  transform:none;box-shadow:none;filter:none;opacity:1;transition:none;text-decoration:none;
 }
}

/* Equal-sized Free workspace header actions on desktop. */
@media screen and (min-width:901px) and (pointer:fine), screen and (min-width:1401px){
 body.builder-page:not(.pro-user) .hero #proSignInLink,
 body.builder-page:not(.pro-user) .hero #loginLink{
  display:inline-flex;align-items:center;justify-content:center;
  width:132px;min-width:132px;height:52px;min-height:52px;
  padding:0 20px;border:1px solid #ff9fba!important;border-radius:999px;
  font-size:16px;line-height:1.2;font-weight:700;box-sizing:border-box;
 }
}

@media screen{
 body.builder-page #schedulePrev,body.builder-page #scheduleNext,
 body.builder-page #schedulePrev:hover,body.builder-page #scheduleNext:hover,
 body.builder-page #schedulePrev:focus-visible,body.builder-page #scheduleNext:focus-visible{
  background:#ff9fba!important;border-color:#ff9fba!important;color:#6b2e63!important;
 }
}

/* Solid supporting copy in Program Overview and Pro Program Structure. */
@media screen{
 body.builder-page .class-overview-pro-help,
 body.builder-page.pro-user #structureNote{color:#24312d!important;opacity:1!important}
}
