.cover{min-height:168px;color:var(--ink);background:radial-gradient(90% 140% at 100% 0%,var(--accent-wash),transparent 62%),var(--core-2);box-shadow:inset 0 0 0 1px var(--ring);border-radius:20px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:28px;padding:18px 22px 24px;text-decoration:none;display:flex;position:relative;overflow:hidden}.cover:after{content:"";background:radial-gradient(circle,var(--accent-wash),transparent 70%);pointer-events:none;border-radius:50%;width:150px;height:150px;position:absolute;bottom:-36px;right:-36px}.cover-code{max-width:100%;font:500 clamp(16px,1vw + 9px,21px)/1.3 var(--f-mono);font-variant-ligatures:none;letter-spacing:-.02em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;background:0 0;border-radius:0;padding:0;display:block;overflow:hidden;box-shadow:none!important}.cover-title{font:640 clamp(20px,1.4vw + 10px,26px)/1.05 var(--f-display);letter-spacing:-.03em;color:var(--ink)}.cover-title small{font:500 10.5px/1.3 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px;display:block}.cover-dots{gap:6px;display:flex}.cover-dots i{background:var(--ring-2);border-radius:50%;width:9px;height:9px}.course-grid{gap:var(--gap);grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));display:grid}.course-card{color:inherit;transition:transform .7s var(--ease),box-shadow .7s var(--ease);flex-direction:column;gap:18px;padding:10px 10px 24px;text-decoration:none;display:flex}.card.course-card:hover{box-shadow:inset 0 1px 0 var(--hi),0 0 0 1px var(--ring),0 0 0 var(--pad) var(--shell),var(--shadow-lift);transform:translateY(-3px)}.course-card .cover{border-radius:calc(var(--r) - 8px)}.course-card .cover-code{font-size:16px}.course-card .body{flex-direction:column;align-items:flex-start;gap:10px;padding:0 14px;display:flex}.course-card h3{letter-spacing:-.035em;margin:0;font-size:clamp(22px,1vw + 15px,28px)}.course-card .sub{color:var(--ink-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:15px;display:-webkit-box;overflow:hidden}.course-card .by{color:var(--ink-3);font-size:13.5px}.course-card .chips{flex-wrap:wrap;gap:6px;display:flex}.course-card .go{color:var(--ink);align-items:center;gap:10px;margin-top:4px;font-size:15px;font-weight:500;display:inline-flex}.course-card .go .btn-ic{--ic:30px;width:30px;height:30px;transition:transform .7s var(--spring)}.course-card:hover .go .btn-ic{transform:translate(3px)scale(1.06)}.my-course{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);padding:0;display:grid;overflow:hidden}.my-main{flex-direction:column;align-items:flex-start;gap:12px;min-width:0;padding:clamp(24px,3.4vw,48px);display:flex}.my-main .cover{align-self:stretch;gap:40px;min-height:0;margin:0 0 22px}.my-course h3{letter-spacing:-.04em;margin:0;font-size:clamp(30px,1.8vw + 14px,44px);line-height:1.03}.my-course h3 a{color:inherit;text-decoration:none}.my-course .sub{color:var(--ink-2);max-width:54ch;margin:0 0 18px;font-size:16px}.my-stats{background:var(--core-2);box-shadow:inset 1px 0 0 var(--ring);grid-template-columns:1fr 1fr;align-content:center;gap:10px;margin:0;padding:clamp(20px,3vw,40px);display:grid}.stat{background:var(--core);min-width:0;box-shadow:0 0 0 1px var(--ring),inset 0 1px 0 var(--hi);border-radius:20px;flex-direction:column-reverse;justify-content:flex-end;gap:10px;padding:20px 20px 18px;display:flex}.stat-wide{grid-column:1/-1;padding:26px 24px 22px}.stat dt{color:var(--ink-3);font-size:14px;line-height:1.4}.stat dd{align-items:baseline;gap:10px;min-width:0;margin:0;display:flex}.stat-num{font:640 clamp(34px,2vw + 14px,46px)/1 var(--f-display);letter-spacing:-.045em;font-variant-numeric:tabular-nums}.stat-num small{font:500 18px/1 var(--f-mono);letter-spacing:0;color:var(--ink-3);margin-left:4px}.stat-wide dd{flex-direction:column;align-items:stretch;gap:18px}.stat-wide .stat-num{font-size:clamp(56px,4vw + 20px,84px);line-height:.9}.stat-of{font:500 18px/1 var(--f-mono);font-variant-ligatures:none;color:var(--ink-3)}.stat-next{flex-direction:column;justify-content:flex-start}.stat-next dd{flex-direction:column;align-items:flex-start;gap:6px}.stat-next dt{font:500 10.5px/1.3 var(--f-mono);font-variant-ligatures:none;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink)}.stat-n{font:500 13px/1 var(--f-mono);font-variant-ligatures:none;color:var(--ink-3)}.stat-next .next-locked{color:var(--ink-2);font-size:15.5px;font-weight:500;line-height:1.35}.stat-next .when{color:var(--ink-3);align-items:center;gap:6px;font-size:12.5px;line-height:1.3;display:flex}.stat-next .when .ic{flex:none;width:13px;height:13px}.stat-next a{color:var(--ink);font-size:15.5px;font-weight:500;line-height:1.35}.my-course .actions{flex-wrap:wrap;gap:12px;margin-top:auto;display:flex}.dash-block{margin-top:clamp(56px,6vw,88px)}.join-band{background:radial-gradient(60% 120% at 100% 0%,var(--accent-wash),transparent 70%),var(--core);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 40px;padding:clamp(28px,4vw,52px);display:flex;overflow:hidden}.join-band h2{letter-spacing:-.04em;margin:0 0 10px;font-size:clamp(28px,1.8vw + 14px,40px)}.join-band p{color:var(--ink-2);max-width:56ch;margin:0}.join-band .lead{flex:420px;align-items:flex-start;gap:20px;min-width:0;display:flex}.course-layout{grid-template-columns:minmax(0,1fr) 384px;grid-template-areas:"hero side""main side";align-items:start;column-gap:clamp(40px,5vw,80px);display:grid}.course-hero{grid-area:hero;padding-bottom:clamp(40px,5vw,64px)}.course-hero h1{letter-spacing:-.045em;max-width:14em;margin:0 0 22px;font-size:clamp(40px,3.2vw + 18px,76px);line-height:.98}.course-hero .sub{color:var(--ink-2);text-wrap:pretty;max-width:60ch;margin:0 0 30px;font-size:clamp(17px,.6vw + 13px,20px);line-height:1.6}.course-meta{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.course-meta li{background:var(--shell);box-shadow:inset 0 0 0 1px var(--ring);color:var(--ink-2);border-radius:999px;align-items:center;gap:9px;padding:6px 15px 6px 6px;font-size:14px;display:inline-flex}.course-meta li>.ic{box-sizing:content-box;background:var(--core);width:14px;height:14px;box-shadow:0 0 0 1px var(--ring);color:var(--ink);border-radius:50%;padding:6px}.course-meta b{color:var(--ink);font-weight:600}.course-side{grid-area:side;align-self:stretch;position:relative}.course-main{grid-area:main;min-width:0}.course-main>section{margin-bottom:clamp(48px,5vw,72px)}.course-main>section:last-child{margin-bottom:0}.course-main h2{margin:0 0 20px}.course-main>.flash{margin-bottom:40px}.buy{top:var(--top);flex-direction:column;gap:6px;padding:10px 10px 26px;display:flex;position:sticky}.buy .cover{border-radius:calc(var(--r) - 8px);min-height:150px}.buy .cover-code{font-size:17px}.buy .inner{flex-direction:column;gap:14px;padding:18px 16px 0;display:flex}.buy .btn{width:100%}.buy .note{color:var(--ink-3);margin:0;font-size:13.5px}.buy .buy-h{font:500 10.5px/1.3 var(--f-mono);font-variant-ligatures:none;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);box-shadow:inset 0 1px 0 var(--ring);margin:14px 0 0;padding-top:18px}.buy ul{color:var(--ink-2);flex-direction:column;gap:10px;margin:0;padding:0;font-size:14.5px;list-style:none;display:flex}.buy li{align-items:flex-start;gap:12px;line-height:1.45;display:flex}.buy li .ic{width:16px;height:16px;color:var(--ink);margin-top:2px}.learn-box ul{grid-template-columns:1fr 1fr;gap:14px 32px;margin:0;padding:0;list-style:none;display:grid}.learn-box li{color:var(--ink-2);gap:12px;font-size:15.5px;line-height:1.5;display:flex}.learn-box li .ic{box-sizing:content-box;background:var(--accent-wash);width:13px;height:13px;color:var(--accent-ink);stroke-width:2.2px;border-radius:50%;margin-top:1px;padding:5px}.learn-box h2{font-size:clamp(24px,1vw + 16px,30px)}.content-summary{font:400 13px/1.4 var(--f-mono);font-variant-ligatures:none;color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:-6px 0 22px;display:flex}.content-summary button{background:var(--core);color:var(--ink);font:500 14px/1 var(--f-body);cursor:pointer;box-shadow:0 0 0 1px var(--ring),inset 0 1px 0 var(--hi);transition:box-shadow .5s var(--ease),transform .4s var(--ease);border:0;border-radius:999px;align-items:center;gap:8px;padding:9px 15px;display:inline-flex}.content-summary button:hover{box-shadow:0 0 0 1px var(--ring-2),inset 0 1px 0 var(--hi)}.content-summary button:active{transform:scale(.97)}.modules{padding:0;overflow:hidden}.modules details+details{box-shadow:inset 0 1px 0 var(--ring)}.modules summary{cursor:pointer;transition:background-color .5s var(--ease);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 18px 18px 24px;list-style:none;display:grid}.modules summary::-webkit-details-marker{display:none}.modules summary:hover{background:color-mix(in srgb,var(--core-2) 70%,transparent)}.modules summary:focus-visible{outline-offset:-3px;border-radius:calc(var(--r) - 2px)}.mod-n{font:500 12.5px/1 var(--f-mono);font-variant-ligatures:none;color:var(--ink-3)}.mod-t{flex-direction:column;gap:3px;min-width:0;display:flex}.mod-t b{font:640 18px/1.25 var(--f-display);letter-spacing:-.02em}.mod-t .count{color:var(--ink-3);font-size:13.5px}.modules details.is-ready .mod-n{color:var(--accent-ink)}.chev{background:var(--shell);width:32px;height:32px;box-shadow:inset 0 0 0 1px var(--ring);color:var(--ink-2);transition:transform .7s var(--spring);border-radius:50%;place-items:center;display:grid}.chev .ic{width:16px;height:16px}.modules details[open] .chev{transform:rotate(180deg)}.modules ol{margin:0;padding:4px 14px 14px;list-style:none}.modules details[open] summary{padding-bottom:12px}.lrow{color:var(--ink-2);transition:background-color .4s var(--ease);border-radius:14px;align-items:center;gap:12px;padding:11px 12px;font-size:15px;display:flex}.lrow:hover{background:var(--core-2)}.lrow>.ic,.lrow .done .ic{width:17px;height:17px;color:var(--ink-3)}.lrow .t{flex:1;min-width:0}.lrow a.t{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--ring-2);text-decoration-color:var(--ring-2);text-underline-offset:4px}.lrow a.t:hover{text-decoration-color:currentColor}.lrow.soon{color:var(--ink-3)}.lrow .t .when{color:var(--ink-3);margin-top:2px;font-size:12.5px;line-height:1.3;display:block}.lrow .tag{background:color-mix(in srgb,var(--accent) 10%,var(--core));color:var(--accent-ink);font:500 10.5px/1 var(--f-mono);font-variant-ligatures:none;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;transition:background-color .5s var(--ease);border-radius:999px;align-items:center;padding:6px 10px;text-decoration:none;display:inline-flex}.lrow .tag:hover{background:color-mix(in srgb,var(--accent) 18%,var(--core))}.lrow .lock{background:var(--shell);width:28px;height:28px;box-shadow:inset 0 0 0 1px var(--ring);color:var(--ink-3);border-radius:50%;place-items:center;display:grid}.lrow .lock .ic{width:13px;height:13px}.lrow .done .ic{color:var(--ok)}.lrow.quiz-row{background:color-mix(in srgb,var(--core-2) 60%,transparent);box-shadow:inset 0 0 0 1px var(--ring);margin-top:6px}.req{color:var(--ink-2);gap:10px;margin:0;padding:0;list-style:none;display:grid}.req li{padding-left:24px;position:relative}.req li:before{content:"";background:var(--ring-2);border-radius:50%;width:7px;height:7px;position:absolute;top:.68em;left:4px}.prose p{color:var(--ink-2);max-width:68ch;font-size:16.5px;line-height:1.7}.instructor{align-items:center;gap:18px;display:flex}.instructor .avatar{width:64px;height:64px;color:var(--ink);font-size:18px}.instructor b{font:640 22px/1.2 var(--f-display);letter-spacing:-.025em;display:block}.instructor small{color:var(--ink-3);font-size:14.5px}.hero-home{padding:136px 0 40px;position:relative;overflow:hidden}.hero-home .wrap{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;display:grid}.hero-home h1{margin-bottom:18px;font-size:clamp(34px,5vw,56px);line-height:1.04}.hero-home h1 em{color:var(--accent);font-style:normal}.hero-home .lede{color:var(--ink-2);max-width:56ch;margin-bottom:26px;font-size:18px}.hero-home .ctas{flex-wrap:wrap;gap:12px;display:flex}.hero-points{color:var(--ink-3);flex-wrap:wrap;gap:18px;margin-top:24px;font-size:14px;display:flex}.hero-points span{align-items:center;gap:6px;display:inline-flex}.hero-points .ic{color:var(--accent)}.demo{background:var(--code-bg);box-shadow:var(--shadow-lift);color:var(--code-fg);border-radius:20px;overflow:hidden}.demo-bar{background:var(--code-bar);font:500 12px/1 var(--f-mono);color:#9aa0a9;align-items:center;gap:8px;padding:12px 16px;display:flex}.demo-bar .cover-dots{margin-right:6px}.demo pre{font:500 14px/1.7 var(--f-mono);font-variant-ligatures:none;white-space:pre;margin:0;padding:18px 20px;overflow-x:auto}.demo .kw{color:var(--tok-kw)}.demo .num{color:var(--tok-num)}.demo .str{color:var(--tok-str)}.demo .fn{color:var(--tok-fn)}.demo .ty{color:var(--tok-ty)}.demo .hot{background:#ff9e572e;border-radius:4px;box-shadow:0 0 0 2px #ff9e572e}.demo-out{border-top:1px solid var(--code-line);font:500 13px/1.7 var(--f-mono);min-height:150px;padding:14px 20px 18px}.demo-out .prompt{color:#ff9e57}.demo-out .line{color:#80e2a8;display:block}.demo-state{gap:10px;padding:0 20px 18px;display:flex}.demo-state div{border:1px dashed var(--code-line);font:500 11px/1.3 var(--f-mono);color:#9aa0a9;border-radius:10px;flex:1;padding:8px 10px}.demo-state b{font:700 18px/1.2 var(--f-mono);color:#fff;margin-top:2px;display:block}.section{padding:56px 0}.section-head{max-width:720px;margin-bottom:28px}.section-head p{color:var(--ink-2)}.features{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.feature{background:var(--core);box-shadow:0 0 0 1px var(--ring),var(--shadow);border-radius:20px;padding:20px}.feature .icon{background:var(--accent-wash);width:40px;height:40px;color:var(--accent-ink);border-radius:50%;place-items:center;margin-bottom:12px;display:grid}.feature h3{margin-bottom:6px;font-size:17px}.feature p{color:var(--ink-2);margin:0;font-size:14px}.steps{gap:var(--gap);counter-reset:step;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.step{background:var(--core);box-shadow:0 0 0 1px var(--ring),var(--shadow);border-radius:20px;padding:22px;position:relative}.step:before{counter-increment:step;content:"0" counter(step);font:500 13px/1 var(--f-mono);color:var(--accent-ink);margin-bottom:12px;display:block}.step h3{font-size:17px}.step p{color:var(--ink-2);margin:0;font-size:14px}.cta-band{background:var(--core);box-shadow:0 0 0 1px var(--ring),var(--shadow-lift);border-radius:26px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:40px;display:flex}.cta-band h2{margin:0 0 6px}.cta-band p{color:var(--ink-2);margin:0}@media (max-width:960px){.hero-home .wrap{grid-template-columns:1fr}.course-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"hero""side""main"}.course-side{margin-bottom:clamp(48px,6vw,72px)}.buy{position:static}.my-course{grid-template-columns:1fr}.my-stats{box-shadow:inset 0 1px 0 var(--ring)}.features{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:1fr}}@media (max-width:767px){.learn-box ul{grid-template-columns:1fr}.course-hero h1{font-size:clamp(36px,9vw,48px)}.modules summary{gap:12px;padding:16px 14px 16px 18px}.modules ol{padding:2px 6px 10px}.lrow{gap:10px;padding:10px;font-size:14.5px}.my-stats{padding:16px}.my-main{padding:22px 20px 24px}.cover-code{font-size:14px}.my-main .cover{gap:28px;padding:16px 18px 20px}.stat{padding:16px 16px 14px}.my-course .actions{flex-direction:column;align-items:stretch;width:100%}.join-band .btn{width:100%}.features{grid-template-columns:1fr}.hero-home{padding:104px 0 24px}.cta-band{padding:28px 22px}}
