@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root{--ink:#173052;--muted:#64758c;--navy:#17335f;--navy-deep:#102748;--paper:#fff;--canvas:#f4f7fb;--line:#e1e8f0;--gold:#ffd36a;--green:#147c61;--red:#a54646;--shadow:0 14px 40px rgba(21,47,83,.09);font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}
body{margin:0;min-width:320px;background:var(--canvas);line-height:1.55}
button,input{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit}
button{cursor:pointer}
.skip-link{position:absolute;left:-9999px;top:1rem;z-index:50;padding:.75rem 1rem;background:#fff;border-radius:.5rem;color:var(--ink)}.skip-link:focus{left:1rem}
.topbar{height:76px;padding:0 clamp(1rem,4vw,4rem);display:flex;align-items:center;gap:2rem;background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:5}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-family:Manrope,sans-serif;font-size:.94rem;font-weight:800;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--navy);color:#fff;font-size:1.2rem}.brand small{display:block;color:#7b8aa0;font:700 .6rem 'DM Sans',sans-serif;letter-spacing:.16em}
.topnav{display:flex;gap:.45rem;margin-left:auto}.topnav button,.topnav a{border:0;background:none;padding:.6rem .85rem;text-decoration:none;color:#53677f;border-radius:.55rem;font-weight:600;font-size:.9rem}.topnav button:hover,.topnav a:hover{background:#f2f5f9;color:var(--navy)}
.official-link{font-size:.84rem;font-weight:700;color:#46617d;text-decoration:none;white-space:nowrap}.official-link:hover{text-decoration:underline}
main{min-height:calc(100vh - 144px)}
.home-screen{max-width:1440px;margin:auto;padding:0 clamp(1rem,4vw,4rem) 3rem}
.hero{min-height:440px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;margin:1.6rem 0 3.3rem;padding:clamp(2rem,5vw,4.5rem);border-radius:28px;background:linear-gradient(125deg,#15315b 0%,#214b7e 62%,#386998 100%);color:#fff;overflow:hidden;position:relative}
.hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(255,255,255,.055);right:-70px;top:-190px}
.hero-copy{max-width:590px;position:relative;z-index:1}.eyebrow{margin:0 0 .65rem;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#7085a0}.hero .eyebrow{color:#bcd5f1}.hero h1,.info-hero h1{font:800 clamp(2.6rem,5vw,4.4rem)/1.05 Manrope,sans-serif;letter-spacing:-.045em;margin:.35rem 0 1.25rem}.hero h1 span{color:var(--gold)}.hero-lede{max-width:580px;font-size:1.08rem;line-height:1.7;color:#e0ebf7;margin:0 0 1.5rem}.hero-actions{display:flex;gap:1.3rem;align-items:center;flex-wrap:wrap}.button{border:0;border-radius:12px;padding:.82rem 1.2rem;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;transition:transform .15s,box-shadow .15s,background .15s}.button:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(18,43,78,.16)}.button-light{background:#fff;color:var(--navy)}.button-outline{background:#fff;border:1px solid #ccd8e5;color:var(--navy)}.text-button{border:0;background:transparent;color:#e3eefb;font-weight:700;text-decoration:underline;text-underline-offset:4px;padding:.6rem 0}.quiet-note{font-size:.78rem;color:#bed0e4;margin:1.2rem 0 0}
.hero-art{min-height:300px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:1px solid rgba(214,231,249,.2);border-radius:50%;width:310px;height:230px;transform:rotate(-20deg)}.orbit-two{width:390px;height:280px;transform:rotate(30deg)}.book-art{width:190px;height:224px;border-radius:15px 24px 24px 15px;background:linear-gradient(130deg,#fff 0%,#eef4fb 65%,#dfeaf6 100%);box-shadow:20px 26px 44px rgba(7,25,49,.26);transform:rotate(5deg);position:relative;padding:48px 23px 20px 32px;display:flex;flex-direction:column;gap:14px;border-left:9px solid #dce7f3}.book-line{height:8px;background:#c7d7e8;border-radius:8px;width:100%}.book-line.short{width:62%}.book-check{position:absolute;right:-22px;bottom:23px;width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:#d7f5e8;border:5px solid #fff;color:#18795d;font-size:1.6rem;font-weight:800;box-shadow:0 10px 24px rgba(13,40,68,.18)}.art-chip{position:absolute;padding:.7rem 1rem;border-radius:12px;font-size:.78rem;font-weight:800;box-shadow:0 12px 25px rgba(8,27,51,.18)}.chip-math{right:0;top:50px;background:#ffdf98;color:#5c481e;transform:rotate(5deg)}.chip-read{left:-5px;bottom:47px;background:#e3f4ff;color:#315476;transform:rotate(-5deg)}.art-star{position:absolute;right:16%;bottom:30%;font-size:2rem;color:var(--gold)}
.home-section{margin-top:3.5rem}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1.3rem}.section-heading h2,.review-banner h2{font:800 clamp(1.45rem,2.5vw,2rem)/1.2 Manrope,sans-serif;letter-spacing:-.025em;margin:0}.section-heading>p{color:var(--muted);max-width:420px;margin:0}.subject-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.subject-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.4rem;box-shadow:0 5px 18px rgba(28,51,82,.035);display:flex;flex-direction:column;min-height:234px;transition:transform .17s,border-color .17s,box-shadow .17s}.subject-card:hover{transform:translateY(-4px);border-color:#bdcad9;box-shadow:var(--shadow)}.subject-icon{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;margin-bottom:1rem}.subject-icon svg{width:33px;height:33px}.subject-card h3{font:800 1.03rem/1.35 Manrope,sans-serif;margin:0 0 .55rem}.subject-card p{font-size:.87rem;color:var(--muted);margin:0 0 1.2rem}.subject-card-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;font-size:.76rem;color:#72839a;font-weight:700}.card-enter{color:var(--accent);font-size:1.05rem}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.step-card{padding:1.35rem 1.5rem;background:#fff;border:1px solid var(--line);border-radius:16px}.step-num{display:inline-block;color:#4d6f99;font:800 .8rem Manrope,sans-serif;letter-spacing:.1em;margin-bottom:.75rem}.step-card h3{font:800 1rem Manrope,sans-serif;margin:0 0 .4rem}.step-card p{font-size:.88rem;color:var(--muted);margin:0}
.review-banner{display:flex;align-items:center;gap:1.3rem;margin-top:3rem;padding:1.7rem 2rem;border-radius:20px;background:#edf3fa;border:1px solid #dce6f0}.review-mark{width:52px;height:52px;flex:none;display:grid;place-items:center;border-radius:16px;background:#d9e9f8;color:#2c5d89;font-size:1.35rem;font-weight:800}.review-banner .eyebrow{margin-bottom:.3rem}.review-banner p:not(.eyebrow){margin:.45rem 0 0;color:#5d7087;font-size:.9rem;max-width:710px}.review-banner .button{margin-left:auto;flex:none}.disclaimer{margin:1.5rem 0 0;color:#77869a;text-align:center;font-size:.75rem}
.workspace{max-width:1500px;margin:auto;padding:1.15rem clamp(1rem,3vw,2.5rem) 3rem}.workspace-top{display:flex;align-items:center;gap:1.3rem;margin:0 0 1rem}.back-link{border:0;background:none;color:#4e6683;font-weight:700;padding:.35rem 0}.back-link:hover{text-decoration:underline;text-underline-offset:3px}.breadcrumb{color:#7c8ca0;font-size:.84rem}.workspace-grid{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:680px;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 8px 30px rgba(20,45,77,.06)}.topic-sidebar{background:#f8fafc;border-right:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.sidebar-head{padding:1.35rem 1.2rem 1rem}.sidebar-head h2{font:800 1.3rem Manrope,sans-serif;margin:0 0 1rem}.sidebar-head .eyebrow{font-size:.65rem;color:var(--accent)}.search-label{display:block;font-size:.75rem;color:#586b82;font-weight:700;margin-bottom:.35rem}.sidebar-head input{width:100%;border:1px solid #d6dfe9;border-radius:9px;padding:.65rem .75rem;background:#fff;color:var(--ink);outline:none}.sidebar-head input:focus{border-color:#587baa;box-shadow:0 0 0 3px rgba(63,111,165,.13)}.topic-nav{overflow-y:auto;max-height:calc(100vh - 330px);padding:0 .7rem 1rem}.topic-group{margin:.2rem 0 .75rem}.topic-group-title{padding:.35rem .55rem;color:#8996a7;font-size:.65rem;letter-spacing:.11em;font-weight:800;text-transform:uppercase}.topic-item{width:100%;border:0;background:transparent;text-align:left;color:#465b74;padding:.62rem .68rem;border-radius:9px;display:flex;align-items:center;gap:.65rem;font-size:.83rem;line-height:1.32}.topic-item:hover{background:#edf2f8}.topic-item[aria-current="page"]{background:#e7eef8;color:var(--navy);font-weight:800}.topic-dot{width:7px;height:7px;border-radius:50%;background:#b5c2d1;flex:none}.topic-item[aria-current="page"] .topic-dot{background:var(--accent)}.sidebar-foot{border-top:1px solid var(--line);padding:.9rem 1.2rem;margin-top:auto;display:grid;gap:.25rem}.sidebar-action{background:none;border:0;text-align:left;padding:.45rem 0;color:#536a85;font-size:.8rem;font-weight:700}.sidebar-action:hover{color:var(--navy)}
.lesson-area{padding:clamp(1.4rem,3vw,3rem);min-width:0}.lesson-kicker{display:flex;align-items:center;gap:.6rem;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.lesson-kicker span{width:8px;height:8px;border-radius:50%;background:var(--accent)}.lesson-title{font:800 clamp(1.8rem,3vw,2.6rem)/1.13 Manrope,sans-serif;letter-spacing:-.04em;margin:.5rem 0 .7rem}.lesson-lede{color:#586f89;font-size:1.02rem;max-width:850px}.lesson-goal{border-left:4px solid var(--accent);background:var(--soft);border-radius:0 12px 12px 0;padding:1rem 1.15rem;margin:1.35rem 0 1.6rem}.lesson-goal strong{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.2rem}.lesson-goal p{margin:0;font-size:.95rem}.lesson-body{max-width:900px}.lesson-body h3{font:800 1.1rem Manrope,sans-serif;margin:1.6rem 0 .7rem}.lesson-body p{color:#344d69;line-height:1.75}.lesson-body ul{color:#344d69;padding-left:1.35rem}.lesson-body li{margin:.45rem 0;line-height:1.6}.lesson-body .worked-example{padding:1.15rem 1.25rem;background:#f7f9fc;border:1px solid var(--line);border-radius:13px;margin:1rem 0}.lesson-body .worked-example h4{margin:0 0 .6rem;font:800 .9rem Manrope,sans-serif}.lesson-body .worked-example p:last-child{margin-bottom:0}.lesson-body table{border-collapse:collapse;width:100%;margin:.9rem 0}.lesson-body th,.lesson-body td{border:1px solid #dce4ed;padding:.55rem .7rem;text-align:left}.lesson-body th{background:#f1f5f9}.math-lesson .guided-step{margin:0 0 1rem}.math-lesson .guided-step h3{margin:.9rem 0 .3rem}.math-lesson .guided-math{font-family:Georgia,serif}.lesson-tools{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin:2rem 0 1rem;padding-top:1.25rem;border-top:1px solid var(--line)}.lesson-tools .button{background:var(--accent);color:#fff}.lesson-tools .quiet-link{font-size:.82rem;font-weight:700;color:#5e728b;text-decoration:none;padding:.5rem}.lesson-tools .quiet-link:hover{text-decoration:underline}.quick-review{border:1px solid var(--line);border-radius:14px;margin:1.35rem 0;background:#fbfcfe;overflow:hidden}.quick-review summary{list-style:none;cursor:pointer;padding:1rem 1.1rem;font-weight:800;color:#364f6c;display:flex;align-items:center;justify-content:space-between}.quick-review summary::-webkit-details-marker{display:none}.quick-review summary:after{content:"+";font-size:1.25rem;color:#66809d}.quick-review[open] summary:after{content:"−"}.quick-review-content{padding:0 1.1rem 1.1rem;color:#52677f;font-size:.9rem}.quick-review-content li{margin:.4rem 0}.quick-review-content .quick-example{padding:.85rem;background:#fff;border:1px solid #e5ebf2;border-radius:10px;margin:.8rem 0}.quick-review-content .quick-example p{margin:.25rem 0}
.quiz-view{max-width:850px;margin:auto}.quiz-topline{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#6a7d93;font-size:.82rem;font-weight:700}.quiz-progress{height:7px;border-radius:8px;background:#e9eef4;overflow:hidden;margin:.65rem 0 2.2rem}.quiz-progress span{height:100%;display:block;background:var(--accent);border-radius:inherit;transition:width .3s ease}.quiz-label{color:var(--accent);font-size:.73rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.quiz-question{font:800 clamp(1.35rem,2.5vw,1.85rem)/1.35 Manrope,sans-serif;margin:.6rem 0 1.3rem;letter-spacing:-.025em}.quiz-choices{display:grid;gap:.72rem}.quiz-choice{border:1px solid #d9e1eb;border-radius:12px;background:#fff;padding:.9rem 1rem;text-align:left;color:#263f5c;font-weight:600;display:flex;align-items:flex-start;gap:.8rem;transition:border-color .15s,background .15s}.quiz-choice:hover:not(:disabled){border-color:var(--accent);background:var(--soft)}.choice-letter{width:27px;height:27px;flex:none;border-radius:8px;display:grid;place-items:center;background:#eef2f7;color:#5b6e85;font-size:.75rem;font-weight:800}.quiz-choice.correct-answer{border-color:#48a486;background:#eef9f5}.quiz-choice.correct-answer .choice-letter{background:#ceeede;color:#126b53}.quiz-choice.wrong-answer{border-color:#d88c8c;background:#fff4f2}.quiz-choice.wrong-answer .choice-letter{background:#f6dada;color:#9b3f3f}.quiz-choice:disabled{cursor:default}.feedback-card{margin-top:1.25rem;border-radius:14px;padding:1.1rem 1.2rem;display:flex;gap:.9rem;align-items:flex-start}.feedback-card.is-correct{background:#eaf8f2;border:1px solid #c8eadb;color:#175b48}.feedback-card.is-wrong{background:#fff5f1;border:1px solid #f1d7cb;color:#74433e}.feedback-symbol{width:35px;height:35px;flex:none;border-radius:50%;display:grid;place-items:center;background:#fff;font-weight:900;font-size:1.2rem}.feedback-card h3{margin:0 0 .2rem;font:800 1rem Manrope,sans-serif}.feedback-card p{margin:.2rem 0 0;font-size:.9rem;line-height:1.6}.feedback-card .answer-line{margin-top:.55rem;font-weight:700}.quiz-next{margin-top:1rem;background:var(--navy);color:#fff}.quiz-next:hover{background:#254b7f}.quiz-end{text-align:center;padding:2.5rem 1rem}.finish-icon{width:76px;height:76px;border-radius:25px;background:#e8f7ef;display:grid;place-items:center;margin:0 auto 1rem;color:#187c5d;font-size:2rem;animation:finish-pop .55s ease both}.quiz-end h2{font:800 1.8rem Manrope,sans-serif;margin:.3rem}.quiz-end p{color:#60758c}.quiz-end-actions{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap;margin-top:1.5rem}.quiz-end .button-primary{background:var(--navy);color:white}.quiz-end .button-outline{background:white}
.info-screen{max-width:1100px;margin:0 auto;padding:2rem clamp(1rem,4vw,3rem) 4rem}.info-hero{margin:1.5rem 0 2rem;padding:2.5rem;border-radius:23px;background:linear-gradient(125deg,#19365e,#315d8b);color:#fff}.info-hero .eyebrow{color:#b5d1ee}.info-hero h1{font-size:clamp(2.2rem,4vw,3.3rem);margin:.3rem 0 .6rem}.info-hero p:last-child{max-width:780px;color:#e0eaf5;font-size:1.03rem}.info-content{display:grid;gap:1rem}.info-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.35rem 1.5rem}.info-card h2{font:800 1.1rem Manrope,sans-serif;margin:0 0 .65rem}.info-card p{color:#5b7089}.info-card ol,.info-card ul{padding-left:1.25rem;color:#405975}.info-card li{padding:.25rem 0}.subject-plan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.plan-subject{background:#fff;border:1px solid var(--line);border-radius:15px;padding:1.2rem;border-top:4px solid var(--accent)}.plan-subject h3{font:800 1rem Manrope,sans-serif;margin:0 0 .5rem}.plan-subject p{font-size:.87rem;color:#64778e;margin:.35rem 0}.plan-subject button{border:0;background:none;color:var(--accent);font-weight:800;padding:.4rem 0}.review-subject-list{display:grid;gap:.65rem}.review-subject{display:grid;grid-template-columns:170px 1fr auto;align-items:center;gap:1rem;padding:.8rem 1rem;border:1px solid var(--line);border-radius:12px;background:#fff}.review-subject strong{color:var(--accent)}.review-subject span{font-size:.88rem;color:#5e728a}.review-subject button{border:0;border-radius:8px;padding:.5rem .7rem;background:var(--soft);color:var(--accent);font-weight:800}
.site-footer{min-height:68px;background:#fff;border-top:1px solid var(--line);padding:.9rem clamp(1rem,4vw,4rem);display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#7c8999;font-size:.75rem}.site-footer a{color:#526c8a;text-decoration:none;font-weight:700}.site-footer a:hover{text-decoration:underline}
.quiz-count{font-size:.8rem;color:#7a8a9d}.no-results{padding:.8rem;color:#6b7c90;font-size:.82rem}.done-mark{margin-left:auto;color:#238261;font-weight:900}.pace-options{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0}.pace-button{border:1px solid #d6e0eb;border-radius:10px;background:#fff;padding:.65rem .85rem;color:#48617d;font-weight:800}.pace-button:hover{border-color:#809bb9}.pace-button.selected{background:#eaf1f9;border-color:#6385ac;color:#244d78}.week-plan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem;margin-top:1rem}.week-plan-day{display:flex;gap:.8rem;align-items:flex-start;padding:.8rem;background:#f7f9fc;border:1px solid #e5ebf2;border-radius:10px}.week-plan-day strong{color:#315b87;white-space:nowrap;font-size:.82rem}.week-plan-day span{color:#60748b;font-size:.84rem}.quiz-back{display:block;margin-top:1rem;border:0;background:none;color:#637890;font-size:.82rem;font-weight:700;padding:.4rem 0}.quiz-back:hover{text-decoration:underline}.lesson-view .quiz-count{display:inline-block}.lesson-area .button{font-size:.9rem}.lesson-view .lesson-tools{align-items:center}.lesson-view .lesson-tools .quiz-count{margin-left:.1rem}
.practice-links-title{font:800 .95rem Manrope,sans-serif;margin:1.5rem 0 .65rem}.practice-links{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem}.practice-links a{display:flex;justify-content:space-between;gap:.5rem;text-decoration:none;background:var(--soft);color:var(--accent);border-radius:10px;padding:.72rem .85rem;font-size:.83rem;font-weight:800}.practice-links a:hover{filter:brightness(.97);text-decoration:underline}
.celebrate{position:relative}.celebrate:after{content:"✦  ✧  ✦";position:absolute;right:.3rem;top:-1rem;color:#d39926;letter-spacing:.45em;font-size:.85rem;animation:sparkle .7s ease-out both}.pulse-good{animation:good-pulse .6s ease-out}.hidden{display:none!important}
@keyframes sparkle{from{opacity:0;transform:translateY(8px) scale(.7)}to{opacity:1;transform:translateY(-5px) scale(1)}}@keyframes good-pulse{50%{transform:scale(1.018)}}@keyframes finish-pop{0%{transform:scale(.7);opacity:0}75%{transform:scale(1.09)}100%{transform:scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(max-width:1000px){.subject-grid{grid-template-columns:repeat(2,1fr)}.workspace-grid{grid-template-columns:260px minmax(0,1fr)}.hero-art{transform:scale(.88)}.hero{grid-template-columns:1fr .8fr}}
@media(max-width:720px){.topbar{height:auto;min-height:66px;padding:.6rem 1rem;gap:.5rem;flex-wrap:wrap}.brand{font-size:.82rem}.brand-mark{width:34px;height:34px}.topnav{order:3;width:100%;margin:0;justify-content:center;border-top:1px solid #eef1f5;padding-top:.3rem}.topnav button,.topnav a{font-size:.78rem;padding:.45rem .7rem}.official-link{margin-left:auto;font-size:.72rem}.hero{grid-template-columns:1fr;padding:2rem 1.4rem;margin:.8rem 0 2rem;min-height:0}.hero-art{min-height:210px;margin-top:1.5rem;transform:scale(.82)}.hero h1{font-size:2.55rem}.hero-lede{font-size:.98rem}.section-heading{align-items:flex-start;flex-direction:column;gap:.5rem}.section-heading>p{font-size:.88rem}.subject-grid{gap:.7rem}.subject-card{padding:1rem;min-height:225px}.subject-card h3{font-size:.92rem}.subject-card p{font-size:.8rem}.subject-icon{width:47px;height:47px}.steps-grid{grid-template-columns:1fr}.review-banner{align-items:flex-start;flex-wrap:wrap;padding:1.3rem}.review-banner>div:nth-child(2){flex:1 1 calc(100% - 70px)}.review-banner .button{margin:0 0 0 68px}.workspace{padding:.6rem .6rem 2rem}.workspace-top{margin:.2rem .4rem .7rem}.workspace-grid{display:block;min-height:0}.topic-sidebar{border-right:0;border-bottom:1px solid var(--line)}.sidebar-head{padding:1rem}.topic-nav{max-height:215px;display:flex;gap:.45rem;overflow-x:auto;overflow-y:hidden;padding:0 .7rem .75rem}.topic-group{display:contents}.topic-group-title{display:none}.topic-item{width:auto;white-space:nowrap;background:#fff;border:1px solid var(--line);padding:.5rem .7rem}.topic-item[aria-current="page"]{border-color:#b8c9dc}.sidebar-foot{display:flex;justify-content:space-between;padding:.45rem 1rem}.sidebar-action{font-size:.72rem}.lesson-area{padding:1.2rem 1rem 1.5rem}.lesson-title{font-size:1.75rem}.lesson-lede{font-size:.91rem}.lesson-body p{font-size:.91rem}.lesson-tools{gap:.35rem}.lesson-tools .button{width:100%}.quick-review summary{font-size:.9rem}.quiz-topline{font-size:.73rem}.quiz-question{font-size:1.35rem}.quiz-choice{padding:.75rem}.info-screen{padding:1rem .9rem 3rem}.info-hero{padding:1.7rem 1.2rem}.info-hero h1{font-size:2.25rem}.subject-plan-grid{grid-template-columns:1fr}.review-subject{grid-template-columns:1fr auto;gap:.35rem}.review-subject strong{grid-column:1}.review-subject span{grid-column:1}.review-subject button{grid-column:2;grid-row:1/3}.site-footer{align-items:flex-start;flex-direction:column;justify-content:center;gap:.3rem}.disclaimer{font-size:.7rem}.week-plan-grid{grid-template-columns:1fr}}

.quiz-choice:focus-within{outline:3px solid rgba(50,100,160,.24);outline-offset:2px}.quiz-choice input[type="radio"]{position:absolute;width:1px;height:1px;opacity:0;clip-path:inset(50%);overflow:hidden}.quiz-choice:hover{border-color:var(--accent);background:var(--soft)}.quiz-choice input:disabled{cursor:default}

/* Guided course entry and mastery checkpoint */
.subject-status{display:inline-flex;align-self:flex-start;align-items:center;gap:.38rem;color:#71849b;background:#f0f3f7;border-radius:999px;padding:.32rem .56rem;margin:-.25rem 0 .7rem;font-size:.61rem;font-weight:900;letter-spacing:.09em}.subject-status:before{content:"";width:6px;height:6px;border-radius:50%;background:#98a7b8}.subject-status.is-open{background:#e6f6ef;color:#187253}.subject-status.is-open:before{background:#299975}.subject-card{position:relative;overflow:hidden}.subject-card:after{content:"";position:absolute;width:120px;height:120px;border:1px solid color-mix(in srgb,var(--accent) 13%,transparent);border-radius:50%;right:-67px;top:-62px;box-shadow:0 0 0 17px color-mix(in srgb,var(--accent) 4%,transparent),0 0 0 36px color-mix(in srgb,var(--accent) 3%,transparent);pointer-events:none}.card-enter{font-size:.8rem;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--accent) 10%,white)}
.path-step{display:flex;align-items:center;gap:.75rem;padding:.85rem .75rem;border-radius:13px;margin:.25rem 0}.path-step-current{background:#fff;border:1px solid #d8e3ee;box-shadow:0 5px 15px rgba(28,51,82,.04)}.path-step-locked{opacity:.57}.path-step-num{width:32px;height:32px;display:grid;place-items:center;border-radius:11px;background:#eaf1fa;color:#42668e;font-size:.75rem;font-weight:900;flex:none}.path-step-current .path-step-num{background:var(--accent);color:white}.path-step strong,.path-step small{display:block}.path-step strong{font-size:.79rem;color:#334c68}.path-step small{font-size:.68rem;color:#8190a2;margin-top:.16rem}.path-connector{height:16px;margin-left:1.7rem;border-left:1px dashed #bdc8d5}.lock-mark{margin-left:auto;color:#8c9bad;font-size:1.1rem}.gate-view{display:grid;grid-template-columns:minmax(250px,.82fr) minmax(360px,1.18fr);gap:clamp(1.5rem,4vw,4rem);align-items:center;max-width:1110px;margin:0 auto;padding:clamp(1rem,2.3vw,2.2rem)}.gate-visual{min-height:430px;border-radius:25px;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 50% 43%,#fff 0,#f3f7fc 24%,#e6eff9 52%,#d5e2f1 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.9)}.gate-visual:before,.gate-visual:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(40,83,132,.12)}.gate-visual:before{width:315px;height:315px}.gate-visual:after{width:390px;height:390px}.gate-orbit{position:absolute;width:270px;height:110px;border:1px solid rgba(54,96,144,.2);border-radius:50%;transform:rotate(-33deg)}.gate-orbit-b{width:315px;height:130px;transform:rotate(48deg);border-color:rgba(211,153,38,.28)}.gate-badge{position:relative;z-index:1;width:154px;height:154px;border-radius:45px;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#edf4fc);color:var(--accent);box-shadow:0 24px 55px rgba(30,64,104,.16),inset 0 0 0 1px #fff;transform:rotate(-5deg)}.gate-badge svg{width:78px;height:78px;filter:drop-shadow(0 8px 9px rgba(30,64,104,.08))}.gate-badge span{position:absolute;right:-17px;bottom:-7px;width:48px;height:48px;border:5px solid #f0f5fb;border-radius:17px;display:grid;place-items:center;background:#e0ad4c;color:#fff;font:900 1rem Manrope,sans-serif;transform:rotate(5deg);box-shadow:0 8px 18px rgba(132,99,36,.22)}.gate-spark{position:absolute;color:#e2ae4e;font-size:1.7rem;z-index:1}.gate-spark-one{top:20%;right:23%;animation:finish-pop .6s ease both}.gate-spark-two{left:18%;bottom:28%;color:#7394ba;font-size:1.35rem}.gate-visual-caption{position:absolute;bottom:26px;color:#66809c;font-weight:900;font-size:.65rem;letter-spacing:.2em}.gate-visual-caption span{color:#d39b32;padding:0 .35rem}.gate-copy{padding:1rem 0;max-width:660px}.gate-copy .lesson-title{font-size:clamp(2.1rem,4vw,3.25rem);margin:.85rem 0}.gate-copy .lesson-lede{line-height:1.72;max-width:620px}.gate-metrics{display:flex;gap:.75rem;margin:1.5rem 0}.gate-metrics>div{flex:1;padding:.88rem 1rem;border:1px solid #e2e9f1;border-radius:14px;background:#fbfcfe}.gate-metrics strong{display:block;font:900 1.35rem Manrope,sans-serif;color:var(--accent)}.gate-metrics span{display:block;font-size:.69rem;color:#75869a;margin-top:.2rem}.gate-note{display:flex;gap:.7rem;align-items:flex-start;padding:.9rem 1rem;background:var(--soft);border-radius:13px;margin:1.1rem 0 1.35rem}.gate-note>span{color:var(--accent);font-size:1rem}.gate-note p{margin:0;color:#51677f;font-size:.82rem;line-height:1.55}.gate-start{background:var(--accent);color:#fff;min-height:50px;padding-inline:1.35rem;box-shadow:0 8px 19px color-mix(in srgb,var(--accent) 20%,transparent)}.gate-start:hover{filter:brightness(1.05)}.gate-footnote{color:#8492a2;font-size:.68rem;margin:.8rem 0 0}.foundation-quiz{max-width:760px;margin:1rem auto}.foundation-quiz .quiz-progress span{background:linear-gradient(90deg,var(--accent),#d5a542)}.gate-result{max-width:750px;margin:2.2rem auto;padding:clamp(1.5rem,4vw,3.2rem);text-align:center;border-radius:26px;background:radial-gradient(circle at 50% 0,var(--soft),#fff 55%);border:1px solid #e3eaf1}.result-medallion{width:86px;height:86px;display:grid;place-items:center;margin:0 auto 1.2rem;border-radius:28px;background:linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent) 60%,#233957));box-shadow:0 14px 26px color-mix(in srgb,var(--accent) 22%,transparent);color:#fff;font-size:2.25rem;animation:finish-pop .55s ease both}.gate-retry .result-medallion{background:linear-gradient(145deg,#7186a0,#4e637d)}.gate-result .eyebrow{color:var(--accent)}.gate-result h1{font:900 clamp(1.9rem,4vw,2.7rem)/1.12 Manrope,sans-serif;letter-spacing:-.04em;margin:.35rem 0 .8rem}.gate-result>p:not(.eyebrow){color:#657991;line-height:1.65;max-width:590px;margin:.55rem auto}.gate-result .result-score{font-size:1.1rem!important;color:#304b6a!important}.result-progress{height:9px;max-width:420px;margin:1.4rem auto;background:#e7edf4;border-radius:99px;overflow:hidden}.result-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#dfb250)}.gate-result .quiz-end-actions .button-primary{background:var(--accent);color:#fff}.gate-result .quiz-end-actions .button-outline{color:#536b86}.hero{box-shadow:0 20px 55px rgba(16,43,77,.13)}.home-section.subjects-section{scroll-margin-top:1rem}
@media(max-width:950px){.gate-view{grid-template-columns:minmax(210px,.65fr) minmax(340px,1.35fr);gap:1.5rem}.gate-visual{min-height:370px}.gate-visual:before{width:260px;height:260px}.gate-visual:after{width:325px;height:325px}}
@media(max-width:720px){.gate-view{display:block;padding:.6rem}.gate-visual{min-height:220px;margin:0 0 1.3rem;border-radius:18px}.gate-visual:before{width:180px;height:180px}.gate-visual:after{width:235px;height:235px}.gate-orbit{width:185px;height:80px}.gate-orbit-b{width:210px;height:90px}.gate-badge{width:100px;height:100px;border-radius:31px}.gate-badge svg{width:55px;height:55px}.gate-badge span{width:38px;height:38px;border-radius:14px;right:-13px}.gate-visual-caption{bottom:12px;font-size:.55rem}.gate-copy{padding:.2rem .25rem}.gate-metrics{gap:.45rem}.gate-metrics>div{padding:.7rem}.gate-metrics strong{font-size:1.12rem}.gate-metrics span{font-size:.62rem}.gate-start{width:100%}.gate-result{margin:1rem auto;padding:1.5rem 1rem;border-radius:19px}.subject-status{font-size:.56rem}}
.sidebar-head .search-label[hidden],.sidebar-head input[hidden]{display:none!important}
@media(max-width:720px){.topic-nav.path-mode{display:block;max-height:none;overflow:visible;padding:.15rem .7rem .9rem}.topic-nav.path-mode .path-step{width:100%;min-height:64px;margin:.2rem 0}.topic-nav.path-mode .path-connector{height:13px;margin-left:1.7rem}}
.missed-review-list{display:grid;gap:.75rem;margin-top:1rem}.missed-review-item{border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:12px;background:#fff;padding:1rem 1.1rem}.missed-review-heading{display:flex;justify-content:space-between;gap:1rem;align-items:center}.missed-review-heading strong{color:var(--accent)}.missed-review-heading span,.missed-answer{font-size:.82rem;color:#64778e}.missed-review-item>p{margin:.75rem 0;color:#405975}.missed-answer{display:flex;flex-wrap:wrap;gap:.45rem 1.3rem}.missed-answer span:last-child{font-weight:800;color:#18734e}.missed-explanation{border-radius:9px;background:var(--soft);padding:.75rem}.missed-review-item button{border:0;border-radius:8px;padding:.55rem .75rem;background:var(--soft);color:var(--accent);font-weight:800;cursor:pointer}.review-count{display:inline-grid;place-items:center;min-width:1.7rem;height:1.7rem;margin-left:.25rem;border-radius:50%;background:#edf2f8;color:#34516f;font:800 .82rem Manrope,sans-serif}.empty-missed{border:1px dashed #ccd6e1;border-radius:11px;padding:1rem;color:#62768d!important;background:#f8fafc}
@media(max-width:720px){.missed-review-heading{align-items:flex-start;flex-direction:column;gap:.25rem}}
.group-state{display:block;margin-top:.2rem;color:#7889a0;font-size:.57rem;letter-spacing:.035em}.is-locked .topic-group-title{color:#8693a3}.locked-group-note{margin:.25rem .5rem .65rem;padding:.65rem .7rem;border-radius:9px;background:#f0f3f7;color:#75859a;font-size:.72rem;line-height:1.45}.course-notice{margin:0 0 1rem;padding:.8rem 1rem;border-radius:10px;background:#eaf7f1;color:#187253;font-weight:750;font-size:.88rem}
.lesson-art{margin:1.5rem 0 2rem;padding:1rem;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#f7faff,#fff);text-align:center}.lesson-art img{display:block;width:min(100%,760px);max-height:480px;object-fit:contain;margin:0 auto;border-radius:12px}.lesson-art figcaption{margin:.7rem 0 0;color:#70829a;font-size:.76rem}

/* A clear, two-path start that keeps the diagnostic optional. */
.home-start-button{min-height:58px;padding:.95rem 1.55rem;font:850 1.04rem Manrope,sans-serif;box-shadow:0 10px 23px rgba(18,77,82,.2)}
.begin-panel{position:relative;margin:.4rem 0 1.5rem;padding:clamp(1.15rem,3vw,2.1rem);border:1px solid #dce8df;border-radius:24px;background:radial-gradient(ellipse at 100% 0,#e9f5ef 0,transparent 38%),linear-gradient(130deg,#fff 0%,#f8fbf8 100%);box-shadow:0 16px 38px rgba(29,65,57,.08);scroll-margin-top:1rem}
.begin-panel[hidden],.begin-subchoices[hidden],.begin-subject-picker[hidden]{display:none!important}
.begin-panel-heading{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem}.begin-step-mark{width:52px;height:52px;display:grid;place-items:center;flex:none;border-radius:18px;background:#174e5b;color:#fff;font:900 1rem Manrope,sans-serif;box-shadow:0 9px 20px rgba(21,79,86,.18)}.begin-panel-heading .eyebrow{margin:0 0 .15rem;color:#43806b}.begin-panel-heading h2{margin:0;color:#173950;font:850 clamp(1.4rem,3vw,2rem)/1.2 Manrope,sans-serif;letter-spacing:-.035em}.begin-panel-heading p:last-child{margin:.3rem 0 0;color:#64786e}.begin-close{margin-left:auto;align-self:flex-start;width:38px;height:38px;border:1px solid #d8e4dc;border-radius:50%;background:#fff;color:#537065;font-size:1.45rem;line-height:1}
.begin-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.begin-option{display:grid;grid-template-columns:54px minmax(0,1fr) 24px;gap:1rem;align-items:center;min-height:128px;padding:1.15rem 1.25rem;border:1px solid #dfe8e1;border-radius:18px;text-align:left;background:#fff;color:#173950;box-shadow:0 6px 18px rgba(26,63,52,.04);transition:transform .17s,border-color .17s,box-shadow .17s}.begin-option:hover{transform:translateY(-3px);border-color:#8ab7a3;box-shadow:0 13px 27px rgba(26,63,52,.1)}.begin-option-diagnostic{background:linear-gradient(125deg,#fff,#f1f8f4)}.begin-option-lessons{background:linear-gradient(125deg,#fff,#f5f7fb)}.begin-option-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:17px;background:#e5f2eb;color:#1b785e;font-size:1.75rem}.begin-option-lessons .begin-option-icon{background:#e9eef7;color:#325b86}.begin-option-copy strong,.begin-option-copy small{display:block}.begin-option-copy strong{font:850 1.05rem Manrope,sans-serif}.begin-option-copy small{margin-top:.35rem;color:#667b70;font-size:.82rem;line-height:1.5}.begin-option-arrow{color:#2a705b;font-size:1.3rem;font-weight:900}.begin-subchoices{margin-top:1rem;padding:1rem;border:1px solid #e0e9e2;border-radius:16px;background:rgba(255,255,255,.78)}.begin-subchoices-heading{display:flex;gap:1rem;align-items:center;margin-bottom:.8rem}.begin-subchoices-heading h3{margin:0;font:850 1.1rem Manrope,sans-serif}.begin-subchoices-heading p{margin:.2rem 0 0;color:#687b70;font-size:.8rem}.begin-back{align-self:flex-start;flex:none;border:0;background:none;color:#34705d;font-weight:850;padding:.45rem}.diagnostic-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.diagnostic-choice{display:grid;grid-template-columns:40px 1fr;column-gap:.75rem;align-items:center;padding:.8rem 1rem;border:1px solid #dce7df;border-radius:13px;background:#fff;text-align:left;color:#244c42}.diagnostic-choice>span{grid-row:1/4;width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#e9f4ed;color:#22745b;font-size:1.25rem}.diagnostic-choice strong{font:850 .9rem Manrope,sans-serif}.diagnostic-choice small{color:#6e8077;font-size:.73rem}.diagnostic-choice b{margin-top:.3rem;color:#31745e;font-size:.75rem}.diagnostic-choice:hover{border-color:#88b59e;background:#f7fbf8}.begin-subject-picker{margin-top:1rem}.begin-subject-picker>p{font-weight:800;color:#426353}.begin-subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.begin-subject{display:grid;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:.65rem;padding:.7rem .8rem;border:1px solid #e0e7e1;border-radius:13px;background:#fff;text-align:left;color:#254438}.begin-subject:hover{border-color:var(--accent);background:var(--soft)}.begin-subject-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--soft);color:var(--accent)}.begin-subject-icon svg{width:29px;height:29px}.begin-subject strong,.begin-subject small{display:block}.begin-subject strong{font:850 .84rem Manrope,sans-serif}.begin-subject small{margin-top:.14rem;color:#77857d;font-size:.7rem}.begin-subject>b{color:var(--accent)}.sidebar-diagnostic-note{margin:.25rem .55rem .7rem;color:#7b8c81;font-size:.72rem;line-height:1.5}.diagnostic-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1.35rem 0}.diagnostic-result-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:.7rem;align-items:center;padding:.85rem;border:1px solid #e3eae5;border-left:4px solid var(--accent);border-radius:15px;background:linear-gradient(120deg,var(--soft),#fff 75%);text-align:left}.diagnostic-result-card h3{margin:0;color:#304c41;font:850 .88rem Manrope,sans-serif}.diagnostic-result-card strong{display:block;margin-top:.15rem;color:var(--accent);font:900 1.13rem Manrope,sans-serif}.diagnostic-result-card strong small{font:700 .72rem 'DM Sans',sans-serif;color:#738278}.diagnostic-result-card .result-progress{grid-column:1/-1;margin:.35rem 0 0;height:6px}.diagnostic-result-card .button{grid-column:1/-1;justify-self:start;background:var(--accent);color:#fff;padding:.55rem .8rem;font-size:.75rem}.diagnostic-results{max-width:850px}.diagnostic-results .quiz-end-actions{justify-content:center}.diagnostic-results .quiz-end-actions .button-primary{background:#17545b;color:#fff}.diagnostic-quiz .quiz-topline span:first-child{color:var(--accent)}
@media(max-width:720px){.home-start-button{min-height:55px;font-size:1rem}.begin-panel{padding:1rem;border-radius:18px}.begin-panel-heading{align-items:flex-start;gap:.7rem}.begin-step-mark{width:42px;height:42px;border-radius:14px}.begin-close{width:33px;height:33px}.begin-options,.diagnostic-choice-grid,.begin-subject-grid,.diagnostic-result-grid{grid-template-columns:1fr}.begin-option{min-height:102px;padding:.9rem;grid-template-columns:46px minmax(0,1fr) 18px;gap:.7rem}.begin-option-icon{width:44px;height:44px;border-radius:14px}.begin-option-copy strong{font-size:.94rem}.begin-option-copy small{font-size:.75rem}.begin-subchoices{padding:.75rem}.begin-subchoices-heading{align-items:flex-start;flex-direction:column;gap:.2rem}.diagnostic-results{padding:1.2rem .85rem}.diagnostic-result-card{grid-template-columns:42px minmax(0,1fr)}.diagnostic-result-card .button{width:100%;justify-content:center}.diagnostic-results .quiz-end-actions .button{width:100%}}

/* Course visual refresh: make the study choices visible at first glance. */
:root{--ink:#17324d;--muted:#61758a;--navy:#143557;--navy-deep:#102b46;--canvas:#f5f6f2;--line:#e2e7e2;--gold:#f7c75f;--shadow:0 16px 42px rgba(24,48,67,.1)}
body{background:var(--canvas)}
.topbar{height:68px;padding:0 clamp(1.1rem,4vw,3.6rem);background:#fff;border-bottom-color:#e8ece7}
.brand-mark{background:#183b5b;border-radius:13px}
.topnav button,.topnav a{border-radius:999px;padding:.58rem .9rem}
.topnav button[data-view="test-review"]{background:#edf5f1;color:#246247}
main{min-height:calc(100vh - 140px)}
.home-screen{max-width:1480px;padding:0 clamp(1rem,4vw,3.6rem) 2.4rem}
.hero{grid-template-columns:minmax(0,1fr) minmax(350px,.94fr);gap:clamp(1.25rem,3vw,3rem);min-height:320px;margin:1.15rem 0 1.2rem;padding:clamp(1.35rem,2.5vw,2.2rem);border:1px solid #e7e9e2;border-radius:26px;background:#fff;color:var(--ink);box-shadow:0 9px 28px rgba(26,49,63,.055)}
.hero:after{display:none}
.hero-copy{max-width:610px;padding-left:.2rem}
.hero .eyebrow{color:#39735f;letter-spacing:.13em}
.hero h1{font-size:clamp(2.2rem,3.5vw,3.45rem);line-height:1.04;letter-spacing:-.052em;margin:.35rem 0 .8rem;color:#18334d}
.hero h1 span{color:#b35f45}
.hero-lede{max-width:520px;font-size:1rem;line-height:1.6;color:#53677a;margin:0 0 1rem}
.hero-actions{gap:1.15rem}
.hero-actions .button-light{background:#183b5b;color:#fff;border:1px solid #183b5b;border-radius:999px;padding:.76rem 1.08rem}
.hero-actions .button-light:hover{background:#245579;box-shadow:0 8px 18px rgba(23,56,82,.18)}
.hero-actions .text-button{color:#42644f;text-underline-offset:4px}
.quiet-note{margin:.8rem 0 0;color:#748575;font-size:.76rem}
.hero-art{height:276px;min-height:0;position:relative;display:block;transform:none;overflow:hidden;border-radius:20px;background:#f3eee4;box-shadow:inset 0 0 0 1px rgba(50,68,65,.06)}
.hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.home-section{margin-top:2rem}
.subjects-section{margin-top:1.45rem}
.section-heading{align-items:center;margin-bottom:.85rem}
.section-heading .eyebrow{margin-bottom:.3rem;color:#617c6b}
.section-heading h2,.review-banner h2{font-size:clamp(1.45rem,2.15vw,1.9rem);letter-spacing:-.04em}
.section-heading>p{max-width:420px;font-size:.9rem;line-height:1.55}
.subject-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}
.subject-card{position:relative;isolation:isolate;overflow:hidden;min-height:226px;padding:1.05rem 1.1rem 1rem;display:flex;flex-direction:column;align-items:stretch;border:1px solid #e2e7e4;border-top:3px solid var(--accent);border-radius:18px;background:linear-gradient(155deg,#fff 0%,#fff 68%,var(--soft) 150%);box-shadow:0 5px 16px rgba(28,54,72,.035);text-align:left;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.subject-card:before{content:"";position:absolute;z-index:-1;right:-42px;top:-58px;width:148px;height:148px;border:1px solid color-mix(in srgb,var(--accent) 16%,transparent);border-radius:50%;box-shadow:0 0 0 16px color-mix(in srgb,var(--accent) 4%,transparent),0 0 0 34px color-mix(in srgb,var(--accent) 3%,transparent)}
.subject-card:hover,.subject-card:focus-visible{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 42%,#d8e0df);box-shadow:0 15px 30px rgba(31,57,73,.11);outline:none}
.subject-card-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.82rem}
.subject-icon{width:58px;height:58px;flex:none;display:grid;place-items:center;margin:0;border-radius:17px;background:linear-gradient(145deg,var(--soft),#fff)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent)}
.subject-icon svg{width:36px;height:36px;filter:drop-shadow(0 3px 2px rgba(35,56,73,.08))}
.subject-status{padding:.37rem .57rem;border:1px solid #e8ece8;border-radius:999px;background:rgba(255,255,255,.8);color:#758578;font-size:.56rem;line-height:1;font-weight:850;letter-spacing:.08em;white-space:nowrap}
.subject-status.is-open{color:#21684e;background:#e7f4eb;border-color:#d4eadb}
.subject-card h3{max-width:100%;font-size:1rem;line-height:1.28;letter-spacing:-.025em;margin:0 0 .38rem;color:#1b354e}
.subject-card p{min-height:2.7em;margin:0 0 .9rem;color:#667989;font-size:.8rem;line-height:1.45}
.subject-card-foot{width:100%;padding-top:.68rem;border-top:1px solid #ebefeb;align-items:center;gap:.4rem;color:#647a85;font-size:.7rem;line-height:1.25}
.subject-card-foot>span:first-child{font-weight:750}
.subject-card-foot small{display:block;margin-top:.2rem;color:#87958f;font-size:.64rem;font-weight:600}
.card-enter{display:inline-flex;align-items:center;gap:.38rem;color:var(--accent);font-size:.76rem;font-weight:850;white-space:nowrap}
.card-enter b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--soft);font-size:1rem;transition:transform .18s ease}
.subject-card:hover .card-enter b{transform:translateX(2px)}
.how-section{margin-top:2.1rem}
.how-section .section-heading{margin-bottom:.75rem}
.steps-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}
.step-card{position:relative;min-height:112px;padding:.95rem 1.05rem .95rem 3.65rem;border-color:#e3e9e5;border-radius:15px;background:rgba(255,255,255,.76)}
.step-num{position:absolute;left:1rem;top:1rem;display:grid;place-items:center;width:34px;height:34px;margin:0;border-radius:11px;background:#e8f2eb;color:#39765d;font-size:.72rem}
.step-card h3{font-size:.89rem;color:#24445b;margin:0 0 .3rem}
.step-card p{font-size:.78rem;line-height:1.45}
.review-banner{margin-top:1.3rem;padding:1.15rem 1.4rem;border:0;border-radius:18px;background:linear-gradient(110deg,#1a405a,#1d5a58);color:#fff;box-shadow:0 10px 28px rgba(25,66,78,.12)}
.review-mark{width:46px;height:46px;border-radius:15px;background:rgba(255,255,255,.14);color:#ffe08a}
.review-banner .eyebrow{color:#b9dfd0}
.review-banner h2{color:#fff;font-size:1.22rem}
.review-banner p:not(.eyebrow){margin-top:.3rem;color:#dcebe5;font-size:.82rem}
.review-banner .button-light{border-radius:999px;padding:.68rem .95rem;white-space:nowrap}
.disclaimer{margin-top:1rem}
.workspace{max-width:1540px;padding-top:.8rem}
.workspace-grid{grid-template-columns:288px minmax(0,1fr);border-radius:22px;border-color:#e1e7e4;box-shadow:0 12px 38px rgba(26,49,67,.07)}
.topic-sidebar{background:#f2f5f1;border-right-color:#e1e7e2}
.sidebar-head{padding:1.25rem 1.15rem .9rem}
.sidebar-head h2{color:#1c3b52}
.topic-group-title{color:#526c62}
.topic-item{border-radius:11px}
.topic-item[aria-current="page"]{background:#e7f1ea;border-color:#c5ddcd;color:#1d5d48}
.lesson-area{padding:clamp(1.35rem,3vw,2.4rem);background:#fff}
.lesson-view{max-width:940px;margin:0 auto}
.lesson-kicker{color:#3d785f;font-size:.68rem;font-weight:850;letter-spacing:.12em}
.lesson-title{font-size:clamp(1.85rem,3.1vw,2.7rem);letter-spacing:-.045em;color:#193751}
.lesson-lede{max-width:790px;color:#536c7c}
.lesson-goal{border-left:4px solid #79ad87;border-radius:0 14px 14px 0;background:#f0f7f0;padding:1rem 1.15rem}
.lesson-goal strong{color:#276348}
.lesson-art{background:#f8f8f4;border-color:#e7e8df}
.quick-review{border-color:#e2e9e4;border-radius:15px;background:#f7f9f6}
.lesson-tools{margin-top:1.6rem;padding-top:1rem;border-top:1px solid #edf0ec}
.lesson-tools .button,.gate-start,.quiz-next{border-radius:999px;background:#1b594f;color:#fff;box-shadow:0 7px 17px rgba(25,83,72,.18)}
.quiz-view,.gate-view{max-width:1040px;margin:1.2rem auto;border-color:#e1e8e3;border-radius:24px;box-shadow:0 14px 38px rgba(26,54,71,.08)}
.quiz-view{max-width:760px;padding:clamp(1.25rem,4vw,2.4rem);background:linear-gradient(145deg,#fff,#f7faf6)}
.quiz-topline{color:#4f7766}
.quiz-label{color:#638072}
.quiz-question{color:#173750;letter-spacing:-.03em}
.quiz-choice{border-color:#e2e8e4;border-radius:14px;background:#fff}
.quiz-choice:hover{border-color:#87ad92;background:#f5faf5}
.quiz-choice.correct-answer{border-color:#55a879;background:#eaf7ef}
.feedback-card.is-correct{border-color:#c4e7cf;background:#eaf7ef;color:#235d3d}
.feedback-card.is-wrong{border-color:#f0d9c7;background:#fff6ec;color:#805431}
.info-screen{max-width:1150px;margin:auto}
.info-hero{border-radius:23px;background:linear-gradient(120deg,#183c57,#21645f)}
.info-card{border-color:#e2e8e4;border-radius:17px;box-shadow:0 5px 18px rgba(28,54,72,.035)}
@media(max-width:1100px){.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:minmax(0,1fr) minmax(300px,.85fr)}.hero-art{height:250px}.workspace-grid{grid-template-columns:250px minmax(0,1fr)}}
@media(max-width:720px){
  .topbar{min-height:62px;padding:.55rem .85rem}.brand{font-size:.8rem}.topnav{order:3;width:100%;padding-top:.35rem}.official-link{font-size:.68rem}
  .hero{display:grid;grid-template-columns:1fr;gap:.9rem;margin:.75rem 0 1.1rem;padding:1.15rem;border-radius:20px}
  .hero-copy{padding:.15rem .15rem 0}.hero h1{font-size:2.2rem;margin:.3rem 0 .55rem}.hero-lede{font-size:.9rem;margin-bottom:.8rem}.hero-actions{gap:.75rem}.quiet-note{font-size:.68rem;margin-top:.55rem}
  .hero-art{height:178px;min-height:0;margin:0;border-radius:15px}.hero-art img{object-position:62% 44%}
  .subjects-section{margin-top:1.3rem}.section-heading{gap:.35rem;margin-bottom:.7rem}.section-heading>p{font-size:.8rem}
  .subject-grid{grid-template-columns:1fr;gap:.65rem}.subject-card{display:grid;grid-template-columns:66px minmax(0,1fr);grid-template-rows:auto auto 1fr auto;column-gap:.85rem;min-height:0;padding:.85rem .9rem}
  .subject-card-top{grid-column:1;grid-row:1/5;align-self:start;flex-direction:column;justify-content:flex-start;gap:.55rem;margin:0}.subject-icon{width:54px;height:54px;border-radius:15px}.subject-icon svg{width:32px;height:32px}.subject-status{max-width:66px;padding:.34rem .35rem;font-size:.48rem;white-space:normal;text-align:center;line-height:1.2}
  .subject-card h3{grid-column:2;grid-row:1;font-size:.94rem;margin:.15rem 0 .2rem}.subject-card p{grid-column:2;grid-row:2;min-height:0;margin:0 0 .55rem;font-size:.74rem}.subject-card-foot{grid-column:2;grid-row:3;align-self:end;margin-top:0;padding-top:.5rem;font-size:.66rem}.subject-card-foot small{font-size:.6rem}
  .how-section{margin-top:1.5rem}.steps-grid{grid-template-columns:1fr;gap:.5rem}.step-card{min-height:0;padding:.72rem .8rem .72rem 3.2rem}.step-num{left:.7rem;top:.7rem;width:29px;height:29px}.step-card h3{font-size:.82rem}.step-card p{font-size:.72rem}
  .review-banner{gap:.8rem;margin-top:1rem;padding:1rem}.review-mark{width:39px;height:39px;border-radius:13px}.review-banner h2{font-size:1.05rem}.review-banner p:not(.eyebrow){font-size:.75rem}.review-banner .button{margin:.3rem 0 0 47px}
  .workspace{padding:.5rem .45rem 1.4rem}.workspace-grid{border-radius:17px}.lesson-area{padding:1rem .85rem 1.3rem}.lesson-view{padding:0}.quiz-view{padding:1.1rem .9rem;border-radius:18px}
}

/* Student workspace: an original account-level overview for the four GED paths. */
.account-link{display:inline-flex;align-items:center;gap:.3rem;padding:.52rem .78rem;border:1px solid #d8e4dc;border-radius:999px;background:#fff;color:#315e54;text-decoration:none;font-size:.76rem;font-weight:850}.account-link:hover{background:#f4f9f5}
.student-dashboard{max-width:1510px;margin:0 auto;padding:1rem clamp(.7rem,2.2vw,2rem) 2.5rem}.student-dashboard[hidden]{display:none!important}.dashboard-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:720px;border:1px solid #e1e8e1;border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 12px 34px rgba(22,55,48,.07)}
.dashboard-rail{display:flex;flex-direction:column;padding:1rem .85rem;background:#f2f6f2;border-right:1px solid #e3eae4}.dashboard-profile{display:flex;gap:.65rem;align-items:center;padding:.45rem .35rem 1.05rem;border-bottom:1px solid #dfe7df}.dashboard-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#174e5b,#387667);color:#fff;font:900 1.1rem Manrope,sans-serif;box-shadow:0 7px 15px rgba(22,74,77,.18)}.dashboard-profile strong,.dashboard-profile small{display:block}.dashboard-profile strong{color:#294d43;font:850 .77rem Manrope,sans-serif}.dashboard-profile small{margin-top:.15rem;color:#7a8b80;font-size:.65rem}
.dashboard-menu{display:grid;gap:.25rem;margin-top:1rem}.dashboard-menu button,.dashboard-menu a{display:flex;align-items:center;gap:.65rem;min-height:41px;padding:.55rem .65rem;border:0;border-radius:10px;background:transparent;color:#5d7167;text-align:left;text-decoration:none;font-size:.77rem;font-weight:750}.dashboard-menu button:hover,.dashboard-menu a:hover,.dashboard-menu .is-current{background:#deebe2;color:#205f4e}.dashboard-menu button>span:first-child,.dashboard-menu a>span:first-child{width:18px;text-align:center;font-size:1rem}.dashboard-menu a>span:last-child{margin-left:auto;font-size:.7rem}.dashboard-rail-note{display:flex;gap:.6rem;align-items:flex-start;margin-top:auto;padding:.8rem .7rem;border-radius:13px;background:#e3eee6;color:#398066}.dashboard-rail-note>span{font-size:1.1rem}.dashboard-rail-note p{margin:0;color:#62766b;font-size:.68rem;line-height:1.45}
.dashboard-main{min-width:0;padding:1rem clamp(1rem,2.4vw,2.1rem) 1.6rem;background:#fbfcfa}.dashboard-breadcrumb{display:flex;align-items:center;gap:.5rem;padding:.15rem 0 .85rem;border-bottom:1px solid #e8ede8;color:#89958c;font-size:.7rem}.dashboard-breadcrumb strong{color:#476357}.dashboard-breadcrumb a{margin-left:auto;color:#33715d;text-decoration:none;font-weight:850}.dashboard-welcome{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:178px;margin:1.15rem 0 1rem;padding:1.5rem clamp(1.2rem,3vw,2.4rem);border-radius:19px;background:linear-gradient(116deg,#174c57 0%,#236959 68%,#4d896b 100%);color:#fff;overflow:hidden}.dashboard-welcome .eyebrow{color:#b9d8c5;margin:0 0 .4rem}.dashboard-welcome h1{position:relative;z-index:1;margin:0;font:850 clamp(1.5rem,3vw,2.2rem)/1.12 Manrope,sans-serif;letter-spacing:-.045em}.dashboard-welcome p:last-child{position:relative;z-index:1;margin:.45rem 0 0;color:#deeee3;font-size:.86rem}
.welcome-orbit{position:absolute;right:clamp(1rem,5vw,4.2rem);top:50%;width:190px;height:150px;transform:translateY(-50%)}.welcome-orbit-ring{position:absolute;inset:0;border:1px solid rgba(255,255,255,.28);border-radius:50%;transform:rotate(-27deg) scaleY(.72);box-shadow:0 0 0 17px rgba(255,255,255,.04),0 0 0 34px rgba(255,255,255,.035)}.welcome-star{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:#f0ce7c;color:#285d55;font-size:1.6rem;box-shadow:0 12px 24px rgba(14,47,43,.2)}.welcome-dot{position:absolute;width:11px;height:11px;border-radius:50%;background:#cae9d6;box-shadow:0 0 0 6px rgba(255,255,255,.1)}.welcome-dot-a{top:16px;left:33px}.welcome-dot-b{right:16px;bottom:25px;width:8px;height:8px;background:#f4d890}
.dashboard-overview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:1.4rem}.dashboard-overview-stats article{display:flex;align-items:center;gap:.7rem;min-height:76px;padding:.8rem .9rem;border:1px solid #e4eae4;border-radius:14px;background:#fff}.stat-icon{width:38px;height:38px;display:grid;place-items:center;flex:none;border-radius:12px;font-size:1rem;font-weight:900}.stat-icon-courses{background:#e7f2ea;color:#347e60}.stat-icon-lessons{background:#edf0fa;color:#5b67a5}.stat-icon-diagnostics{background:#f9f1df;color:#b18531}.dashboard-overview-stats strong{display:block;color:#244b40;font:900 1.18rem Manrope,sans-serif;line-height:1.15}.dashboard-overview-stats strong small{font:800 .72rem Manrope,sans-serif;color:#71827a}.dashboard-overview-stats article div>small{display:block;margin-top:.2rem;color:#87938b;font-size:.58rem;font-weight:850;letter-spacing:.09em}
.dashboard-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.7rem}.dashboard-section-heading .eyebrow{margin:0 0 .15rem;color:#54806b;font-size:.61rem}.dashboard-section-heading h2{margin:0;color:#1e403b;font:850 1.22rem Manrope,sans-serif;letter-spacing:-.025em}.dashboard-started-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.38rem .65rem;border-radius:999px;background:#e9f4eb;color:#3a765b;font-size:.66rem;font-weight:850}.dashboard-started-pill i{width:7px;height:7px;border-radius:50%;background:#3b9a6d;box-shadow:0 0 0 3px #d1ecda}.dashboard-next-section{margin-bottom:1.35rem}.dashboard-next-card{display:grid;grid-template-columns:54px minmax(0,1fr);gap:.9rem;align-items:start;padding:1rem;border:1px solid #e2e9e3;border-left:4px solid var(--accent);border-radius:15px;background:linear-gradient(105deg,var(--soft),#fff 72%)}.dashboard-next-card .my-course-icon{width:50px;height:50px}.dashboard-next-card .course-state{font-size:.55rem}.dashboard-next-card h3{margin:.15rem 0;color:#25483e;font:850 1rem Manrope,sans-serif}.dashboard-next-card p{margin:.15rem 0 .55rem;color:#76857c;font-size:.72rem}.dashboard-next-card .button{background:#185a58;color:#fff;padding:.54rem .8rem;font-size:.74rem}.dashboard-next-empty{display:grid;grid-template-columns:46px minmax(0,1fr) max-content;gap:.6rem;align-items:center;padding:.9rem 1rem;border:1px dashed #cddbd0;border-radius:15px;background:#f7faf7}.dashboard-next-empty .dashboard-empty-icon{grid-area:1/1/3/2}.dashboard-next-empty h3{grid-area:1/2/2/3}.dashboard-next-empty p{grid-area:2/2/3/3}.dashboard-empty-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#e9f2e9;color:#428064;font-size:1.2rem}.dashboard-next-empty h3{margin:0;color:#294c40;font:850 .88rem Manrope,sans-serif}.dashboard-next-empty p{margin:.18rem 0 0;color:#74847a;font-size:.72rem;line-height:1.4}.dashboard-next-empty .button{grid-area:1/3/3/4;width:max-content;background:#185a58;color:#fff;padding:.55rem .75rem;font-size:.7rem;white-space:nowrap}
.dashboard-courses-section{scroll-margin-top:1rem}.dashboard-text-link{border:0;background:none;color:#32735d;font-size:.7rem;font-weight:850}.my-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.my-course-card{min-width:0;padding:.95rem;border:1px solid #e2e9e2;border-radius:15px;background:#fff;transition:transform .16s,border-color .16s,box-shadow .16s}.my-course-card:hover{transform:translateY(-2px);border-color:#9abca5;box-shadow:0 9px 22px rgba(28,68,54,.08)}.my-course-card.is-taking{background:linear-gradient(135deg,#fff,var(--soft) 150%)}.my-course-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.my-course-icon{width:43px;height:43px;display:grid;place-items:center;flex:none;border-radius:14px;background:var(--soft);color:var(--accent)}.my-course-icon svg{width:29px;height:29px}.course-state{display:inline-flex;align-items:center;padding:.27rem .45rem;border-radius:999px;background:#f0f3f0;color:#839087;font-size:.49rem;font-weight:900;letter-spacing:.07em}.course-state-active{background:#e3f1e6;color:#397657}.my-course-card h3{margin:.35rem 0 .25rem;color:#23463c;font:850 .92rem/1.3 Manrope,sans-serif}.my-course-card>p{min-height:36px;margin:0 0 .55rem;color:#748279;font-size:.69rem;line-height:1.45}.my-course-metrics{display:flex;justify-content:space-between;gap:.4rem;align-items:center;color:#6c7d72;font-size:.63rem}.my-course-metrics strong{color:#345b4b}.course-diagnostic-score{color:#7b887f;font-size:.6rem}.my-course-progress{height:6px;margin:.4rem 0 .6rem;border-radius:99px;background:#e9eee9;overflow:hidden}.my-course-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#e0c568));transition:width .25s}.my-course-card-foot{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.my-course-card-foot>span{min-width:0;overflow:hidden;color:#88938b;font-size:.6rem;text-overflow:ellipsis;white-space:nowrap}.my-course-card-foot button{border:0;background:none;color:var(--accent);font-size:.67rem;font-weight:900;text-align:right;white-space:nowrap}
.dashboard-account-panel{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:.8rem;align-items:center;margin-top:1.2rem;padding:1rem;border:1px solid #e5e9df;border-radius:15px;background:linear-gradient(110deg,#f7f5ed,#fff)}.account-panel-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#f1e9d5;color:#947336;font-size:1.2rem}.dashboard-account-panel .eyebrow{margin:0 0 .1rem;color:#9b824a;font-size:.56rem}.dashboard-account-panel h2{margin:0;color:#344b41;font:850 .88rem Manrope,sans-serif}.dashboard-account-panel p:not(.eyebrow){margin:.18rem 0 0;color:#7a847b;font-size:.68rem;line-height:1.45}.dashboard-account-panel .button{padding:.58rem .75rem;font-size:.68rem;white-space:nowrap}.dashboard-footnote{margin:.85rem 0 0;color:#909a91;font-size:.61rem;line-height:1.45}.dashboard-menu a:focus-visible,.dashboard-menu button:focus-visible,.account-link:focus-visible,.dashboard-text-link:focus-visible{outline:3px solid #e3b95f;outline-offset:2px}
@media(max-width:860px){.student-dashboard{padding:.65rem}.dashboard-shell{grid-template-columns:176px minmax(0,1fr)}.dashboard-rail{padding:.8rem .65rem}.dashboard-menu button,.dashboard-menu a{font-size:.7rem}.dashboard-main{padding:1rem}.welcome-orbit{right:1rem;transform:translateY(-50%) scale(.8)}.dashboard-welcome{padding:1.2rem}.my-course-grid{gap:.6rem}.my-course-card{padding:.8rem}}
@media(max-width:720px){.account-link{margin-left:auto;padding:.42rem .63rem;font-size:.7rem}.topnav{order:3;width:100%;margin:0;justify-content:center;flex-wrap:wrap;border-top:1px solid #eef1ed;padding:.3rem 0 0}.topnav button,.topnav a{font-size:.72rem;padding:.4rem .57rem}.student-dashboard{padding:.45rem}.dashboard-shell{display:flex;flex-direction:column;border-radius:17px}.dashboard-rail{min-height:0;padding:.65rem .7rem;border-right:0;border-bottom:1px solid #e3eae4}.dashboard-profile{padding:.15rem .1rem .6rem}.dashboard-avatar{width:35px;height:35px;border-radius:12px}.dashboard-menu{display:flex;gap:.25rem;overflow-x:auto;margin:.5rem 0 0;padding-bottom:.15rem}.dashboard-menu button,.dashboard-menu a{flex:none;min-height:36px;padding:.45rem .57rem;font-size:.68rem;white-space:nowrap}.dashboard-rail-note{display:none}.dashboard-main{padding:.75rem .7rem 1rem}.dashboard-breadcrumb{font-size:.62rem;padding-bottom:.65rem}.dashboard-welcome{min-height:150px;padding:1rem;border-radius:15px}.dashboard-welcome h1{max-width:260px;font-size:1.45rem}.dashboard-welcome p:last-child{max-width:260px;font-size:.75rem}.welcome-orbit{right:-1.1rem;opacity:.7;transform:translateY(-50%) scale(.68)}.dashboard-overview-stats{gap:.4rem;margin-bottom:1.15rem}.dashboard-overview-stats article{min-height:68px;gap:.42rem;padding:.55rem .48rem}.stat-icon{width:30px;height:30px;border-radius:10px;font-size:.85rem}.dashboard-overview-stats strong{font-size:.98rem}.dashboard-overview-stats article div>small{font-size:.46rem;letter-spacing:.045em}.dashboard-section-heading h2{font-size:1.05rem}.dashboard-started-pill{font-size:.55rem;padding:.32rem .5rem}.dashboard-next-card{grid-template-columns:42px minmax(0,1fr);gap:.62rem;padding:.75rem}.dashboard-next-card .my-course-icon{width:40px;height:40px;border-radius:12px}.dashboard-next-card .course-state{font-size:.47rem}.dashboard-next-card h3{font-size:.85rem}.dashboard-next-card p{font-size:.65rem}.dashboard-next-card .button{font-size:.68rem}.dashboard-next-empty{grid-template-columns:38px minmax(0,1fr);padding:.75rem}.dashboard-next-empty .button{grid-area:3/2/4/3;justify-self:start;margin-top:.2rem}.dashboard-empty-icon{width:34px;height:34px}.dashboard-next-empty p{grid-column:2;font-size:.67rem}.dashboard-text-link{font-size:.6rem}.my-course-grid{grid-template-columns:1fr;gap:.55rem}.my-course-card{padding:.8rem}.my-course-card>p{min-height:0;font-size:.7rem}.my-course-card h3{font-size:.88rem}.my-course-card-foot button{font-size:.66rem}.dashboard-account-panel{grid-template-columns:38px minmax(0,1fr);gap:.55rem;padding:.75rem}.account-panel-icon{width:36px;height:36px;border-radius:12px}.dashboard-account-panel .button{grid-column:2;justify-self:start;margin-top:.3rem}.dashboard-account-panel p:not(.eyebrow){font-size:.65rem}.dashboard-footnote{font-size:.57rem}}
@media(prefers-reduced-motion:reduce){.subject-card,.card-enter b{transition:none}}

/* Colorful GED launch screen: one obvious starting action and three useful destinations. */
.topbar{justify-content:space-between;gap:1rem}
.topbar-links{display:flex;align-items:center;gap:1rem}
.launch-screen{max-width:none;padding:1rem clamp(.8rem,2.2vw,2rem) 2rem;background:#f4f7f5}
.launch-layout{display:grid;grid-template-columns:196px minmax(0,1fr);min-height:720px;border:1px solid #dfe7e3;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 9px 28px rgba(30,61,54,.07)}
.launch-rail{display:flex;flex-direction:column;padding:1rem .72rem;background:#354a55;color:#fff}
.launch-profile{display:flex;align-items:center;gap:.65rem;padding:.35rem .25rem .95rem;border-bottom:1px solid rgba(255,255,255,.16)}
.launch-avatar{display:grid;place-items:center;width:42px;height:42px;flex:none;border:2px solid rgba(255,255,255,.72);border-radius:14px;background:#e9f3ed;color:#315a4a;font:900 1.15rem Manrope,sans-serif}
.launch-profile strong,.launch-profile small{display:block}.launch-profile strong{font:850 .82rem Manrope,sans-serif}.launch-profile small{margin-top:.12rem;color:#c1d0d3;font-size:.64rem}
.launch-menu{display:grid;gap:.2rem;margin-top:.8rem}
.launch-menu button,.launch-menu a{display:flex;align-items:center;gap:.6rem;min-height:41px;padding:.52rem .6rem;border:0;border-radius:9px;background:transparent;color:#e0e9e8;text-align:left;text-decoration:none;font-size:.74rem;font-weight:700}
.launch-menu button:hover,.launch-menu a:hover{background:rgba(255,255,255,.1);color:#fff}
.launch-menu .is-current{background:#fff;color:#315965}
.launch-menu button>span:first-child,.launch-menu a>span:first-child{width:19px;text-align:center;font-size:1rem}
.launch-menu a>span:last-child{margin-left:auto;font-size:.68rem}
.launch-rail-note{display:flex;align-items:flex-start;gap:.5rem;margin-top:auto;padding:.7rem .6rem;border-radius:11px;background:rgba(255,255,255,.1);color:#f4d68a}
.launch-rail-note>span{font-size:1.1rem}.launch-rail-note p{margin:0;color:#e6eeee;font-size:.66rem;line-height:1.4}
.launch-main{min-width:0;padding:1rem clamp(.85rem,2vw,1.6rem) 1.35rem;background:#fff}
.launch-breadcrumb{display:flex;align-items:center;gap:.5rem;padding:.1rem 0 .7rem;border-bottom:1px solid #e6ece8;color:#87958d;font-size:.68rem}
.launch-breadcrumb strong{color:#43685b}
.launch-welcome{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:138px;margin:.9rem 0 1rem;padding:1.2rem clamp(1rem,2.8vw,2rem);border-radius:16px;background:linear-gradient(112deg,#075e69 0%,#117e7b 52%,#54a46f 100%);color:#fff;overflow:hidden}
.launch-welcome .eyebrow{margin:0 0 .35rem;color:#c1ece0;font-size:.61rem}
.launch-welcome h1{position:relative;z-index:1;margin:0;font:850 clamp(1.45rem,2.6vw,2.15rem)/1.15 Manrope,sans-serif;letter-spacing:-.04em}
.launch-welcome p:last-child{position:relative;z-index:1;margin:.35rem 0 0;color:#e4f6ee;font-size:.79rem}
.launch-welcome-art{position:absolute;right:clamp(1rem,5vw,4rem);top:50%;width:128px;height:100px;transform:translateY(-50%)}
.launch-art-orbit{position:absolute;inset:7px;border:1px solid rgba(255,255,255,.35);border-radius:50%;transform:rotate(-25deg) scaleY(.72);box-shadow:0 0 0 12px rgba(255,255,255,.07),0 0 0 24px rgba(255,255,255,.045)}
.launch-art-star{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:#ffd36a;color:#26636a;font-size:1.35rem;transform:translate(-50%,-50%);box-shadow:0 9px 18px rgba(13,57,56,.2)}
.launch-art-dot{position:absolute;top:5px;right:18px;width:9px;height:9px;border-radius:50%;background:#d8f4e2;box-shadow:0 0 0 5px rgba(255,255,255,.12)}
.launch-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:.15rem 0 .65rem}
.launch-heading .eyebrow{margin:0 0 .1rem;color:#578475;font-size:.57rem}
.launch-heading h2{margin:0;color:#243f49;font:850 1.12rem Manrope,sans-serif;letter-spacing:-.025em}
.launch-heading>p{margin:0;color:#788780;font-size:.68rem}
.launch-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.launch-card{--card-accent:#4caa71;position:relative;display:grid;grid-template-columns:66px minmax(0,1fr);grid-template-rows:1fr auto;column-gap:.75rem;min-height:158px;padding:.85rem .95rem .8rem;border:1px solid #e0e8e3;border-top:4px solid var(--card-accent);border-radius:12px;background:#fff;box-shadow:0 3px 9px rgba(27,55,48,.05);transition:transform .16s,box-shadow .16s}
.launch-card:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(31,63,53,.1)}
.launch-card-learning{--card-accent:#54b91b}.launch-card-diagnostic{--card-accent:#f39419}.launch-card-progress{--card-accent:#27a7dc}.launch-card-tools{--card-accent:#985fe0}
.launch-card-icon{grid-row:1/3;align-self:center;display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:color-mix(in srgb,var(--card-accent) 12%,#fff)}
.launch-card-icon svg{width:53px;height:53px;color:var(--card-accent)}
.launch-card-copy{min-width:0;align-self:end}
.launch-card-kicker{display:block;margin:0 0 .15rem;color:var(--card-accent);font-size:.54rem;font-weight:900;letter-spacing:.055em;line-height:1.3}
.launch-card h3{margin:0;color:var(--card-accent);font:850 1rem/1.2 Manrope,sans-serif}
.launch-card-copy p{margin:.24rem 0 .5rem;color:#677780;font-size:.69rem;line-height:1.4}
.launch-card-action{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;justify-self:start;grid-column:2;min-height:31px;padding:.44rem .78rem;border:0;border-radius:5px;background:var(--card-accent);color:#fff;text-decoration:none;font-size:.66rem;font-weight:850;line-height:1.2;transition:filter .15s,transform .15s}
.launch-card-action:hover{filter:brightness(.94);transform:translateY(-1px)}
.launch-card-action:focus-visible,.launch-menu button:focus-visible,.launch-menu a:focus-visible{outline:3px solid #f0c75d;outline-offset:2px}
.launch-card-actions{display:flex;grid-column:2;align-items:center;gap:.6rem;flex-wrap:wrap}
.launch-card-secondary{border:0;background:none;color:#7651a8;font-size:.65rem;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.launch-score-strip{display:grid;grid-template-columns:minmax(145px,.75fr) minmax(0,2.5fr) auto;align-items:center;gap:.8rem;margin:1rem 0;padding:.75rem .85rem;border:1px solid #e1e9e4;border-radius:11px;background:#f8faf8}
.launch-score-intro strong,.launch-score-intro span{display:block}.launch-score-intro strong{color:#274b44;font:850 .75rem Manrope,sans-serif}.launch-score-intro span{margin-top:.12rem;color:#74837d;font-size:.59rem;line-height:1.35}
.launch-score-bands{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.3rem}
.launch-score-bands>span{display:block;padding:.35rem .45rem;border-radius:6px;background:#edf1f2;color:#52636a;line-height:1.15}
.launch-score-bands b,.launch-score-bands small{display:block}.launch-score-bands b{font-size:.62rem}.launch-score-bands small{margin-top:.14rem;font-size:.49rem}
.launch-score-bands .score-band-below{background:#eaf0f2;color:#516874}.launch-score-bands .score-band-pass{background:#e3f5e9;color:#277445}.launch-score-bands .score-band-ready{background:#e1f3fb;color:#267093}.launch-score-bands .score-band-credit{background:#f2e9fb;color:#7651a3}
.launch-score-strip>a{color:#39807b;font-size:.59rem;font-weight:800;text-decoration:none;white-space:nowrap}.launch-score-strip>a:hover{text-decoration:underline}
.launch-courses{margin-top:1rem}.launch-courses .section-heading{margin-bottom:.55rem}.launch-courses .section-heading .eyebrow{margin-bottom:.12rem;font-size:.57rem}.launch-courses .section-heading h2{font-size:1.05rem}.launch-courses .section-heading>p{font-size:.66rem}
.launch-courses .subject-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}
.launch-courses .subject-card{min-height:170px;padding:.8rem;border-radius:12px;box-shadow:0 3px 9px rgba(28,51,82,.035)}
.launch-courses .subject-card h3{font-size:.79rem}.launch-courses .subject-card p{min-height:2.6em;margin-bottom:.55rem;font-size:.64rem}.launch-courses .subject-icon{width:43px;height:43px;margin-bottom:.55rem;border-radius:13px}.launch-courses .subject-icon svg{width:28px;height:28px}.launch-courses .subject-status{font-size:.48rem}.launch-courses .subject-card-foot{padding-top:.45rem;font-size:.58rem}.launch-courses .subject-card-foot small{font-size:.52rem}.launch-courses .card-enter{font-size:.61rem}.launch-courses .card-enter b{width:21px;height:21px}
.launch-screen .begin-panel{margin:1rem 0;padding:1rem;border:1px solid #dce7e1;border-top:4px solid #45a780;border-radius:14px;background:linear-gradient(135deg,#f4faf5,#fff 75%);box-shadow:0 5px 16px rgba(30,75,55,.07)}
.launch-screen .begin-panel-heading h2{color:#244c43}.launch-screen .begin-option{border-radius:11px}.launch-screen .begin-option-diagnostic{border-left:4px solid #f39419}.launch-screen .begin-option-lessons{border-left:4px solid #54b91b}
.launch-disclaimer{margin:.65rem 0 0;color:#7b8983;font-size:.59rem}
@media(max-width:1050px){.launch-layout{grid-template-columns:170px minmax(0,1fr)}.launch-rail{padding:.85rem .55rem}.launch-courses .subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.launch-card{min-height:166px}}
@media(max-width:720px){.topbar{height:auto;min-height:62px;padding:.55rem .85rem}.topbar-links{gap:.4rem}.official-link{font-size:.65rem}.launch-screen{padding:.55rem}.launch-layout{display:flex;flex-direction:column;border-radius:15px}.launch-rail{padding:.55rem .65rem;border-bottom:1px solid #dfe7e3}.launch-profile{padding:.1rem .1rem .45rem;border-bottom:0}.launch-avatar{width:34px;height:34px;border-radius:11px}.launch-menu{display:flex;gap:.2rem;overflow-x:auto;margin:.2rem 0 0;padding:0 0 .2rem}.launch-menu button,.launch-menu a{flex:none;min-height:35px;padding:.4rem .5rem;font-size:.63rem;white-space:nowrap}.launch-rail-note{display:none}.launch-main{padding:.65rem .6rem .9rem}.launch-breadcrumb{font-size:.59rem;padding-bottom:.5rem}.launch-welcome{min-height:116px;margin:.65rem 0 .8rem;padding:.85rem 1rem;border-radius:13px}.launch-welcome h1{max-width:260px;font-size:1.35rem}.launch-welcome p:last-child{max-width:275px;font-size:.67rem}.launch-welcome .eyebrow{font-size:.52rem}.launch-welcome-art{right:-.5rem;opacity:.72;transform:translateY(-50%) scale(.72)}.launch-heading{align-items:flex-start;flex-direction:column;gap:.2rem;margin-bottom:.5rem}.launch-heading h2{font-size:.98rem}.launch-heading>p{font-size:.61rem}.launch-card-grid{grid-template-columns:1fr;gap:.48rem}.launch-card{grid-template-columns:49px minmax(0,1fr);grid-template-rows:auto auto;column-gap:.6rem;min-height:0;padding:.62rem .68rem;border-top-width:3px}.launch-card-icon{grid-row:1/3;width:46px;height:46px;border-radius:13px}.launch-card-icon svg{width:40px;height:40px}.launch-card-kicker{font-size:.48rem}.launch-card h3{font-size:.83rem}.launch-card-copy p{margin:.16rem 0 .35rem;font-size:.61rem}.launch-card-action{min-height:28px;padding:.35rem .62rem;font-size:.59rem}.launch-card-actions{gap:.45rem}.launch-card-secondary{font-size:.58rem}.launch-score-strip{grid-template-columns:1fr;gap:.45rem;margin:.7rem 0;padding:.6rem}.launch-score-intro strong{font-size:.68rem}.launch-score-intro span{font-size:.54rem}.launch-score-bands{gap:.22rem}.launch-score-bands>span{padding:.3rem .27rem}.launch-score-bands b{font-size:.54rem}.launch-score-bands small{font-size:.44rem}.launch-score-strip>a{font-size:.54rem}.launch-courses{margin-top:.7rem}.launch-courses .section-heading{align-items:flex-start;flex-direction:column;gap:.15rem}.launch-courses .section-heading h2{font-size:.94rem}.launch-courses .section-heading>p{font-size:.59rem}.launch-courses .subject-grid{grid-template-columns:1fr;gap:.42rem}.launch-courses .subject-card{display:grid;grid-template-columns:49px minmax(0,1fr);grid-template-rows:auto auto 1fr auto;column-gap:.65rem;min-height:0;padding:.65rem}.launch-courses .subject-card-top{grid-column:1;grid-row:1/5;gap:.4rem}.launch-courses .subject-icon{width:43px;height:43px}.launch-courses .subject-status{max-width:50px;padding:.25rem .28rem;font-size:.42rem}.launch-courses .subject-card h3{grid-column:2;grid-row:1;font-size:.72rem;margin:.1rem 0 .15rem}.launch-courses .subject-card p{grid-column:2;grid-row:2;min-height:0;margin:0 0 .25rem;font-size:.57rem}.launch-courses .subject-card-foot{grid-column:2;grid-row:3;padding-top:.25rem;font-size:.53rem}.launch-courses .subject-card-foot small{font-size:.48rem}.launch-courses .card-enter{font-size:.55rem}.launch-disclaimer{font-size:.52rem}}

/* Interactive score map and subject dashboards. */
.home-screen{padding-bottom:2.8rem}
.home-intro{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.35rem clamp(1rem,3vw,2.2rem) 1rem}
.home-intro .eyebrow{margin-bottom:.25rem;color:#39735f}
.home-intro h1{margin:0;color:#173950;font:850 clamp(1.85rem,3.2vw,2.75rem)/1.12 Manrope,sans-serif;letter-spacing:-.045em}
.home-intro p:last-child{margin:.35rem 0 0;color:#607486}
.home-start-button{flex:none;border-radius:999px;background:#174e5b;color:#fff;box-shadow:0 7px 16px rgba(16,72,84,.14)}
.home-start-button:hover{background:#126477}
.score-map{overflow:hidden;border:1px solid #d7e4e2;border-radius:24px;background:#fff;box-shadow:0 12px 34px rgba(20,57,65,.065)}
.score-map-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem clamp(1rem,2.4vw,1.8rem);background:linear-gradient(115deg,#0e5261,#176b72);color:#fff}
.score-map-heading .eyebrow{margin:0 0 .25rem;color:#b9e2dc}
.score-map-heading h2{margin:0;font:850 clamp(1.25rem,2.4vw,1.8rem)/1.18 Manrope,sans-serif;letter-spacing:-.03em}
.score-map-heading p:last-child{margin:.25rem 0 0;color:#d1e8e4;font-size:.88rem}
.score-map-heading>a{flex:none;padding:.58rem .8rem;border:1px solid rgba(255,255,255,.35);border-radius:999px;color:#fff;text-decoration:none;font-size:.78rem;font-weight:800}
.score-map-heading>a:hover{background:rgba(255,255,255,.13)}
.score-map-grid{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(290px,.87fr);gap:clamp(1rem,2.5vw,2rem);padding:1.15rem clamp(1rem,2.4vw,1.8rem) 1.35rem}
.score-levels{display:grid;gap:.48rem;align-content:start}
.score-level{--band:#328092;display:grid;grid-template-columns:42px minmax(92px,.44fr) minmax(0,1fr) 16px;align-items:center;gap:.75rem;min-height:54px;padding:.48rem .85rem;border:1px solid color-mix(in srgb,var(--band) 18%,#e3ecea);border-radius:13px;background:linear-gradient(100deg,color-mix(in srgb,var(--band) 11%,#fff),#fff 70%);color:#213b49;text-align:left;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.score-level:hover,.score-level:focus-visible{transform:translateX(3px);border-color:var(--band);box-shadow:0 6px 15px rgba(19,70,79,.09);outline:none}
.score-level.is-selected{border-color:var(--band);box-shadow:inset 4px 0 var(--band),0 5px 14px rgba(19,70,79,.07)}
.score-level[data-score-band="below"]{--band:#758997}.score-level[data-score-band="pass"]{--band:#238773}.score-level[data-score-band="college"]{--band:#187083}.score-level[data-score-band="credit"]{--band:#9c7338}
.score-level-icon{width:37px;height:37px;display:grid;place-items:center;border:1.5px solid var(--band);border-radius:50%;background:#fff;color:var(--band);font-size:1.35rem;font-weight:900}
.score-level-range{font:900 clamp(.95rem,1.7vw,1.2rem)/1 Manrope,sans-serif;color:#155265;white-space:nowrap}
.score-level-name{font-weight:800;font-size:.9rem}
.score-chevron{justify-self:end;color:var(--band);font-size:1.35rem;line-height:1}
.score-explainer{display:flex;gap:.55rem;align-items:baseline;margin-top:.2rem;padding:.76rem .9rem;border-left:4px solid #167180;border-radius:0 12px 12px 0;background:#eff7f5;color:#395563;font-size:.81rem;line-height:1.45}
.score-explainer strong{flex:none;color:#145264}
.score-visual{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:1.2rem 1.25rem;border:1px solid #e2ebe7;border-radius:18px;background:radial-gradient(circle at 94% 8%,#d9ece5 0,transparent 31%),linear-gradient(145deg,#f6f8f3,#edf4f1)}
.score-visual-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:1.45rem}
.score-visual-label{color:#587766;font-size:.62rem;font-weight:900;letter-spacing:.13em}
.score-visual-number{color:#153f50;font:850 1.22rem Manrope,sans-serif}.score-visual-number i{color:#90a99d;font-style:normal}
.score-ruler{display:flex;height:21px;overflow:hidden;border:3px solid #fff;border-radius:999px;box-shadow:0 3px 9px rgba(25,63,71,.12)}
.score-ruler>span{display:block}.score-ruler-below{width:44%;background:linear-gradient(90deg,#bac8c9,#83989e)}.score-ruler-pass{width:20%;background:linear-gradient(90deg,#65ae92,#238773)}.score-ruler-college{width:10%;background:#19738a}.score-ruler-credit{flex:1;background:linear-gradient(90deg,#348999,#d0a251)}
.score-ruler-marker{position:absolute;left:44%;height:31px;width:3px;margin-top:-8px;background:#153d4e;box-shadow:0 0 0 3px #fff;border-radius:3px}
.score-ruler-labels{display:flex;justify-content:space-between;margin:.42rem 0 1.05rem;color:#71837d;font-size:.64rem;font-weight:800}
.credential-note{display:flex;align-items:center;gap:.8rem;padding:.85rem .9rem;border:1px solid #b9d8d0;border-radius:14px;background:rgba(255,255,255,.76)}
.credential-seal{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:50%;background:#126c78;color:#fff;font-size:1.45rem;font-weight:900;box-shadow:0 0 0 5px #e0efeb}
.credential-note p{margin:0;color:#425a60;font-size:.78rem;line-height:1.48}.credential-note strong{color:#135468;font-size:.82rem}.credential-note em{font-style:normal;font-weight:850;color:#145f5d}
.score-disclaimer{margin:.65rem 0 0;color:#7a8983;font-size:.66rem;line-height:1.45}
.subjects-section{margin-top:1.65rem}.subject-card{min-height:250px}
.subject-card .subject-card-top{grid-column:1/-1}.subject-card .subject-card-foot{width:100%;gap:.5rem}.subject-card-foot>span:first-child{display:grid;gap:.14rem}.subject-card-foot small{font-size:.63rem;font-weight:650}
.subject-progress{height:6px;overflow:hidden;margin:.1rem 0 .2rem;border-radius:99px;background:#e9efeb}.subject-progress span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .25s ease}
.subject-progress-label{font-size:.65rem;color:#75837c;font-weight:700}
.workspace-top{align-items:center;justify-content:space-between}.workspace-top .breadcrumb{margin-left:auto}
.subject-dashboard{max-width:1040px;margin:0 auto}
.dashboard-heading{display:grid;grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:1rem;padding:1.35rem clamp(1rem,2vw,1.6rem);border-radius:18px;background:linear-gradient(115deg,#eff6f1,#f7f5eb);border:1px solid #e1e9e0}
.dashboard-heading .eyebrow{margin:0 0 .28rem;color:#39735f}.dashboard-heading h1{margin:0;color:#173950;font:850 clamp(1.65rem,3vw,2.45rem)/1.12 Manrope,sans-serif;letter-spacing:-.045em}.dashboard-heading p:last-child{margin:.42rem 0 0;color:#5c7180;font-size:.9rem;line-height:1.55}
.dashboard-art{width:145px;height:108px;overflow:hidden;border-radius:15px;background:#f3ede2}.dashboard-art img{width:100%;height:100%;object-fit:cover;object-position:66% 50%}
.dashboard-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;margin:1rem 0}
.dashboard-actions .button{background:#17545b;color:#fff;border-radius:999px}.dashboard-actions .button-outline{border:1px solid #cbd9d2;background:#fff;color:#315d56;box-shadow:none}
.dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1rem 0}
.dashboard-stat{padding:.9rem 1rem;border:1px solid #e2e9e4;border-radius:14px;background:#fff}.dashboard-stat strong{display:block;color:#174c5c;font:900 1.55rem/1.1 Manrope,sans-serif}.dashboard-stat span{display:block;margin-top:.25rem;color:#6c7d78;font-size:.7rem;font-weight:750}
.dashboard-progress{margin:1rem 0;padding:1rem 1.1rem;border-radius:15px;background:#f3f7f3;border:1px solid #e1e9e0}.dashboard-progress-top{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.55rem;color:#36565a;font-size:.76rem;font-weight:800}.dashboard-progress-track{height:9px;overflow:hidden;border-radius:99px;background:#e0e9e2}.dashboard-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#28766c,#a5bd69);transition:width .3s ease}
.dashboard-sections{margin:1.15rem 0}.dashboard-sections h2{margin:0 0 .25rem;color:#203c4b;font:850 1.1rem Manrope,sans-serif}.dashboard-sections>p{margin:0 0 .7rem;color:#718078;font-size:.76rem}.dashboard-section-list{display:grid;gap:.5rem}.dashboard-section{display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:.7rem;width:100%;padding:.75rem .85rem;border:1px solid #e2e9e4;border-radius:13px;background:#fff;text-align:left;color:#34505a;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.dashboard-section:hover:not(:disabled){transform:translateY(-1px);border-color:#8ab6a5;box-shadow:0 5px 13px rgba(30,71,63,.08)}.dashboard-section:disabled{cursor:not-allowed;opacity:.68;background:#f8f9f7}.dashboard-section-mark{width:33px;height:33px;display:grid;place-items:center;border-radius:11px;background:#eaf2ec;color:#347968;font-weight:900}.dashboard-section strong{display:block;font-size:.8rem}.dashboard-section small{display:block;margin-top:.12rem;color:#7b8981;font-size:.65rem}.dashboard-section-state{font-size:.65rem;color:#54776d;font-weight:850;white-space:nowrap}
.dashboard-footnote{padding:.72rem .9rem;border-left:3px solid #9bb8a1;background:#f5f7f2;color:#76817a;font-size:.7rem;line-height:1.5}
.topic-nav{padding-top:.15rem}.topic-group{border-bottom:1px solid #e4eae5;padding:.12rem .05rem .38rem}.topic-group-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;width:100%;padding:.62rem .58rem;border:0;border-radius:10px;background:transparent;color:#294955;text-align:left}.topic-group-toggle:hover,.topic-group-toggle[aria-expanded="true"]{background:#e8f1eb}.topic-group-name{font-size:.76rem;font-weight:850;line-height:1.28}.topic-group-meta{display:block;margin-top:.18rem;color:#76877f;font-size:.58rem;font-weight:700;letter-spacing:.03em}.topic-group-chevron{color:#357664;font-size:1.1rem;transition:transform .16s ease}.topic-group-toggle[aria-expanded="true"] .topic-group-chevron{transform:rotate(90deg)}.topic-group-items{padding:.1rem .15rem .25rem .42rem}.topic-group-items[hidden]{display:none}.topic-group .locked-group-note{margin:.35rem .5rem .25rem}.topic-group .topic-item{font-size:.75rem;padding:.52rem .58rem}.foundation-nav-button{width:100%;margin:.15rem 0 .5rem;padding:.72rem .78rem;border:1px solid #cde2d8;border-radius:12px;background:#f2f8f3;color:#205d4c;text-align:left;font-size:.76rem;font-weight:850}.foundation-nav-button:hover{background:#e7f3e9}
.lesson-visual{position:relative;overflow:hidden;margin:1.1rem 0 1.55rem;padding:1rem 1.1rem 1.05rem;border:1px solid #dce8e3;border-radius:18px;background:radial-gradient(circle at 92% 3%,#e1f0e8,transparent 30%),linear-gradient(145deg,#f5f8f3,#fbfbf8)}
.lesson-visual-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.55rem}.lesson-visual-header strong{color:#315c58;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.lesson-visual-header span{color:#87968c;font-size:.62rem;font-weight:750}.lesson-visual svg{display:block;width:100%;height:auto;max-height:255px;margin:0 auto}.lesson-visual figcaption{margin:.5rem 0 0;color:#74837b;font-size:.68rem;line-height:1.45}.lesson-visual .diagram-label{font:700 13px 'DM Sans',Arial,sans-serif;fill:#42616a}.lesson-visual .diagram-title{font:800 16px Manrope,Arial,sans-serif;fill:#183f50}.lesson-visual .diagram-line{stroke:#79a99a;stroke-width:2.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.lesson-visual .diagram-dash{stroke:#9ab9ad;stroke-width:2;stroke-dasharray:5 5;fill:none}.lesson-visual .diagram-node{fill:#fff;stroke:#6a9f91;stroke-width:2}.lesson-visual .diagram-accent{fill:#dcefe5;stroke:#6a9f91;stroke-width:2}.lesson-visual .diagram-gold{fill:#fbefcf;stroke:#c49b47;stroke-width:2}
.subject-card-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem}
.subject-card-foot>span:first-child{min-width:0;overflow-wrap:anywhere}
.card-enter{gap:.25rem;font-size:.7rem}
.card-enter b{width:22px;height:22px;flex:none}
.subject-card-foot{grid-template-columns:minmax(0,1fr) max-content;column-gap:.35rem}
.subject-card .card-enter{width:auto;height:auto;min-width:max-content;padding:0;background:none;justify-content:flex-end}

/* Mobile course header keeps its wrapped navigation from overlapping the home content. */
@media(max-width:720px){.topbar{height:auto}}

/* Responsive score map, learning dashboard, and topic diagrams. */
.score-ruler{position:relative}
.lesson-visual img{display:block;width:min(100%,760px);max-height:430px;object-fit:contain;margin:0 auto;border-radius:12px}
.dashboard-stat strong small{display:inline;color:#7c8d83;font:750 .72rem 'DM Sans',Arial,sans-serif}
.topic-group-toggle:disabled{opacity:.62;cursor:not-allowed}
.score-level:focus-visible,.dashboard-section:focus-visible,.topic-group-toggle:focus-visible,.foundation-nav-button:focus-visible{outline:3px solid #e3b95f;outline-offset:2px}
@media(max-width:960px){.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.score-map-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.85fr)}.dashboard-heading{grid-template-columns:minmax(0,1fr) 120px}.dashboard-art{width:120px;height:98px}}
@media(max-width:720px){
  .home-intro{display:block;padding:1.35rem 0 1.05rem}.home-intro h1{max-width:none;font-size:clamp(2rem,9vw,2.8rem)}.home-start-button{width:100%;margin-top:.85rem}
  .score-map{padding:0;border-radius:18px}.score-map-heading{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:.65rem;padding:1rem}.score-map-heading h2{font-size:1.28rem}.score-map-heading>a{justify-self:start;font-size:.68rem;white-space:nowrap}.score-map-grid{grid-template-columns:1fr;gap:.75rem;padding:1rem}.score-levels{gap:.3rem}.score-level{grid-template-columns:34px minmax(80px,.72fr) minmax(0,1fr) 14px;gap:.45rem;padding:.52rem .58rem}.score-level-icon{width:32px;height:32px}.score-level-range{font-size:.91rem}.score-level-name{font-size:.73rem}.score-explainer{font-size:.73rem;padding:.65rem .72rem}.score-visual{padding:.9rem 1rem}.score-visual-top{margin-bottom:1rem}.score-visual-number{white-space:nowrap;font-size:1.05rem}.score-ruler-labels{font-size:.57rem}.credential-note{padding:.7rem}.credential-note p{font-size:.72rem}
  .subject-grid{grid-template-columns:1fr;gap:.65rem}.subject-card{min-height:0;padding:.9rem 1rem}.subject-card-top{margin-bottom:.5rem}.subject-icon{width:48px;height:48px}.subject-icon svg{width:31px;height:31px}.subject-card p{min-height:0;margin-bottom:.65rem}.subject-card-foot{padding-top:.55rem}.subjects-section{margin-top:1.2rem}.section-heading{gap:.5rem}.section-heading>p{font-size:.77rem}
  .dashboard-heading{grid-template-columns:minmax(0,1fr);padding:1rem}.dashboard-art{display:none}.dashboard-heading h1{font-size:1.8rem}.dashboard-heading p:last-child{font-size:.8rem}.dashboard-actions{align-items:stretch}.dashboard-actions .button{width:100%;font-size:.78rem}.dashboard-stats{gap:.4rem}.dashboard-stat{padding:.7rem .55rem}.dashboard-stat strong{font-size:1.22rem}.dashboard-stat span{font-size:.57rem}.dashboard-progress{padding:.8rem}.dashboard-section{grid-template-columns:31px minmax(0,1fr);gap:.55rem;padding:.68rem}.dashboard-section-state{grid-column:2;font-size:.62rem}.dashboard-section-mark{width:30px;height:30px}.dashboard-section strong{font-size:.75rem}
  .lesson-visual{padding:.75rem;margin:.8rem 0 1rem}.lesson-visual-header{align-items:flex-start;flex-direction:column;gap:.12rem}.lesson-visual svg{max-height:none}.lesson-visual .diagram-label{font-size:15px}.lesson-visual .diagram-title{font-size:17px}.lesson-visual figcaption{font-size:.62rem}
  .topic-nav:not(.path-mode){display:block;max-height:270px;overflow-y:auto;overflow-x:hidden;padding:.35rem .7rem .7rem}.topic-nav:not(.path-mode) .topic-group{display:block;min-width:0}.topic-nav:not(.path-mode) .topic-group-toggle{width:100%;padding:.58rem .48rem}.topic-nav:not(.path-mode) .topic-group-items{padding-left:.45rem}.topic-group-name{font-size:.72rem}.topic-group-meta{font-size:.53rem}.topic-group .topic-item{font-size:.71rem}
}

/* GED home refresh: a clear start action, four colorful subject doors, then study tools. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.launch-welcome{min-height:204px;margin:1rem 0 1.35rem;padding:1.35rem clamp(1.1rem,3vw,2.1rem);background:linear-gradient(112deg,#064f67 0%,#087d8c 53%,#39a76f 100%);box-shadow:0 13px 28px rgba(8,89,98,.16)}
.launch-welcome-copy{position:relative;z-index:2;max-width:670px}
.launch-welcome h1{max-width:620px;font-size:clamp(1.8rem,3.2vw,2.55rem)}
.launch-welcome p:last-child{font-size:.88rem}
.launch-welcome-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;margin-top:.9rem}
.launch-begin-button,.launch-diagnostic-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:43px;padding:.7rem 1.05rem;border:0;border-radius:9px;font:850 .77rem Manrope,sans-serif;text-decoration:none;cursor:pointer;transition:transform .16s,filter .16s,box-shadow .16s}
.launch-begin-button{background:#ffd15d;color:#354444;box-shadow:0 5px 13px rgba(0,35,47,.2)}
.launch-begin-button:hover{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 8px 18px rgba(0,35,47,.25)}
.launch-diagnostic-button{border:1px solid rgba(255,255,255,.54);background:rgba(255,255,255,.12);color:#fff}
.launch-diagnostic-button:hover{transform:translateY(-2px);background:rgba(255,255,255,.21)}
.launch-begin-button:focus-visible,.launch-diagnostic-button:focus-visible,.launch-tool:focus-visible{outline:3px solid #f5c85c;outline-offset:3px}
.launch-welcome-art{right:clamp(1.2rem,6vw,5rem);width:158px;height:126px}
.launch-art-star{width:51px;height:51px;border-radius:17px;font-size:1.5rem}
.launch-art-book{position:absolute;left:56%;top:4%;display:grid;place-items:center;width:36px;height:36px;border:2px solid rgba(255,255,255,.75);border-radius:12px;background:#ecfbf6;color:#087d8c;font-size:1.05rem;transform:rotate(12deg);box-shadow:0 6px 14px rgba(0,37,48,.15)}
.launch-heading{margin:.25rem 0 .7rem}
.launch-heading .eyebrow{color:#278f78}
.launch-heading h2{font-size:1.42rem;color:#173d51}
.launch-heading>p{font-size:.72rem}
.launch-courses{margin-top:.15rem}
.launch-courses .subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.launch-courses .subject-card{min-height:218px;padding:1.05rem 1.1rem;border:1px solid color-mix(in srgb,var(--accent) 21%,#e6e9e5);border-top:6px solid var(--accent);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 24%,#fff) 0%,#fff 78%);box-shadow:0 6px 16px rgba(26,55,72,.07);transition:transform .18s,box-shadow .18s}
.launch-courses .subject-card:hover,.launch-courses .subject-card:focus-visible{transform:translateY(-3px);box-shadow:0 15px 28px rgba(26,55,72,.14)}
.launch-courses .subject-card-top{margin-bottom:.55rem}
.launch-courses .subject-icon{width:61px;height:61px;margin:0;border-radius:18px;background:linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent) 72%,white))!important;color:#fff!important;box-shadow:0 7px 15px color-mix(in srgb,var(--accent) 25%,transparent)}
.launch-courses .subject-icon svg{width:39px;height:39px;color:#fff;filter:drop-shadow(0 2px 2px rgba(0,0,0,.16))}
.launch-courses .subject-status{padding:.42rem .62rem;border:0;background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent);font-size:.55rem}
.launch-courses .subject-status.is-open{background:#e4f5e8;color:#237448}
.launch-courses .subject-card h3{font-size:1.04rem;color:#203d50}
.launch-courses .subject-card p{min-height:2.8em;margin:.12rem 0 .65rem;font-size:.73rem;line-height:1.48}
.launch-courses .subject-card-foot{padding-top:.6rem;border-top-color:color-mix(in srgb,var(--accent) 14%,#fff);font-size:.65rem}
.launch-courses .subject-progress{height:7px;margin:.42rem 0 .5rem;background:color-mix(in srgb,var(--accent) 12%,#fff)}
.launch-courses .subject-progress span{background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 50%,#f6c755))}
.launch-courses .card-enter{color:var(--accent);font-size:.69rem}
.launch-courses .card-enter b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--accent);color:white;transition:transform .15s}
.launch-courses .subject-card:hover .card-enter b{transform:translateX(3px)}
.launch-score-strip{margin:1rem 0;padding:.82rem .9rem;border-color:#dce6e3;background:linear-gradient(100deg,#f2f8f4,#f7faff)}
.launch-score-intro strong{font-size:.83rem}.launch-score-intro span{font-size:.65rem}
.launch-score-bands{gap:.4rem}.launch-score-bands>span{padding:.45rem .52rem;border-radius:8px}
.launch-score-bands b{font-size:.7rem}.launch-score-bands small{font-size:.53rem}
.launch-score-strip>a{font-size:.63rem}
.launch-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:1rem 0 .55rem}
.launch-tool{--tool-color:#27a7dc;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:70px;padding:.7rem .8rem;border:1px solid color-mix(in srgb,var(--tool-color) 22%,#fff);border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--tool-color) 13%,white),#fff 85%);color:#264655;text-align:left;cursor:pointer;transition:transform .16s,box-shadow .16s}
.launch-tool:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(34,68,83,.1)}
.launch-tool>span:first-child{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:var(--tool-color);color:#fff;font-size:1.15rem}
.launch-tool strong,.launch-tool small{display:block}.launch-tool strong{font:850 .75rem Manrope,sans-serif}.launch-tool small{margin-top:.15rem;color:#6d7e84;font-size:.57rem;line-height:1.35}.launch-tool>b{color:var(--tool-color);font-size:1rem}
.launch-tool-progress{--tool-color:#249d78}.launch-tool-plan{--tool-color:#9261d9}.launch-tool-review{--tool-color:#e79a22}
.launch-screen .begin-panel{scroll-margin-top:.8rem;padding:1.1rem 1.2rem;border-top-width:5px}
.launch-disclaimer{margin-top:.8rem}
@media(max-width:1050px){.launch-courses .subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.launch-tools{grid-template-columns:1fr}.launch-tool{min-height:62px}}
@media(max-width:720px){
  .launch-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.18rem;overflow:visible;margin:.28rem 0 0;padding:0}
  .launch-menu button,.launch-menu a{justify-content:flex-start;width:100%;min-width:0;min-height:34px;padding:.36rem .38rem;font-size:.59rem;white-space:nowrap}
  .launch-menu button>span:first-child,.launch-menu a>span:first-child{width:15px;font-size:.87rem}
  .launch-menu a>span:last-child{margin-left:auto}
  .launch-welcome{min-height:188px;margin:.65rem 0 1rem;padding:.95rem 1rem}
  .launch-welcome h1{max-width:290px;font-size:1.52rem}
  .launch-welcome p:last-child{max-width:290px;font-size:.71rem}
  .launch-welcome-actions{gap:.45rem;margin-top:.72rem}
  .launch-begin-button,.launch-diagnostic-button{min-height:38px;padding:.58rem .72rem;font-size:.65rem}
  .launch-welcome-art{right:-.9rem;opacity:.64;transform:translateY(-50%) scale(.64)}
  .launch-heading{gap:.2rem;margin:.15rem 0 .55rem}
  .launch-heading h2{font-size:1.12rem}
  .launch-heading>p{font-size:.63rem}
  .launch-courses .subject-grid{grid-template-columns:1fr;gap:.62rem}
  .launch-courses .subject-card{display:flex;flex-direction:column;min-height:0;padding:.83rem .88rem;border-top-width:5px}
  .launch-courses .subject-card-top{display:flex;flex-direction:row;align-items:center;justify-content:space-between;grid-column:auto;grid-row:auto;width:100%;margin-bottom:.5rem}
  .launch-courses .subject-icon{width:51px;height:51px;border-radius:15px}
  .launch-courses .subject-icon svg{width:34px;height:34px}
  .launch-courses .subject-status{max-width:none;padding:.36rem .5rem;font-size:.48rem}
  .launch-courses .subject-card h3{font-size:.93rem;margin:0 0 .2rem}
  .launch-courses .subject-card p{min-height:0;margin:0 0 .5rem;font-size:.66rem}
  .launch-courses .subject-card-foot{width:100%;padding-top:.48rem;font-size:.59rem}
  .launch-courses .subject-card-foot small{font-size:.53rem}
  .launch-courses .card-enter{font-size:.61rem}
  .launch-courses .card-enter b{width:24px;height:24px}
  .launch-score-strip{grid-template-columns:1fr;gap:.5rem;margin:.75rem 0;padding:.7rem}
  .launch-score-intro strong{font-size:.75rem}.launch-score-intro span{font-size:.6rem}
  .launch-score-bands{gap:.25rem}.launch-score-bands>span{padding:.36rem .3rem}.launch-score-bands b{font-size:.58rem}.launch-score-bands small{font-size:.45rem}
  .launch-tools{grid-template-columns:1fr;gap:.45rem;margin:.75rem 0}
  .launch-tool{min-height:58px;padding:.58rem .65rem}
}
