body{overflow-x:clip}.eyebrow{font-weight:600;color:var(--brand-ink)}.chip{display:inline-flex;align-items:center;gap:6px;min-height:28px;margin:0;padding:0 12px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-2);font-size:var(--t-sm);font-weight:500}.meter i{background:linear-gradient(to left,var(--brand),var(--rose))}[dir=ltr] .meter i{background:linear-gradient(to right,var(--rose),var(--brand))}.dune-curve{position:relative;display:block;height:30px}[dir=rtl] .dune-curve{transform:scaleX(-1)}.dune-curve svg{display:block;width:100%;height:100%;overflow:visible;fill:none;stroke-linecap:round}.dune-curve-track{stroke:var(--line);stroke-width:6px}.dune-curve-fill{stroke:var(--brand);stroke-width:6px}.dune-curve.is-ok .dune-curve-fill{stroke:var(--ok)}.dune-curve.is-locked .dune-curve-track{stroke-dasharray:2 12}.dune-curve-knob{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--surface);border:3px solid var(--brand)}.page:has(.dawn-hero){-webkit-padding-before:0;padding-block-start:0}.dawn-hero{position:relative;isolation:isolate;overflow:hidden;margin-inline:calc(50% - 50vw);padding:var(--s9) max(var(--gutter),calc(50vw - var(--w-page) / 2)) 150px;background:linear-gradient(180deg,var(--sky-1),var(--sky-2) 70%)}.dawn-sky{position:absolute;inset:0;z-index:-1;pointer-events:none}.dawn-halo,.dawn-sun{position:absolute;border-radius:50%}.dawn-halo{inset-inline-end:calc(50vw - min(var(--w-page), 100vw) / 2 + 40px);top:4%;width:min(520px,90vw);aspect-ratio:1;background:radial-gradient(circle at 50% 55%,#ffb48f 0,color-mix(in srgb,var(--sun) 60%,transparent) 30%,transparent 68%);opacity:.5}.dawn-sun{z-index:-1;inset-inline-start:-36px;top:52%;width:120px;height:120px;background:radial-gradient(circle,#ffc3a5,var(--sun));box-shadow:0 0 80px 20px color-mix(in srgb,var(--sun) 35%,transparent)}.dawn-dunes{position:absolute;inset-inline:0;bottom:0;display:block;width:100%;height:220px}.dawn-1{fill:var(--dune-1)}.dawn-2{fill:var(--dune-2)}.dawn-hero .dawn-3{fill:var(--bg)}.dawn-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;grid-gap:var(--s8);gap:var(--s8)}.dawn-text{display:grid;justify-items:start;grid-gap:var(--s5);gap:var(--s5)}.dawn-chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;margin:0;padding:0 14px;border-radius:var(--r-pill);background:var(--brand-soft);color:var(--brand-ink);font-size:var(--t-sm);font-weight:600;justify-self:start;transition:background var(--dur-fast) var(--ease)}a.dawn-chip:hover{background:color-mix(in srgb,var(--brand-soft) 70%,var(--brand) 30%)}.icon-solid{fill:currentColor;stroke:none}.dawn-hero h1{max-width:16em;font-size:clamp(2rem,1.2rem + 2.6vw,3rem);line-height:1.35;text-wrap:balance}[dir=ltr] .dawn-hero h1{line-height:1.15;letter-spacing:-.02em}.dawn-hero h1 em{font-style:normal;color:var(--brand)}.dawn-lede{max-width:34em;font-size:1.1875rem;line-height:1.85;color:var(--ink-2);text-wrap:pretty}.dawn-hero .hero-actions .btn-lg{min-height:52px;border-radius:var(--r)}.dawn-free{display:flex;align-items:center;gap:var(--s2);margin:calc(-1 * var(--s1)) 0 0;color:var(--ink-2);font-size:var(--t-ui)}.dawn-free .icon{color:var(--ok)}.dawn-proof{display:flex;flex-wrap:wrap;gap:var(--s7);margin:var(--s2) 0 0}.dawn-proof div{display:flex;flex-direction:column-reverse}.dawn-proof dt{font-size:var(--t-ui);color:var(--ink-2)}.dawn-proof dd{margin:0;font-family:var(--font-mono);font-size:1.375rem;font-weight:600;line-height:1.3}.dawn-preview{position:relative;isolation:isolate;margin:0;-webkit-padding-after:var(--s9);padding-block-end:var(--s9)}.dawn-card{display:grid;grid-gap:var(--s3);gap:var(--s3);width:min(360px,100%);padding:18px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-pop);transform:rotate(-2deg)}[dir=ltr] .dawn-card{transform:rotate(2deg)}.dawn-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.dawn-card-head .chip{min-height:24px;font-size:var(--t-xs)}.sample-lang{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-2)}.dawn-card strong,.dawn-card-title{font-size:1.0625rem;font-weight:700;line-height:1.5}.dawn-card-title{color:inherit;text-decoration:none}.dawn-card-title:hover{color:var(--brand-ink);text-decoration:underline}.dawn-card pre{margin:0;padding:12px 14px;border-radius:12px;background:var(--night);color:#f6ece6;font-size:.8125rem;line-height:1.7;text-align:left;overflow-x:auto}.dawn-card .dawn-card-out{background:var(--surface-2);color:var(--ok)}.dawn-card-progress{display:flex;align-items:center;gap:var(--s3);font-size:var(--t-xs);color:var(--ink-2)}.dawn-card-progress .meter{flex:1 1;height:8px}.dawn-pill{position:absolute;bottom:var(--s5);inset-inline-start:28%;display:flex;align-items:center;gap:var(--s2);padding:10px 16px;border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-pop);font-size:var(--t-ui);font-weight:600;white-space:nowrap}.dawn-pill .num{font-weight:400;color:var(--ink-2)}.dawn-pill-ok{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ok);color:var(--bg)}.stage-strip{position:relative;z-index:1;margin-block:-72px var(--s9)}.stage-strip-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s2) var(--s4);-webkit-margin-after:var(--s5);margin-block-end:var(--s5)}.stage-strip-head h2{font-size:1.625rem}.stage-strip-head .muted{font-size:var(--t-ui)}.stage-strip-all{display:inline-flex;align-items:center;gap:6px;-webkit-margin-start:auto;margin-inline-start:auto;color:var(--brand-ink);font-weight:600;font-size:.9375rem}.stage-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:var(--s5);gap:var(--s5);margin:0;padding:0;list-style:none}.stage-card{display:flex;flex-direction:column;gap:var(--s3);height:100%;min-height:210px;padding:22px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-pop);color:var(--ink);transition:transform var(--dur-fast) var(--ease)}.stage-card:hover{transform:translateY(-2px)}.stage-card.is-current{outline:2px solid var(--brand);outline-offset:-2px}.stage-card .track-icon{width:48px;height:48px;border-radius:var(--r);background:var(--brand-soft);color:var(--brand)}.stage-card strong{font-size:1.1875rem;line-height:1.4}.stage-card p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.90625rem;line-height:1.75;color:var(--ink-2)}.stage-card-meta{display:flex;align-items:center;gap:var(--s3);-webkit-margin-before:auto;margin-block-start:auto;font-size:var(--t-sm);color:var(--ink-2);white-space:nowrap}.stage-card-meta .meter{flex:1 1;height:8px}.stage-card.is-done .meter i{background:var(--ok)}.stage-card.is-done .stage-card-state{color:var(--ok)}.page:has(.dashboard),.page:has(.lesson-layout),body:has(.dashboard) .bar,body:has(.lesson-layout) .bar{max-width:1360px}.lesson-layout{display:grid;grid-template-columns:300px minmax(0,1fr) 220px;grid-gap:var(--s8);gap:var(--s8);align-items:start}.lesson-aside,.lesson-rail{position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + var(--s5));max-height:calc(100vh - var(--header-h) - var(--s8));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.lesson-rail{padding:var(--s6) var(--s4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--tint);font-size:.9375rem}.lesson-rail summary{display:flex;align-items:center;gap:var(--s2);padding-inline:var(--s2);list-style:none;cursor:pointer}.lesson-rail summary::-webkit-details-marker{display:none}.rail-head{flex:1 1;min-width:0;display:grid;grid-gap:2px;gap:2px}.rail-title{font-size:1.25rem;font-weight:700;line-height:1.4}.rail-jump,.rail-toggle{display:none}.rail-progress{margin:var(--s4) var(--s2) var(--s3)}.rail-progress .dune-curve{height:36px}.rail-count,.rail-progress p{display:flex;justify-content:space-between;-webkit-margin-before:var(--s1);margin-block-start:var(--s1);font-size:var(--t-sm);color:var(--ink-2)}.rail-count{margin:var(--s2) var(--s2) var(--s3)}.rail-progress .num{color:var(--ink);font-weight:600}.lesson-rail ol{display:grid;grid-gap:2px;gap:2px;margin:0;padding:0;list-style:none}.lesson-rail a{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;grid-gap:var(--s3);gap:var(--s3);padding:9px var(--s3);border-radius:12px;color:var(--ink-2);line-height:1.5}.lesson-rail a:hover{background:var(--surface-2);color:var(--ink)}.lesson-rail a.is-done{color:var(--ink)}.lesson-rail a[aria-current=page]{background:var(--brand-soft);color:var(--ink);font-weight:600;box-shadow:inset -3px 0 0 var(--brand)}[dir=ltr] .lesson-rail a[aria-current=page]{box-shadow:inset 3px 0 0 var(--brand)}.rail-num{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line-strong);font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--ink-2)}.lesson-rail a.is-done .rail-num{border-color:var(--ok);background:var(--ok);color:var(--bg)}.lesson-rail a[aria-current=page] .rail-num{border-color:var(--brand);background:var(--brand);color:var(--on-brand)}.lesson{max-width:780px}.lesson-head{gap:var(--s3)}.lesson-head h1{font-size:2rem;line-height:1.35}.lesson-aside{display:grid;grid-gap:var(--s7);gap:var(--s7);-webkit-padding-before:var(--s2);padding-block-start:var(--s2)}.lesson-toc-list{display:grid;font-size:var(--t-ui)}.lesson-toc-list h2{-webkit-margin-after:var(--s3);margin-block-end:var(--s3);font-size:.78rem;font-weight:600;color:var(--ink-2)}.lesson-toc-list a{padding:6px var(--s3);-webkit-border-start:2px solid var(--line);border-inline-start:2px solid var(--line);color:var(--ink-2);line-height:1.6}.lesson-toc-list a:hover{color:var(--ink)}.lesson-toc-list a[aria-current=location]{border-color:var(--brand);color:var(--ink);font-weight:600}.stuck-card{display:grid;grid-gap:var(--s1);gap:var(--s1);padding:var(--s4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-1)}.stuck-card p{font-size:var(--t-sm);line-height:1.7;color:var(--ink-2)}.stuck-card .btn{justify-content:center;-webkit-margin-before:var(--s3);margin-block-start:var(--s3)}.lesson-dock{display:none}.board-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;grid-gap:var(--s7);gap:var(--s7);align-items:start}.board-main{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--s6);gap:var(--s6);align-content:start}.board-greet{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s3)}.board-greet p{font-size:.9375rem}.board-greet h1{font-size:1.875rem;line-height:1.35}.streak-chip{min-height:36px;padding-inline:16px;font-size:var(--t-ui);color:var(--ink)}.streak-chip .icon{color:var(--brand)}.next-card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2);min-height:260px;padding:28px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-pop);color:var(--ink)}.next-card .dawn-dunes{z-index:-1;height:110px;opacity:.9}.next-card .dawn-3{fill:var(--dune-3)}.next-sun{position:absolute;z-index:-1;inset-inline-end:56px;bottom:54px;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,#ffc3a5,var(--sun));box-shadow:0 0 60px 14px color-mix(in srgb,var(--sun) 35%,transparent)}.next-card strong{max-width:18em;font-size:1.5rem;line-height:1.4}.next-card .muted{font-size:.90625rem}.next-card .btn{-webkit-margin-before:var(--s4);margin-block-start:var(--s4);min-height:48px}.board-main .goal-card{border:0;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-pop)}.board-main .week-dots{gap:var(--s2)}.board-main .week-dots li{height:auto;gap:6px;background:none;border:0;font-weight:500}.board-main .week-dots li:before{content:"";display:block;width:100%;height:36px;border-radius:10px;background:var(--surface-2)}.board-main .week-dots li.is-on{background:none;color:var(--ink-2)}.board-main .week-dots li.is-on:before{background:var(--brand)}.board-main .week-dots li.is-future:before{background:transparent;border:1.5px dashed var(--line)}.stage-progress{grid-column:1/-1;padding:var(--s6) 28px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-pop)}.stage-progress header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--s2);-webkit-margin-after:var(--s2);margin-block-end:var(--s2)}.stage-progress h2{font-size:1.125rem}.stage-progress header .muted{font-size:var(--t-sm)}.stage-progress ul{margin:0;padding:0;list-style:none}.stage-progress li{display:grid;grid-template-columns:220px minmax(0,1fr) 80px;align-items:center;grid-gap:var(--s6);gap:var(--s6);padding-block:14px;-webkit-border-before:1px solid var(--line);border-block-start:1px solid var(--line)}.stage-progress li:first-child,.stage-progress-roadmap+li{-webkit-border-before:0;border-block-start:0}.stage-progress li.stage-progress-roadmap{display:block;padding-block:var(--s4) 0;color:var(--brand-ink);font-size:var(--t-xs);font-weight:700}.stage-progress li.stage-progress-roadmap:first-child{-webkit-padding-before:var(--s2);padding-block-start:var(--s2)}.stage-progress-name{display:grid;min-width:0}.stage-progress-name small{overflow:hidden;font-size:var(--t-sm);color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap}.stage-progress li.is-locked .stage-progress-name{color:var(--ink-2)}.stage-progress-pc{font-weight:600;text-align:end;font-size:var(--t-sm);color:var(--ink-2)}.stage-progress-pc .num{font-size:.9375rem;color:var(--ink)}.stage-progress-pc.is-ok .num{color:var(--ok)}.board-tutor{position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + var(--s5));height:min(720px,calc(100vh - var(--header-h) - var(--s8)))}.chat.is-docked{position:static;display:block;height:100%}.chat.is-docked .chat-panel{width:100%;height:100%;border-radius:var(--r-lg);background:var(--tint);box-shadow:none;animation:none}.chat.is-docked .chat-head{padding:var(--s5) var(--s6);background:var(--tint)}.chat.is-docked .chat-form,.chat.is-docked .chat-list{background:var(--tint)}.chat-live{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:var(--r-pill);background:var(--ok-soft);color:var(--ok);font-size:var(--t-xs);font-weight:600}.mobile-tabs{display:none}@media (max-width:1280px){.lesson-layout{grid-template-columns:280px minmax(0,1fr)}.lesson-aside{display:none}}@media (max-width:1180px){.board-grid{grid-template-columns:minmax(0,1fr)}.board-tutor{position:static;height:560px}}@media (max-width:1080px){.dawn-inner{grid-template-columns:minmax(0,1fr)}.dawn-preview{justify-self:center;width:min(420px,100%)}.lesson-layout{grid-template-columns:minmax(0,1fr);gap:var(--s6)}.lesson-rail{order:2;position:static;max-height:none;padding:var(--s4);scroll-margin-top:calc(var(--header-h) + var(--s4))}.rail-toggle{display:block;color:var(--ink-2);transition:transform var(--dur-fast) var(--ease)}.lesson-rail details[open] .rail-toggle{transform:rotate(180deg)}.lesson-rail ol{max-height:320px;overflow-y:auto}.rail-jump{display:inline-flex;align-items:center;gap:var(--s1);-webkit-margin-start:auto;margin-inline-start:auto;padding:var(--s1) var(--s3);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--ink)}}@media (max-width:760px){body{-webkit-padding-after:calc(72px + env(safe-area-inset-bottom));padding-block-end:calc(72px + env(safe-area-inset-bottom))}.dawn-hero{padding-block:var(--s7) 120px}.dawn-halo{inset-inline-end:var(--gutter);top:var(--s5);width:56px;opacity:1;background:radial-gradient(circle,#ffc3a5,var(--sun));box-shadow:0 0 50px 14px color-mix(in srgb,var(--sun) 25%,transparent)}.dawn-text{gap:var(--s4)}.dawn-lede{font-size:var(--t-md)}.dawn-proof{gap:var(--s5)}.dawn-preview{display:none}.stage-strip{-webkit-margin-before:-64px;margin-block-start:-64px}.stage-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}.stage-card{min-height:0;padding:var(--s4);gap:var(--s2)}.stage-card .track-icon{width:40px;height:40px}.stage-card strong{font-size:.9375rem}.stage-card p,.stage-card-meta>span:first-child,.stage-card-state{display:none}.lesson-head h1{font-size:1.625rem}.lesson-dock{position:fixed;inset-inline:0;bottom:0;z-index:45;display:flex;gap:10px;padding:12px 16px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,var(--bg) 30%)}.lesson-dock .btn{min-height:52px}.lesson-dock .btn-ghost{background:var(--surface)}.lesson-dock .btn-brand{flex:1 1;justify-content:center}.board-main{grid-template-columns:minmax(0,1fr)}.board-greet h1{font-size:1.5rem}.next-card{min-height:0;padding:var(--s5)}.next-sun{inset-inline-end:var(--s6);bottom:28px;width:44px;height:44px}.stage-progress{padding:var(--s5)}.stage-progress li{grid-template-columns:minmax(0,1fr) auto;gap:var(--s2) var(--s4)}.stage-progress li .dune-curve{grid-column:1/-1;grid-row:2}.mobile-tabs{position:fixed;inset-inline:0;bottom:0;z-index:45;display:grid;grid-template-columns:repeat(4,1fr);padding:8px 8px env(safe-area-inset-bottom);-webkit-border-before:1px solid var(--line);border-block-start:1px solid var(--line);background:var(--surface)}.mobile-tabs a,.mobile-tabs button{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:56px;padding:4px 0;border:0;background:none;color:var(--ink-2);font:inherit;font-size:var(--t-xs);cursor:pointer}.mobile-tabs [aria-current=page]{color:var(--brand-ink);font-weight:600}.chat:not(.is-docked){inset-block-end:calc(84px + env(safe-area-inset-bottom))}.chat:not(.is-docked) .chat-launcher{display:none}.chat:not(.is-docked) .chat-panel{height:calc(100vh - 200px)}}.star-legend{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);margin:var(--s1) 0 0;padding:0;list-style:none;font-size:var(--t-sm);color:var(--ink-2)}.star-legend li{display:inline-flex;align-items:center;gap:var(--s2)}.star-legend li:before{content:"";width:12px;height:12px;border-radius:50%}.star-legend .is-done:before{background:#e9b44c;box-shadow:0 0 8px 2px rgba(233,180,76,.5)}.star-legend .is-started:before{background:var(--sun)}.star-legend .is-fresh:before{background:#8a7898}.star-legend .is-locked:before{border:1.5px dashed var(--line-strong)}.star-legend .is-guide:before{box-shadow:0 0 0 2px var(--bg),0 0 0 3.5px var(--sun);background:var(--sun)}.star-scroll{overflow-x:auto;border-radius:var(--r-lg);box-shadow:var(--shadow-pop);scrollbar-width:thin}.star-sky{position:relative;isolation:isolate;height:var(--h,400px);min-width:var(--w,0);overflow:hidden;background:radial-gradient(ellipse 60% 50% at 50% 0,rgba(160,84,112,.28),transparent 70%),linear-gradient(180deg,#120a1a,#1a1126 55%,#2b1a33);color:#f6ece6}.star-dust i{position:absolute;z-index:-1;width:2px;height:2px;border-radius:50%;background:rgba(246,236,230,.45)}.star-dust i.is-big{width:3px;height:3px;background:rgba(246,236,230,.8);animation:star-twinkle 3.2s ease-in-out infinite alternate}.star-ground{z-index:-1;height:90px}.star-ground .dawn-1{fill:#24162f}.star-ground .dawn-2{fill:#1d1228}.star-ground .dawn-3{fill:#160d1f}.star-lines{position:absolute;inset:0;width:100%;height:100%;z-index:-1}[dir=rtl] .star-lines{transform:scaleX(-1)}.star-lines line{stroke:rgba(var(--sky-tint,246,236,230),.34);stroke-width:1.5px}.star-lines line.is-lit{stroke:rgba(233,180,76,.65)}.star-lines line.is-leader{stroke:rgba(var(--sky-tint,246,236,230),.16);stroke-width:1px;stroke-dasharray:2 4}.star-stage{position:absolute;inset-inline:0;top:var(--top);display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 12px;margin:0;padding-inline:var(--s3);font-size:var(--t-sm);color:#c8b7c4;text-align:center}.star-stage strong{color:#f6ece6;font-weight:600}.star-figure,.star-stage .num{font-size:var(--t-xs)}.star-figure{color:rgb(var(--sky-tint,246,236,230));opacity:.85}.star-list{margin:0;padding:0;list-style:none}.star{position:absolute;inset-inline-start:var(--x);top:var(--y);translate:-50% -13px}[dir=rtl] .star{translate:50% -13px}.star.is-up{translate:-50% calc(-100% + 13px)}[dir=rtl] .star.is-up{translate:50% calc(-100% + 13px)}.star a{display:grid;justify-items:center;grid-gap:6px;gap:6px;color:inherit;border-radius:var(--r-sm)}.star a:focus-visible{outline:2px solid #f2c879;outline-offset:6px}.star-dot{position:relative;display:grid;place-items:center;width:26px;height:26px;transition:scale var(--dur-fast) var(--ease)}.star a:hover .star-dot{scale:1.25}.star-dot:before{content:"";width:16px;height:16px;border-radius:50%;background:#a593b4}.star.is-done .star-dot{filter:drop-shadow(0 0 6px rgba(242,200,121,.9))}.star.is-done .star-dot:before{width:20px;height:20px;background:#f6dc9a}.star.is-started .star-dot:before{border-radius:50%;width:22px;height:22px;background:radial-gradient(circle,#ffc3a5 0 34%,transparent 36%),conic-gradient(var(--sun) calc(var(--p) * 1%),rgba(246,236,230,.18) 0)}[dir=rtl] .star.is-started .star-dot:before{transform:scaleX(-1)}.star.is-locked .star-dot:before{border-radius:50%;width:8px;height:8px;background:none;border:1.5px dashed rgba(246,236,230,.4)}.star.is-guide .star-dot:after{content:"";position:absolute;inset:-9px;border-radius:50%;border:1.5px solid var(--sun);animation:star-guide 2.4s var(--ease) infinite}.star-guide{padding:1px 10px;border-radius:var(--r-pill);background:var(--sun);color:#2a1b3d;font-size:var(--t-xs);font-weight:700;white-space:nowrap}.star-name{display:grid;max-width:150px;padding:2px 8px;border-radius:var(--r-sm);background:rgba(18,10,26,.9);box-shadow:0 0 0 1px rgba(255,255,255,.08);color:#f4ecf2;font-size:var(--t-sm);font-weight:600;line-height:1.45;text-align:center;text-wrap:balance}.star-name small{font-size:.6875rem;font-weight:400;color:#c8b7c4}.star.is-up .star-name{order:-1}.star.is-up .star-guide{order:-2}.star.is-fresh .star-name{color:#d9cbd6}.star.is-locked .star-name{color:#8a7898}@keyframes star-twinkle{to{opacity:.3}}@keyframes star-guide{0%{opacity:.9;scale:.8}to{opacity:0;scale:1.6}}@media (prefers-reduced-motion:reduce){.star-dust i.is-big,.star.is-guide .star-dot:after{animation:none}}.bar{display:flex;justify-content:space-between}.bar-start{gap:var(--s6)}.bar-end{gap:var(--s3)}.brand{font-size:1.375rem}button.nav-link{border:0;background:none;font:inherit;font-size:var(--t-base);font-weight:500;cursor:pointer}.header-search{width:min(19rem,26vw)}.bar .header-start,.bar .signin{min-height:40px;padding-inline:var(--s4)}.bar .account summary{height:auto;padding:0;border:0;border-radius:50%;background:none;transition:box-shadow var(--dur-fast) var(--ease)}.bar .account summary:hover,.bar .account[open] summary{background:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 35%,transparent)}.bar .account .avatar:not(:has(img)){background:var(--brand-soft);color:var(--brand-ink)}.account-tools{display:grid;margin-block:var(--s1);padding-block:var(--s1);border-block:1px solid var(--line)}.foot-tools{display:flex;align-items:center;gap:2px}body:has(.dawn-hero) .site-header{background:color-mix(in srgb,var(--sky-1) 90%,transparent);border-block-end-color:transparent}@media (max-width:1180px){.header-search{display:none}.bar-end .header-search-link{display:inline-flex}}.tutor-page{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:var(--s6);gap:var(--s6);align-items:start}.tutor-stage .chat.is-docked{height:calc(100vh - var(--header-h) - 2 * var(--s7));min-height:560px}.tutor-page .chat.is-docked .chat-panel{border:1px solid var(--line);background:var(--surface);grid-template-rows:minmax(0,1fr) auto}.tutor-page .chat-head{display:none}.tutor-page .chat.is-docked .chat-list{padding:var(--s6) max(var(--s6),calc((100% - 820px) / 2));background:transparent}.tutor-page .chat.is-docked .chat-form{padding:var(--s4) max(var(--s6),calc((100% - 820px) / 2)) var(--s4);-webkit-border-before:1px solid var(--line);border-block-start:1px solid var(--line);background:transparent}.chat-intro{margin-block:auto;grid-gap:var(--s6);gap:var(--s6);text-align:center}.chat-intro,.tutor-hello{display:grid;justify-items:center}.tutor-hello{grid-gap:var(--s2);gap:var(--s2)}.tutor-sun{width:56px;height:56px;-webkit-margin-after:var(--s3);margin-block-end:var(--s3);border-radius:50%;background:radial-gradient(circle at 35% 35%,var(--sun),var(--brand));box-shadow:0 0 0 10px color-mix(in srgb,var(--brand) 12%,transparent),0 0 60px color-mix(in srgb,var(--sun) 45%,transparent)}.tutor-hello h1{font-size:clamp(1.6rem,1.2rem + 1.2vw,2.1rem)}.tutor-hello p{max-width:46ch;color:var(--ink-2)}.chat-hint{display:block;-webkit-margin-before:var(--s2);margin-block-start:var(--s2);text-align:center;font-size:var(--t-xs);color:var(--ink-2)}.tutor-side{position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + var(--s7));display:grid;grid-gap:var(--s4);gap:var(--s4)}.tutor-card{display:grid;grid-gap:var(--s3);gap:var(--s3);padding:var(--s5);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.tutor-card h2{font-weight:600}.tutor-card h2,.tutor-card p{font-size:var(--t-sm);color:var(--ink-2)}.tutor-card p{line-height:1.7}.tutor-card .btn{justify-self:start}.tutor-progress{display:flex;align-items:center;gap:var(--s3);font-size:var(--t-sm)}.tutor-progress .dune-curve{flex:1 1}.tutor-how{display:grid;grid-gap:var(--s3);gap:var(--s3);margin:0;padding:0;list-style:none}.tutor-how li{display:flex;gap:var(--s3);font-size:var(--t-sm);line-height:1.7;color:var(--ink-2)}.tutor-how .icon{flex:none;-webkit-margin-before:3px;margin-block-start:3px;color:var(--brand-ink)}@media (max-width:1080px){.tutor-page{grid-template-columns:minmax(0,1fr)}.tutor-side{position:static;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}@media (max-width:760px){.tutor-stage .chat.is-docked{height:calc(100svh - var(--header-h) - 150px);min-height:440px}.tutor-sun{width:40px;height:40px;-webkit-margin-after:var(--s1);margin-block-end:var(--s1)}.tutor-hello h1{font-size:1.375rem}.tutor-hello p{font-size:var(--t-sm)}.chat-intro{gap:var(--s4)}.tutor-page .chat.is-docked .chat-form,.tutor-page .chat.is-docked .chat-list{padding-inline:var(--s3)}}.star-lines.is-tall{display:none}@media (max-width:640px){.star-sky{height:var(--tall-h);min-width:0}.star-lines.is-wide{display:none}.star-lines.is-tall{display:block}.star-stage{top:var(--tall-top)}.star{inset-inline-start:var(--tx);top:var(--ty)}.star,.star.is-up,[dir=rtl] .star,[dir=rtl] .star.is-up{inset-inline-start:0;top:var(--ly);width:100%;height:0;translate:none}.star a{display:block}.star-dot{position:absolute;inset-inline-start:var(--tx);top:var(--dy);translate:-50% -50%}[dir=rtl] .star-dot{translate:50% -50%}.star-name{position:absolute;inset-inline-start:var(--lx);top:0;translate:0 -50%;max-width:52%;text-align:start}.star-guide{display:none}.star.is-guide .star-name{box-shadow:0 0 0 2px var(--sun)}.star a:focus-visible{outline:none}.star a:focus-visible .star-name{outline:2px solid #f2c879;outline-offset:3px}}.sky-page{display:grid;grid-gap:var(--s9);gap:var(--s9)}.sky-head{display:grid;grid-gap:var(--s3);gap:var(--s3)}.sky-head h1{font-size:var(--t-2xl)}.sky-head p{max-width:62ch;color:var(--ink-2)}.sky-jump{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:var(--s3);gap:var(--s3);-webkit-margin-before:calc(var(--s9) * -.5);margin-block-start:calc(var(--s9) * -.5)}.sky-jump a{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:2px var(--s3);gap:2px var(--s3);padding:var(--s4) var(--s5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);color:var(--ink);transition:border-color var(--dur-fast) var(--ease)}.sky-jump a:hover{border-color:var(--brand)}.sky-jump .num{grid-row:span 2;align-self:center;color:var(--brand-ink);font-weight:600}.sky-jump small{color:var(--ink-2);font-size:var(--t-sm)}.sky-roadmap{display:grid;grid-gap:var(--s5);gap:var(--s5);scroll-margin-top:calc(var(--header-h) + var(--s5))}.sky-roadmap-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:var(--s4) var(--s7)}.sky-roadmap-head h2{font-size:var(--t-xl)}.sky-roadmap-head p{max-width:60ch;color:var(--ink-2)}.sky-roadmap-head dl{display:flex;gap:var(--s6);margin:0}.sky-roadmap-head dl div{display:grid}.sky-roadmap-head dt{order:2;font-size:var(--t-sm);color:var(--ink-2)}.sky-roadmap-head dd{margin:0;font-size:var(--t-lg);font-weight:700}.sky-list-title{-webkit-margin-before:var(--s3);margin-block-start:var(--s3);font-size:var(--t-md)}.path-stages{display:grid;grid-gap:var(--s4);gap:var(--s4);margin:0;padding:0;list-style:none}.path-stage{display:grid;grid-gap:var(--s3);gap:var(--s3);padding:var(--s4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.path-stage-head{display:grid;grid-gap:4px;gap:4px}.path-stage-head h4{font-size:var(--t-md)}.path-stage-head p{max-width:72ch;margin:0;color:var(--ink-2);font-size:var(--t-sm)}.path-stage-head small{color:var(--ink-2);font-size:var(--t-xs)}.path-tracks{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:var(--s2);gap:var(--s2);margin:0;padding:0;list-style:none}.path-tracks>li{display:grid}.path-track{display:flex;align-items:center;gap:var(--s3);min-height:68px;padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg);color:var(--ink);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.path-track:hover{border-color:var(--line-strong);background:var(--surface-2)}.path-step{display:grid;flex:none;place-items:center;width:30px;height:30px;border:1.5px solid var(--line-strong);border-radius:50%;color:var(--ink-2);font-size:var(--t-xs);font-weight:700}.path-track-text{display:grid;flex:1 1;grid-gap:2px;gap:2px;min-width:0}.path-track-text strong{font-size:var(--t-ui);font-weight:600;line-height:1.35}.path-track-text small{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);color:var(--ink-2);font-size:var(--t-xs)}.path-track-text .meter{width:100%;-webkit-margin-before:4px;margin-block-start:4px}.path-track>.icon{flex:none;color:var(--ink-2)}.path-track.is-done .path-step{border-color:var(--ok);background:var(--ok);color:var(--bg)}.path-track.is-guide{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));background:var(--tint)}.path-track.is-guide .path-step{border-color:var(--brand);background:var(--brand);color:var(--on-brand)}.chip.path-here{min-height:22px;padding:0 8px;background:color-mix(in srgb,var(--brand) 16%,transparent);color:var(--brand-ink);font-size:var(--t-xs);font-weight:600}.build-path{display:grid;grid-gap:var(--s3);gap:var(--s3);-webkit-margin-before:var(--s4);margin-block-start:var(--s4);padding:var(--s4);border:1px solid color-mix(in srgb,var(--brand) 35%,var(--line));border-radius:var(--r-lg);background:var(--tint)}.build-path header{display:grid;grid-gap:4px;gap:4px}.build-path h3{font-size:var(--t-md)}.build-note,.build-path header p{max-width:72ch;margin:0;color:var(--ink-2);font-size:var(--t-sm)}.build-before{max-width:72ch;margin:0;padding:var(--s2) var(--s3);-webkit-border-start:3px solid var(--brand);border-inline-start:3px solid var(--brand);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-size:var(--t-sm)}.build-before a{color:var(--brand);font-weight:600}.build-steps{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:var(--s2);gap:var(--s2);margin:0;padding:0;list-style:none}.build-steps>li{display:grid}.build-step{position:relative;display:flex;align-items:flex-start;gap:var(--s3);padding:var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);transition:border-color var(--dur-fast) var(--ease)}.build-step:hover{border-color:var(--line-strong)}.build-step.is-start{border-color:var(--brand)}.build-num{display:grid;flex:none;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:var(--t-xs);font-weight:700}.build-step.is-start .build-num{background:var(--brand);color:var(--on-brand)}.build-text{display:grid;flex:1 1;grid-gap:2px;gap:2px;min-width:0}.build-text .chip{justify-self:start;-webkit-margin-after:2px;margin-block-end:2px}.build-text strong{font-size:var(--t-ui)}.build-text small{color:var(--brand-ink);font-size:var(--t-xs);font-weight:600}.build-text>span:last-child{color:var(--ink-2);font-size:var(--t-xs);line-height:1.6}.build-arrow{flex:none;-webkit-margin-before:6px;margin-block-start:6px;color:var(--ink-2)}.journey{display:grid;grid-gap:var(--s5);gap:var(--s5)}.journey>h2{font-size:var(--t-xl)}.journey-list{position:relative;display:grid;grid-gap:var(--s6);gap:var(--s6);margin:0;padding:0;list-style:none}.journey-list:before{content:"";position:absolute;inset-block:24px;inset-inline-start:17px;-webkit-border-start:2px dashed var(--line-strong);border-inline-start:2px dashed var(--line-strong)}.journey-stage{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);grid-gap:var(--s4);gap:var(--s4);scroll-margin-top:calc(var(--header-h) + var(--s5))}.journey-marker{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;-webkit-margin-before:var(--s5);margin-block-start:var(--s5);border:2px solid var(--line-strong);border-radius:50%;background:var(--bg);color:var(--ink-2);font-size:var(--t-sm);font-weight:700}.journey-stage.is-done .journey-marker{border-color:var(--ok);background:var(--ok);color:var(--bg)}.journey-stage.is-here .journey-marker{border-color:var(--brand);background:var(--brand);color:var(--on-brand);box-shadow:0 0 0 6px color-mix(in srgb,var(--brand) 18%,transparent)}.journey-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);grid-gap:var(--s5);gap:var(--s5);align-items:center;padding:var(--s5);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.journey-stage.is-here .journey-card{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));box-shadow:var(--shadow-pop)}.journey-info{display:grid;align-content:start;grid-gap:var(--s3);gap:var(--s3)}.journey-info .eyebrow{display:flex;align-items:center;gap:var(--s2)}.journey-here{min-height:22px;padding-inline:8px;background:var(--brand-soft);color:var(--brand-ink);font-size:var(--t-xs)}.journey-info h3{font-size:1.375rem}.journey-info p{color:var(--ink-2);font-size:var(--t-sm);line-height:1.7}.journey-progress{display:grid;grid-gap:var(--s1);gap:var(--s1);font-size:var(--t-sm)}.journey-info .btn{justify-self:start}.journey-sky{box-shadow:none}@media (max-width:560px){.journey-sky{margin-inline:calc(var(--s4) * -1);-webkit-margin-after:calc(var(--s4) * -1);margin-block-end:calc(var(--s4) * -1);border-start-start-radius:0;border-start-end-radius:0}}.board-sky{display:grid;grid-gap:var(--s4);gap:var(--s4)}.board-sky-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:var(--s3)}.board-sky-head h2{font-size:var(--t-xl)}.board-sky-head p{max-width:62ch;color:var(--ink-2)}.board-sky-frame{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:var(--s5);gap:var(--s5);align-items:stretch}.board-sky-frame .next-card{align-content:end}.board-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--s5);gap:var(--s5);align-items:stretch}.board-cards>*{margin:0}@media (max-width:1180px){.board-sky-frame,.journey-card{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.board-cards{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.journey-list:before{inset-inline-start:13px}.journey-stage{grid-template-columns:28px minmax(0,1fr);gap:var(--s3)}.journey-marker{width:28px;height:28px}.journey-card{padding:var(--s4)}.sky-roadmap-head dl{gap:var(--s4)}}