.weekly-page{display:flex;flex-direction:column;gap:26px;max-width:1250px;margin:auto}.weekly-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.weekly-heading h1{margin:8px 0}.weekly-heading p,.weekly-page p{color:var(--muted);line-height:1.7}.weekly-kicker{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:.8rem}.weekly-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.weekly-toolbar label{display:flex;align-items:center;gap:12px}.weekly-countdown{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--muted)}.weekly-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px}.weekly-main,.weekly-aside{display:flex;flex-direction:column;gap:22px;min-width:0}.weekly-aside h2,.weekly-list-heading h2{display:flex;align-items:center;gap:8px;font-size:1.05rem}.weekly-podium{display:flex;align-items:flex-end;justify-content:center;padding:28px 12px 0;gap:14px;border-radius:22px;background:linear-gradient(155deg,color-mix(in srgb,#e8b93d 8%,var(--card)),var(--card));border:1px solid var(--border)}.weekly-podium-place{display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;text-align:center;gap:8px}.weekly-podium-place>strong{font-size:.9rem;max-width:100%;overflow-wrap:anywhere}.weekly-podium-place>span{color:var(--muted);font-size:.8rem}.weekly-podium .avatar{width:48px;height:48px}.weekly-medal{color:#dba731}.weekly-step{background:color-mix(in srgb,#dba731 18%,var(--card));border:1px solid color-mix(in srgb,#dba731 40%,var(--border));border-bottom:0;border-radius:12px 12px 0 0;padding:18px 0;width:100%;font-weight:800;font-size:1.5rem;height:90px}.weekly-step span{font-size:.75rem;vertical-align:super}.place-1 .weekly-step{height:125px;background:color-mix(in srgb,#e2b43b 30%,var(--card))}.place-3 .weekly-step{height:70px}.place-2 .weekly-medal{color:#a8b5cc}.place-3 .weekly-medal{color:#c68b5b}.weekly-list-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:20px}.weekly-list-heading>span{display:flex;gap:7px;align-items:center;font-size:.75rem;color:var(--muted)}.weekly-table ol{list-style:none;padding:0;margin:0}.weekly-table li{display:flex;align-items:center;gap:14px;padding:16px 10px;border-bottom:1px solid var(--border);border-radius:10px}.weekly-table li.is-me{background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent)}.weekly-rank{min-width:30px;text-align:center;font-weight:700;color:var(--muted)}.rank-1{color:#d5a224}.rank-2{color:#9aa9bf}.rank-3{color:#b87e4f}.weekly-table li>strong{flex:1;overflow-wrap:anywhere;min-width:0}.weekly-table li>strong small{display:block;color:var(--muted);font-weight:400}.weekly-xp{white-space:nowrap;font-weight:700}.weekly-xp small{color:var(--muted);font-size:.7rem}.weekly-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:16px;font-size:.8rem}.weekly-your-rank{display:flex;gap:14px;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:15px;padding:20px}.weekly-your-rank>div{flex:1}.weekly-your-rank p{font-size:.8rem;margin:5px 0 0}.weekly-trophy-counts{display:flex;justify-content:space-around;margin:24px 0}.weekly-trophy-counts>div{display:flex;flex-direction:column;align-items:center;gap:8px}.weekly-trophy-counts strong{font-size:1.6rem}.weekly-trophy-counts small{color:var(--muted)}.weekly-history{list-style:none;padding:0}.weekly-history li{display:flex;flex-direction:column;gap:5px;border-top:1px solid var(--border);padding:12px 0;font-size:.8rem}.weekly-history button{background:none;border:0;padding:0;color:var(--text);font:inherit;text-align:left;cursor:pointer}.weekly-history span{color:var(--muted)}.weekly-rules{padding-left:18px;color:var(--muted);font-size:.8rem;line-height:1.8}.weekly-rules li{margin-bottom:12px}.weekly-empty{text-align:center;padding:38px 15px;color:var(--muted)}.weekly-celebration{position:relative;isolation:isolate;overflow:hidden;text-align:center;padding:20px 10px;display:flex;align-items:center;flex-direction:column;gap:16px}.weekly-celebration h2{color:var(--text);font-size:1.6rem}.weekly-celebration p{margin:0;color:var(--muted)}.weekly-award-icon{position:relative;padding:32px;border-radius:30px;background:color-mix(in srgb,currentColor 12%,transparent);animation:weekly-arrive .8s cubic-bezier(.2,.7,.3,1) both}.weekly-spark{position:absolute;right:9px;top:9px;animation:weekly-spark 2s ease-in-out infinite}.weekly-award-xp{font-size:1.4rem;color:var(--text)}.weekly-confetti{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none}.weekly-confetti i{position:absolute;left:calc(var(--particle)*5.5%);top:-15px;width:7px;height:13px;border-radius:2px;background:currentColor;animation:weekly-fall 2.5s ease-out both;animation-delay:calc(var(--particle)*.05s)}@keyframes weekly-arrive{0%{opacity:0;transform:translateY(20px) rotate(-12deg) scale(.8)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes weekly-fall{to{transform:translateY(470px) rotate(340deg);opacity:0}}@keyframes weekly-spark{50%{opacity:.4;transform:scale(.8)}}@media(prefers-reduced-motion:reduce){.weekly-celebration *{animation:none!important}.weekly-confetti{display:none}}[data-motion=off] .weekly-celebration *{animation:none!important}[data-motion=off] .weekly-confetti{display:none}@media(max-width:1000px){.weekly-grid{grid-template-columns:minmax(0,1fr)}.weekly-aside{display:grid;grid-template-columns:1fr 1fr}}@media(max-width:600px){.weekly-heading,.weekly-toolbar{align-items:stretch;flex-direction:column}.weekly-aside{display:flex}.weekly-podium{gap:8px;padding:20px 6px 0}.weekly-table.card{padding:16px}.weekly-table li{gap:8px}.weekly-list-heading{align-items:flex-start;flex-direction:column}.weekly-your-rank{padding:14px}.weekly-toolbar label{flex-direction:column;align-items:stretch}}.weekly-rank .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.weekly-empty>svg{display:inline-block}.weekly-table .avatar{width:40px;height:40px;flex-shrink:0}.weekly-grid{grid-template-columns:minmax(0,1fr)}.weekly-table strong a,.weekly-podium strong a{color:inherit;text-decoration:none}.weekly-table strong a:hover,.weekly-podium strong a:hover{text-decoration:underline}.public-profile{display:grid;gap:24px;max-width:1000px;margin:auto}.public-profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.public-profile-stats .card{display:grid;gap:8px}.public-profile-stats strong{font-size:1.6rem}.profile-trophies{margin-block:24px}.profile-trophies h2{display:flex;gap:10px;align-items:center}.profile-medals{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;padding:0;list-style:none;max-height:400px;overflow:auto}.profile-medals li{display:flex;gap:14px;align-items:center;padding:16px;border:1px solid currentColor;border-radius:16px;background:color-mix(in srgb,currentColor 6%,transparent)}.profile-medals small{display:block;margin-top:5px;color:var(--text-muted)}.profile-activity{display:grid;grid-template-columns:repeat(14,1fr);gap:7px;margin-top:20px}.profile-activity>div{aspect-ratio:1;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);border-radius:7px;font-size:.75rem}.profile-activity .is-active{background:#248456;color:#fff;border-color:#248456}@media(max-width:600px){.profile-activity{grid-template-columns:repeat(7,1fr)}.public-profile-stats{gap:8px}.public-profile-stats strong{font-size:1.2rem}.public-profile-stats .card{padding:12px}}.public-profile h1,.weekly-podium strong,.weekly-table strong{overflow-wrap:anywhere;min-width:0}.profile-trophies.card{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;padding:16px 22px;margin-block:20px}.profile-trophies h2{font-size:1rem;margin:0}.profile-trophies .weekly-trophy-counts{display:flex;flex-wrap:wrap;gap:10px;margin:0}.profile-trophies .weekly-trophy-counts>div{flex-direction:row;gap:7px;padding:8px 12px;border:1px solid color-mix(in srgb,currentColor 30%,transparent);border-radius:12px;background:color-mix(in srgb,currentColor 6%,transparent)}.profile-trophies .weekly-trophy-counts strong{font-size:1rem}.profile-trophies .weekly-trophy-counts small{font-size:.75rem}.profile-trophy-details{flex-basis:100%;font-size:.85rem}.profile-trophy-details summary{cursor:pointer;color:var(--muted);width:fit-content}.profile-main{min-width:0}.profile-main>div{flex-wrap:wrap}.profile-main h2{overflow-wrap:anywhere}.profile-main>.muted{display:block}.profile-main>.profile-public-link{display:inline-flex;margin-top:10px;font-size:.85rem;text-underline-offset:3px}@media(max-width:600px){.profile-trophies.card{padding:16px;gap:12px}.profile-trophies h2{flex-basis:100%}.profile-trophies .weekly-trophy-counts{gap:6px}.profile-trophies .weekly-trophy-counts>div{padding:7px 9px}}.comparison-identities,.comparison-details{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.profile-comparison .comparison-identities,.profile-comparison .comparison-details{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-person{display:flex;align-items:center;gap:16px;min-width:0}.comparison-person>div{min-width:0}.comparison-person h2{font-size:1.15rem;overflow-wrap:anywhere;margin:4px 0}.comparison-person small,.comparison-person span{color:var(--muted);font-size:.8rem}.comparison-person.is-self{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.comparison-scores{padding-block:8px}.comparison-metric{padding:16px 0;border-bottom:1px solid var(--border);text-align:center}.comparison-metric:last-child{border:0}.comparison-metric h2{font-size:.8rem;font-weight:500;color:var(--muted);margin:0 0 10px}.comparison-metric>div{display:grid;grid-template-columns:1fr;gap:20px}.profile-comparison .comparison-metric>div{grid-template-columns:1fr 1fr}.comparison-metric strong{font-size:1.4rem}.comparison-metric .is-leading{color:var(--accent)}.comparison-details section{min-width:0}.comparison-details h2{font-size:1rem;overflow-wrap:anywhere}.comparison-details .profile-activity{grid-template-columns:repeat(7,minmax(0,1fr))}@media(max-width:600px){.comparison-identities,.comparison-details{gap:10px}.comparison-person.card{padding:12px;flex-direction:column;align-items:flex-start;gap:8px}.comparison-person .avatar{width:48px;height:48px}.comparison-person h2{font-size:.9rem}.comparison-details .card{padding:12px}.comparison-details .profile-activity{gap:3px}.comparison-details .profile-activity>div{font-size:.6rem;border-radius:4px}.comparison-details .profile-trophies .weekly-trophy-counts>div{padding:5px}.comparison-details .profile-trophies .weekly-trophy-counts small{display:none}}.visitor-page,.visitor-auth{--visitor-accent: var(--accent);--visitor-line: color-mix(in srgb, var(--text) 10%, transparent);--visitor-soft: color-mix(in srgb, var(--card) 72%, var(--bg));background:var(--bg);color:var(--text);min-height:100dvh}.visitor-header{width:100%;max-width:1440px;margin:auto;min-height:94px;padding:22px clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--visitor-line);position:relative;z-index:5}.visitor-brand{display:flex;align-items:center;gap:11px;color:var(--text);text-decoration:none;flex-shrink:0;font-size:.85rem;font-weight:600;line-height:1.3;letter-spacing:-.02em}.visitor-brand>.brand-crest{width:37px;height:42px}.visitor-brand>span>span{display:block}.visitor-header nav{display:flex;align-items:center;gap:32px}.visitor-header nav>a{font-size:.84rem;color:var(--muted);text-decoration:none;padding:10px 0;transition:color .2s}.visitor-header nav>a:hover,.visitor-header nav>a[aria-current=page]{color:var(--text)}.visitor-header nav>a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:10px;text-decoration-thickness:2px}.visitor-header nav>.visitor-login{display:flex;align-items:center;gap:9px;padding:9px 15px;border:1px solid var(--visitor-line);border-radius:9px;color:var(--text)}.visitor-page main,.visitor-footer{max-width:1260px;margin:auto;padding:0 clamp(22px,4vw,56px)}.visitor-page h1,.visitor-page h2,.visitor-page h3{font-family:Manrope,DM Sans,sans-serif;font-weight:500;letter-spacing:-.035em;text-wrap:balance}.visitor-page h1{font-size:clamp(2.2rem,3.7vw,3.5rem);line-height:1.23;margin:24px 0}.visitor-page h1 em{font-style:normal;color:var(--visitor-accent)}.visitor-page h2{font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.35}.visitor-page p{color:var(--muted);line-height:1.9;font-size:.95rem}.visitor-kicker{display:inline-flex;align-items:center;gap:9px;color:var(--muted);font-size:.76rem;letter-spacing:.025em}.visitor-kicker>span,.preview-status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);display:inline-block}.visitor-hero{display:grid;grid-template-columns:.86fr 1.14fr;gap:50px;align-items:center;padding:88px 0 76px}.visitor-intro>p{max-width:450px;font-size:1rem}.visitor-actions{display:flex;align-items:flex-start;flex-direction:column;gap:19px;margin-top:29px}.visitor-text-link{font-size:.8rem;color:var(--muted);text-underline-offset:5px}.visitor-formats{display:flex;gap:20px;margin-top:35px;color:var(--subtle);font-size:.76rem}.visitor-formats>span{display:flex;align-items:center;gap:7px}.visitor-product{position:relative;padding:18px 0}.visitor-product:before{content:"";position:absolute;top:4%;right:-5%;bottom:4%;left:-5%;background:radial-gradient(ellipse,#c91d3512,transparent 70%);pointer-events:none}.learning-preview{margin:0;position:relative;border:1px solid var(--visitor-line);border-radius:16px;background:var(--bg);overflow:hidden;box-shadow:0 25px 65px #0003;min-width:0}.preview-toolbar{padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--visitor-line);background:var(--visitor-soft);color:var(--muted);font-size:.65rem}.preview-window-dots{display:flex;gap:5px}.preview-window-dots i{width:6px;height:6px;background:var(--subtle);opacity:.55;border-radius:50%}.preview-tabs{display:flex;justify-content:center;gap:5px;padding:12px;background:var(--visitor-soft);border-bottom:1px solid var(--visitor-line)}.preview-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);padding:8px 16px;font:inherit;font-size:.72rem;cursor:pointer}.preview-tabs button[aria-pressed=true]{color:var(--text);background:var(--bg);border-color:var(--visitor-line);box-shadow:0 1px 5px #0001}.preview-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.preview-screen{background:#101219;overflow:hidden;aspect-ratio:1100/790}.preview-screen img{display:block;width:100%;height:auto}.learning-preview figcaption{font-size:.63rem;color:var(--muted);display:flex;align-items:center;gap:8px;padding:11px 16px;border-top:1px solid var(--visitor-line);background:var(--visitor-soft)}.visitor-feature-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--visitor-line);border-bottom:1px solid var(--visitor-line);margin:0 0 96px}.visitor-feature-strip article{padding:32px 24px 30px 0}.visitor-feature-strip article+article{padding-left:30px;border-left:1px solid var(--visitor-line)}.visitor-feature-strip svg{width:22px;color:var(--visitor-accent);margin-bottom:12px}.visitor-feature-strip h2{font-size:1.05rem;letter-spacing:-.02em}.visitor-feature-strip p{font-size:.83rem;margin-bottom:0;line-height:1.85}.visitor-origin{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding:0 0 55px}.visitor-origin h2{margin-top:18px}.visitor-origin p:first-child{margin-top:0}.visitor-development{display:flex;align-items:flex-start;gap:10px;margin-top:23px;color:var(--subtle);font-size:.76rem;line-height:1.7}.visitor-development svg{flex-shrink:0;margin-top:2px}.visitor-campus-note{display:flex;align-items:center;gap:17px;border:1px solid var(--visitor-line);border-radius:12px;padding:18px 22px;max-width:840px;margin:32px auto 54px;background:var(--visitor-soft)}.visitor-campus-note svg{color:var(--muted);flex-shrink:0}.visitor-campus-note p{font-size:.77rem;margin:0;line-height:1.8}.visitor-end{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:35px 0 64px}.visitor-end h2{font-size:1.5rem;margin:0}.visitor-end p{font-size:.85rem;margin:9px 0 0}.visitor-footer{border-top:1px solid var(--visitor-line);padding-top:25px;padding-bottom:30px;display:flex;justify-content:space-between;gap:20px;font-size:.73rem;color:var(--subtle)}.visitor-footer>div{display:flex;gap:24px}.visitor-footer a{color:var(--muted);text-decoration:none}.how-intro{padding:72px 0 60px;max-width:720px}.how-intro h1{font-size:clamp(2.1rem,3.4vw,3.1rem)}.how-intro p{max-width:540px}.how-step,.how-practice{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center;padding:35px 0 75px}.how-step-copy p{font-size:.9rem}.step-index{font-size:.73rem;color:var(--visitor-accent);letter-spacing:.015em}.how-step-copy h2{margin:18px 0}.how-options{display:grid;gap:13px;margin-top:25px;color:var(--muted);font-size:.76rem}.how-options span{display:flex;align-items:center;gap:10px}.support-diagram{min-height:350px;display:grid;grid-template-columns:1fr 50px 1.1fr;align-items:center;padding:32px 20px 14px;border:1px solid var(--visitor-line);border-radius:20px;background:radial-gradient(ellipse at 20% 40%,#c91d350b,transparent 65%),var(--visitor-soft);gap:4px}.document-stack{position:relative;padding:15px 6px 15px 16px}.diagram-paper{position:relative;display:flex;flex-direction:column;gap:12px;min-height:200px;padding:23px 16px;background:var(--bg);border:1px solid var(--visitor-line);border-radius:10px;rotate:-4deg;box-shadow:0 10px 24px #0002}.diagram-paper.back{position:absolute;top:12px;right:0;bottom:18px;left:25px;rotate:5deg;background:var(--card)}.diagram-paper svg{color:var(--visitor-accent)}.diagram-paper strong{font-size:.8rem;font-weight:500}.diagram-paper span{font-size:.6rem;color:var(--muted)}.diagram-paper i{height:3px;width:80%;border-radius:3px;background:var(--visitor-line)}.diagram-paper i:last-child{width:50%}.diagram-connector{display:flex;align-items:center;gap:3px;color:var(--subtle)}.diagram-connector>span{height:1px;flex:1;background:var(--visitor-line)}.diagram-result{display:grid;gap:12px}.diagram-result>span{display:flex;align-items:center;gap:8px;font-size:.66rem;background:var(--bg);border:1px solid var(--visitor-line);border-radius:9px;padding:13px 9px}.diagram-result svg{color:var(--visitor-accent);flex-shrink:0}.support-diagram>small{grid-column:1/-1;text-align:center;color:var(--subtle);font-size:.62rem;line-height:1.6;margin-top:15px}.how-practice{border-top:1px solid var(--visitor-line);padding-top:65px}.how-tip{display:flex;gap:11px;padding:17px;background:var(--visitor-soft);border-radius:10px;font-size:.76rem;line-height:1.8;color:var(--muted);margin-top:24px}.how-tip svg{flex-shrink:0;margin-top:3px}.how-finish{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:70px;padding:30px 0 60px}.how-finish p{font-size:.9rem}.progress-illustration{display:flex;align-items:flex-start;justify-content:center;padding:40px 0}.progress-illustration>span{width:74px;display:flex;align-items:center;flex-direction:column;gap:20px;color:var(--visitor-accent)}.progress-illustration svg{box-sizing:content-box;border:1px solid #c91d353d;border-radius:50%;padding:22px;background:#c91d350a}.progress-illustration small{font-size:.67rem;color:var(--muted)}.progress-illustration i{width:38px;border-top:1px dashed var(--subtle);opacity:.4;margin:33px 5px 0}.visitor-beta{display:flex;gap:15px;padding:22px;border-left:2px solid #c91d3570;background:var(--visitor-soft);margin:15px 0 45px}.visitor-beta>svg{flex-shrink:0;color:var(--muted);margin-top:2px}.visitor-beta strong{font-weight:500;font-size:.86rem}.visitor-beta p{font-size:.8rem;margin-bottom:0}.visitor-auth>.auth-page{min-height:calc(100dvh - 94px);max-width:1440px;margin:auto;grid-template-columns:1.05fr 1fr}.visitor-auth .auth-story{min-height:0;background:radial-gradient(ellipse at 15% 30%,#39192335,transparent 70%);border-right:1px solid var(--visitor-line);padding:40px clamp(24px,4.5vw,70px);justify-content:center}.visitor-auth .auth-story-content{margin:0;padding:5px 0 30px;max-width:590px}.visitor-auth .auth-story h1{font-size:clamp(2rem,3.1vw,3.1rem);font-weight:500;letter-spacing:-.045em;line-height:1.25;margin:18px 0}.visitor-auth .auth-story h1 em{color:var(--visitor-accent)}.visitor-auth .auth-story-content>p{font-size:.93rem;color:var(--muted);max-width:470px}.visitor-auth .auth-benefits{margin-top:18px;gap:18px}.visitor-auth .auth-benefits>span{font-size:.74rem;color:var(--muted)}.auth-preview{margin-top:30px;max-width:480px}.auth-preview .preview-screen{max-height:265px;aspect-ratio:1100/680}.auth-preview .preview-screen img{margin-top:-8px}.auth-preview .preview-toolbar{padding:11px 14px}.auth-preview .preview-tabs{padding:8px}.auth-preview .learning-preview{box-shadow:0 18px 35px #0002}.visitor-auth .auth-promise{margin-top:24px;padding:11px 14px;border-radius:12px;max-width:450px}.visitor-auth .auth-promise strong{font-size:.8rem;font-weight:500}.visitor-auth .auth-promise div>span{font-size:.7rem}.visitor-auth .auth-promise-icon{height:32px;width:32px}.visitor-auth .auth-form-side{padding:40px clamp(24px,4vw,70px);gap:24px}.visitor-auth .auth-symbol,.visitor-auth .auth-symbol .brand-crest{width:52px;height:58px}.visitor-auth .auth-card>h2{font-size:clamp(1.6rem,2.2vw,2rem);font-weight:500;letter-spacing:-.035em}.visitor-auth .auth-card>.muted{font-size:.88rem;margin-bottom:26px}.visitor-auth .auth-caption{font-size:.72rem}@media(max-width:1000px){.visitor-hero{gap:28px;padding-top:55px}.visitor-origin{gap:35px}.how-step,.how-practice,.how-finish{gap:30px}.visitor-header nav{gap:22px}.support-diagram{padding:20px 10px 12px;grid-template-columns:1fr 28px 1.1fr}.diagram-result>span{font-size:.61rem;padding:12px 7px}.visitor-auth .auth-benefits{gap:10px}.visitor-auth .auth-story{padding:28px}.visitor-auth .auth-form-side{padding:35px 28px}}@media(max-width:760px){.visitor-header{padding:17px 20px;min-height:104px;align-items:flex-start;gap:14px;flex-wrap:wrap}.visitor-brand{font-size:.73rem}.visitor-brand>.brand-crest{width:30px;height:34px}.visitor-header nav{width:100%;justify-content:space-between;gap:12px;order:2}.visitor-header nav>a{font-size:.73rem;padding:7px 0}.visitor-header nav>.visitor-login{padding:5px 10px}.visitor-header nav>a[aria-current=page]{text-underline-offset:7px}.visitor-hero{grid-template-columns:1fr;gap:30px;padding:40px 0}.visitor-page h1{font-size:2.25rem;letter-spacing:-.04em}.visitor-intro>p{font-size:.93rem}.visitor-actions{gap:18px}.visitor-formats{margin-top:26px}.visitor-product{padding:0}.visitor-feature-strip{grid-template-columns:1fr;margin-bottom:45px}.visitor-feature-strip article,.visitor-feature-strip article+article{padding:25px 0;border-left:0}.visitor-feature-strip article+article{border-top:1px solid var(--visitor-line)}.visitor-feature-strip svg{margin-bottom:3px}.visitor-origin{grid-template-columns:1fr;gap:15px;padding-bottom:20px}.visitor-origin h2{margin-bottom:0}.visitor-origin p{font-size:.9rem}.visitor-campus-note{margin:25px 0;padding:16px;gap:12px}.visitor-end{flex-direction:column;align-items:flex-start;padding:30px 0 45px;gap:22px}.visitor-end h2{font-size:1.4rem}.visitor-footer{flex-direction:column;padding-top:23px}.visitor-footer>div{gap:22px;flex-wrap:wrap}.how-intro{padding:40px 0 20px}.how-intro h1{font-size:2.1rem}.how-step,.how-practice,.how-finish{grid-template-columns:1fr;gap:25px;padding:28px 0 42px}.how-practice{padding-top:40px}.support-diagram{min-height:300px;grid-template-columns:1fr 27px 1.15fr;padding:18px 10px}.diagram-paper{padding:20px 12px;min-height:180px}.diagram-paper strong{font-size:.73rem}.diagram-paper span{font-size:.53rem}.diagram-result>span{font-size:.61rem;gap:6px}.diagram-result svg{width:15px}.progress-illustration{padding:15px 0}.visitor-beta{margin-top:0;padding:18px}.visitor-auth>.auth-page{grid-template-columns:1fr;min-height:0}.visitor-auth .auth-story{padding:28px 24px 22px;border-right:0;border-bottom:1px solid var(--visitor-line)}.visitor-auth .auth-story-content{padding:0;max-width:none}.visitor-auth .auth-story h1{font-size:2rem}.visitor-auth .auth-story-content>p{font-size:.88rem}.visitor-auth .auth-preview,.visitor-auth .auth-promise{display:none}.visitor-auth .auth-benefits{margin-top:15px}.visitor-auth .auth-form-side{padding:30px 24px}.visitor-auth .auth-symbol{display:none}.visitor-auth .auth-card>.eyebrow{display:none}.visitor-auth .auth-card>h2{text-align:left;font-size:1.6rem}.visitor-auth .auth-card>.muted{text-align:left;font-size:.85rem;margin:10px 0 23px}}@media(prefers-reduced-motion:no-preference){.diagram-result>span{animation:diagram-appear .6s both}.diagram-result>span:nth-child(2){animation-delay:.12s}.diagram-result>span:nth-child(3){animation-delay:.24s}@keyframes diagram-appear{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}}:root[data-theme=light] .visitor-page h1 em,:root[data-theme=light] .visitor-auth .auth-story h1 em{color:var(--accent)}:root[data-theme=light] .preview-screen{background:#101219}.preview-expand{display:grid;place-items:center;background:transparent;border:0;color:var(--muted);padding:5px;border-radius:5px;cursor:pointer}.preview-expand:hover{background:var(--visitor-line);color:var(--text)}.preview-expand:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.preview-enlarged{overflow:auto;max-height:70dvh;border:1px solid var(--visitor-line);border-radius:10px;background:#101219}.preview-enlarged img{display:block;width:100%;height:auto;min-width:680px}.preview-enlarged-caption{font-size:.73rem!important;color:var(--muted);margin-bottom:0}.learning-preview .modal{max-width:1120px;width:calc(100vw - 32px)}.learning-preview .modal-heading h2{font-weight:500;font-size:1.15rem}.visitor-auth .auth-promise{background:var(--visitor-soft)}@media(max-width:760px){.visitor-auth .auth-promise{display:inline-flex;margin-top:21px;max-width:100%;padding:10px 12px}.visitor-auth .auth-promise-icon{width:27px;height:27px}.visitor-auth .auth-promise div>span{font-size:.65rem}.preview-enlarged img{min-width:700px}}:root[data-theme=light] .visitor-page,:root[data-theme=light] .visitor-auth{--visitor-accent: var(--accent)}:root[data-theme=light] .learning-preview{box-shadow:0 18px 45px #172b4d12}:root[data-motion=off] .diagram-result>span{animation:none}@media(max-width:760px){.visitor-auth .auth-form-side{order:1}.visitor-auth .auth-story{order:2;border-bottom:0;border-top:1px solid var(--visitor-line)}}.visitor-auth .auth-form-side{min-height:0;justify-content:center;padding-block:30px}.visitor-auth .auth-card{margin:0}.visitor-auth>.auth-page{min-height:calc(100dvh - 94px);align-items:stretch}.visitor-auth .auth-story{padding-block:30px;background:radial-gradient(ellipse at 30% 55%,#c91d3510,transparent 75%)}.visitor-auth .auth-story-content{padding-bottom:0}.visitor-auth .auth-story h1{margin-top:0}.visitor-auth .auth-promise{margin-top:12px}.study-scene{width:100%;max-width:620px;margin:18px auto 0;color:var(--text);position:relative}.study-scene>svg{display:block;width:100%;height:auto;overflow:visible}.visitor-auth .study-scene{max-width:480px;margin:12px 0 0}.visitor-art-divider{max-width:530px;margin:-65px auto 20px}.visitor-art-divider .study-scene{margin:0}.how-art{max-width:470px;margin:-190px 0 8px auto;pointer-events:none}.how-page .how-intro{max-width:680px;padding-right:80px}.visitor-origin{padding-top:12px}@media(min-width:1700px){.visitor-auth>.auth-page{min-height:0}.visitor-auth .auth-story,.visitor-auth .auth-form-side{padding-top:62px;padding-bottom:62px}.visitor-auth{background:radial-gradient(ellipse at 20% 60%,#c91d3509,transparent 65%),var(--bg)}}@media(max-height:820px)and (min-width:761px){.visitor-auth .auth-form-side{padding-block:20px}.visitor-auth .auth-symbol{display:none}.visitor-auth .auth-story h1{font-size:2.4rem}.visitor-auth .auth-promise{margin-top:0}.visitor-auth .study-scene{max-width:380px}.visitor-auth .auth-card>.muted{margin-bottom:20px}}@media(max-width:1000px){.how-art{max-width:350px;margin-top:-100px}.how-page .how-intro{padding-right:170px}}@media(max-width:760px){.visitor-auth .auth-story{order:2;padding:28px 24px}.visitor-auth .study-scene{max-width:360px;margin-top:8px}.visitor-art-divider{margin:-20px auto 15px}.how-art{margin:0 auto;max-width:390px}.how-page .how-intro{padding-right:0}.visitor-auth .auth-form-side{padding-block:28px}.visitor-auth>.auth-page{min-height:0}}@media(prefers-reduced-motion:no-preference){.scene-spark{animation:scene-glow 5s ease-in-out infinite}@keyframes scene-glow{50%{opacity:.35}}}:root[data-motion=off] .scene-spark{animation:none}.student-companion{width:min(100%,400px);margin:4px auto 0;--gaze-x: 0px;--gaze-y: 0px}.student-companion svg{display:block;width:100%;height:auto}.student-pupils{transform:translate(var(--gaze-x, 0px),var(--gaze-y, 0px));transition:transform .12s ease-out}.student-mouth.happy,.student-companion[data-happy=true] .student-mouth.calm{display:none}.student-companion[data-happy=true] .student-mouth.happy{display:block}.student-companion[data-private=true] .student-eyes{transform:translateY(121px) scaleY(.12);transform-origin:0 0}.study-scene .student-mouth.happy{display:none}.visitor-auth>.auth-page{max-width:1800px;width:100%;min-height:calc(100dvh - 94px)}.visitor-auth .auth-story,.visitor-auth .auth-form-side{padding-block:38px;min-height:0}.visitor-auth .auth-story{padding-inline:clamp(30px,5vw,100px)}.visitor-auth .auth-story-content{max-width:650px;width:100%;margin:auto}.visitor-auth .auth-story h1{font-size:clamp(2.4rem,3.2vw,3.8rem);color:var(--text)}.visitor-auth .auth-story h1 em{color:var(--text)}.visitor-auth .auth-story-content>p{font-size:1.02rem;max-width:570px}.visitor-auth .auth-card{max-width:540px}.visitor-auth .auth-card>h2{font-size:clamp(1.9rem,2.3vw,2.65rem)}.visitor-auth .auth-card .field{font-size:1rem}.visitor-auth .auth-form-side{padding-inline:clamp(28px,4vw,85px)}.visitor-auth .auth-promise-icon{color:var(--accent);background:#c91d3512}.visitor-auth .auth-promise div>span{color:var(--muted)}.visitor-auth .auth-promise{margin-top:0;max-width:100%;rotate:-1deg}.visitor-auth .auth-benefits{margin-bottom:0}.visitor-header{max-width:1800px}.visitor-page,.visitor-auth{--visitor-accent: var(--accent)}@media(min-width:1700px){.visitor-auth .student-companion{width:420px}.visitor-auth .auth-story,.visitor-auth .auth-form-side{padding-block:48px}}@media(max-height:900px)and (min-width:761px){.student-companion{width:290px}.visitor-auth .auth-story h1{font-size:2.6rem}.visitor-auth .auth-story,.visitor-auth .auth-form-side{padding-block:24px}}@media(max-width:760px){.visitor-auth>.auth-page{min-height:0}.visitor-auth .auth-story h1{font-size:2rem}.visitor-auth .auth-story-content>p{font-size:.9rem}.visitor-auth .auth-card>h2{font-size:1.8rem}.student-companion{width:260px}.visitor-auth .auth-story,.visitor-auth .auth-form-side{padding:28px 24px}.visitor-auth .auth-promise{margin-top:0}}@media(prefers-reduced-motion:reduce){.student-pupils{transition:none}}:root[data-motion=off] .student-pupils{transition:none}.animated-student{width:290px;max-width:100%;margin:0 auto;isolation:isolate}.animated-student svg{display:block;width:100%;height:auto;overflow:visible}.animated-student [data-part]{will-change:transform}.animated-student .student-mouth{display:block}.visitor-auth .animated-student{width:290px}.visitor-auth .auth-story h1{font-size:clamp(2.3rem,3vw,3.5rem)}@media(min-width:1700px){.visitor-auth .animated-student{width:320px}}@media(max-height:900px)and (min-width:761px){.visitor-auth .animated-student{width:235px}.visitor-auth .auth-story h1{font-size:2.4rem}}@media(max-width:760px){.visitor-auth .animated-student{width:225px}.visitor-auth .auth-story h1{font-size:2rem}}.scene-student{position:absolute;left:9%;bottom:7%;width:25%;z-index:1}.scene-student .animated-student{width:100%;margin:0}.scene-student svg{overflow:visible}.visitor-header,.visitor-auth>.auth-page{max-width:none}.visitor-page main,.visitor-footer{max-width:1600px}.visitor-auth .auth-story-content{max-width:680px}.visitor-auth .auth-story-content>p{max-width:600px}.visitor-auth .auth-story h1{max-width:650px}.visitor-auth .auth-promise{rotate:0deg}.visitor-art-divider{max-width:390px;margin:0 auto 28px}.how-art{max-width:310px;margin:-155px 0 18px auto}.progress-illustration svg{stroke-width:1.8}@media(min-width:1700px){.visitor-auth .animated-student{width:300px}.visitor-auth .auth-story,.visitor-auth .auth-form-side{padding-block:32px}}@media(max-width:760px){.how-art{margin:0 auto 20px;max-width:250px}.visitor-art-divider{max-width:300px}}.visitor-header nav>.visitor-login{gap:10px;padding:11px 18px;border-radius:999px;border:1px solid var(--visitor-line);background:var(--visitor-soft);color:var(--text);font-weight:600;text-decoration:none;transition:background .2s,border-color .2s}.visitor-header nav>.visitor-login:hover{background:color-mix(in srgb,#c91d35 14%,var(--bg));border-color:#c91d35}.visitor-header nav>.visitor-login[aria-current=page]{text-decoration:none}.visitor-header nav>.visitor-login:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.visitor-header .visitor-login svg{flex-shrink:0;stroke-width:2}.study-scene{--scene-edge: color-mix(in srgb, var(--text) 20%, transparent);--scene-ink: color-mix(in srgb, var(--text) 72%, transparent);color:var(--scene-ink)}.scene-guide{stroke:var(--scene-edge);stroke-width:1;stroke-dasharray:3 6}.scene-route{stroke:#c91d35;stroke-width:1.5;stroke-dasharray:46 290;stroke-linecap:round}.scene-tile{fill:var(--card);stroke:var(--scene-edge);stroke-width:1}.scene-node.is-current{color:var(--text)}.scene-node.is-current .scene-tile{fill:color-mix(in srgb,#c91d35 12%,var(--card));stroke:#c91d35}.scene-status{fill:var(--card);stroke:var(--scene-edge);stroke-width:1}.scene-node .scene-status+svg{color:var(--accent)}.scene-detail{stroke:var(--scene-edge);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.scene-accent{fill:#c91d35}.scene-book-back{fill:var(--visitor-soft);stroke:var(--scene-edge);stroke-width:1}.scene-book{fill:var(--card);stroke:var(--scene-ink);stroke-width:1.5;stroke-linejoin:round}.scene-page-lines{stroke:var(--scene-ink);stroke-width:2;stroke-linecap:round;opacity:.55}.scene-bookmark{fill:#c91d35}.scene-pencil{fill:var(--card);stroke:var(--scene-ink);stroke-width:1.5}.visitor-auth .auth-story h1{font-size:clamp(2.1rem,2.75vw,3.3rem);line-height:1.2}.visitor-auth .auth-story-content>p{max-width:600px;text-wrap:pretty}.visitor-auth .animated-student{width:clamp(200px,24dvh,260px);max-width:70%;margin:30px auto 22px}.how-page .how-intro{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:clamp(32px,5vw,80px);max-width:none;padding:64px 0 48px}.how-intro .support-diagram{min-width:0;width:100%}@media(max-width:760px){.how-page .how-intro{grid-template-columns:1fr;gap:24px;padding:32px 0 28px}}.visitor-auth .auth-promise{display:flex;width:fit-content;max-width:100%;margin:0 auto}@media(max-height:820px)and (min-width:761px){.visitor-auth .animated-student{width:190px;margin:24px auto 18px}}@media(max-width:760px){.visitor-auth .animated-student{width:190px;margin:28px auto 20px}}@media(max-width:760px){.visitor-header nav>.visitor-login{padding:9px 14px}.visitor-auth .auth-story h1{font-size:2rem}}.auth-mail-help{font-size:.8rem;color:var(--muted);line-height:1.65}.auth-mail-help summary{cursor:pointer;color:var(--text)}.auth-mail-help p{margin:10px 0 6px}.auth-mail-help a{color:var(--accent)}.how-lesson-companion{display:flex;align-items:center;gap:24px;margin-top:24px}.how-lesson-companion .how-tip{flex:1;margin:0}.animated-scholar{width:124px;flex:0 0 124px;isolation:isolate}.animated-scholar>svg{display:block;width:100%;height:auto;overflow:visible}.scholar-body{transform-origin:50% 96%;animation:scholar-breathe 6.8s ease-in-out infinite;animation-play-state:paused}.scholar-lids{opacity:0;animation:scholar-blink 8.6s linear infinite;animation-play-state:paused}.animated-scholar[data-active=true] .scholar-body,.animated-scholar[data-active=true] .scholar-lids{animation-play-state:running}@keyframes scholar-breathe{0%,to{transform:rotate(-.35deg) scaleY(1)}50%{transform:rotate(.35deg) scaleY(1.003)}}@keyframes scholar-blink{0%,45%,48%,to{opacity:0}46%,47%{opacity:1}}@media(max-width:760px){.how-lesson-companion{gap:18px}.animated-scholar{width:104px;flex-basis:104px}}@media(prefers-reduced-motion:reduce){.animated-scholar .scholar-body,.animated-scholar .scholar-lids{animation:none}}:root[data-motion=off] .animated-scholar .scholar-body,:root[data-motion=off] .animated-scholar .scholar-lids{animation:none}.campus-page .journey-hero.journey-with-companion{display:grid;grid-template-columns:minmax(0,1fr) 146px;gap:24px;align-items:center}.campus-page .journey-with-companion .hero-copy{width:auto;max-width:none;min-width:0}.campus-page .journey-with-companion .animated-scholar{width:146px;max-width:100%;justify-self:center;align-self:center;flex-basis:auto}.campus-page .journey-with-companion .btn{max-width:100%;white-space:normal}@container campus (max-width:540px){.campus-page .journey-hero.journey-with-companion{grid-template-columns:minmax(0,1fr) 88px;gap:16px;min-height:220px}.campus-page .journey-with-companion .animated-scholar{width:88px}.campus-page .journey-with-companion .btn{padding-inline:12px;font-size:.875rem;line-height:1.3}}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.m-5{margin:calc(var(--spacing) * 5)}.block{display:block}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{font-family:var(--font-family);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#12141c;--sidebar:#101218;--card:#1b1e28;--card-hover:#202330;--border:#2b2e3b;--text:#f1f0f6;--muted:#9a9bab;--subtle:#a1a4b0;--accent:#ff8b98;--brand:#c62038;--accent-soft:#c620381c;--lime:#c5eea1;--danger:#ff8e9a;--green:#91d9b0;--orange:#f1b471;--blue:#85baf6;--shadow:0 18px 70px #0003;--input:#151820;--on-module-node:#fff;--radius:18px;color-scheme:dark}:root[data-theme=light]{--bg:#f4f6fa;--sidebar:#fff;--card:#fff;--card-hover:#f0f3f8;--border:#cfd7e4;--text:#172033;--muted:#526176;--subtle:#68768a;--accent:#b41930;--accent-soft:#c6203814;--lime:#bce796;--danger:#ce3d55;--green:#278852;--orange:#b87328;--blue:#427dca;--shadow:0 16px 48px #1f2e491a;--input:#fff;--on-module-node:#fff;color-scheme:light}:root{--font-family:"DM Sans", sans-serif;--font-page:2rem;--font-title:1.125rem;--font-body:.9375rem;--font-secondary:.875rem;--font-label:.75rem;--brand-hover:#ad1930;--brand-shadow:#8c1528;--on-brand:#fff;--page-gutter:clamp(24px, 4vw, 64px);--column-gap:clamp(28px, 3vw, 48px);--widget-padding:24px;--content-max-width:1120px;--reading-max-width:780px;--learning-node-size:84px;--learning-step-height:220px;--campus-max-width:var(--content-max-width);--campus-widget-width:280px;--campus-column-gap:56px;--avatar-bg:var(--accent-soft);--avatar-ink:var(--accent)}@media(max-width:640px){:root{--page-gutter:20px;--column-gap:24px}}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{letter-spacing:-.035em;font-family:Manrope,sans-serif;font-weight:750}h1{font-size:2.1rem;line-height:1.25}h2{font-size:1.25rem;line-height:1.4}h3{font-size:1.025rem;line-height:1.4}h4{font-size:1rem;line-height:1.5}p{font-size:.94rem;line-height:1.65}small{font-size:.78rem}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:4px}::selection{background:#dc889666}::placeholder{color:var(--subtle)}.btn{white-space:nowrap;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:11px 19px;font-size:.875rem;font-weight:700;line-height:1.4;transition:transform .17s,background .17s,box-shadow .17s;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn:active:not(:disabled){transform:translateY(1px)}.btn-primary,.btn-lime{background:var(--brand);color:var(--on-brand);box-shadow:0 3px 0 var(--brand-shadow)}.btn-secondary{border-color:var(--border);background:var(--card);color:var(--text)}.btn-secondary:hover{background:var(--card-hover)}.btn-ghost{color:var(--muted);background:0 0}.btn-danger{color:#fff;background:#b7374e;box-shadow:0 3px #822d3c}.full{width:100%}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);padding:25px}.muted{color:var(--muted)}.success-text{color:var(--green)}.danger-text{color:var(--danger)!important}.eyebrow{letter-spacing:.115em;color:var(--muted);align-items:center;gap:8px;font-size:.7rem;font-weight:700;line-height:1.5;display:inline-flex}.badge{background:var(--accent-soft);color:var(--accent);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:5px 9px;font-size:.7rem;font-weight:650;line-height:1.4;display:inline-flex}.success-badge{color:var(--green);background:#74d99d16}.progress{background:var(--border);border-radius:10px;height:7px;overflow:hidden}.progress>span{background:var(--module-color,var(--accent));border-radius:10px;height:100%;transition:width .5s;display:block}.color-violet{--module-color:#b56cff;--module-soft:#b56cff26;--module-ink:#241034}.color-blue{--module-color:#4ea1ff;--module-soft:#4ea1ff26;--module-ink:#071b38}.color-green{--module-color:#35d68b;--module-soft:#35d68b26;--module-ink:#082819}.color-orange{--module-color:#ff9a4d;--module-soft:#ff9a4d26;--module-ink:#3a1b08}.color-pink{--module-color:#ff6fae;--module-soft:#ff6fae26;--module-ink:#3d1025}.color-cyan{--module-color:#34d7d0;--module-soft:#34d7d026;--module-ink:#062a2c}[data-theme=light] .color-violet{--module-color:#7c3aed;--module-soft:#7c3aed18}[data-theme=light] .color-blue{--module-color:#2563eb;--module-soft:#2563eb18}[data-theme=light] .color-green{--module-color:#15803d;--module-soft:#15803d18}[data-theme=light] .color-orange{--module-color:#c2410c;--module-soft:#c2410c18}[data-theme=light] .color-pink{--module-color:#be185d;--module-soft:#be185d18}[data-theme=light] .color-cyan{--module-color:#0f766e;--module-soft:#0f766e18}.icon-button{width:34px;height:34px;color:var(--muted);background:0 0;border:0;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--accent-soft);color:var(--accent)}.text-button,.text-link{color:var(--accent);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;padding:0;font-size:.82rem;font-weight:650;line-height:1.5;display:inline-flex}.text-link:hover,.text-button:hover{color:var(--text)}.count-badge{background:var(--border);vertical-align:middle;min-width:23px;height:23px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;margin-left:6px;font-family:DM Sans,sans-serif;font-size:.75rem;display:inline-flex}.section-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px;display:flex}.section-heading p{color:var(--muted);margin-top:5px;font-size:.84rem}.card-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.card-heading>svg{color:var(--muted)}.form-stack{flex-direction:column;gap:19px;display:flex}.field{flex-direction:column;gap:9px;margin-bottom:19px;font-size:.86rem;display:flex}.form-stack .field{margin-bottom:0}.field>span{font-weight:600}.field small{color:var(--muted);line-height:1.55}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{border:1px solid var(--border);background:var(--input);width:100%;color:var(--text);border-radius:10px;min-height:46px;padding:12px 13px;font-size:.89rem;line-height:1.5;transition:border-color .15s}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:0;accent-color:var(--accent);cursor:pointer;flex-shrink:0;padding:0}textarea{resize:vertical;min-height:110px}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:0}input[type=range]{accent-color:var(--accent)}input[type=number]{font-variant-numeric:tabular-nums}.input-icon{position:relative}.input-icon>svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.input-icon>input:not([type=checkbox]):not([type=radio]):not([type=hidden]){padding-left:48px}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-grid>.field{min-width:0}.form-actions,.modal-actions{justify-content:flex-end;align-items:center;gap:14px;margin-top:10px;display:flex}.form-actions>span{color:var(--muted);margin-right:auto;font-size:.77rem}.help-text{color:var(--muted);margin-top:14px;font-size:.79rem;line-height:1.7}.help-text a{color:var(--accent);text-decoration:underline}.help-text svg{vertical-align:middle;margin-right:5px}.notice,.inline-error,.inline-success{background:var(--accent-soft);color:var(--muted);border:1px solid #e7acb62b;border-radius:11px;padding:16px 18px;font-size:.85rem;line-height:1.65}.notice a{color:var(--accent);text-decoration:underline}.notice>svg{flex-shrink:0}.notice:has(>svg){align-items:flex-start;gap:13px;display:flex}.notice strong{color:var(--text)}.inline-error,.error-notice{color:var(--danger);background:#ef809110;border-color:#ef809139}.inline-success{color:var(--green);background:#6bce9010;border-color:#6bce9039}.toggle-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;padding:20px 0;display:flex}.toggle-row:last-child{border:0}.toggle-row strong{font-size:.88rem;font-weight:600}.toggle-row p{color:var(--muted);margin-top:5px;font-size:.81rem}.toggle{background:var(--border);border:0;border-radius:20px;flex-shrink:0;width:43px;height:25px;padding:3px;transition:background .2s}.toggle span{background:#a4a4b1;border-radius:50%;width:19px;height:19px;transition:transform .2s;display:block}.toggle.on{background:var(--accent)}.toggle.on span{background:#fff;transform:translate(18px)}.modal{border:1px solid var(--border);background:var(--card);width:calc(100% - 32px);max-width:540px;color:var(--text);box-shadow:var(--shadow);border-radius:20px;max-height:90dvh;margin:auto;padding:0;position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto}.modal-wide{max-width:850px}.modal::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#080910b5}.modal-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.modal-inner>p{color:var(--muted);margin-bottom:25px}.toast{z-index:100;background:var(--card);max-width:min(90vw,660px);color:var(--green);box-shadow:var(--shadow);border:1px solid #81ceab66;border-radius:13px;align-items:center;gap:12px;padding:15px 18px;font-size:.87rem;display:flex;position:fixed;bottom:24px;left:50%;overflow:hidden;transform:translate(-50%)}.toast>svg{flex-shrink:0}.toast>span{color:var(--text)}.toast>button{color:var(--muted);background:0 0;border:0;margin-left:10px;display:flex}.toast-error{color:var(--danger);border-color:#ff809a66}.toast-countdown{background:var(--accent);transform-origin:0;height:2px;animation:10s linear forwards toast-countdown;position:absolute;bottom:0;left:0;right:0}@keyframes toast-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media(prefers-reduced-motion:reduce){.toast-countdown{animation:none}}.page-loading{min-height:60vh;color:var(--muted);justify-content:center;align-items:center;gap:15px;font-size:.9rem;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-state{background:var(--card);border:1px solid #e57b9033;border-radius:18px;padding:35px}.error-state p{color:var(--muted);margin:12px 0 20px}.standalone-error{max-width:700px;margin:100px auto;padding:25px}.standalone-error>.btn{margin-top:25px}.empty-state{text-align:center;padding:64px 30px}.empty-state p{max-width:490px;color:var(--muted);margin:12px auto 25px}.empty-icon{color:var(--accent);background:var(--accent-soft);border-radius:24px;justify-content:center;align-items:center;width:75px;height:75px;margin:0 auto 22px;display:flex}.empty-compact{text-align:center;padding:45px 20px}.empty-compact>svg{color:var(--accent);margin-bottom:20px}.empty-compact p{color:var(--muted);margin:12px 0 22px}.segmented{background:var(--input);border:1px solid var(--border);border-radius:11px;gap:3px;padding:5px;display:flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:7px;flex:1;padding:10px 14px;font-size:.82rem;font-weight:600}.segmented button.selected{background:var(--card-hover);color:var(--text);box-shadow:0 2px 6px #0001}.segmented.small{padding:3px}.segmented.small button{padding:5px 10px;font-size:.75rem}.badge.ai-badge{border:1px solid #e29ca833;padding:10px 14px;font-size:.8rem}.stat-icon{border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:43px;height:43px;display:flex}.stat-icon.violet{color:var(--accent);background:#e4a0ac17}.stat-icon.green{color:var(--green);background:#8bd3a615}.stat-icon.orange{color:var(--orange);background:#d8a96d15}.stat-icon.blue{color:var(--blue);background:#84b9f015}.page-emblem{background:var(--accent-soft);width:66px;height:66px;color:var(--accent);border-radius:22px;justify-content:center;align-items:center;display:flex}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-motion=off] *,[data-motion=off] :before,[data-motion=off] :after{transition-duration:.01ms!important;animation-duration:.01ms!important}.app-shell{min-height:100dvh;display:flex}.sidebar{background:var(--sidebar);border-right:1px solid var(--border);z-index:40;flex-direction:column;flex-shrink:0;width:248px;height:100dvh;padding:35px 19px 0;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:10px;width:fit-content;display:flex}.brand>svg{width:42px;height:42px;color:var(--accent);flex-shrink:0}.brand>span{letter-spacing:-.035em;font-family:Manrope,sans-serif;font-size:.96rem;font-weight:800;line-height:1.38}.brand>span>span{display:block}.brand-dot{color:var(--accent)}.sidebar .brand{margin-left:13px}.workspace-label{letter-spacing:.115em;color:var(--subtle);margin:43px 14px 18px;font-size:.6rem;font-weight:650}.sidebar nav{flex-direction:column;gap:5px;display:flex}.nav-link{color:var(--muted);border-radius:10px;align-items:center;gap:13px;padding:14px;font-size:.86rem;font-weight:500;transition:background .16s,color .16s;display:flex}.nav-link.active{background:var(--accent-soft);color:var(--accent);font-weight:650}.nav-link.active svg{stroke-width:2.2px}.nav-link:hover{color:var(--text);background:var(--accent-soft)}.nav-new{color:var(--subtle);margin-left:auto;font-size:.57rem;display:none}.sidebar-create{min-height:45px;color:var(--accent);border:1px dashed #e39eaa57;border-radius:11px;justify-content:center;align-items:center;gap:8px;margin:28px 8px 0;font-size:.82rem;font-weight:600;display:flex}.sidebar-create:hover{background:var(--accent-soft)}.sidebar-bottom{margin-top:auto;padding-top:30px}.sidebar-quote{color:var(--subtle);align-items:center;gap:12px;margin:20px 16px 35px;display:flex}.sidebar-quote p{font-size:.68rem;line-height:1.7}.sidebar-quote strong{color:var(--muted);font-weight:500}.tiny-mountain{color:var(--accent);opacity:.6;font-size:1.8rem}.sidebar-profile{border-top:1px solid var(--border);align-items:center;gap:6px;margin-top:17px;padding:23px 5px;display:flex}.sidebar-profile>a{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.sidebar-profile>a>span:last-child{min-width:0}.sidebar-profile strong{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;display:block;overflow:hidden}.sidebar-profile small{color:var(--muted);margin-top:4px;font-size:.65rem;display:block}.sidebar-profile .icon-button{width:27px}.avatar{background:#dd9ba620;border:1px solid #dd9ba62c;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:37px;height:37px;font-size:1.2rem;display:inline-flex}.app-content{flex:1;min-width:0;margin-left:248px}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;height:84px;padding:0 38px;display:flex}.topbar-left{align-items:center;gap:13px;font-size:.77rem;display:flex}.topbar-campus{color:var(--muted)}.topbar-dot,.topbar-date{color:var(--subtle)}.resource-bar{align-items:center;gap:25px;display:flex}.resource{font-variant-numeric:tabular-nums;align-items:center;gap:7px;font-size:.87rem;font-weight:750;display:flex}.resource small{margin-left:-3px;font-size:.7rem;font-weight:500}.resource-streak{color:var(--orange)}.resource-hearts{color:#f38c9d}.resource-xp{color:var(--accent)}.header-avatar{margin-left:2px}.header-avatar .avatar{width:34px;height:34px;font-size:1.1rem}.page{max-width:1570px;min-height:calc(100dvh - 155px);margin:0 auto;padding:36px 38px 48px}.page-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:29px;display:flex}.page-heading .eyebrow{margin-bottom:11px;font-size:.64rem}.page-heading h1{margin-bottom:10px}.page-heading p{color:var(--muted);font-size:.9rem}.greeting-spark{color:var(--orange);vertical-align:middle;margin-left:7px;font-size:1.7rem}.app-footer{border-top:1px solid var(--border);color:var(--subtle);justify-content:space-between;align-items:center;gap:15px;margin:0 38px;padding:25px 0 27px;font-size:.65rem;display:flex}.app-footer>span:first-child{color:var(--muted);font-weight:700}.swiss-cross{color:#d27886;margin-left:4px}.mobile-menu,.sidebar-scrim{display:none}.back-link{color:var(--muted);align-items:center;gap:8px;margin-bottom:24px;font-size:.78rem;display:inline-flex}.back-link:hover{color:var(--text)}.dashboard-grid{grid-template-columns:minmax(0,1fr) 268px;gap:25px;display:grid}.dashboard-primary,.dashboard-rail{min-width:0}.dashboard-rail{flex-direction:column;gap:20px;display:flex}.journey-hero{background:linear-gradient(110deg,#3d2327,#45272c 52%,#472a2f);border:1px solid #94596365;border-radius:20px;min-height:276px;padding:28px 29px;position:relative;overflow:hidden}.hero-copy{z-index:1;max-width:68%;position:relative}.journey-hero .badge{letter-spacing:.06em;color:#efc6cd;background:#e9b2bb16;border:1px solid #efcad026;padding:5px 8px;font-size:.6rem}.journey-hero h2{color:#faeff1;letter-spacing:-.045em;margin-top:16px;font-size:1.65rem;line-height:1.48}.journey-hero h2 em{color:#e9bac2;font-style:normal;font-weight:600}.journey-hero p{color:#c8a7ad;max-width:340px;margin:10px 0 20px;font-size:.79rem;line-height:1.6}.journey-hero .btn{min-height:42px;padding:10px 16px;font-size:.79rem}.hero-footnote{color:#be9ca2;align-items:center;gap:5px;margin-top:17px;font-size:.64rem;display:flex}.alpine-scene{display:block}.journey-hero .alpine-scene{width:330px;position:absolute;bottom:-7px;right:-35px}.scene-star{animation:4s ease-in-out infinite shimmer}@keyframes shimmer{50%{opacity:.3;transform:translateY(-2px)}}.quick-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:19px 0 31px;display:grid}.quick-stats .card{border-radius:14px;align-items:center;gap:12px;padding:16px;display:flex;position:relative}.quick-stats .stat-icon{border-radius:11px;width:37px;height:37px}.quick-stats .card>div>span{color:var(--muted);white-space:nowrap;font-size:.64rem}.quick-stats strong{font-family:Manrope,sans-serif;font-size:1.2rem;font-weight:750;line-height:1.6;display:block}.quick-stats strong small{color:var(--muted);font-family:DM Sans,sans-serif;font-size:.7rem;font-weight:500}.quick-stats .badge{padding:2px 4px;font-size:.52rem;position:absolute;top:12px;right:10px}.dashboard-primary>.section-heading{margin-bottom:18px}.module-grid{gap:18px;display:grid}.dashboard-modules{grid-template-columns:repeat(2,minmax(0,1fr))}.module-card{border:1px solid var(--border);background:var(--card);border-radius:17px;min-width:0;padding:22px;transition:transform .2s,border-color .2s;display:block}.module-card:hover{border-color:var(--module-color);transform:translateY(-4px)}.module-card-top{justify-content:space-between;align-items:center;margin-bottom:23px;display:flex}.subject-icon{border:1px solid var(--module-color,var(--accent));justify-content:center;align-items:center;width:49px;height:49px;display:flex}@supports (color:color-mix(in lab,red,red)){.subject-icon{border:1px solid color-mix(in srgb,var(--module-color,var(--accent)) 22%,transparent)}}.subject-icon{color:var(--module-color,var(--accent));background:var(--module-soft,var(--accent-soft));border-radius:15px}.card-arrow{color:var(--subtle)}.module-card-label{justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.module-card-label>span:first-child{letter-spacing:.07em;text-transform:uppercase;color:var(--module-color);font-size:.61rem;font-weight:650}.module-card-label .badge{background:var(--module-soft);color:var(--module-color);padding:3px 6px;font-size:.57rem}.module-card h3{overflow-wrap:anywhere;font-size:1.02rem;line-height:1.45}.module-card>p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.4em;margin:9px 0 23px;font-size:.77rem;line-height:1.6;display:-webkit-box;overflow:hidden}.module-card-progress{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:9px;font-size:.67rem;display:flex}.module-card-progress strong{color:var(--module-color);font-weight:600}.module-card-footer{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-top:17px;font-size:.64rem;display:flex}.module-card-footer>span{align-items:center;gap:5px;display:flex}.new-module-card{text-align:center;border:1px dashed #535466;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;min-height:292px;padding:23px;transition:border-color .2s,background .2s;display:flex}.new-module-card:hover{border-color:var(--accent);background:var(--accent-soft)}.new-module-plus{border:1px solid var(--border);background:var(--card);width:48px;height:48px;color:var(--accent);border-radius:15px;justify-content:center;align-items:center;margin-bottom:18px;display:flex}.new-module-card h3{font-size:1.01rem;line-height:1.6}.new-module-card p{color:var(--muted);margin:9px 0 20px;font-size:.75rem}.new-module-card>span:last-child{color:var(--accent);align-items:center;gap:9px;font-size:.74rem;font-weight:600;display:flex}.starter-prompt{align-items:center;gap:17px;margin-top:20px;display:flex}.starter-prompt>div:nth-child(2){flex:1}.starter-prompt p{color:var(--muted);margin-top:5px;font-size:.79rem}.starter-prompt .btn{font-size:.76rem}.learning-note{background:linear-gradient(100deg,var(--card),var(--bg));border-radius:14px;align-items:center;gap:16px;margin-top:25px;padding:19px 23px;display:flex}.note-spark{color:var(--accent);flex-shrink:0}.learning-note strong{font-size:.78rem}.learning-note p{color:var(--muted);margin-top:4px;font-size:.72rem}.learning-note>a{color:var(--muted);margin-left:auto}.daily-goal{text-align:center;padding:23px 20px}.daily-goal .card-heading{margin-bottom:12px}.daily-goal h3{font-size:.93rem}.goal-ring{width:158px;height:158px;margin:15px auto 16px;position:relative}.goal-ring>svg{fill:none;stroke-width:8px;stroke-linecap:round;width:100%;height:100%;transform:rotate(-90deg)}.ring-track{stroke:var(--border)}.ring-value{stroke:var(--accent);transition:stroke-dasharray .6s}.goal-ring>div{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.goal-ring>div>svg{color:var(--accent);fill:var(--accent);margin-bottom:5px}.goal-ring strong{font-family:Manrope,sans-serif;font-size:1.5rem;font-weight:800;line-height:1.7}.goal-ring strong span{color:var(--muted);font-family:DM Sans,sans-serif;font-size:.81rem;font-weight:500}.goal-ring small{color:var(--muted);font-size:.66rem}.daily-goal h4{color:var(--muted);letter-spacing:0;font-family:DM Sans,sans-serif;font-size:.74rem;font-weight:500}.week-days{border-bottom:1px solid var(--border);justify-content:space-between;gap:7px;margin:22px 1px 21px;padding-bottom:19px;display:flex}.week-days>div{flex-direction:column;align-items:center;gap:9px;display:flex}.week-days>div>span{color:var(--subtle);font-size:.62rem}.week-days i{background:var(--border);border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;display:flex}.week-days .today i{border:1px solid var(--accent);background:0 0}.week-days .today i>span{background:var(--accent);border-radius:50%;width:7px;height:7px}.week-days .done i{background:var(--accent);color:var(--bg)}.week-days .today>span,.week-days .done>span{color:var(--accent)}.daily-goal>.text-link{font-size:.71rem}.streak-card{background:linear-gradient(110deg,#c2916210,var(--card));align-items:center;gap:13px;padding:18px;display:flex}.flame-art{color:var(--orange);flex-shrink:0;display:flex}.streak-card strong{font-size:.85rem}.streak-card p{color:var(--muted);margin-top:5px;font-size:.68rem}.exam-countdown{padding:23px 20px}.exam-countdown .card-heading{margin-bottom:23px}.exam-countdown h3{font-size:.92rem}.exam-countdown h4{font-size:.94rem;line-height:1.6}.exam-countdown p{color:var(--muted);margin:8px 0 19px;font-size:.74rem}.exam-countdown>.text-link{font-size:.71rem}.exam-mini-art{color:#ecc880;background:#ecc8800d;border:1px solid #ecc88022;border-radius:15px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:19px;display:flex}.exam-countdown>.badge{margin-bottom:12px}.countdown-number{color:var(--accent);align-items:center;gap:13px;margin:16px 0 21px;font-family:Manrope,sans-serif;font-size:2.7rem;font-weight:800;display:flex}.countdown-number>span{color:var(--muted);max-width:80px;font-family:DM Sans,sans-serif;font-size:.7rem;font-weight:400;line-height:1.6}.list-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:5px;padding-bottom:25px;display:flex}.tabs{gap:25px;display:flex}.tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:12px 0;font-size:.83rem}.tabs button.active{color:var(--accent);border-color:var(--accent)}.search-field{width:260px;min-width:0}.full-module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}@media(min-width:1700px){.journey-hero{min-height:302px;padding:32px 34px}.journey-hero h2{font-size:1.9rem}.journey-hero .alpine-scene{width:420px;right:-15px}.hero-copy{max-width:67%}.dashboard-grid{grid-template-columns:minmax(0,1fr) 304px;gap:28px}.dashboard-modules{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar{width:268px}.app-content{margin-left:268px}.page{padding:43px 45px}.quick-stats .card{padding:20px}.quick-stats .card>div>span{font-size:.7rem}.module-card{padding:25px}.nav-link{font-size:.91rem}}@media(max-width:1250px){.sidebar{width:220px;padding-left:14px;padding-right:14px}.app-content{margin-left:220px}.page{padding:28px 27px}.topbar{padding:0 27px}.topbar-date,.topbar-dot{display:none}.dashboard-grid{grid-template-columns:minmax(0,1fr) 244px;gap:20px}.journey-hero{min-height:289px;padding:25px}.journey-hero .alpine-scene{opacity:.8;width:275px;bottom:-4px;right:-68px}.journey-hero h2{font-size:1.5rem}.hero-copy{max-width:82%}.quick-stats{gap:10px}.quick-stats .card{gap:8px;padding:14px 11px}.quick-stats .stat-icon{width:31px;height:34px}.quick-stats .card>div>span{font-size:.57rem}.quick-stats .badge{display:none}.quick-stats strong{font-size:1.08rem}.full-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-bar{gap:19px}.module-card{padding:19px}.module-card-label,.starter-prompt{flex-wrap:wrap}}@media(max-width:1050px){.dashboard-grid{grid-template-columns:1fr}.dashboard-rail{grid-template-columns:1fr 1fr;display:grid}.daily-goal{grid-row:span 2}.streak-card{align-self:stretch}.journey-hero .alpine-scene{opacity:1;width:340px;right:-5px}.hero-copy{max-width:70%}.quick-stats .card{gap:12px;padding:19px 14px}.quick-stats .card>div>span{font-size:.67rem}.quick-stats strong{font-size:1.25rem}.page-heading h1{font-size:1.85rem}.page-heading>.btn{padding:10px 13px;font-size:.75rem}.resource-bar{gap:15px}.resource small{display:none}.topbar{height:76px}.app-footer>span:nth-child(2){display:none}}@media(max-width:760px){.sidebar{width:255px;transition:transform .2s;transform:translate(-100%)}.menu-open .sidebar{transform:translate(0)}.menu-open .sidebar-scrim{z-index:35;background:#0008;display:block;position:fixed;top:0;right:0;bottom:0;left:0}.app-content{margin-left:0}.mobile-menu{display:inline-flex}.topbar{gap:10px;height:68px;padding:0 18px}.topbar-left{gap:8px}.topbar-campus{font-size:.68rem}.resource-bar{gap:15px}.resource{gap:5px;font-size:.76rem}.resource svg{width:17px}.header-avatar{display:none}.page{padding:25px 20px 38px}.page-heading{align-items:flex-start;gap:15px;margin-bottom:23px}.page-heading h1{font-size:1.8rem}.page-heading p{font-size:.83rem}.page-heading .eyebrow{font-size:.57rem}.page-heading>.btn{border-radius:11px;min-height:40px;margin-top:20px;padding:10px;font-size:0}.page-heading>.btn>svg{width:20px;height:20px}.page-heading>.ai-badge{display:none}.app-footer{margin:0 20px;font-size:.59rem}.dashboard-grid{gap:22px}.journey-hero{min-height:295px;padding:24px}.journey-hero h2{font-size:1.48rem}.journey-hero .alpine-scene{opacity:.7;width:280px;bottom:-5px;right:-52px}.hero-copy{max-width:83%}.hero-copy p{max-width:270px}.quick-stats{gap:9px;margin-bottom:27px}.quick-stats .card{padding:14px 10px;display:block}.quick-stats .stat-icon{width:30px;height:30px;margin-bottom:9px}.quick-stats .stat-icon svg{width:17px}.quick-stats .card>div>span{white-space:normal;min-height:2.2em;font-size:.62rem;line-height:1.35;display:block}.quick-stats strong{margin-top:5px;font-size:1.19rem}.quick-stats strong small{font-size:.62rem}.dashboard-modules{gap:14px}.module-card{padding:18px}.module-card h3{font-size:.97rem}.new-module-card{min-height:312px;padding:17px}.new-module-card h3{font-size:.95rem}.new-module-card>span:last-child{font-size:.67rem}.card{padding:21px}.section-heading h2{font-size:1.15rem}.section-heading p{font-size:.78rem}.section-heading>.text-link{font-size:.72rem}.list-toolbar{flex-direction:column;align-items:stretch;gap:16px}.search-field{width:100%}.tabs{justify-content:space-between;gap:14px}.tabs button{font-size:.79rem}.full-module-grid{gap:16px}.form-grid{gap:13px}.form-actions{flex-wrap:wrap}.form-actions>span{width:100%}.modal-actions .btn{white-space:normal}.page-emblem{border-radius:15px;width:47px;height:47px}.page-emblem svg{width:25px}.page-heading>.page-emblem{flex-shrink:0;margin-top:15px}}@media(max-width:470px){.dashboard-modules,.full-module-grid{grid-template-columns:1fr}.new-module-card{min-height:250px}.dashboard-rail{grid-template-columns:1fr}.daily-goal{grid-row:auto}.goal-ring{width:145px;height:145px}.week-days{max-width:280px;margin-left:auto;margin-right:auto}.journey-hero .alpine-scene{opacity:.4;width:240px;right:-70px}.hero-copy{max-width:100%}.hero-footnote{font-size:.6rem}.journey-hero h2{font-size:1.44rem}.resource-bar{gap:11px}.resource-streak small{display:none}.topbar-campus{max-width:75px;line-height:1.4}.module-card h3{font-size:1.15rem}.module-card>p{font-size:.84rem}.module-card-label>span:first-child{font-size:.68rem}.module-card-footer,.module-card-progress{font-size:.74rem}.module-card-label .badge{font-size:.66rem}.form-grid{grid-template-columns:1fr}.learning-note p{font-size:.7rem}.section-heading{align-items:flex-start}.quick-stats strong small{font-size:.57rem}}.auth-page{grid-template-columns:1.1fr 1fr;min-height:100dvh;display:grid}.auth-story{color:#f1ecfa;background:radial-gradient(at 40% 80%,#573137,#321e21 44%,#1b1a27 80%);border-right:1px solid #70505538;flex-direction:column;min-height:100dvh;padding:44px 60px 28px;display:flex;position:relative;overflow:hidden}.auth-story .brand{color:#f1ecfa}.auth-story-content{z-index:1;margin:auto 0;padding:55px 0 10px;position:relative}.auth-story-content>.eyebrow{color:#c89ba3;letter-spacing:.12em;font-size:.61rem}.live-dot{background:#c1e8a9;border-radius:50%;width:6px;height:6px;margin-right:3px;display:inline-block;box-shadow:0 0 12px #b5e09166}.auth-story h1{letter-spacing:-.06em;margin:23px 0;font-size:clamp(2.7rem,3.4vw,4rem);font-weight:650;line-height:1.25}.auth-story h1 em{color:#e7adb7;font-style:normal}.auth-story-content>p{color:#c1a8ac;font-size:.92rem;line-height:1.9}.auth-benefits{gap:20px;margin-top:24px;display:flex}.auth-benefits>span{color:#cbafb4;align-items:center;gap:7px;font-size:.69rem;display:flex}.auth-benefits svg{color:#afd698}.auth-landscape{height:265px;margin-top:8px;position:relative}.auth-landscape .alpine-scene{opacity:.9;width:410px;position:absolute;bottom:-15px;right:-18px}.floating-note{z-index:2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#4b2d32c9;border:1px solid #cc9ca437;border-radius:15px;align-items:center;gap:14px;padding:15px 20px;animation:6s ease-in-out infinite float-note;display:flex;position:absolute;bottom:33px;left:4px;transform:rotate(-3deg);box-shadow:0 20px 30px #230e1226}.note-icon{color:#edc0c8;background:#ebbbc31a;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.floating-note strong{font-size:.76rem;font-weight:600;display:block}.floating-note small{color:#cca6ac;margin-top:4px;font-size:.65rem;display:block}.auth-story-footer{color:#a7868c;justify-content:space-between;align-items:center;margin-top:25px;font-size:.63rem;display:flex}@keyframes float-note{50%{transform:translateY(-7px)rotate(-2deg)}}.auth-form-side{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:50px 35px;display:flex}.auth-card{width:100%;max-width:390px;margin:auto 0}.auth-symbol{background:var(--accent-soft);width:51px;height:51px;color:var(--accent);border:1px solid #e29ca84a;border-radius:17px;justify-content:center;align-items:center;margin-bottom:24px;display:flex}.auth-card>.eyebrow{margin-bottom:12px;font-size:.59rem;display:block}.auth-card>h2{font-size:1.9rem;line-height:1.35}.auth-card>.muted{margin:12px 0 25px;font-size:.85rem}.auth-card>.segmented{margin-bottom:25px}.auth-card .field{font-size:.77rem}.auth-card .form-stack{gap:17px}.auth-card input{min-height:47px;font-size:.82rem}.auth-card .btn{font-size:.82rem}.forgot-link{align-self:flex-end;margin-top:-5px;margin-bottom:3px;font-size:.7rem}.divider{color:var(--subtle);align-items:center;gap:15px;margin:24px 0 19px;font-size:.65rem;display:flex}.divider:before,.divider:after{content:"";background:var(--border);flex:1;height:1px}.social-auth{gap:13px;display:flex}.social-auth>a{flex:1}.provider-google{color:#a2b2e2;font-family:Arial,sans-serif;font-size:1.1rem}.provider-facebook{color:#7d9eeb;font-family:Arial,sans-serif;font-size:1.45rem}.disabled{opacity:.38;cursor:not-allowed}.social-note{color:var(--subtle);text-align:center;margin-top:11px;font-size:.63rem}.demo-link{width:100%;color:var(--accent);background:0 0;border:0;justify-content:center;align-items:center;gap:9px;padding:24px 0 8px;font-size:.76rem;display:flex}.auth-caption{color:var(--subtle);text-align:center;margin-top:35px;font-size:.63rem}.auth-back{margin-top:22px;font-size:.78rem}.module-hero{border:1px solid var(--module-color);align-items:center;gap:25px;margin-bottom:33px;padding:28px 30px;display:flex}@supports (color:color-mix(in lab,red,red)){.module-hero{border:1px solid color-mix(in srgb,var(--module-color) 25%,var(--border))}}.module-hero{background:linear-gradient(110deg,var(--module-soft),var(--card));border-radius:19px}.subject-icon.large{border-radius:24px;flex-shrink:0;width:78px;height:78px}.module-hero-copy{flex:1;min-width:0}.module-hero-copy h1{margin:9px 0;font-size:1.85rem}.module-hero-copy>.eyebrow{color:var(--module-color);font-size:.65rem}.module-hero-copy>.eyebrow>span{margin:0 3px}.module-hero-copy>p{color:var(--muted);font-size:.84rem;line-height:1.6}.module-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:20px;margin-top:18px;font-size:.72rem;display:flex}.module-meta>span{align-items:center;gap:6px;display:flex}.path-layout{grid-template-columns:minmax(0,1fr) 282px;align-items:start;gap:30px;display:grid}.path-rail{flex-direction:column;gap:20px;display:flex;position:sticky;top:25px}.path-rail .card{padding:23px}.path-rail>.text-button{color:var(--subtle);margin:6px auto;font-size:.72rem}.path-summary h3{font-size:.98rem;line-height:1.6}.large-percent{letter-spacing:-.05em;margin:18px 0 13px;font-family:Manrope,sans-serif;font-size:3rem;font-weight:800}.large-percent>span{color:var(--muted);margin-left:4px;font-size:1.45rem}.path-summary>p{color:var(--muted);margin:12px 0 20px;font-size:.74rem}.path-summary>.btn{margin-top:12px;font-size:.79rem}.path-rail .card-heading{margin-bottom:15px}.path-rail .card>p{font-size:.81rem;line-height:1.75}.path-rail .text-link{margin-top:17px;font-size:.75rem}.objectives-text{white-space:pre-line;color:var(--muted)}.document-mini{color:var(--muted);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 0;font-size:.73rem;display:flex}.document-mini svg{color:var(--accent);flex-shrink:0}.document-mini span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.unit-heading{border:1px solid var(--border);background:var(--card);z-index:1;border-radius:16px;align-items:center;gap:17px;padding:21px 24px;display:flex;position:relative}.unit-number{background:var(--module-soft);width:47px;height:47px;color:var(--module-color);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;font-family:Manrope,sans-serif;font-size:1.08rem;font-weight:700;display:flex}.unit-heading>div{flex:1;min-width:0}.unit-heading .eyebrow{color:var(--module-color);font-size:.58rem}.unit-heading h2{margin-top:4px;font-size:1.1rem;line-height:1.5}.unit-heading p{color:var(--muted);margin-top:4px;font-size:.75rem;line-height:1.6}.lesson-track{flex-direction:column;align-items:center;gap:5px;padding:35px 20px 10px;display:flex;position:relative}.lesson-stop{text-align:center;width:100%;max-width:330px;transform:translate(var(--offset));flex-direction:column;align-items:center;min-height:166px;padding:18px 10px 25px;display:flex;position:relative}.lesson-stop:before{content:"";border-left:3px dashed var(--border);height:42px;position:absolute;top:-18px;left:45%;transform:rotate(-20deg)}.lesson-stop:first-child:before{display:none}.lesson-node{border:5px solid var(--module-color);border-radius:50%;width:73px;height:70px}@supports (color:color-mix(in lab,red,red)){.lesson-node{border:5px solid color-mix(in srgb,var(--module-color) 25%,var(--bg))}}.lesson-node{background:var(--module-color);color:#352326;box-shadow:0 7px 0 var(--module-color),inset 0 3px #fff4}@supports (color:color-mix(in lab,red,red)){.lesson-node{box-shadow:0 7px color-mix(in srgb,var(--module-color) 60%,#252330),inset 0 3px #fff4}}.lesson-node{justify-content:center;align-items:center;transition:transform .17s;display:flex}.lesson-node:hover:not(:disabled){transform:translateY(-4px)}.lesson-node:disabled{opacity:1;background:var(--card);border-color:var(--border);color:var(--subtle);box-shadow:0 6px #0002}.lesson-stop>strong{margin-top:20px;font-size:.87rem;font-weight:650;line-height:1.5}.lesson-stop>span:not(.start-bubble){color:var(--muted);margin-top:7px;font-size:.65rem;line-height:1.5}.lesson-stop>span>b{opacity:.45;margin:0 5px;font-weight:400}.lesson-stop.completed .lesson-node{background:var(--green);color:#1b3928;border-color:#8bd5a73d;box-shadow:0 6px #3f7455,inset 0 3px #fff3}.lesson-stop.current{padding-top:30px}.lesson-stop.current .lesson-node{outline-offset:8px;outline:2px dashed #dd9da888}.start-bubble{z-index:2;background:var(--card);color:var(--module-color);letter-spacing:.07em;border:1px solid var(--border);border-radius:8px;padding:8px 11px;font-size:.63rem;font-weight:750;animation:3s ease-in-out infinite bubble;position:absolute;top:-10px;box-shadow:0 4px 10px #0001}.start-bubble:after{content:"";background:var(--card);border-right:1px solid var(--border);border-bottom:1px solid var(--border);width:8px;height:8px;position:absolute;bottom:-5px;left:46%;transform:rotate(45deg)}@keyframes bubble{50%{transform:translateY(-4px)}}.creator-layout{grid-template-columns:255px minmax(0,760px);align-items:start;gap:38px;display:grid}.creator-steps{position:sticky;top:30px}.creator-step{gap:14px;padding:19px 0;display:flex;position:relative}.creator-step:not(:nth-child(4)):after{content:"";border-left:1px solid var(--border);position:absolute;top:62px;bottom:-17px;left:20px}.creator-step>span{background:var(--card);color:var(--subtle);border:1px solid var(--border);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.creator-step strong{color:var(--muted);font-size:.83rem;font-weight:650}.creator-step p{color:var(--subtle);margin-top:6px;font-size:.7rem}.creator-step.active>span{background:var(--accent-soft);color:var(--accent);border-color:#e7abb555}.creator-step.active strong{color:var(--text)}.creator-step.done>span{color:var(--green);background:#80cea812}.creator-aside-note{border-top:1px solid var(--border);margin-top:22px;padding:24px 8px}.creator-aside-note>svg{color:var(--accent);margin-bottom:15px}.creator-aside-note>h3{margin-bottom:12px;font-size:.93rem}.creator-aside-note>p{color:var(--muted);font-size:.78rem}.creator-aside-note>.text-link{margin-top:24px;font-size:.73rem}.creator-main{flex-direction:column;gap:22px;min-width:0;display:flex}.creator-main>.card{padding:29px}.subject-picker{position:relative}.subject-picker input[role=combobox]{z-index:2;position:relative}.subject-picker-menu{z-index:8;background:var(--card);border:1px solid var(--accent);border-radius:0 0 12px 12px;position:absolute;top:calc(100% - 1px);left:0;right:0;overflow:hidden;box-shadow:0 18px 35px #05070e80}.subject-picker:focus-within input[role=combobox]{border-color:var(--accent);border-bottom-right-radius:0;border-bottom-left-radius:0}.subject-picker-heading{color:var(--accent);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:7px;padding:11px 13px 8px;font-size:.72rem;font-weight:750;display:flex}.subject-picker-options{flex-wrap:wrap;gap:7px;padding:0 12px 12px;display:flex}.subject-picker-options button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--card-hover);color:var(--text);cursor:pointer;font:inherit;border-radius:999px;padding:7px 10px;font-size:.79rem;transition:border-color .16s,background .16s,color .16s}.subject-picker-options button:hover,.subject-picker-options button[aria-selected=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.subject-picker .field-hint{margin-top:7px;display:block}.step-number{color:var(--subtle);opacity:.4;font-family:Manrope,sans-serif;font-size:2rem;font-weight:800}.color-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:3px;display:grid}.color-swatch{border:1px solid var(--module-color);border-radius:12px;justify-content:flex-start;align-items:center;gap:8px;width:100%;min-width:0;height:42px;padding:0 10px;display:flex}@supports (color:color-mix(in lab,red,red)){.color-swatch{border:1px solid color-mix(in srgb,var(--module-color) 35%,var(--border))}}.color-swatch{background:var(--module-color)}@supports (color:color-mix(in lab,red,red)){.color-swatch{background:color-mix(in srgb,var(--module-color) 12%,var(--card))}}.color-swatch{color:var(--text);text-align:left;font-size:.69rem;font-weight:650;transition:transform .18s,border-color .18s,background-color .18s,box-shadow .18s}.color-swatch.selected{border-color:var(--module-color);background:var(--module-color)}@supports (color:color-mix(in lab,red,red)){.color-swatch.selected{background:color-mix(in srgb,var(--module-color) 22%,var(--card))}}.color-swatch.selected{box-shadow:0 0 0 2px var(--module-color),0 8px 18px var(--module-color)}@supports (color:color-mix(in lab,red,red)){.color-swatch.selected{box-shadow:0 0 0 2px color-mix(in srgb,var(--module-color) 28%,transparent),0 8px 18px color-mix(in srgb,var(--module-color) 17%,transparent)}}.color-swatch:hover{border-color:var(--module-color);transform:translateY(-2px)}.color-swatch:focus-visible{outline:3px solid var(--module-color)}@supports (color:color-mix(in lab,red,red)){.color-swatch:focus-visible{outline:3px solid color-mix(in srgb,var(--module-color) 55%,transparent)}}.color-swatch:focus-visible{outline-offset:2px}.color-swatch-dot{background:var(--module-color);width:17px;height:17px;box-shadow:inset 0 2px 2px #fff5,0 0 0 3px var(--module-color);border-radius:50%;flex:0 0 17px}@supports (color:color-mix(in lab,red,red)){.color-swatch-dot{box-shadow:inset 0 2px 2px #fff5,0 0 0 3px color-mix(in srgb,var(--module-color) 18%,transparent)}}.color-swatch>span:not(.color-swatch-dot){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.upload-zone{text-align:center;background:var(--accent-soft);cursor:pointer;border:1px dashed #786165;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:30px 20px;display:flex;position:relative}.upload-zone>svg{color:var(--accent);margin-bottom:6px}.upload-zone strong{font-size:.91rem;font-weight:650}.upload-zone>span{color:var(--muted);font-size:.8rem}.upload-zone>span>u{color:var(--accent);text-decoration:none}.upload-zone small{color:var(--subtle);margin-top:8px;font-size:.69rem}.upload-zone input{opacity:0;cursor:pointer;position:absolute;top:0;right:0;bottom:0;left:0}.upload-zone.uploading{opacity:.6}.document-row{border-bottom:1px solid var(--border);align-items:center;gap:13px;padding:17px 0;display:flex}.file-icon{color:var(--accent);background:var(--accent-soft);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:42px;display:flex}.document-row>div{flex:1;min-width:0}.document-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:.81rem;display:block;overflow:hidden}.document-row small{color:var(--muted);margin-top:5px;font-size:.65rem;display:block}.generation-settings{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.generation-settings .field{font-size:.77rem}.estimate-box{border:1px solid var(--border);border-radius:11px;justify-content:space-between;align-items:center;gap:15px;margin:24px 0;padding:17px;font-size:.8rem;display:flex}.estimate-box>span{align-items:center;gap:8px;display:flex}.estimate-box>span svg{color:var(--accent)}.estimate-box small{color:var(--muted);font-size:.72rem}.creator-main .notice{margin:18px 0}.plan-unit{background:var(--input);border:1px solid var(--border);border-radius:13px;margin:20px 0;padding:18px}.plan-unit-title{align-items:center;gap:10px;margin-bottom:17px;display:flex}.plan-unit-title>span{color:var(--accent);font-size:.76rem;font-weight:750}.plan-unit-title>input{background:0 0;border:0;padding:8px;font-size:.88rem;font-weight:650}.plan-lesson{border-bottom:1px solid var(--border);padding:12px 0}.plan-lesson:last-of-type{border:0}.plan-lesson>div{align-items:center;gap:8px;display:flex}.plan-lesson>div>svg{color:var(--muted);flex-shrink:0}.plan-lesson input{min-height:36px;padding:8px 10px;font-size:.77rem}.plan-lesson select{max-width:132px;min-height:36px;padding:8px;font-size:.68rem}.plan-lesson .plan-objectives{color:var(--muted);background:0 0;border:0;min-height:32px;margin-top:9px;padding-left:25px;font-size:.7rem}.plan-unit>.text-button{margin:13px 0 0 25px;font-size:.72rem}.plan-actions{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:27px;padding-top:23px;display:flex}.generation-progress{text-align:center;padding:50px 30px!important}.generation-orbit{background:var(--accent-soft);width:98px;height:98px;color:var(--accent);box-shadow:0 0 65px var(--accent-soft);border-radius:50%;justify-content:center;align-items:center;margin:5px auto 25px;display:flex;position:relative}.generation-orbit:before{content:"";border:1px dashed #e8afb977;border-radius:50%;animation:20s linear infinite spin;position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.generation-progress h2{max-width:460px;margin:23px auto 12px;font-size:1.45rem}.generation-progress>p{color:var(--muted);max-width:410px;margin:0 auto 30px;font-size:.84rem}.generation-progress-footer{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.generation-progress-footer>strong{color:var(--accent);font-size:.9rem}.generation-progress-footer>.btn{font-size:.74rem}.ready-banner{border-color:#8fd0a750;align-items:center;gap:15px;display:flex}.ready-banner>svg{color:var(--green);flex-shrink:0}.ready-banner>div{flex:1}.ready-banner p{color:var(--muted);margin-top:6px;font-size:.77rem}.ready-banner .btn{font-size:.77rem}.profile-card{background:linear-gradient(105deg,var(--accent-soft),var(--card));align-items:center;gap:24px;margin-bottom:22px;padding:30px;display:flex}.avatar-xl{border-radius:27px;width:88px;height:88px;font-size:2.8rem}.profile-main{flex:1;min-width:0}.profile-main>div{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.profile-main h2{font-size:1.55rem}.profile-main p{color:var(--muted);margin:10px 0;font-size:.81rem}.profile-main>.muted{font-size:.73rem}.level-badge{font-size:.65rem}.profile-level{width:230px;margin-left:auto}.profile-level>div:first-child{justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px;font-size:.72rem;display:flex}.profile-level>div>strong{color:var(--accent);font-weight:700}.profile-level>div>span{color:var(--muted);font-size:.65rem}.profile-level>small{color:var(--subtle);margin-top:11px;font-size:.63rem;display:block}.account-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:23px;display:grid}.account-stats>.card{padding:21px;position:relative}.account-stats .stat-icon{width:38px;height:38px;position:absolute;top:20px;right:19px}.account-stats>.card>span:not(.stat-icon){color:var(--muted);margin:4px 0 15px;font-size:.7rem;display:block}.account-stats strong{font-family:Manrope,sans-serif;font-size:1.9rem;font-weight:750;line-height:1.4}.account-stats strong small{color:var(--muted);margin-left:5px;font-family:DM Sans,sans-serif;font-size:.8rem;font-weight:500}.account-grid{grid-template-columns:1.35fr 1fr;gap:23px;margin-bottom:32px;display:grid}.activity-chart .section-heading h2,.activity-calendar h2{font-size:1.1rem}.chart-container{width:100%;min-width:0}.chart-empty-note{color:var(--muted);text-align:center;font-size:.72rem}.heatmap{grid-template-columns:repeat(7,1fr);gap:9px;margin-top:30px;display:grid}.heatmap>div{aspect-ratio:1;background:var(--border);border-radius:6px;min-height:20px;max-height:36px}.heatmap .heat-1,.heat-1{background:#e6aab438!important}.heatmap .heat-2,.heat-2{background:#e6aab48a!important}.heatmap .heat-3,.heat-3{background:var(--accent)!important}.heatmap-legend{color:var(--subtle);justify-content:flex-end;align-items:center;gap:5px;margin-top:15px;font-size:.61rem;display:flex}.heatmap-legend i{background:var(--border);border-radius:3px;width:10px;height:10px}.heatmap-legend span{margin:0 3px}.calendar-stat{border-top:1px solid var(--border);align-items:center;gap:13px;margin-top:26px;padding-top:20px;display:flex}.calendar-stat>svg{color:var(--orange)}.calendar-stat strong{font-size:.87rem}.calendar-stat span{color:var(--muted);margin-top:4px;font-size:.68rem;display:block}.module-progress-row{margin-top:23px;display:block}.module-progress-row>div:first-child{justify-content:space-between;align-items:center;gap:20px;margin-bottom:11px;font-size:.8rem;display:flex}.module-progress-row strong{font-weight:500}.module-progress-row span{color:var(--muted);font-size:.74rem}.category-row{align-items:center;gap:15px;margin:23px 0;font-size:.78rem;display:flex}.category-row>span{width:42%;color:var(--muted);font-size:.75rem}.category-bar{background:var(--border);border-radius:5px;flex:1;height:6px;overflow:hidden}.category-bar>i{background:var(--orange);border-radius:5px;height:100%;display:block}.category-row>strong{color:var(--orange);font-size:.75rem}.achievement-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.achievement{text-align:center;opacity:1;padding:25px 19px}.achievement:not(.earned) .achievement-icon{opacity:.65}.achievement-tiers{justify-content:center;gap:7px;margin:12px 0;display:flex}.achievement-tiers span{border:1px solid var(--border);width:25px;height:25px;color:var(--subtle);border-radius:50%;place-items:center;font-size:.65rem;display:grid}.achievement-tiers span.unlocked{color:var(--orange);background:#dab87319;border-color:#cfb28449}.achievement-progress{margin:14px 0}.achievement-progress small{color:var(--muted);margin-top:7px;font-size:.65rem;display:block}.achievement.earned{opacity:1;background:linear-gradient(150deg,#c5a2730c,var(--card));border-color:#cfb28449}.achievement-icon{background:var(--border);width:65px;height:65px;color:var(--subtle);border-radius:22px;justify-content:center;align-items:center;margin:0 auto 18px;display:flex}.earned .achievement-icon{color:var(--orange);background:#dab87319;box-shadow:0 0 0 5px #dab87305}.achievement h3{font-size:.94rem}.achievement p{color:var(--muted);margin:9px 0 16px;font-size:.72rem}.achievement>span{border:1px solid var(--border);color:var(--subtle);border-radius:6px;padding:4px 8px;font-size:.61rem;display:inline-flex}.earned>span{color:var(--orange);border-color:#d3b47733}.avatar-picker{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:4px;display:flex}.avatar-picker>button{background:0 0;border:2px solid #0000;border-radius:15px;padding:4px}.avatar-picker>button.selected{border-color:var(--accent)}.settings-layout{grid-template-columns:225px minmax(0,760px);align-items:start;gap:35px;display:grid}.settings-nav{flex-direction:column;gap:5px;display:flex;position:sticky;top:25px}.settings-nav button{color:var(--muted);text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:15px 14px;font-size:.8rem;font-weight:500;display:flex}.settings-main{flex-direction:column;gap:22px;min-width:0;display:flex}.settings-main>.card{padding:29px}.settings-main>.card>h2{font-size:1.15rem}.settings-main>.card>.muted{margin:9px 0 23px;font-size:.82rem}.settings-main .form-grid{margin-top:18px}.theme-picker{grid-template-columns:1fr 1fr;gap:19px;margin:25px 0 9px;display:grid}.theme-preview{border:2px solid var(--border);text-align:left;background:0 0;border-radius:12px;padding:13px 13px 14px;overflow:hidden}.theme-preview.selected{border-color:var(--accent)}.mini-ui{background:#141720;border:1px solid #6663;border-radius:7px;gap:10px;height:95px;padding:10px;display:flex}.mini-ui>i{background:#242937;border-radius:3px;width:22%;height:100%;display:block}.mini-ui>div{flex:1;padding:0 2px}.mini-ui b{background:#81525a;border-radius:3px;width:100%;height:19px;display:block}.mini-ui span{background:#292e3b;border-radius:4px;width:26%;height:30px;margin:12px 7% 0 0;display:inline-block}.theme-preview.light .mini-ui{background:#f5f5fa}.theme-preview.light .mini-ui>i{background:#e0e1ed}.theme-preview.light .mini-ui b{background:#edc0c8}.theme-preview.light .mini-ui span{background:#e1e3ed}.theme-preview>span{color:var(--muted);align-items:center;gap:9px;margin-top:14px;font-size:.78rem;display:flex}.theme-preview>span>svg:last-child:not(:first-child){color:var(--accent);margin-left:auto}.goal-picker{flex-direction:column;gap:10px;margin-bottom:25px;display:flex}.goal-picker>button{border:1px solid var(--border);background:var(--input);text-align:left;border-radius:11px;align-items:center;gap:18px;padding:15px 18px;display:flex}.goal-picker>button>div{flex:1}.goal-picker strong{font-size:.86rem;font-weight:600;display:block}.goal-picker span{color:var(--muted);margin-top:5px;font-size:.72rem;display:block}.goal-picker b{color:var(--muted);font-size:.8rem;font-weight:600}.goal-picker button.selected{border-color:var(--accent);background:var(--accent-soft)}.goal-picker .selected b,.goal-picker .selected>svg{color:var(--accent)}.settings-save{justify-content:flex-end;gap:15px;display:flex}.connection-status{align-items:center;gap:9px;margin:16px 0 23px;font-size:.76rem;display:flex}.connection-status>span:not(.badge){background:var(--orange);border-radius:50%;flex:0 0 7px;width:7px;height:7px}.connection-status.connected>span:not(.badge){background:var(--green)}.connection-status>strong{color:var(--muted);font-weight:500}.connection-status>.badge{flex-shrink:0;margin-left:auto;font-size:.6rem}.key-actions{justify-content:space-between;align-items:center;gap:15px;margin:-3px 0 21px;display:flex}.key-actions .text-link,.key-actions .text-button{font-size:.74rem}.budget-spent{flex-direction:column;justify-content:center;gap:12px;padding:0 8px 18px;display:flex}.budget-spent small{color:var(--muted);font-size:.73rem}.budget-spent strong{color:var(--accent);font-family:Manrope,sans-serif;font-size:1.3rem}.account-security-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;padding:19px 0;font-size:.8rem;display:flex}.account-security-row>span{color:var(--muted)}.account-security-row>strong{overflow-wrap:anywhere;text-align:right;font-weight:500}.ai-standard-card .section-heading{align-items:flex-start}.ai-standard-card .section-heading>svg{color:var(--accent);flex:none}.ai-standard{border:1px solid var(--border);background:var(--surface-raised);border-radius:12px;justify-content:space-between;align-items:center;gap:18px;margin-top:22px;padding:16px 18px;display:flex}.ai-standard strong{font-size:.86rem}.ai-standard span{color:var(--muted);text-align:right;font-size:.74rem}.catalog-heading{margin-bottom:28px}.catalog-heading h1{margin:7px 0 8px}.catalog-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px;display:grid}.catalog-card{flex-direction:column;align-items:flex-start;min-height:250px;display:flex}.catalog-card small{color:var(--accent);letter-spacing:.03em;font-weight:700}.catalog-card h2{margin:16px 0 10px;font-size:1.15rem}.catalog-card p{color:var(--muted);flex:1;margin:0 0 24px;line-height:1.55}.catalog-empty{align-items:center;gap:22px;max-width:700px;min-height:185px;padding:30px;display:flex}.catalog-empty-icon{width:62px;height:62px;color:var(--accent);background:var(--accent-soft);border-radius:18px;flex:0 0 62px;place-items:center;display:grid}.catalog-empty-label{color:var(--accent);align-items:center;gap:7px;font-size:.72rem;font-weight:700;display:inline-flex}.catalog-empty h2{margin:10px 0 7px;font-size:1.15rem}.catalog-empty p{color:var(--muted);margin:0;line-height:1.55}.account-password-form{margin-top:24px}.account-form-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:6px;display:flex}.settings-main .help-text+.btn{margin-top:25px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%;font-size:.73rem}th{color:var(--muted);border-bottom:1px solid var(--border);padding:13px 14px;font-weight:500}td{border-bottom:1px solid var(--border);padding:17px 14px}td strong{font-weight:500;display:block}td small{color:var(--muted);margin-top:6px;font-size:.64rem;display:block}.review-banner{background:linear-gradient(120deg,var(--accent-soft),var(--card));align-items:center;gap:20px;margin-bottom:25px;display:flex}.review-banner>svg{color:var(--accent);flex-shrink:0}.review-banner p{color:var(--muted);margin-top:6px;font-size:.79rem}.review-grid{grid-template-columns:1fr 1fr;gap:21px;display:grid}.review-card>div:first-child{justify-content:space-between;align-items:center;margin-bottom:23px;display:flex}.review-number{color:var(--subtle);font-family:Manrope,sans-serif;font-size:1.4rem}.review-card h3{margin-bottom:12px;font-size:1.06rem;line-height:1.6}.review-card p{color:var(--muted);margin-bottom:25px;font-size:.74rem}.review-card>.text-link{font-size:.79rem}.exams-grid{grid-template-columns:1fr 1fr;gap:25px;display:grid}.exam-card{padding:27px}.exam-card-top{justify-content:space-between;align-items:center;margin-bottom:26px;display:flex}.exam-card-top .badge{color:var(--module-color);background:var(--module-soft)}.exam-card>.eyebrow{color:var(--module-color);margin-bottom:10px;font-size:.64rem}.exam-card h2{font-size:1.3rem}.exam-meta{color:var(--muted);gap:17px;margin:19px 0 24px;font-size:.73rem;display:flex}.exam-meta>span{align-items:center;gap:6px;display:flex}.exam-card>.btn{margin-top:15px}.exam-history{margin-top:30px}.history-row{border-bottom:1px solid var(--border);align-items:center;gap:17px;padding:19px 0;font-size:.82rem;display:flex}.history-row>svg{color:var(--orange);flex-shrink:0}.history-row>strong{flex:1;font-weight:500}.history-row>span:not(.badge){color:var(--muted);font-size:.73rem}@media(max-width:1250px){.auth-story{padding:40px 38px 25px}.creator-layout{grid-template-columns:210px minmax(0,1fr);gap:23px}.creator-main>.card{padding:23px}.settings-layout{grid-template-columns:190px minmax(0,1fr);gap:24px}.settings-nav button{gap:8px;padding:14px 10px;font-size:.74rem}.profile-card{gap:17px;padding:24px}.profile-level{width:180px}.profile-main>div{gap:10px}.profile-main h2{font-size:1.35rem}.account-stats .stat-icon{margin-bottom:14px;position:static}.account-stats>.card>span:not(.stat-icon){margin:0 0 12px}.account-grid{grid-template-columns:1.2fr 1fr;gap:18px}.account-grid>.card{padding:22px}.achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.path-layout{grid-template-columns:minmax(0,1fr) 248px;gap:22px}.unit-heading{padding:18px}.unit-heading h2{font-size:1rem}}@media(max-width:1050px){.auth-story{padding:35px 30px}.auth-story h1{font-size:3rem}.auth-story-content>p{font-size:.83rem}.auth-benefits{flex-direction:column;gap:10px}.auth-landscape .alpine-scene{width:350px;right:-45px}.floating-note{padding:12px 15px;bottom:15px;left:-8px}.floating-note strong{font-size:.7rem}.floating-note small{font-size:.61rem}.auth-form-side{padding:40px 25px}.auth-card>h2{font-size:1.65rem}.creator-layout{grid-template-columns:1fr}.creator-steps{grid-template-columns:repeat(4,1fr);gap:15px;display:grid;position:static}.creator-step{flex-direction:column;gap:10px;padding:8px 0;display:flex}.creator-step:not(:nth-child(4)):after{border-left:0;border-top:1px solid var(--border);inset:29px 0 auto 60px}.creator-step p,.creator-aside-note{display:none}.creator-step strong{font-size:.69rem}.settings-layout{grid-template-columns:1fr}.settings-nav{flex-direction:row;padding-bottom:4px;display:flex;position:static;overflow-x:auto}.settings-nav button{white-space:nowrap;flex-shrink:0;padding:12px 15px}.account-stats{gap:13px}.account-stats>.card{padding:18px}.account-stats>.card>span:not(.stat-icon){font-size:.63rem}.account-stats strong{font-size:1.6rem}.profile-card{flex-wrap:wrap}.profile-level{border-top:1px solid var(--border);width:100%;margin-left:0;padding-top:15px}.profile-level>div:first-child{margin-bottom:10px}.profile-level>small{margin-top:9px}.account-grid{grid-template-columns:1fr}.heatmap{grid-template-columns:repeat(14,1fr);gap:8px;margin-top:18px}.heatmap>div{min-height:16px}.path-layout{grid-template-columns:1fr}.path-rail{grid-template-columns:1fr 1fr;display:grid;position:static}.path-summary{grid-row:span 2}.path-rail>.text-button{grid-column:1/-1}.module-hero{gap:19px;padding:24px}.module-hero-copy h1{font-size:1.6rem}.module-hero .subject-icon.large{border-radius:20px;width:64px;height:64px}.exams-grid{gap:17px}.exam-card{padding:23px}.exam-meta{flex-direction:column;gap:9px}.generation-settings{gap:10px}.generation-settings .field{font-size:.72rem}.plan-lesson select{max-width:100px}}@media(max-width:760px){.auth-page{flex-direction:column;display:flex}.auth-story{min-height:auto;padding:26px 28px}.auth-story-content{padding:31px 0 9px}.auth-story-content>.eyebrow{font-size:.56rem}.auth-story h1{margin:17px 0;font-size:2.55rem}.auth-story h1 br:nth-child(2){display:none}.auth-story-content>p{max-width:270px;font-size:.8rem}.auth-story-content>p br{display:none}.auth-landscape{opacity:.35;z-index:-1;width:220px;height:210px;position:absolute;bottom:-10px;right:-80px}.auth-landscape .alpine-scene{width:310px}.floating-note,.auth-benefits,.auth-story-footer{display:none}.auth-form-side{min-height:auto;padding:34px 26px 28px}.auth-symbol{display:none}.auth-card>.eyebrow{font-size:.55rem}.auth-card>h2{font-size:1.65rem}.auth-card>.muted{margin-bottom:20px}.auth-caption{font-size:.59rem}.module-hero{align-items:flex-start;gap:14px;padding:20px;position:relative}.module-hero .subject-icon.large{border-radius:15px;width:49px;height:49px}.module-hero .subject-icon.large svg{width:25px}.module-hero-copy h1{padding-right:15px;font-size:1.3rem;line-height:1.5}.module-hero>.icon-button{width:28px;height:28px;position:absolute;top:14px;right:10px}.module-hero-copy>.eyebrow{padding-right:15px;font-size:.55rem}.module-hero-copy>p{font-size:.75rem}.module-meta{gap:10px;margin-top:15px;font-size:.65rem}.module-meta svg{width:13px}.unit-heading h2{font-size:1rem}.unit-heading p{font-size:.71rem}.unit-heading{gap:12px;padding:18px}.unit-number{border-radius:11px;width:39px;height:39px;font-size:.95rem}.unit-heading>.icon-button{width:24px;height:28px}.lesson-stop{max-width:235px;transform:translate(calc(var(--offset) * .65))}.lesson-stop>strong{font-size:.84rem}.path-rail{gap:15px}.path-rail .card{padding:20px}.path-rail>.card h3{font-size:.91rem}.path-summary .btn{white-space:normal;padding:11px;font-size:.72rem}.creator-steps{gap:10px}.creator-step strong{font-size:.62rem;line-height:1.5;display:block}.creator-step>span{border-radius:11px;width:37px;height:37px}.creator-step:not(:nth-child(4)):after{top:26px;left:48px}.creator-main>.card{padding:22px}.creator-main>.card h2{font-size:1.12rem}.creator-main>.card .section-heading p{font-size:.76rem}.step-number{font-size:1.65rem}.color-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.generation-settings{gap:10px}.generation-settings .field{font-size:.67rem}.generation-settings input{padding:10px}.estimate-box{flex-direction:column;align-items:flex-start;padding:14px}.estimate-box>span{font-size:.76rem}.plan-unit{padding:13px}.plan-lesson>div{flex-wrap:wrap}.plan-lesson>div>input{flex:1;min-width:130px}.plan-lesson select{flex:1;max-width:none;margin-left:24px}.plan-lesson .plan-objectives{padding-left:5px}.plan-unit-title>input{padding:6px;font-size:.8rem}.plan-actions>.btn{white-space:normal;width:100%;font-size:.79rem}.ready-banner{flex-wrap:wrap}.ready-banner .btn{width:100%;margin-top:9px}.generation-progress h2{font-size:1.23rem}.generation-progress-footer .btn{padding:10px;font-size:.67rem}.profile-card{gap:16px;padding:23px}.avatar-xl{border-radius:21px;width:64px;height:64px;font-size:2rem}.profile-main h2{font-size:1.22rem}.profile-main p{font-size:.75rem}.profile-main .level-badge{font-size:.58rem}.profile-main>.muted{font-size:.68rem}.account-stats{grid-template-columns:1fr 1fr;gap:13px}.account-stats>.card{padding:18px 20px}.account-stats .stat-icon{width:31px;height:31px;position:absolute;top:18px;right:18px}.account-stats .stat-icon svg{width:18px}.account-stats>.card>span:not(.stat-icon){max-width:70%;min-height:2.2em;line-height:1.5}.account-stats strong{font-size:1.7rem}.account-grid>.card{padding:22px 19px}.activity-chart .section-heading{gap:10px}.activity-chart .section-heading h2{font-size:1rem}.activity-chart .section-heading p{font-size:.7rem}.segmented.small button{padding:5px 8px;font-size:.67rem}.achievement-grid{grid-template-columns:1fr 1fr;gap:14px}.achievement{padding:23px 15px}.achievement h3{font-size:.83rem}.achievement p{font-size:.67rem}.achievement>span{font-size:.56rem}.settings-nav{gap:3px}.settings-nav button{padding:11px 12px;font-size:.74rem}.settings-main>.card{padding:22px}.settings-main>.card>h2{font-size:1.07rem}.settings-main>.card .section-heading h2{font-size:1.12rem}.theme-picker{gap:12px}.theme-preview{padding:10px}.theme-preview>span{gap:6px;font-size:.67rem}.theme-preview>span svg{width:14px}.mini-ui{gap:7px;height:78px;padding:8px}.mini-ui span{height:24px}.settings-save{flex-wrap:wrap;gap:12px}.settings-save>.btn{flex:1;font-size:.78rem}.goal-picker>button{gap:12px;padding:13px}.goal-picker strong{font-size:.81rem}.goal-picker b{font-size:.75rem}.connection-status{flex-wrap:wrap}.connection-status>.badge{margin-left:16px}.account-security-row{flex-wrap:wrap}.review-grid,.exams-grid{grid-template-columns:1fr}.review-banner{gap:14px;padding:22px}.review-banner h3{font-size:.9rem}.review-banner p{font-size:.74rem}.exam-meta{flex-flow:wrap;gap:18px}.history-row{flex-wrap:wrap;gap:12px}.history-row>strong{font-size:.77rem}.history-row>span:not(.badge){font-size:.65rem}.heatmap{grid-template-columns:repeat(7,1fr)}.heatmap>div{max-height:45px}}@media(max-width:470px){.path-rail{grid-template-columns:1fr}.path-summary{grid-row:auto}.form-grid{grid-template-columns:1fr}.plan-actions{gap:13px}.creator-step:not(:nth-child(4)):after{left:44px}.creator-main>.card{padding:20px}.account-stats .stat-icon{position:static}.profile-main{flex-basis:55%}.profile-level{padding-top:18px}.profile-main>.muted{overflow-wrap:anywhere}.achievement-grid{gap:10px}.achievement{padding:20px 12px}.theme-preview>span{flex-wrap:wrap}.settings-main>.card{padding:20px}.key-actions{flex-direction:column;align-items:flex-start}}.code-challenge{grid-template-columns:minmax(290px,.78fr) minmax(0,1.45fr);align-items:start;gap:20px;width:min(1240px,100% - 40px);margin:42px auto;display:grid}.code-brief,.code-workspace{border:1px solid var(--border);background:var(--card);border-radius:18px;min-width:0}.code-brief{padding:28px;position:sticky;top:20px}.code-language{color:var(--accent);font:700 12px/1 var(--font-mono,monospace);letter-spacing:.08em}.code-brief h2{margin:13px 0 11px;font-size:24px}.code-brief p,.code-brief li{color:var(--muted);line-height:1.58}.code-brief-section{margin-top:22px}.code-brief-section h3,.code-section-title strong{color:var(--text);font-size:14px}.code-brief-section p{white-space:pre-line;margin:8px 0 0}.code-rules{border:1px solid var(--border);background:var(--card-hover);border-radius:12px;padding:14px}@supports (color:color-mix(in lab,red,red)){.code-rules{background:color-mix(in srgb,var(--card-hover) 72%,transparent)}}.code-rules ul{margin:9px 0 0;padding-left:18px}.code-rules li+li{margin-top:5px}.code-io-contract{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.code-io-contract>div{border:1px solid var(--border);background:var(--card-hover);border-radius:12px;padding:13px}.code-io-contract h3{color:var(--accent);margin:0;font-size:13px}.code-io-contract p{color:var(--muted);white-space:pre-line;margin:7px 0 0;font-size:13px;line-height:1.45}.code-test-list{gap:9px;margin-top:26px;display:grid}.code-section-title{align-items:flex-start;gap:9px;display:flex}.code-section-title svg{color:var(--accent);flex:none;margin-top:1px}.code-section-title span{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.4;display:block}.code-test-case{background:var(--card-hover);border-radius:12px;grid-template-columns:1fr 1fr;gap:8px;padding:12px;display:grid}.code-test-case>span{color:var(--muted);grid-column:1/-1;font-size:12px}.code-test-case div{min-width:0}.code-test-case small,.console-test small{color:var(--muted);margin-bottom:3px;font-size:11px;display:block}.code-test-case code{overflow-wrap:anywhere;white-space:pre-wrap;color:var(--text);font-size:12px;display:block}.code-workspace{flex-direction:column;display:flex;overflow:hidden}.code-editor-head{border-bottom:1px solid var(--border);font:600 13px/1 var(--font-mono,monospace);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.code-editor-head>div:first-child{gap:5px;display:grid}.code-editor-head>div:first-child small{color:var(--muted);font:500 12px/1.2 var(--font-sans,sans-serif)}.code-editor-shell{resize:vertical;border-bottom:1px solid var(--border);background:#10131c;height:clamp(420px,52vh,680px);min-height:320px;max-height:75vh;overflow:hidden}.code-codemirror{min-width:0;height:100%}.code-codemirror .cm-editor{outline:none;height:100%}.code-codemirror .cm-focused{outline-offset:-2px;outline:2px solid #8dafff59}.code-codemirror .cm-lintRange-error{text-decoration-color:#fa7182}.code-error-jump{border:1px solid var(--danger);margin-top:12px}@supports (color:color-mix(in lab,red,red)){.code-error-jump{border:1px solid color-mix(in srgb,var(--danger) 60%,var(--border))}}.code-error-jump{background:var(--danger);border-radius:8px;padding:8px 11px}@supports (color:color-mix(in lab,red,red)){.code-error-jump{background:color-mix(in srgb,var(--danger) 10%,var(--card))}}.code-error-jump{color:var(--text);font:600 13px/1.3 var(--font-sans,sans-serif);cursor:pointer}.code-error-jump:hover{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.code-error-jump:hover{background:color-mix(in srgb,var(--danger) 17%,var(--card))}}.code-actions{justify-content:space-between;align-items:center;gap:14px;padding:15px;display:flex}.code-actions>p{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.code-actions>div{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.code-grading-note{color:var(--muted);margin:0;padding:0 15px 12px;font-size:12px;line-height:1.5}.code-console{border-top:1px solid var(--border);background:var(--card-hover);color:var(--muted);padding:18px}.code-console-title{align-items:flex-start;gap:11px;display:flex}.code-console-title svg{color:var(--accent);margin-top:2px}.code-console strong{color:var(--text)}.code-console p{margin:3px 0 0;font-size:13px;line-height:1.45}.code-console.passed .code-console-title svg{color:var(--success)}.code-console.failed .code-console-title svg,.code-console.compilation_error .code-console-title svg,.code-console.runtime_error .code-console-title svg,.code-console.timeout .code-console-title svg{color:var(--danger)}.code-feedback{border-left:3px solid var(--accent);background:var(--accent);border-radius:8px;padding:11px 12px;margin:14px 0 0!important}@supports (color:color-mix(in lab,red,red)){.code-feedback{background:color-mix(in srgb,var(--accent) 9%,var(--card))}}.code-feedback{color:var(--text)}.code-console.failed .code-feedback,.code-console.compilation_error .code-feedback,.code-console.runtime_error .code-feedback,.code-console.timeout .code-feedback{border-left-color:var(--danger)}.console-results{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:15px;display:grid}.console-test{border:1px solid var(--border);background:var(--card);border-radius:10px;grid-template-columns:1fr 1fr;gap:9px;padding:12px;font-size:12px;display:grid}.console-test>strong{grid-column:1/-1}.console-test code{color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;display:block}.console-test.passed{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.console-test.passed{border-color:color-mix(in srgb,var(--success) 45%,var(--border))}}.console-test.failed,.console-test.compilation_error,.console-test.runtime_error,.console-test.timeout{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.console-test.failed,.console-test.compilation_error,.console-test.runtime_error,.console-test.timeout{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}}.console-empty{border:1px dashed var(--border);border-radius:10px;padding:12px;margin:15px 0 0!important}@media(max-width:760px){.code-challenge{grid-template-columns:1fr;width:min(100% - 24px,680px);margin:18px auto}.code-brief{padding:20px;position:static}.code-io-contract{grid-template-columns:1fr}.code-editor-shell{height:420px;min-height:300px;max-height:70vh}.code-actions{flex-direction:column;align-items:stretch}.code-actions>div{justify-content:stretch}.code-actions button{flex:1}}.lesson-player{background:var(--bg);min-height:100dvh;padding-bottom:170px}.lesson-topbar{align-items:center;gap:25px;max-width:1110px;margin:0 auto;padding:29px 30px;display:flex}.lesson-brand svg{width:34px;height:34px;color:var(--accent)}.lesson-header-progress{flex:1;max-width:670px;margin:0 auto}.lesson-header-progress>div:first-child{color:var(--muted);justify-content:space-between;align-items:center;gap:15px;margin-bottom:10px;font-size:.73rem;display:flex}.lesson-header-progress strong{font-size:.66rem;font-weight:500}.lesson-header-progress .progress{height:10px}.lesson-clock{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:7px;min-width:63px;font-size:.77rem;display:flex}.course-reader{min-width:0;max-width:800px;margin:38px auto;padding:0 30px}.course-reader>.badge{margin-bottom:17px;font-size:.66rem}.course-reader>h1{font-size:2.15rem;line-height:1.4}.course-meta{border-bottom:1px solid var(--border);color:var(--muted);align-items:center;gap:21px;margin:20px 0 34px;padding-bottom:24px;font-size:.75rem;display:flex}.course-meta>span{align-items:center;gap:6px;display:flex}.course-reader>.notice{margin:20px 0 30px}.course-reader>.notice p{margin-top:5px;font-size:.8rem}.markdown{color:var(--text);overflow-wrap:anywhere;font-size:1rem;line-height:1.9}.markdown h1,.markdown h2,.markdown h3,.markdown h4{margin:1.6em 0 .7em;line-height:1.5}.markdown h1{font-size:1.6rem}.markdown p{font-size:inherit;line-height:inherit;color:inherit;margin:.85em 0}.markdown p:first-child{margin-top:0}.markdown p:last-child{margin-bottom:0}.markdown ul,.markdown ol{margin:1em 0;padding-left:1.6em}.markdown li{margin:.3em 0;padding-left:.2em}.markdown ul{list-style:outside}.markdown ol{list-style:decimal}.markdown li::marker{color:var(--accent)}.markdown strong{color:var(--text);font-weight:650}.markdown blockquote{border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--muted);border-radius:0 12px 12px 0;margin:25px 0;padding:18px 22px}.markdown code{background:var(--accent-soft);color:var(--accent);border-radius:5px;padding:3px 6px;font-family:Consolas,monospace;font-size:.88em}.markdown pre{border:1px solid var(--border);background:var(--input);border-radius:12px;margin:23px 0;padding:21px;overflow:auto}.markdown pre code{color:var(--text);background:0 0;padding:0;font-size:.88rem}.markdown a{color:var(--accent);text-decoration:underline}.markdown table{white-space:normal;margin:23px 0;font-size:.88rem}.markdown th{color:var(--text);background:var(--card);font-weight:650}.markdown hr{border:0;border-top:1px solid var(--border);margin:30px 0}.markdown .katex-display{padding:10px 0;overflow:auto hidden}.course-page{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.course-section{border:1px solid var(--border);background:var(--card);border-radius:16px;min-width:0;max-width:100%;padding:clamp(20px,3vw,30px)}.course-section .markdown,.course-section .markdown blockquote{min-width:0;max-width:100%}.course-section .markdown>:first-child{margin-top:0}.course-section .markdown>:last-child{margin-bottom:0}.course-section .markdown h2{border-bottom:1px solid var(--border);margin-top:0;padding-bottom:12px}.course-pagination{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;font-size:.85rem;display:flex}.course-pagination .course-continue{margin-left:auto}@media(max-width:600px){.course-pagination:not(.single-page){grid-template-columns:1fr 1fr;display:grid}.course-pagination>span{text-align:center;grid-area:1/1/auto/-1}.course-pagination:not(.single-page)>.btn{white-space:normal;grid-row:2;align-self:stretch}.course-pagination:not(.single-page) .course-continue{margin-left:0}}.course-ready{background:var(--card);border:1px solid var(--border);border-radius:15px;align-items:center;gap:18px;margin-top:40px;padding:23px;display:flex}.course-ready>div{flex:1}.course-ready strong{font-size:.88rem;font-weight:650}.course-ready p{color:var(--muted);margin-top:5px;font-size:.76rem}.course-ready .btn{font-size:.8rem}.exercise-body{max-width:750px;margin:65px auto 50px;padding:0 30px;animation:.25s ease-out question-enter}.exercise-kicker{justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px;display:flex}.exercise-kicker .badge{letter-spacing:.045em;font-size:.62rem}.exercise-kicker>span:last-child:not(.badge){color:var(--subtle);font-size:.72rem}.exercise-body>h1{margin-bottom:32px;line-height:1.6}.exercise-body>h1>.markdown{letter-spacing:-.025em;font-family:Manrope,sans-serif;font-size:1.75rem;font-weight:650;line-height:1.65}.answer-options{flex-direction:column;gap:14px;display:flex}.answer-option{background:var(--card);border:2px solid var(--border);text-align:left;border-radius:14px;align-items:center;gap:18px;min-height:69px;padding:18px 22px;transition:border-color .15s,background .15s,transform .15s;display:flex;box-shadow:0 3px #0002}.answer-option:hover:not(:disabled){border-color:#8e777b;transform:translateY(-1px)}.answer-option.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 3px #cc8f9944}.answer-option:disabled{opacity:1;cursor:default}.answer-option>.markdown{flex:1;font-size:.99rem;line-height:1.6}.answer-option.selected>.markdown{color:var(--accent)}.answer-option>svg{color:var(--accent);flex-shrink:0}.answer-letter{width:29px;height:29px;color:var(--muted);border:1px solid #75758563;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.selected .answer-letter{border-color:var(--accent);color:var(--accent)}.answer-letter.checkbox{border-radius:6px}.hint-section{margin-top:28px}.hint-section .text-button{color:var(--muted);font-size:.78rem}.hint-section .text-button svg{color:var(--orange)}.hint-content{background:#ecb2660a;border:1px solid #ecb2662c;border-radius:13px;margin-top:17px;padding:18px 22px}.hint-content>.markdown{color:var(--muted);font-size:.86rem}.free-answer>span{color:var(--muted);font-size:.78rem}.free-answer input{background:var(--card);border-width:2px;min-height:70px;padding:20px;font-size:1.1rem}.free-answer textarea{border-width:2px;padding:20px;font-size:1rem}.free-answer .math-input{letter-spacing:.03em;font-family:Consolas,monospace}.free-answer small{font-size:.72rem}.order-options>.help-text{margin-bottom:16px}.order-option{border:1px solid var(--border);background:var(--card);border-radius:11px;align-items:center;gap:15px;margin-bottom:11px;padding:14px 17px;display:flex}.order-option>span{width:25px;color:var(--accent);font-size:.7rem}.order-option>.markdown{flex:1;font-size:.94rem}.order-option>div:last-child{display:flex}.order-option .icon-button{width:30px}.match-options>label{background:var(--card);border:1px solid var(--border);border-radius:12px;align-items:center;gap:24px;margin-bottom:16px;padding:15px;display:flex}.match-options>label>.markdown{flex:1;font-size:.93rem}.match-options select{width:50%;font-size:.83rem}.answer-footer{background:var(--sidebar);border-top:1px solid var(--border);z-index:10;max-height:43dvh;padding:25px 30px;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.answer-footer-inner{justify-content:space-between;align-items:center;gap:30px;max-width:980px;margin:auto;display:flex}.answer-encouragement{color:var(--muted);align-items:center;gap:10px;font-size:.8rem;display:flex}.answer-encouragement>svg{color:var(--accent)}.answer-footer-inner>.btn{min-width:160px}.answer-footer.correct{background:#548766;border-top-color:#94d9aa4a}@supports (color:color-mix(in lab,red,red)){.answer-footer.correct{background:color-mix(in srgb,#548766 14%,var(--sidebar))}}.answer-footer.incorrect{background:#934957;border-top-color:#e78d984a}@supports (color:color-mix(in lab,red,red)){.answer-footer.incorrect{background:color-mix(in srgb,#934957 14%,var(--sidebar))}}.feedback{align-items:flex-start;gap:17px;display:flex}.feedback-icon{width:42px;height:42px;color:var(--green);background:#87c39c20;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.incorrect .feedback-icon{color:var(--danger);background:#d97b8920}.feedback h3{letter-spacing:0;color:var(--green);flex-wrap:wrap;align-items:center;gap:8px;font-family:DM Sans,sans-serif;font-size:1rem;font-weight:700;line-height:1.5;display:flex}.exercise-report-trigger{vertical-align:middle;width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.answer-footer.correct{--report-color:var(--green)}.answer-footer.incorrect{--report-color:var(--danger)}.exercise-report-trigger:hover{color:var(--report-color,var(--accent));background:var(--report-color,var(--accent))}@supports (color:color-mix(in lab,red,red)){.exercise-report-trigger:hover{background:color-mix(in srgb,var(--report-color,var(--accent)) 12%,transparent)}}.exercise-report-trigger:hover{border-color:var(--report-color,var(--accent))}@supports (color:color-mix(in lab,red,red)){.exercise-report-trigger:hover{border-color:color-mix(in srgb,var(--report-color,var(--accent)) 28%,transparent)}}.exercise-report-trigger:focus-visible{outline:2px solid var(--report-color,var(--accent));outline-offset:2px}.exercise-report-form{color:var(--text);font-size:.95rem}.exercise-report-form form{gap:18px;display:grid}.exercise-report-form textarea{resize:vertical;min-height:120px}.exercise-report-form .help-text{margin:0 0 20px;line-height:1.6}.exercise-report-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.exercise-report-success{justify-items:start;gap:14px;display:grid}.exercise-report-success h3,.exercise-report-success p{margin:0}.exercise-report-result{justify-content:center;align-items:center;gap:8px;display:flex}.code-console-title>div>strong{vertical-align:middle}@media(max-width:480px){.exercise-report-actions{flex-direction:column-reverse}.exercise-report-actions .btn{width:100%}}.incorrect .feedback h3{color:var(--danger)}.feedback h3>span{color:var(--green);vertical-align:middle;background:#98d4a517;border-radius:5px;margin-left:13px;padding:3px 8px;font-size:.72rem;font-weight:700;display:inline-block}.feedback>.markdown,.feedback>div>.markdown{color:var(--muted);margin-top:6px;font-size:.84rem;line-height:1.7}.expected-answer{color:var(--text);margin-top:9px;font-size:.85rem}.expected-answer strong{font-weight:600}.lesson-result{text-align:center;max-width:660px;margin:55px auto;padding:0 30px}.result-medal{color:#493818;background:linear-gradient(135deg,#e2c77a,#aa8340);border-radius:40px;justify-content:center;align-items:center;width:135px;height:135px;margin:0 auto 42px;display:flex;position:relative;transform:rotate(-7deg);box-shadow:0 8px #745b36,0 0 0 10px #c9a4550d,0 0 100px #edc66d0d}.result-medal>span{color:var(--accent);font-size:2rem;position:absolute;top:15px;left:-40px}.result-medal>i{color:var(--green);font-size:2.6rem;font-style:normal;position:absolute;bottom:10px;right:-38px}.result-medal.retry{color:#fff;background:linear-gradient(145deg,#f3435d,#df203d 54%,#c71331);box-shadow:0 8px #8e1027,inset 0 3px #ff9aaa,inset 0 -2px #b7112c}.lesson-result>.badge{letter-spacing:.07em;font-size:.63rem}.lesson-result>h1{margin:20px 0 17px;font-size:2.15rem}.lesson-result>p{color:var(--muted);max-width:490px;margin:0 auto;font-size:.9rem;line-height:1.8}.result-stats{grid-template-columns:repeat(3,1fr);gap:15px;margin:34px 0;display:grid}.result-stats>div{border:1px solid var(--border);background:var(--card);border-radius:15px;flex-direction:column;align-items:center;padding:21px 14px;display:flex}.result-stats svg{color:var(--accent);margin-bottom:12px}.result-stats>div:nth-child(2)>svg{color:var(--green)}.result-stats>div:nth-child(3)>svg{color:var(--orange)}.result-stats strong{font-family:Manrope,sans-serif;font-size:1.45rem;font-weight:750}.result-stats span{color:var(--muted);margin-top:7px;font-size:.7rem}.lesson-result>.btn{max-width:330px;margin:17px auto;display:flex}.exercise-body>.notice{margin-top:25px}@keyframes question-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.lesson-player{padding-bottom:210px}.lesson-topbar{gap:14px;padding:21px 17px}.lesson-brand{display:none}.lesson-header-progress>div:first-child{margin-bottom:9px;font-size:.63rem}.lesson-header-progress>div:first-child>span{white-space:nowrap;text-overflow:ellipsis;max-width:170px;overflow:hidden}.lesson-header-progress strong{font-size:.55rem}.lesson-clock{gap:4px;min-width:50px;font-size:.64rem}.lesson-clock>svg{width:14px}.lesson-topbar>.resource{gap:5px;font-size:.8rem}.lesson-topbar>.resource>svg{width:18px}.lesson-topbar>.icon-button{width:23px}.course-reader{margin-top:25px;padding:0 24px}.course-reader>h1{font-size:1.7rem}.course-meta{flex-wrap:wrap;gap:13px;margin-bottom:28px;font-size:.67rem}.markdown{font-size:.95rem;line-height:1.85}.markdown h2{font-size:1.22rem}.markdown blockquote{padding:15px 19px}.course-ready{flex-wrap:wrap;gap:14px;padding:21px}.course-ready .btn{width:100%;margin-top:7px}.course-ready>div{min-width:65%}.course-ready p{font-size:.73rem}.exercise-body{margin-top:35px;padding:0 23px}.exercise-body>h1>.markdown{font-size:1.4rem}.exercise-body>h1{margin-bottom:26px}.exercise-kicker{gap:12px;margin-bottom:20px}.exercise-kicker>.badge{font-size:.55rem}.exercise-kicker>span:last-child:not(.badge){font-size:.65rem}.answer-option{gap:13px;min-height:66px;padding:16px}.answer-option>.markdown{font-size:.95rem}.answer-letter{width:26px;height:26px;font-size:.66rem}.answer-footer{max-height:46dvh;padding:20px 23px}.answer-footer-inner{flex-wrap:wrap;align-items:flex-start;gap:20px}.answer-footer-inner>.btn{width:100%;min-height:47px}.answer-encouragement{justify-content:center;width:100%;font-size:.73rem}.feedback{gap:12px}.feedback-icon{width:32px;height:32px}.feedback-icon svg{width:20px}.feedback h3{font-size:.92rem}.feedback h3>span{margin-left:8px;font-size:.62rem}.feedback>div>.markdown{font-size:.79rem;line-height:1.7}.expected-answer{font-size:.8rem}.lesson-result{margin-top:39px;padding:0 24px}.result-medal{border-radius:34px;width:108px;height:108px}.result-medal>svg{width:49px}.lesson-result>h1{font-size:1.85rem}.lesson-result>p{font-size:.84rem}.result-stats{gap:10px}.result-stats>div{padding:19px 10px}.result-stats strong{font-size:1.25rem}.result-stats span{font-size:.62rem}.lesson-result>.badge{font-size:.56rem}.match-options>label{flex-direction:column;align-items:stretch;gap:13px}.match-options select{width:100%}.free-answer input{padding:18px;font-size:1rem}.hint-section .text-button{font-size:.73rem}.order-option{gap:10px;padding:13px}.order-option>.markdown{font-size:.82rem}}.optional-toggle-fields{background:var(--accent-soft);border:1px solid var(--border);border-radius:12px;padding:0 18px}.optional-toggle-fields .toggle-row{border:0;padding:18px 0}.optional-toggle-fields .field{padding-bottom:18px}.optional-toggle-fields .toggle-row p{font-size:.75rem}.countdown-card{padding:22px!important}.countdown-card .card-heading h3{align-items:center;gap:8px;font-size:.9rem;display:flex}.countdown-card .card-heading h3 svg{color:var(--accent)}.countdown-card .card-heading{margin-bottom:18px}.countdown-module{font-size:.9rem;font-weight:650;line-height:1.5;display:block}.countdown-date{color:var(--muted);margin-top:7px;font-size:.68rem;line-height:1.6}.countdown-digits{grid-template-columns:repeat(4,1fr);gap:6px;margin:23px 0 17px;display:grid}.countdown-digits>div{text-align:center;background:var(--accent-soft);border:1px solid #c49aa11c;border-radius:9px;min-width:0;padding:11px 5px}.countdown-digits strong{font-variant-numeric:tabular-nums;color:var(--accent);font-family:Manrope,sans-serif;font-size:1.35rem;font-weight:750;display:block}.countdown-digits span{letter-spacing:.04em;color:var(--muted);margin-top:5px;font-size:.55rem;display:block}.imminent .countdown-digits strong{color:var(--orange)}.imminent>.badge{color:var(--orange);background:#deb7810e;margin-bottom:18px;font-size:.62rem}.countdown-mastery{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin:22px 0 10px;font-size:.7rem;display:flex}.countdown-mastery>strong{color:var(--accent);font-size:.73rem}.countdown-pace{color:var(--muted);margin-top:16px;font-size:.72rem;line-height:1.7}.countdown-pace>span{color:var(--text);font-size:.8rem}.countdown-pace>span strong{color:var(--accent);font-size:1.1rem;font-weight:700}.countdown-pace>p{margin-top:6px;line-height:1.75;font-size:.69rem!important}.countdown-pace>svg{vertical-align:middle;color:var(--green);margin-right:5px;display:inline-block}.calendar-export{border-top:1px solid var(--border);margin-top:23px;padding-top:19px}.calendar-export>label{color:var(--muted);align-items:flex-start;gap:9px;margin-bottom:14px;font-size:.69rem;line-height:1.6;display:flex}.calendar-export input{width:14px;height:14px;min-height:0;accent-color:var(--accent);margin-top:3px}.calendar-export>.btn{width:100%;padding:10px;font-size:.73rem}.calendar-export small{color:var(--subtle);margin-top:12px;font-size:.61rem;line-height:1.6;display:block}.countdown-expired{text-align:center;color:var(--accent);flex-direction:column;align-items:center;gap:10px;padding:22px 0 8px;display:flex}.countdown-expired strong{color:var(--text);font-size:.9rem}.countdown-expired p{color:var(--muted);font-size:.74rem}.countdown-expired .btn{margin-top:8px;font-size:.7rem}.countdown-card.compact>.text-link{margin-top:19px;font-size:.72rem}.grading-editor{border:1px solid var(--border);background:var(--input);border-radius:15px;margin:6px 0;padding:23px}.grading-heading{align-items:center;gap:14px;margin-bottom:23px;display:flex}.grading-heading h3{font-size:1rem}.grading-heading p{color:var(--muted);margin-top:6px;font-size:.74rem;line-height:1.65}.grading-heading>.stat-icon{width:40px;height:40px}.grading-numbers{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.grading-numbers>.field{font-size:.76rem}.grading-numbers small{font-size:.65rem}.grading-editor .form-grid{margin-top:0}.grading-explanation,.grading-source{color:var(--muted);margin:6px 0 15px;font-size:.7rem;line-height:1.8}.grading-source{color:var(--subtle);margin:16px 0 0;font-size:.63rem}.grading-source a{color:var(--accent);text-decoration:underline}.grading-preview{border-top:1px solid var(--border);margin-top:19px;padding-top:17px}.grading-preview>div:first-child{justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;display:flex}.grading-preview strong{font-size:.76rem;font-weight:600}.grading-preview>div>span{color:var(--muted);align-items:center;gap:5px;font-size:.65rem;display:flex}.grading-samples{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;display:grid}.grading-samples>div{background:var(--card);border:1px solid var(--border);border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:11px 5px;display:flex}.grading-samples>div>span{color:var(--muted);font-size:.59rem}.grading-samples>div>strong{color:var(--danger);font-size:.92rem;font-weight:650}.grading-samples>div.passed{border-color:#7eb69738}.grading-samples>div.passed>strong,.grading-samples>div.passed>svg{color:var(--green)}.grading-samples i{width:12px;height:12px}.grade-band,.grade-bands-head{grid-template-columns:1fr 100px 70px 25px;align-items:center;gap:10px;margin-bottom:10px;display:grid}.grade-band>input{min-width:0;font-size:.8rem}.grade-band>input[type=checkbox]{width:17px;height:17px;min-height:0;accent-color:var(--accent);justify-self:center}.grade-bands-head{color:var(--muted);margin:5px 0 12px;font-size:.65rem}.grade-bands-head>span:nth-child(3){text-align:center}.grading-editor>.text-button{margin:7px 0 13px;font-size:.73rem}.grade-rule{font-size:inherit;color:inherit}.result-grade-name{color:var(--muted);margin-top:13px;font-size:.73rem}.exam-history-grade{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.exam-history-grade small{color:var(--muted);font-size:.65rem}.grade-badge{color:var(--danger);background:#d78ca719;padding:7px 11px;font-size:.78rem;font-weight:700}.grade-badge.passed{color:var(--green);background:#8ccfa019}.module-grading-summary{color:var(--muted);margin-top:8px;font-size:.77rem;line-height:1.7}.module-grading-summary>.badge{margin-bottom:8px}.module-grading-summary p{font-size:.76rem!important}@media(max-width:760px){.grading-editor{padding:18px}.grading-heading p{font-size:.69rem}.grading-heading h3{font-size:.93rem}.grading-heading{gap:11px}.grading-numbers{gap:9px}.grading-numbers .field{font-size:.69rem}.grading-numbers input{padding:10px}.grading-numbers small{font-size:.61rem}.grading-samples{gap:5px}.grading-samples>div{padding:10px 3px}.grading-samples>div>strong{font-size:.8rem}.grading-preview>div:first-child{flex-wrap:wrap;gap:7px}.grade-band,.grade-bands-head{grid-template-columns:1fr 67px 48px 22px;gap:7px}.grade-band input{padding:10px 8px;font-size:.74rem}.grade-bands-head{font-size:.57rem}.grading-source{font-size:.61rem}.grading-explanation{font-size:.66rem}.grading-samples>div>span{font-size:.55rem}}.exam-preparation-note{border:1px solid var(--orange);align-items:flex-start;gap:12px;margin:20px 0;padding:16px 18px;display:flex}@supports (color:color-mix(in lab,red,red)){.exam-preparation-note{border:1px solid color-mix(in srgb,var(--orange) 35%,var(--border))}}.exam-preparation-note{background:var(--orange);border-radius:12px}@supports (color:color-mix(in lab,red,red)){.exam-preparation-note{background:color-mix(in srgb,var(--orange) 7%,var(--card))}}.exam-preparation-note>svg{color:var(--orange);flex-shrink:0}.exam-preparation-note strong{font-size:.86rem}.exam-preparation-note p{color:var(--muted);margin-top:5px;font-size:.8rem}.lesson-track{width:min(100%,400px);margin:24px auto;padding:0;display:block}.path-line{pointer-events:none;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible}.path-line path{fill:none;stroke:var(--border);stroke-width:3px;stroke-dasharray:7 8;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.lesson-track .lesson-stop{width:56%;max-width:none;height:180px;min-height:180px;margin-left:.75%;padding:0 4px;transform:none}.lesson-stop:before{display:none}.lesson-node-ring{flex-shrink:0;place-items:center;width:80px;height:80px;display:grid;position:relative}.current .lesson-node-ring:before{content:"";border:2px dashed var(--module-color);pointer-events:none;border-radius:50%;position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px}.lesson-stop.current .lesson-node{outline:none}.lesson-node{width:70px;height:70px;transition:transform .16s,box-shadow .16s;position:relative;transform:translateY(-3px)}.lesson-node:hover:not(:disabled){box-shadow:0 3px 0 var(--module-color),inset 0 3px #fff3;transform:translateY(0)}@supports (color:color-mix(in lab,red,red)){.lesson-node:hover:not(:disabled){box-shadow:0 3px color-mix(in srgb,var(--module-color) 60%,#252330),inset 0 3px #fff3}}.lesson-node:active:not(:disabled){transform:translateY(3px);box-shadow:0 0 #0000}.lesson-node:focus-visible{outline:3px solid var(--text);outline-offset:3px}.lesson-stop>strong,.lesson-stop>span{background:var(--bg);border-radius:6px;padding-inline:5px;position:relative}.lesson-stop>strong{margin-top:12px;font-size:.8rem}.module-hero{padding:24px}.module-hero h1{font-size:clamp(1.3rem,2.3vw,1.8rem)}.unit-heading{padding:18px 22px}.unit-heading .eyebrow{display:none}.module-details,.optional-fields{border:1px solid var(--border);border-radius:12px;padding:16px}summary{cursor:pointer;font-size:.87rem;font-weight:600}summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.optional-fields[open]>summary,.module-details[open]>summary{margin-bottom:18px}.optional-fields>.field+.field,.optional-fields>.form-grid,.optional-fields>.grading-numbers{margin-top:18px}.learning-journey-note{border:1px solid var(--accent);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}@supports (color:color-mix(in lab,red,red)){.learning-journey-note{border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border))}}.learning-journey-note{background:var(--accent);border-radius:12px}@supports (color:color-mix(in lab,red,red)){.learning-journey-note{background:color-mix(in srgb,var(--accent) 7%,var(--card))}}.learning-journey-note>span{width:30px;height:30px;color:var(--accent);background:var(--accent);border-radius:50%;flex:0 0 30px;place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.learning-journey-note>span{background:color-mix(in srgb,var(--accent) 14%,var(--card))}}.learning-journey-note strong{font-size:.86rem;display:block}.learning-journey-note p{color:var(--muted);margin:4px 0 0;font-size:.8rem;line-height:1.45}.module-details>p{color:var(--muted);margin:14px 0;font-size:.82rem}.module-details>.card{box-shadow:none;margin-top:18px;padding:16px}.grading-heading{margin-bottom:18px}.grading-editor{flex-direction:column;gap:16px;padding:18px;display:flex}.grading-source{font-size:.72rem}.modal-inner{padding:24px}.modal-heading{background:var(--card);z-index:2;padding-block:12px;position:sticky;top:-24px}.result-stats{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.result-stats>div{justify-content:center;min-width:0}.lesson-result{margin:clamp(24px,6vh,55px) auto}.lesson-player:has(.lesson-result){flex-direction:column;padding-bottom:30px;display:flex}.lesson-player:has(.lesson-result) .lesson-topbar{width:100%}.lesson-player:has(.lesson-result) .lesson-result{width:100%;margin-block:auto;padding-block:30px}.journey-hero{min-height:220px}.hero-copy h2{font-size:clamp(1.4rem,2.5vw,2rem)}@media(max-width:760px){.modal{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.modal-inner{padding:20px}.modal-heading{top:-20px}.lesson-track{width:min(100%,360px)}.lesson-stop>strong{font-size:.74rem}.lesson-stop>span:not(.start-bubble){font-size:.59rem}.module-hero{padding:18px}.module-hero-copy h1{max-height:none}.path-rail{display:contents}.path-summary{order:-1;grid-template-columns:1fr auto;gap:12px;display:grid}.path-summary h3{align-self:center;margin:0}.path-summary .large-percent{margin:0;font-size:1.6rem}.path-summary>.progress,.path-summary>p,.path-summary>.btn{grid-column:1/-1;margin:0}}@media(prefers-reduced-motion:reduce){.lesson-node{transition:none}}.module-card-generation .generation-placeholder{gap:9px;padding:16px 0 24px;display:grid}.generation-placeholder i{opacity:.09;background:currentColor;border-radius:8px;width:88%;height:9px;display:block}.generation-placeholder i:nth-child(2){width:68%}.generation-placeholder i:nth-child(3){width:78%}.generation-stage{overflow-wrap:anywhere;align-items:flex-start;gap:9px;margin-top:14px;font-size:.82rem;line-height:1.5;display:flex}.generation-stage svg{flex-shrink:0;margin-top:2px}.generation-spinner{animation:1.4s linear infinite generation-spin}@keyframes generation-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.generation-spinner{animation:none}}.generation-estimate-panel{border:1px solid var(--border);border-radius:16px;margin:24px 0 16px;padding:20px}.generation-estimate-panel .estimate-total{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin:16px 0 6px;display:flex}.generation-estimate-panel small{color:var(--muted);line-height:1.6}.generation-estimate-panel details{margin:16px 0;font-size:.85rem}.generation-estimate-panel summary{cursor:pointer}.generation-estimate-panel p{font-size:.85rem;line-height:1.6}.generation-estimate-panel .estimate-status{min-height:2.8em;color:var(--muted);overflow-wrap:anywhere;margin-top:10px;font-size:.8rem;line-height:1.4}.generation-estimate-panel .estimate-results{min-height:290px}.generation-estimate-panel .estimate-budget-slot{min-height:108px}.generation-estimate-panel .estimate-initial-placeholder{min-height:290px}.generation-estimate-panel .estimate-total strong{font-variant-numeric:tabular-nums}@media(max-width:600px){.generation-estimate-panel .estimate-results,.generation-estimate-panel .estimate-initial-placeholder{min-height:350px}.generation-estimate-panel .estimate-budget-slot{min-height:140px}}.generation-placeholder.is-generating i{opacity:1;background:var(--module-color,var(--accent));position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.generation-placeholder.is-generating i{background:color-mix(in srgb,var(--module-color,var(--accent)) 24%,var(--card))}}.generation-placeholder.is-generating i{animation:2.4s ease-in-out infinite generation-breathe}.generation-placeholder.is-generating i:after{content:"";background:linear-gradient(100deg,transparent 10%,var(--module-color,var(--accent)) 50%,transparent 90%);position:absolute;top:0;right:0;bottom:0;left:0}@supports (color:color-mix(in lab,red,red)){.generation-placeholder.is-generating i:after{background:linear-gradient(100deg,transparent 10%,color-mix(in srgb,var(--module-color,var(--accent)) 75%,white) 50%,transparent 90%)}}.generation-placeholder.is-generating i:after{animation:1.6s ease-in-out infinite generation-shimmer;transform:translate(-110%)}.generation-placeholder.is-generating i:nth-child(2):after{animation-delay:.15s}.generation-placeholder.is-generating i:nth-child(3):after{animation-delay:.3s}@keyframes generation-shimmer{0%{transform:translate(-110%)}80%,to{transform:translate(110%)}}@keyframes generation-breathe{0%,to{opacity:.65}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.generation-placeholder.is-generating i{opacity:1;animation:none}.generation-placeholder.is-generating i:after{animation:none;display:none}}.generation-estimate-compact{min-height:0!important;padding:20px!important}.generation-estimate-compact .estimate-total{margin:8px 0 16px}.generation-estimate-compact details{margin-top:16px}.ai-budget-card summary{cursor:pointer;font-weight:600}.ai-budget-card details[open] summary{margin-bottom:20px}.brand-crest{object-fit:contain;flex-shrink:0;width:48px;height:48px;display:block}.brand>.brand-crest{width:48px;height:48px}.btn-primary:hover:not(:disabled),.btn-lime:hover:not(:disabled){background:var(--brand-hover)}.avatar{background:var(--avatar-bg);border:1px solid var(--border);color:var(--avatar-ink);border-radius:50%;overflow:hidden}.avatar svg{align-self:center;width:70%;height:70%}.avatar img{object-fit:cover;width:100%;height:100%}.provider-icon{object-fit:contain;flex:0 0 20px;width:20px;height:20px}.social-auth .btn{color:#242424;background:#fff;border-color:#747775}.journey-hero{isolation:isolate;background:linear-gradient(115deg,#282027,#302329);border-color:#65414a}.journey-hero .badge{color:#ffbac3;background:#c620381a;border-color:#ffbac333}.journey-hero h2{color:#fff7f7;text-wrap:balance;font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.35}.journey-hero h2 em,.journey-hero p,.hero-footnote{color:#e2cace}.journey-hero .hero-copy{z-index:2}.journey-hero .alpine-scene{z-index:0;pointer-events:none}:root[data-theme=light] .journey-hero{background:linear-gradient(115deg,#fff1f2,#f3e8eb);border-color:#e2bdc4}:root[data-theme=light] .journey-hero h2{color:#37212a}:root[data-theme=light] .journey-hero .badge{color:#a7182d;border-color:#a7182d33}:root[data-theme=light] .journey-hero p,:root[data-theme=light] .hero-footnote{color:#6e4851}.workspace-label,.eyebrow{font-size:.6875rem}.page-header h1{font-size:clamp(1.75rem,3vw,2.1rem)}@media(max-width:640px){.journey-hero .alpine-scene{opacity:.35;right:-65px}.journey-hero .hero-copy{width:100%;max-width:none}}.provider-icon[src$="google.png"]{object-fit:none;object-position:center}.auth-symbol{background:0 0;border:0;padding:0}.auth-symbol .brand-crest{width:52px;height:52px}:root[data-theme=light] .text-button,:root[data-theme=light] .auth-back{color:var(--accent)}h1,h2,h3,h4,.brand>span{font-family:var(--font-family)}h1{font-size:var(--font-page);letter-spacing:-.035em}h2{font-size:var(--font-title)}h3,h4{font-size:1rem}.page-heading{margin-bottom:28px}.page-heading .eyebrow,.workspace-label{display:none}.sidebar nav{margin-top:36px}.nav-link.active{background:var(--accent-soft);color:var(--text);box-shadow:inset 3px 0 var(--brand)}.resource,.resource svg{color:var(--muted)}.resource-hearts svg{color:var(--accent)}.topbar{min-height:64px}.card{box-shadow:none;border-color:#0000}.module-card{border-color:var(--border);box-shadow:none}.module-card:hover{border-color:var(--accent);background:var(--card-hover)}.module-card-top{margin-bottom:16px}.module-card-label{font-size:var(--font-label);letter-spacing:0;text-transform:none;color:var(--muted)}.module-card-label>span{color:var(--muted)}.module-card h3{font-size:var(--font-title);line-height:1.45}.module-card p{font-size:var(--font-secondary);line-height:1.55}.module-card-progress,.module-card-footer{color:var(--muted);font-size:var(--font-label)}.module-card-progress strong{color:var(--text)}.module-card .subject-icon{border-radius:12px;width:42px;height:42px}.badge,.eyebrow{text-transform:none;letter-spacing:0}.campus-page{max-width:var(--campus-max-width);margin-inline:auto;container:campus/inline-size}.campus-page .page-heading{margin-bottom:40px}.campus-page .dashboard-grid{grid-template-columns:minmax(0,1fr) var(--campus-widget-width);gap:var(--campus-column-gap);align-items:start}.campus-page .dashboard-modules{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.campus-date{font-size:var(--font-secondary);color:var(--muted);margin-top:8px}.campus-page .journey-hero{background:var(--card);border:0;min-height:288px;padding:32px}.campus-page .hero-copy{max-width:76%}.hero-kicker{color:var(--muted);font-size:var(--font-secondary)}.campus-page .journey-hero .hero-module{color:var(--muted);font-size:var(--font-secondary);max-width:none;margin:16px 0 0}.campus-page .journey-hero h2{color:var(--text);text-wrap:pretty;margin-top:8px;font-size:clamp(1.4rem,2vw,1.8rem);line-height:1.35}.campus-page .journey-hero .hero-meta{color:var(--muted);font-size:var(--font-secondary);margin:14px 0 24px}.campus-page .journey-hero .btn{font-size:var(--font-secondary);min-height:46px;margin-top:20px}.campus-page .hero-meta+.btn{margin-top:0}.campus-page .journey-hero .alpine-scene{opacity:.26;width:265px;right:-45px}.campus-summary{color:var(--muted);font-size:var(--font-secondary);flex-wrap:wrap;align-items:center;gap:12px 24px;padding:24px 0 40px;display:flex}.campus-summary span,.campus-summary a{align-items:center;gap:7px;display:inline-flex}.campus-summary a{margin-left:auto}.campus-summary a:hover{color:var(--text)}.campus-page .section-heading{margin:0 0 18px}.campus-page .section-heading .text-link{font-size:var(--font-secondary);color:var(--muted)}.today-panel{border:0;gap:24px;padding:0;position:relative}.today-panel h2{margin-bottom:24px;position:absolute;bottom:100%}.today-goal,.today-exam{background:var(--card);padding:var(--widget-padding);border-radius:var(--radius);border:1px solid var(--border)}.today-panel h3{font-size:var(--font-secondary);font-weight:600}.today-panel p{color:var(--muted);font-size:var(--font-secondary)}.today-line{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.today-line a{font-size:var(--font-label);color:var(--muted)}.today-goal>p{margin:14px 0 10px}.today-goal strong{color:var(--text);font-size:1.25rem}.today-exam{margin:0}.today-exam h3{align-items:center;gap:8px;display:flex}.today-exam h3 svg{color:var(--orange);flex-shrink:0}.today-exam>a{font-size:var(--font-secondary);align-items:center;gap:10px;margin:14px 0 8px;line-height:1.5;display:flex}.today-exam>a svg{flex-shrink:0}.today-exam>a:hover{color:var(--accent)}.today-exam .exam-pace{font-size:var(--font-label);margin-top:12px}.today-goal .today-success{color:var(--green);align-items:center;gap:7px;display:flex}.campus-discovery{color:var(--muted);align-items:center;gap:18px;padding:20px 0;display:flex}.campus-discovery h3{color:var(--text);margin-bottom:5px}.campus-discovery p{font-size:var(--font-secondary)}.campus-all{margin-top:20px;display:inline-flex}@container campus (max-width:820px){.campus-page .dashboard-grid{grid-template-columns:minmax(0,1fr);gap:40px}.today-panel{border:0;grid-template-columns:1fr 1fr;gap:20px 32px;padding:0;display:grid}.today-panel h2{grid-column:1/-1;margin:0;position:static}.today-exam{padding:var(--widget-padding);margin:0}}@container campus (max-width:540px){h1{font-size:1.75rem}.campus-page .journey-hero{min-height:260px;padding:24px}.campus-page .hero-copy{max-width:100%}.campus-page .journey-hero .alpine-scene{opacity:.12;width:210px}.campus-summary{gap:12px 16px;font-size:.8125rem}.campus-summary a{margin-left:0}.today-panel{display:flex}.today-exam{padding:var(--widget-padding)}.campus-discovery{flex-wrap:wrap}.campus-page .section-heading{gap:12px}}.module-card-label>span:first-child{font-size:var(--font-label);letter-spacing:0;text-transform:none;color:var(--muted)}.module-card>p{font-size:var(--font-secondary)}:root[data-theme=light] .nav-link.active{color:var(--text)}:root[data-theme=light] .campus-page .journey-hero{background:var(--card)}:root[data-theme=light] .campus-page .journey-hero .hero-module,:root[data-theme=light] .campus-page .journey-hero .hero-meta{color:var(--muted)}:root[data-theme=light] .module-card{border-color:var(--border)}:root[data-theme=light] .module-card:hover{border-color:var(--accent)}.today-line a{padding:10px 0}.campus-page .section-heading a{align-items:center;min-height:44px;display:inline-flex}.sidebar-profile small{white-space:nowrap}.sidebar-profile>a>span:last-child{flex:1;overflow:hidden}.sidebar-profile small{text-overflow:ellipsis;overflow:hidden}.sidebar-profile .icon-button{flex:0 0 27px}.avatar-editor{border-bottom:1px solid var(--border);justify-items:center;gap:14px;padding:16px 0 24px;display:grid}.avatar-editor canvas{background:var(--avatar-bg);border-radius:50%;width:180px;height:180px}.avatar-editor>label:not(.avatar-file-label){width:100%;font-size:var(--font-secondary);gap:8px;display:grid}.avatar-editor input[type=range]{width:100%;min-height:32px;accent-color:var(--brand);padding:0}.avatar-file-label{color:var(--accent);cursor:pointer;border:1px solid var(--border);border-radius:10px;padding:12px;position:relative;overflow:hidden}.avatar-file-label:focus-within{outline:2px solid var(--accent);outline-offset:3px}.avatar-file-label input{opacity:0;cursor:pointer;width:100%;position:absolute;top:0;right:0;bottom:0;left:0}.avatar-editor small{color:var(--muted);text-align:center}.avatar-actions{flex-wrap:wrap;gap:12px;display:flex}.page,.topbar{padding-inline:var(--page-gutter)}.path-layout,.settings-layout,.account-grid{gap:var(--column-gap)}.path-rail>.card,.today-panel>section{padding:var(--widget-padding)}.module-hero{background:var(--card);border-color:var(--border)}.unit-heading{background:var(--card);border-color:#0000}.unit-heading h2{font-size:var(--font-title)}.path-rail .large-percent{font-size:2rem}.settings-layout h2,.account-grid h2{font-size:var(--font-title)}.countdown-card .countdown-digits{font-variant-numeric:tabular-nums}@media(max-width:640px){.path-layout,.settings-layout,.account-grid{gap:24px}}.countdown-digits{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-export summary{cursor:pointer;font-size:var(--font-secondary);color:var(--muted)}.calendar-export[open] summary{margin-bottom:18px}.calendar-export[open]>label{margin-bottom:14px}.calendar-export>small{margin-top:12px;display:block}.module-hero .module-kicker{color:var(--muted)}.avatar-fallback{background:currentColor;width:52%;height:58%;display:block;-webkit-mask:url(/brand/user.svg) 50%/contain no-repeat;mask:url(/brand/user.svg) 50%/contain no-repeat}.page{max-width:calc(var(--content-max-width) + 2 * var(--page-gutter));padding-block:40px 56px}.page-heading h1,.module-hero h1{font-size:clamp(1.5rem,2.2vw,var(--font-page));line-height:1.3}.page-heading p{font-size:var(--font-secondary);max-width:65ch;color:var(--muted)}.page-heading .page-emblem{display:none}.card-heading h3,.section-heading h2,.settings-main h2,.account-grid h2{font-size:var(--font-title)}.section-heading p,.help-text,.notice,.settings-main .muted{font-size:var(--font-secondary);line-height:1.6}.card,.module-card,.exam-card{border-radius:var(--radius)}.stat-icon:not(.subject-icon),.review-number{background:var(--card-hover);color:var(--muted)}.tabs button.active,.settings-nav button.active,.goal-picker button.selected{color:var(--text);background:var(--accent-soft);border-color:var(--accent)}.progress{background:var(--border)}.exam-card .badge,.review-card .badge{background:var(--card-hover);color:var(--muted)}.exam-meta,.review-card>p,.module-meta{font-size:var(--font-secondary);color:var(--muted)}.exam-card .eyebrow{color:var(--muted);font-size:var(--font-label)}.settings-layout{gap:var(--campus-column-gap);grid-template-columns:220px minmax(0,1fr)}.settings-main{min-width:0}.settings-main>.card+.card,.account-grid>.card{margin-top:0}.form-stack,.settings-main{gap:24px}.field label{font-size:var(--font-secondary)}.module-hero{background:var(--card);border:0;margin-bottom:32px;padding:24px}.module-hero .eyebrow{color:var(--muted);font-size:var(--font-label);letter-spacing:0;text-transform:none}.module-hero .subject-icon.large{border-radius:14px;width:56px;height:56px}.module-management-actions{justify-content:flex-end;margin:-18px 0 28px;display:flex}.path-layout{gap:var(--campus-column-gap);grid-template-columns:minmax(0,1fr) 280px}.learning-path{min-width:0}.path-rail{gap:16px;max-height:none;padding:0;overflow:visible}.compact-rail .rail-widget{border:1px solid var(--border);flex-direction:column;gap:12px;padding:20px;display:flex}.rail-widget h3{margin:0;font-size:1rem}.rail-widget p,.rail-widget small{margin:0;line-height:1.5}.rail-widget small,.rail-metric span{color:var(--muted);font-size:.85rem}.rail-metric{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.rail-metric strong{font-size:1.6rem}.rail-widget .text-link{color:var(--text);text-align:left;justify-content:space-between;width:100%;font-size:.85rem}.rail-widget .text-link:hover{color:var(--accent)}.rail-document{align-items:flex-start;gap:12px;display:flex}.rail-document svg{flex-shrink:0}.rail-document span{overflow-wrap:anywhere;min-width:0}@media(max-height:800px){.compact-rail{position:static}}.unit-heading{background:0 0;border:0;gap:16px;padding:14px 0}.unit-heading h2{font-size:var(--font-title);margin:0;line-height:1.45}.unit-number{background:var(--card);width:40px;height:40px;color:var(--muted);font-size:1rem}.unit-heading .icon-button{flex-shrink:0}.unit-block{margin-bottom:24px}.lesson-track{width:min(100%,520px);margin:28px auto 12px}.lesson-track .lesson-stop{width:70%;height:var(--learning-step-height);min-height:var(--learning-step-height);margin-left:3%;padding:0 4px}.lesson-track .lesson-stop:nth-of-type(2n){margin-left:27%}.lesson-node-ring{width:96px;height:96px}.lesson-node{width:var(--learning-node-size);height:var(--learning-node-size);border-width:3px;border-color:var(--module-color)}@supports (color:color-mix(in lab,red,red)){.lesson-node{border-color:color-mix(in srgb,var(--module-color) 68%,#11131b)}}.lesson-node{color:var(--on-module-node);box-shadow:0 7px 0 var(--module-color),inset 0 3px 0 var(--module-color)}@supports (color:color-mix(in lab,red,red)){.lesson-node{box-shadow:0 7px color-mix(in srgb,var(--module-color) 62%,#141722),inset 0 3px color-mix(in srgb,var(--module-color) 84%,white)}}.current .lesson-node-ring:before{border:2px solid var(--module-color);top:-3px;right:-3px;bottom:-3px;left:-3px}@supports (color:color-mix(in lab,red,red)){.current .lesson-node-ring:before{border:2px solid color-mix(in srgb,var(--module-color) 55%,transparent)}}.lesson-stop>strong{font-size:var(--font-body);margin-top:12px;line-height:1.4}.lesson-stop>span:not(.start-bubble){font-size:var(--font-label);margin-top:7px;line-height:1.5}.lesson-stop.locked>strong{color:var(--muted)}.lesson-node:disabled{color:var(--muted);box-shadow:none}.lesson-stop.completed .lesson-node{color:#fff;background:var(--green);box-shadow:0 5px #246440,inset 0 2px 0 var(--green);border-color:#28734c}@supports (color:color-mix(in lab,red,red)){.lesson-stop.completed .lesson-node{box-shadow:0 5px #246440,inset 0 2px color-mix(in srgb,var(--green) 86%,white)}}.lesson-stop.failed .lesson-node{color:#fff;background:#d51f3b;border-color:#891025;box-shadow:0 5px #700b1d,inset 0 2px #da3a53}.lesson-stop.completed .lesson-node:hover,.lesson-stop.completed .lesson-node:focus-visible{box-shadow:0 3px #246440,inset 0 2px 0 var(--green)}@supports (color:color-mix(in lab,red,red)){.lesson-stop.completed .lesson-node:hover,.lesson-stop.completed .lesson-node:focus-visible{box-shadow:0 3px #246440,inset 0 2px color-mix(in srgb,var(--green) 86%,white)}}.lesson-stop.failed .lesson-node:hover,.lesson-stop.failed .lesson-node:focus-visible{box-shadow:0 3px #700b1d,inset 0 2px #da3a53}.lesson-stop.passage-gate .lesson-node{background:var(--module-color);border-color:var(--module-color)}@supports (color:color-mix(in lab,red,red)){.lesson-stop.passage-gate .lesson-node{border-color:color-mix(in srgb,var(--module-color) 68%,#11131b)}}.lesson-stop.passage-gate .lesson-node{color:var(--on-module-node);box-shadow:0 7px 0 var(--module-color),inset 0 3px 0 var(--module-color)}@supports (color:color-mix(in lab,red,red)){.lesson-stop.passage-gate .lesson-node{box-shadow:0 7px color-mix(in srgb,var(--module-color) 62%,#141722),inset 0 3px color-mix(in srgb,var(--module-color) 84%,white)}}.lesson-stop.passage-gate .lesson-node:hover:not(:disabled){box-shadow:0 3px 0 var(--module-color),inset 0 3px 0 var(--module-color);transform:translateY(0)}@supports (color:color-mix(in lab,red,red)){.lesson-stop.passage-gate .lesson-node:hover:not(:disabled){box-shadow:0 3px color-mix(in srgb,var(--module-color) 62%,#141722),inset 0 3px color-mix(in srgb,var(--module-color) 84%,white)}}.lesson-stop.passage-gate .lesson-node:active:not(:disabled){box-shadow:none;transform:translateY(3px)}.lesson-stop.passage-gate .lesson-node svg{stroke-width:3px;width:35px;height:35px}.lesson-preview.accented-preview .btn-primary{--press-shadow:var(--module-color)}@supports (color:color-mix(in lab,red,red)){.lesson-preview.accented-preview .btn-primary{--press-shadow:color-mix(in srgb, var(--module-color) 60%, #11131b)}}.lesson-preview.accented-preview .btn-primary{background:var(--module-color);color:var(--on-module-node);box-shadow:0 4px 0 var(--press-shadow)}.preview-results{color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin:12px 0 0;font-size:.8rem;display:flex}.preview-results strong{color:var(--text);font-weight:600}.lesson-preview.accented-preview .btn-primary:hover:not(:disabled){filter:brightness(1.08)}:root[data-theme=light] .card,:root[data-theme=light] .module-hero,:root[data-theme=light] .campus-module-row,:root[data-theme=light] .today-goal,:root[data-theme=light] .today-exam,:root[data-theme=light] .rail-widget,:root[data-theme=light] .module-details,:root[data-theme=light] .optional-fields{border:1px solid var(--border);box-shadow:0 2px 6px #192a4606}:root[data-theme=light] input:not([type=checkbox]):not([type=radio]):not([type=hidden]),:root[data-theme=light] select,:root[data-theme=light] textarea,:root[data-theme=light] .segmented{background:#fff;border-color:#bfcada}:root[data-theme=light] .btn-secondary{background:#fff;border-color:#b9c5d5}:root[data-theme=light] .btn-secondary:hover:not(:disabled){background:var(--card-hover);border-color:#9baabd}:root[data-theme=light] .lesson-preview{border-color:#c5d0df;box-shadow:0 18px 45px #1422392e,0 3px #14223914}:root[data-theme=light] .lesson-stop>strong,:root[data-theme=light] .lesson-stop>span{background:var(--bg)}.path-line path{stroke:var(--muted)}@supports (color:color-mix(in lab,red,red)){.path-line path{stroke:color-mix(in srgb,var(--muted) 45%,var(--bg))}}.path-line path{stroke-width:2px;stroke-dasharray:none}.path-summary .large-percent{margin:20px 0 12px;font-size:2rem}.path-summary>p{font-size:var(--font-secondary)}.overview-deadline{color:var(--muted);align-items:center;gap:8px;display:flex}.overview-deadline svg{color:var(--orange);flex-shrink:0}.module-details{background:var(--card);border-color:#0000}.module-details>.countdown-card{margin-top:20px;padding:0}.module-details .danger-text{margin-top:20px}.course-reader,.exercise-area{max-width:var(--reading-max-width)}.course-reader>h1,.exercise-area h1{font-size:clamp(1.5rem,2.4vw,2rem)}.course-meta,.lesson-header-progress>div:first-child{font-size:var(--font-secondary)}.lesson-brand .brand-crest{width:40px;height:40px}.markdown{font-family:var(--font-family);line-height:1.8}.markdown h2{font-size:1.35rem}.markdown h3{font-size:1.125rem}@media(max-width:1150px){.path-layout{grid-template-columns:minmax(0,1fr) 250px;gap:32px}.settings-layout{grid-template-columns:185px minmax(0,1fr);gap:32px}}@media(max-width:1000px){.path-layout{flex-direction:column;gap:28px;display:flex}.learning-path,.path-rail{width:100%}.path-rail{max-height:none;display:flex;position:static;overflow:visible}.path-summary{display:block}.settings-layout{grid-template-columns:minmax(0,1fr)}.settings-nav{flex-wrap:wrap;gap:8px;display:flex;position:static}}@media(max-width:640px){.page{padding-block:28px 40px}.module-hero{gap:14px;padding:20px}.module-hero .subject-icon.large{width:44px;height:44px}.module-meta{font-size:var(--font-label);flex-wrap:wrap;gap:12px}.unit-heading{gap:10px}.unit-heading h2{font-size:1rem}.lesson-stop>strong{font-size:.875rem}.lesson-stop>span:not(.start-bubble){font-size:.6875rem}.lesson-stop>span>b{margin-inline:2px}.course-reader{padding-inline:20px}}.path-rail .path-summary{flex-direction:column;gap:16px;display:flex}.path-rail .path-summary>h3,.path-rail .path-summary>p,.path-rail .path-summary>.progress,.path-rail .path-summary>.btn,.path-rail .path-summary>.large-percent{margin:0}.path-rail .path-summary>.btn-primary{margin-top:8px}.activity-chart .section-heading{flex-wrap:wrap;gap:16px}.segmented.small{flex-shrink:0}.segmented.small button{white-space:nowrap;min-width:40px}.review-banner{background:var(--card)}.review-banner>svg{color:var(--muted)}.module-list-item{min-width:0;position:relative}.module-list-item>.module-card{height:100%}.module-delete-shortcut{z-index:2;background:var(--card);position:absolute;top:16px;right:16px}.module-list-item .module-card-top{padding-right:32px}.module-delete-shortcut,.module-delete-header{color:var(--muted);opacity:.7}.module-delete-shortcut:hover,.module-delete-shortcut:focus-visible,.module-delete-header:hover,.module-delete-header:focus-visible{color:var(--accent);opacity:1}.evaluation-origin{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.evaluation-origin a{color:var(--muted);overflow-wrap:anywhere;font-size:.85rem}.review-controls{flex-wrap:wrap;align-items:end;gap:20px;margin-bottom:24px;display:flex}.review-controls label{flex:1;gap:8px;min-width:0;display:grid}.review-controls select{width:100%;max-width:100%}.review-session{gap:24px;max-width:820px;margin:0 auto;display:grid}.review-launch,.review-finish{text-align:center;flex-direction:column;align-items:center;gap:20px;max-width:760px;margin:0 auto 24px;padding:clamp(24px,4vw,48px);display:flex}.review-launch h2,.review-launch p,.review-finish h2{text-wrap:balance;margin:0}.review-launch-icon{background:var(--accent-soft);width:72px;height:72px;color:var(--accent);border-radius:24px;place-items:center;font-size:2rem;display:grid}.review-launch-settings{text-align:left;grid-template-columns:1fr 1fr;gap:20px;width:100%;margin:8px 0;display:grid}.review-launch-settings label{gap:8px;min-width:0;font-size:.9rem;display:grid}.review-launch-settings select{width:100%;min-width:0}.review-launch>.btn{min-width:min(100%,280px)}.review-library{max-width:1000px;margin:0 auto}.review-library>summary{cursor:pointer;color:var(--muted);text-align:center;padding:20px}.review-library>summary span{margin-left:12px}.review-library .review-grid{margin-top:16px}.review-step-enter,.review-feedback,.review-finish{animation:.3s ease-out both review-arrive}.review-launch:hover .review-launch-icon svg{transform:rotate(-15deg)}.review-launch-icon svg{transition:transform .25s}@keyframes review-arrive{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0}}@media(max-width:600px){.review-launch-settings{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.review-step-enter,.review-feedback,.review-finish{animation:none}.review-launch-icon svg{transition:none;transform:none!important}}:root[data-motion=off] .review-step-enter,:root[data-motion=off] .review-feedback,:root[data-motion=off] .review-finish{animation:none}:root[data-motion=off] .review-launch-icon svg{transition:none;transform:none!important}.streak-trigger{cursor:pointer;background:0 0;border:0;border-radius:12px;padding:8px}.streak-trigger.is-lit svg{color:#ffb454;fill:#ffb45433;animation:2.4s ease-in-out infinite streak-glow}.streak-content{gap:18px;display:grid}.streak-content p{margin:0;line-height:1.6}.streak-calendar{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.streak-day{aspect-ratio:1;background:var(--card-hover);border:1px solid var(--border);border-radius:10px;justify-content:center;justify-self:center;align-items:center;width:100%;max-width:48px;font-size:.85rem;display:flex}.streak-day.done{color:#fff;background:#c95518;border-color:#df7639;font-weight:700}.streak-day.done.gold-week{color:#402d07;background:linear-gradient(145deg,#f6db79,#d6a12c);border-color:#b98724}.streak-day.today{outline:2px solid var(--text);outline-offset:2px}.streak-summary{align-items:center;gap:14px;display:flex}.streak-summary>svg{color:#df7639}.streak-summary strong{font-size:1.35rem;display:block}.streak-summary small{color:var(--muted);margin-top:4px;display:block}.streak-legend{color:var(--muted);justify-content:center;gap:18px;font-size:.75rem;display:flex}.streak-legend span{align-items:center;gap:6px;display:flex}.streak-legend i{background:#c95518;border-radius:3px;width:10px;height:10px}.streak-legend .week-key{background:#d6a12c}.streak-help{border-top:1px solid var(--border);color:var(--muted);padding-top:14px;font-size:.8rem}.streak-help summary{cursor:pointer}.streak-help p{margin-top:12px}.streak-content .progress>span{background:#df7639}.streak-day.future{opacity:.4}.streak-badges{flex-wrap:wrap;gap:10px;display:flex}.streak-badges>span{min-width:64px;color:var(--muted);flex:1;justify-items:center;gap:4px;font-size:.8rem;display:grid}.streak-badges .earned{color:var(--accent)}@keyframes streak-glow{50%{filter:drop-shadow(0 0 5px #ffb45488);transform:scale(1.1)rotate(-4deg)}}@media(prefers-reduced-motion:reduce){.streak-trigger.is-lit svg{animation:none}}:root[data-motion=off] .streak-trigger.is-lit svg{animation:none}.module-generation-entry{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);align-items:center;gap:14px;margin-bottom:24px;padding:16px;display:flex}.module-generation-entry span{flex:1;min-width:0}.module-generation-entry strong,.module-generation-entry small{display:block}.module-generation-entry small{color:var(--muted);margin-top:6px}.module-generation-entry:hover{background:var(--accent-soft)}.review-launch .review-launch-settings{grid-template-columns:1fr;gap:24px}.review-choice-group{border:0;min-width:0;margin:0;padding:0}.review-choice-group legend{margin-bottom:12px;font-size:.9rem;font-weight:600}.review-choice-list,.review-size-choices{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}.review-launch-settings .review-choice{border:1px solid var(--border);background:var(--bg);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:12px 14px;transition:border-color .2s,background .2s;display:flex}.review-choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.review-choice:hover{border-color:var(--accent)}.review-choice:focus-within{outline:2px solid var(--accent);outline-offset:3px}.review-choice input{width:16px;height:16px;min-height:0;accent-color:var(--accent);flex-shrink:0;margin:0}.review-choice span{overflow-wrap:anywhere}.review-only-module{color:var(--muted);justify-content:center;align-items:flex-start;gap:12px;display:flex}.review-only-module svg{flex-shrink:0}.review-session-count{text-align:center}@media(max-width:600px){.review-size-choices .review-choice{flex:100%}}.review-launch{border:1px solid var(--border);gap:16px;max-width:680px;padding:clamp(24px,4vw,40px)}.review-launch>h2{letter-spacing:-.025em;font-size:clamp(1.3rem,2vw,1.65rem)}.review-launch>.review-launch-icon{border-radius:18px;width:56px;height:56px;margin-bottom:4px}.review-launch>.muted{font-size:.95rem}.review-launch .review-launch-settings{gap:26px;margin:8px 0 4px}.review-launch .review-only-module{border-bottom:1px solid var(--border);padding:14px 0 20px;font-size:.85rem}.review-launch .review-choice-group legend{color:var(--muted);font-size:.85rem;font-weight:500}.review-launch .review-size-choices{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;display:grid}.review-launch .review-size-choices .review-choice{border-radius:14px;gap:12px;padding:18px;position:relative}.review-size-choices .review-choice input{opacity:0;width:1px;height:1px;position:absolute}.review-size-choices .review-choice>span{flex:1}.review-size-choices .review-choice strong{font-size:1rem;font-weight:600;display:block}.review-size-choices .review-choice small{color:var(--muted);margin-top:6px;font-size:.8rem;display:block}.review-choice-check{opacity:0;color:var(--accent);transition:opacity .2s}.review-choice:has(input:checked) .review-choice-check{opacity:1}.review-launch>.btn{width:100%;margin-top:8px}.review-launch>small{font-size:.78rem}.review-library>summary{padding:10px 20px;font-size:.85rem}.compact-rail .rail-widget{background:linear-gradient(145deg,var(--card),var(--card));gap:14px;padding:22px}@supports (color:color-mix(in lab,red,red)){.compact-rail .rail-widget{background:linear-gradient(145deg,color-mix(in srgb,var(--card) 96%,white),var(--card))}}.rail-widget-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.rail-widget-heading svg{color:var(--muted)}.rail-next{padding-top:4px}.rail-next p{margin-top:7px;font-size:.9rem;line-height:1.5}.rail-widget .rail-deadline{letter-spacing:-.03em;font-size:1.45rem;font-weight:600}.rail-pace{border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:5px;padding:14px 0;display:grid}.rail-pace strong{font-size:.9rem;font-weight:600}.rail-widget .rail-status{color:var(--muted);font-size:.85rem;line-height:1.6}.rail-widget .rail-metric strong{letter-spacing:-.04em;font-size:2rem}.rail-widget:hover .rail-widget-heading svg{transform:translateY(-2px)}.rail-widget-heading svg{transition:transform .25s}.rail-next{animation:.35s ease-out both rail-reveal}@keyframes rail-reveal{0%{opacity:0;translate:0 5px}to{opacity:1;translate:0}}@media(prefers-reduced-motion:reduce){.rail-next{animation:none}.rail-widget-heading svg{transition:none;transform:none!important}}:root[data-motion=off] .rail-next{animation:none}:root[data-motion=off] .rail-widget-heading svg{transition:none;transform:none!important}.rail-daily-count strong{font-size:1.65rem;font-weight:600}.rail-daily-count span{color:var(--muted);font-size:.9rem}.rail-goal-reached{color:var(--accent);animation:.35s ease-out rail-reveal}@media(prefers-reduced-motion:reduce){.rail-goal-reached{animation:none}}:root[data-motion=off] .rail-goal-reached{animation:none}.exam-calendar-dialog{gap:20px;padding-top:8px;display:grid}.exam-date-overview{align-items:center;gap:20px;display:flex}.exam-date-tile{border:1px solid var(--border);background:var(--accent-soft);width:76px;height:88px;color:var(--accent);border-radius:18px;flex-shrink:0;align-content:center;justify-items:center;animation:.35s ease-out rail-reveal;display:grid}.exam-date-tile span{text-transform:uppercase;font-size:.8rem}.exam-date-tile strong{font-size:2rem;line-height:1.3}.exam-date-overview h3{margin:0 0 8px;font-size:1.2rem}.exam-date-overview p{margin:0 0 6px;font-size:.9rem}.exam-date-overview small,.exam-calendar-actions small{color:var(--muted);font-size:.78rem;line-height:1.6}.exam-calendar-title{color:var(--muted);margin:0;font-size:.9rem}.exam-calendar-actions{border-top:1px solid var(--border);gap:18px;padding-top:22px;display:grid}.exam-calendar-actions label{cursor:pointer;align-items:center;gap:12px;font-size:.9rem;display:flex}.exam-calendar-actions input{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0}@media(prefers-reduced-motion:reduce){.exam-date-tile{animation:none}}:root[data-motion=off] .exam-date-tile{animation:none}.exam-catalog{gap:24px;display:grid}.exam-course-group{border:1px solid var(--border);padding:0;overflow:hidden}.exam-course-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex}.exam-course-heading small{color:var(--muted);font-size:.8rem}.exam-course-heading h2{margin:8px 0 0;font-size:1.15rem}.exam-course-heading svg{color:var(--muted);flex-shrink:0}.exam-entry{align-items:center;gap:24px;padding:24px;transition:background .2s;display:flex}.exam-entry+.exam-entry{border-top:1px solid var(--border)}.exam-entry:hover{background:var(--card)}@supports (color:color-mix(in lab,red,red)){.exam-entry:hover{background:color-mix(in srgb,var(--card) 96%,white)}}.exam-entry-copy{flex:1;min-width:0}.exam-entry h3{margin:6px 0 12px;font-size:1rem}.exam-entry .exam-meta{color:var(--muted);flex-wrap:wrap;gap:12px;margin:0;font-size:.85rem}.exam-entry .btn{flex-shrink:0;width:auto}.exam-entry .help-text{max-width:190px;font-size:.8rem}.exam-results-disclosure{margin-top:32px}.exam-results-disclosure>summary{cursor:pointer;color:var(--muted);padding:16px 0}.exam-results-disclosure>summary span{margin-left:12px}@media(max-width:760px){.exam-entry{flex-direction:column;align-items:stretch;gap:16px}.exam-entry .btn{width:100%}.exam-course-heading,.exam-entry{padding:20px}}@media(prefers-reduced-motion:reduce){.exam-entry{transition:none}}:root[data-motion=off] .exam-entry{transition:none}.drafts-section{margin-bottom:32px;scroll-margin-top:24px}.drafts-section h2 small{color:var(--text-muted);margin-left:8px;font-size:.75em;font-weight:500}.module-draft-card{gap:14px;min-height:0}.module-draft-card h3,.module-draft-card p{margin:0}.module-draft-card .module-card-footer{margin-top:8px}.rhythm-suggestion{border-bottom:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;padding:2px 0 16px;font-size:.85rem;display:flex}.rhythm-suggestion-copy{align-items:center;gap:8px;min-width:0;line-height:1.6;display:flex}.rhythm-suggestion-copy>svg{flex-shrink:0}.rhythm-suggestion-copy strong{color:var(--text);font-weight:500}.rhythm-suggestion-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.rhythm-suggestion-actions .icon-button{width:32px;height:32px}@media(max-width:520px){.rhythm-suggestion{flex-wrap:wrap}.rhythm-suggestion-actions{margin-left:auto}}.generation-settings{align-items:end}:root{--motion-fast:.16s;--motion-normal:.24s;--motion-ease:cubic-bezier(.2,.8,.2,1)}.potential-grade{flex-shrink:0;justify-items:center;gap:2px;min-width:88px;display:grid}.potential-grade small{color:var(--muted);font-size:11px}.potential-grade strong{font-size:1.35rem;animation:.24s ease-out grade-update}.potential-grade.failed{color:var(--accent)}@media(max-width:480px){.lesson-topbar:has(.potential-grade) .lesson-clock{display:none}}.lesson-failed .result-medal{animation:.42s cubic-bezier(.2,.8,.3,1.1) result-failure-arrive}.result-medal.retry span,.result-medal.retry i{display:none}.exam-corrections{text-align:left;width:100%;margin-top:28px}.exam-corrections details{border-bottom:1px solid var(--border);padding:16px 0}.exam-corrections summary{cursor:pointer;gap:10px;display:flex}@keyframes grade-update{0%{opacity:.4;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes result-failure-arrive{0%{opacity:.25;transform:translateY(14px)rotate(-12deg)scale(.82)}72%{transform:translateY(-2px)rotate(-5deg)scale(1.04)}to{opacity:1;transform:translateY(0)rotate(-7deg)scale(1)}}.btn,.icon-button,.tabs button,.nav-link,.campus-module-row{transition:background var(--motion-fast),color var(--motion-fast),transform var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast)}.btn-primary,.btn-lime{--press-shadow:var(--brand-shadow)}.btn-danger{--press-shadow:#822d3c}.btn-secondary{--press-shadow:var(--border)}@supports (color:color-mix(in lab,red,red)){.btn-secondary{--press-shadow:color-mix(in srgb, var(--border) 78%, #111923)}}.btn-secondary{box-shadow:0 3px 0 var(--press-shadow)}@media(hover:hover){.btn-primary:hover:not(:disabled),.btn-lime:hover:not(:disabled),.btn-danger:hover:not(:disabled),.btn-secondary:hover:not(:disabled){box-shadow:0 2px 0 var(--press-shadow);transform:translateY(1px)}.module-card:hover{border-color:var(--border);transform:translateY(-2px);box-shadow:0 8px 24px #0002}.campus-module-row:hover{background:var(--card-hover);transform:translate(2px)}}.btn-primary:active:not(:disabled),.btn-lime:active:not(:disabled),.btn-danger:active:not(:disabled),.btn-secondary:active:not(:disabled){box-shadow:none;transform:translateY(4px)}.icon-button:active:not(:disabled),.segmented button:active:not(:disabled),.goal-picker button:active:not(:disabled),.settings-nav button:active:not(:disabled),.tabs button:active:not(:disabled){transform:translateY(1px)}.module-card:focus:not(:focus-visible){border-color:var(--border);outline:none}.module-card:focus-visible,.campus-module-row:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.module-card,:root[data-theme=light] .module-card:hover{border-color:var(--border)}.list-toolbar .tabs{gap:8px}.list-toolbar .tabs button{white-space:nowrap;border:0;border-radius:10px;padding:12px 16px}.list-toolbar .tabs button.active{background:var(--accent-soft);box-shadow:inset 0 -2px var(--accent)}.campus-page .dashboard-modules{flex-direction:column;gap:12px;display:flex}.campus-page .dashboard-modules>*{max-width:none}.campus-module-row{background:var(--card);border:1px solid var(--border);border-radius:14px;align-items:center;gap:16px;padding:18px 20px;display:flex}.campus-row-copy{flex:1;min-width:0}.campus-row-copy strong{font-size:var(--font-body);line-height:1.4;display:block}.campus-row-copy small{color:var(--muted);margin-top:6px;display:block}.campus-module-row>svg{color:var(--muted);flex-shrink:0}.journey-hero .alpine-scene{bottom:-16px;-webkit-mask-image:linear-gradient(90deg,#0000,#000 28%);mask-image:linear-gradient(90deg,#0000,#000 28%)}.current .lesson-node-ring:before{display:none}.lesson-stop.current{--attention-color:var(--module-color)}.lesson-stop.current.failed{--attention-color:#d51f3b}.lesson-stop.current .lesson-node-ring{animation:4.2s ease-in-out infinite awaiting-lesson}.lesson-stop.current .lesson-node{isolation:isolate;z-index:1;box-shadow:0 7px 0 var(--attention-color),inset 0 3px 0 var(--attention-color);overflow:hidden}@supports (color:color-mix(in lab,red,red)){.lesson-stop.current .lesson-node{box-shadow:0 7px color-mix(in srgb,var(--attention-color) 62%,#141722),inset 0 3px color-mix(in srgb,var(--attention-color) 84%,white)}}.lesson-stop.current .lesson-node:hover:not(:disabled){box-shadow:0 3px 0 var(--attention-color),inset 0 3px 0 var(--attention-color)}@supports (color:color-mix(in lab,red,red)){.lesson-stop.current .lesson-node:hover:not(:disabled){box-shadow:0 3px color-mix(in srgb,var(--attention-color) 62%,#141722),inset 0 3px color-mix(in srgb,var(--attention-color) 84%,white)}}.lesson-stop.current .lesson-node:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 38%,#ffffff0a 43%,#ffffff52,#ffffff0a 57%,#0000 62%);animation:5.2s ease-in-out infinite lesson-reflection;position:absolute;top:-45%;right:-78%;bottom:-45%;left:-78%}.lesson-stop.current .lesson-node-ring:after{content:"";z-index:0;background:radial-gradient(ellipse at center,var(--attention-color) 0%,var(--attention-color) 48%,transparent 76%);border-radius:50%;width:72px;height:16px;position:absolute;bottom:-3px;left:50%}@supports (color:color-mix(in lab,red,red)){.lesson-stop.current .lesson-node-ring:after{background:radial-gradient(ellipse at center,color-mix(in srgb,var(--attention-color) 58%,transparent) 0%,color-mix(in srgb,var(--attention-color) 33%,transparent) 48%,transparent 76%)}}.lesson-stop.current .lesson-node-ring:after{filter:blur(5px);pointer-events:none;animation:4.2s ease-in-out infinite awaiting-shadow;transform:translate(-50%)}.lesson-stop.passage-gate .lesson-node-ring{animation:5.6s ease-in-out infinite passage-float}@keyframes awaiting-lesson{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes awaiting-shadow{0%,to{opacity:.54;transform:translate(-50%)translateY(0)scaleX(1)}50%{opacity:.2;transform:translate(-50%)translateY(5px)scaleX(.62)}}@keyframes passage-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.lesson-stop.completed.perfect .lesson-node{isolation:isolate;color:#fff;background:linear-gradient(145deg,#f5d56b,#dca82d 60%,#c68d19);border-color:#a87920;overflow:hidden;box-shadow:0 7px #865b17,inset 0 3px #ffe69a}.lesson-stop.completed.perfect .lesson-node:hover:not(:disabled){box-shadow:0 3px #865b17,inset 0 3px #ffe69a}.lesson-stop.completed.perfect .lesson-node:active:not(:disabled){box-shadow:none;transform:translateY(3px)}.lesson-stop.perfect .lesson-node:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 42%,#fff7,#0000 58%);animation:6s ease-in-out infinite lesson-reflection;position:absolute;top:-45%;right:-78%;bottom:-45%;left:-78%}.lesson-stop.perfect .lesson-node:before{content:"";pointer-events:none;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);background:#fff9db;width:11px;height:11px;animation:4.8s ease-in-out infinite gold-sparkle;position:absolute;top:12px;right:12px}@keyframes gold-sparkle{0%,65%,to{opacity:0;transform:scale(.5)}78%{opacity:.95;transform:scale(1)}}:root[data-motion=off] .lesson-stop.perfect .lesson-node:before,:root[data-motion=off] .lesson-stop.perfect .lesson-node:after{display:none}@media(prefers-reduced-motion:reduce){.lesson-stop.perfect .lesson-node:before,.lesson-stop.perfect .lesson-node:after{display:none}}@keyframes lesson-reflection{0%,28%{opacity:0;transform:translate(-72%)}35%{opacity:1}65%{opacity:1;transform:translate(72%)}72%,to{opacity:0;transform:translate(72%)}}.answer-option{transition:border-color var(--motion-fast),background var(--motion-fast),transform var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast);box-shadow:0 3px #0002}@media(hover:hover){.answer-option:hover:not(:disabled){transform:translateY(1px);box-shadow:0 2px #0002}}.answer-option:active:not(:disabled){box-shadow:none;transform:translateY(3px)}:root[data-motion=off] .lesson-node:after{display:none}@media(prefers-reduced-motion:reduce){.lesson-node:after,.lesson-stop.current .lesson-node-ring:after{display:none}.lesson-stop.current .lesson-node-ring,.lesson-stop.passage-gate .lesson-node-ring{animation:none}}.modal-inner,.lesson-preview{animation:surface-enter var(--motion-normal) var(--motion-ease) both}@keyframes surface-enter{0%{opacity:0;translate:0 7px}to{opacity:1;translate:0}}.progress>*{transition:width .35s var(--motion-ease)}.lesson-preview{z-index:100;background:var(--card);border:1px solid var(--border);border-radius:18px;width:min(360px,100vw - 32px);max-height:calc(100dvh - 32px);padding:22px;position:fixed;overflow:visible;box-shadow:0 18px 45px #00000047,0 3px #0000001f}.lesson-preview:before{content:"";background:var(--card);width:14px;height:14px;left:var(--arrow-x);position:absolute;transform:translate(-50%)rotate(45deg)}.lesson-preview.below:before{border-top:1px solid var(--border);border-left:1px solid var(--border);top:-7px}.lesson-preview.above:before{border-bottom:1px solid var(--border);border-right:1px solid var(--border);bottom:-7px}.preview-copy{flex-direction:column;gap:10px;padding:0 18px 0 2px;display:flex}.lesson-preview h3{font-size:var(--font-title);overflow-wrap:anywhere;max-height:min(30dvh,180px);margin:0;padding:0;line-height:1.38;overflow-y:auto}.today-review{background:var(--card);padding:var(--widget-padding);border-radius:var(--radius);border:1px solid var(--border)}.today-review h3,.today-review a{font-size:var(--font-secondary);align-items:center;gap:10px;display:flex}.today-review a{color:var(--muted);justify-content:space-between;margin-top:16px}.lesson-preview p{font-size:var(--font-label);color:var(--muted)}.lesson-preview .preview-meta{letter-spacing:.01em;margin:0;line-height:1.4}.lesson-preview .preview-description{margin:0;line-height:1.5}.preview-close{width:30px;height:30px;color:var(--muted);position:absolute;top:12px;right:12px}.lesson-preview>.btn{width:100%;margin-top:20px}@media(max-width:480px){.lesson-preview{width:calc(100vw - 24px);padding:20px}.preview-copy{padding-right:14px}.preview-close{top:10px;right:10px}}.answer-letter kbd{opacity:.65;margin-left:4px;font-family:inherit;font-size:10px}.exam-corrections summary .markdown{min-width:0}.exam-corrections summary .markdown p{margin:0}:root[data-motion=off] *,:root[data-motion=off] :before,:root[data-motion=off] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.markdown .katex{font-size:1.08em;color:inherit}.markdown .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:8px 2px}.markdown .katex-display>.katex{white-space:normal}.markdown .katex-display>.katex>.katex-html{line-height:1.8}.course-section .markdown .katex:not(.katex-display){max-width:100%;overflow-x:auto;overflow-y:hidden}.markdown .katex-error{color:var(--text)!important;white-space:pre-wrap;overflow-wrap:anywhere;font-family:Consolas,monospace;font-size:.92em}.exercise-body>h1>.markdown{font-family:var(--font-family);font-size:clamp(1.3rem,2.2vw,1.65rem);font-weight:600;line-height:1.85;letter-spacing:-.015em}.answer-option{min-height:76px;gap:18px}.answer-option>.markdown{min-width:0;font-size:1.08rem;color:var(--text)}.answer-option.selected>.markdown{color:var(--text)}.answer-option .katex{font-size:1.18em}.answer-letter{width:32px;height:32px;font-size:.8rem}.answer-shortcut{flex-shrink:0;color:var(--muted);font:12px var(--font-family);border:1px solid var(--border);border-radius:5px;padding:2px 6px}.expected-answer>.markdown{display:inline-block;margin-left:8px}.review-card{min-width:0}.review-card>div:first-child{gap:16px}.review-card>div:first-child .badge{min-width:0;white-space:normal;overflow-wrap:anywhere;text-align:right}.review-card .review-number{flex-shrink:0}.review-question{margin:20px 0 12px}.review-question .markdown,.review-question .markdown p{color:var(--text);font-size:1rem;font-weight:600;line-height:1.9;margin:0}.review-question .katex{font-weight:400}.markdown pre,.markdown table{max-width:100%;overflow-x:auto}.answer-footer.correct .feedback-icon{animation:feedback-pop .42s cubic-bezier(.2,.8,.3,1.4)}.answer-footer.incorrect .feedback-icon{animation:feedback-nudge .34s ease-out}.result-medal.success{animation:result-arrive .65s cubic-bezier(.2,.8,.3,1.2)}.result-medal.retry{animation:feedback-nudge .42s ease-out}.lesson-result .result-stats{animation:result-details .35s .12s ease-out both}@keyframes feedback-pop{0%{transform:scale(.65);opacity:.4}70%{transform:scale(1.12)}to{transform:scale(1);opacity:1}}@keyframes feedback-nudge{0%,to{transform:translate(0)}25%{transform:translate(-5px) rotate(-3deg)}60%{transform:translate(4px) rotate(2deg)}}@keyframes result-arrive{0%{transform:translateY(14px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes result-details{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:600px){.answer-option{padding:16px;gap:12px}.answer-shortcut{display:none}}:root{--motion-spring: cubic-bezier(.2,.8,.25,1.25)}.icon-button>svg,.nav-link>svg,.text-link>svg,.btn>svg:not(.spin),.toggle>span{transition:transform var(--motion-normal) var(--motion-spring)}.segmented button,.theme-preview,.goal-picker button,.settings-nav button,.toggle,.answer-option,.module-progress-row{transition:background-color var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast),transform var(--motion-fast) var(--motion-ease)}@media(hover:hover){.icon-button:hover>svg{transform:rotate(-7deg) scale(1.08)}.text-link:hover>svg,.btn:hover:not(:disabled)>svg:not(.spin){transform:translate(3px)}.nav-link:hover>svg{transform:translate(2px)}.theme-preview:hover,.goal-picker button:hover{transform:translateY(-2px)}.achievement.earned:hover .achievement-icon{transform:rotate(-5deg) scale(1.08)}}.icon-button:active,.segmented button:active,.goal-picker button:active{transform:scale(.96)}.answer-option.selected .answer-letter{animation:selection-pop .26s var(--motion-spring)}.achievement-icon{transition:transform var(--motion-normal) var(--motion-spring)}.toggle:active>span{scale:.9}.modal[open] .modal-inner{animation:surface-enter var(--motion-normal) var(--motion-ease) both}.modal:not([open]) .modal-inner{animation:none}.modal[open]::backdrop{animation:backdrop-enter .18s ease-out}.toast{animation:surface-enter .26s var(--motion-spring) both}details[open]>:not(summary){animation:surface-enter .18s var(--motion-ease)}@keyframes selection-pop{0%{scale:.85}to{scale:1}}@keyframes backdrop-enter{0%{opacity:0}to{opacity:1}}:root[data-app-hidden=true] *,:root[data-app-hidden=true] *:before,:root[data-app-hidden=true] *:after{animation-play-state:paused!important}:root[data-motion=off] *,:root[data-motion=off] *:before,:root[data-motion=off] *:after{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.auth-page{grid-template-columns:1.05fr 1fr}.auth-story{padding:clamp(32px,4vw,80px);isolation:isolate;background:radial-gradient(ellipse at 25% 75%,#382229,#231c24 48%,#191923)}.auth-story .brand{position:relative;z-index:2}.auth-story-content{margin:auto 0;padding:72px 0 170px;max-width:680px}.auth-story h1{font-size:clamp(2.5rem,3.2vw,4.25rem);line-height:1.18;letter-spacing:-.045em}.auth-story-content>p{font-size:clamp(1rem,1.1vw,1.25rem);color:#e0c9cd;max-width:36rem}.auth-benefits{flex-wrap:wrap;gap:12px 24px}.auth-benefits>span{font-size:.9rem;color:#e0c9cd}.auth-story>.auth-landscape{position:absolute;inset:auto -28px -12px auto;width:min(58%,460px);height:auto;margin:0;pointer-events:none;z-index:-1;opacity:.55}.auth-story>.auth-landscape .alpine-scene{position:static;display:block;width:100%;height:auto;max-height:none;opacity:1;-webkit-mask-image:linear-gradient(to right,transparent,#000 18%,#000),linear-gradient(to bottom,#000 65%,transparent 100%);mask-image:linear-gradient(to right,transparent,#000 18%,#000),linear-gradient(to bottom,#000 65%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.auth-promise{display:inline-flex;align-items:center;gap:14px;max-width:100%;margin-top:56px;padding:16px 20px;border:1px solid #dfb7bf26;border-radius:16px;background:#f0b7c008;box-shadow:0 12px 32px #100c161a;animation:auth-promise-float 7s ease-in-out infinite}.auth-promise-icon{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:12px;color:#e7adb7;background:#e7adb710}.auth-promise strong{display:block;color:#f1ecfa;font-size:.95rem;font-weight:600}.auth-promise div>span{display:block;color:#cbb6bc;font-size:.8rem;line-height:1.6;margin-top:5px}.auth-promise{rotate:-2deg}@keyframes auth-promise-float{50%{transform:translateY(-5px)}}@media(prefers-reduced-motion:reduce){.auth-promise{animation:none}}:root[data-motion=off] .auth-promise{animation:none}.auth-form-side{padding:clamp(32px,4vw,80px);gap:32px}.auth-card{max-width:clamp(440px,28vw,540px)}.auth-symbol{display:flex;width:88px;height:88px;margin:0 auto 24px}.auth-symbol .brand-crest{width:88px;height:88px}.auth-card>.eyebrow{text-align:center;font-size:.75rem;letter-spacing:.1em}.auth-card>h2{text-align:center;font-size:clamp(1.85rem,2vw,2.5rem);line-height:1.25;text-wrap:balance}.auth-card>.muted{text-align:center;font-size:1rem;line-height:1.6;margin:16px 0 32px}.auth-card .field{font-size:.95rem}.auth-card .form-stack{gap:20px}.auth-card .recaptcha-v2{display:flex;width:100%;justify-content:center;margin:-2px auto 2px}.auth-card .recaptcha-v2>div{margin-inline:auto}.auth-card input{min-height:56px;font-size:1rem}.auth-card .btn{min-height:54px;font-size:1rem}.auth-card .segmented button{min-height:46px;font-size:.95rem}.auth-card .forgot-link,.auth-back{font-size:.875rem}.auth-card .divider{font-size:.8rem;margin:28px 0 20px}.auth-card .demo-link{font-size:.9rem;min-height:48px}.auth-caption{font-size:.8rem;line-height:1.6;margin-top:0}@media(max-width:1000px){.auth-story{padding:32px}.auth-story-content{padding-bottom:140px}.auth-story h1{font-size:2.6rem}.auth-form-side{padding:40px 28px}}@media(max-width:760px){.auth-story{min-height:auto;padding:24px}.auth-story-content{padding:24px 0 50px;margin:0}.auth-story h1{font-size:clamp(1.9rem,6vw,2.6rem);max-width:28rem}.auth-story-content>p{max-width:25rem;font-size:1rem}.auth-story>.auth-landscape{inset:auto -24px -10px auto;width:190px;opacity:.25}.auth-story>.auth-landscape .alpine-scene{max-height:none}.auth-promise{margin-top:24px;padding:12px 14px;background:#231c24b3}.auth-form-side{padding:32px 24px 24px;gap:32px}.auth-symbol,.auth-symbol .brand-crest{width:64px;height:64px}.auth-card{max-width:480px}.auth-card>.eyebrow{font-size:.7rem}}.settings-nav button{position:relative;border:1px solid transparent;border-radius:12px;gap:12px;font-weight:550;transition:background .16s,color .16s}.settings-nav button svg{width:19px;height:19px;flex-shrink:0;stroke-width:1.7}.settings-nav button:hover{background:var(--card-hover);color:var(--text)}.settings-nav button.active{background:var(--accent-soft);color:var(--accent)}.sidebar nav{gap:6px;margin-top:36px}.sidebar .nav-link{position:relative;display:flex;gap:13px;min-height:54px;padding:8px 12px;border:2px solid transparent;border-radius:14px;color:var(--muted);font-size:.875rem;font-weight:650;background:transparent;box-shadow:none;transition:background .15s,border-color .15s,color .15s}.sidebar .nav-link:before,.sidebar .nav-link:after{display:none!important;content:none!important}.sidebar .nav-symbol{display:grid;place-items:center;width:32px;height:34px;flex:0 0 32px;background:transparent;color:var(--muted)}.sidebar .nav-symbol svg{width:26px;height:26px}.sidebar .nav-symbol svg{width:21px;height:21px;stroke-width:1.7;color:inherit}.sidebar .nav-link:hover{background:color-mix(in srgb,var(--brand) 8%,transparent);color:var(--text)}.sidebar .nav-link.active{border-color:#85424e;background:#291c23;color:#f6dce1;box-shadow:none}.sidebar .nav-link.active .nav-symbol{background:transparent;box-shadow:none;color:inherit}.sidebar nav .nav-link{margin:0}.sidebar .sidebar-bottom>.nav-link{margin-bottom:8px}.sidebar .sidebar-profile{margin-top:12px;border-top:1px solid var(--border);padding-top:18px}:root[data-theme=light] .sidebar .nav-link.active{border-color:#ce8c98;background:#f9edf0;color:#8e1b30}:root[data-theme=light] .sidebar .nav-link:hover{background:#faeff2}@media(prefers-reduced-motion:reduce){.sidebar .nav-link{transition:none}}.sidebar-create{border:1px solid var(--border);background:var(--card);border-radius:12px;color:var(--text)}.sidebar-create:hover{border-color:var(--accent);background:var(--accent-soft)}:root[data-theme=light]{--bg:#eef1f5;--sidebar:#fafbfc;--card:#fff;--card-hover:#e9edf3;--input:#f7f9fc;--border:#c4ccd8;--text:#202938;--muted:#4c596b;--subtle:#59677a;--accent:#a5152c;--accent-soft:#f9e9ec;--danger:#b4233c;--green:#187047;--blue:#245fa8;--orange:#935509;--lime:#187047;--shadow:0 12px 32px rgb(29 43 65 / .09)}:root[data-theme=light] .card,:root[data-theme=light] .module-card,:root[data-theme=light] .rail-widget{border-color:var(--border);box-shadow:0 2px 8px #1d2b4109}:root[data-theme=light] :is(input,textarea,select){background:var(--input);color:var(--text);border-color:var(--border)}:root[data-theme=light] :is(input,textarea,select):focus{border-color:var(--accent)}:root[data-theme=light] .notice{background:#f9edf0;color:#762033;border-color:#dfb5bf}:root[data-theme=light] .notice.success,:root[data-theme=light] .success-notice{background:#e9f5ee;color:#185938;border-color:#a6cbb5}:root[data-theme=light] .inline-error,:root[data-theme=light] .danger-text{color:var(--danger)}:root[data-theme=light] .badge{background:#edf1f6;color:#344359;border-color:#c4ccd8}:root[data-theme=light] .progress{background:#dce2eb}:root[data-theme=light] .course-section blockquote{background:#f8edf0;border-color:#b71933;color:var(--text)}:root[data-theme=light] .course-section blockquote :is(p,li){color:var(--text)}:root[data-theme=light] .tutor-panel,:root[data-theme=light] .tutor-header,:root[data-theme=light] .tutor-composer{background:var(--card);border-color:var(--border)}:root[data-theme=light] .tutor-message{color:var(--text)}:root[data-theme=light] .tutor-message.assistant{background:#eef2f7}:root[data-theme=light] .tutor-message.user{background:#f9e9ec}:root[data-theme=light] .tutor-panel{box-shadow:0 12px 36px #1d2b4129}:root[data-theme=light] .settings-nav button.active{color:var(--accent)}@media(prefers-reduced-motion:reduce){.sidebar .nav-link,.settings-nav button{transition:none}}.mobile-bottom-nav,.mobile-campus-name,.drawer-close{display:none}.creator-options{border:1px solid var(--border);border-radius:14px;padding:16px}.creator-options summary{cursor:pointer;font-weight:650;font-size:.9rem}.creator-options summary span{display:block;color:var(--muted);font-weight:400;font-size:.8rem;margin-top:6px}.creator-options[open]>.form-stack{margin-top:24px}@media(max-width:900px){html{scroll-padding-top:76px;scroll-padding-bottom:92px}.app-content{margin-left:0;padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.mobile-menu{display:inline-flex}.header-avatar{display:none}.app-content>.topbar{position:sticky;top:0;z-index:25;height:62px;padding:0 16px;background:var(--bg)}.mobile-campus-name{display:inline;font-size:.85rem;font-weight:650}.mobile-bottom-nav{position:fixed;inset:auto 0 0;z-index:30;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:var(--sidebar);border-top:1px solid var(--border)}.mobile-bottom-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:56px;border-radius:12px;color:var(--muted);font-size:.7rem;font-weight:550}.mobile-bottom-nav a.active{background:var(--accent-soft);color:var(--accent);font-weight:700}.mobile-bottom-nav svg{stroke-width:1.7}.sidebar{visibility:hidden;transform:translate(-100%);padding-top:max(20px,env(safe-area-inset-top,0px));padding-bottom:env(safe-area-inset-bottom,0px);width:min(300px,calc(100vw - 40px));overflow-y:auto;overscroll-behavior:contain}.menu-open .sidebar{visibility:visible;transform:translate(0)}.menu-open .sidebar-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0008;z-index:35}.drawer-close{display:inline-flex;align-self:flex-end;flex-shrink:0;margin-bottom:8px}.sidebar .sidebar-bottom{padding-top:18px}.sidebar-profile{padding:16px 5px}.page{padding:24px 16px 32px;min-width:0}.page .page{padding:0;min-height:0}.page-heading{flex-wrap:wrap;align-items:center;gap:14px}.page-heading>div{flex:1 1 220px;min-width:0}.page-heading>.btn{font-size:.85rem;margin-top:0;min-height:44px;padding:11px 15px;white-space:normal}.page-heading>.page-emblem{margin-top:0}.page-heading h1{font-size:clamp(1.55rem,6vw,1.9rem);line-height:1.25}.page-heading p{line-height:1.6}.btn,.icon-button,.text-button,.tabs button,.segmented button,.settings-nav button,.back-link{min-height:44px}.icon-button,.sidebar-profile .icon-button{min-width:44px}.streak-trigger,.goal-picker button,.color-swatch,.subject-picker-options button{min-height:44px}.toggle,.toggle.on{position:relative;width:44px;height:44px;padding:0;background:transparent}.toggle:before{content:"";position:absolute;left:0;right:0;top:9px;height:25px;border-radius:20px;background:var(--border)}.toggle.on:before{background:var(--accent)}.toggle span{position:absolute;top:12px;left:3px}.lesson-header-progress{min-width:0}.lesson-header-progress>div:first-child>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lesson-header-progress strong{flex-shrink:0}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea,.tutor-input textarea,.auth-form input{font-size:16px}input,select,textarea,button,a{scroll-margin-block:80px 100px}.settings-layout,.settings-main,.creator-layout,.form-stack,.form-grid>*,.card{min-width:0}.settings-nav{max-width:100%;gap:6px;flex-wrap:nowrap;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:9px}.settings-nav button{font-size:.8rem;padding:10px 12px}.settings-main>.card{padding:20px 16px}.key-actions,.account-form-actions,.form-actions,.plan-actions{flex-wrap:wrap;gap:12px}.form-actions>.btn,.account-form-actions>.btn{flex:1 1 180px;white-space:normal}.table-scroll,.activity-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.table-scroll table{min-width:560px}.tabs{max-width:100%;overflow-x:auto;justify-content:flex-start}.modal{max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));width:calc(100% - 24px);overscroll-behavior:contain}.modal-inner{padding:20px 16px}.modal-heading{gap:12px}.modal-heading h2{font-size:1.2rem;overflow-wrap:anywhere}.modal-actions{flex-wrap:wrap;gap:10px}.modal-actions .btn{flex:1 1 120px}.creator-options summary{min-height:44px}.tutor-panel header .icon-button{width:44px;height:44px}.tutor-input{grid-template-columns:minmax(0,1fr) 44px}.tutor-input button{width:44px;height:44px}.tutor-widget{bottom:max(12px,env(safe-area-inset-bottom,0px))}.tutor-panel{max-height:calc(100dvh - 90px)}.answer-footer{padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}.answer-footer-inner{flex-wrap:wrap;gap:12px}.answer-encouragement{width:100%}.answer-footer-inner>.btn{flex:none;width:calc(100% - 64px)}.app-footer{flex-wrap:wrap;font-size:.7rem;gap:8px;margin:0 16px;padding-block:20px}.app-footer a,.profile-main,.profile-main .muted,.module-card h3,.admin-console p{overflow-wrap:anywhere}.toast{bottom:calc(90px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 24px)}}@media(max-width:900px)and (orientation:landscape){.app-content>.topbar{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.mobile-bottom-nav{padding-left:max(8px,env(safe-area-inset-left,0px));padding-right:max(8px,env(safe-area-inset-right,0px))}.sidebar .brand{margin-bottom:16px}}@media(max-width:360px){.lesson-topbar{gap:10px;padding-inline:12px}.potential-grade{min-width:72px}.resource-bar{gap:8px}.mobile-campus-name{font-size:.78rem}.settings-main>.card,.page .card{padding:18px 14px}}@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}
