/* Salar AP Physics 1 v2.0.0 — full-width, centered learning canvas */
body.sap1-managed-page .widget-area,
body.sap1-managed-page #secondary,
body.sap1-managed-page .sidebar,
body.sap1-managed-page aside.sidebar,
body.sap1-managed-page .content-sidebar-wrap > aside,
body.sap1-managed-page .site-content > .widget-area{display:none!important}
body.sap1-managed-page .content-area,
body.sap1-managed-page #primary,
body.sap1-managed-page main.site-main,
body.sap1-managed-page .site-main,
body.sap1-managed-page article.page,
body.sap1-managed-page article.page .entry-content,
body.sap1-managed-page .entry-content,
body.sap1-managed-page .wp-block-post-content{width:100%!important;max-width:none!important;float:none!important;margin-left:auto!important;margin-right:auto!important}
body.sap1-managed-page article.page>.entry-header,
body.sap1-managed-page .entry-content>.page-title{display:none!important}

.sap1-bleed{position:relative;left:50%;transform:translateX(-50%);width:min(1280px,calc(100vw - 30px));max-width:none!important;margin:0!important;padding:0!important}
.sap1{--navy:#0d1f33;--ink:#17283d;--muted:#617184;--line:#dbe5ee;--paper:#fff;--soft:#f5f8fb;--blue:#176ea6;--cyan:#e7f5fb;--teal:#167e72;--orange:#d96c2b;--gold:#b78615;--violet:#6755a6;--red:#b74242;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:17px;line-height:1.67;letter-spacing:.001em;text-rendering:optimizeLegibility}
.sap1 *{box-sizing:border-box}.sap1 a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:3px}.sap1 img,.sap1 svg{max-width:100%}.sap1 p{margin:.65rem 0 1rem}.sap1 ul,.sap1 ol{padding-left:1.35rem}.sap1 li{margin:.28rem 0}.sap1 strong{color:#102239}.sap1 h1,.sap1 h2,.sap1 h3,.sap1 h4{color:#0e2034;font-weight:800}.sap1 h1{font-size:clamp(2.45rem,5.3vw,5rem);line-height:.98;letter-spacing:-.055em;margin:.25rem 0 1rem}.sap1 h2{font-size:clamp(1.55rem,3vw,2.45rem);line-height:1.13;letter-spacing:-.032em;margin:0 0 .75rem}.sap1 h3{font-size:1.17rem;line-height:1.25;margin:.25rem 0 .55rem}.sap1 h4{font-size:1rem;margin:.3rem 0}.sap1 small{color:var(--muted)}

.sap1-subnav{position:sticky;top:8px;z-index:30;display:flex;align-items:center;gap:18px;justify-content:space-between;margin:8px 0 20px;padding:9px 11px 9px 15px;border:1px solid rgba(198,214,226,.9);border-radius:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);box-shadow:0 9px 30px rgba(35,62,84,.08)}.sap1-subnav>strong{white-space:nowrap;font-size:.92rem}.sap1-subnav>div{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end}.sap1-subnav a{display:inline-flex;min-height:38px;align-items:center;padding:6px 10px;border-radius:10px;color:#263b50;text-decoration:none;font-size:.84rem;font-weight:720}.sap1-subnav a:hover,.sap1-subnav a.is-current{background:#e8f4fb;color:#075c91}.sap1-subnav .sap1-nav-special{border:1px solid #bfd8e6}
.sap1-crumbs{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:5px 2px 12px;color:#758395;font-size:.83rem}.sap1-crumbs a{color:#63788d;text-decoration:none}.sap1-crumbs span:last-child{display:none}

.sap1-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:36px;align-items:center;padding:clamp(28px,5vw,58px);border:1px solid #d3e2eb;border-radius:30px;background:radial-gradient(circle at 78% 14%,rgba(50,157,209,.14),transparent 27%),linear-gradient(135deg,#fbfdff 0%,#eff7fb 58%,#f8fbfd 100%)}.sap1-hero:after{content:"";position:absolute;right:-80px;bottom:-120px;width:340px;height:340px;border:50px solid rgba(23,110,166,.045);border-radius:50%;pointer-events:none}.sap1-kicker{display:inline-flex;align-items:center;gap:9px;font-size:.75rem;letter-spacing:.105em;text-transform:uppercase;font-weight:900;color:#0a668f}.sap1-kicker:before{content:"";width:9px;height:9px;border-radius:50%;background:#25a478;box-shadow:0 0 0 5px rgba(37,164,120,.13)}.sap1-lead{font-size:clamp(1.05rem,1.6vw,1.24rem);line-height:1.58;color:#344b61;max-width:790px}.sap1-hero-copy{position:relative;z-index:2}.sap1-hero-visual{position:relative;z-index:2;min-width:0}.sap1-hero-svg{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 22px rgba(32,68,94,.08))}
.sap1-actions,.sap1-linkrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:19px}.sap1-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 16px;border-radius:12px;background:#126ea6;color:#fff!important;text-decoration:none;font-weight:820;box-shadow:0 8px 18px rgba(18,110,166,.14)}.sap1-btn:hover{background:#0c5f93}.sap1-btn-secondary{background:#fff;color:#105f91!important;border:1px solid #b9d2e2;box-shadow:none}.sap1-linkrow a{display:inline-flex;align-items:center;min-height:40px;padding:7px 12px;border:1px solid #c8dbe7;border-radius:999px;background:#fff;text-decoration:none;font-size:.9rem;font-weight:750}.sap1-linkrow a:after{content:"→";margin-left:6px}

.sap1-statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0 32px}.sap1-stat{padding:17px 18px;border:1px solid var(--line);border-radius:16px;background:#fff}.sap1-stat b{display:block;font-size:1.24rem;line-height:1.1}.sap1-stat span{display:block;margin-top:5px;color:var(--muted);font-size:.84rem}.sap1-stat.is-accent{background:#102e46;border-color:#102e46}.sap1-stat.is-accent b,.sap1-stat.is-accent span{color:#fff}.sap1-stat.is-accent span{opacity:.78}

.sap1-section{padding:clamp(28px,5vw,48px) 0;border-bottom:1px solid var(--line)}.sap1-section:last-of-type{border-bottom:0}.sap1-sectionhead{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}.sap1-sectionhead>div{max-width:820px}.sap1-sectionhead p{color:var(--muted);margin:0}.sap1-answer{font-size:1.08rem;line-height:1.68;color:#34495e;max-width:940px}.sap1-eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:#668399;font-weight:850}.sap1-rule{height:1px;background:var(--line);margin:18px 0}

.sap1-goalgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.sap1-goal{display:block;min-width:0;padding:20px;border:1px solid #d7e3eb;border-radius:18px;background:#fff;text-decoration:none;color:var(--ink)!important;transition:transform .16s ease,border-color .16s ease}.sap1-goal:hover{transform:translateY(-2px);border-color:#8ab9d4}.sap1-goal .sap1-icon{display:grid;place-items:center;width:40px;height:40px;margin-bottom:13px;border-radius:12px;background:#eaf5fb;color:#0c679b;font-weight:900}.sap1-goal p{color:var(--muted);font-size:.91rem;margin-bottom:0}

.sap1-unitgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.sap1-unit{display:block;min-width:0;padding:19px;border:1px solid #d9e4ec;border-radius:18px;background:#fff;text-decoration:none;color:var(--ink)!important;position:relative;overflow:hidden}.sap1-unit:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#9cc9df}.sap1-unit:hover{border-color:#8ab9d4}.sap1-unitnum{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;font-weight:900;color:#6d93a9}.sap1-unit h3{margin:.45rem 0 .32rem}.sap1-unit p{font-size:.9rem;color:var(--muted);margin:0}.sap1-weight{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:.78rem;color:#536c7f}.sap1-weight i{height:6px;flex:1;border-radius:6px;background:#e8eff3;overflow:hidden}.sap1-weight i:after{content:"";display:block;height:100%;width:var(--w,55%);border-radius:6px;background:#2b8fc2}

.sap1-resourcegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sap1-resource{display:block;min-width:0;padding:19px;border:1px solid #d9e4ec;border-radius:18px;background:#fff;text-decoration:none;color:var(--ink)!important}.sap1-resource:hover{border-color:#8ab9d4}.sap1-resource p{font-size:.9rem;color:var(--muted);margin-bottom:0}.sap1-resource .sap1-tag{display:inline-block;margin-bottom:8px;padding:4px 8px;border-radius:999px;background:#edf6fb;color:#17658f;font-size:.72rem;font-weight:850;letter-spacing:.03em}.sap1-resource.is-dark{background:#112c42;border-color:#112c42}.sap1-resource.is-dark h3,.sap1-resource.is-dark p,.sap1-resource.is-dark strong{color:#fff}.sap1-resource.is-dark p{opacity:.78}

.sap1-two{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.sap1-visualpanel{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:28px;align-items:center}.sap1-panel{padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff}.sap1-panel.soft{background:#f7fafc}.sap1-panel.dark{background:#102c43;border-color:#102c43;color:#fff}.sap1-panel.dark h2,.sap1-panel.dark h3,.sap1-panel.dark strong{color:#fff}.sap1-panel.dark p{color:#d7e6ee}.sap1-callout{padding:18px 20px;border:1px solid #b7d8e8;border-radius:16px;background:#edf8fd;color:#264a5d}.sap1-callout.warning{background:#fff8ef;border-color:#ead1aa}.sap1-callout.success{background:#eff9f5;border-color:#b9dfd1}.sap1-callout strong{display:block;margin-bottom:4px}.sap1-example{padding:18px 20px;border-left:4px solid #dc7b38;border-radius:0 12px 12px 0;background:#fff8f1}.sap1-trap{padding:18px 20px;border-left:4px solid #b94d4d;border-radius:0 12px 12px 0;background:#fff4f4}.sap1-examlink{padding:18px 20px;border-left:4px solid #1a7b72;border-radius:0 12px 12px 0;background:#f0faf7}

.sap1-tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:#fff}.sap1-table{width:100%;border-collapse:collapse;min-width:650px}.sap1-table th,.sap1-table td{padding:12px 13px;border-bottom:1px solid #e3ebf0;text-align:left;vertical-align:top}.sap1-table th{background:#f4f8fa;font-size:.82rem;text-transform:uppercase;letter-spacing:.045em;color:#526b7d}.sap1-table tr:last-child td{border-bottom:0}.sap1-table td strong{display:block}.sap1-table .good{color:#137b62;font-weight:800}.sap1-table .bad{color:#a83e3e;font-weight:800}

.sap1-formula-index{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 22px}.sap1-formula-index a{padding:7px 10px;border-radius:999px;border:1px solid #c6dae6;background:#fff;text-decoration:none;font-size:.84rem;font-weight:740}.sap1-formulagrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.sap1-formula{padding:19px;border:1px solid #d9e4ec;border-radius:18px;background:#fff}.sap1-eq{display:flex;align-items:center;justify-content:center;min-height:68px;padding:12px 14px;margin:9px 0;border-radius:12px;background:#f3f7fa;font-family:Cambria,"Times New Roman",serif;font-size:1.43rem;text-align:center;overflow-wrap:anywhere}.sap1-formula p{font-size:.91rem;color:#526578;margin:.45rem 0}.sap1-formula small{display:block}.sap1-formula .sap1-use{margin-top:9px;padding-top:9px;border-top:1px solid #e3ebf0;color:#344e62}.sap1-formula .sap1-unitbadge{font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#4e7c99}

.sap1-choicegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.sap1-choice{padding:17px;border-top:4px solid #78acc8;border-radius:10px;background:#f6fafc}.sap1-choice b,.sap1-choice span{display:block}.sap1-choice span{margin-top:5px;color:var(--muted);font-size:.87rem}

.sap1-examviz{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sap1-examhalf{padding:25px;border:1px solid var(--line);border-radius:20px;background:#fff}.sap1-examhalf .pct{display:inline-grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#e8f5fb;color:#0d658f;font-size:1.2rem;font-weight:900}.sap1-examhalf strong,.sap1-examhalf span{display:block}.sap1-examhalf strong{font-size:1.3rem;margin-top:12px}.sap1-examhalf span{color:var(--muted)}
.sap1-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.sap1-timeline>div{padding:17px;border:1px solid var(--line);border-radius:16px;background:#fff}.sap1-timeline b{display:block}.sap1-timeline span{display:block;margin-bottom:8px;color:#34799e;font-size:.75rem;font-weight:900;letter-spacing:.06em}.sap1-timeline p{font-size:.89rem;color:var(--muted);margin:0}

.sap1-conceptmap,.sap1-kin-svg,.sap1-projectile-svg,.sap1-vector-svg,.sap1-relative-svg,.sap1-motion-svg{width:100%;height:auto;display:block}.sap1-axis{stroke:#708496;stroke-width:2}.sap1-gridline{stroke:#dfe8ee;stroke-width:1}.sap1-line-blue{fill:none;stroke:#1773aa;stroke-width:4;stroke-linecap:round}.sap1-line-orange{fill:none;stroke:#db732d;stroke-width:4;stroke-linecap:round}.sap1-line-teal{fill:none;stroke:#168173;stroke-width:4;stroke-linecap:round}.sap1-line-violet{fill:none;stroke:#6656a9;stroke-width:4;stroke-linecap:round}.sap1-dash{stroke-dasharray:7 7}.sap1-node{fill:#fff;stroke:#7295aa;stroke-width:2}.sap1-node-dark{fill:#14354e;stroke:#14354e}.sap1-fill-blue{fill:#e7f5fb}.sap1-fill-orange{fill:#fff1e7}.sap1-fill-teal{fill:#eaf7f4}.sap1-vector{stroke:#db732d;stroke-width:4}.sap1-vector-blue{stroke:#1773aa;stroke-width:4}.sap1-label{fill:#243e51;font:600 14px Inter,system-ui,sans-serif}.sap1-label-small{fill:#617587;font:600 12px Inter,system-ui,sans-serif}.sap1-label-light{fill:#fff;font:700 14px Inter,system-ui,sans-serif}.sap1-dot{fill:#126fa6}.sap1-water{fill:#e1f3fb}.sap1-wave{fill:none;stroke:#6755a6;stroke-width:4}

.sap1-question,.sap1-frq{padding:22px;border:1px solid #d9e4ec;border-radius:20px;background:#fff;margin:15px 0}.sap1-question h3,.sap1-frq h3{font-size:1.08rem}.sap1-qnum{display:inline-block;margin-bottom:7px;color:#377da3;font-size:.74rem;font-weight:900;letter-spacing:.075em;text-transform:uppercase}.sap1-question ol{margin-bottom:10px}.sap1 details{margin-top:12px;padding-top:12px;border-top:1px solid #e3ebf0}.sap1 summary{cursor:pointer;font-weight:820;color:#173b55}.sap1-answerkey{padding:15px 17px;border-radius:12px;background:#f5f9fb}.sap1-rubric{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.sap1-rubric div{padding:14px;border-radius:12px;background:#f5f8fa}.sap1-rubric b{display:block}

.sap1-checklist{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:0;list-style:none}.sap1-checklist li{margin:0;padding:12px 14px 12px 38px;border:1px solid #dce6ed;border-radius:13px;background:#fff;position:relative}.sap1-checklist li:before{content:"✓";position:absolute;left:14px;top:11px;color:#15816a;font-weight:900}.sap1-mistakes{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.sap1-mistake{padding:17px;border-left:4px solid #c74d4d;background:#fff5f5;border-radius:0 12px 12px 0}.sap1-mistake b{display:block}.sap1-mistake span{font-size:.9rem;color:#6c5656}

.sap1-datecard{display:flex;align-items:center;gap:22px;padding:25px;border:1px solid var(--line);border-radius:20px;background:#f7fbfd}.sap1-datecard>span{font-size:.76rem;font-weight:900;letter-spacing:.11em}.sap1-datecard>b{font-size:3rem;line-height:1}.sap1-datecard strong,.sap1-datecard small{display:block}.sap1-source{margin:32px 0 14px;padding:19px 21px;border:1px solid #d7e3ea;border-left:4px solid #6f9db8;border-radius:0 14px 14px 0;background:#f6f9fb;color:#465b6e}.sap1-source strong{display:block}.sap1-source p{margin:.38rem 0}.sap1-footerlinks{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.sap1-footerlinks a{font-size:.84rem}

.sap1-pagehead{padding:24px 0 22px;max-width:1000px}.sap1-pagehead h1{font-size:clamp(2.35rem,4.8vw,4.4rem)}.sap1-pagehead .sap1-lead{max-width:920px}.sap1-topic-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:26px;align-items:center;padding:27px;border:1px solid #d8e4eb;border-radius:24px;background:#f9fcfd}.sap1-topic-hero h1{font-size:clamp(2.1rem,4vw,3.7rem)}

@media(max-width:1050px){.sap1-hero,.sap1-topic-hero,.sap1-visualpanel{grid-template-columns:1fr}.sap1-hero-visual{max-width:760px;margin-inline:auto}.sap1-unitgrid,.sap1-goalgrid{grid-template-columns:repeat(2,1fr)}.sap1-resourcegrid{grid-template-columns:repeat(2,1fr)}.sap1-choicegrid{grid-template-columns:repeat(2,1fr)}.sap1-timeline{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.sap1-bleed{width:calc(100vw - 18px)}.sap1{font-size:16px}.sap1-subnav{position:static;align-items:flex-start;flex-direction:column}.sap1-subnav>div{justify-content:flex-start}.sap1-hero{padding:24px;border-radius:22px}.sap1-statgrid,.sap1-unitgrid,.sap1-goalgrid,.sap1-resourcegrid,.sap1-two,.sap1-formulagrid,.sap1-choicegrid,.sap1-examviz,.sap1-timeline,.sap1-rubric,.sap1-checklist,.sap1-mistakes{grid-template-columns:1fr}.sap1-sectionhead{align-items:start;flex-direction:column}.sap1 h1{font-size:2.55rem}.sap1-pagehead h1{font-size:2.45rem}.sap1-topic-hero{padding:20px}.sap1-table{min-width:600px}.sap1-datecard{align-items:flex-start;flex-wrap:wrap}}
@media(max-width:420px){.sap1-bleed{width:calc(100vw - 12px)}.sap1-hero{padding:19px}.sap1-subnav{border-radius:12px}.sap1-btn{width:100%}.sap1-linkrow a{width:100%;justify-content:space-between}.sap1 h1,.sap1-pagehead h1{font-size:2.15rem}.sap1-section{padding:27px 0}.sap1-panel,.sap1-question,.sap1-frq{padding:17px}}
@media print{body.sap1-managed-page .site-header,body.sap1-managed-page .site-footer,.sap1-subnav,.sap1-actions,.sap1-source{display:none!important}.sap1-bleed{left:auto;transform:none;width:100%;margin:0}.sap1-section{break-inside:avoid}.sap1{font-size:11pt}.sap1 a{text-decoration:none;color:#000}.sap1-hero{background:#fff}}

/* v2.1 review batch: keep dense year/lab content comfortable on large and small screens */
.sap1[data-sap1-page="past-papers"] .sap1-topic-hero,.sap1[data-sap1-page="labs"] .sap1-topic-hero{background:linear-gradient(135deg,#fbfdfe 0%,#f3f9fc 100%)}
.sap1[data-sap1-page="past-papers"] .sap1-resourcegrid,.sap1[data-sap1-page="labs"] .sap1-resourcegrid{align-items:stretch}
.sap1[data-sap1-page="labs"] ol{padding-left:1.35rem}.sap1[data-sap1-page="labs"] ol li{margin:.65rem 0}

/* v2.2.0: substantive Past Papers and Labs */
.sap1-paper-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px;border:1px solid #d5e2ea;border-radius:20px;background:#fff;margin:14px 0}.sap1-paper-card.featured{background:linear-gradient(135deg,#eff8fc,#fff);border-color:#a9cfdf}.sap1-paper-card.compact{background:#f8fafb}.sap1-paper-year{display:inline-grid;place-items:center;min-width:64px;height:34px;padding:0 12px;border-radius:999px;background:#112f48;color:#fff;font-size:.82rem;font-weight:900;letter-spacing:.08em}.sap1-paper-actions{display:flex;flex-direction:column;gap:10px;min-width:220px}.sap1-paper-actions small{text-align:center}.sap1-paper-skills{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.sap1-paper-skills span,.sap1-samplelinks a{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#eef6fa;border:1px solid #d0e2ec;color:#245d7d;text-decoration:none;font-size:.8rem;font-weight:760}.sap1-samplelinks{display:flex;flex-wrap:wrap;gap:8px}.sap1-subtitle{margin:22px 0 10px!important}.sap1-paper-links{margin-top:14px}
.sap1-labmap{display:grid;grid-template-columns:repeat(8,1fr);gap:9px}.sap1-labmap a{min-width:0;padding:14px 9px;border:1px solid #d7e3eb;border-radius:15px;background:#fff;text-align:center;text-decoration:none;color:#234158}.sap1-labmap b{display:grid;place-items:center;width:32px;height:32px;margin:0 auto 7px;border-radius:50%;background:#e8f5fb;color:#126a9d}.sap1-labmap span{display:block;font-size:.78rem;font-weight:760;line-height:1.2}.sap1-lab{scroll-margin-top:80px}.sap1-labnum{display:inline-block;margin-bottom:9px;padding:5px 9px;border-radius:999px;background:#112f48;color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.075em}.sap1-lab-analysis{margin-top:16px;padding:20px;border:1px solid #bbd9e7;border-radius:18px;background:#f0f8fc}.sap1-lab-analysis h3{margin-top:0}.sap1-lab .sap1-table{min-width:820px}
@media(max-width:1050px){.sap1-labmap{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.sap1-paper-card{grid-template-columns:1fr}.sap1-paper-actions{min-width:0}.sap1-paper-actions .sap1-btn{width:100%}.sap1-labmap{grid-template-columns:repeat(2,1fr)}}


/* v2.3 interactive virtual labs + MCQs */
.sap1-vlab{scroll-margin-top:24px}.sap1-vlab-head{display:flex;gap:24px;align-items:flex-start;justify-content:space-between}.sap1-vlab-progress{min-width:155px;padding:12px 14px;border:1px solid var(--sap1-border,#d6e0e6);border-radius:14px;background:#f7fafc;text-align:center}.sap1-vlab-progress strong,.sap1-vlab-progress span{display:block}.sap1-vlab-progress span{font-size:.84rem;color:#5d7180;margin-top:4px}.sap1-vlab-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,.7fr);gap:20px;margin-top:22px}.sap1-vlab-stage{border:1px solid #d4e0e7;border-radius:20px;overflow:hidden;background:#f7fafc}.sap1-vlab-svg{display:block;width:100%;height:auto}.sap1-vlab-readout{padding:12px 16px;border-top:1px solid #d4e0e7;background:#fff;font-weight:650;color:#304653;min-height:52px}.sap1-vlab-controls{border:1px solid #d4e0e7;border-radius:20px;padding:18px;background:#fff}.sap1-vlab-controls .sap1-btn{width:100%;margin:5px 0;text-align:center}.sap1-vlab-meter{margin-top:16px;font-size:.85rem;color:#5d7180}.sap1-vlab-meter>div{height:10px;border-radius:99px;background:#e8eff3;overflow:hidden;margin-top:6px}.sap1-vlab-meter i{display:block;height:100%;width:0;background:#1773aa;transition:width .3s ease}.sap1-vlab-table{margin-top:20px}.sap1-vlab-analysis{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:22px;margin-top:22px}.sap1-vlab-graph{border:1px solid #d4e0e7;border-radius:20px;background:#fff;padding:12px}.sap1-vlab-graph svg{width:100%;height:auto;display:block}.sap1-vlab-report{display:grid;gap:12px}.sap1-resultbox,.sap1-discussion,.sap1-conclusion,.sap1-feedback{border-radius:16px;padding:16px 18px;border:1px solid #d4e0e7;background:#fff}.sap1-resultbox{border-left:5px solid #1773aa}.sap1-resultbox span{font-size:.74rem;letter-spacing:.12em;font-weight:800;color:#1773aa}.sap1-conclusion{border-left:5px solid #2a8d73}.sap1-discussion{border-left:5px solid #d96c2b}.sap1-feedback{background:#f7fafc}.sap1-feedback ul{margin-bottom:0}.sap1-mcq-options{display:grid;gap:10px;margin:16px 0}.sap1-mcq-option{display:flex;align-items:flex-start;gap:12px;padding:13px 15px;border:1px solid #cfdce4;border-radius:14px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.sap1-mcq-option:hover{border-color:#7ca9c0}.sap1-mcq-option.is-selected{border-color:#1773aa;background:#edf6fb}.sap1-mcq-option.is-correct{border-color:#2a8d73;background:#edf8f4}.sap1-mcq-option.is-wrong{border-color:#c95048;background:#fff1ef}.sap1-mcq-option input{margin-top:4px;accent-color:#1773aa}.sap1-choice-letter{display:grid;place-items:center;min-width:28px;height:28px;border-radius:50%;background:#edf2f5;font-weight:800;color:#304653}.sap1-mcq-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.sap1-mcq-actions .sap1-btn{border:0}.sap1-text-btn{border:0;background:transparent;color:#1773aa;font-weight:750;padding:10px 6px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.sap1-mcq-feedback{min-height:28px;margin-top:10px}.sap1-mcq-feedback strong{font-size:1rem}.sap1-mcq-explanation{margin-top:10px;padding:14px 16px;border-radius:14px;background:#f7fafc;border:1px solid #d4e0e7}.sap1-scorebar{position:sticky;top:10px;z-index:15;display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:13px 16px;margin:0 0 18px;border:1px solid #b8cdd9;background:rgba(255,255,255,.97);border-radius:16px;box-shadow:0 8px 25px rgba(17,44,66,.08)}.sap1-scorebar [data-message]{flex:1;color:#5d7180}.sap1-scorebar .sap1-btn{margin-left:auto}.sap1-mcq button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:760px){.sap1-vlab-head{display:block}.sap1-vlab-progress{margin-top:12px}.sap1-vlab-grid,.sap1-vlab-analysis{grid-template-columns:1fr}.sap1-scorebar{position:static}.sap1-scorebar .sap1-btn{width:100%;margin-left:0}.sap1-mcq-actions{display:grid;grid-template-columns:1fr}.sap1-mcq-actions .sap1-btn,.sap1-mcq-actions .sap1-text-btn{width:100%}}

/* v2.3.1+ — mobile-first virtual-lab hardening + accessible interaction */
.sap1{max-width:100%;overflow-wrap:anywhere;word-break:normal}
.sap1 button,.sap1 a,.sap1 input{touch-action:manipulation}
.sap1 button:focus-visible,.sap1 a:focus-visible,.sap1 input:focus-visible,.sap1 [tabindex]:focus-visible{outline:3px solid #0b78b4;outline-offset:3px}
.sap1-vlab,.sap1-vlab-grid,.sap1-vlab-stage,.sap1-vlab-controls,.sap1-vlab-analysis,.sap1-vlab-graph,.sap1-vlab-report{min-width:0;max-width:100%}
.sap1-vlab-brief{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 6px}
.sap1-vlab-brief>div{min-width:0;padding:13px 14px;border:1px solid #d8e4eb;border-radius:14px;background:#f8fbfd}
.sap1-vlab-brief span{display:block;margin-bottom:4px;color:#60798a;font-size:.73rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase}
.sap1-vlab-brief strong{display:block;font-size:.91rem;line-height:1.42}
.sap1-factgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
.sap1-factgrid>div{min-width:0;padding:15px 16px;border:1px solid #d8e4eb;border-radius:15px;background:#fff}
.sap1-factgrid b{display:block;font-size:1rem}.sap1-factgrid span{display:block;margin-top:4px;color:#617184;font-size:.84rem;line-height:1.38}
.sap1-vlab-controls .sap1-btn,.sap1-vlab-controls .sap1-text-btn{min-height:48px}
.sap1-vlab-stage,.sap1-vlab-graph{contain:layout paint}
.sap1-vlab-svg,.sap1-vlab-graph svg{max-width:100%;overflow:visible}
.sap1-vlab-readout{overflow-wrap:anywhere}
.sap1-vlab-table{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.sap1-vlab-table .sap1-table{table-layout:auto}
.sap1-vlab-report p,.sap1-vlab-report li{overflow-wrap:anywhere}

@media(max-width:980px){
  .sap1-vlab-brief{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sap1-factgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .sap1-bleed{width:min(100%,calc(100vw - 16px));left:50%;padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}
  .sap1-subnav{position:relative;top:auto;display:block;padding:10px 10px 8px}
  .sap1-subnav>strong{display:block;margin:0 4px 8px}
  .sap1-subnav>div{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:6px;overflow-x:auto;padding:0 2px 4px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
  .sap1-subnav a{flex:0 0 auto;min-height:44px}
  .sap1-topic-hero{gap:20px;padding:20px 18px;border-radius:20px}
  .sap1-vlab-head{display:grid;grid-template-columns:1fr;gap:12px}
  .sap1-vlab-progress{width:100%;min-width:0;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left}
  .sap1-vlab-progress span{margin-top:0;text-align:right}
  .sap1-vlab-grid,.sap1-vlab-analysis{grid-template-columns:minmax(0,1fr)}
  .sap1-vlab-controls{padding:16px;border-radius:16px}
  .sap1-vlab-stage,.sap1-vlab-graph{border-radius:16px}
  .sap1-vlab-brief{grid-template-columns:1fr 1fr}
  .sap1-factgrid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .sap1-bleed{width:min(100%,calc(100vw - 10px))}
  .sap1{font-size:16px;line-height:1.62}
  .sap1 h1,.sap1-pagehead h1{font-size:clamp(1.9rem,10vw,2.25rem);line-height:1.03;letter-spacing:-.042em}
  .sap1 h2{font-size:clamp(1.45rem,7.5vw,1.85rem)}
  .sap1-section{padding:26px 0}
  .sap1-vlab-brief,.sap1-factgrid{grid-template-columns:minmax(0,1fr)}
  .sap1-vlab-brief>div,.sap1-factgrid>div{padding:12px 13px}
  .sap1-vlab-progress{display:block}.sap1-vlab-progress span{text-align:left;margin-top:3px}
  .sap1-vlab-svg text{font-size:22px!important}
  .sap1-vlab-graph svg text{font-size:24px!important}
  .sap1-vlab-readout{font-size:.94rem;line-height:1.5;padding:11px 13px}
  .sap1-vlab-table{overflow:visible;border:0;background:transparent}
  .sap1-vlab-table .sap1-table{display:block;min-width:0;width:100%;background:transparent}
  .sap1-vlab-table thead{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  .sap1-vlab-table tbody,.sap1-vlab-table tr,.sap1-vlab-table td{display:block;width:100%}
  .sap1-vlab-table tr{margin:0 0 12px;padding:7px 12px;border:1px solid #dbe5eb;border-radius:14px;background:#fff;box-shadow:0 4px 12px rgba(17,44,66,.035)}
  .sap1-vlab-table td{display:grid;grid-template-columns:minmax(105px,40%) minmax(0,1fr);gap:10px;align-items:start;padding:8px 0;border:0;border-bottom:1px solid #edf2f5;text-align:right;overflow-wrap:anywhere}
  .sap1-vlab-table td:last-child{border-bottom:0}
  .sap1-vlab-table td:before{content:attr(data-label);font-size:.75rem;font-weight:850;letter-spacing:.035em;text-transform:uppercase;color:#60798a;text-align:left}
  .sap1-vlab-table td.sap1-empty{display:block;text-align:left;padding:12px 2px;border:0}.sap1-vlab-table td.sap1-empty:before{content:none}
  .sap1-resultbox,.sap1-discussion,.sap1-conclusion,.sap1-feedback{padding:14px 15px;border-radius:14px}
  .sap1-vlab-graph{padding:6px}
  .sap1-btn,.sap1-text-btn{font-size:.96rem}
}
@media(max-width:360px){
  .sap1-bleed{width:calc(100vw - 6px)}
  .sap1-topic-hero{padding:17px 14px}
  .sap1-vlab-controls{padding:13px}
  .sap1-vlab-table td{grid-template-columns:1fr;text-align:left;gap:2px}
  .sap1-vlab-svg text{font-size:24px!important}
  .sap1-vlab-graph svg text{font-size:26px!important}
}
@media(hover:none){.sap1-goal:hover,.sap1-unit:hover,.sap1-resource:hover,.sap1-mcq-option:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.sap1 *,.sap1 *:before,.sap1 *:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}

/* v2.4.0 student-controlled virtual laboratory */
.sap1-lab-setup{display:grid;gap:13px;margin:14px 0}.sap1-lab-control{display:grid;gap:7px;padding:11px 12px;border:1px solid #d8e4eb;border-radius:13px;background:#f8fbfd}.sap1-lab-control>span{display:flex;justify-content:space-between;gap:12px;font-size:.86rem;font-weight:800;color:#304653}.sap1-lab-control output{font-variant-numeric:tabular-nums;color:#1773aa}.sap1-lab-control input[type=range]{width:100%;min-height:28px;accent-color:#1773aa}.sap1-lab-control select{width:100%;min-height:44px;padding:8px 10px;border:1px solid #bfcfd9;border-radius:10px;background:#fff;color:#112c42;font:inherit}.sap1-lab-control small{color:#60798a}.sap1-setup-feedback{min-height:48px;margin:10px 0 12px;padding:10px 12px;border-radius:12px;background:#edf7fb;border:1px solid #bcd9e7;font-size:.86rem;line-height:1.45;color:#304653}.sap1-setup-feedback.is-warning{background:#fff4e9;border-color:#e8c39f;color:#70441f}.sap1-btn-success{background:#2a8d73!important;border-color:#2a8d73!important}.sap1-lab-analysis-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start;margin-top:18px;padding:15px;border:1px solid #d6e2e9;border-radius:16px;background:#f8fbfd}.sap1-lab-analysis-controls .sap1-btn{width:100%;margin:0;text-align:center}.sap1-lab-analysis-controls p{grid-column:1/-1;margin:2px 0 0;font-size:.86rem;color:#60798a}.sap1-vlab-graph{overflow:hidden}.sap1-vlab-graph svg{min-height:330px}.sap1-vlab-graph text{font-family:inherit}.sap1-vlab-controls button:disabled,.sap1-lab-analysis-controls button:disabled{opacity:.48;cursor:not-allowed;filter:saturate(.65)}
@media(max-width:760px){.sap1-lab-analysis-controls{grid-template-columns:1fr}.sap1-lab-analysis-controls p{grid-column:1}.sap1-lab-control>span{align-items:flex-start;flex-direction:column;gap:2px}.sap1-vlab-graph svg{min-height:280px}}
@media(max-width:420px){.sap1-lab-setup{gap:10px}.sap1-lab-control{padding:10px}.sap1-lab-analysis-controls{padding:12px}.sap1-vlab-graph svg{min-height:250px}}

/* v2.5.0 — hands-on Kinematics apparatus */
.sap1-real-kinematics{scroll-margin-top:24px}
.sap1-real-instructions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0 22px}
.sap1-real-instructions>div{display:flex;gap:10px;align-items:flex-start;min-width:0;padding:12px 13px;border:1px solid #d8e4eb;border-radius:14px;background:#fff}
.sap1-real-instructions b{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#112c42;color:#fff;font-size:.86rem}
.sap1-real-instructions span{font-size:.86rem;line-height:1.43;color:#405867}
.sap1-real-stage{position:relative;padding:0;overflow:hidden;background:#f7fafc}
.sap1-real-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 15px;border-bottom:1px solid #d8e4eb;background:#fff}
.sap1-real-toolbar strong{color:#112c42}.sap1-real-toolbar span{font-size:.82rem;color:#60798a;text-align:right}
.sap1-real-svg{display:block;width:100%;height:auto;min-height:360px;max-height:590px;touch-action:none;user-select:none;-webkit-user-select:none}
.sap1-real-svg [data-drag]{cursor:grab;touch-action:none;transform-box:fill-box;transform-origin:center}
.sap1-real-svg [data-drag]:hover circle,.sap1-real-svg [data-drag]:focus-visible circle{filter:drop-shadow(0 3px 4px rgba(17,44,66,.22))}
.sap1-real-svg [data-drag].is-dragging{cursor:grabbing}
.sap1-real-svg [data-drag].is-locked{cursor:not-allowed;opacity:.72}
.sap1-real-svg [data-part="kin-gate"].is-crossed line{stroke:#2a8d73;stroke-width:10;filter:drop-shadow(0 0 8px rgba(42,141,115,.55))}
.sap1-real-readout{border-radius:0;border-left:0;border-right:0;border-bottom:0;margin:0;background:#fff;min-height:62px}
.sap1-real-controls{display:flex;flex-direction:column;gap:10px}
.sap1-real-controls .sap1-btn,.sap1-real-controls .sap1-text-btn{width:100%;margin:0;min-height:48px}
.sap1-btn-warning{background:#d96c2b!important;border-color:#d96c2b!important;color:#fff!important}
.sap1-real-meters{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:4px}
.sap1-real-meters>div{padding:11px 12px;border:1px solid #d5e1e8;border-radius:13px;background:#f8fbfd;min-width:0}
.sap1-real-meters span{display:block;font-size:.72rem;font-weight:850;letter-spacing:.045em;text-transform:uppercase;color:#60798a}
.sap1-real-meters strong{display:block;margin-top:3px;font-size:1.05rem;color:#112c42;font-variant-numeric:tabular-nums}
.sap1-real-meters .sap1-stopwatch{grid-column:1/-1;background:#112c42;border-color:#112c42}
.sap1-real-meters .sap1-stopwatch span{color:#b8cfdd}.sap1-real-meters .sap1-stopwatch strong{font-size:1.9rem;color:#fff;letter-spacing:.02em}
.sap1-real-note{margin:0 0 3px;padding:11px 12px;border-left:4px solid #d96c2b;background:#fff6ee;border-radius:10px;color:#70441f;font-size:.84rem;line-height:1.47}
.sap1-real-grid{align-items:start}
@media(max-width:1100px){.sap1-real-instructions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  .sap1-real-instructions{grid-template-columns:1fr 1fr}
  .sap1-real-toolbar{display:block}.sap1-real-toolbar span{display:block;margin-top:4px;text-align:left}
  .sap1-real-svg{min-height:300px}
}
@media(max-width:520px){
  .sap1-real-instructions{grid-template-columns:1fr}
  .sap1-real-svg{min-height:250px}
  .sap1-real-meters{grid-template-columns:1fr}
  .sap1-real-meters .sap1-stopwatch{grid-column:1}
  .sap1-real-meters .sap1-stopwatch strong{font-size:1.55rem}
  .sap1-real-toolbar{padding:10px 12px}
}

/* v2.6.0 — data-mode selector + hands-on Friction apparatus */
.sap1-lab-modebar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;margin:18px 0;padding:12px 14px;border:1px solid #cddde6;border-radius:15px;background:#f8fbfd}
.sap1-lab-modebar>div{min-width:0}.sap1-lab-modebar strong,.sap1-lab-modebar span{display:block}.sap1-lab-modebar strong{color:#112c42}.sap1-lab-modebar span{margin-top:2px;font-size:.82rem;color:#60798a}
.sap1-lab-modebar .sap1-btn{margin:0;white-space:nowrap}.sap1-lab-modebar .sap1-btn.is-active{background:#112c42!important;border-color:#112c42!important;color:#fff!important}
.sap1-real-friction{scroll-margin-top:24px}.sap1-friction-svg [data-drag]{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.sap1-friction-svg [data-drag].is-dragging{cursor:grabbing;filter:drop-shadow(0 6px 8px rgba(17,44,66,.22))}.sap1-friction-svg [data-weight]{cursor:grab}.sap1-friction-svg [data-part="fr-handle"]{cursor:ew-resize}.sap1-friction-svg [data-part="fr-block"]{cursor:grab}.sap1-friction-svg{touch-action:none}
@media(max-width:760px){.sap1-lab-modebar{grid-template-columns:1fr 1fr}.sap1-lab-modebar>div{grid-column:1/-1}.sap1-lab-modebar .sap1-btn{width:100%}}
@media(max-width:480px){.sap1-lab-modebar{grid-template-columns:1fr}.sap1-lab-modebar>div{grid-column:1}.sap1-friction-svg{min-height:275px}}

/* v2.7.0 — hands-on Energy apparatus */
.sap1-real-energy{scroll-margin-top:24px}.sap1-energy-svg{touch-action:none}.sap1-energy-svg [data-drag]{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.sap1-energy-svg [data-drag].is-dragging{cursor:grabbing;filter:drop-shadow(0 6px 8px rgba(17,44,66,.22))}.sap1-energy-svg [data-drag].is-locked{cursor:not-allowed;opacity:.76}.sap1-energy-svg [data-part="en-gate"]{cursor:ew-resize}.sap1-energy-svg [data-part="en-cart"]{cursor:grab}.sap1-energy-svg [data-part="en-gpe-bar"],.sap1-energy-svg [data-part="en-ke-bar"]{transition:width .08s linear}
@media(max-width:760px){.sap1-energy-svg{min-height:300px}.sap1-energy-svg [data-part="en-energy-bars"]{transform:translate(-25px,10px) scale(.92);transform-origin:center}}
@media(max-width:480px){.sap1-energy-svg{min-height:270px}.sap1-energy-svg [data-part="en-energy-bars"]{transform:translate(-75px,16px) scale(.82);transform-origin:center}}


/* v2.8.0 — direct-manipulation Momentum lab */
.sap1-real-momentum{scroll-margin-top:24px}.sap1-momentum-svg{touch-action:none}.sap1-momentum-svg [data-drag]{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.sap1-momentum-svg [data-drag].is-dragging{cursor:grabbing;filter:drop-shadow(0 6px 8px rgba(17,44,66,.22))}.sap1-momentum-svg [data-drag].is-locked{cursor:not-allowed;opacity:.72}.sap1-momentum-svg [data-mass-token]{cursor:grab}.sap1-momentum-svg [data-part="mo-launcher-handle"]{cursor:ew-resize}.sap1-momentum-svg [data-part="mo-cart1"],.sap1-momentum-svg [data-part="mo-cart2"]{cursor:grab}.sap1-momentum-svg .is-gate-hit{filter:drop-shadow(0 0 8px rgba(42,141,115,.65))}.sap1-momentum-svg .is-collision{filter:drop-shadow(0 4px 9px rgba(217,108,43,.5))}
@media(max-width:480px){.sap1-momentum-svg{min-height:285px}.sap1-real-momentum .sap1-real-toolbar span{font-size:.78rem}}

/* v2.9.0 — direct-manipulation Torque / rotational-equilibrium lab */
.sap1-real-torque{scroll-margin-top:24px}.sap1-torque-svg{touch-action:none}.sap1-torque-svg [data-drag]{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.sap1-torque-svg [data-drag].is-dragging{cursor:grabbing;filter:drop-shadow(0 6px 8px rgba(17,44,66,.22))}.sap1-torque-svg [data-drag].is-locked{cursor:not-allowed;opacity:.72}.sap1-torque-svg [data-mass-token]{cursor:grab}.sap1-torque-svg [data-part="to-left-hanger"],.sap1-torque-svg [data-part="to-right-hanger"]{cursor:ew-resize}.sap1-torque-svg [data-part="to-beam-group"]{transform-origin:380px 250px}.sap1-torque-svg [data-part="to-bubble"]{transition:cx .12s linear}.sap1-real-torque .sap1-real-meters{grid-template-columns:1fr 1fr}.sap1-real-torque .sap1-stopwatch{grid-column:1/-1}
@media(max-width:760px){.sap1-torque-svg{min-height:320px}}
@media(max-width:480px){.sap1-torque-svg{min-height:290px}.sap1-real-torque .sap1-real-meters{grid-template-columns:1fr}.sap1-real-torque .sap1-stopwatch{grid-column:1}}

/* v2.10.0 — hands-on Rolling / Rotational Motion lab */
.sap1-real-rolling{scroll-margin-top:24px}.sap1-rolling-svg{touch-action:none}.sap1-rolling-svg [data-drag]{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.sap1-rolling-svg [data-drag].is-dragging{cursor:grabbing;filter:drop-shadow(0 6px 8px rgba(17,44,66,.22))}.sap1-rolling-svg [data-drag].is-locked{cursor:not-allowed;opacity:.72}.sap1-rolling-svg [data-ro-object]{cursor:grab}.sap1-rolling-svg [data-part="ro-angle-handle"]{cursor:grab}.sap1-real-rolling .sap1-real-meters{grid-template-columns:repeat(2,minmax(0,1fr))}.sap1-real-rolling .sap1-vlab-table th{white-space:nowrap}.sap1-real-rolling .sap1-vlab-table td{white-space:normal}
@media(max-width:480px){.sap1-rolling-svg{min-height:300px}.sap1-real-rolling .sap1-real-meters{grid-template-columns:1fr}.sap1-real-rolling .sap1-real-toolbar span{font-size:.78rem}}


/* v2.11.0 · hands-on Simple Harmonic Motion lab */
.sap1-real-shm{scroll-margin-top:24px}.sap1-shm-svg{touch-action:none}.sap1-shm-svg [data-drag]{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.sap1-shm-svg [data-drag].is-dragging{cursor:grabbing;filter:drop-shadow(0 6px 8px rgba(17,44,66,.22))}.sap1-shm-svg [data-drag].is-locked{cursor:not-allowed;opacity:.72}.sap1-shm-svg [data-shm-mass-token]{cursor:grab}.sap1-shm-svg [data-part="sh-hanger-group"]{cursor:ns-resize}.sap1-shm-svg [data-part="sh-sensor-light"]{transition:fill .08s linear}.sap1-real-shm .sap1-real-meters{grid-template-columns:repeat(2,minmax(0,1fr))}.sap1-real-shm .sap1-vlab-table th{white-space:nowrap}.sap1-real-shm .sap1-vlab-table td{white-space:normal}
@media(max-width:480px){.sap1-shm-svg{min-height:310px}.sap1-real-shm .sap1-real-meters{grid-template-columns:1fr}.sap1-real-shm .sap1-real-toolbar span{font-size:.78rem}}


/* v2.12.0 · hands-on Fluids / Buoyancy lab */
.sap1-real-fluids{scroll-margin-top:24px}.sap1-fluids-svg{touch-action:none}.sap1-fluids-svg [data-drag]{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.sap1-fluids-svg [data-drag].is-dragging{cursor:grabbing;filter:drop-shadow(0 6px 8px rgba(17,44,66,.22))}.sap1-fluids-svg [data-drag].is-locked{cursor:not-allowed;opacity:.72}.sap1-real-fluids .sap1-real-meters{grid-template-columns:repeat(2,minmax(0,1fr))}.sap1-real-fluids .sap1-vlab-table th{white-space:nowrap}.sap1-real-fluids .sap1-vlab-table td{white-space:normal}.sap1-fluids-svg [data-part="fl-object"]{filter:drop-shadow(0 5px 7px rgba(138,73,30,.18))}.sap1-fluids-svg [data-role="fl-force-live"],.sap1-fluids-svg [data-role="fl-volume-label"]{font-variant-numeric:tabular-nums}
@media(max-width:480px){.sap1-fluids-svg{min-height:330px}.sap1-real-fluids .sap1-real-meters{grid-template-columns:1fr}.sap1-real-fluids .sap1-real-toolbar span{font-size:.78rem}}


/* v2.13.0 · Past Papers / Released FRQ Practice Studio */
.sap1-past-hero{background:linear-gradient(135deg,#f5fbfe 0%,#fff 58%,#f7fafb 100%)!important}
.sap1-align-table td,.sap1-question-map td{vertical-align:top}
.sap1-status{display:inline-flex;align-items:center;white-space:nowrap;padding:5px 9px;border-radius:999px;font-size:.76rem;font-weight:850;border:1px solid #cddce5;background:#f4f8fa;color:#284e66}
.sap1-status.current{background:#e8f7f2;border-color:#b3ddcf;color:#176c5d}.sap1-status.legacy{background:#fff4e6;border-color:#ecd0a5;color:#8b5a14}.sap1-status.useful{background:#edf6fc;border-color:#bad9ea;color:#17628c}
.sap1-paper-filter{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(200px,1fr) auto auto;gap:12px;align-items:end;margin:18px 0;padding:16px;border:1px solid #d6e4ec;border-radius:18px;background:#f8fbfd}
.sap1-paper-filter label{display:grid;gap:6px}.sap1-paper-filter label span{font-size:.78rem;font-weight:850;color:#466579;text-transform:uppercase;letter-spacing:.04em}.sap1-paper-filter select{width:100%;min-height:44px;border:1px solid #bdd1dd;border-radius:12px;background:#fff;padding:8px 38px 8px 12px;font:inherit;color:#17354c}.sap1-filter-count{align-self:center;font-weight:850;color:#3b6077;white-space:nowrap}.sap1-question-map tr[hidden]{display:none}
.sap1-year-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sap1-year-card{border:1px solid #d5e3eb;border-radius:20px;background:#fff;padding:22px;box-shadow:0 9px 26px rgba(17,44,66,.05)}.sap1-year-card.featured{background:linear-gradient(145deg,#eff8fc,#fff);border-color:#9fc9dc}.sap1-year-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.sap1-year-card h3{margin:.15rem 0 .6rem}.sap1-year-card ul{padding-left:1.15rem;margin:.8rem 0}.sap1-year-card li{margin:.45rem 0}
.sap1-history-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sap1-history-strip>div{padding:16px;border:1px solid #d5e2ea;border-radius:15px;background:#fff;display:grid;gap:5px}.sap1-history-strip b{font-size:1.05rem;color:#15354d}.sap1-history-strip span{font-size:.82rem;color:#5c7181}.sap1-note{margin-top:14px;color:#536c7d}
.sap1-studio-score{position:sticky;top:10px;z-index:5;display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:center;padding:14px 16px;margin:16px 0 20px;border:1px solid #b8d5e3;border-radius:18px;background:rgba(247,252,254,.96);backdrop-filter:blur(8px);box-shadow:0 10px 28px rgba(17,44,66,.08)}.sap1-studio-score>div{display:grid;gap:2px}.sap1-studio-score span{font-size:.8rem;color:#5c7181}.sap1-studio-score strong{font-size:1.15rem;color:#15354d}
.sap1-past-drill{margin:16px 0;padding:22px;border:1px solid #d5e2ea;border-radius:20px;background:#fff}.sap1-drill-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}.sap1-drill-head h3{margin:.45rem 0 .15rem}.sap1-drill-head p{margin:0;color:#5c7181}.sap1-drill-mark{min-width:92px;text-align:center;padding:10px 12px;border-radius:14px;background:#f1f7fa}.sap1-drill-mark span{display:block;font-size:.72rem;color:#668092;text-transform:uppercase;font-weight:850}.sap1-drill-mark strong{font-size:1.05rem;color:#15354d}.sap1-drill-prompt{margin:18px 0;padding:16px;border-left:4px solid #1773aa;background:#f6fafc;border-radius:0 14px 14px 0;font-size:1rem}.sap1-response-label{display:grid;gap:7px;font-weight:850;color:#284e66}.sap1-response-label textarea{width:100%;min-height:140px;resize:vertical;border:1px solid #bfd3df;border-radius:14px;padding:13px;font:inherit;line-height:1.55;background:#fff;color:#17354c}.sap1-response-label textarea:focus{outline:3px solid rgba(23,115,170,.15);border-color:#1773aa}.sap1-drill-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.sap1-drill-guide{margin-top:16px;padding:18px;border-radius:16px;background:#f7fbfd;border:1px solid #cfe1ea}.sap1-drill-guide h4{margin-top:0}.sap1-drill-guide fieldset{border:0;padding:0;margin:16px 0}.sap1-drill-guide legend{font-weight:850;margin-bottom:10px}.sap1-rubric-check{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid #dce8ee}.sap1-rubric-check input{width:18px;height:18px;margin-top:2px}.sap1-rubric-check span{display:grid;gap:2px;font-weight:500}.sap1-rubric-check b{color:#15354d}.sap1-drill-feedback{margin:12px 0 0;font-weight:800;color:#1b6d5b}.sap1-past-faq details{margin:10px 0;border:1px solid #d5e2ea;border-radius:14px;background:#fff;padding:0 16px}.sap1-past-faq summary{cursor:pointer;font-weight:850;padding:15px 0}.sap1-past-faq details p{padding:0 0 15px;margin:0;color:#455f71}
@media(max-width:900px){.sap1-paper-filter{grid-template-columns:1fr 1fr}.sap1-paper-filter .sap1-btn,.sap1-filter-count{width:100%}.sap1-history-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.sap1-studio-score{position:static}}
@media(max-width:680px){.sap1-year-grid{grid-template-columns:1fr}.sap1-paper-filter{grid-template-columns:1fr}.sap1-studio-score{grid-template-columns:1fr 1fr}.sap1-studio-score .sap1-btn{grid-column:1/-1;width:100%}.sap1-drill-head{grid-template-columns:1fr}.sap1-drill-mark{justify-self:start}.sap1-question-map{min-width:760px}}
@media(max-width:480px){.sap1-history-strip{grid-template-columns:1fr 1fr}.sap1-past-drill{padding:17px}.sap1-studio-score{grid-template-columns:1fr}.sap1-studio-score .sap1-btn{grid-column:auto}.sap1-drill-actions .sap1-btn{width:100%}}

/* v2.16.0 — complete Formula Sheet + 2027 Exam Format */
.sap1-formula-hero,.sap1-examformat-hero{align-items:center}
.sap1-formula-svg,.sap1-examformat-svg{min-height:330px}
.sap1-formula-tools{display:grid;grid-template-columns:minmax(240px,1.35fr) minmax(190px,.85fr) minmax(180px,.8fr) minmax(120px,.45fr) auto;gap:12px;align-items:end;padding:16px;border:1px solid #d3e1e9;border-radius:17px;background:#f8fbfd}
.sap1-formula-tools label{display:grid;gap:6px;min-width:0}.sap1-formula-tools label>span{font-size:.78rem;font-weight:850;letter-spacing:.045em;text-transform:uppercase;color:#567080}
.sap1-formula-tools input,.sap1-formula-tools select{width:100%;min-height:48px;padding:10px 12px;border:1px solid #bfcfd9;border-radius:11px;background:#fff;color:#112c42;font:inherit;outline:none}
.sap1-formula-tools input:focus,.sap1-formula-tools select:focus{border-color:#1773aa;box-shadow:0 0 0 3px rgba(23,115,170,.12)}
.sap1-formula-count{display:flex;align-items:baseline;justify-content:center;gap:6px;min-height:48px;padding:9px 12px;border-radius:11px;background:#112c42;color:#fff;white-space:nowrap}.sap1-formula-count b{font-size:1.35rem}.sap1-formula-count span{font-size:.76rem;color:#c5d8e4}
.sap1-formula-tools .sap1-btn{margin:0;min-height:48px;white-space:nowrap}
.sap1-formula-group[hidden],.sap1-formula-card[hidden]{display:none!important}
.sap1-formula-card{position:relative;min-width:0}.sap1-formula-cardtop{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}.sap1-kindbadge{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border-radius:999px;font-size:.64rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.sap1-kindbadge.is-reference{background:#e5f3fb;color:#0d638c;border:1px solid #b7d9e9}.sap1-kindbadge.is-course{background:#f2edfb;color:#624c97;border:1px solid #d2c7ec}.sap1-math-render{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:2px 0;text-align:center;-webkit-overflow-scrolling:touch}.sap1-math-render math{display:inline-block;min-width:max-content;max-width:none;font-family:'Cambria Math','STIX Two Math','STIXGeneral','Times New Roman',serif;font-size:clamp(1.08rem,1.4vw,1.45rem);line-height:1.35}.sap1-math-plain{margin-top:7px;color:#6b7e8c;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;line-height:1.35;text-align:center;overflow-wrap:anywhere}.sap1-eq{display:block;min-height:74px;overflow:hidden}
.sap1-reference-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.sap1-tablewrap{max-width:100%;overflow:auto;border-radius:13px;border:1px solid #d7e2e9;background:#fff}.sap1-data-table{width:100%;border-collapse:collapse;min-width:520px}.sap1-data-table th,.sap1-data-table td{padding:10px 11px;text-align:left;border-bottom:1px solid #e5edf2;vertical-align:top}.sap1-data-table th{background:#112c42;color:#fff;font-size:.78rem;letter-spacing:.025em}.sap1-data-table tbody tr:last-child td{border-bottom:0}.sap1-data-table td{font-size:.88rem;color:#304653}.sap1-data-table tbody tr:nth-child(even){background:#f8fbfd}
.sap1-faqgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sap1-faqgrid details{padding:14px 15px;border:1px solid #d5e1e8;border-radius:14px;background:#fff}.sap1-faqgrid summary{cursor:pointer;font-weight:850;color:#112c42}.sap1-faqgrid details p{margin:10px 0 0;color:#405867;line-height:1.6}
.sap1-format-table td strong{color:#126a9e}
.sap1-format-panel{min-width:0;padding:20px;border:1px solid #d6e2e9;border-radius:18px;background:#fff;box-shadow:0 9px 24px rgba(17,44,66,.045)}.sap1-format-panel.is-mcq{border-top:5px solid #1773aa}.sap1-format-panel.is-frq{border-top:5px solid #d96c2b}.sap1-format-panel h2{margin:8px 0 6px}.sap1-format-number{font-size:3.3rem;line-height:1;font-weight:950;color:#112c42;margin:10px 0}.sap1-format-number small{font-size:.88rem;font-weight:800;color:#60798a}
.sap1-frq-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sap1-frq-type-grid article{position:relative;padding:19px 18px 18px 76px;border:1px solid #d6e2e9;border-radius:17px;background:#fff;min-height:180px}.sap1-frq-type-grid article>span{position:absolute;left:18px;top:18px;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#112c42;color:#fff;font-weight:900}.sap1-frq-type-grid h3{margin:0 0 7px;color:#112c42}.sap1-frq-type-grid p{margin:0 0 10px;color:#405867;line-height:1.55}.sap1-frq-type-grid b,.sap1-frq-type-grid small{display:block}.sap1-frq-type-grid b{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:#60798a}.sap1-frq-type-grid small{margin-top:3px;line-height:1.45;color:#304653}
.sap1-exam-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:9px;align-items:stretch;margin:17px 0}.sap1-exam-flow>div{padding:15px;border:1px solid #d6e2e9;border-radius:15px;background:#fff}.sap1-exam-flow>div span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#1773aa;color:#fff;font-weight:900}.sap1-exam-flow>div b{display:block;margin:8px 0 4px;color:#112c42}.sap1-exam-flow>div p{margin:0;font-size:.84rem;line-height:1.5;color:#526b7a}.sap1-exam-flow>i{display:grid;place-items:center;font-style:normal;font-size:1.4rem;color:#8ca1ae}
.sap1-skill-meter{display:grid;gap:11px}.sap1-skill-meter>div b{display:block;margin-bottom:5px;font-size:.84rem;color:#304653}.sap1-skill-meter>div span{display:block;height:9px;border-radius:99px;background:#dfe8ed;overflow:hidden}.sap1-skill-meter>div i{display:block;width:var(--w);height:100%;border-radius:inherit;background:#1773aa}.sap1-muted{display:block;margin-top:11px;color:#718694;line-height:1.45}
.sap1-pacing-tool{display:grid;grid-template-columns:1fr 1.35fr;gap:16px;padding:18px;border:1px solid #d3e1e9;border-radius:18px;background:#f8fbfd}.sap1-pacing-controls{display:grid;gap:13px}.sap1-pacing-controls label{display:grid;grid-template-columns:1fr auto;gap:7px 12px;align-items:center;padding:12px;border-radius:13px;background:#fff;border:1px solid #dce6ec}.sap1-pacing-controls label span{font-weight:800;color:#304653}.sap1-pacing-controls input{grid-column:1/-1;width:100%;accent-color:#1773aa}.sap1-pacing-controls output{font-weight:900;color:#1773aa;font-variant-numeric:tabular-nums}.sap1-pacing-results{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sap1-pacing-results>div{padding:16px;border-radius:14px;background:#112c42;color:#fff}.sap1-pacing-results b{display:block;font-size:1.35rem;font-variant-numeric:tabular-nums}.sap1-pacing-results span{display:block;margin-top:4px;font-size:.78rem;color:#bfd2df}
@media(max-width:1050px){.sap1-formula-tools{grid-template-columns:1fr 1fr}.sap1-formula-count{justify-content:flex-start}.sap1-exam-flow{grid-template-columns:1fr 1fr}.sap1-exam-flow>i{display:none}}
@media(max-width:760px){.sap1-formula-tools{grid-template-columns:1fr}.sap1-reference-grid,.sap1-faqgrid,.sap1-frq-type-grid,.sap1-pacing-tool{grid-template-columns:1fr}.sap1-exam-flow{grid-template-columns:1fr}.sap1-pacing-results{grid-template-columns:1fr 1fr}.sap1-formula-svg,.sap1-examformat-svg{min-height:270px}}
@media(max-width:480px){.sap1-pacing-results{grid-template-columns:1fr}.sap1-frq-type-grid article{padding:72px 15px 16px}.sap1-formula-tools{padding:12px}.sap1-format-number{font-size:2.7rem}.sap1-data-table{min-width:480px}}
/* v2.16.0 mobile containment correction */
.sap1-reference-grid>*{min-width:0}.sap1-tablewrap{width:100%;min-width:0;max-width:100%}
@media(max-width:760px){.sap1-reference-grid{min-width:0}.sap1-reference-grid .sap1-panel{min-width:0;width:auto;max-width:100%}.sap1-reference-grid .sap1-data-table{min-width:480px}}

/* v2.16.1 native MathML formula rendering */
.sap1-formula-card .sap1-eq{display:block!important;align-items:initial!important;justify-content:initial!important;overflow:hidden!important;padding:12px 10px!important}.sap1-formula-card .sap1-math-render::-webkit-scrollbar{height:7px}.sap1-formula-card .sap1-math-render::-webkit-scrollbar-thumb{background:#bdd1dd;border-radius:999px}@media(max-width:560px){.sap1-formula-card .sap1-eq{padding:10px 6px!important}.sap1-math-render math{font-size:1.05rem}.sap1-math-plain{font-size:.66rem}.sap1-formula-card{padding:15px}}

/* v2.16.2 formula variable dictionaries */
.sap1-formula-vars{margin-top:14px;padding-top:13px;border-top:1px solid #d8e3eb}.sap1-formula-vars h4{margin:0 0 8px;font-size:.86rem;letter-spacing:.02em;color:#12324a}.sap1-varlist{display:grid;gap:5px}.sap1-varrow{display:grid;grid-template-columns:minmax(64px,.55fr) minmax(130px,1.55fr) minmax(92px,.8fr) auto;gap:7px;align-items:center;padding:7px 8px;border:1px solid #e1e9ef;border-radius:9px;background:#f8fbfd;font-size:.78rem;line-height:1.25}.sap1-varrow code{font-weight:850;font-size:.82rem;color:#0c628d;background:#e9f5fb;border-radius:6px;padding:3px 5px;white-space:nowrap;justify-self:start}.sap1-varrow span{color:#293e51}.sap1-varrow b{font-size:.75rem;color:#122e45;font-variant-numeric:tabular-nums}.sap1-varrow small{font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;color:#687b8d;white-space:nowrap}.sap1-symbol-guide{grid-column:1/-1}.sap1-formula-card{align-self:start}.sap1-formula-card .sap1-math-render{overflow-x:auto;overflow-y:hidden;padding-bottom:3px}
@media(max-width:650px){.sap1-varrow{grid-template-columns:minmax(58px,.55fr) minmax(0,1.45fr);gap:5px 8px}.sap1-varrow b{grid-column:1/2}.sap1-varrow small{grid-column:2/3;justify-self:start}.sap1-formula-vars{margin-top:11px;padding-top:10px}}
@media(max-width:390px){.sap1-varrow{grid-template-columns:1fr}.sap1-varrow b,.sap1-varrow small{grid-column:auto}.sap1-varrow small{justify-self:start}}

/* v2.16.2 variable-row width hardening */
.sap1-varrow{grid-template-columns:minmax(52px,.55fr) minmax(0,1.5fr) minmax(68px,.75fr);max-width:100%;box-sizing:border-box}.sap1-varrow span{min-width:0;overflow-wrap:anywhere}.sap1-varrow b{min-width:0;overflow-wrap:anywhere}.sap1-varrow small{display:none}
@media(max-width:650px){.sap1-varrow{grid-template-columns:minmax(52px,.55fr) minmax(0,1.45fr);}.sap1-varrow b{grid-column:1/-1;padding-left:0}.sap1-varrow small{display:none}}
@media(max-width:390px){.sap1-varrow{grid-template-columns:1fr}.sap1-varrow b{grid-column:auto}}

/* v2.18.0 Pass Rate + Difficulty pages */
.sap1-stat strong{display:block;font-size:1.65rem;line-height:1.05;color:#102e46}.sap1-stepgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sap1-step{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.sap1-step>b{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#102e46;color:#fff;margin-bottom:10px}.sap1-step h3{margin:0 0 7px}.sap1-step p{margin:0;color:var(--muted);line-height:1.55}.sap1-faq{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sap1-faq details{padding:14px 15px;border:1px solid #d5e1e8;border-radius:14px;background:#fff}.sap1-faq summary{cursor:pointer;font-weight:850;color:#112c42}.sap1-faq details p{margin:10px 0 0;color:#405867;line-height:1.6}.sap1-pass-hero .sap1-motion-svg{min-height:320px}@media(max-width:980px){.sap1-stepgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.sap1-stepgrid,.sap1-faq{grid-template-columns:1fr}.sap1-pass-hero .sap1-motion-svg{min-height:260px}}

/* v2.19.0 Unit 1 Kinematics + Topic 1.1 */
.sap1-quickgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0 8px}.sap1-quickgrid .sap1-stat{padding:16px;border:1px solid #d5e1e8;border-radius:15px;background:#fff}.sap1-quickgrid .sap1-stat>span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.055em;font-weight:900;color:#60798a;margin-bottom:7px}.sap1-quickgrid .sap1-stat small{display:block;margin-top:5px;color:#60798a;line-height:1.35}.sap1-stepstack{display:grid;gap:9px}.sap1-stepstack>div{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;padding:11px 12px;border:1px solid #dbe5eb;border-radius:12px;background:#fff}.sap1-stepstack>div>b{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#112c42;color:#fff}.sap1-stepstack>div span{color:#405867;line-height:1.5}.sap1-kin-eqgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sap1-kin-eqgrid article{padding:16px;border:1px solid #d6e2e9;border-radius:15px;background:#fff}.sap1-kin-eqgrid article>span{display:inline-block;padding:3px 7px;border-radius:999px;background:#eef5f9;color:#526b7a;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;font-weight:900}.sap1-kin-eqgrid article>b{display:block;margin:10px 0 6px;font-family:'Cambria Math','STIX Two Math','Times New Roman',serif;font-size:1.18rem;color:#102e46;overflow-wrap:anywhere}.sap1-kin-eqgrid article p{margin:0;color:#526b7a;line-height:1.48}.sap1-conceptstack{display:grid;gap:10px}.sap1-conceptstack article{padding:14px;border:1px solid #d9e4ea;border-left:4px solid #1773aa;border-radius:12px;background:#fff}.sap1-conceptstack article b{color:#112c42}.sap1-conceptstack article p{margin:5px 0 0;color:#405867;line-height:1.52}.sap1-vector-lab{padding:18px;border:1px solid #ccdce6;border-radius:18px;background:#f8fbfd}.sap1-vector-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sap1-vector-controls label{display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding:13px;border:1px solid #d7e3ea;border-radius:13px;background:#fff}.sap1-vector-controls label span{font-weight:850;color:#304653}.sap1-vector-controls output{font-weight:950;color:#1773aa;font-variant-numeric:tabular-nums}.sap1-vector-controls input{grid-column:1/-1;width:100%;accent-color:#1773aa}.sap1-vector-stage{margin:14px 0 10px;border:1px solid #d9e4ea;border-radius:15px;background:#fff;overflow:hidden}.sap1-vector-stage svg{display:block;width:100%;height:auto;min-height:240px}.sap1-vector-readout{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sap1-vector-readout>div{padding:13px;border-radius:12px;background:#112c42;color:#fff}.sap1-vector-readout span,.sap1-vector-readout small{display:block}.sap1-vector-readout span{font-size:.69rem;text-transform:uppercase;letter-spacing:.05em;color:#bed0dc;font-weight:800}.sap1-vector-readout strong{display:block;margin:4px 0;font-size:1.3rem;font-variant-numeric:tabular-nums}.sap1-vector-readout small{font-size:.7rem;line-height:1.35;color:#c8d7e1}.sap1-marker-a{fill:#1773aa}.sap1-marker-b{fill:#d96c2b}.sap1-marker-r{fill:#6952a3}.sap1-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sap1-three>*{min-width:0}
@media(max-width:980px){.sap1-quickgrid,.sap1-vector-readout{grid-template-columns:repeat(2,minmax(0,1fr))}.sap1-kin-eqgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sap1-quickgrid,.sap1-kin-eqgrid,.sap1-vector-controls,.sap1-vector-readout,.sap1-three{grid-template-columns:1fr}.sap1-vector-stage svg{min-height:210px}.sap1-vector-lab{padding:12px}}
.sap1-kin-router{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:14px;padding:16px;border:1px solid #d2e0e8;border-radius:17px;background:#f8fbfd}.sap1-kin-route-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}.sap1-kin-route-buttons button{appearance:none;text-align:left;padding:12px 13px;border:1px solid #d7e3ea;border-radius:11px;background:#fff;color:#304653;font:inherit;font-weight:800;cursor:pointer}.sap1-kin-route-buttons button:hover,.sap1-kin-route-buttons button:focus-visible{border-color:#8fbdd5;outline:none}.sap1-kin-route-buttons button.is-active{background:#112c42;color:#fff;border-color:#112c42}.sap1-kin-route-answer{padding:16px;border-radius:13px;background:#fff;border:1px solid #d7e3ea}.sap1-kin-route-answer>span{display:block;font-size:.69rem;text-transform:uppercase;letter-spacing:.055em;color:#60798a;font-weight:900}.sap1-kin-route-answer>strong{display:block;margin:7px 0;color:#112c42;font-size:1.12rem}.sap1-kin-route-answer p{color:#405867;line-height:1.55}.sap1-kin-route-answer .sap1-btn{margin-top:4px}
@media(max-width:760px){.sap1-kin-router,.sap1-kin-route-buttons{grid-template-columns:1fr}}

/* v2.20.0 — Topics 1.2 and 1.3 */
.sap1-dva-hero .sap1-motion-svg,.sap1-motion-hero .sap1-motion-svg{min-height:310px}
.sap1-eqbox{display:grid;gap:5px;margin-top:14px;padding:14px 15px;border:1px solid #cfe0e9;border-radius:14px;background:#f8fbfd}.sap1-eqbox>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.055em;font-weight:900;color:#60798a}.sap1-eqbox>strong{font-family:'Cambria Math','STIX Two Math','Times New Roman',serif;font-size:1.25rem;color:#102e46}.sap1-eqbox>small{color:#60798a}.sap1-eqbox.compact{margin:10px 0;padding:11px 12px}.sap1-eqbox.compact>strong{font-size:1.12rem}
.sap1-dva-defgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sap1-dva-defgrid article{padding:17px;border:1px solid #d5e1e8;border-radius:16px;background:#fff}.sap1-dva-defgrid article>span{display:inline-block;padding:3px 7px;border-radius:999px;background:#edf6fb;color:#0c628d;font-size:.67rem;text-transform:uppercase;letter-spacing:.05em;font-weight:900}.sap1-dva-defgrid h3{margin:9px 0 4px}.sap1-dva-defgrid p{color:#405867;line-height:1.55}.sap1-dva-defgrid dl{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;margin:12px 0 0;padding-top:10px;border-top:1px solid #e4ebef;font-size:.84rem}.sap1-dva-defgrid dt{font-weight:850;color:#60798a}.sap1-dva-defgrid dd{margin:0;font-weight:800;color:#112c42}
.sap1-dva-tool{padding:18px;border:1px solid #cddce5;border-radius:18px;background:#f8fbfd}.sap1-dva-controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.sap1-dva-controls label{display:grid;gap:6px;padding:12px;border:1px solid #d6e2e9;border-radius:13px;background:#fff}.sap1-dva-controls label>span{font-size:.78rem;font-weight:850;color:#304653}.sap1-dva-controls input{width:100%;min-height:42px;padding:7px 9px;border:1px solid #bfcfd9;border-radius:9px;background:#fff;color:#112c42;font:inherit;font-variant-numeric:tabular-nums}.sap1-dva-controls small{color:#60798a;font-size:.72rem}.sap1-dva-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.sap1-dva-results>div{padding:13px;border-radius:13px;background:#112c42;color:#fff}.sap1-dva-results span{display:block;font-size:.67rem;text-transform:uppercase;letter-spacing:.05em;font-weight:850;color:#bed0dc}.sap1-dva-results strong{display:block;margin:4px 0;font-size:1.16rem;font-variant-numeric:tabular-nums}.sap1-dva-results small{display:block;color:#cad8e2;font-size:.72rem;line-height:1.4}.sap1-dva-interpret{margin-top:12px;padding:13px 14px;border:1px solid #cfe0e9;border-radius:12px;background:#fff;color:#304653;line-height:1.55;font-weight:750}
.sap1-checklist{display:grid;gap:8px;padding-left:0;counter-reset:sap1check;list-style:none}.sap1-checklist li{position:relative;padding:10px 12px 10px 44px;border:1px solid #dbe5eb;border-radius:12px;background:#fff;color:#405867}.sap1-checklist li:before{counter-increment:sap1check;content:counter(sap1check);position:absolute;left:10px;top:9px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#112c42;color:#fff;font-size:.75rem;font-weight:900}
.sap1-motion-scope{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sap1-motion-scope article{padding:15px;border:1px solid #d5e1e8;border-radius:15px;background:#fff}.sap1-motion-scope article>span{display:inline-block;padding:3px 7px;border-radius:999px;background:#112c42;color:#fff;font-size:.67rem;font-weight:900}.sap1-motion-scope h3{margin:9px 0 6px;font-size:1rem}.sap1-motion-scope p{margin:0;color:#405867;line-height:1.5}
.sap1-motion-studio{padding:18px;border:1px solid #cddce5;border-radius:18px;background:#f8fbfd}.sap1-motion-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sap1-motion-controls label{display:grid;grid-template-columns:1fr auto;gap:7px 10px;padding:12px;border:1px solid #d6e2e9;border-radius:13px;background:#fff}.sap1-motion-controls span{font-size:.78rem;font-weight:850;color:#304653}.sap1-motion-controls output{font-size:.82rem;font-weight:900;color:#1773aa;font-variant-numeric:tabular-nums}.sap1-motion-controls input{grid-column:1/-1;width:100%;accent-color:#1773aa}.sap1-motion-studio-readout{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.sap1-motion-studio-readout>div{padding:11px 12px;border:1px solid #d4e1e8;border-radius:12px;background:#fff}.sap1-motion-studio-readout span{display:block;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;color:#60798a;font-weight:850}.sap1-motion-studio-readout strong{display:block;margin-top:4px;color:#112c42;font-size:1rem;font-variant-numeric:tabular-nums}.sap1-motion-canvas{margin-top:12px;padding:6px;border:1px solid #d7e3ea;border-radius:15px;background:#fff;overflow:hidden}.sap1-motion-canvas svg{display:block;width:100%;height:auto;min-height:520px}.sap1-motion-studio-note{margin-top:10px;padding:11px 13px;border-radius:11px;background:#112c42;color:#fff;line-height:1.5}.sap1-ms-area{fill:rgba(217,108,43,.12);stroke:none}.sap1-ms-dot{fill:#1773aa;stroke:#fff;stroke-width:2}.sap1-ms-vel{stroke:#d96c2b;stroke-width:4;fill:none}.sap1-ms-zero{fill:#6952a3}
.sap1-motion-cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sap1-motion-cases article{padding:15px;border:1px solid #d7e3ea;border-radius:15px;background:#fff}.sap1-motion-cases h3{margin:12px 0 5px}.sap1-motion-cases p{margin:0;color:#405867;line-height:1.5}.sap1-dotstrip{position:relative;height:48px}.sap1-dotstrip i{position:absolute;top:18px;width:12px;height:12px;border-radius:50%;background:#1773aa}.sap1-dotstrip i:nth-child(1){left:4%}.sap1-dotstrip i:nth-child(2){left:25%}.sap1-dotstrip i:nth-child(3){left:46%}.sap1-dotstrip i:nth-child(4){left:67%}.sap1-dotstrip i:nth-child(5){left:88%}.sap1-motion-cases .is-spread .sap1-dotstrip i:nth-child(1){left:4%}.sap1-motion-cases .is-spread .sap1-dotstrip i:nth-child(2){left:14%}.sap1-motion-cases .is-spread .sap1-dotstrip i:nth-child(3){left:31%}.sap1-motion-cases .is-spread .sap1-dotstrip i:nth-child(4){left:57%}.sap1-motion-cases .is-spread .sap1-dotstrip i:nth-child(5){left:88%}.sap1-motion-cases .is-compress .sap1-dotstrip i:nth-child(1){left:4%}.sap1-motion-cases .is-compress .sap1-dotstrip i:nth-child(2){left:35%}.sap1-motion-cases .is-compress .sap1-dotstrip i:nth-child(3){left:61%}.sap1-motion-cases .is-compress .sap1-dotstrip i:nth-child(4){left:78%}.sap1-motion-cases .is-compress .sap1-dotstrip i:nth-child(5){left:88%}
@media(max-width:980px){.sap1-dva-defgrid,.sap1-motion-scope{grid-template-columns:repeat(2,minmax(0,1fr))}.sap1-dva-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.sap1-dva-results,.sap1-motion-studio-readout{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sap1-dva-defgrid,.sap1-dva-controls,.sap1-dva-results,.sap1-motion-scope,.sap1-motion-controls,.sap1-motion-studio-readout,.sap1-motion-cases{grid-template-columns:1fr}.sap1-dva-tool,.sap1-motion-studio{padding:12px}.sap1-motion-canvas svg{min-height:430px}.sap1-dva-hero .sap1-motion-svg,.sap1-motion-hero .sap1-motion-svg{min-height:250px}}

/* v2.21.0: stronger Topic 1.1 examples + guaranteed callout contrast */
.sap1-callout{line-height:1.58}
.sap1-callout p{margin:6px 0 0;color:inherit!important}
.sap1-callout strong{color:inherit!important}
.sap1-callout a{color:inherit!important;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:2px}
.sap1-callout.warning{background:#fff2cc!important;border-color:#d6a83b!important;color:#4a3300!important;box-shadow:inset 4px 0 0 #c98d00}
.sap1-callout.warning p,.sap1-callout.warning strong,.sap1-callout.warning b,.sap1-callout.warning span,.sap1-callout.warning a{color:#4a3300!important}
.sap1-callout-info{background:#eef7fc!important;border-color:#9fcce1!important;color:#173f56!important}
.sap1-callout-info p,.sap1-callout-info strong,.sap1-callout-info a{color:#173f56!important}
.sap1-type-pill{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;font-size:.76rem;font-weight:900;line-height:1;border:1px solid transparent;white-space:nowrap}
.sap1-type-pill.scalar{background:#f0f7fb;color:#155e84;border-color:#b8d8e8}
.sap1-type-pill.vector{background:#f4effb;color:#5d4391;border-color:#d3c3eb}
.sap1-mini-example{display:inline-block;margin-top:4px;color:#526b7a;font-size:.9rem;line-height:1.4}
.sap1-mini-examples{display:grid;gap:6px;margin-top:9px}
.sap1-mini-examples span{display:block;padding:7px 9px;border-radius:9px;background:#f6f9fb;color:#314b5b;font-size:.89rem;line-height:1.45}
.sap1-mini-examples strong{color:#17364b}
.sap1-example-table td{vertical-align:top}
.sap1-rep-cards .sap1-panel{height:100%}
@media(max-width:760px){.sap1-example-table{min-width:760px}.sap1-mini-examples span{font-size:.86rem}}


/* v2.22.0 — topic practice routing, example coverage, and contrast hardening */
.sap1-dva-results>div{background:#112c42!important;color:#fff!important}
.sap1-dva-results>div span{color:#d5e4ee!important}
.sap1-dva-results>div strong{color:#fff!important;text-shadow:0 1px 0 rgba(0,0,0,.18)}
.sap1-dva-results>div small{color:#e5eef4!important}
.sap1-dva-results>div *{opacity:1!important}
.sap1-practice-picker{margin:24px 0;padding:20px;border:1px solid #cddce5;border-radius:20px;background:#f8fbfd}
.sap1-practice-picker h2{margin:.25rem 0 .45rem}.sap1-practice-picker p{margin:0;color:#536a79}
.sap1-practice-topic-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:16px}
.sap1-practice-topic{display:flex;min-height:128px;flex-direction:column;gap:6px;padding:14px;border:1px solid #cddce5;border-radius:15px;background:#fff;color:#112c42;text-decoration:none!important;box-shadow:0 6px 18px rgba(17,44,66,.04)}
.sap1-practice-topic:hover,.sap1-practice-topic.is-active{border-color:#1773aa;background:#edf6fb;transform:translateY(-1px)}
.sap1-practice-topic span{font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#1773aa}.sap1-practice-topic strong{line-height:1.28}.sap1-practice-topic small{margin-top:auto;color:#5d7180;font-weight:750}
.sap1-topic-practice-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;background:#f4f9fc;border:1px solid #cbdde7}
.sap1-topic-practice-cta h2{margin:.25rem 0 .35rem}.sap1-topic-practice-cta p{margin:0;color:#536a79}
.sap1-mini-examples{display:grid;gap:7px;margin-top:10px}.sap1-mini-examples>span{display:block;padding:8px 10px;border-radius:10px;background:#f7fafc;border:1px solid #e1e9ee;color:#304653}
.sap1-example-table td,.sap1-table td{vertical-align:top}
.sap1-callout>strong,.sap1-callout>p,.sap1-trap>strong,.sap1-trap>p{opacity:1!important}
.sap1-callout.warning,.sap1-trap{color:#2b1a17!important}.sap1-callout.warning p,.sap1-trap p,.sap1-callout.warning strong,.sap1-trap strong{color:#2b1a17!important}
@media(max-width:1050px){.sap1-practice-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.sap1-practice-topic-grid{grid-template-columns:1fr}.sap1-practice-topic{min-height:0}.sap1-topic-practice-cta{grid-template-columns:1fr}.sap1-topic-practice-cta .sap1-linkrow{justify-content:flex-start}.sap1-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.sap1-table{min-width:720px}}


/* v2.23.0 — practice discoverability + Unit 1 interactive audit */
.sap1-practice-gateway{display:flex;flex-direction:column;gap:8px;min-height:190px;padding:22px;border:1px solid #c9dce7;border-radius:18px;background:#fff;color:#112c42!important;text-decoration:none!important;box-shadow:0 8px 24px rgba(17,44,66,.05)}
.sap1-practice-gateway:hover{border-color:#1773aa;transform:translateY(-2px);box-shadow:0 12px 28px rgba(17,44,66,.08)}
.sap1-practice-gateway>span{font-size:.74rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#1773aa}.sap1-practice-gateway>strong{font-size:1.3rem;color:#112c42}.sap1-practice-gateway p{margin:0;color:#4c6576;line-height:1.55}.sap1-practice-gateway b{margin-top:auto;color:#0f6f9f}
.sap1-practice-directory td{vertical-align:middle}.sap1-mini-practice-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 11px;border:1px solid #bad3e1;border-radius:999px;background:#f5fafc;color:#126f9e!important;text-decoration:none!important;font-weight:850;white-space:nowrap}.sap1-mini-practice-link:hover{background:#e8f4fa;border-color:#1773aa}
.sap1-relative-tool,.sap1-projectile-tool{padding:18px;border:1px solid #cddce5;border-radius:18px;background:#f8fbfd}.sap1-relative-controls,.sap1-projectile-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sap1-relative-controls label,.sap1-projectile-controls label{display:grid;gap:7px;padding:12px;border:1px solid #d6e2e9;border-radius:13px;background:#fff}.sap1-relative-controls label>span,.sap1-projectile-controls label>span{font-size:.78rem;font-weight:850;color:#304653}.sap1-relative-controls input{width:100%;min-height:42px;padding:7px 9px;border:1px solid #bfcfd9;border-radius:9px;background:#fff;color:#112c42;font:inherit}.sap1-projectile-controls input{width:100%;accent-color:#1773aa}.sap1-projectile-controls output{font-size:.82rem;font-weight:900;color:#1773aa}.sap1-relative-controls small{color:#60798a;font-size:.72rem}
.sap1-relative-results,.sap1-projectile-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.sap1-projectile-results{grid-template-columns:repeat(5,minmax(0,1fr))}.sap1-relative-results>div,.sap1-projectile-results>div{padding:13px;border-radius:13px;background:#112c42!important;color:#fff!important}.sap1-relative-results span,.sap1-projectile-results span{display:block;font-size:.67rem;text-transform:uppercase;letter-spacing:.05em;font-weight:850;color:#d5e4ee!important}.sap1-relative-results strong,.sap1-projectile-results strong{display:block;margin:4px 0;color:#fff!important;font-size:1.08rem;font-variant-numeric:tabular-nums}.sap1-relative-results small,.sap1-projectile-results small{display:block;color:#e5eef4!important;font-size:.72rem;line-height:1.4}.sap1-relative-interpret,.sap1-projectile-interpret{margin-top:12px;padding:13px 14px;border:1px solid #cfe0e9;border-radius:12px;background:#fff;color:#304653;line-height:1.55;font-weight:750}
@media(max-width:980px){.sap1-relative-results,.sap1-projectile-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sap1-relative-controls,.sap1-projectile-controls,.sap1-relative-results,.sap1-projectile-results{grid-template-columns:1fr}.sap1-relative-tool,.sap1-projectile-tool{padding:12px}.sap1-practice-directory{min-width:720px}}

/* v2.24.0 — five full 2027 model papers */
.sap1-model-paper-hero{align-items:center}
.sap1-model-badge{display:grid;place-items:center;align-content:center;min-height:250px;padding:28px;border-radius:24px;background:linear-gradient(145deg,#102d43,#184d6b);color:#fff;text-align:center;box-shadow:0 18px 44px rgba(17,44,66,.18)}
.sap1-model-badge b{font-size:4.4rem;line-height:.95}.sap1-model-badge span{margin:8px 0 14px;color:#d7e9f3;font-weight:800}.sap1-model-badge strong{font-size:1rem;color:#fff}
.sap1-practice-gateway.is-model{background:#112c42;color:#fff!important;border-color:#112c42}.sap1-practice-gateway.is-model>strong,.sap1-practice-gateway.is-model b{color:#fff}.sap1-practice-gateway.is-model p{color:#d7e3ea}.sap1-practice-gateway.is-model>span{color:#8fd3f4}
.sap1-model-paper-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.sap1-model-paper-card{display:flex;min-height:130px;flex-direction:column;gap:8px;padding:17px;border:1px solid #cbdce6;border-radius:16px;background:#fff;color:#112c42!important;text-decoration:none!important;box-shadow:0 7px 20px rgba(17,44,66,.04)}
.sap1-model-paper-card:hover,.sap1-model-paper-card.is-active{border-color:#1773aa;background:#edf7fc;transform:translateY(-2px)}
.sap1-model-paper-card span{font-size:.72rem;text-transform:uppercase;letter-spacing:.055em;color:#1773aa;font-weight:900}.sap1-model-paper-card strong{font-size:1.08rem;line-height:1.3}.sap1-model-paper-card small{margin-top:auto;color:#60798a;font-weight:750}
.sap1-model-paper-title{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;margin-bottom:16px}.sap1-model-paper-title h2{margin-bottom:6px}.sap1-exam-clock{display:grid;place-items:center;min-width:170px;padding:17px 22px;border-radius:16px;background:#112c42;color:#fff;text-align:center}.sap1-exam-clock b{font-size:1.7rem}.sap1-exam-clock span{font-size:.76rem;color:#c8d7e1}
.sap1-model-key details{border:1px solid #cbdce6;border-radius:15px;background:#f8fbfd;padding:15px}.sap1-model-key summary{cursor:pointer;font-weight:900;color:#112c42}.sap1-answer-key-grid{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:6px;margin-top:14px}.sap1-answer-key-grid span{display:grid;grid-template-columns:auto 1fr;gap:4px;align-items:center;padding:7px 6px;border-radius:9px;background:#fff;border:1px solid #d7e4ea;text-align:center;font-weight:800}.sap1-answer-key-grid b{color:#60798a;font-size:.72rem}
.sap1-model-frq{scroll-margin-top:90px}.sap1-frq-parts{margin-top:14px}.sap1-frq-parts li{margin:7px 0;line-height:1.55}.sap1-full-solution{margin-top:16px}.sap1-full-solution>summary{cursor:pointer;font-weight:900;color:#0f6f9f}.sap1-model-visual{display:block;width:100%;height:auto;max-height:280px;margin:14px 0;padding:10px;border:1px solid #d7e4ea;border-radius:14px;background:#fff}.sap1-blueprint-note .sap1-table td:nth-child(2),.sap1-blueprint-note .sap1-table td:nth-child(3),.sap1-blueprint-note .sap1-table td:nth-child(4){text-align:center}
@media(max-width:1050px){.sap1-model-paper-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sap1-answer-key-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}
@media(max-width:760px){.sap1-model-badge{min-height:190px}.sap1-model-badge b{font-size:3.4rem}.sap1-model-paper-grid{grid-template-columns:1fr}.sap1-model-paper-card{min-height:0}.sap1-model-paper-title{grid-template-columns:1fr}.sap1-exam-clock{min-width:0;width:100%}.sap1-answer-key-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media print{
  .sap1-subnav,.sap1-crumbs,.sap1-practice-gateways,#paper-selector,.sap1-blueprint-note,.sap1-footerlinks,.sap1-source,.sap1-model-key,.sap1-actions,[data-sap1-print]{display:none!important}
  .sap1{max-width:none!important;width:100%!important;padding:0!important}
  .sap1-section,.sap1-question,.sap1-frq{box-shadow:none!important;break-inside:avoid}
  .sap1-mcq-actions,.sap1-mcq-feedback,.sap1-mcq-explanation,.sap1-full-solution{display:none!important}
}

/* v2.25.0: definition-first callouts must remain readable under any theme */
.sap1-callout-info h2,.sap1-callout-info .sap1-eyebrow{color:#173f56!important;opacity:1!important}
.sap1-callout h2{margin:4px 0 8px!important;line-height:1.2}
.sap1-callout .sap1-eyebrow{display:block;margin-bottom:2px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}

/* v2.26.0: complete official syllabus/topic directory */
.sap1-syllabus-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}
.sap1-syllabus-unit{height:100%;padding:20px;border:1px solid rgba(15,23,42,.12);border-radius:18px;background:#fff}
.sap1-syllabus-unit h3{margin:0 0 6px}.sap1-syllabus-unit>p{margin:0}
.sap1-topic-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:0}
.sap1-topic-list li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;align-items:start;padding:10px 0;border-top:1px solid rgba(15,23,42,.09)}
.sap1-topic-list li b{font-variant-numeric:tabular-nums}.sap1-topic-list li a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.sap1-topic-count{display:inline-flex;margin-top:14px;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#1e293b;font-weight:700;font-size:.88rem}
@media(max-width:780px){.sap1-syllabus-map{grid-template-columns:1fr}.sap1-topic-list li{grid-template-columns:46px minmax(0,1fr)}.sap1-table{min-width:720px}}

/* v2.27.0 — Unit 2 + site-wide visibility hardening */
/* Explicit contrast for every intentionally dark learning surface so theme rules cannot hide text. */
.sap1 .sap1-panel.dark,.sap1 .sap1-resource.is-dark,.sap1 .sap1-stat.is-accent,.sap1 .sap1-model-badge,.sap1 .sap1-exam-clock,.sap1 .sap1-motion-studio-note,.sap1 .sap1-practice-gateway.is-model,.sap1 .sap1-dva-results>div,.sap1 .sap1-relative-results>div,.sap1 .sap1-projectile-results>div,.sap1 .sap1-u2-results>div,.sap1 .sap1-u2-topic-badge{color:#fff!important}
.sap1 .sap1-panel.dark :is(h1,h2,h3,h4,p,strong,b,span,li,dt,dd,a),.sap1 .sap1-resource.is-dark :is(h1,h2,h3,h4,p,strong,b,span,small,a),.sap1 .sap1-stat.is-accent :is(strong,b,span,small),.sap1 .sap1-model-badge :is(strong,b,span,small),.sap1 .sap1-exam-clock :is(strong,b,span,small),.sap1 .sap1-motion-studio-note :is(strong,b,span,small,a),.sap1 .sap1-practice-gateway.is-model :is(strong,b,p,span,small),.sap1 .sap1-u2-results>div :is(strong,b,span,small),.sap1 .sap1-u2-topic-badge :is(strong,b,span,small){color:#fff!important;opacity:1!important}
.sap1 .sap1-panel.dark p,.sap1 .sap1-resource.is-dark p,.sap1 .sap1-model-badge span,.sap1 .sap1-exam-clock span,.sap1 .sap1-u2-results>div span,.sap1 .sap1-u2-results>div small,.sap1 .sap1-u2-topic-badge small{color:#dbeaf3!important}
.sap1 .sap1-callout.success{background:#eaf8f1!important;border-color:#a9d6c5!important;color:#174b3b!important}.sap1 .sap1-callout.success :is(h2,h3,p,strong,b,span,small,a){color:#174b3b!important;opacity:1!important}
.sap1 .sap1-example{background:#fff7ed!important;color:#4a2b12!important}.sap1 .sap1-example :is(h2,h3,p,strong,b,span,small,a){color:#4a2b12!important;opacity:1!important}
.sap1 .sap1-trap{background:#fff0f0!important;color:#4b2020!important}.sap1 .sap1-trap :is(h2,h3,p,strong,b,span,small,a){color:#4b2020!important;opacity:1!important}
.sap1 .sap1-examlink{background:#edf9f6!important;color:#174b45!important}.sap1 .sap1-examlink :is(h2,h3,p,strong,b,span,small,a){color:#174b45!important;opacity:1!important}
.sap1 .sap1-table th{color:#40596b!important}.sap1 .sap1-table td{color:#263d50!important}.sap1 .sap1-table td a{color:#0d6799!important}.sap1 .sap1-table td .good{color:#0d7258!important}.sap1 .sap1-table td .bad{color:#9f3434!important}

.sap1-u2-hero{background:radial-gradient(circle at 82% 18%,rgba(217,108,43,.12),transparent 30%),linear-gradient(135deg,#fbfdff,#f1f7fb 58%,#fff8f1)!important}
.sap1-u2-visual{position:relative;min-height:330px;border:1px solid #cbdde7;border-radius:24px;background:linear-gradient(145deg,#f8fcfe,#eef6fa);overflow:hidden}.sap1-u2-block{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:150px;height:95px;border-radius:18px;background:#112c42;color:#fff;font-weight:900;letter-spacing:.08em;box-shadow:0 16px 30px rgba(17,44,66,.15)}.sap1-u2-arrow{position:absolute;font-weight:900;color:#173f56}.sap1-u2-arrow:after{content:"";position:absolute;background:#1773aa;border-radius:3px}.sap1-u2-arrow.right{left:69%;top:47%}.sap1-u2-arrow.right:after{left:-95px;top:12px;width:80px;height:4px;box-shadow:76px 0 0 0 #1773aa}.sap1-u2-arrow.left{right:69%;top:47%}.sap1-u2-arrow.left:after{right:-95px;top:12px;width:80px;height:4px}.sap1-u2-arrow.up{left:48%;bottom:72%}.sap1-u2-arrow.up:after{left:12px;top:26px;width:4px;height:72px}.sap1-u2-arrow.down{left:48%;top:72%}.sap1-u2-arrow.down:after{left:12px;bottom:26px;width:4px;height:72px}.sap1-u2-visual>strong{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);padding:8px 14px;border-radius:999px;background:#fff;color:#153f59;box-shadow:0 5px 16px rgba(17,44,66,.08);white-space:nowrap}
.sap1-u2-chain{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sap1-u2-chain article{padding:18px;border:1px solid #d6e3ea;border-radius:16px;background:#fff}.sap1-u2-chain article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#112c42;color:#fff;font-weight:900}.sap1-u2-chain h3{margin:10px 0 5px}.sap1-u2-chain p{margin:0;color:#476071}
.sap1-u2-topic-hero{align-items:center}.sap1-u2-topic-badge{display:grid;place-items:center;align-content:center;min-height:250px;padding:26px;border-radius:24px;background:linear-gradient(145deg,#102c43,#184f6e);text-align:center;box-shadow:0 18px 40px rgba(17,44,66,.18)}.sap1-u2-topic-badge b{font-size:4rem;line-height:1;color:#fff!important}.sap1-u2-topic-badge span{margin-top:8px;font-weight:850}.sap1-u2-topic-badge strong{margin:14px 0 4px;font-size:1.05rem}
.sap1-u2-tool{padding:20px;border:1px solid #cddde6;border-radius:19px;background:#f8fbfd}.sap1-u2-tool .sap1-sectionhead{margin-bottom:14px}.sap1-u2-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sap1-u2-controls label{display:grid;grid-template-columns:1fr auto;gap:7px 10px;padding:12px;border:1px solid #d5e2e9;border-radius:13px;background:#fff}.sap1-u2-controls label>span{font-size:.78rem;font-weight:850;color:#304b5d}.sap1-u2-controls output{font-size:.8rem;font-weight:900;color:#176ea6}.sap1-u2-controls input{grid-column:1/-1;width:100%;accent-color:#176ea6}.sap1-u2-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.sap1-u2-results>div{padding:14px;border-radius:13px;background:#112c42!important}.sap1-u2-results span{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;font-weight:850}.sap1-u2-results strong{display:block;margin-top:5px;font-size:1.15rem;font-variant-numeric:tabular-nums}.sap1-u2-interpret{margin:12px 0 0;padding:12px 14px;border:1px solid #d2e1e8;border-radius:12px;background:#fff;color:#304b5d;font-weight:700}
.sap1-u2-worked{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sap1-u2-worked article{padding:18px;border:1px solid #d5e2e9;border-radius:17px;background:#fff}.sap1-u2-worked article>span{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eaf5fb;color:#126995;font-size:.72rem;font-weight:900}.sap1-u2-worked h3{margin:10px 0 6px}.sap1-u2-worked p{color:#4b6373}.sap1-u2-worked article>div{margin-top:12px;padding:12px;border-left:4px solid #167e72;border-radius:0 11px 11px 0;background:#f0faf7;color:#254b43}.sap1-u2-worked article>div strong{display:block;color:#174b43!important;margin-bottom:4px}
@media(max-width:980px){.sap1-u2-chain{grid-template-columns:repeat(2,minmax(0,1fr))}.sap1-u2-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.sap1-u2-worked{grid-template-columns:1fr}.sap1-u2-topic-badge{min-height:190px}}
@media(max-width:680px){.sap1-u2-chain,.sap1-u2-controls,.sap1-u2-results{grid-template-columns:1fr}.sap1-u2-tool{padding:13px}.sap1-u2-visual{min-height:250px}.sap1-u2-block{width:125px;height:78px}.sap1-u2-topic-badge b{font-size:3.2rem}}

/* v2.27.0 final visibility fix — prevent link-row rules from turning primary buttons white-on-white. */
.sap1 a.sap1-btn,.sap1 button.sap1-btn{background:#126ea6!important;border-color:#126ea6!important;color:#fff!important}
.sap1 a.sap1-btn:hover,.sap1 button.sap1-btn:hover{background:#0c5f93!important;border-color:#0c5f93!important;color:#fff!important}
.sap1 a.sap1-btn.sap1-btn-secondary,.sap1 button.sap1-btn.sap1-btn-secondary{background:#fff!important;border-color:#b9d2e2!important;color:#105f91!important}
.sap1 a.sap1-btn.sap1-btn-secondary:hover,.sap1 button.sap1-btn.sap1-btn-secondary:hover{background:#eef7fc!important;border-color:#8fbdd5!important;color:#0b5682!important}
.sap1 .sap1-linkrow a.sap1-btn,.sap1 .sap1-linkrow button.sap1-btn{background:#126ea6!important;border-color:#126ea6!important;color:#fff!important}
.sap1 .sap1-linkrow a.sap1-btn.sap1-btn-secondary,.sap1 .sap1-linkrow button.sap1-btn.sap1-btn-secondary{background:#fff!important;border-color:#b9d2e2!important;color:#105f91!important}
.sap1 .sap1-btn:focus-visible{outline:3px solid rgba(18,110,166,.28)!important;outline-offset:3px}
.sap1 .sap1-btn:after{color:inherit!important}
.sap1 .sap1-table td.good{color:#0d7258!important}.sap1 .sap1-table td.bad{color:#9f3434!important}

/* v2.28.0 — final inherited-text contrast guard for buttons and interactive controls. */
.sap1 .sap1-btn :is(span,strong,b,small,em,i){color:inherit!important;opacity:1!important}
.sap1 .sap1-mini-practice-link :is(span,strong,b,small){color:inherit!important;opacity:1!important}
.sap1 input,.sap1 select,.sap1 textarea,.sap1 button{font-family:inherit}
.sap1 input,.sap1 select,.sap1 textarea{color:#173044!important;background:#fff!important}


/* v2.29.0 — Unit 2 lesson-first architecture */
.sap1-u2-lesson-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}
.sap1-u2-lesson-grid article{border:1px solid #d6e1ec;border-radius:18px;padding:22px;background:#fff;color:#172b44;box-shadow:0 8px 24px rgba(17,43,68,.05)}
.sap1-u2-lesson-grid h3{margin:8px 0 10px;color:#102a46;font-size:1.15rem;line-height:1.3}
.sap1-u2-lesson-grid p{margin:0;color:#31465b;line-height:1.72}
.sap1-topic-step{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;background:#eaf4fb;color:#0f5279;font-weight:800}
.sap1-u2-checkpoint .sap1-callout{max-width:none}
.sap1-u2-checkpoint .sap1-callout p{color:#20384f!important}
@media(max-width:900px){.sap1-u2-lesson-grid{grid-template-columns:1fr}}

/* v2.30.0 — reader-first concept bridges and contextual learning links */
.sap1 .sap1-context-link{color:#0b6797!important;text-decoration:underline!important;text-decoration-thickness:1.5px;text-underline-offset:3px;font-weight:800}
.sap1 .sap1-context-link:hover{color:#084e75!important;text-decoration-thickness:2px!important}
.sap1-concept-bridges{scroll-margin-top:90px}
.sap1-bridge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.sap1-bridge-grid article{display:flex;flex-direction:column;min-height:210px;padding:20px;border:1px solid #d5e3eb;border-radius:17px;background:#fff;color:#20384d;box-shadow:0 7px 20px rgba(16,52,75,.045)}
.sap1-bridge-grid h3{margin:0 0 8px;color:#102f49;font-size:1.08rem;line-height:1.3}
.sap1-bridge-grid p{margin:0 0 12px;color:#334f63;line-height:1.68}
.sap1-bridge-example{margin-top:auto;padding:11px 12px;border-left:4px solid #cf6e2d;border-radius:0 10px 10px 0;background:#fff7ef;color:#4c321f;line-height:1.55}
.sap1-bridge-example strong{color:#5c3518!important}
.sap1 .sap1-context-cta{display:inline-flex;align-items:center;align-self:flex-start;margin-top:13px;padding:8px 11px;border:1px solid #b9d3e1;border-radius:999px;background:#eef7fb;color:#0d638f!important;font-weight:850;text-decoration:none!important;line-height:1.2}
.sap1 .sap1-context-cta:hover{background:#e3f2f8;color:#084e75!important;border-color:#8dbbd2}
@media(max-width:760px){.sap1-bridge-grid{grid-template-columns:1fr}.sap1-bridge-grid article{min-height:0}}

/* v2.31.0: exact contextual-definition landing points */
.sap1-definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sap1-definition-card{border:1px solid #d6e2ef;border-radius:18px;background:#fff;padding:20px;scroll-margin-top:120px}
.sap1-definition-card h3{margin:0 0 8px;color:#102a47}
.sap1-definition-card p{margin:0 0 12px;color:#263b50}
.sap1-definition-card:target{outline:3px solid #0b6fa4;outline-offset:4px;background:#f4fbff}
@media(max-width:760px){.sap1-definition-grid{grid-template-columns:1fr}.sap1-definition-card{scroll-margin-top:90px}}

/* v2.34.0 Unit 3–8 source-page vocabulary, representation and practice QA */
.sap1-local-foundations .sap1-panel,
.sap1-representation-section,
.sap1-topic-visual,
.sap1-frq-stem,
.sap1-frq-parts,
.sap1-frq-guide,
.sap1-symbol-key{
  color:#122033 !important;
}
.sap1-topic-visual{
  margin:18px 0 24px;
  padding:18px;
  border:1px solid #c9d7ea;
  border-radius:16px;
  background:#f7fbff !important;
  overflow:hidden;
}
.sap1-topic-visual.is-compact{margin:14px 0 18px;padding:14px;}
.sap1-topic-visual-head{display:flex;gap:10px 20px;align-items:baseline;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px;}
.sap1-topic-visual-head strong{font-size:1rem;color:#0e2a52 !important;}
.sap1-topic-visual-head span{font-size:.9rem;color:#3c526d !important;}
.sap1-topic-visual svg{display:block;width:100%;max-width:720px;height:auto;margin:0 auto;background:#fff;border-radius:12px;}
.sap1-topic-visual svg text{fill:#122033 !important;font:600 14px/1.2 system-ui,sans-serif;}
.sap1-topic-visual svg path,
.sap1-topic-visual svg circle,
.sap1-topic-visual svg ellipse,
.sap1-topic-visual svg rect{stroke:#244b78;stroke-width:3;vector-effect:non-scaling-stroke;}
.sap1-topic-visual svg rect,
.sap1-topic-visual svg circle{fill:#eaf3ff;}
.sap1-topic-eq{display:block;font-size:1.03em;color:#102a43 !important;overflow-wrap:anywhere;}
.sap1-symbol-key{display:block;margin-top:8px;padding:8px 10px;border-left:3px solid #5e7ea5;background:#f4f7fb !important;font-size:.88rem;line-height:1.45;}
.sap1-symbol-key strong{color:#0e2a52 !important;}
.sap1-frq-stem{font-size:1.04rem;font-weight:650;margin:12px 0;color:#122033 !important;}
.sap1-frq-parts,.sap1-frq-guide{margin:10px 0 14px;padding-left:1.45rem;}
.sap1-frq-parts li,.sap1-frq-guide li{margin:.55rem 0;line-height:1.55;color:#122033 !important;}
.sap1-frq .sap1-answerkey,.sap1-frq .sap1-answerkey *{color:#122033 !important;}
.sap1-frq .sap1-rubric{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));}
@media (max-width:640px){.sap1-topic-visual{padding:10px}.sap1-topic-visual svg text{font-size:12px}.sap1-symbol-key{font-size:.82rem}}

/* v2.35.0 — topic-by-topic official mastery layer */
.sap1-topic-mastery{position:relative}
.sap1-topic-mastery .sap1-sectionhead{max-width:980px}
.sap1-mastery-grid,.sap1-mastery-skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}
.sap1-mastery-scope ul{margin:12px 0 0;padding-left:1.25rem}
.sap1-mastery-scope li{margin:.55rem 0;line-height:1.55}
.sap1-mastery-critical{border:2px solid rgba(23,115,170,.24);background:linear-gradient(145deg,#f8fcff,#eef8fd)}
.sap1-mastery-critical p{font-size:1.02rem;line-height:1.65}
.sap1-subhead{margin-top:22px}
.sap1-mastery-examples .sap1-panel{position:relative;padding-top:52px}
.sap1-mastery-examples .sap1-topic-step{position:absolute;top:16px;left:18px}
.sap1-mastery-skills .sap1-panel{min-height:180px}
.sap1-mastery-boundary,.sap1-mastery-synthesis{margin-top:18px}
.sap1-mastery-synthesis .sap1-context-cta{display:inline-flex;margin-top:10px}
.sap1-topic-mastery .sap1-panel,.sap1-topic-mastery .sap1-callout,.sap1-topic-mastery .sap1-panel *,.sap1-topic-mastery .sap1-callout *{color:inherit}
@media(max-width:800px){.sap1-mastery-grid,.sap1-mastery-skills{grid-template-columns:1fr}.sap1-mastery-skills .sap1-panel{min-height:0}}
.sap1-topic-mastery .sap1-panel{color:#142f3f!important}
.sap1-topic-mastery .sap1-panel :is(h2,h3,h4,p,li,strong,b,span,small){color:#142f3f!important;opacity:1!important}
.sap1-topic-mastery .sap1-mastery-symbols{margin-top:14px;padding-top:12px;border-top:1px solid rgba(20,47,63,.14);font-size:.94rem}


/* v2.36.0 — 43-topic competitor-benchmark deep reasoning layer */
.sap1-competitive-depth{scroll-margin-top:95px}
.sap1-depth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}
.sap1-depth-grid .sap1-panel{position:relative;min-height:190px;padding:24px 24px 22px;background:#fff}
.sap1-depth-number{display:inline-grid;place-items:center;min-width:38px;height:30px;padding:0 10px;border-radius:999px;background:#e8f4fb;color:#0b5d88!important;font-size:.76rem;font-weight:900;letter-spacing:.08em}
.sap1-depth-why{background:linear-gradient(145deg,#fbfdff,#f1f8fc)!important;border-color:#c9dce8!important}
.sap1-transfer-challenge{margin:22px 0;padding:24px;border:1px solid #cfdde7;border-radius:20px;background:linear-gradient(145deg,#102c43,#173b57);box-shadow:0 14px 32px rgba(16,44,67,.10)}
.sap1-transfer-challenge :is(h3,p,strong,summary,span){color:#fff!important}
.sap1-transfer-head{display:flex;gap:12px 24px;align-items:baseline;justify-content:space-between;flex-wrap:wrap}
.sap1-transfer-head .sap1-eyebrow{color:#9ed5f1!important}
.sap1-transfer-prompt{font-size:1.06rem;line-height:1.7;max-width:980px}
.sap1-solution-reveal{margin-top:16px;border:1px solid rgba(255,255,255,.28);border-radius:14px;background:rgba(255,255,255,.07);overflow:hidden}
.sap1-solution-reveal summary{cursor:pointer;padding:13px 16px;font-weight:850;list-style-position:inside}
.sap1-solution-reveal>div{padding:0 16px 15px;border-top:1px solid rgba(255,255,255,.18)}
.sap1-solution-reveal>div p{margin:.8rem 0}
.sap1-data-depth .sap1-panel{min-height:175px}
.sap1-frq-lenses{margin-top:24px;padding:22px;border:1px solid #d3e1ea;border-radius:20px;background:#f7fafc}
.sap1-frq-lens-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.sap1-frq-lens-grid article{padding:17px;border:1px solid #d9e5ec;border-radius:14px;background:#fff;color:#20384d}
.sap1-frq-lens-grid article b{display:block;margin-bottom:6px;color:#0e4f76!important}
.sap1-frq-lens-grid article p{margin:0;color:#314b5f!important;line-height:1.62}
.sap1-full-credit-move{margin-top:18px}
.sap1-full-credit-move p{margin-bottom:0;color:#21483f!important}
@media(max-width:800px){.sap1-depth-grid,.sap1-frq-lens-grid{grid-template-columns:1fr}.sap1-depth-grid .sap1-panel{min-height:0}.sap1-transfer-challenge{padding:18px}.sap1-frq-lenses{padding:16px}}


/* v2.37 ranking ecosystem: cumulative additions, no prior styles removed */
.sap1-rank-ecosystem .sap1-resourcegrid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.sap1-scorecalc-hero,.sap1-topic-hero.sap1-scorecalc-hero{align-items:stretch}
.sap1-score-gauge{display:grid;grid-template-columns:auto auto auto auto auto;align-items:center;gap:10px;background:linear-gradient(145deg,#102c42,#183f5b);color:#fff;border-radius:24px;padding:28px;min-width:280px;box-shadow:0 18px 45px rgba(17,44,66,.18)}
.sap1-score-gauge strong{font-size:44px;line-height:1}.sap1-score-gauge span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.sap1-score-gauge b{font-size:28px;color:#ffb36b}
.sap1-scorecalc-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.65fr);gap:26px;align-items:start}
.sap1-score-inputs{display:grid;gap:18px}.sap1-score-inputs>label,.sap1-score-frqs label{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:center;background:#f7fafc;border:1px solid #d8e4ec;border-radius:16px;padding:16px}.sap1-score-inputs label span{font-weight:850;color:#17384d}.sap1-score-inputs input[type=range]{grid-column:1/-1;width:100%;accent-color:#1773aa}.sap1-score-inputs output{font-weight:900;color:#1773aa}.sap1-score-frqs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sap1-score-frqs input{width:90px;padding:9px;border:1px solid #b8cbd8;border-radius:10px}.sap1-score-frqs small{grid-column:1/-1;color:#60798a}
.sap1-score-result{position:sticky;top:20px;background:linear-gradient(150deg,#112c42,#174b6e);color:#fff;border-radius:24px;padding:26px;box-shadow:0 20px 50px rgba(17,44,66,.2)}.sap1-score-result>span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:850;color:#c7e6f6}.sap1-score-result>strong{font-size:76px;line-height:.95;display:inline-block;margin:12px 2px}.sap1-score-result>small{font-size:22px}.sap1-score-result>div:not(.sap1-linkrow){display:flex;align-items:baseline;gap:8px;margin:12px 0}.sap1-score-result>div b{font-size:28px}.sap1-score-result dl{margin:16px 0}.sap1-score-result dl div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid rgba(255,255,255,.15);padding:10px 0}.sap1-score-result dt,.sap1-score-result dd{margin:0}.sap1-score-result dd{font-weight:850}
.sap1-frq-connection-grid,.sap1-atlas-grid,.sap1-glossary-grid,.sap1-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.sap1-frq-connection,.sap1-atlas-grid article,.sap1-glossary-grid article,.sap1-plan-grid article{border:1px solid #d7e4ec;border-radius:18px;padding:20px;background:#fff;box-shadow:0 8px 24px rgba(22,64,89,.06)}.sap1-frq-connection>span,.sap1-atlas-grid article>span,.sap1-plan-grid article>span{display:inline-block;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#1773aa;background:#eaf6fc;border-radius:999px;padding:6px 9px}.sap1-frq-connection h3,.sap1-atlas-grid h3,.sap1-plan-grid h2{margin:12px 0 8px;font-size:20px}.sap1-frq-connection small,.sap1-atlas-grid small{display:block;color:#60798a;font-weight:800;margin-top:12px}
.sap1-frq-atlas-controls,.sap1-glossary-controls{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.sap1-frq-atlas-controls label,.sap1-glossary-controls label{display:grid;gap:7px;font-weight:850;min-width:min(100%,420px)}.sap1-frq-atlas-controls input,.sap1-glossary-controls input{width:100%;padding:12px 14px;border:1px solid #b9cbd7;border-radius:12px;background:#fff}.sap1-frq-atlas-controls span,.sap1-glossary-controls span{font-weight:800;color:#526b7b}.sap1-atlas-topic-table td:nth-child(3){min-width:180px}
.sap1-frq-grade-badge{display:grid;grid-template-columns:auto auto;gap:6px 12px;align-content:center;background:#102c42;color:#fff;border-radius:24px;padding:26px;min-width:240px}.sap1-frq-grade-badge strong,.sap1-frq-grade-badge b{font-size:42px;line-height:1;color:#fff}.sap1-frq-grade-badge span{align-self:end;font-weight:800;color:#d7eef9}.sap1-grader-setup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:22px}.sap1-grader-setup label{display:grid;gap:7px;font-weight:850}.sap1-grader-setup select{padding:12px;border:1px solid #bacdd9;border-radius:12px;background:#fff}.sap1-grader-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:24px;align-items:start}.sap1-grade-check{display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:start;padding:13px 0;border-bottom:1px solid #e3ebf0}.sap1-grade-check input{width:20px;height:20px;margin-top:2px;accent-color:#1773aa}.sap1-grade-check strong{display:block;color:#17384d}.sap1-grade-check small{display:block;color:#60798a;margin-top:3px}.sap1-response-notes{display:grid;gap:8px;margin-top:20px;font-weight:850}.sap1-response-notes textarea{padding:13px;border:1px solid #bdcfda;border-radius:12px;resize:vertical}.sap1-grader-result{position:sticky;top:20px;background:#f5f9fc;border:1px solid #ccdce6;border-radius:22px;padding:24px}.sap1-grader-result>span{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#526b7b}.sap1-grader-result>strong{font-size:64px;color:#1773aa}.sap1-grader-result>small{font-size:18px}.sap1-grader-bar{height:12px;background:#dfeaf0;border-radius:999px;overflow:hidden;margin:18px 0}.sap1-grader-bar i{display:block;height:100%;width:0;background:#1773aa;transition:width .2s ease}
.sap1-glossary-grid article h2{font-size:21px;margin:0 0 8px;color:#17384d}.sap1-glossary-grid article[hidden],.sap1-atlas-grid article[hidden]{display:none!important}.sap1-plan-grid article p{min-height:70px}.sap1-plan-grid.is-week{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
@media (max-width:820px){.sap1-scorecalc-grid,.sap1-grader-grid{grid-template-columns:1fr}.sap1-score-result,.sap1-grader-result{position:static}.sap1-score-frqs,.sap1-grader-setup{grid-template-columns:1fr}.sap1-score-gauge{min-width:0}.sap1-subnav>div{overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px}}
@media (max-width:520px){.sap1-score-gauge{grid-template-columns:1fr 1fr;}.sap1-score-gauge b{display:none}.sap1-score-frqs label{grid-template-columns:1fr}.sap1-score-frqs input{width:100%}}

/* v2.38.0 — SEO/AEO/GEO answer-first and source-transparency layer */
.sap1-aeo{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.75fr);gap:18px;margin:20px 0 28px;padding:22px;border:1px solid #cfe0ea;border-radius:22px;background:linear-gradient(145deg,#fbfdff,#f1f8fc);box-shadow:0 10px 28px rgba(16,44,67,.06);scroll-margin-top:90px}
.sap1-aeo-main{min-width:0}.sap1-aeo-label{display:inline-block;margin-bottom:7px;padding:5px 9px;border-radius:999px;background:#dff3fc;color:#0b5d88!important;font-size:.72rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.sap1-aeo h2{margin:0 0 10px;font-size:clamp(1.28rem,2vw,1.7rem);line-height:1.2;color:#102f46!important}.sap1-aeo-answer{margin:0;font-size:1.04rem;line-height:1.7;color:#203d52!important}.sap1-aeo-facts{padding:17px;border:1px solid #d8e5ed;border-radius:16px;background:#fff}.sap1-aeo-facts>strong{display:block;margin-bottom:8px;color:#102f46!important}.sap1-aeo-facts ul{margin:0;padding-left:1.15rem}.sap1-aeo-facts li{margin:.45rem 0;line-height:1.5;color:#2b485c!important}.sap1-aeo-meta{grid-column:1/-1;display:flex;gap:10px 16px;align-items:center;flex-wrap:wrap;padding-top:14px;border-top:1px solid #d7e4ec;font-size:.82rem;font-weight:750;color:#60798a}.sap1-aeo-meta span{display:inline-flex;align-items:center;gap:6px}.sap1-aeo-meta span:before{content:'✓';display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#e3f5ed;color:#18734c;font-size:.72rem;font-weight:950}.sap1-aeo-meta a{margin-left:auto;color:#0b6596!important;font-weight:850;text-decoration:underline;text-underline-offset:3px}.sap1-source{scroll-margin-top:90px}
@media(max-width:780px){.sap1-aeo{grid-template-columns:1fr;padding:17px}.sap1-aeo-meta{grid-column:auto}.sap1-aeo-meta a{margin-left:0;width:100%}}
