/* Shared brand for the existing learning platform. */
:root{color-scheme:dark;--ink:#f2f0e9;--muted:#b0b0a9;--line:#343430;--accent:#f8e441;--deep:#101010;--surface:#1a1a18;--raised:#242421;font-family:Arial,Helvetica,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
h1,h2,h3{font-weight:700}button,input,textarea,select{color:inherit}.button{min-height:48px;border-radius:7px;font-weight:700}.primary,.lime{background:var(--accent);color:var(--deep);border-color:var(--accent)}.light{background:transparent}.button:hover:not(:disabled){filter:none}.primary:hover:not(:disabled),.lime:hover:not(:disabled){background:#ffed63}.light:hover:not(:disabled){background:var(--raised);border-color:#77776a}summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.brand{display:inline-flex;gap:11px;flex-shrink:0;letter-spacing:0;line-height:1}.brand .brand-mark{position:relative;display:grid;place-items:center;flex-shrink:0;width:47px;height:47px;background:var(--accent);color:var(--deep);border-radius:7px;font-weight:900;font-size:23px;letter-spacing:-2px;line-height:1;padding-right:3px}.brand .brand-mark>span{position:absolute;right:4px;top:1px;font-size:13px;letter-spacing:0;line-height:1}.brand .brand-wordmark,.brand .brand-wordmark small{font-size:13px;font-weight:800;letter-spacing:.025em;line-height:1.35}
.public-header{max-width:1440px;padding:25px 6%;border-bottom:1px solid var(--line)}.public-header .button{font-size:.875rem;gap:24px}.landing{max-width:1440px;padding:76px 6% 80px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:6%;align-items:stretch}.hero-copy{padding:10px 0;min-width:0}.hero-copy .eyebrow{display:flex;align-items:center;gap:10px;font-size:.75rem;letter-spacing:.12em;margin-bottom:35px;color:var(--muted)}.live-dot{width:7px;height:7px;background:var(--accent);border-radius:50%;flex-shrink:0}.hero-copy h1{font-size:clamp(3rem,6.5vw,6.4rem);font-weight:900;letter-spacing:-.065em;line-height:.96;margin-bottom:30px}.hero-copy .intro{font-size:1.0625rem;line-height:1.75;max-width:420px;margin-bottom:28px}.hero-copy .primary{justify-content:space-between;gap:45px;min-height:54px}.fine{font-size:.8125rem;max-width:380px;line-height:1.6;margin-top:16px}
.hero-panel{background:var(--accent);color:var(--deep);border:0;border-radius:12px;padding:27px 30px;box-shadow:none;min-height:520px;overflow:hidden}.hero-panel-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.hero-panel .eyebrow{font-size:.75rem;color:var(--deep);letter-spacing:.07em;line-height:1.65;margin:0;font-weight:700}.panel-orbit{display:grid;place-items:center;flex-shrink:0;font-size:25px;border:1px solid #10101055;border-radius:50%;width:44px;height:44px}.module-index{font-size:clamp(4.5rem,8vw,7rem);color:var(--deep);font-weight:800;letter-spacing:-.075em;margin:23px 0 20px;display:flex;align-items:baseline;gap:15px}.module-index span{font-size:.75rem;color:var(--deep);font-weight:700;letter-spacing:.03em}.hero-panel h2{font-size:clamp(1.8rem,3vw,2.7rem);letter-spacing:-.05em;font-weight:700;line-height:1.08;margin-bottom:27px}.hero-numbers{display:flex;gap:38px;margin-top:auto}.hero-numbers>div{display:flex;align-items:baseline;gap:9px}.hero-numbers strong{font-size:2rem;letter-spacing:-.05em;line-height:1.2}.hero-numbers span{font-size:.8125rem}.hero-tags{gap:6px;margin:17px 0 23px}.hero-tags span{font-size:.75rem;border-color:#10101055;padding:4px 9px}.panel-footer{border-color:#10101055;font-size:.75rem;font-weight:700;letter-spacing:.06em;align-items:center;margin-top:0;padding-top:18px;min-height:44px}.panel-footer>span:last-child{font-size:23px;line-height:1}
.landing-features{max-width:1440px;padding:0 6% 70px;grid-template-columns:1.2fr 1fr 1fr;gap:35px}.landing-features>.feature-intro{border-top:1px solid var(--line);padding-top:23px}.landing-features .eyebrow{color:var(--muted);font-size:.75rem;margin-bottom:20px}.landing-features h2{font-size:1.7rem;line-height:1.2;margin-bottom:15px}.feature-intro p:last-child{font-size:.875rem;line-height:1.75;color:var(--muted);max-width:280px}.feature-row{padding-top:23px}.feature-row h3{font-size:1.25rem;margin:23px 0 13px}.feature-row p{font-size:.875rem;line-height:1.8}.feature-link{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;font-weight:700;color:var(--accent)}.public-footer{max-width:1440px;padding:27px 6%;font-size:.75rem;align-items:center}.public-footer a{min-height:44px;display:inline-flex;align-items:center}
.badge{border-radius:4px}.rail{background:#131312;padding:30px 17px}.rail .brand{margin:0 4px 48px}.rail .brand .brand-wordmark,.rail .brand .brand-wordmark small{font-size:12px}.nav-label{font-size:.75rem;letter-spacing:.12em}.nav-item{border-radius:7px}.nav-item:hover{background:var(--raised)}.nav-item.active{background:var(--accent);color:var(--deep)}.nav-item b{color:var(--deep)}.nav-item.active b{background:var(--deep);color:var(--accent)}.avatar{color:var(--accent)}.account-chip{background:var(--surface)}.view-heading h1{font-weight:700;letter-spacing:-.045em}.card,.topics-list,.confirm-dialog{background:var(--surface);border-radius:12px}.continue-card{background:var(--deep);border:1px solid #6e6740;border-radius:12px}.continue-card h2{color:var(--ink);font-weight:700}.continue-card .button{margin-top:14px}.ring strong{font-weight:700;color:var(--ink)}.action-symbol{border-radius:8px}.action-card>span:last-child,.active-subject .card-bottom>span:last-child{color:var(--accent)}.rating button[aria-pressed=true],.jump.current{background:var(--accent);border-color:var(--accent);color:var(--deep)}.segmented a[aria-current]{background:var(--accent);color:var(--deep);box-shadow:none}.pitfall{color:#efe4b6}.empty-icon{color:var(--accent)}.auth-aside .eyebrow{color:var(--accent)}.auth-card fieldset:disabled{opacity:.65}.toast{background:var(--accent);color:var(--deep);font-weight:600;box-shadow:0 8px 30px #0006}.skip{background:var(--accent);color:var(--deep)}.confirm-dialog::backdrop{background:#000a;backdrop-filter:blur(3px)}
@media(max-width:1100px){.rail .brand{gap:8px}.rail .brand .brand-mark{width:38px;height:38px;font-size:20px}.rail .brand .brand-wordmark,.rail .brand .brand-wordmark small{font-size:12px}.landing{gap:5%}.hero-panel{padding:25px}.hero-copy h1{font-size:6.8vw}.hero-panel .eyebrow{max-width:170px}.hero-numbers{gap:25px}}
@media(max-width:850px){.landing{padding-top:48px;padding-bottom:50px}.hero-panel{min-height:490px;padding:23px}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.06em}.hero-copy .primary{gap:15px;padding:14px 17px}.hero-numbers{gap:20px}.hero-numbers>div{gap:6px}.hero-numbers strong{font-size:1.7rem}.landing-features{gap:25px;grid-template-columns:1fr 1fr}.landing-features>.feature-intro{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.feature-intro .eyebrow{grid-column:1/-1;margin-bottom:14px}.feature-intro p:last-child{max-width:none}.mobile-nav .nav-item.active{background:var(--accent);color:var(--deep)}.mobile-nav .nav-item{font-size:.8125rem}.mobile-nav .nav-item b{font-size:.75rem}}
@media(max-width:720px){.public-header{padding:18px 5%}.public-header .button{padding:11px 14px;gap:12px}.landing{grid-template-columns:1fr;padding:35px 5% 42px;gap:30px}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.07em;margin-bottom:26px}.hero-copy h1{font-size:clamp(2.8rem,11.3vw,5.7rem);margin-bottom:25px}.hero-copy .intro{font-size:1rem;line-height:1.75;max-width:470px;margin-bottom:24px}.hero-copy .primary{width:100%;max-width:470px;padding:16px 20px}.fine{font-size:.75rem;margin-top:13px;max-width:470px}.hero-panel{min-height:0;padding:25px}.hero-panel .eyebrow{max-width:none;font-size:.75rem}.hero-panel h2{font-size:2.3rem}.module-index{font-size:5rem;margin:18px 0 21px}.hero-numbers{gap:40px}.hero-numbers strong{font-size:2rem}.hero-numbers>div{gap:9px}.hero-tags{margin:20px 0}.hero-panel-top{align-items:center}.panel-footer{padding-top:15px}.hero-panel .panel-orbit{width:38px;height:38px}.landing-features{padding-left:5%;padding-right:5%}}
@media(max-width:600px){.landing-features{grid-template-columns:1fr;gap:24px;padding-bottom:40px}.landing-features>.feature-intro{display:block;grid-column:auto}.feature-intro p:last-child{max-width:400px}.feature-row h3{margin-top:17px}.feature-row p{margin-bottom:8px}.public-footer{font-size:.75rem;gap:6px 20px;padding:21px 5%}.public-footer span{margin-bottom:7px}.question-card,.reading{border-radius:10px}.progress-card .ring{width:110px;height:110px}.progress-card{grid-template-columns:110px 1fr;gap:0 15px}.workspace-bar{gap:10px}.workspace-bar>span{font-size:.75rem}.view-heading .eyebrow{font-size:.75rem}.subject.inactive p{font-size:.8125rem}.auth-aside h1{font-size:2.5rem}}
@media(max-width:360px){.brand{gap:8px}.brand .brand-mark{width:36px;height:36px;font-size:20px}.brand .brand-wordmark,.brand .brand-wordmark small{font-size:12px}.public-header .button{font-size:.8125rem;padding:10px 12px}.public-header .button>span{display:none}.hero-copy h1{font-size:11.4vw}.hero-panel{padding:21px}.hero-panel h2{font-size:2rem}.hero-panel .eyebrow{font-size:.75rem}.progress-card{grid-template-columns:100px 1fr;padding:18px;gap:0 12px}.progress-card .ring{width:100px;height:100px}.mobile-nav .nav-item{font-size:.75rem}.account-chip{font-size:.75rem}}

/* Keep secondary metadata legible and recurring controls comfortable on phones. */
.brand small,.eyebrow,.badge,.subject .badge,.question-card .badge,.nav-label,.continue-card .small,.continue-card .overline{font-size:max(.75rem,12px)}
.account-chip,.mobile-nav .nav-item,.save-status,.source-link,.card-bottom,.action-card p,.section-title a{font-size:.875rem}
