@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#132b46;--ink:#1e3045;--muted:#627082;--cream:#f6f5f1;--white:#fff;--line:#dde3e7;--red:#a64042;--gold:#ba8c42;--blue:#214e78;--green:#22634c;--radius:18px}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 'DM Sans',system-ui,sans-serif}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}a{color:var(--blue)}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ba8c42;outline-offset:4px}button,.primary,.pill{transition:background .15s,box-shadow .15s}.skip{position:absolute;top:-60px;background:#fff;z-index:20;padding:12px}.skip:focus{top:0}.masthead{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:white;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--navy);font-family:Manrope,sans-serif;font-size:17px;font-weight:800;letter-spacing:.12em}.brand-seal{display:grid;place-items:center;width:48px;height:48px;border:1px solid #b6c2ce;border-radius:50%;font:500 19px Georgia,serif;letter-spacing:0}.brand small{display:block;font-size:9px;letter-spacing:.18em;font-weight:600;margin-top:3px}.masthead nav{display:flex;align-items:center;gap:26px}.masthead nav a{font-size:13px;text-decoration:none}.pill{padding:9px 20px;border:1px solid #b8c3d0;border-radius:24px;font-weight:700}.preview-banner{padding:7px 18px;background:#eee6d3;color:#655027;text-align:center;font-size:12px}.welcome-hero{min-height:610px;display:flex;align-items:center;padding:65px 8%;background:linear-gradient(90deg,rgba(11,32,56,.96) 0%,rgba(11,32,56,.88) 32%,rgba(11,32,56,.12) 76%),url('massachusetts-hero.png') center 52%/cover;color:white}.hero-content{max-width:600px}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:800;text-transform:uppercase;color:var(--gold)}.eyebrow.light{color:#e1c18c}.hero-content h1{font-family:Manrope,system-ui,sans-serif;font-size:clamp(42px,5vw,68px);line-height:1.1;letter-spacing:-.055em;font-weight:500;margin:22px 0}.hero-content>p:not(.eyebrow){max-width:460px;color:#e0e7ef;font-size:18px;line-height:1.8}.primary{display:inline-flex;justify-content:center;align-items:center;gap:22px;text-decoration:none;color:white;background:var(--navy);border:0;border-radius:8px;padding:13px 22px;font-weight:700;font-size:14px}.hero-content .primary{background:#f4f0e7;color:var(--navy);margin-top:18px}.primary:hover{background:#28517a;color:white}.hero-footnote{font-size:11px;color:#c1ccd8;margin-top:23px}.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;padding:65px 8%;background:white}.intro-grid>div+div{border-left:1px solid var(--line);padding-left:45px}.step-number{color:var(--red);font-size:10px;letter-spacing:.14em;font-weight:700}h2,h3,h4{font-family:Manrope,sans-serif;color:var(--navy);letter-spacing:-.025em}h2{font-size:28px;line-height:1.35}h3{font-size:20px;line-height:1.4}.intro-grid p,.account-copy p{color:var(--muted);font-size:14px}.account-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;max-width:1100px;margin:80px auto;padding:0 30px;scroll-margin-top:30px}.account-copy{padding-top:40px}.account-copy h2{font-size:43px;line-height:1.15;font-weight:500}.account-card,.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:0 7px 20px rgba(21,43,66,.025)}.account-tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:22px}.account-tabs button{border:0;background:none;padding:0 0 13px;color:var(--muted);font-weight:700;font-size:14px}.account-tabs .active{border-bottom:2px solid var(--navy);color:var(--navy)}label{display:block;font-size:13px;font-weight:600;margin:14px 0}input:not([type=checkbox]):not([type=radio]):not([type=submit]),select{width:100%;border:1px solid #c7d0d9;border-radius:7px;padding:10px 12px;margin-top:5px;background:#fff;color:var(--ink)}input[type=submit]{background:var(--navy);color:white;border:0;border-radius:8px;padding:12px 20px;cursor:pointer}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.consent{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:12px;line-height:1.7}.consent input{margin-top:5px;flex-shrink:0}.fine{font-size:12px!important;color:var(--muted)}.honeypot{position:absolute;left:-9999px}.notice,.form-feedback:not(:empty),#message:not(:empty){padding:12px 16px;border-radius:8px;background:#edf2f6;color:#264966;font-size:14px}.error{background:#fff0ed!important;color:#91382c!important}.workspace{max-width:1510px;margin:auto;display:grid;grid-template-columns:240px 1fr;min-height:800px}.sidebar{padding:36px 22px;border-right:1px solid var(--line);background:#fbfbf9}.sidebar>p{margin-left:16px;color:var(--muted);font-size:9px}.sidebar nav{margin-top:26px;display:grid;gap:6px}.sidebar button{display:flex;justify-content:space-between;border:0;text-align:left;padding:13px 16px;border-radius:8px;background:transparent;color:#5e6c7b;font-size:13px;font-weight:600}.sidebar button span{font-size:10px;color:#9aa4ae;font-weight:400}.sidebar button.selected{background:var(--navy);color:#fff;box-shadow:0 4px 10px #132b461b}.sidebar-note{margin:70px 16px 0;border-top:1px solid var(--line);padding-top:24px}.sidebar-note p{font-family:Georgia,serif;font-size:17px;line-height:1.7;color:#7a8590}.learning-main{padding:34px 40px 60px;min-width:0}#message:empty{display:none}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 23px}.page-heading h1{font:500 30px/1.2 Manrope,sans-serif;letter-spacing:-.035em;margin:7px 0}.page-heading p{font-size:13px;color:var(--muted);margin:4px 0}.date-label{font-size:11px;color:var(--muted)}.dashboard-hero{min-height:280px;display:flex;align-items:center;padding:35px 40px;background:linear-gradient(90deg,rgba(13,34,57,.96),rgba(13,34,57,.80) 40%,rgba(13,34,57,.1)),url('massachusetts-hero.png') center 43%/cover;border-radius:16px;color:white;overflow:hidden}.dashboard-hero h2{color:white;font:500 36px/1.15 Manrope,sans-serif;letter-spacing:-.04em;max-width:390px;margin:12px 0}.dashboard-hero p{font-size:13px;color:#d9e3ee;max-width:340px;margin-bottom:22px}.dashboard-hero .primary{background:#f5f2ec;color:var(--navy);padding:10px 18px;font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0 35px}.stat{padding:22px 24px;background:white;border:1px solid var(--line);border-radius:12px}.stat>span{font-size:11px;color:var(--muted)}.stat strong{display:block;font:500 32px/1.2 Manrope,sans-serif;color:var(--navy);margin:9px 0 5px}.stat small{font-size:10px;color:var(--muted)}.section-title{display:flex;justify-content:space-between;align-items:center;margin:26px 0 16px}.section-title h2{font-size:19px;margin:0}.section-title span{font-size:11px;color:var(--muted)}.learning-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.learning-card{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff}.card-art{height:130px;background:#e8edf1;display:flex;align-items:center;justify-content:center;overflow:hidden}.card-art img{width:100%;height:100%;object-fit:cover}.card-art.type-art{background:#e8ecee;color:#426283;font:italic 54px Georgia,serif;gap:12px}.card-art.exam-art{background:#e9e5dd}.paper{width:94px;height:104px;background:#fff;border-radius:4px;box-shadow:0 6px 12px #132b4622;transform:rotate(-8deg);padding:16px}.paper i{display:block;height:5px;background:#d9e0e7;margin-bottom:9px;border-radius:3px}.paper i:nth-child(2){width:65%;background:#afbdc8}.card-body{padding:20px}.card-body h3{font-size:16px;margin:0 0 9px}.card-body p{font-size:12px;line-height:1.7;color:var(--muted);min-height:40px;margin-bottom:18px}.text-button{border:0;padding:0;background:none;color:var(--blue);font-size:12px;font-weight:700;text-align:left}.two-col{display:grid;grid-template-columns:1.3fr 1fr;gap:22px;margin-top:24px}.panel h3{margin-top:0;font-size:18px}.panel p{font-size:13px;color:var(--muted)}.activity-row{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid #edf0f3;font-size:12px}.activity-row strong{color:var(--navy)}.activity-row small{display:block;color:var(--muted);font-size:11px}.empty{padding:22px;background:#f7f8fa;border:1px dashed #d3dce4;border-radius:10px;color:var(--muted);font-size:13px}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.secondary{border:1px solid #c7d2dc;background:white;border-radius:8px;color:var(--navy);padding:10px 16px;font-size:13px;font-weight:600}.toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:16px 0}.toolbar label{margin:0;min-width:200px}.flashcard{min-height:320px;background:var(--navy);color:white;border-radius:16px;padding:36px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;margin:24px 0}.flashcard h2{color:white;font-size:36px;max-width:650px}.flashcard .definition{max-width:620px;font-size:18px;color:#e2e9f2}.flashcard .signal{font-size:13px;max-width:580px;color:#dac197;border-top:1px solid #ffffff30;padding-top:18px}.flashcard .secondary{background:transparent;border-color:#8394a9;color:white;margin:10px 0}.vocab-count{text-align:center;color:var(--muted);font-size:12px}.illustration{width:100%;height:220px;object-fit:cover;border-radius:12px}.visual-lesson{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center;margin-top:35px}.exam-shell{max-width:850px;margin:0 auto}.exam-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:20px}.progress-track{height:5px;background:#dce3e9;border-radius:5px;margin:22px 0}.progress-track i{display:block;height:100%;background:var(--gold);border-radius:5px}.question-card{padding:35px;background:#fff;border:1px solid var(--line);border-radius:15px}.question-card h2{font-size:23px;line-height:1.6;margin:15px 0 25px}.answer{display:flex;align-items:center;gap:14px;border:1px solid #d6dee6;border-radius:10px;padding:16px;cursor:pointer;font-size:15px;line-height:1.5;font-weight:400;margin:12px 0}.answer:has(input:checked){background:#eff4f8;border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}.answer input{width:18px;height:18px;accent-color:var(--blue)}.answer-letter{color:#8192a3;font-size:12px}.exam-nav{display:flex;justify-content:space-between;margin:20px 0}.question-map{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.question-map button{border:1px solid #cdd7e0;background:white;width:34px;height:34px;border-radius:6px;font-size:11px;color:var(--muted)}.question-map button.done{background:#e1eee7;border-color:#b2cdbf;color:var(--green)}.question-map button.current{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}.result-hero{display:flex;align-items:center;gap:35px;background:var(--navy);color:white;border-radius:16px;padding:35px;margin-bottom:25px}.result-hero h2{color:white;margin:0}.result-hero p{font-size:14px;color:#d6e0ec}.score-circle{width:120px;height:120px;flex-shrink:0;border:4px solid #c7ad7e;border-radius:50%;display:grid;place-items:center;font-size:34px}.review-item{padding:25px;background:white;border:1px solid var(--line);border-radius:12px;margin:16px 0}.review-item h3{font-size:17px}.review-item p{font-size:14px}.correct-badge{color:var(--green);font-size:12px;font-weight:700}.incorrect-badge{color:#973e3e;font-size:12px;font-weight:700}.topic-row{margin:16px 0;font-size:13px}.topic-row>div{display:flex;justify-content:space-between}.topic-row .progress-track{margin:9px 0}.loading{padding:60px;text-align:center;color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding:30px 6%;display:flex;align-items:flex-start;gap:50px;font-size:11px;color:var(--muted);background:#fff}.site-footer>span{color:var(--navy);font-size:13px;font-weight:700;white-space:nowrap}.site-footer small{display:block;font-size:10px;font-weight:400}.site-footer p{max-width:700px;margin:0}.site-footer a{margin-left:auto}#message:not(:empty){margin-bottom:20px}[hidden]{display:none!important}
@media(max-width:1100px){.workspace{grid-template-columns:195px 1fr}.learning-main{padding:28px}.sidebar{padding:28px 12px}.learning-cards{gap:12px}.card-body{padding:16px}.masthead{padding:0 4%}.intro-grid{gap:30px}.intro-grid>div+div{padding-left:28px}}
@media(max-width:800px){.masthead{height:82px}.brand{font-size:14px}.brand small{font-size:8px}.brand-seal{width:39px;height:39px}.masthead nav a:first-child{display:none}.workspace{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:12px 18px}.sidebar>p,.sidebar-note{display:none}.sidebar nav{display:flex;overflow-x:auto;margin:0;gap:7px}.sidebar button{flex-shrink:0;padding:10px 14px;font-size:12px}.sidebar button span{display:none}.learning-main{padding:25px 20px}.dashboard-hero{padding:28px;min-height:255px}.dashboard-hero h2{font-size:30px}.two-col{grid-template-columns:1fr}.learning-cards{grid-template-columns:1fr}.learning-card{display:grid;grid-template-columns:120px 1fr}.card-art{height:100%;min-height:150px}.card-body p{min-height:0}.stats-grid{gap:9px}.stat{padding:16px 13px}.stat strong{font-size:26px}.stat small{font-size:9px}.page-heading h1{font-size:26px}.date-label{display:none}.welcome-hero{min-height:530px;padding:50px 7%;background-position:60% center}.hero-content h1{font-size:46px}.hero-content>p:not(.eyebrow){font-size:16px;max-width:350px}.intro-grid{grid-template-columns:1fr;padding:35px 7%;gap:25px}.intro-grid>div+div{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.intro-grid h2{font-size:24px}.intro-grid h2 br{display:none}.account-section{grid-template-columns:1fr;margin:35px auto;gap:20px}.account-copy{padding-top:0}.account-copy h2{font-size:32px}.account-copy h2 br{display:none}.account-card{padding:24px}.site-footer{display:block;padding:25px}.site-footer p{margin:14px 0}.visual-lesson{grid-template-columns:1fr}.question-card{padding:23px}.question-card h2{font-size:20px}.answer{font-size:14px;padding:13px}.result-hero{gap:20px;padding:24px}.score-circle{width:90px;height:90px;font-size:26px}.flashcard{padding:26px;min-height:300px}.flashcard h2{font-size:28px}.flashcard .definition{font-size:16px}.form-row{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Coaching is visually and semantically separate from the question. */
.practice-tip{margin:0 0 26px;padding:16px 20px;border-left:4px solid var(--gold);border-radius:0 10px 10px 0;background:#f8f1df;color:#514327;font-size:15px;line-height:1.6}.practice-tip strong{display:block;font-size:12px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:4px}.practice-tip p{margin:0;font-weight:400}
