/* SAT+ Blue / White System Theme
   Visual-only override. No access, payment, auth, data, OCR, or application logic. */
:root{
  --bg:#F5F9FF !important;
  --sidebar:#FFFFFF !important;
  --panel:#FFFFFF !important;
  --panel-2:#EEF5FF !important;
  --panel2:#EEF5FF !important;
  --chip:#EAF2FF !important;
  --text:#10233F !important;
  --muted:#60738E !important;
  --silver:#D8E7FB !important;
  --silver-dark:#6E829D !important;
  --line:rgba(35,91,170,.14) !important;
  --line-strong:rgba(35,91,170,.26) !important;
  --line2:rgba(35,91,170,.26) !important;
  --accent:#2B6DE5 !important;
  --accent-ice:#8FC3FF !important;
  --accent-soft:rgba(43,109,229,.10) !important;
  --portal-accent:#2B6DE5 !important;
  --portal-accent-rgb:43,109,229 !important;
  --portal-accent-soft:rgba(43,109,229,.10) !important;
  --good:#187A54 !important;
  --warn:#A96300 !important;
  --bad:#C54646 !important;
  --danger:#D94755 !important;
  --success:#187A54 !important;
  --warning:#A96300 !important;
  --gold:#B7791F !important;
  --ice:#DCEBFF !important;
  --simple-bg:#F5F9FF !important;
  --simple-panel:#FFFFFF !important;
  --simple-muted:#60738E !important;
  --simple-line:rgba(35,91,170,.14) !important;
  --simple-line-strong:rgba(35,91,170,.24) !important;
}

