:root{--bg:oklch(98.5% .0072 80);--card:#fff;--ink:oklch(20% .027 80);--muted:oklch(50% .027 80);--line:oklch(92.2% .018 80);--edge:oklch(84.94% .0516 77);--brand:oklch(36% .07 155);--brand-ink:oklch(21.6% .042 155);--gold:oklch(68% .13 70);--sun:oklch(72% .15 45);--soft:oklch(95.5% .0208 70);--leaf:oklch(96.2% .0084 155);--r:1rem;--lift:0 2px 0 oklch(68% .13 70/.25),0 18px 36px -24px oklch(68% .13 70/.7)}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:16px/1.6 Lexend,Be Vietnam Pro,system-ui,sans-serif}a{color:inherit}.top{z-index:5;background:color-mix(in srgb,var(--card) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:12px 20px;display:flex;position:sticky;top:0}.logo{font-size:20px;font-weight:800;text-decoration:none}.logo b{color:var(--brand)}.dot{color:var(--gold)}.top nav{gap:4px;margin-left:auto;display:flex}.top nav a{color:var(--muted);border-radius:99px;padding:6px 12px;font-size:14px;font-weight:600;text-decoration:none}main{max-width:1080px;margin:0 auto;padding:28px 16px 60px}.foot{text-align:center;color:var(--muted);border-top:1px solid var(--line);padding:24px 16px;font-size:13px}h1{margin:.2em 0;font-size:clamp(28px,5vw,44px);line-height:1.15}h2{margin:1.6em 0 .5em;font-size:24px}h3{margin:.2em 0}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:12px;font-weight:700}.muted{color:var(--muted)}.hero{color:var(--ink);border:1.5px solid var(--edge);background:radial-gradient(circle at 88% 18%,oklch(86% .14 75) 0 70px,#0000 72px),linear-gradient(oklch(95% .04 80),oklch(92% .06 85));border-radius:28px;padding:32px;position:relative;overflow:hidden}.hero .eyebrow{color:var(--brand)}.hero p{opacity:.95;max-width:640px}.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.card{background:var(--card);border:1.5px solid var(--edge);box-shadow:var(--lift);border-radius:20px;padding:20px}a.card{text-decoration:none;transition:transform .15s;display:block}a.card:hover{transform:translateY(-3px)}.chip{background:var(--soft);border-radius:99px;margin:2px 4px 2px 0;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.emoji{font-size:34px}.q{font-size:18px;font-weight:600}.band{border-left:5px solid var(--c,var(--brand));background:var(--card);border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:14px;margin:10px 0;padding:14px 18px}.band .eyebrow{color:var(--c,var(--brand))}.concepts{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;display:grid}.concepts div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px}.lessonrow{align-items:flex-start;gap:14px;display:flex}.num{color:#fff;background:var(--c,var(--brand));border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.act{background:var(--card);border:1px solid var(--line);border-radius:14px;gap:12px;margin:8px 0;padding:14px;display:flex}.tag{color:#fff;text-align:center;border-radius:8px;flex:none;min-width:96px;height:max-content;padding:4px 8px;font-size:11px;font-weight:800}.crumb{color:var(--muted);margin-bottom:8px;font-size:14px}.crumb a{font-weight:600;text-decoration:none}.pager{justify-content:space-between;gap:10px;margin-top:24px;display:flex}.btn{background:var(--brand);color:#fff;box-shadow:0 3px 0 var(--brand-ink);border-radius:13.6px;padding:10px 24px;font-weight:700;text-decoration:none;display:inline-block}.btn.ghost{background:var(--bg);color:var(--ink);border:1px solid var(--line);box-shadow:none}table{border-collapse:collapse;background:var(--card);border-radius:14px;width:100%;overflow:hidden}td,th{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px}th{width:160px}.cycle{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.cycle div{color:#fff;border-radius:16px;padding:14px}@media (width<=640px){.cycle{grid-template-columns:1fr 1fr}.hero{padding:22px}th{width:110px}.tag{min-width:76px}}.tree{font-size:15px}.tree .node{border:2px dashed var(--line);background:var(--card);border-radius:16px;margin:8px 0;padding:12px 14px}.tree .node .node{margin-left:18px}.tree .lbl{font-weight:800}.tree .lbl small{color:var(--muted);margin-left:6px;font-weight:600}.tree .ex{color:var(--muted);font-size:14px}.lesson{grid-template-columns:280px 1fr;align-items:start;gap:24px;display:grid}main:has(.lesson){max-width:1200px}.side{background:var(--card);border:1px solid var(--line);border-radius:18px;max-height:calc(100vh - 90px);padding:14px;position:sticky;top:72px;overflow:auto}.side .crumb{font-weight:600;text-decoration:none;display:block}.lsel{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--ink);font:inherit;border-radius:10px;margin:6px 0 10px;padding:8px;font-size:13px}.sgroup{text-transform:uppercase;letter-spacing:.08em;margin:12px 6px 4px;font-size:11px;font-weight:800}.sitem{border-radius:10px;align-items:flex-start;gap:10px;padding:8px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.sitem small{color:var(--muted);font-size:12px;font-weight:500;display:block}.sdot{border:2px solid var(--c);width:24px;height:24px;color:var(--c);border-radius:8px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.sdot.done{background:var(--c);color:#fff}.lmain{min-width:0}.steps li{margin:8px 0;font-size:17px}.note{border:1px solid var(--line);background:var(--card);width:100%;min-height:140px;color:var(--ink);font:inherit;border-radius:14px;padding:12px}.donebox{align-items:center;gap:8px;margin-top:12px;font-weight:600;display:flex}.pager{flex-wrap:wrap}@media (width<=820px){.lesson{grid-template-columns:1fr}.side{max-height:none;position:static}}.soon{opacity:.6}.soon h3{font-size:16px}summary{cursor:pointer}details .card{border:0;padding:12px 0 0}a.card.lessonrow{display:flex}.game{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:16px}.ghead{flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin-bottom:10px;display:flex}.ghead .muted{font-size:13px}.gdeck{background:var(--soft);border-radius:14px;flex-wrap:wrap;gap:8px;min-height:56px;padding:10px;display:flex}.gbuckets{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;display:grid}.gbucket{border:2px dashed var(--c);cursor:pointer;border-radius:16px;flex-direction:column;gap:8px;min-height:160px;padding:10px;display:flex}.gbucket.over,.gdeck.over{background:color-mix(in srgb,var(--c,var(--brand)) 12%,transparent)}.glabel{color:var(--c);font-weight:800}.gcard{background:var(--card);border:2px solid var(--line);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:12px;padding:8px 10px;font-size:14px}.gdeck .gcard{flex:0 auto}.gcard.picked{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 30%,transparent)}.gcard.ok{border-color:#16a34a}.gcard.bad{border-color:#dc2626}.gtop{align-items:center;gap:6px;display:flex}.ge{font-size:20px}.gv{margin-left:auto;font-weight:800}.gcard.bad .gv{color:#dc2626}.gwhy{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--ink);font:inherit;border-radius:8px;margin-top:6px;padding:6px 8px;font-size:13px}.gexp{color:var(--muted);margin-top:6px;font-size:13px}.gbar{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.btn{cursor:pointer;font:inherit;border:0;font-weight:700}.btn[disabled]{opacity:.45;cursor:not-allowed}.gscore{font-size:17px}.gtake{margin-top:12px}@media (width<=640px){.gbuckets{grid-template-columns:1fr}.gbucket{min-height:90px}}.gintro{color:var(--muted);margin:0 0 12px}.gq{border-bottom:1px solid var(--line);padding:12px 0}.gqq{margin-bottom:8px;font-weight:600}.gopts{flex-wrap:wrap;gap:8px;display:flex}.gopt,.gm{font:inherit;text-align:left;border:2px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:12px;padding:8px 12px;font-size:14px}.gopt:hover:not([disabled]),.gm:hover:not([disabled]){border-color:var(--brand)}.gopt.ok,.gm.ok,.gorder li.ok{background:color-mix(in srgb,#16a34a 10%,var(--card));border-color:#16a34a}.gopt.bad,.gm.bad,.gorder li.bad{background:color-mix(in srgb,#dc2626 10%,var(--card));border-color:#dc2626}.gopt.dim,.gm.dim{opacity:.45}.gm.picked{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 30%,transparent)}.gm small{color:var(--muted);display:block}.gorder{margin:0;padding-left:24px;list-style:decimal}.gorder li{border:2px solid var(--line);background:var(--card);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin:6px 0;padding:8px 10px;display:flex}.gmv{gap:4px;display:flex}.gmv button{font:inherit;border:1px solid var(--line);background:var(--soft);width:32px;height:32px;color:var(--ink);cursor:pointer;border-radius:8px}.gmatch{grid-template-columns:1fr 1fr;gap:12px;display:grid}.gmatch>div{flex-direction:column;gap:8px;display:flex}.gest{flex-direction:column;gap:6px;margin:10px 0;display:flex}.gest input{width:100%}.gval{color:var(--brand);font-size:24px;font-weight:800}.gfields{gap:10px;display:grid}.gfields label,.grefl{flex-direction:column;gap:4px;margin-bottom:10px;font-size:14px;font-weight:600;display:flex}.gfields textarea,.grefl textarea{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:10px;padding:8px 10px;font-weight:400}.gout{background:var(--soft);border-radius:12px;margin-top:12px;padding:12px}.gout pre{white-space:pre-wrap;font:inherit;margin:6px 0 0;font-size:14px}@media (width<=640px){.gmatch{grid-template-columns:1fr}}h1,h2,h3,.logo{letter-spacing:-.01em;font-family:Lexend,system-ui,sans-serif}h1{font-weight:700}.hero:after{content:"";background:radial-gradient(at 20% 100%,oklch(72% .1 130/.45) 0 60%,#0000 61%),radial-gradient(at 75% 100%,oklch(65% .1 140/.4) 0 55%,#0000 56%);height:36px;position:absolute;bottom:0;left:0;right:0}.hero h1{color:var(--ink);max-width:640px}.top{background:color-mix(in srgb,var(--bg) 90%,transparent);border-bottom:1px solid var(--line)}.top nav a.on{background:var(--leaf);color:var(--brand)}.chip{background:var(--soft);color:oklch(32% .078 70)}.band{border-color:var(--edge)}.sitem.on{background:var(--leaf);box-shadow:inset 3px 0 0 var(--brand)}.sitem:hover{background:var(--soft)}.side,.game,.act,.concepts div,table{border:1.5px solid var(--edge);box-shadow:var(--lift)}.gdeck{background:var(--soft)}.gopt.ok,.gm.ok,.gorder li.ok,.gcard.ok{border-color:var(--brand);background:var(--leaf)}.gcard.ok .gv{color:var(--brand)}.foot{border-top:1px solid var(--line)}:root{--primary:oklch(36% .07 155);--chart-1:oklch(36% .07 155);--chart-2:oklch(68% .13 70);--chart-3:oklch(80% .16 45)}.ic{width:var(--s);height:var(--s);vertical-align:-.2em;display:inline-flex}.ic svg{width:100%;height:100%}.mas{width:var(--s);height:var(--s);flex:none;display:inline-flex}.mas>svg,.mas>span{width:100%!important;height:100%!important}.mas svg{width:100%;height:100%}.cico{background:var(--soft);width:52px;height:52px;color:var(--brand);border-radius:16px;place-items:center;margin-bottom:6px;display:grid}.cico.big{width:68px;height:68px}.hero{justify-content:space-between;align-items:center;gap:16px;display:flex}.hleo{z-index:1;margin:-10px 0 -20px;position:relative}.castrow{flex-wrap:wrap;justify-content:center;gap:clamp(8px,4vw,40px);margin:18px 0 6px;display:flex}.castm{text-align:center;flex-direction:column;align-items:center;display:flex}.castm small{color:var(--muted);font-size:12px}.qmas{align-items:center;gap:8px;display:flex}.qmas .band{flex:1}.ahead{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.gscore{align-items:center;gap:10px;display:flex}.btn .ic{margin-left:2px}.side .crumb{align-items:center;gap:4px;display:flex}.sdot .ic{vertical-align:0}@media (width<=640px){.hleo .mas{--s:120px!important}.qmas>.mas,.ahead>.mas{--s:60px!important}}.logo{align-items:center;gap:6px;display:inline-flex}.dot{width:30px;height:30px;color:var(--brand);display:inline-flex}.dot svg{width:100%;height:100%}.igrid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;display:grid}.icell{background:var(--card);border:1.5px solid var(--edge);border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:14px 6px;display:flex}.icell code{color:var(--muted);font-size:12px}.igrid.old .icell{color:var(--brand);box-shadow:none}.cico{background:0 0;justify-content:start;width:auto;height:auto}.ctx{align-items:center;gap:10px;min-width:0;font-weight:600;display:flex}.ctx a{white-space:nowrap;text-overflow:ellipsis;text-decoration:none;overflow:hidden}.csep{color:var(--line);font-size:22px}.lpick{margin-bottom:14px;position:relative}.lpick summary{border:1.5px solid var(--edge);background:var(--bg);cursor:pointer;border-radius:14px;grid-template-columns:1fr auto;gap:2px 8px;padding:12px 14px;list-style:none;display:grid}.lpick summary::-webkit-details-marker{display:none}.lpick small,.lopt small{letter-spacing:.06em;text-transform:uppercase;color:var(--brand);grid-column:1;font-size:12px;font-weight:700}.lpick summary span{grid-column:1;font-weight:600;line-height:1.35}.lchev{grid-area:1/2/3;align-self:center;transition:transform .15s}.lpick[open] .lchev{transform:rotate(90deg)}.lmenu{z-index:4;background:var(--card);border:1.5px solid var(--edge);box-shadow:var(--lift);border-radius:14px;max-height:60vh;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.lopt{border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;text-decoration:none;display:flex}.lopt:hover,.lopt.on{background:var(--leaf)}.lopt span{font-weight:600;line-height:1.35}.qstep{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:13px;font-weight:700}.qprog{gap:6px;margin:10px 0 22px;display:flex}.qprog span{background:var(--line);border-radius:9px;flex:1;height:6px}.qprog .on{background:var(--gold)}.qprog .ok{background:var(--brand)}.qprog .bad{background:oklch(62% .17 30)}.gqq.big{margin-bottom:20px;font-size:22px;line-height:1.4}.gopts.col{flex-direction:column;gap:12px}.gopts.col .gopt{align-items:center;gap:14px;width:100%;padding:14px 16px;font-size:16px;display:flex}.ol{background:var(--soft);width:30px;height:30px;color:var(--brand);border-radius:9px;flex:none;place-items:center;font-size:14px;font-weight:800;display:grid}.gexp.big{background:var(--soft);color:var(--ink);border-radius:12px;margin-top:16px;padding:12px 14px;font-size:15px}.qnav{justify-content:space-between;margin-top:24px}main{padding-top:36px}.lesson{gap:36px}.side{padding:18px}.sitem{margin:2px 0;padding:10px 8px}.game{padding:28px}.ahead{margin-bottom:22px}.ahead h1{margin:0}.gintro{margin-bottom:22px;line-height:1.7}.pager{margin-top:32px}.donebox{margin-top:28px}@media (width<=640px){.game{padding:18px}.gqq.big{font-size:19px}.ctx .csep{display:none}.ctx{font-size:13px}}.lpick summary{align-items:center;gap:10px;display:flex}.lsum{flex-direction:column;flex:1;gap:2px;display:flex}.lsum span{font-weight:600;line-height:1.35}.kc{margin:28px 0}.kc h2{margin:0 0 14px}.kcrow{flex-wrap:wrap;gap:8px;display:flex}.kcrow .chip{margin:0;padding:6px 12px;font-size:14px}.kclab{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:22px 0 10px;font-size:12px;font-weight:800}.kcfw{gap:10px;display:grid}.kcf{background:var(--bg);border:1px solid var(--line);border-radius:14px;align-items:flex-start;gap:12px;padding:12px 14px;font-weight:600;text-decoration:none;display:flex}.kcf small{letter-spacing:.06em;text-transform:uppercase;color:var(--brand);font-size:11px;font-weight:800;display:block}.lesson .side{max-height:none;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;position:static;overflow:visible}.story{max-width:720px;margin:32px 0 8px;font-size:18px;line-height:1.8}.story p{margin:0 0 22px}.story p:first-child:first-letter{float:left;color:var(--brand);margin:4px 8px 0 0;font-size:2.4em;font-weight:700;line-height:1}.gopt.picked{border-color:var(--brand);background:var(--leaf);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 25%,transparent)}.gopt.picked .ol{background:var(--brand);color:#fff}.know{--k:var(--brand);background:var(--leaf);border:1.5px solid color-mix(in oklch,var(--brand) 35%,var(--edge));border-left:8px solid var(--k);box-shadow:var(--lift);border-radius:24px;padding:32px}.khead{align-items:center;gap:16px;margin-bottom:18px;display:flex}.khead h1{margin:2px 0 0;font-size:clamp(26px,4vw,38px)}.klab{letter-spacing:.08em;text-transform:uppercase;color:var(--k);align-items:center;gap:6px;font-size:13px;font-weight:800;display:inline-flex}.kdef{margin:0 0 24px;font-size:20px;font-weight:500;line-height:1.6}.krow{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.kbox{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}.kbox p{margin:6px 0 0;line-height:1.65}.kt{letter-spacing:.08em;text-transform:uppercase;color:oklch(32% .078 70);align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.kmem{background:var(--soft);border:1.5px dashed var(--gold);border-radius:16px;padding:18px}.kmem ul{margin:8px 0 0;padding-left:20px;font-weight:600;line-height:1.7}.recap{margin:8px 0 0}.rk{border-bottom:1px solid var(--edge);padding:12px 0;text-decoration:none;display:block}.rk:last-child{border:0}.rk ul{margin-top:4px;font-weight:500}.sknow{background:var(--leaf)}.sknow.on{box-shadow:inset 3px 0 0 var(--brand)}.kdot{background:var(--brand-ink,var(--brand));color:#fff;background:0 0;border:0}@media (width<=640px){.krow{grid-template-columns:1fr}.know{padding:20px}.kdef{font-size:17px}}.lpick{border:1.5px solid var(--edge);background:var(--card);border-radius:16px}.lpick summary{background:0 0;border:0}.lsum em{color:var(--muted);margin-top:4px;font-size:13px;font-style:normal}.lpick[open] .lsum em{display:none}.lbody{border-top:1px solid var(--line);padding:4px 8px 10px}.lbody .sitem{margin:2px 0}.lbody .sdot{border-color:var(--edge);color:var(--ink)}.lbody .sitem.on .sdot{background:var(--brand);border-color:var(--brand);color:#fff}.lbody .sknow{background:var(--leaf)}.lbody .sknow .ic{vertical-align:-.25em}.lother{border-top:1px solid var(--line);margin-top:10px;padding-top:4px}.lother .kclab{margin:10px 8px 4px}.lmenu{display:none}.fnav{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:8px;display:flex}.fnav a{color:var(--muted);border-radius:99px;padding:6px 12px;font-weight:600;text-decoration:none}.fnav a.on{background:var(--leaf);color:var(--brand)}.side .sitem{color:var(--muted);font-weight:400}.side .sitem.on{color:var(--ink);font-weight:500}.side .sdot,.lsum span,.lopt span{font-weight:500}.dd{border:1.5px solid var(--edge);background:var(--card);border-radius:16px;margin-bottom:12px;position:relative}.dd summary{cursor:pointer;align-items:center;gap:10px;padding:12px 14px;list-style:none;display:flex}.dd summary::-webkit-details-marker{display:none}.dd .lsum small{letter-spacing:.06em;text-transform:uppercase;color:var(--brand);font-size:12px;font-weight:700}.dd .lsum span{font-weight:500;line-height:1.35}.dd[open] .lchev{transform:rotate(90deg)}.ddmenu{z-index:6;background:var(--card);border:1.5px solid var(--edge);box-shadow:var(--lift);border-radius:14px;max-height:65vh;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.ddmenu .sdot{border-color:var(--edge);color:var(--ink)}.ddmenu .sitem.on .sdot{background:var(--brand);border-color:var(--brand);color:#fff}.ddmenu .sknow{background:var(--leaf)}.dd-lesson .lopt span{font-weight:400}.kc .kg+.kg{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.kc .kg .kclab{margin:0 0 10px}.kc a.chip{text-decoration:none}.deep{margin-top:20px}.deep p{margin:8px 0 12px}.dgrade{align-items:center;gap:8px;font-weight:600;display:inline-flex}.dgrade select{font:inherit;border:1px solid var(--edge);background:var(--bg);color:var(--ink);border-radius:10px;padding:6px 10px}.dprompt{white-space:pre-wrap;font:inherit;background:var(--soft);border-radius:12px;margin:12px 0 0;padding:12px 14px;font-size:14px}.hcopy{z-index:1;position:relative}.hsub{max-width:560px;margin:4px 0 18px;font-size:18px}.hsub code{background:var(--card);border:1px solid var(--edge);border-radius:8px;padding:1px 6px;font-size:16px}.hbtns{flex-wrap:wrap;gap:12px;display:flex}.hbtns .btn.ghost{background:var(--card)}.stack{flex-wrap:wrap;justify-content:center;gap:10px;margin:22px 0 4px;display:flex}.schip{background:var(--card);border:1.5px solid var(--edge);border-radius:99px;align-items:center;gap:8px;padding:8px 14px;font-size:15px;font-weight:600;display:inline-flex}.lcard{flex-direction:column;gap:6px;display:flex!important}.lctop{justify-content:space-between;align-items:center;gap:10px;display:flex}.lcard h3{font-size:19px;line-height:1.35}.lcard p{margin:0;font-size:15px;line-height:1.55}.ptask{align-items:center;gap:18px;display:flex!important}.ptask p{margin:6px 0 0}.code{box-shadow:var(--lift);border:1.5px solid oklch(30% .03 155);border-radius:16px;margin:18px 0;overflow:hidden}.codebar{color:oklch(90% .03 155);background:oklch(30% .04 155);justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:14px;font-weight:600;display:flex}.codebar .copy{font:inherit;background:var(--gold);color:var(--ink);cursor:pointer;border:0;border-radius:9px;padding:4px 12px;font-size:14px;font-weight:700}.code pre{color:oklch(95% .02 90);white-space:pre-wrap;word-break:break-word;background:oklch(22% .03 155);margin:0;padding:14px 16px;font:15px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.prep{gap:12px;margin-top:18px;display:grid}.prepi{cursor:pointer;align-items:flex-start;gap:14px;display:flex}.prepi input{width:22px;height:22px;accent-color:var(--brand);flex:none;margin-top:3px}.prepi p{margin:4px 0 6px}.prepi a{color:var(--brand);font-weight:600}.cheat td:first-child{width:48%}.cheat code{background:var(--soft);word-break:break-word;border-radius:6px;padding:2px 6px;font:14px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.foot a{color:var(--brand)}.eyebrow,.chip,.kclab,.sdot,.tag,.foot,.castm small,.qstep,.ol,.sitem small,.dd .lsum small,.lopt small,.gexp,.gwhy,.gm small,.icell code,.kt,.klab,.ghead .muted,.dprompt,.gout pre,.gfields label,.grefl,.lsum em{font-size:14px!important}.castm b{font-size:15px}.hbtns .btn{white-space:nowrap}@media (width<=640px){.hero{flex-direction:column-reverse;align-items:flex-start}.hleo{align-self:center;margin:0 0 -8px}.hsub{font-size:16px}.ptask{flex-direction:column;align-items:flex-start}.cheat td:first-child{width:auto}}
