/* SAT+ Academic UI V1 — visual-only site-wide layer */
:root{
  --acad-bg:#f8fbff;
  --acad-white:#ffffff;
  --acad-blue:#1767d7;
  --acad-blue-2:#2f7ee9;
  --acad-navy:#0b2f5f;
  --acad-text:#173b66;
  --acad-muted:#5e7694;
  --acad-line:#c8dcf4;
  --acad-line-strong:#a9c8ed;
  --acad-soft:#eef6ff;
  --acad-soft-2:#f4f9ff;
  --acad-shadow:0 10px 28px rgba(35,82,145,.08);
  --acad-shadow-lg:0 18px 46px rgba(35,82,145,.10);
}

html{background:var(--acad-bg)!important;color-scheme:light}
body,
body.editorial-home,
body.portal-body,
body.modules-body,
body.bank-body,
body.test-body,
body.payment-body,
body.review-body{
  background:
    radial-gradient(circle at 0% 0%,rgba(96,160,248,.14),transparent 25rem),
    radial-gradient(circle at 100% 7%,rgba(190,222,255,.25),transparent 28rem),
    linear-gradient(180deg,#ffffff 0%,#f7fbff 44%,#ffffff 100%)!important;
  color:var(--acad-text)!important;
}
body::before,body::after{opacity:0!important}

/* Typography: never allow white/faded headings on a light page */
body h1,body h2,body h3,body h4,body h5,body h6,
body .brand-hero-title,body .logo,body .brand,body .sidebar-logo,
body .question-text,body .test-question-text,body .passage-text,
body .bank-question-title,body .markdown-body h1,body .markdown-body h2,body .markdown-body h3{
  color:var(--acad-navy)!important;
  -webkit-text-fill-color:var(--acad-navy)!important;
  background:none!important;
  text-shadow:none!important;
  opacity:1!important;
}
body p,body li,body small,body label,body td,body th,body blockquote,
body .intro,body .description,body .helper,body .hint,body .meta,body .subcopy,
body .quiet-copy,body .result-copy,body .status-copy,body .mission-paragraph{
  color:var(--acad-muted)!important;
  opacity:1!important;
  text-shadow:none!important;
}
body strong,body b{color:var(--acad-navy)!important;opacity:1!important}
body .eyebrow,body .tier,body .section-label,body .header-kicker,
body .inventory-year,body .bank-tier-eyebrow,body .pathway-task-kicker{
  color:var(--acad-blue)!important;
  opacity:1!important;
}

/* Academic navigation */
body .nav,body .editorial-nav,body .portal-header,body .modules-topbar,
body .test-topbar,body .test-header,body .bank-head,body .diag-header,
body .payment-header,body .review-nav,body .elite-header,body .admin-topbar{
  background:rgba(255,255,255,.97)!important;
  border:1px solid var(--acad-line)!important;
  box-shadow:0 8px 24px rgba(35,82,145,.07)!important;
  color:var(--acad-text)!important;
  backdrop-filter:blur(18px)!important;
}
body nav a,body .editorial-nav nav a,body .elite-header nav a{color:#365b87!important}
body nav a:hover,body .editorial-nav nav a:hover,body .elite-header nav a:hover{color:var(--acad-blue)!important}

/* Academic card system */
body :is(
  .card,.plan,.mini-plan,.login-card,.status-card,.security-card,.criteria-card,.upload-card,
  .policy-panel,.agreement-box,.method-panel,.structure-card,.transition-card,.summary-card,
  .summary-study-card,.summary-editor-shell,.video-study-card,.start-card,.question-card,
  .daily-question-card,.daily-section-summary,.today-focus-card,.subject-training-card,
  .subject-start-panel,.math-start-panel,.reading-start-panel,.module-card,.module-intro,
  .module-rules,.module-status,.module-visual,.navigator-panel,.question-panel,.question-reader,
  .question-sidebar,.question-shell,.question-screen,.passage-card,.text-card,.snapshot-card,
  .choices-card,.practice-question,.test-question-card,.test-passage-card,.test-summary,.mode-card,
  .test-access-lock,.bank-stat-card,.bank-proof-panel,.inventory-card,.real-inventory-preview,
  .mission-statement-card,.overview-score-box,.overview-shortcut-card,.pathway-detail-card,
  .diagnostic-launch-panel,.tier-upsell-panel,.training-lock,.pro-unlock-panel,.recommendation-block,
  .recommended-plan,.analysis-block,.report-capture,.total-score-card,.result-primary,.result-metrics,
  .results-detail,.review-panel,.review-form,.reviews-loading-card,.editorial-review-grid article,
  .home-review-grid article,.contact-panel,.payment-callout,.portal-callout,.elite-cta-block,
  .elite-price-panel,.application-shell,.thanks-card,.free-question-message,.free-training-status,
  .saved-result,.calculator-result,.enrollment-detail,.enrollment-step,.daily-step,.daily-live-card,
  .real-bank-panel,.daily-practice-card,.editorial-final,.editorial-image-panel,.profile-dashboard,
  .live-console,.scanner-shell,.visual-frame,.reader-hero,.markdown-card,.resource-block,.resource-item,
  .editor-dialog,.preview-pane,.pdf-uploader,.sat-help-widget,.sat-help-body,.sat-help-compose
){
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  border:1px solid var(--acad-line)!important;
  color:var(--acad-text)!important;
  box-shadow:var(--acad-shadow)!important;
}

/* Home page becomes a series of bordered academic sections */
body.editorial-home main>section,
body.editorial-home .discover-section,
body.editorial-home .editorial-programs,
body.editorial-home .editorial-reviews,
body.editorial-home .editorial-final{
  background:transparent!important;
}
body.editorial-home :is(.satplus-start,.real-bank-section,.mission-statement-section,.editorial-programs,.editorial-reviews,.editorial-final){
  border:1px solid var(--acad-line)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 95% 5%,rgba(128,183,255,.14),transparent 22rem),
    linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  box-shadow:var(--acad-shadow)!important;
  overflow:hidden!important;
}
body.editorial-home .simple-brand-hero{
  border-bottom:1px solid var(--acad-line)!important;
}
body.editorial-home .satplus-simple-head h2,
body.editorial-home .real-bank-copy h2,
body.editorial-home .mission-section-head h2,
body.editorial-home .editorial-section-head h2,
body.editorial-home .editorial-final h2{
  color:var(--acad-navy)!important;
  -webkit-text-fill-color:var(--acad-navy)!important;
  max-width:16ch!important;
}
body.editorial-home .satplus-simple-head h2 strong,
body.editorial-home .real-bank-copy h2 strong{
  color:var(--acad-blue)!important;
  -webkit-text-fill-color:var(--acad-blue)!important;
}

/* Academic line details */
body .eyebrow::after{
  content:"";
  display:inline-block;
  width:72px;
  height:1px;
  margin-left:14px;
  vertical-align:middle;
  background:#8aabd4;
}
body .enrollment-step>span,body .daily-step>span,body .choice-letter,
body .intro-fact,body .preview-options span,body .sat-help-avatar{
  background:var(--acad-soft)!important;
  color:var(--acad-blue)!important;
  border:1px solid var(--acad-line)!important;
}
body .enrollment-step.active,body .daily-step.active,
body .simple-task-card.primary,body .plan.featured,body .precision-plan{
  background:linear-gradient(145deg,#fff,#edf5ff)!important;
  border-color:var(--acad-line-strong)!important;
}

/* Buttons */
body :is(.btn.primary,.nav-cta,.primary-action,.primary-button,.buy-button,.hero-diagnostic-button,
.pathway-action-button,.start-test-button,.test-primary-button,.checkout-button,.payment-button,
.submit-review-btn,.save-button,.next-question-button,.sat-help-launcher){
  background:linear-gradient(135deg,#2f7ee9,#1763cf)!important;
  color:#fff!important;
  border:1px solid transparent!important;
  box-shadow:0 9px 22px rgba(36,105,207,.18)!important;
}
body :is(.btn.primary,.nav-cta,.primary-action,.primary-button,.buy-button,.hero-diagnostic-button,
.pathway-action-button,.start-test-button,.test-primary-button,.checkout-button,.payment-button,
.submit-review-btn,.save-button,.next-question-button,.sat-help-launcher) *{color:#fff!important}
body :is(.btn.secondary,.secondary-action,.secondary-button,.quiet-link,.top-actions a,.top-actions button,
.result-actions button,.result-actions a,.inventory-carousel-controls button,.task-circle-button){
  background:#fff!important;
  color:#1c59a8!important;
  border:1px solid var(--acad-line-strong)!important;
  box-shadow:none!important;
}

/* Inputs and choices */
body input,body textarea,body select{
  background:#fff!important;
  color:var(--acad-navy)!important;
  border:1px solid var(--acad-line-strong)!important;
  box-shadow:none!important;
}
body input::placeholder,body textarea::placeholder{color:#8296af!important}
body :is(.choice,.answer-choice,.answer-button,.practice-choice,.adaptive-choice,.choice-list li,.preview-option,.question-map button,.map-button){
  background:#fff!important;
  color:var(--acad-navy)!important;
  border:1px solid var(--acad-line)!important;
}
body :is(.choice,.answer-choice,.answer-button,.practice-choice,.adaptive-choice,.preview-option):hover{
  background:var(--acad-soft)!important;
  border-color:#96bced!important;
}
body :is(.choice,.answer-choice,.answer-button,.practice-choice,.adaptive-choice,.preview-option).selected{
  background:#dfedff!important;
  border-color:#4789ec!important;
}

/* Portal / modules / bank / tests */
body .portal-sidebar,body .sidebar{
  background:#fff!important;
  border-color:var(--acad-line)!important;
  box-shadow:8px 0 28px rgba(35,82,145,.06)!important;
}
body .portal-nav-button,body .sidebar-nav button,body .sidebar-link{color:#516c8d!important}
body .portal-nav-button.active,body .sidebar-nav button.active,body .sidebar-link.active{
  background:var(--acad-soft)!important;
  color:var(--acad-blue)!important;
  border-color:var(--acad-line)!important;
}
body .filter-row button{
  background:#fff!important;
  color:#536e8e!important;
  border:1px solid var(--acad-line)!important;
}
body .filter-row button.active{background:var(--acad-blue)!important;color:#fff!important}
body .video-frame,body .video-empty-state{background:#eef5ff!important;border-color:var(--acad-line)!important}

/* Tables */
body table thead th{background:var(--acad-soft)!important;color:var(--acad-blue)!important;border-color:#dce8f6!important}
body table tbody td,body table tbody th{background:#fff!important;color:#536e8e!important;border-color:#e3edf8!important}

/* Help widget */
body .sat-help-header,body .sat-help-footer,body .sat-help-compose{background:#f6faff!important;border-color:var(--acad-line)!important}
body .sat-help-bubble{background:var(--acad-soft)!important;color:var(--acad-navy)!important;border:1px solid var(--acad-line)!important}

/* Modal backdrops: blue-gray, never black */
body dialog::backdrop,body .editor-dialog::backdrop{background:rgba(49,83,128,.20)!important;backdrop-filter:blur(6px)!important}

/* Never allow inline white text to disappear on a white surface, except blue CTA buttons */
body [style*="color:white"],body [style*="color: white"],body [style*="color:#fff"],body [style*="color: #fff"],body [style*="color:#ffffff"],body [style*="color: #ffffff"]{
  color:var(--acad-navy)!important;
}
body :is(.btn.primary,.nav-cta,.primary-action,.primary-button,.buy-button,.hero-diagnostic-button,
.pathway-action-button,.start-test-button,.test-primary-button,.checkout-button,.payment-button,
.submit-review-btn,.save-button,.next-question-button,.sat-help-launcher)[style*="color"]{color:#fff!important}

/* Remove legacy dark UI fills while preserving source images/video */
body [style*="background:#000"],body [style*="background: #000"],
body [style*="background:#050"],body [style*="background:#060"],body [style*="background:#070"],
body [style*="background:#080"],body [style*="background:#090"],
body [style*="background-color:#000"],body [style*="background-color: #000"]{
  background:#fff!important;
}

@media(max-width:760px){
  body nav.open,body .editorial-nav nav.open,body .elite-header nav.open{
    background:#fff!important;
    border:1px solid var(--acad-line)!important;
    box-shadow:0 14px 34px rgba(35,82,145,.10)!important;
  }
}

/* SAT+ Academic V2 — stronger inner-page structure */
:root{
  --academic-blue:#1767d7;
  --academic-navy:#0b2f5f;
  --academic-text:#33587f;
  --academic-muted:#667f9d;
  --academic-line:#c9ddf5;
  --academic-soft:#eef6ff;
  --academic-bg:#f8fbff;
  --academic-shadow:0 12px 30px rgba(35,82,145,.08);
}
body:not(.academic-home-v2){
  background:
    radial-gradient(circle at 0% 0%,rgba(100,164,250,.12),transparent 25rem),
    linear-gradient(180deg,#fff 0%,#f7fbff 55%,#fff 100%)!important;
}
body:not(.academic-home-v2) :is(.portal-header,.modules-topbar,.bank-head,.test-header,.test-topbar,.diag-header,.payment-header,.review-nav,.elite-header,.admin-topbar){
  min-height:68px!important;
  border-radius:0!important;
  border-left:0!important;border-right:0!important;border-top:0!important;
}
body:not(.academic-home-v2) :is(.portal-shell,.modules-shell,.bank-shell,.test-shell,.welcome-shell,.results-shell,.lab-shell,.payment-shell,.review-shell,.elite-shell){
  max-width:1240px!important;
}
body:not(.academic-home-v2) :is(.card,.panel,.login-card,.module-card,.question-card,.daily-question-card,.summary-card,.review-card,.payment-card,.checkout-card,.criteria-card,.policy-panel,.agreement-box,.status-card,.overview-score-box,.simple-task-card,.pathway-task,.question-shell,.test-question-card,.test-passage-card,.bank-stat-card,.resource-block,.markdown-card,.application-shell){
  border-radius:16px!important;
  border:1px solid var(--academic-line)!important;
  box-shadow:var(--academic-shadow)!important;
}
body:not(.academic-home-v2) :is(h1,h2,h3,h4){
  color:var(--academic-navy)!important;
  -webkit-text-fill-color:var(--academic-navy)!important;
  background:none!important;
  text-shadow:none!important;
}
body:not(.academic-home-v2) :is(p,li,label,small,.muted,.helper,.description,.subcopy,.meta){color:var(--academic-muted)!important;opacity:1!important}
body:not(.academic-home-v2) :is(.eyebrow,.tier,.header-kicker,.section-label){color:var(--academic-blue)!important;opacity:1!important}
body:not(.academic-home-v2) :is(input,textarea,select){border-radius:9px!important;background:#fff!important;border:1px solid #bdd4ef!important;color:var(--academic-navy)!important}
body:not(.academic-home-v2) :is(.btn,.primary-action,.secondary-action,.primary-button,.secondary-button,.buy-button,.checkout-button,.payment-button,.start-test-button,.test-primary-button){border-radius:8px!important}
body:not(.academic-home-v2) :is(.choice,.answer-choice,.answer-button,.practice-choice,.adaptive-choice,.preview-option){border-radius:12px!important}
body:not(.academic-home-v2) table{border:1px solid var(--academic-line)!important;border-radius:12px!important;overflow:hidden!important}
body:not(.academic-home-v2) table thead th{background:#edf5ff!important;color:#1767d7!important}
body:not(.academic-home-v2) .portal-sidebar,body:not(.academic-home-v2) .sidebar{background:#fff!important;border-color:var(--academic-line)!important}
body:not(.academic-home-v2) .portal-nav-button.active,body:not(.academic-home-v2) .sidebar-link.active,body:not(.academic-home-v2) .sidebar-nav button.active{background:#e9f3ff!important;color:#1767d7!important}
body:not(.academic-home-v2) dialog::backdrop,body:not(.academic-home-v2) .editor-dialog::backdrop{background:rgba(58,91,135,.18)!important}
