/* Approved launch theme. Shells are ink; reading, diagrams and answers are
   deliberately paper-white. This layer does not change layout or data flows. */
@media screen {
body.bsn-launch-theme {
  --launch-bg:#070a10; --launch-panel:#111923; --launch-raised:#182332;
  --launch-line:#303e50; --launch-text:#edf2f8; --launch-muted:#a9b8cb;
  --launch-lime:#c4f69a; --launch-violet:#b8a7f3;
  --bg:#070a10; --canvas:#070a10; --panel:#111923; --panel-head:#182332;
  --border:#303e50; --border-2:#43526a; --line:#303e50;
  --text:#edf2f8; --text-dim:#b5c2d4; --text-dimmer:#a0b0c5;
  --muted:#a9b8cb; --cyan:#c4f69a; --green:#c4f69a;
  background:#070a10!important; color:#edf2f8; color-scheme:dark;
  min-height:100vh;
}
.bsn-launch-theme :is(a,button,input,select,textarea,summary):focus-visible {outline:3px solid #b8a7f3;outline-offset:3px}
.bsn-launch-theme :is(.bsn-header,.student-next-header) {background:#080d14!important;border-bottom:1px solid #2b3544!important}
.bsn-launch-theme .bsn-header .bsn-desktop a {color:#a9b8cb!important}
.bsn-launch-theme .bsn-header .bsn-desktop a:is(:hover,[aria-current]) {color:#e1d6ff!important;background:#2c2541!important}
.bsn-launch-theme .universal-course-bar {background:#101722;color:#b5c3d6;border-bottom-color:#303e50}
.bsn-launch-theme .universal-course-bar::after {background:linear-gradient(90deg,#c4f69a55,#b8a7f355)}
.bsn-launch-theme .universal-course-bar .course-toggle {background:#080e17;border-color:#344154}
.bsn-launch-theme .universal-course-bar .course-toggle a:not([aria-current]) {color:#afbed0}
.bsn-launch-theme .universal-course-bar .course-toggle a[aria-current] {background:#302843;color:#e2d7ff;border-color:#65557f}
.bsn-launch-theme .universal-course-bar .course-labs a {background:#19281e;color:#c4f69a;border-color:#425b38}
.bsn-launch-theme :is(.eyebrow,.section-label,.home-course-label,.review-eyebrow,.chapgroup-title) {color:#b8a7f3}
.bsn-launch-theme :is(.card,.panel,.home-alternatives,.home-summary-tile,.account-panel,.plan-card,.journey-options>:where(a,section),.journey-next,.ps-course-card,.ps-tools-drawer,.ps-tools-head,.lab-mode-choice,.ink-card,.study-plan-card) {
  background:#111923;color:#edf2f8;border-color:#303e50;box-shadow:none;border-radius:16px;
}
.bsn-launch-theme :is(.panel-head,.panel-heading,.ps-editor-head,.ps-editor-footer,.ps-debug-head) {background:#182332;color:#d8e2ee;border-color:#303e50}
.bsn-launch-theme :is(.welcome-copy,.quiet,.sub,.hint,.panel-intro,.form-note,.review-note,.review-actions>p,.review-history span,.home-load-warning) {color:#a9b8cb}
.bsn-launch-theme :is(.text-link,.home-alternatives>a,.home-alternatives details a,.home-load-warning button) {color:#c4f69a}
.bsn-launch-theme :is(.today-chip,.db-filter-row input,.db-filter-row select,.practice-filter-row select,.filterbar select,.tm-filter select) {background:#182332;color:#e1e9f4;border-color:#41516a}
.bsn-launch-theme .today-chip.is-initial-loading {background:#070a10cc;color:#edf2f8}
.bsn-launch-theme :is(input:not([type=checkbox],[type=radio],[type=range],[type=color]),select) {color-scheme:dark}
.bsn-launch-theme :is(.startbtn,.submit-button,.home-primary) {background:#c4f69a!important;color:#15220e!important;border-color:#9dc479!important;box-shadow:none}
.bsn-launch-theme :is(.startbtn,.submit-button,.home-primary):hover {background:#d6ffb5!important}
.bsn-launch-theme :is(.account-legal,.site-footer,.footer) {background:#0b111a;border-color:#303e50;color:#a9b8cb}
.bsn-launch-theme :is(.account-legal a,.site-footer a) {color:#bac9dc}
/* Actual authenticated Home, using saved account-backed recommendations. */
.bsn-launch-theme.student-next-page {position:relative;isolation:isolate;background:radial-gradient(ellipse at 80% 15%,#1f183855,transparent 50%),#070a10!important}
.bsn-launch-theme .student-next-main {position:relative;max-width:1320px;padding-top:clamp(36px,6vw,76px)}
.bsn-launch-theme [data-next-step-home] h1 {font-size:clamp(36px,5vw,62px);letter-spacing:-.045em;color:#f1f5fa}
.bsn-launch-theme [data-next-step-home] h1 span {background:none;color:#c4f69a;padding:0}
.bsn-launch-theme .home-next-action {position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(125deg,#1a2b23,#141b2b 70%);border:1px solid #435944;border-radius:22px;padding:clamp(26px,4vw,44px)}
.bsn-launch-theme .home-next-action::after {content:'';position:absolute;z-index:-1;width:380px;height:380px;border:1px solid #b8a7f349;border-radius:50%;right:-200px;top:-150px;box-shadow:0 0 0 32px #b8a7f308,0 0 0 72px #c4f69a06;animation:launch-orbit 14s ease-in-out infinite alternate}
.bsn-launch-theme .home-next-action h2 {font-size:clamp(26px,3vw,38px);max-width:560px;line-height:1.2}
.bsn-launch-theme .home-next-action>p {color:#bdcbbf;font-size:17px;max-width:60ch}
.bsn-launch-theme .home-next-action .home-tag {background:#253b25;color:#c4f69a;border:1px solid #526d40;border-radius:20px;font-size:13px}
.bsn-launch-theme .home-primary {margin-top:18px;min-height:52px}
.bsn-launch-theme .home-alternatives {padding:26px}
.bsn-launch-theme .home-alternatives h2 {color:#edf2f8}
.bsn-launch-theme .home-summary-tile {background:linear-gradient(135deg,#1a2332,#101821);min-height:150px;transition:border-color .2s,transform .2s}
.bsn-launch-theme .home-summary-tile:hover {border-color:#7b6a9f;transform:translateY(-3px)}
.bsn-launch-theme .home-summary-tile>strong {color:#c4f69a;font-size:30px}
.bsn-launch-theme .home-summary-tile>span,.bsn-launch-theme .home-summary-tile>small {color:#a9b8cb}
.launch-stars {position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.32;overflow:hidden}
.launch-stars::before,.launch-stars::after {content:'';position:absolute;inset:-12%;background-image:radial-gradient(1px 1px at 10% 20%,#fff 80%,transparent),radial-gradient(1px 1px at 75% 36%,#c4f69a 80%,transparent),radial-gradient(1.5px 1.5px at 34% 78%,#b8a7f3 80%,transparent);background-size:280px 310px,390px 330px,440px 470px;animation:launch-stars 45s linear infinite alternate}
.launch-stars::after {transform:rotate(180deg);opacity:.45;animation-direction:alternate-reverse}
.launch-motion-paused .launch-stars::before,.launch-motion-paused .launch-stars::after,.launch-motion-paused .home-next-action::after,.launch-motion-paused .welcome-row::after {animation-play-state:paused!important}
/* Progress and chapter navigation: overview accents, static data. */
.launch-chapters {max-width:1200px;margin:auto;padding:38px 24px 64px}
.launch-chapters-heading {border:1px solid #344435;border-radius:20px;background:linear-gradient(110deg,#15271e,#151b2a);padding:32px;margin-bottom:28px}
.launch-chapters-heading p {color:#a9b8cb;font-size:16px}
.launch-chapters-heading a {color:#c4f69a;font-size:14px;display:inline-block;padding:10px 0}
.launch-chapter {border:1px solid #303e50;background:#111923;border-radius:16px;margin:16px 0;overflow:hidden}
.launch-chapter summary {display:flex;align-items:center;gap:20px;padding:24px;cursor:pointer;list-style:none}
.launch-chapter summary::-webkit-details-marker {display:none}
.launch-chapter summary::after {content:'+';margin-left:auto;color:#b8a7f3;font-size:26px}
.launch-chapter[open] summary::after {content:'−'}
.launch-chapter-number {font:600 26px ui-monospace,monospace;border:1px solid #48613e;border-radius:12px;padding:10px 14px;background:#18281c;color:#c4f69a;min-width:58px;text-align:center}
.launch-chapter strong {font-size:22px;display:block}.launch-chapter small {font-size:14px;color:#a9b8cb;display:block;margin-top:6px}
.launch-chapter ul {padding:0 24px;margin:0;list-style:none}
.launch-chapter li {display:flex;align-items:center;gap:18px;border-top:1px solid #303e50;padding:18px 0;color:#a9b8cb}
.launch-chapter li a {flex:1;color:#edf2f8;font-size:16px;text-decoration:none}.launch-chapter li a:hover {color:#c4f69a;text-decoration:underline}
.launch-topic-code {font:14px ui-monospace,monospace;color:#b8a7f3;min-width:45px}
.bsn-launch-theme.progress-hub .dashboard-shell {background:transparent}
.bsn-launch-theme :is(.hub-sidebar,.hub-detail[open]>summary,.topic-row,.journey-topic-group,.journey-topics li) {border-color:#303e50}
.bsn-launch-theme .hub-practice>summary {background:#29223c;color:#e2d7ff}
.bsn-launch-theme :is(.practice-hero,.practice-card,.practice-notice) {background:#111923;color:#edf2f8;border-color:#344356}
.bsn-launch-theme .practice-hero {background:linear-gradient(115deg,#15271e,#151b2a);border:1px solid #344356}
.bsn-launch-theme .practice-hero h1 {color:#edf2f8}
.bsn-launch-theme .practice-hero h1 em {color:#14220b}
.bsn-launch-theme :is(.practice-hero,.practice-card,.practice-notice) p {color:#b6c5d8}
.bsn-launch-theme .practice-card h2 {color:#edf2f8}
.bsn-launch-theme .hub-sidebar nav :is(a,button) {color:#afbed0}
.bsn-launch-theme .hub-sidebar nav a:first-child {background:#302843;color:#e2d7ff}
.bsn-launch-theme .hub-sidebar nav :is(a,button):hover {background:#22311f;color:#c4f69a}
.bsn-launch-theme .hub-sidebar-note {background:#1b2e20;color:#c4f69a;border:1px solid #415d36;border-radius:16px}
.bsn-launch-theme :is(.hub-activity,.progress-next,.insights-card,.insight-row) {background:#15231c;color:#e4efdf;border-color:#3a5135}
.bsn-launch-theme .hub-activity {background:#221e32;border-color:#4a405f}
.bsn-launch-theme :is(.hub-activity p,.hub-day,.progress-next p,.progress-explainer,.hub-detail>summary span,.mini-progress>span,.topic-name small,.insight-copy small) {color:#adbccf}
.bsn-launch-theme :is(.hub-activity a,.progress-hub .text-link,.hub-eyebrow,.hub-schedule summary) {color:#c4f69a}
.bsn-launch-theme .hub-day b {background:#182230;color:#a6b6cb;border-color:#36455c}
.bsn-launch-theme .hub-day.is-planned b {background:#c4f69a;color:#14220b;border-color:#c4f69a}
.bsn-launch-theme .hub-day.is-today b {outline-color:#b8a7f3}
.bsn-launch-theme .progress-ring::before,.bsn-launch-theme .ring-inner {background:#111923}
.bsn-launch-theme :is(.bar,.mini-bar) {background:#293647}
.bsn-launch-theme :is(.topic-name strong,.card-heading h2,.welcome-row h1,.journey-main h1) {color:#edf2f8}
.bsn-launch-theme :is(.topic-code,.status-button,.topic-test-button) {background:#232d40;color:#ded5ff;border-color:#4b4563}
.bsn-launch-theme :is(.as-topic-card,.chapter-card,.chapter,.syllabus-chapter,.as-chapter,.chapter-summary,.topic-card,.curriculum-card) {background:#111923;color:#edf2f8;border-color:#303e50}
.bsn-launch-theme :is(.as-hero,.hero-grid-paper,.syllabus-section,.chapters-section,.as-syllabus) {background:#0d141f;color:#edf2f8}
.bsn-launch-theme[data-launch-page=chapters] :is(h1,h2,h3) {color:#edf2f8}
.bsn-launch-theme[data-launch-page=chapters] :is(.as-lead,.topic-description,.chapter-description) {color:#a9b8cb}
.bsn-launch-theme[data-launch-page=progress] .welcome-row {position:relative;overflow:hidden;padding:26px;border:1px solid #344435;border-radius:20px;background:linear-gradient(110deg,#15271e,#151b2a)}
.bsn-launch-theme[data-launch-page=progress] .welcome-row::after {content:'';position:absolute;pointer-events:none;right:-80px;top:-220px;width:300px;height:300px;border:1px solid #b8a7f333;border-radius:50%;animation:launch-orbit 18s ease-in-out infinite alternate}
/* Test Lab and lab selection screens. Existing filter and test logic stays put. */
.bsn-launch-theme :is(.ink-lab,.lab-picker,.ps-picker,.db-picker,.practice-setup,.tm-shell) {background:#101721;color:#edf2f8;border-color:#303e50}
body.bsn-launch-theme.as-testmaker-page main {background:#0f1620;border-color:#303e50}
body.bsn-launch-theme.testmaker-page :is(#setupScreen,.practice-setup) .panel {background:#111923!important;color:#edf2f8;border-color:#344356!important;border-radius:16px!important}
body.bsn-launch-theme.testmaker-page :is(#setupScreen,.practice-setup) .panel-head {background:#182332!important;color:#c6d3e4!important;border-color:#344356!important}
body.bsn-launch-theme.testmaker-page :is(#setupScreen,.practice-setup) .panel-head b {color:#edf2f8!important}
body.bsn-launch-theme.testmaker-page .chip {background:#151f2c!important;color:#e2ebf6!important;border-color:#3c4e64!important;border-radius:12px}
body.bsn-launch-theme.testmaker-page .chip.active {background:#223524!important;color:#e5f5dd!important;border-color:#80a95d!important}
body.bsn-launch-theme.testmaker-page .chip :is(.name,.count) {color:#c5d2e3!important}
body.bsn-launch-theme.testmaker-page .chip .chapnum {background:#302843;color:#d9caff!important}
body.bsn-launch-theme.testmaker-page :is(.chapgroup-title,.tm-setup-note,.hint) {color:#a9b8cb!important}
/* Full-paper choices must not inherit pale text over the legacy white cards. */
body.bsn-launch-theme.testmaker-page .tm-paper-option {background:#151f2c;color:#edf2f8;border-color:#41516a;border-radius:12px}
body.bsn-launch-theme.testmaker-page .tm-paper-option strong {color:#edf2f8}
body.bsn-launch-theme.testmaker-page .tm-paper-option :is(small,span span) {color:#b6c5d8}
body.bsn-launch-theme.testmaker-page .tm-paper-option .tm-paper-status {color:#c4f69a}
body.bsn-launch-theme.testmaker-page .tm-paper-option:has(input:checked) {background:#243923;border-color:#a3d17c;box-shadow:inset 0 0 0 1px #a3d17c}
body.bsn-launch-theme.testmaker-page .tm-paper-option:has(input:checked) :is(strong,small,span span) {color:#effbe8}
body.bsn-launch-theme.testmaker-page .tm-paper-option.unavailable {background:#18202a;border-color:#596474;border-style:dashed;opacity:1}
body.bsn-launch-theme.testmaker-page .tm-paper-option.unavailable .tm-paper-status {color:#f2cc92}
body.bsn-launch-theme.testmaker-page .tm-paper-option input {accent-color:#c4f69a;color-scheme:dark}
body.bsn-launch-theme.testmaker-page .tm-paper-option:has(input:focus-visible) {outline:3px solid #b8a7f3;outline-offset:3px}
.bsn-launch-theme .ink-lab .ink-question-card {background:#151f2c;color:#e2ebf6;border-color:#344356;border-radius:14px}
.bsn-launch-theme .ink-lab .ink-question-card h2 {color:#edf2f8}
.bsn-launch-theme .ink-lab :is(.ink-filter-note,.ink-marks,.ink-question-card .ink-paper-ref,.ink-question-card .ink-runtime,.ink-card-bottom .ps-practice-completion,.ink-footer,.ink-filter-heading>p) {color:#a9b8cb}
.bsn-launch-theme .ink-lab :is(.ink-question-card .ps-practice-tags,.ink-question-card .ink-skills) {color:#c0aef2}
.bsn-launch-theme .ink-lab :is(.ink-card-open,.ink-footer button,.ink-footer a,.ink-reset) {color:#c4f69a;border-color:#4b643b}
.bsn-launch-theme .ink-lab .db-recommendation {background:#1a2d20;color:#c7dfb7}
.bsn-launch-theme .ink-lab .db-recommendation a {color:#c4f69a}
.bsn-launch-theme :is(.ps-entry-options,.ps-entry-choice,.ps-entry-free) {background:#111923;color:#edf2f8;border-color:#344356}
.bsn-launch-theme .ink-entry .ps-entry-choice p {color:#a9b8cb}
.bsn-launch-theme :is(.tm-topic-card,.chip,.q-select-card,.practice-question-card,.lab-question-card,.ink-question-card,.ink-mode-card) {background:#151f2c;color:#e2ebf6;border-color:#344356}
.bsn-launch-theme :is(.chip.active,.tm-topic-card.selected) {background:#223524;border-color:#80a95d}
.bsn-launch-theme :is(.ink-title,.ink-heading,.practice-heading h1,.ps-heading h1) {color:#edf2f8}
.bsn-launch-theme :is(.ps-heading h1 em,.ink-title mark) {color:#10200b}
.bsn-launch-theme :is(.ink-subtitle,.ink-description,.ink-card p,.practice-heading p) {color:#acbacd}
.bsn-launch-theme :is(.ps-tools-head,.ps-tools-run,.ps-runtime-grid,.ps-debug-side) {background:#111923;color:#edf2f8}
.bsn-launch-theme :is(.ps-tools-message,.ps-syntax-help,.ps-diagnostic-empty,.ps-diagnostic-summary) {color:#b6c5d8}
.bsn-launch-theme :is(.ps-console-card,.ps-debug-card,.ps-diagnostics-card,.ps-syntax-help,.ps-table-wrap) {background:#111923;border-color:#344356;color:#edf2f8}
.bsn-launch-theme :is(.ps-terminal,.ps-console-output) {background:#080d14;color:#c4f69a}
.bsn-launch-theme :is(.ps-variable,.ps-debug-table td,.ps-debug-table th) {background:#182332;color:#dce5f2;border-color:#344356}
.bsn-launch-theme[data-launch-page=database] :is(.editor-panel,.database-panel,.data-panel,.results-panel) {background:#111923;color:#e1eaf5}
.bsn-launch-theme[data-launch-page=database] #sql-editor {background:#0b111a;color:#e1eaf5;caret-color:#c4f69a}
.bsn-launch-theme[data-launch-page=database] :is(#table-list button,.editor-toolbar select) {background:#182332;color:#dce5f2;border-color:#3c4e64}
.bsn-launch-theme[data-launch-page=database] #table-list button[aria-pressed=true] {background:#253521;color:#c4f69a;border-color:#68834f}
.bsn-launch-theme[data-launch-page=database] :is(.data-panel,.results-panel) :is(th,td) {background:#111923;color:#dce5f2;border-color:#344356}
.bsn-launch-theme[data-launch-page=database] :is(.data-panel,.results-panel) th {background:#1b283a;color:#c4f69a}
/* Account, school schedule, legal and access panels stay calm and legible. */
.bsn-launch-theme :is(.account-main,.account-layout,.account-section,.study-plan-page,.study-plan-main) {background:transparent;color:#edf2f8}
.bsn-launch-theme :is(.account-panel,.study-plan-card,.account-card,.plan-form) {background:#111923;color:#edf2f8;border-color:#344356}
.bsn-launch-theme .settings-card {background:#111923;color:#edf2f8;border-color:#344356}
.bsn-launch-theme .account-intro h1 em {color:#15220e!important}
.bsn-launch-theme .account-promises span {color:#b6c5d8}
.bsn-launch-theme .account-promises span::before {background:#253521;color:#c4f69a}
.bsn-launch-theme .auth-paths button[aria-selected=true] {background:#302843;color:#e3d7ff}
.bsn-launch-theme :is(.account-intro h1,.account-panel h2,.account-section h2) {color:#edf2f8}
.bsn-launch-theme :is(.account-intro p,.account-promises,.field-grid label,.form-note,.consent-check,.account-panel label) {color:#b6c5d8!important}
.bsn-launch-theme :is(.account-panel,.plan-form,.study-plan-card) :is(input:not([type=checkbox],[type=radio]),select) {background:#182332;color:#edf2f8;border-color:#45566e}
.bsn-launch-theme :is(.auth-paths,.role-picker,.family-row,.receipt-row,.account-stat) {background:#182332;color:#edf2f8;border-color:#344356}
.bsn-launch-theme :is(.auth-paths button,.role-picker button) {color:#c1cee0}
.bsn-launch-theme :is(.auth-paths button.active,.role-picker button.active) {background:#302843;color:#e3d7ff}
.bsn-launch-theme :is(.account-panel small,.family-row small,.receipt-row small) {color:#acbbce}
.bsn-launch-theme .study-form {background:#111923;border-color:#344356;color:#edf2f8}
.bsn-launch-theme .study-form select {background:#182332;color:#edf2f8;border-color:#45566e}
.bsn-launch-theme :is(.study-choice,.study-days label) {border-color:#43526a}
.bsn-launch-theme :is(.study-choice,.study-days label):has(input:checked) {background:#22351e;color:#c4f69a;border-color:#789961}
.bsn-launch-theme :is(.study-hint,.study-eyebrow) {color:#afbed0}
.bsn-launch-theme .study-button.secondary {background:#182332;color:#edf2f8;border-color:#45566e}
.bsn-launch-theme[data-launch-page=admin] :is(main>section,.panels>section,.student-course) {background:#111923;color:#edf2f8;border-color:#344356}
.bsn-launch-theme[data-launch-page=admin] :is(p,.muted,#status,#student-detail-status) {color:#afbed0}
.bsn-launch-theme[data-launch-page=admin] :is(th,td) {border-color:#344356}
.bsn-launch-theme[data-launch-page=admin] th {color:#c4f69a}
.bsn-launch-theme[data-launch-page=admin] :is(input:not([type=checkbox]),button,.button) {background:#182332;color:#edf2f8;border-color:#45566e}
.bsn-launch-theme[data-launch-page=admin] :is(.student-score,.student-link) {color:#c5b6fa}
.bsn-launch-theme[data-launch-page=admin] .primary {background:#c4f69a;color:#15220e}
.bsn-launch-theme[data-launch-page=admin] mark {background:none;color:#c4f69a}
.bsn-launch-theme[data-launch-page=admin] dialog {background:#111923;color:#edf2f8;border-color:#45566e}
.bsn-launch-theme[data-launch-page=admin] dialog.admin-test-review {background:#f4f7fb;color:#14202c;color-scheme:light}
.bsn-launch-theme[data-launch-page=admin] dialog.admin-test-review :is(p,section) {color:#14202c}
/* Reading and exam islands reset inherited tokens, including those used in
   diagrams. Never invert images, SVGs or the original exam layouts. */
.bsn-launch-theme :is(.art,.lesson-content,.exam-question,.q-card,.review-part,.ps-question,.ps-answer-page,.ps-mark-scheme,.question-paper,.question-preview,.paper-page,.legal-document,.legal-card,.erd-dialog) {
  --ink:#14202c;--text:#14202c;--text-dim:#485667;--text-dimmer:#5b6778;
  --muted:#5b6778;--bg:#fff;--panel:#fff;--panel-head:#f2f4f8;
  --border:#d3dce7;--border-2:#b9c4d2;--line:#d3dce7;
  --cyan:#4139c3;--purple:#4139c3;--violet:#4139c3;--green:#365b22;
  background:#fff;color:#14202c;color-scheme:light;border-color:#d3dce7;
}
.bsn-launch-theme :is(.exam-question,.q-card,.review-part,.ps-question) {border-radius:16px}
.bsn-launch-theme :is(.exam-question,.q-card,.review-part,.ps-question,.ps-answer-page,.ps-mark-scheme,.art,.lesson-content) :is(input,textarea,select) {color-scheme:light}
.bsn-launch-theme :is(.exam-question,.q-card,.review-part,.ps-question,.ps-mark-scheme) :is(h1,h2,h3,.quiet,.hint,.sub) {color:#14202c}
.bsn-launch-theme :is(.q-card-head,.self-mark-box,.ms-box,.review-mark-scheme) {background:#f3f0fb;color:#28203d;border-color:#dcd3ee}
.bsn-launch-theme .review-mark-scheme {padding:22px;border-radius:12px}
.bsn-launch-theme .weekly-review-main>h1 {color:#edf2f8}
/* Notes: dark frame/TOC, unruled white paper, no decorative motion. */
html[data-notes-design] body.bsn-launch-theme.bsn-notes :is(.main,.lesson-main) {background:#070a10!important;background-image:none!important;padding:clamp(16px,3vw,38px);min-width:0}
html[data-notes-design] body.bsn-launch-theme.bsn-notes :is(.hero,.lesson-hero) {background:#111923!important;border:1px solid #303e50!important;border-radius:18px;color:#edf2f8!important;min-height:0!important}
html[data-notes-design] body.bsn-launch-theme.bsn-notes :is(.hti,.lesson-hero h1) {color:#edf2f8!important;font-size:clamp(30px,4vw,48px)!important}
html[data-notes-design] body.bsn-launch-theme.bsn-notes :is(.hbc,.hbc a,.htag,.lesson-hero .as-eyebrow,.lesson-hero .as-lead,.hero-topic-list li) {color:#b9c6d8!important}
html[data-notes-design] body.bsn-launch-theme.bsn-notes :is(.hero-ct,.lesson-hero) {padding:28px clamp(20px,3vw,40px)!important}
html[data-notes-design] body.bsn-launch-theme.bsn-notes :is(.art,.lesson-content) {background:#fff!important;border:1px solid #d9e0e8;border-radius:18px;margin:24px 0!important;padding:clamp(24px,4vw,48px)!important;color:#14202c}
.bsn-launch-theme.bsn-notes :is(.art,.lesson-content) :is(.ch-p,p) {line-height:1.8}
.bsn-launch-theme.bsn-notes :is(.art,.lesson-content) :is(.ch-h2,h2,h3) {color:#14202c}
.bsn-launch-theme.bsn-notes :is(.sidebar,.lesson-toc) {background:#101722!important;border-color:#303e50!important}
.bsn-launch-theme.bsn-notes :is(.notes-marker) {color:#14202c}
.bsn-launch-theme.bsn-notes :is(.lesson-footer-nav,.ch-pgnav) a {background:#111923;color:#dbe5f2;border-color:#344356}
.bsn-launch-theme.bsn-notes *,.bsn-launch-theme.bsn-notes *::before,.bsn-launch-theme.bsn-notes *::after {animation:none!important}
.bsn-launch-theme.bsn-notes :is(.prac-btn,.ch-pgbtn,.lesson-footer-nav a):hover {transform:none}
/* AS uses the same continuous, single-column reading treatment as IGCSE.
   Keep lesson HTML, diagrams, tables, progress controls and test links intact. */
.bsn-launch-theme.bsn-notes .lesson-content {font-size:16px;line-height:1.6}
.bsn-launch-theme.bsn-notes .lesson-section {margin-bottom:3.7rem;scroll-margin-top:calc(var(--notes-nav-bottom,152px) + 24px)}
.bsn-launch-theme.bsn-notes .lesson-section>h2 {font-weight:800}
.bsn-launch-theme.bsn-notes .source-card-grid {grid-template-columns:minmax(0,1fr);gap:24px;margin:0}
.bsn-launch-theme.bsn-notes .source-card {padding:0;margin:24px 0;background:transparent;border:0;border-radius:0;box-shadow:none;min-width:0}
.bsn-launch-theme.bsn-notes .source-card-grid>.source-card {margin:0}
.bsn-launch-theme.bsn-notes .source-card h3 {margin:0 0 12px;font-size:19px;font-weight:700;line-height:1.4}
.bsn-launch-theme.bsn-notes .source-card>.source-list {display:block;list-style:none;padding:0;margin:0;color:#555c67;font-size:16px;line-height:1.7;counter-reset:notes-point}
.bsn-launch-theme.bsn-notes .source-card>.source-list>li {position:relative;padding:15px 14px 15px 44px;border-bottom:1px solid #e1e5eb;overflow-wrap:anywhere;counter-increment:notes-point}
.bsn-launch-theme.bsn-notes .source-card>.source-list>li::before {content:'✓';position:absolute;left:14px;top:19px;display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#e9fbd9;color:#395a25;font-size:10px;font-weight:800;line-height:1}
.bsn-launch-theme.bsn-notes .source-card>ol.source-list>li::before {content:counter(notes-point)}
.bsn-launch-theme.bsn-notes .source-card>.source-list>li strong {color:#14202c}
.bsn-launch-theme.bsn-notes .lesson-content :is(.objective-list,.summary-list,.source-list) {font-size:16px;line-height:1.7}
.bsn-launch-theme.bsn-notes .lesson-toc {padding:22px 12px 20px;display:flex;flex-direction:column;overflow:hidden}
.bsn-launch-theme.bsn-notes .lesson-toc-head {padding:0 8px 14px;margin:0;border-bottom:1px solid #303e50;font-size:12px;flex-shrink:0}
.bsn-launch-theme.bsn-notes .lesson-toc [data-page-nav] {display:flex;flex-direction:column;gap:1px;overflow-y:auto;min-height:0;padding:8px 0;flex:1;scrollbar-width:thin}
.bsn-launch-theme.bsn-notes .lesson-toc [data-page-nav] a {padding:10px 11px;line-height:1.4;border-radius:9px}
.bsn-launch-theme.bsn-notes .lesson-toc-back {flex-shrink:0;margin:0;padding:14px 8px 0;font-size:14px}
html[data-notes-design] body.bsn-launch-theme.bsn-notes .lesson-hero :is(.lesson-meta,.as-highlight) {color:#b9c6d8!important}
.bsn-launch-theme.bsn-notes .lesson-section#summary>h2 {color:#edf2f8}
@media(min-width:861px) {
  .bsn-launch-theme.bsn-notes .lesson-layout {grid-template-columns:275px minmax(0,1fr)}
  .bsn-launch-theme.bsn-notes .lesson-toc {top:var(--notes-nav-bottom,152px);height:calc(100dvh - var(--notes-nav-bottom,152px))}
}
@media(max-width:860px) {
  .bsn-launch-theme.bsn-notes .lesson-toc {top:var(--notes-nav-bottom,152px);height:calc(100dvh - var(--notes-nav-bottom,152px));z-index:600}
  .bsn-launch-theme.bsn-notes .lesson-contents-backdrop:not([hidden]) {top:var(--notes-nav-bottom,152px);z-index:590}
  .bsn-launch-theme.bsn-notes [data-topic-close] {color:#edf2f8}
}
.bsn-launch-theme .ps-back {color:#a9b8cb}
/* Sparse, static binary texture on overview framing only; no study canvases. */
.bsn-launch-theme :is(.home-next-action,.home-summary-tile,.launch-chapters-heading,.welcome-row,.practice-hero) {position:relative;isolation:isolate}
.bsn-launch-theme :is(.home-next-action,.home-summary-tile,.launch-chapters-heading,.welcome-row,.practice-hero)::before {
  content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='720' height='420' viewBox='0 0 720 420'%3E%3Cg font-family='monospace' font-size='15' letter-spacing='4' fill='%23c4f69a' fill-opacity='.18'%3E%3Ctext x='32' y='48'%3E01%3C/text%3E%3Ctext x='604' y='107'%3E101%3C/text%3E%3Ctext x='402' y='360'%3E0101%3C/text%3E%3C/g%3E%3Cg font-family='monospace' font-size='12' letter-spacing='3' fill='%23b8a7f3' fill-opacity='.19'%3E%3Ctext x='318' y='81'%3E10%3C/text%3E%3Ctext x='98' y='295'%3E001%3C/text%3E%3Ctext x='650' y='388'%3E01%3C/text%3E%3C/g%3E%3C/svg%3E");
  background-size:720px 420px;background-position:right top;background-repeat:repeat;
}
@media(max-width:760px) {
  .bsn-launch-theme :is(.home-next-action,.home-summary-tile,.launch-chapters-heading,.welcome-row,.practice-hero)::before {opacity:.65;background-size:620px 360px}
}
@media print {
  .bsn-launch-theme :is(.home-next-action,.home-summary-tile,.launch-chapters-heading,.welcome-row,.practice-hero)::before {display:none}
}
@keyframes launch-orbit {to{transform:translate(-20px,25px) scale(1.09);opacity:.55}}
@keyframes launch-stars {to{translate:2% 5%;scale:1.06}}
@media(max-width:760px) {
  .bsn-launch-theme .student-next-main {padding:30px 18px 40px}
  .bsn-launch-theme .home-summary-tile {padding:18px;min-height:135px}
  .bsn-launch-theme .home-summary-tile>strong {font-size:25px}
  .bsn-launch-theme .home-next-action {padding:26px}
  html[data-notes-design] body.bsn-launch-theme.bsn-notes :is(.main,.lesson-main) {padding:12px}
  html[data-notes-design] body.bsn-launch-theme.bsn-notes :is(.art,.lesson-content) {padding:22px!important}
}
@media(prefers-reduced-motion:reduce) {
  .bsn-launch-theme .launch-stars::before,.bsn-launch-theme .launch-stars::after,.bsn-launch-theme .home-next-action::after,.bsn-launch-theme .welcome-row::after {animation:none!important}
  .bsn-launch-theme .home-summary-tile {transition:none}
}
}
