@font-face{font-family:Inter;src:url('../shared/fonts/InterVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{font-family:Inter,system-ui,sans-serif;color:#0b2a5b;background:#f6f8fb;font-synthesis:none;line-height:1.6;font-size:16px;--muted:#334155;--line:#d6e2f5;--accent:#1d4ed8}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #126bae;outline-offset:4px}.generator{max-width:1120px;padding:0 40px;margin:auto}.site-header{display:flex;justify-content:space-between;align-items:center;padding:27px 0;border-bottom:1px solid var(--line)}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;font-weight:750;font-size:19px;letter-spacing:-.5px}.brand-mark{display:grid;place-items:center;background:#183e32;color:#fff;width:32px;height:35px;border-radius:9px 9px 9px 0}.header-note{color:var(--muted);font-size:12px}.intro{padding:51px 0 37px;position:relative}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:750;color:#1d4ed8;margin:0 0 15px}h1{font-size:clamp(2.3rem,4.5vw,3.65rem);font-weight:650;line-height:1.12;letter-spacing:-.055em;margin:0 0 20px}h1 span{color:#1d4ed8}.lede{font-size:16px;max-width:570px;color:var(--muted);margin:0 0 22px}.intro-meta{display:flex;flex-wrap:wrap;gap:22px;font-size:12px;color:var(--muted)}.intro-meta span+span::before{content:'•';margin-right:20px;color:#64748b}.intro-meta b{color:#0b2a5b}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-heading h2{font-size:15px;margin:0;font-weight:650}.section-heading>span{font-size:11px;color:var(--muted)}.subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.subject{border:1px solid #c7d6ee;border-radius:12px;background:#fff;text-align:left;padding:20px 16px;display:flex;align-items:center;gap:12px;color:#0b2a5b;position:relative;transition:border-color .15s,box-shadow .15s}.subject:hover{border-color:#1d4ed8;box-shadow:0 3px 12px #173a2310}.subject[aria-pressed=true]{border:2px solid #1d4ed8;padding:19px 15px;background:#eef4ff}.subject-icon{border-radius:10px;width:43px;height:46px;flex-shrink:0;display:grid;place-items:center;font-size:23px;font-weight:650;background:#f0e9f5;color:#67417b}.math .subject-icon{background:#eaf0fc;color:#335fa2}.science .subject-icon{background:#e6f2e8;color:#26694a}.subject-text{display:flex;flex-direction:column;gap:3px}.subject-text strong{font-size:16px}.subject-text>span{font-size:10px;line-height:1.5;color:var(--muted)}.subject-arrow{margin-left:auto;align-self:flex-start;font-size:17px;color:#536782}.session-status{font-size:12px;min-height:20px;margin:14px 0 5px;color:var(--muted)}.practice{border:1px solid var(--line);background:white;border-radius:16px;overflow:hidden;box-shadow:0 8px 28px #15342105}.welcome{text-align:center;padding:47px 20px 38px}.welcome-symbol{font-size:33px;color:#1d4ed8}.welcome h2{font-size:22px;letter-spacing:-.5px;margin:8px 0}.welcome p{color:var(--muted);font-size:14px;margin:0}.steps{display:flex;justify-content:center;gap:36px;margin-top:31px;font-size:11px;color:#536782}#question-view{padding:28px 32px}.question-topline{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.pill{background:#eef4ff;color:#0b2a5b;border-radius:30px;padding:4px 11px;font-weight:650}.question-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.question-heading h2{font-size:24px;letter-spacing:-.6px;line-height:1.25;margin:20px 0 5px}.question-heading>span{font-size:11px;color:var(--muted);white-space:nowrap}.skill{font-size:12px;color:var(--muted);margin:2px 0 22px}.context{white-space:pre-line;background:#f5f8fd;border-left:3px solid #93c5fd;padding:17px 20px;font-size:15px;margin:0 0 24px;line-height:1.8}.table-wrap{overflow:auto;margin-bottom:22px}table{border-collapse:collapse;width:100%;font-size:13px}caption{text-align:left;font-size:12px;color:var(--muted);padding-bottom:8px}th,td{text-align:left;border:1px solid var(--line);padding:9px 13px}thead{background:#eef4ff}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-weight:600;font-size:17px;line-height:1.6;padding:0;margin-bottom:17px;width:100%}#choice-list{display:grid;gap:9px}.choice{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;padding:13px 15px;cursor:pointer;font-size:14px;min-height:51px}.choice:hover{background:#f5f8fd}.choice:has(input:checked){border-color:#1d4ed8;background:#eef4ff}.choice input{accent-color:#1d4ed8;width:17px;height:17px;margin:0;flex-shrink:0}.choice-letter{color:var(--muted);font-size:12px;font-weight:650}.choice.correct{border-color:#2b704a;background:#edf7ef}.choice.incorrect{border-color:#a54843;background:#fff3f1}.actions{display:flex;align-items:center;gap:10px;margin-top:24px;flex-wrap:wrap}.actions button{border-radius:8px;min-height:44px;padding:10px 17px;font-size:13px;font-weight:650}.primary{background:#1d4ed8;color:white;border:1px solid #1d4ed8}.primary:hover:not(:disabled){background:#0b2a5b}.primary:disabled{background:#e9ede9;border-color:#e9ede9;color:#66746b}.secondary{background:white;border:1px solid #c7d6ee;color:#0b2a5b}.secondary:hover:not(:disabled){background:#eef4ff}.secondary:disabled{color:#607165}.next{margin-left:auto;background:#eef4ff;border:1px solid #c7d6ee;color:#0b2a5b}.next:hover{background:#dbeafe}.next span{margin-left:12px}.answer{margin-top:22px;padding:18px 20px;border:1px solid #b4d0b9;background:#f0f8f0;border-radius:10px;font-size:14px}.answer h3{font-size:15px;margin:0 0 8px}.answer p{margin:4px 0}.practice-note{font-size:11px;color:var(--muted);margin:22px 0 0;border-top:1px solid #d6e2f5;padding-top:15px}.tip{display:flex;align-items:baseline;gap:25px;margin:23px 0 36px;padding:0 3px}.tip-label{font-size:9px;letter-spacing:.08em;font-weight:750;color:#1d4ed8;white-space:nowrap}.tip p{font-size:12px;color:var(--muted);margin:0}footer{border-top:1px solid var(--line);padding:20px 0 30px;font-size:10px;color:var(--muted)}footer p{margin:3px 0}.noscript{background:#fff0ce;padding:20px}.zsa--embedded{padding-top:15px}.zsa--embedded .intro{padding-top:15px}.zsa--embedded .intro h1{font-size:2.5rem}
@media(max-width:800px){.subject{padding:15px 12px;gap:9px}.subject[aria-pressed=true]{padding:14px 11px}.subject-icon{width:32px;height:38px;font-size:20px}.subject-text>span{font-size:10px}.subject-arrow{display:none}}
@media(max-width:600px){.generator{padding:0 20px}.site-header{padding:20px 0}.header-note{display:none}.intro{padding:35px 0 29px}h1{font-size:2.5rem}.lede{font-size:14px}.subject-grid{grid-template-columns:1fr;gap:8px}.subject{padding:12px 15px;gap:13px}.subject[aria-pressed=true]{padding:11px 14px}.subject-icon{height:37px;width:38px}.subject-text>span{font-size:11px}.subject-arrow{display:block;align-self:center}.section-heading>span{font-size:10px}.subject-text strong{font-size:15px}.section-heading h2{font-size:14px}#question-view{padding:20px 18px}.question-heading h2{font-size:21px}.question-heading>span{font-size:9px}.context{padding:13px;font-size:14px}.actions{gap:8px}.actions button{flex:1;padding:10px;white-space:nowrap}.actions .next{flex-basis:100%;margin-left:0}.tip{display:block}.tip p{margin-top:5px}.intro-meta{gap:12px;font-size:11px}.intro-meta span+span::before{margin-right:10px}.steps{gap:18px;font-size:10px}.welcome h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* ZornScience activity branding and toolbar. */
.zsa-th-header {position:relative;margin-bottom:28px;}
.zsa-th-topline {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:0 0 20px;border-bottom:1px solid #dde4ed;}
.zsa-th-identity {display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 400px;}
.generator .zsa-th-brand {display:inline-flex;align-items:center;flex-shrink:0;min-height:52px;min-width:52px;text-decoration:none;color:var(--zsa-navy);}
.zsa-th-brand img {display:block;flex-shrink:0;}
.zsa-th-header-tools {display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:16px;max-width:100%;margin-left:auto;}
.zsa-th-header-buttons {display:flex;align-items:center;gap:8px;}
.generator .zsa-th-share-toggle {display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 12px;min-height:44px;background:white;}
.zsa-th-icon {width:18px;height:18px;flex-shrink:0;}
.zsa-th-instructions-open {flex-shrink:0;}
.generator h1 {min-width:0;font-size:clamp(1.6rem,1.2rem + 1.2vw,2rem);letter-spacing:-.035em;line-height:1.15;margin:0;font-weight:650;}
.zsa-th-lede {color:var(--zsa-navy);font-size:clamp(1.05rem,1rem + .3vw,1.2rem);font-weight:500;}
.zsa-th-share-panel {margin-top:14px;padding:20px;border:1px solid #cdd9e9;border-radius:12px;background:white;box-shadow:0 7px 20px rgba(11,42,91,.06);}
.zsa-th-share-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px;}
.zsa-th-share-heading h2 {font-size:18px;font-weight:600;}
.generator .zsa-th-icon-button {display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid #d5deea;border-radius:8px;background:#f7f9fc;color:#425a7b;font-size:24px;padding:0;line-height:1;}
.generator .zsa-th-fullscreen-toggle {width:46px;min-width:46px;height:46px;min-height:46px;flex-shrink:0;background:white;}
.generator .zsa-th-fullscreen-toggle[hidden] {display:none;}
.zsa-th-fullscreen-toggle[aria-pressed="true"] {background:#edf4ff;border-color:#194d9d;}
.generator .zsa-th-fullscreen-status {margin-top:12px;}
.zsa-th-share-label {display:block;margin:14px 0 6px;font-size:12px;font-weight:600;color:#536075;}
.zsa-th-share-link {display:flex;gap:8px;align-items:stretch;}
.zsa-th-share-link input {display:block;flex:1 1 200px;min-width:0;min-height:46px;width:100%;border:1px solid #b8c8dc;border-radius:8px;padding:9px 11px;background:#f8fafd;color:#334e72;font-size:13px;}
.zsa-th-share-options {display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px;}
.zsa-th-share-options a {display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #d8e1ed;border-radius:8px;color:#355579;font-size:13px;text-decoration:none;background:white;}
.zsa-th-share-options a:hover {background:#f0f5fd;}
.zsa-th-share-status {min-height:21px;margin-top:10px!important;font-size:12px;color:#38623e;}
.zsa-th-instructions {width:calc(100% - 32px);max-width:720px;max-height:85vh;overflow:auto;padding:24px;border:1px solid #c5d3e4;border-radius:15px;background:white;color:var(--zsa-slate);box-shadow:0 18px 60px rgba(11,42,91,.2);font-size:15px;line-height:1.6;}
.zsa-th-instructions::backdrop {background:rgba(11,27,51,.45);}
.zsa-th-instructions-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px;}
.zsa-th-instructions-heading h2 {font-size:23px;line-height:1.25;font-weight:600;}
.zsa-th-instructions-heading button {flex-shrink:0;}
.zsa-th-instructions-steps {margin:18px 0;padding-left:23px;}
.zsa-th-instructions-steps li {padding-left:4px;margin:12px 0;}
.zsa-th-instructions-example {padding:15px 17px;border:1px solid #d6e2f2;border-radius:10px;background:#f5f8fd;}
.zsa-th-instructions-example-label {font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;color:#536782;}
.zsa-th-instructions-equation {margin:6px 0 13px!important;color:var(--zsa-navy);font-size:22px;line-height:1.5;}
.zsa-th-instructions-equation:last-child {margin-bottom:0!important;}
.zsa-th-instructions-equation sub,.zsa-th-instructions-steps sub {font-size:.7em;line-height:0;vertical-align:-.2em;}
.zsa-th-instructions-equation sup,.zsa-th-instructions-steps sup {font-size:.7em;line-height:0;vertical-align:.4em;}
.zsa-th-instructions-note {margin-top:16px!important;font-size:13px;color:#536075;}
body{background:#edf2f7}.zsa.generator{--zsa-max-width:1120px;max-width:1120px;padding:28px 36px;background:#f6f8fb;font:400 16px/1.6 Inter,system-ui,sans-serif;color:var(--zsa-slate)}
.generator .zsa-th-header{margin-bottom:0}.generator .zsa-th-brand{padding:8px;background:white;border:1px solid #dce5ef;border-radius:15px}.generator .zsa-th-brand img{width:52px;height:auto}.generator h1{font-size:clamp(1.4rem,1rem + 1vw,1.85rem);margin:0;font-weight:650;letter-spacing:-.035em}.generator .activity-subtitle{font-size:13px;margin:5px 0 0;color:#536782}.generator .zsa-btn{font-size:13px;padding:10px 14px;border-color:#c7d6ee}.generator .zsa-btn--primary{border-color:#1d4ed8}.generator .intro{padding:24px 0 28px}.generator .lede{margin-bottom:14px}.generator .section-heading h2{font-size:15px;font-weight:650;margin:0}.generator .welcome h2{font-size:22px;margin:8px 0;font-weight:600}.generator .question-heading h2{font-size:24px;font-weight:600;letter-spacing:-.6px;line-height:1.25;margin:20px 0 5px}.generator .answer h3{font-size:15px;font-weight:650;margin:0 0 8px}.generator .zsa-th-share-heading h2{font-size:18px;font-weight:600;margin:0}.generator .zsa-th-instructions-heading h2{font-size:23px;font-weight:600;margin:0}.generator .zsa-th-share-link{flex-wrap:wrap}.generator .zsa-th-instructions ol{padding-left:23px}.generator .zsa-th-instructions li{margin:12px 0}.generator .zsa-th-share-panel p{margin:8px 0}.generator.zsa--embedded{padding-top:12px}
@media(max-width:650px){.zsa.generator{padding:18px 16px}.generator .zsa-th-identity{flex-basis:100%}.generator .zsa-th-header-tools{margin-left:0}.generator .zsa-th-topline{gap:14px}.generator .zsa-th-brand img{width:42px}.generator h1{font-size:22px}.generator .question-heading h2{font-size:21px}.generator .section-heading h2{font-size:14px}.generator .welcome h2{font-size:20px}.generator .zsa-th-share-panel{padding:16px}.generator .zsa-th-instructions{padding:20px}.generator .intro{padding:20px 0 24px}}

/* Compact activity header; subject selection is the first content row. */
.generator .subjects{margin-top:24px}
@media(max-width:650px){.generator .subjects{margin-top:20px}.generator .zsa-th-identity{flex:1 1 100%}.generator .zsa-th-identity>div{min-width:0}.generator h1{overflow-wrap:break-word}.generator .zsa-th-header-buttons{flex-wrap:wrap}.generator .zsa-th-share-link input{flex-basis:100%}}