html{background:#F5F9FF!important}
body,
.editorial-home{
  background:
    radial-gradient(circle at 9% 2%,rgba(98,165,255,.18),transparent 28rem),
    radial-gradient(circle at 90% 16%,rgba(190,220,255,.24),transparent 32rem),
    linear-gradient(180deg,#F8FBFF 0%,#F2F7FF 48%,#F8FBFF 100%) !important;
  color:#10233F !important;
}
body::before{opacity:.012!important;mix-blend-mode:multiply}
::selection{background:#BFD9FF;color:#0F3267}

/* Typography */
h1,h2,h3,h4,h5,h6,strong,b{color:#10233F}
p,small{color:inherit}
.eyebrow,.section-label,.header-kicker,.tier,.top-copy span,.inventory-year,
.text-card-label,.pathway-task-kicker,.bank-stat span,.bank-tier-eyebrow{
  color:#2B6DE5 !important;
}
.logo,.metal-logo,.floating-logo,.sidebar-logo,.test-logo,.brand,
.editorial-home .brand-hero-title,.editorial-home .editorial-nav .logo{
  background:none!important;
  color:#1659C7!important;
  -webkit-text-fill-color:#1659C7!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
}

/* Navigation / top chrome */
.nav,.editorial-nav,.elite-header,.payment-header,.review-nav,.admin-topbar,
.modules-topbar,.test-header,.test-topbar,.bank-head,.diag-header,.lab-header,
.portal-header,.adaptive-header,.sat-help-header{
  background:rgba(255,255,255,.88)!important;
  border-color:rgba(35,91,170,.14)!important;
  color:#18304F!important;
  box-shadow:0 12px 34px rgba(48,92,153,.08)!important;
  backdrop-filter:blur(18px)!important;
}
nav,.editorial-nav nav,.elite-header nav{color:#506780!important}
nav a:hover,.editorial-nav nav a:hover,.elite-header nav a:hover{color:#1659C7!important}
.menu-btn{color:#1659C7!important}
.nav-cta,.btn.primary,.primary,.buy-button,.submit-review-btn,.next-question-button,
.hero-diagnostic-button,.pathway-action-button,.submit-module-button,
#reportForm button,.test-primary-button,.start-test-button,.payment-button,
.checkout-button,.save-button{
  background:linear-gradient(135deg,#2F75EA 0%,#1D5CCA 100%)!important;
  color:#FFFFFF!important;
  border-color:transparent!important;
  box-shadow:0 10px 24px rgba(43,109,229,.18)!important;
}
.btn.secondary,.secondary,.quiet-link,.top-actions a,.top-actions button,
.result-actions button,.result-actions a{
  background:#FFFFFF!important;
  border-color:rgba(35,91,170,.16)!important;
  color:#24538F!important;
}

/* Surfaces */
.card,.plan,.plan-card,.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{
  background:#FFFFFF!important;
  border-color:rgba(35,91,170,.14)!important;
  color:#10233F!important;
  box-shadow:0 14px 40px rgba(48,92,153,.07)!important;
}

/* Secondary / tinted surfaces */
.plan.featured,.precision-plan,.core-plan,.elite-plan,.elite-spotlight,
.simple-task-card.primary,.module-card:hover,.overview-score-button:hover,
.inventory-card:hover,.mission-statement-card:hover{
  background:linear-gradient(145deg,#FFFFFF 0%,#EEF5FF 100%)!important;
  border-color:rgba(43,109,229,.28)!important;
}

/* Homepage */
.editorial-home .simple-brand-hero,
.editorial-home .editorial-hero,
.satplus-start,.real-bank-section,.daily-practice-section,.mission-statement-section,
.editorial-programs,.editorial-reviews,.home-reviews,#contact{
  color:#10233F!important;
}
.editorial-home .brand-hero-positioning,
.editorial-home .brand-feature-line,
.editorial-home .editorial-microcopy,
.satplus-simple-head>p,.editorial-section-head>p,
.inventory-preview-head p,.inventory-preview-footer,.mission-paragraph,
.home-review-grid p,.editorial-review-grid p,.contact-panel>div>p{
  color:#60738E!important;
}
.editorial-home .brand-hero-positioning strong,
.editorial-home .brand-feature-line strong{color:#164FAD!important}
.editorial-home .discover-section::before{
  background:linear-gradient(90deg,transparent,rgba(43,109,229,.26),transparent)!important;
}
.university-band,.hero-university-band{
  background:linear-gradient(180deg,rgba(255,255,255,.65),rgba(235,244,255,.72))!important;
  border-color:rgba(35,91,170,.12)!important;
}
.university-band-head small,.uni-name{color:#637691!important}
.uni-mark{background:rgba(255,255,255,.72)!important;border-color:rgba(35,91,170,.12)!important}
.inventory-carousel-shell{background:linear-gradient(135deg,#EEF5FF,#FFFFFF)!important;border-color:rgba(35,91,170,.12)!important}
.inventory-carousel-controls button,.task-circle-button{
  background:#EAF2FF!important;color:#1D5FC8!important;border-color:#C8DBF8!important;
}
.inventory-card b{color:#2B6DE5!important}
.mission-statement-card{background:linear-gradient(145deg,#FFFFFF,#F1F7FF)!important}
.mission-paragraph{color:#334D6D!important;text-shadow:none!important;opacity:1!important}
.plan .perk-list li,.plan ul,.editorial-plan-grid .perk-list li{color:#526984!important}
.plan li::before,.placement-box li::before{color:#2B6DE5!important}
.popular,.precision-sale-badge{background:#DDEBFF!important;color:#164FAD!important;border-color:#C6DBFA!important}
.price strong,.mini-price,.recommended-price strong{color:#123B76!important}
.home-review-stars,.review-stars{color:#D9981B!important}
.home-review-grid article>span,.editorial-review-grid span{color:#667B95!important}
.editorial-footer,.footer{border-color:rgba(35,91,170,.12)!important;color:#60738E!important}
.editorial-footer-links{color:#365C8A!important}

/* Portal */
.portal-shell,.portal-app,.login-screen,.content,.adaptive-content,
.modules-shell,.bank-shell,.test-shell,.welcome-shell,.results-shell,.lab-shell{
  color:#10233F!important;
}
.portal-sidebar,.sidebar{
  background:#FFFFFF!important;
  border-color:rgba(35,91,170,.12)!important;
  box-shadow:10px 0 34px rgba(48,92,153,.06)!important;
}
.portal-nav-button,.sidebar-nav button,.sidebar-link{
  color:#536B87!important;
}
.portal-nav-button.active,.sidebar-nav button.active,.sidebar-link.active{
  background:#EAF2FF!important;color:#1A59BF!important;border-color:#C9DBF6!important;
}
.adaptive-status-pill,.engine-status,.status-pill,.match-chip,.tier-chip,
.bank-pill,.module-chip,.subject-chip,.question-count{
  background:#EDF4FF!important;color:#245BBD!important;border-color:#D0E0F8!important;
}
.daily-progress-shell,.daily-head-status,.free-training-status,
.score-progress,.progress-track,.bar,.daily-ten-bar{
  background:#E9F1FC!important;border-color:#D5E3F7!important;
}
.score-progress>i,.progress-track i,.bar div,.mini-chart-line,
.daily-ten-bar i.complete{
  background:linear-gradient(90deg,#4B88EF,#93BFFF)!important;
}
.simple-task-card,.pathway-task{
  background:linear-gradient(145deg,#FFFFFF,#F5F9FF)!important;
  border-color:rgba(35,91,170,.14)!important;
  color:#10233F!important;
}
.simple-task-card strong,.pathway-task strong{color:#10233F!important}
.hero-quote{color:#62758F!important}
.overview-score-box strong{color:#143B70!important}
.overview-score-box strong em{color:#7A8EA8!important}

/* Question / test areas */
.choice,.answer-choice,.answer-button,.practice-choice,.adaptive-choice,
.choice-list li,.preview-option,.question-map button,.map-button{
  background:#FFFFFF!important;
  border-color:#D5E3F7!important;
  color:#173657!important;
}
.choice:hover,.answer-choice:hover,.answer-button:hover,.practice-choice:hover,
.adaptive-choice:hover,.preview-option:hover{
  background:#EEF5FF!important;
  border-color:#9FC2F4!important;
}
.choice.selected,.answer-choice.selected,.answer-button.selected,.practice-choice.selected,
.adaptive-choice.selected,.preview-option.selected{
  background:#E2EEFF!important;
  border-color:#4B88EF!important;
  box-shadow:0 0 0 2px rgba(43,109,229,.08)!important;
}
.choice-letter,.choice-list .choice-letter,.answer-button span{
  background:#EAF2FF!important;color:#1D5FC8!important;border-color:#C8DBF8!important;
}
input,textarea,select,.search-box input,#reportForm input{
  background:#FFFFFF!important;
  color:#10233F!important;
  border-color:#C9DBF5!important;
  box-shadow:none!important;
}
input::placeholder,textarea::placeholder{color:#8A9CB4!important}
input:focus,textarea:focus,select:focus{border-color:#4B88EF!important;outline:3px solid rgba(43,109,229,.10)!important}

/* Module reader */
.reader-hero,.reader-body,.reader-pane,.lesson-pane,.notes-pane,.study-pane,
.module-reader,.module-reader-shell,.problem-card-body,.problem-card-header,.problem-card-footer{
  background:#FFFFFF!important;color:#10233F!important;border-color:rgba(35,91,170,.14)!important;
}
.reader-hero p,.module-card p,.library-hero p:not(.eyebrow),.reader-body p,.lesson-pane p,.notes-pane p{
  color:#60738E!important;
}
.filter-row button{background:#FFFFFF!important;color:#526984!important;border-color:#D3E2F6!important}
.filter-row button.active{background:#2B6DE5!important;color:#FFFFFF!important;border-color:#2B6DE5!important}

/* Review pages */
.review-ambient{background:radial-gradient(circle at 20% 0,rgba(105,165,255,.18),transparent 30rem)!important}
.review-toggle,.review-button{background:#FFFFFF!important;color:#28588F!important;border-color:#D3E2F6!important}
.review-toggle.active,.review-button.active{background:#2B6DE5!important;color:white!important}
.review-stars button{color:#C58A1A!important}

/* Payment / status */
.payment-hero h1,.result-hero h1,.reviews-hero h1,.admin-hero h1,.hub-hero h1,
.setup-hero h1,.library-hero h1,.reader-hero h1,.intro-screen h1{
  color:#10233F!important;
  background:none!important;
  -webkit-text-fill-color:#10233F!important;
}
.price,.payment-price,.status-message{color:#143B70!important}

/* Alerts */
.correct,.success,.good,.status-success{background:#EAF8F1!important;color:#17633F!important;border-color:#BDE7D0!important}
.wrong,.error,.bad,.danger,.status-error{background:#FFF0F0!important;color:#A23B3B!important;border-color:#F1C5C5!important}
.warning,.warn{background:#FFF7E8!important;color:#8A5700!important;border-color:#F0D49A!important}

/* Mobile nav dropdowns */
@media(max-width:760px){
  nav.open,.editorial-nav nav.open,.elite-header nav.open{
    background:#FFFFFF!important;
    border-color:#D3E2F6!important;
    box-shadow:0 18px 50px rgba(48,92,153,.12)!important;
  }
}

/* Preserve photographs, diagrams, screenshots, university crests and source figures as-is. */
img,video,canvas{filter:none!important}

/* Final contrast and component audit */
:root{color-scheme:light}

/* Login / account access */
.login-card label,.profile-form label{color:#425B78!important}
.login-helper,.security-note,.login-links,.login-links a,.forgot-button{color:#60738E!important}
.auth-tabs{background:#EDF4FF!important;border-color:#D2E1F6!important}
.auth-tab{color:#536B87!important}
.auth-tab.active{background:#FFFFFF!important;color:#1B58BC!important;box-shadow:0 3px 10px rgba(48,92,153,.08)!important}
.primary-action{
  background:linear-gradient(135deg,#2F75EA,#1D5CCA)!important;
  color:#FFFFFF!important;
  border-color:transparent!important;
}
.secondary-action,.placement-link{background:#FFFFFF!important;color:#24538F!important;border-color:#C9DBF5!important}
.login-features{border-color:#D3E2F6!important;background:rgba(255,255,255,.54)!important}
.login-features strong{color:#173B6A!important}

/* Diagnostic polish */
.primary-button{
  background:linear-gradient(135deg,#2F75EA,#1D5CCA)!important;
  color:#FFFFFF!important;
  box-shadow:0 10px 24px rgba(43,109,229,.18)!important;
}
.demo-link-button{background:#FFFFFF!important;color:#275A96!important;border-color:#C9DBF5!important}
.demo-link-button:hover{color:#164FAD!important;border-color:#91B7EE!important}
.intro-orbit:before,.intro-orbit:after,.intro-orbit i{border-color:rgba(43,109,229,.18)!important}
.intro-orbit strong{background:none!important;color:#2B6DE5!important;-webkit-text-fill-color:#2B6DE5!important}
.intro-fact{background:#FFFFFF!important;border-color:#D5E3F7!important}
.intro-fact span,.preview-head span{color:#55718F!important}
.intro-fact strong,.preview-head strong{color:#183B68!important}
.intro-fact small,.intro-foot{color:#7589A4!important}
.intro-fact.active{background:#E9F2FF!important;border-color:#73A4EC!important}
.interactive-preview{background:#FFFFFF!important;border-color:#D5E3F7!important}
.interactive-preview p{color:#5D728D!important}
.preview-options span{background:#F4F8FF!important;color:#466684!important;border-color:#D3E2F6!important}
.practice-demo-strip{background:linear-gradient(120deg,#FFFFFF,#EEF5FF)!important;border-color:#CFE0F7!important}
.practice-demo-strip>a{background:#E2EEFF!important;color:#174EA6!important}

/* Modules loader / reader */
.loader-orb{background:#E8F1FF!important;color:#1B5EC4!important;border-color:#C8DBF8!important}

/* Payment readability */
.security-card p,.checkout-account p,.checkout-account-first p,.payment-hero>div>p:not(.eyebrow),
.checkout-copy,.checkout-email-status,.payment-note{color:#60738E!important}
.security-card strong,.checkout-account strong,.checkout-account-first strong{color:#173B6A!important}
.checkout-account-first{background:#F0F6FF!important;border-color:#CFE0F7!important}
.checkout-account-first>a{background:#FFFFFF!important;color:#1B5EC4!important;border-color:#C7DCF8!important}
.benefit-emphasis{color:#1A56B2!important}

/* Forms and subdued copy across auxiliary pages */
.form-note,.helper,.helper-text,.hint,.meta,.subcopy,.quiet-copy,.description,
.status-copy,.result-copy,.criteria-card p,.policy-panel p,.agreement-box p{color:#60738E!important}

/* Stable blue borders on interactive controls */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(43,109,229,.18)!important;
  outline-offset:2px!important;
}

/* White / blue scrollbars where supported */
*{scrollbar-color:#94B8EB #EAF2FF}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:#EAF2FF}
::-webkit-scrollbar-thumb{background:#94B8EB;border:3px solid #EAF2FF;border-radius:999px}
::-webkit-scrollbar-thumb:hover{background:#6C9FE4}

/* Brand marks that use page-specific classes */
.diag-logo,.payment-logo,.review-brand,.admin-brand,.bank-brand,.test-brand,
.modules-topbar .brand,.sat-help-brand{
  background:none!important;
  color:#1659C7!important;
  -webkit-text-fill-color:#1659C7!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
}


/* =====================================================================
   SAT+ BLUE / WHITE REFINEMENT V2
   Final visual-only override: eliminate legacy black/navy surfaces.
   ===================================================================== */
:root{
  --satplus-white:#FFFFFF;
  --satplus-page:#F7FAFF;
  --satplus-blue-50:#F1F6FF;
  --satplus-blue-100:#E7F0FF;
  --satplus-blue-200:#CFE0FA;
  --satplus-blue-300:#A9C8F5;
  --satplus-blue-500:#2D74E8;
  --satplus-blue-600:#1F63D2;
  --satplus-blue-700:#174EAA;
  --satplus-navy:#0F2D57;
  --satplus-copy:#4E6685;
  --satplus-shadow:0 14px 36px rgba(47,95,160,.08);
}

html,body{background:#F7FAFF!important;color:#0F2D57!important}
body,
body.editorial-home,
body.portal-body,
body.modules-body,
body.bank-body,
body.test-body,
body.review-body,
body.payment-body{
  background:
    radial-gradient(circle at 0% 0%,rgba(98,160,248,.14),transparent 26rem),
    radial-gradient(circle at 100% 8%,rgba(181,215,255,.22),transparent 30rem),
    linear-gradient(180deg,#FBFDFF 0%,#F5F9FF 52%,#FFFFFF 100%)!important;
}

/* Main structural surfaces */
main,section,article,aside,header,footer,nav{border-color:rgba(41,101,185,.13)}

/* Explicit legacy dark sections that survived v1 */
.enrollment-detail,
.enrollment-step,
.daily-step,
.daily-live-card,
.daily-visual,
.real-bank-visual,
.real-bank-panel,
.daily-practice-card,
.bank-preview-panel,
.bank-visual-card,
.plan-visual,
.program-card,
.editorial-program-card,
.review-card,
.contact-panel,
.placement-box,
.score-card,
.score-grid>div,
.target,
.table-wrap,
thead th,
.portal-callout,
.login-card,
.portal-section-card,
.metric-card,
.metric-badge,
.tier-orb,
.module-live-row,
.module-live-icon,
.pathway-task,
.simple-task-card,
.pathway-detail-card,
.diagnostic-launch-panel,
.daily-overview-card,
.daily-diagnostic-card,
.daily-workspace-card,
.adaptive-card,
.adaptive-panel,
.training-panel,
.subject-panel,
.subject-training-card,
.subject-start-panel,
.math-start-panel,
.reading-start-panel,
.module-card,
.reader-hero,
.reader-layout,
.markdown-card,
.resource-block,
.resource-item,
.video-frame,
.editor-dialog,
.preview-pane,
.editor-pane,
.pdf-uploader,
.test-card,
.test-runner-card,
.test-question-card,
.test-passage-card,
.test-snapshot-details,
.question-map,
.summary-card,
.result-card,
.bank-shell-card,
.bank-card,
.question-shell,
.question-panel,
.passage-card,
.text-card,
.snapshot-card,
.choices-card,
.ocr-status,
.filter-card,
.bank-entitlement-bar,
.test-entitlement-bar,
.test-access-lock,
.payment-card,
.checkout-card,
.security-card,
.checkout-account,
.checkout-account-first,
.status-card,
.elite-card,
.application-card,
.criteria-card,
.policy-panel,
.agreement-box,
.review-panel,
.review-form,
.review-item,
.admin-card,
.thanks-card,
.demo-card,
.preview-card,
.question-preview,
.interactive-preview{
  background:#FFFFFF!important;
  color:#0F2D57!important;
  border-color:rgba(41,101,185,.14)!important;
  box-shadow:var(--satplus-shadow)!important;
}

/* Cards that should feel slightly differentiated */
.enrollment-step,
.daily-step,
.pathway-task,
.simple-task-card,
.module-card,
.resource-item,
.choice,
.answer-choice,
.answer-button,
.practice-choice,
.adaptive-choice,
.preview-option,
.mode-card{
  background:linear-gradient(145deg,#FFFFFF,#F6F9FF)!important;
}

.enrollment-step:hover,
.daily-step:hover,
.enrollment-step.active,
.daily-step.active,
.pathway-task:hover,
.simple-task-card:hover,
.module-card:hover,
.resource-item:hover,
.mode-card:hover{
  background:linear-gradient(145deg,#FFFFFF,#EAF3FF)!important;
  border-color:#AFCBF1!important;
  box-shadow:0 16px 38px rgba(47,95,160,.11)!important;
}

.enrollment-step strong,.daily-step strong,
.enrollment-detail h3,.enrollment-detail-top>span,
.module-card h2,.reader-hero h1,
.markdown-body h1,.markdown-body h2,.markdown-body h3,
.question-text,.passage-text,
.test-question-text,.test-passage-text,
.bank-question-title,.bank-question-text{
  color:#0F2D57!important;
}
.enrollment-step small,.daily-step small,
.enrollment-detail>p,
.library-hero p:not(.eyebrow),
.module-card p,.reader-hero p,
.markdown-body p,.markdown-body li,
.resource-item small,
.empty-resource{
  color:#58708E!important;
}
.enrollment-step>span,.daily-step>span{
  background:#EAF2FF!important;
  color:#1F63D2!important;
  border:1px solid #D1E2FA!important;
}
.enrollment-step.active>span,.daily-step.active>span{
  background:#DCEBFF!important;
  color:#174EAA!important;
  border-color:#9FBFEC!important;
}

/* Remove dark tables, dialogs and media shells */
thead th{
  background:#EAF2FF!important;
  color:#174EAA!important;
}
tbody th,tbody td{color:#3F5877!important;background:#FFFFFF!important}
.editor-dialog{
  background:#FFFFFF!important;
  color:#0F2D57!important;
  border-color:#BFD5F3!important;
  box-shadow:0 32px 90px rgba(47,95,160,.18)!important;
}
.editor-dialog::backdrop{background:rgba(44,78,126,.18)!important;backdrop-filter:blur(5px)}
.editor-grid input,.editor-grid textarea,.editor-grid select,.editor-pane textarea{
  background:#FFFFFF!important;color:#0F2D57!important;border-color:#C8DAF2!important;
}
.video-frame{background:#EFF5FD!important}
.preview-pane{background:#F7FAFF!important}

/* Navigation must always remain light */
.nav,.editorial-nav,.portal-header,.modules-topbar,.test-topbar,.test-header,
.bank-head,.diag-header,.payment-header,.review-nav,.elite-header,.admin-topbar{
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(41,101,185,.14)!important;
  box-shadow:0 10px 30px rgba(47,95,160,.075)!important;
}
@media(max-width:760px){
  nav,nav.open,.editorial-nav nav,.editorial-nav nav.open{
    background:#FFFFFF!important;
    color:#244F86!important;
  }
}

/* Crisp buttons */
.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{
  background:linear-gradient(135deg,#347FEB 0%,#1D63D5 100%)!important;
  color:#FFFFFF!important;
  border:1px solid rgba(29,99,213,.08)!important;
  box-shadow:0 10px 22px rgba(34,104,210,.18)!important;
}
.btn.primary:hover,.nav-cta:hover,.primary-action:hover,.primary-button:hover,
.buy-button:hover,.hero-diagnostic-button:hover,.pathway-action-button:hover,
.start-test-button:hover,.test-primary-button:hover,.checkout-button:hover,
.payment-button:hover,.submit-review-btn:hover,.save-button:hover{
  background:linear-gradient(135deg,#2F77E4,#1657C0)!important;
  box-shadow:0 13px 28px rgba(34,104,210,.22)!important;
}
.btn.secondary,.secondary-action,.secondary-button,.quiet-link,
.top-actions a,.top-actions button{
  background:#FFFFFF!important;
  color:#1D579F!important;
  border-color:#C9DCF5!important;
}

/* Portal sidebar and controls */
.portal-sidebar,.sidebar{
  background:#FFFFFF!important;
  border-right:1px solid #D8E6F8!important;
}
.portal-nav-button:hover,.sidebar-nav button:hover,.sidebar-link:hover{
  background:#F0F6FF!important;color:#174EAA!important;
}
.portal-nav-button.active,.sidebar-nav button.active,.sidebar-link.active{
  background:#E4EFFF!important;color:#174EAA!important;border-color:#BDD4F2!important;
}

/* Inputs / answer choices */
input,textarea,select{
  background:#FFFFFF!important;color:#0F2D57!important;border-color:#C9DCF5!important;
}
.choice,.answer-choice,.answer-button,.practice-choice,.adaptive-choice,.preview-option,.choice-list li{
  background:#FFFFFF!important;color:#183B67!important;border-color:#D2E2F5!important;
}
.choice:hover,.answer-choice:hover,.answer-button:hover,.practice-choice:hover,.adaptive-choice:hover,.preview-option:hover{
  background:#EDF5FF!important;border-color:#9BBFEE!important;
}
.choice.selected,.answer-choice.selected,.answer-button.selected,.practice-choice.selected,.adaptive-choice.selected,.preview-option.selected{
  background:#E0EEFF!important;border-color:#4B88EF!important;
}

/* Misc legacy dark backgrounds */
.score-grid div,.target,.contact-links a,.profile-big-score,.profile-sections div,
.profile-weakness,.profile-next,.question-map,.free-question-message,
.free-training-status,.saved-result,.calculator-result{
  background:#F4F8FE!important;
  color:#24496F!important;
  border-color:#D5E4F6!important;
}
.placement-box{background:linear-gradient(145deg,#FFFFFF,#EEF5FF)!important}
.portal-callout{background:linear-gradient(145deg,#FFFFFF,#EFF6FF)!important}

/* Refined section rhythm */
.section,.satplus-start,.real-bank-section,.daily-practice-section,.mission-statement-section,
.editorial-programs,.editorial-reviews,.home-reviews{
  background:transparent!important;
}
.card,.plan,.module-card,.inventory-card,.review-card,.overview-shortcut-card,
.overview-score-box,.simple-task-card,.mission-statement-card{
  border-radius:24px!important;
}

/* Ensure pseudo-elements cannot paint black decorative fields */
body::after,.editorial-home::after{background:transparent!important}

/* Avoid accidental white text on light surfaces */
.card:not(.btn) h1,.card:not(.btn) h2,.card:not(.btn) h3,
.plan h1,.plan h2,.plan h3,
.module-card h1,.module-card h2,.module-card h3,
.question-card h1,.question-card h2,.question-card h3,
.summary-card h1,.summary-card h2,.summary-card h3,
.payment-card h1,.payment-card h2,.payment-card h3,
.review-card h1,.review-card h2,.review-card h3{
  color:#0F2D57!important;
}

/* Crisp separators */
hr,.divider,.section-divider{border-color:#D9E7F7!important;background:#D9E7F7!important}

/* The only dark content allowed is source media itself; UI chrome stays light. */


/* V2.1 legacy dark-selector sweep */
.science-welcome,.sat-welcome,.sat-welcome-bg,.hero-immersive-stage,
.library-timeline,.library-benefits div,.system-step,.system-step>span,
.profile-dashboard,.live-console,.console-focus,.scanner-shell,.visual-frame,
.editorial-image-panel,.editorial-roadmap-section,.editorial-final,
.editorial-plan-grid .plan,.editorial-plan-grid .plan.featured,
.editorial-plan-grid .basic-plan,.editorial-plan-grid-v2>.precision-plan,
.editorial-plan-grid-v2>.elite-spotlight,.real-bank-section,.bank-proof-panel,
.daily-live-card,.interactive-bank-proof,.payment-callout,.sat-help-widget,
.sat-help-header,.sat-help-body,.sat-help-avatar,.sat-help-bubble,
.sat-help-compose,.sat-help-footer,.sat-help-launcher,.sat-help-launcher:hover,
.recommendation-block,.submit-row,.upload-card,.upload-card:hover,
.demo-card dialog,dialog,.calculator-label input,.builder-controls select,
.adaptive-portal,.adaptive-question-card-v2,.daily-question-card,
.daily-question-card.daily-complete,.moderation-toolbar,.mod-side,.mod-side textarea,
.reviews-loading-card,.reviews-empty,.review-form,.review-card,.thanks-card,
.test-shell,.answer-button,.question-shell,.choice-list li,.video-empty-state,
.choice-button,.difficulty-results>div,.summary-editor-shell textarea{
  background:#FFFFFF!important;
  color:#0F2D57!important;
  border-color:#D2E2F5!important;
}

/* Light tinted variants for larger feature shells */
.science-welcome,.sat-welcome,.hero-immersive-stage,.profile-dashboard,.live-console,
.scanner-shell,.visual-frame,.editorial-image-panel,.editorial-roadmap-section,
.editorial-final,.real-bank-section,.daily-live-card,.interactive-bank-proof,
.payment-callout,.recommendation-block,.submit-row,.adaptive-portal{
  background:
    radial-gradient(circle at 88% 8%,rgba(122,177,255,.18),transparent 22rem),
    linear-gradient(145deg,#FFFFFF,#F2F7FF)!important;
}

.sat-help-launcher{
  background:linear-gradient(135deg,#2F75EA,#1D5CCA)!important;
  color:#FFFFFF!important;
  border-color:transparent!important;
}
.sat-help-launcher:hover{background:linear-gradient(135deg,#2A6FDF,#174FAF)!important}
.sat-help-header,.sat-help-compose,.sat-help-footer{background:#F6F9FE!important}
.sat-help-bubble,.sat-help-avatar{background:#EAF2FF!important;color:#173B6A!important}
.sat-help-compose input{background:#FFFFFF!important;color:#0F2D57!important;border-color:#C9DCF5!important}

/* Homepage university and marquee edge fades */
.university-marquee::before{
  background:linear-gradient(90deg,#F7FAFF,transparent)!important;
}
.university-marquee::after{
  background:linear-gradient(-90deg,#F7FAFF,transparent)!important;
}
.inventory-carousel-glow{
  background:linear-gradient(90deg,transparent,#F7FAFF 92%)!important;
}
.uni-icon{background:#FFFFFF!important}

/* Payment/application/review fields */
.target-row,.checkout-account input,.elite-form input:not([type="checkbox"]),
.elite-form select,.elite-form textarea,.review-form input[type=text],
.review-form input[type=email],.review-form textarea,.review-form select,
.control-row select,.login-card input,.search-box input,#reportForm input{
  background:#FFFFFF!important;
  color:#0F2D57!important;
  border-color:#C9DCF5!important;
}
.elite-form select option,.control-row select option{background:#FFFFFF!important;color:#0F2D57!important}

/* Admin moderation surfaces */
.moderation-toolbar,.mod-side{
  background:#F7FAFF!important;
  border-color:#D4E3F5!important;
}
.mod-avatar{background:linear-gradient(135deg,#E4EFFF,#F7FAFF)!important;color:#1D5FC8!important}
.mod-side textarea{background:#FFFFFF!important;color:#0F2D57!important}

/* Portal tier sidebars cannot revert dark */
.portal-tier-core .sidebar,.portal-tier-precision .sidebar,.portal-tier-elite .sidebar{
  background:#FFFFFF!important;
  color:#0F2D57!important;
}
.sidebar-overlay{background:rgba(73,104,145,.18)!important}
.auth-tabs{background:#EAF2FF!important}

/* Video shells are light even before media loads */
.video-frame,.video-empty-state{background:#EEF4FC!important;color:#60738E!important}
.video-frame iframe,.video-frame video{background:#EEF4FC!important}

/* Modal backdrops use a translucent blue-gray, never black */
dialog::backdrop,.editor-dialog::backdrop{
  background:rgba(55,88,132,.20)!important;
  backdrop-filter:blur(6px)!important;
}

/* Decorative legacy circles/rings */
.priority-ring::before,.sat-method-number,.roadmap-index{
  background:#EAF2FF!important;
  color:#1D5FC8!important;
  border-color:#C8DBF8!important;
}

/* Crisp global text hierarchy on light theme */
body{font-smoothing:antialiased;-webkit-font-smoothing:antialiased}
h1,h2,h3{letter-spacing:-.035em}
body p{color:#536B87}
body a{transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}

/* Hide none: just neutralize legacy pure-black decorative fills */
[style*="background:#000"],[style*="background: #000"],
[style*="background-color:#000"],[style*="background-color: #000"]{
  background:#F2F7FF!important;
}

/* =====================================================================
   SAT+ ACADEMIC READABILITY REFINEMENT V3
   Goal: crisp academic white/blue UI, no black UI surfaces, strong borders,
   fully readable text across all pages. Visual-only, no logic changes.
   ===================================================================== */
:root{
  --satplus-ink:#103766;
  --satplus-ink-2:#274A73;
  --satplus-copy-2:#556E8E;
  --satplus-soft:#F7FAFF;
  --satplus-soft-2:#EEF5FF;
  --satplus-line:#CFE0F4;
  --satplus-line-strong:#B8D0EE;
  --satplus-panel-shadow:0 14px 34px rgba(42,88,152,.08);
  --satplus-panel-shadow-lg:0 22px 54px rgba(42,88,152,.10);
}

html,body{
  background:
    radial-gradient(circle at 6% 0%, rgba(126,176,255,.17), transparent 24rem),
    radial-gradient(circle at 96% 10%, rgba(188,220,255,.22), transparent 28rem),
    linear-gradient(180deg,#FCFDFF 0%,#F7FAFF 46%,#FFFFFF 100%) !important;
  color:var(--satplus-ink) !important;
}
body::before,body::after,.editorial-home::before,.editorial-home::after{
  mix-blend-mode:normal !important;
}

/* Strong readable typography */
h1,h2,h3,h4,h5,h6,
.brand-hero-title,
.satplus-simple-head h2,
.editorial-section-head h2,
.mission-section-head h2,
.editorial-final h2,
.reviews-hero h1,.hub-hero h1,.payment-hero h1,.result-hero h1,
.admin-hero h1,.setup-hero h1,.reader-hero h1,.intro-screen h1,
.module-reader h1,.module-reader h2,.module-reader h3,
.markdown-body h1,.markdown-body h2,.markdown-body h3,
.bank-question-title,.test-question-text,.question-text,.passage-text{
  color:var(--satplus-ink) !important;
  -webkit-text-fill-color:var(--satplus-ink) !important;
  background:none !important;
  text-shadow:0 1px 0 rgba(255,255,255,.82) !important;
  opacity:1 !important;
}

p,li,label,small,td,th,blockquote,
.brand-hero-positioning,
.brand-feature-line,
.editorial-microcopy,
.mission-paragraph,
.enrollment-detail>p,
.library-hero p:not(.eyebrow),
.reader-hero p,.module-card p,.review-item p,
.security-card p,.criteria-card p,.policy-panel p,.agreement-box p,
.home-review-grid p,.editorial-review-grid p,
.review-copy,.result-copy,.status-copy,.quiet-copy,.description,.helper,.helper-text,.hint,.meta,.subcopy{
  color:var(--satplus-copy-2) !important;
  opacity:1 !important;
  text-shadow:none !important;
}

strong,b,
.brand-feature-line strong,.brand-hero-positioning strong,
.mission-paragraph strong,.perk-list strong,
.overview-score-box strong,.price strong,.recommended-price strong{
  color:var(--satplus-ink) !important;
  -webkit-text-fill-color:var(--satplus-ink) !important;
  opacity:1 !important;
}

.eyebrow,.section-label,.header-kicker,.tier,.inventory-year,.text-card-label,
.pathway-task-kicker,.bank-stat span,.bank-tier-eyebrow,.top-copy span,
.preview-head span,.intro-fact span,.uni-name,.payment-note strong,
.enrollment-detail-top p,#bankDetailEyebrow{
  color:#2A67D7 !important;
  opacity:1 !important;
}

/* Academic panel treatment for all main surfaces */
.editorial-hero,
.satplus-start,
.real-bank-section,
.mission-statement-section,
.editorial-programs,
.editorial-reviews,
.editorial-final,
.home-reviews,
#contact,
.portal-shell,
.content,
.adaptive-content,
.modules-shell,
.bank-shell,
.test-shell,
.welcome-shell,
.results-shell,
.lab-shell,
.login-card,
.portal-callout,
.plan,
.card,
.review-panel,
.review-form,
.review-item,
.editorial-review-grid article,
.home-review-grid article,
.inventory-card,
.real-inventory-preview,
.bank-proof-panel,
.enrollment-detail,
.enrollment-step,
.simple-task-card,
.pathway-task,
.pathway-detail-card,
.module-card,
.question-card,
.daily-question-card,
.summary-card,
.payment-card,
.checkout-card,
.status-card,
.security-card,
.criteria-card,
.policy-panel,
.agreement-box,
.application-card,
.elite-card,
.thanks-card,
.contact-panel,
.upload-card,
.mode-card,
.test-access-lock,
.result-card,
.recommendation-block,
.recommended-plan,
.analysis-block,
.report-capture,
.total-score-card,
.result-primary,
.result-metrics,
.results-detail,
.free-question-message,
.free-training-status,
.saved-result,
.calculator-result,
.overview-score-box,
.overview-shortcut-card,
.snapshot-card,
.passage-card,
.text-card,
.choices-card,
.question-shell,
.question-panel,
.test-question-card,
.test-passage-card,
.test-summary,
.bank-stat-card,
.pro-unlock-panel,
.training-lock{
  background:linear-gradient(180deg,#FFFFFF 0%,#FBFDFF 100%) !important;
  border:1px solid var(--satplus-line) !important;
  color:var(--satplus-ink) !important;
  box-shadow:var(--satplus-panel-shadow) !important;
}

/* Homepage sections feel more academic and self-contained */
.editorial-hero,
.satplus-start,
.real-bank-section,
.mission-statement-section,
.editorial-programs,
.editorial-reviews,
.editorial-final{
  border-radius:34px !important;
  padding-top:38px !important;
  padding-bottom:38px !important;
}

/* Special large display text on homepage */
.satplus-simple-head h2,
.real-bank-copy h2,
.mission-section-head h2,
.editorial-section-head h2,
.editorial-final h2{
  color:var(--satplus-ink) !important;
  line-height:1.06 !important;
  letter-spacing:-.04em !important;
  max-width:15ch;
}
.satplus-simple-head h2 strong,
.real-bank-copy h2 strong,
.mission-section-head h2 strong,
.editorial-section-head h2 strong,
.editorial-final h2 strong{
  color:#1F63D2 !important;
  -webkit-text-fill-color:#1F63D2 !important;
}

/* Light, crisp navigation */
.nav,.editorial-nav,.portal-header,.modules-topbar,.test-topbar,.test-header,
.bank-head,.diag-header,.payment-header,.review-nav,.elite-header,.admin-topbar,
.sat-help-header{
  background:rgba(255,255,255,.96) !important;
  border:1px solid var(--satplus-line) !important;
  box-shadow:0 10px 26px rgba(42,88,152,.07) !important;
}
nav a,.editorial-nav nav a,.elite-header nav a,.editorial-footer-links a,.footer a{
  color:var(--satplus-ink-2) !important;
}
nav a:hover,.editorial-nav nav a:hover,.elite-header nav a:hover,
.editorial-footer-links a:hover,.footer a:hover{
  color:#1F63D2 !important;
}

/* Buttons remain blue but cleaner */
.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,#377FEA 0%,#1E61D3 100%) !important;
  color:#FFFFFF !important;
  border:1px solid rgba(30,97,211,.12) !important;
  box-shadow:0 11px 24px rgba(50,112,213,.18) !important;
}
.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:#FFFFFF !important;
}
.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:#FFFFFF !important;
  color:#1E57A6 !important;
  border:1px solid var(--satplus-line-strong) !important;
  box-shadow:none !important;
}

/* Input readability */
input,textarea,select,
.checkout-account input,.elite-form input:not([type="checkbox"]),
.elite-form select,.elite-form textarea,.review-form input[type=text],
.review-form input[type=email],.review-form textarea,.review-form select,
.control-row select,.login-card input,.search-box input,#reportForm input{
  background:#FFFFFF !important;
  color:var(--satplus-ink) !important;
  border:1px solid var(--satplus-line-strong) !important;
  box-shadow:none !important;
}
input::placeholder,textarea::placeholder{color:#7D91AA !important}

/* Always readable pills / side controls */
.adaptive-status-pill,.engine-status,.status-pill,.match-chip,.tier-chip,.bank-pill,
.module-chip,.subject-chip,.question-count,.auth-tabs,.intro-fact,.preview-options span,
.practice-demo-strip>a,.choice-letter,.choice-list .choice-letter,.answer-button span,
.enrollment-step>span,.daily-step>span,.sat-help-avatar,.sat-help-bubble{
  background:#EEF5FF !important;
  color:#1F63D2 !important;
  border:1px solid var(--satplus-line) !important;
}

/* Choice / test UI */
.choice,.answer-choice,.answer-button,.practice-choice,.adaptive-choice,
.choice-list li,.preview-option,.question-map button,.map-button{
  background:#FFFFFF !important;
  color:var(--satplus-ink) !important;
  border:1px solid var(--satplus-line) !important;
}
.choice:hover,.answer-choice:hover,.answer-button:hover,.practice-choice:hover,
.adaptive-choice:hover,.preview-option:hover,.question-map button:hover,.map-button:hover{
  background:#EEF5FF !important;
  border-color:#98BEEE !important;
}
.choice.selected,.answer-choice.selected,.answer-button.selected,.practice-choice.selected,
.adaptive-choice.selected,.preview-option.selected{
  background:#E2EEFF !important;
  border-color:#4B88EF !important;
  box-shadow:0 0 0 2px rgba(43,109,229,.08) !important;
}

/* Extra protection against faded text on light backgrounds */
[style*="color: white"], [style*="color:white"],
[style*="color:#fff"], [style*="color: #fff"],
[style*="color:#ffffff"], [style*="color: #ffffff"]{
  color:var(--satplus-ink) !important;
}

/* Ensure no legacy black decorative panels show through */
[class*="hero"], [class*="panel"], [class*="card"], [class*="shell"], [class*="box"], [class*="callout"], [class*="summary"]{
  border-color:var(--satplus-line) !important;
}
.science-welcome,.sat-welcome,.sat-welcome-bg,.hero-immersive-stage,.library-timeline,
.profile-dashboard,.live-console,.console-focus,.scanner-shell,.visual-frame,.editorial-image-panel,
.editorial-roadmap-section,.payment-callout,.sat-help-widget,.sat-help-body,.sat-help-compose,
.sat-help-footer,.adaptive-portal,.adaptive-question-card-v2,.daily-question-card,
.daily-question-card.daily-complete,.video-empty-state,.summary-editor-shell textarea,
.review-ambient,.moderation-toolbar,.mod-side,.mod-side textarea,
.editor-dialog,dialog,.demo-card,.preview-card,.question-preview,
.tier-orb,.metric-badge,.daily-live-card,.interactive-bank-proof,.real-bank-section,
.editorial-final,.simple-brand-hero,.diagnostic-launch-panel,.daily-overview-card,.daily-workspace-card{
  background:linear-gradient(180deg,#FFFFFF 0%,#F7FAFF 100%) !important;
  color:var(--satplus-ink) !important;
  border:1px solid var(--satplus-line) !important;
  box-shadow:var(--satplus-panel-shadow) !important;
}

/* Footer and help desk */
.footer,.editorial-footer,.sat-help-footer,.sat-help-compose,.sat-help-header,.sat-help-body{
  background:#FFFFFF !important;
  color:var(--satplus-copy-2) !important;
  border-color:var(--satplus-line) !important;
}

/* Smooth section dividers and readable tables */
hr,.divider,.section-divider{border-color:#D8E6F6 !important;background:#D8E6F6 !important}
table thead th{
  background:#EEF5FF !important;
  color:#1F63D2 !important;
  border-color:#D8E6F6 !important;
}
table tbody td,table tbody th{
  background:#FFFFFF !important;
  color:var(--satplus-copy-2) !important;
  border-color:#E1EBF8 !important;
}

/* Mobile dropdown should stay clean */
@media(max-width:760px){
  nav.open,.editorial-nav nav.open,.elite-header nav.open{
    background:#FFFFFF !important;
    border:1px solid var(--satplus-line) !important;
    box-shadow:0 16px 38px rgba(42,88,152,.11) !important;
  }
}
