.lumi{--lumi-shell:hsl(var(--primary));--lumi-soft:hsl(var(--primary-200));--lumi-accent:hsl(var(--sunshine));--lumi-eye:#fff;--lumi-shell-deep:#0d4f30;--lumi-leg:#418a63;--lumi-limb:#6ba98a;--lumi-limb-shade:#35805a;--lumi-leaf:#89b79f}@supports (color:color-mix(in srgb,red 50%,blue)){.lumi{--lumi-shell-deep:color-mix(in srgb,var(--lumi-shell) 70%,#000);--lumi-leg:color-mix(in srgb,var(--lumi-shell) 76%,#fff);--lumi-limb:color-mix(in srgb,var(--lumi-shell) 58%,#fff);--lumi-limb-shade:color-mix(in srgb,var(--lumi-shell) 82%,#fff);--lumi-leaf:color-mix(in srgb,var(--lumi-shell) 50%,#fff)}}.lumi .mascot{width:100%;height:auto;display:block;overflow:hidden}.lumi .l-shell{fill:var(--lumi-shell)}.lumi .l-shell-deep{fill:var(--lumi-shell-deep)}.lumi .l-shell-rim{stroke:var(--lumi-shell-deep)}.lumi .l-leg{fill:var(--lumi-leg)}.lumi .l-limb{fill:var(--lumi-limb)}.lumi .l-limb-shade{fill:var(--lumi-limb-shade)}.lumi .l-limb-line{stroke:var(--lumi-limb-shade)}.lumi .l-leaf{fill:var(--lumi-leaf)}.lumi .l-stem{stroke:var(--lumi-leg)}.lumi .l-soft{fill:var(--lumi-soft)}.lumi .l-accent{fill:var(--lumi-accent)}.lumi .l-eye{fill:var(--lumi-eye)}.lumi .l-smile{stroke:var(--lumi-eye)}.lumi .l-shadow{fill:hsl(var(--foreground));opacity:.1}.lumi .l-mouth,.lumi .l-shadow{transform-box:fill-box;transform-origin:center}.lumi .l-limbs,.lumi .l-shell-group{transform-box:view-box;transform-origin:92px 118px}.lumi .l-head-emerge{transform-box:view-box;transform-origin:150px 110px}.lumi .l-head{transform-box:view-box;transform-origin:154px 110px}.lumi .l-arm,.lumi .l-waggle{transform-box:view-box;transform-origin:138px 119px}.lumi[data-animate=false][data-pose=talking] .l-head,.lumi[data-animate=false][data-pose=waving] .l-head{transform:rotate(6deg) translate(-2px,-2px)}.lumi[data-animate=false][data-pose=waving] .l-arm{transform:rotate(-96deg)}.lumi[data-animate=true] .l-body{animation:lumi-bob 4.5s ease-in-out infinite}.lumi[data-animate=true] .l-shadow{animation:lumi-shadow 4.5s ease-in-out infinite}.lumi[data-animate=true][data-pose=talking] .l-head,.lumi[data-animate=true][data-pose=waving] .l-head{animation:lumi-turn .8s cubic-bezier(.16,.84,.24,1) .4s 1 both}.lumi[data-animate=true] .l-face{animation:lumi-reveal .5s ease-out .9s 1 both}.lumi[data-animate=true] .l-mouth{animation:lumi-talk .42s ease-in-out 1.2s infinite}.lumi[data-animate=true][data-pose=waving] .l-patch{animation:lumi-patch .25s linear .6s 1 both}.lumi[data-animate=true][data-pose=waving] .l-arm{animation:lumi-lift .7s cubic-bezier(.16,.84,.24,1) .55s 1 both}.lumi[data-animate=true][data-pose=waving] .l-waggle{animation:lumi-waggle 1.1s ease-in-out 1.25s infinite}.lumi[data-animate=true][data-pose=shy] .l-shell-group{animation:lumi-wiggle 1.5s ease-in-out .2s 1 both}.lumi[data-animate=true][data-pose=shy] .l-head-emerge{animation:lumi-emerge-head .7s cubic-bezier(.16,.84,.24,1) 1.6s 1 both}.lumi[data-animate=true][data-pose=shy] .l-limbs{animation:lumi-emerge-limbs .6s ease-out 1.8s 1 both}@keyframes lumi-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes lumi-shadow{0%,to{transform:scaleX(1);opacity:.1}50%{transform:scaleX(.94);opacity:.07}}@keyframes lumi-turn{0%{transform:rotate(0deg) translate(0)}to{transform:rotate(6deg) translate(-2px,-2px)}}@keyframes lumi-reveal{0%{opacity:0}to{opacity:1}}@keyframes lumi-talk{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@keyframes lumi-patch{0%{opacity:1}to{opacity:0}}@keyframes lumi-lift{0%{transform:rotate(0deg)}to{transform:rotate(-96deg)}}@keyframes lumi-waggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(13deg)}50%{transform:rotate(-2deg)}75%{transform:rotate(11deg)}}@keyframes lumi-wiggle{0%,to{transform:rotate(0deg)}18%{transform:rotate(-3.5deg)}38%{transform:rotate(3.5deg)}58%{transform:rotate(-2.5deg)}78%{transform:rotate(2deg)}}@keyframes lumi-emerge-head{0%{transform:translate(-30px,12px) scale(.72);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes lumi-emerge-limbs{0%{transform:translateY(-14px);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion:reduce){.lumi,.lumi *{animation:none!important}.lumi[data-pose=talking] .l-head,.lumi[data-pose=waving] .l-head{transform:rotate(6deg) translate(-2px,-2px)}.lumi[data-pose=waving] .l-arm{transform:rotate(-96deg)}}.t-pill{color:hsl(var(--foreground))}.t-pill.warn{background:hsl(var(--warning)/.18);color:hsl(26 95% 24%);border:1px solid hsl(var(--warning)/.4)}.t-pill.err{background:hsl(var(--destructive)/.18);color:hsl(6 72% 32%);border:1px solid hsl(var(--destructive)/.4)}[data-mode=dark] .t-pill.warn,[data-mode=dusk] .t-pill.warn{color:hsl(var(--warning))}[data-mode=dark] .t-pill.err,[data-mode=dusk] .t-pill.err{color:hsl(var(--destructive))}.t-pill:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.t-pill.neutral{background:hsl(var(--muted));color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border))}[data-mode=dusk] .t-pill.neutral,[data-mode=paper] .t-pill.neutral{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-color:hsl(var(--border))}.badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 14px;font-family:var(--font-sans);font-size:13.5px;font-weight:700;line-height:1;color:hsl(var(--card-foreground))}.badge:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.badge .g{display:inline-flex;align-items:center;justify-content:center}.badge.ok{background:hsl(var(--success)/.16);color:hsl(var(--success-foreground));border:1px solid hsl(var(--success)/.4)}.badge.warn{background:hsl(var(--warning)/.16);color:hsl(var(--warning-foreground));border:1px solid hsl(var(--warning)/.4)}[data-mode=dark] .badge.warn,[data-mode=dark] .t-pill.warn{color:hsl(var(--warning))}.badge.err{background:hsl(var(--destructive)/.16);color:hsl(var(--destructive-foreground));border:1px solid hsl(var(--destructive)/.4)}.badge.neutral{background:hsl(var(--muted));color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border))}.streak{gap:5px;font-family:var(--font-sans);font-size:13.5px;color:hsl(var(--sunshine-foreground))}.streak .flame{display:inline-flex;color:hsl(var(--sunshine))}.streak--inactive,.streak--inactive .flame{color:hsl(var(--muted-foreground))}.streak--inactive .flame{opacity:.4;filter:grayscale(1)}[data-mode=dusk] .streak:not(.streak--inactive),[data-mode=paper] .streak:not(.streak--inactive){color:hsl(var(--foreground))}[data-mode=dusk] .streak:not(.streak--inactive) .flame,[data-mode=paper] .streak:not(.streak--inactive) .flame{color:hsl(var(--sunshine))}.count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-family:var(--font-sans);font-size:12px;font-weight:700;line-height:1}.code-in{font-family:var(--font-mono);font-size:26px;font-weight:700;letter-spacing:.32em;text-align:center;text-indent:.32em;text-transform:uppercase;width:100%;min-height:64px;padding:0 12px;border-radius:var(--radius);background:hsl(var(--background));color:hsl(var(--foreground));border:2px solid hsl(var(--border));outline:none;transition:border-color var(--transition)}.code-in:focus{border-color:hsl(var(--ring))}.code-in::-moz-placeholder{color:hsl(var(--muted-foreground));letter-spacing:.32em}.code-in::placeholder{color:hsl(var(--muted-foreground));letter-spacing:.32em}.plan-opt{display:flex;align-items:center;gap:12px;width:100%;max-width:100%;min-width:0;box-sizing:border-box;text-align:left;padding:14px 16px;border-radius:var(--radius-lg);background:hsl(var(--card));border:2px solid hsl(var(--border));color:hsl(var(--foreground));cursor:pointer;transition:border-color var(--transition),background var(--transition)}.plan-opt:hover{border-color:hsl(var(--ring))}.plan-opt:focus-visible{outline:3px solid hsl(var(--ring));outline-offset:2px}.plan-opt[aria-checked=true]{border-color:hsl(var(--primary));background:hsl(var(--accent))}.plan-opt .plan-body{display:flex;flex-direction:column;gap:6px;flex:1 1 auto;min-width:0;max-width:100%}.plan-opt .plan-title{display:block;width:100%;min-width:0;font-family:var(--font-sans);font-weight:700;font-size:15px;color:hsl(var(--foreground))}.plan-opt .plan-meta{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px;width:100%;min-width:0}.plan-opt .plan-desc{flex:1 1 8rem;min-width:0;font-size:13px;line-height:1.35;color:hsl(var(--muted-foreground));overflow-wrap:anywhere;text-wrap:pretty}.plan-opt .plan-price{flex:0 0 auto;margin-inline-start:auto;font-family:var(--font-sans);font-weight:700;font-size:15px;line-height:1.2;color:hsl(var(--foreground));white-space:nowrap}@media (max-width:360px){.plan-opt{gap:10px;padding:12px}.plan-opt .plan-price,.plan-opt .plan-title{font-size:14px}.plan-opt .plan-desc{font-size:12.5px}}.radio{position:relative;flex:0 0 auto;width:22px;height:22px;border-radius:999px;border:2px solid hsl(var(--border));background:hsl(var(--background));transition:border-color var(--transition)}.plan-opt[aria-checked=true] .radio{border-color:hsl(var(--primary))}.plan-opt[aria-checked=true] .radio:after{content:"";position:absolute;inset:4px;border-radius:999px;background:hsl(var(--primary))}.t-field .hint{color:hsl(var(--muted-foreground))}.t-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.t-card{background-color:hsl(var(--card));color:hsl(var(--card-foreground))}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:600;font-family:var(--font-sans)}.pill.sun{background:hsl(var(--sunshine)/.18);color:hsl(38 95% 24%);border:1px solid hsl(var(--sunshine)/.4)}[data-mode=dark] .pill.sun,[data-mode=dusk] .pill.sun{color:hsl(var(--sunshine))}.pill.acc{background:hsl(var(--accent)/.16);color:hsl(var(--accent-foreground));border:1px solid hsl(var(--accent)/.35)}[data-mode=dusk] .pill.acc,[data-mode=paper] .pill.acc{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-color:hsl(var(--border))}.band-card{border:1px solid hsl(var(--border));border-radius:var(--radius-lg);padding:26px;background:linear-gradient(180deg,hsl(var(--card)) 0,hsl(var(--background)) 100%);color:hsl(var(--card-foreground));box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:16px}.band-card .age{font-family:var(--font-mono);font-size:12px;font-weight:600;color:hsl(var(--muted-foreground));letter-spacing:.04em}.band-card .bname{font-family:var(--font-heading);font-size:30px;margin:2px 0 0;color:hsl(var(--foreground))}.band-card .bnote{color:hsl(var(--muted-foreground));font-size:14px;flex:1}.band-card .chips{display:flex;gap:8px;flex-wrap:wrap}.band-card .specs{display:flex;gap:14px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;color:hsl(var(--muted-foreground))}.band-card .specs b{color:hsl(var(--foreground));font-weight:600}.lesson{border-radius:var(--radius-lg);overflow:hidden;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--card-foreground));box-shadow:var(--shadow-lg)}.lesson .cover{height:128px;background:radial-gradient(circle at 80% 20%,hsl(var(--sunshine)/.5),transparent 55%),linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--primary-700)) 100%);position:relative;display:flex;align-items:flex-end;padding:16px}.lesson .cover .tag{background:hsl(var(--background)/.9);color:hsl(var(--foreground));font-family:var(--font-mono);font-size:11px;font-weight:600;padding:5px 10px;border-radius:999px}.lesson .body{padding:20px}.lesson .body .t{font-family:var(--font-heading);font-size:22px;font-weight:700;margin:0 0 6px;color:hsl(var(--foreground))}.lesson .body .d{color:hsl(var(--muted-foreground));font-size:14px;margin:0 0 18px}.lesson .meta{display:flex;align-items:center;gap:14px;margin-bottom:18px}.progress{flex:1;height:12px;border-radius:999px;background:hsl(var(--muted)/.35);overflow:hidden;border:1px solid hsl(var(--border)/.5)}[data-mode=dark] .progress,[data-mode=dusk] .progress{background:hsl(var(--foreground)/.14);border-color:hsl(var(--border)/.8)}.progress>i{display:block;height:100%;background:hsl(var(--primary));border-radius:999px}.streak{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14px;color:hsl(38 95% 24%)}[data-mode=dark] .streak,[data-mode=dusk] .streak{color:hsl(var(--sunshine))}.quest{display:flex;align-items:center;gap:16px;padding:18px;border-radius:var(--radius-lg);background:hsl(var(--card));border:1px solid hsl(var(--border));box-shadow:var(--shadow-md);text-decoration:none;color:inherit;min-height:var(--tap-min);transition:transform var(--transition),box-shadow var(--transition)}.quest:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.quest:active{transform:translateY(0) scale(.995)}.quest .ic{width:58px;height:58px;border-radius:var(--radius);display:grid;place-items:center;font-size:26px;font-weight:800;flex:none;font-family:var(--font-heading);color:hsl(var(--primary-foreground));background:hsl(var(--primary))}.quest .ic.sun{background:hsl(var(--sunshine));color:hsl(var(--sunshine-foreground))}.quest .ic.acc{background:hsl(var(--accent-solid));color:hsl(var(--accent-solid-foreground))}.quest .qt{font-family:var(--font-heading);font-weight:700;font-size:19px;color:hsl(var(--foreground))}.quest .qd{color:hsl(var(--muted-foreground));font-size:14px;margin-top:2px}.quest .qb{min-width:0;flex:1}.quest .go{margin-left:auto;font-size:24px;color:hsl(var(--primary));flex:none;display:inline-flex}.quest.done{opacity:.7}.quest.done .ic{background:hsl(var(--success));color:#fff}.quest:disabled,.quest[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none;transform:none!important}[data-mode=dark] .quest .qd,[data-mode=dusk] .quest .qd{color:hsl(var(--foreground)/.78)}[data-mode=dark] .quest .qt,[data-mode=dusk] .quest .qt{color:hsl(var(--foreground))}[data-mode=dark] .quest .qb,[data-mode=dusk] .quest .go{min-width:0;flex:1}.quest .qp{display:block;margin-top:8px;max-width:220px}.quest .qx{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}.quest .go{color:hsl(var(--primary-300))}[data-mode=dark] .quest .ic,[data-mode=dusk] .quest .ic{box-shadow:0 0 0 1px hsl(var(--border))}.today-card{padding:18px;border-radius:var(--radius-lg);background:linear-gradient(135deg,hsl(var(--primary)/.12),hsl(var(--sunshine)/.1));border:1px solid hsl(var(--border));color:hsl(var(--foreground));width:100%;max-width:100%;box-sizing:border-box;min-width:0}.today-card .row:last-child{width:100%}[data-mode=dark] .today-card,[data-mode=dusk] .today-card{background:linear-gradient(135deg,hsl(var(--primary)/.2),hsl(var(--card)))}[data-mode=paper] .today-card{background:linear-gradient(135deg,hsl(var(--primary)/.1),hsl(var(--muted)))}.today-card .row{display:flex;align-items:center;gap:12px}.today-card .row:first-child{margin-bottom:12px}.today-card .lab{font-weight:700}.today-card .pc{margin-left:auto;font-family:var(--font-heading);font-weight:700}.kid-card{overflow:hidden;display:flex;flex-direction:column;min-width:0;max-width:100%;box-sizing:border-box}.kid-card .kid-top{padding:20px 20px 16px;display:flex;align-items:center;gap:14px;min-width:0;background:radial-gradient(circle at 88% 12%,hsl(var(--sunshine)/.22),transparent 52%),hsl(var(--primary)/.07)}.kid-card .kid-top .tobi{width:64px;height:64px;border-radius:999px;background:hsl(var(--card));display:grid;place-items:center;overflow:visible;flex:none;border:1px solid hsl(var(--border))}.kid-card .kid-top .tobi .mascot,.kid-card .kid-top .tobi svg{width:62px;height:62px;max-width:100%;max-height:100%;display:block}.kid-card .kid-top .nm{font-family:var(--font-heading);font-size:21px;font-weight:700;color:hsl(var(--foreground));min-width:0}.kid-card .kid-top .bd{font-size:12.5px;color:hsl(var(--muted-foreground));font-family:var(--font-mono);min-width:0}.kid-card .kid-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:14px;flex:1;min-width:0}.kid-card .kid-stat{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;min-width:0}.kid-card .kid-stat .lab{color:hsl(var(--muted-foreground));flex:none}.kid-card .kid-stat .val{font-weight:700;min-width:0;text-align:right}.profile{--pavatar-size:clamp(88px,26vw,140px);background:none;border:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:12px;padding:8px;border-radius:var(--radius-lg);transition:transform var(--transition);min-width:0;max-width:100%;width:min(100%,calc(var(--pavatar-size) + 16px));box-sizing:border-box}.profile:hover{transform:translateY(-6px) scale(1.03)}.profile:disabled{opacity:.5;cursor:not-allowed;pointer-events:none;transform:none!important}.profile:focus-visible{outline:3px solid hsl(var(--ring));outline-offset:3px}.pavatar{width:var(--pavatar-size);height:var(--pavatar-size);border-radius:clamp(18px,5.5vw,32px);border:clamp(2.5px,.7vw,4px) solid hsl(var(--primary));display:grid;place-items:center;overflow:hidden;flex:none;box-sizing:border-box;box-shadow:var(--shadow-lg);background:radial-gradient(circle at 50% 20%,hsl(var(--sunshine)/.3),transparent 60%),hsl(var(--card))}[data-mode=dark] .pavatar,[data-mode=dusk] .pavatar{background:radial-gradient(circle at 50% 20%,hsl(var(--sunshine)/.12),transparent 60%),hsl(var(--muted))}.pavatar .pavatar-tobi{display:grid!important;place-items:center;width:100%!important;max-width:100%!important;height:100%;line-height:0;box-sizing:border-box;padding:6% 4% 4%}.pavatar .pavatar-tobi .mascot{width:100%;height:auto;max-width:100%;max-height:100%;display:block}.pavatar .pemoji{font-size:clamp(28px,40%,56px);line-height:1}.profile .pname{font-family:var(--font-heading);font-weight:700;font-size:clamp(16px,4.2vw,22px);color:hsl(var(--foreground));line-height:1.2}.profile .pband,.profile .pname{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.profile .pband{font-size:clamp(11px,2.8vw,12.5px);color:hsl(var(--muted-foreground));font-family:var(--font-mono)}@media (max-width:560px){.profile{gap:8px;padding:4px}}@media (max-width:360px){.profile{--pavatar-size:clamp(80px,27vw,100px)}}.stepper{justify-content:center}.stepper,.stepper .d{display:flex;align-items:center;gap:8px}.stepper .dot{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;font-weight:700;font-size:13px;font-family:var(--font-mono);background:hsl(var(--muted)/.5);color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border)/.7);transition:box-shadow .15s ease,transform .15s ease,filter .15s ease}.stepper .d:hover .dot{box-shadow:inset 0 0 0 3rem hsl(var(--foreground)/.08);transform:scale(1.06)}.stepper .d.done .dot{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.stepper .d.active .dot{background:hsl(var(--background));color:hsl(var(--primary));border-color:hsl(var(--primary))}.stepper .d.active:hover .dot,.stepper .d.done:hover .dot{box-shadow:inset 0 0 0 3rem rgba(255,255,255,.12);filter:brightness(1.06)}.stepper .bar{width:34px;height:2px;background:hsl(var(--border)/.5)}.stepper .d.done+.bar{background:hsl(var(--primary))}.stepper .lbl{font-size:12px;font-weight:600;color:hsl(var(--muted-foreground))}.stepper .d.active .lbl{color:hsl(var(--foreground))}[data-mode=dark] .stepper .d:not(.done):not(.active) .dot,[data-mode=dusk] .stepper .d:not(.done):not(.active) .dot{background:hsl(var(--foreground)/.14);border-color:hsl(var(--foreground)/.28)}[data-mode=dark] .stepper .d:not(.done)+.bar,[data-mode=dusk] .stepper .d:not(.done)+.bar{background:hsl(var(--foreground)/.2)}@media (max-width:720px){.stepper .lbl{display:none}}@media (max-width:560px){.stepper .bar{width:18px}}[data-mode=dark] .dots .dt:not(.on):not(.cur),[data-mode=dusk] .dots .dt:not(.on):not(.cur){background:hsl(var(--foreground)/.28)}.quest[aria-expanded=true] .go svg{transform:rotate(90deg)}.foundations-overview{max-width:1140px;margin:0 auto;padding:16px;color:hsl(var(--foreground));background:hsl(var(--background))}@media (min-width:640px){.foundations-overview{padding:28px}}.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr));gap:12px}@media (min-width:640px){.swatches{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.sw{border:1px solid hsl(var(--border));border-radius:var(--radius-sm);overflow:hidden;background:hsl(var(--card));color:hsl(var(--card-foreground))}.sw .chip{height:54px}.sw .m{padding:8px 10px}.sw .m b{display:block;font-size:12px;font-weight:600}.sw .m span{font-family:var(--font-mono);font-size:10px;color:hsl(var(--muted-foreground))}.type-rows{flex-direction:column;gap:14px;background:hsl(var(--background))}.type-rows,.type-rows .tr{display:flex;color:hsl(var(--foreground))}.type-rows .tr{align-items:baseline;gap:18px;border-bottom:1px dashed hsl(var(--border));padding-bottom:14px;background:transparent}.type-rows .tr .lbl{font-family:var(--font-mono);font-size:11px;color:hsl(var(--muted-foreground));width:120px;flex:none}.type-rows .tr .sample{min-width:0;flex:1;color:hsl(var(--foreground))}.type-rows .tr .sample.mono{white-space:pre-wrap;word-break:break-all;overflow-x:auto;color:hsl(var(--foreground))}.type-specimen-story{box-sizing:border-box;width:100%;max-width:100%;min-height:100%;padding:24px;color:hsl(var(--foreground));background:hsl(var(--background))}html[data-mode=dark] .type-rows,html[data-mode=dark] .type-specimen-story,html[data-mode=dusk] .type-rows,html[data-mode=dusk] .type-specimen-story{color:#FFFFFF;-webkit-text-fill-color:#FFFFFF}html[data-mode=dark] .type-rows .tr,html[data-mode=dark] .type-rows .tr .sample,html[data-mode=dark] .type-rows .tr .sample.display,html[data-mode=dark] .type-rows .tr .sample.mono,html[data-mode=dusk] .type-rows .tr,html[data-mode=dusk] .type-rows .tr .sample,html[data-mode=dusk] .type-rows .tr .sample.display,html[data-mode=dusk] .type-rows .tr .sample.mono{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important}html[data-mode=dark] .type-rows .tr .lbl,html[data-mode=dusk] .type-rows .tr .lbl{color:#E8E8E8!important;-webkit-text-fill-color:#E8E8E8!important}@media (max-width:639px){.type-rows .tr{flex-direction:column;align-items:flex-start;gap:8px}.type-rows .tr .lbl{width:auto}.type-specimen-story{padding:16px}}.spec-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.spec{border:1px solid hsl(var(--border));border-radius:var(--radius);padding:18px;background:hsl(var(--card));color:hsl(var(--card-foreground))}.spec h5{margin:0 0 12px;font-family:var(--font-heading);font-size:16px}.spec .swatch-radius{height:56px;background:hsl(var(--primary)/.16);border:2px solid hsl(var(--primary));border-radius:var(--radius);margin-bottom:10px}.spec .swatch-tap{display:grid;place-items:center;min-height:var(--tap-min);min-width:var(--tap-min);width:var(--tap-min);background:hsl(var(--secondary));border-radius:var(--radius-sm)}.spec .meta,.spec .swatch-tap{font-family:var(--font-mono);font-size:11px;color:hsl(var(--muted-foreground))}.spec .meta{margin-top:8px}.player{width:100%;height:100%;container-type:size;align-items:center;justify-content:center;padding:clamp(12px,3vmin,24px);background:radial-gradient(circle at 50% 0,hsl(var(--primary)/.1),transparent 60%),hsl(var(--muted))}.frame,.player{position:relative;box-sizing:border-box;max-width:100%;min-height:0;min-width:0;display:flex;color:hsl(var(--foreground))}.frame{aspect-ratio:16/10;width:min(100%,calc(100cqh * 16 / 10));max-height:100%;height:auto;margin:0 auto;background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);overflow:hidden;flex-direction:column}@supports not (width:1cqh){.frame{width:min(100%,calc((100dvh - 48px) * 16 / 10));max-height:calc(100dvh - 48px)}}.pbottom,.ptop{display:flex;align-items:center;gap:14px;padding:16px 20px;min-width:0}.pbottom>*,.ptop>*{min-width:0}.pbottom .spacer{flex:1}.ptop-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.ptop-status{flex:none;margin-left:auto}.stage{flex:1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:8px 40px;min-width:0;min-height:0}.stage-title{font-size:clamp(20px,6vw,28px);word-wrap:break-word;overflow-wrap:anywhere;line-height:1.2;max-width:100%}.stage-copy{display:grid;place-items:center;text-align:center;gap:8px;padding:24px;max-width:100%;min-width:0;box-sizing:border-box}@media (max-width:640px){.pbottom,.ptop{padding:10px 12px;gap:8px}.stage{padding:8px 16px}.beat{padding:12px 16px;gap:14px}.player{padding:12px}}.player-frame-story{box-sizing:border-box;width:100%;max-width:100%;min-height:100dvh;height:100dvh;margin:0;padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden;color:hsl(var(--foreground));background:hsl(var(--background))}.player-frame-story>.player{flex:1 1 auto;width:100%;height:100%;min-height:0}.crumbs{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;max-width:100%;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.crumbs .sep,.crumbs .unit{color:hsl(var(--muted-foreground));flex:none}.crumbs .lesson{flex:1}.crumbs .lesson,.crumbs>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}@media (max-width:560px){.crumbs .sep,.crumbs .unit{display:none}}.dots{display:flex;flex-wrap:wrap;gap:6px;max-width:100%;min-width:0}.dots .dt{width:24px;height:5px;border-radius:999px;background:hsl(var(--border)/.45);transition:background var(--transition);flex:none}.dots .dt.cur,.dots .dt.on{background:hsl(var(--primary))}.dots .dt.cur{box-shadow:0 0 0 3px hsl(var(--primary)/.25)}html[data-mode=dark] .dots .dt:not(.on):not(.cur),html[data-mode=dusk] .dots .dt:not(.on):not(.cur){background:hsl(var(--foreground)/.28)}.beat{position:relative;inset:0;flex-direction:column;gap:22px;padding:18px 40px;text-align:center;box-sizing:border-box}.beat,.beat .visual{display:flex;align-items:center;justify-content:center;max-width:100%;min-width:0}.beat .visual{min-height:0;overflow:hidden}.beat .visual .beat-scene{font-size:clamp(48px,18vw,96px);line-height:1;max-width:100%}.beat .say{font-family:var(--font-heading);font-weight:700;font-size:clamp(20px,2.6vw,30px);max-width:20ch;line-height:1.18;text-wrap:balance}.beat .say,.beat .sub{overflow-wrap:anywhere}.beat .sub{color:hsl(var(--muted-foreground));font-size:15px;max-width:42ch;margin-top:-8px}.blockchip{font-family:var(--font-heading);font-weight:700;font-size:clamp(16px,2vw,22px);padding:14px 20px;border-radius:var(--radius);background:hsl(var(--primary));color:hsl(var(--primary-foreground));box-shadow:var(--shadow-md);display:inline-flex;gap:9px;align-items:center}.blockchip.sun{background:hsl(var(--sunshine));color:hsl(var(--sunshine-foreground))}.blockchip.acc{background:hsl(var(--accent-solid));color:hsl(var(--accent-solid-foreground))}.chip-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center;max-width:100%}.code{font-family:var(--font-mono);font-size:clamp(14px,1.6vw,18px);text-align:left;background:hsl(var(--primary-950));color:#EDEEF2;padding:20px 24px;border-radius:var(--radius);box-shadow:var(--shadow-lg);white-space:pre-wrap;word-break:break-all;overflow-x:auto;max-width:min(90%,100%);box-sizing:border-box}.code .k{color:hsl(var(--sunshine))}.code .f{color:hsl(var(--primary-300))}.code .c{color:#7d8a99}.play{width:var(--tap-min,48px);height:var(--tap-min,48px);border-radius:999px;border:0;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:20px;cursor:pointer;display:grid;place-items:center;flex:none}.scrub{flex:1;display:flex;gap:5px;min-width:0;max-width:100%;align-items:center}.scrub .seg{flex:1;min-width:0;height:8px;border-radius:999px;background:hsl(var(--muted)/.35);overflow:hidden;cursor:pointer;border:1px solid hsl(var(--border)/.5)}.scrub .seg>i{display:block;height:100%;width:0;background:hsl(var(--primary))}.scrub .seg.done>i{width:100%}html[data-mode=dark] .scrub .seg,html[data-mode=dusk] .scrub .seg{background:hsl(var(--foreground)/.18);border-color:hsl(var(--foreground)/.28)}@media (max-width:560px){.scrub{pointer-events:none}.scrub .seg{cursor:default}}.referral-offer-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;width:100%;box-sizing:border-box;padding:16px 20px;margin-bottom:22px;border:1px solid hsl(var(--border));border-radius:var(--radius-lg);background:linear-gradient(135deg,hsl(var(--primary)/.12),hsl(var(--sunshine)/.12));color:hsl(var(--foreground))}.referral-offer-banner-text{flex:1 1 240px;min-width:0;display:flex;flex-direction:column;gap:4px}.referral-offer-banner-text h2{font-family:var(--font-heading);font-size:18px;font-weight:700;margin:0}.referral-offer-banner-text p{font-size:14px;margin:0}.referral-offer-banner .t-btn{flex:none}.referral-invite-tile h3{font-size:15px;margin:0 0 10px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:hsl(var(--muted-foreground));font-weight:600}.referral-invite-tile p{font-size:13.5px;margin:0 0 12px}.referral-fallback summary{color:hsl(var(--primary));cursor:pointer;font-size:14px;font-weight:600;list-style:none;text-decoration:underline;width:-moz-fit-content;width:fit-content}.referral-fallback summary::-webkit-details-marker{display:none}.referral-fallback summary:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px;border-radius:4px}.referral-fallback-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}.referral-fallback-form .code-in{flex:1 1 160px;min-width:0;max-width:100%}.referral-fallback-error{color:hsl(var(--destructive));font-size:13.5px;margin:10px 0 0}.referral-share-card{display:flex;flex-direction:column;gap:14px;min-width:0}.referral-share-label{font-size:13px;font-weight:700;margin:0}.referral-share-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-width:0}.referral-share-url{flex:1 1 220px;min-width:0;font-family:var(--font-mono);font-size:13px;padding:10px 12px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--muted));overflow-wrap:anywhere}.referral-share-row .t-btn{flex:none}.referral-share-buttons{display:flex;flex-wrap:wrap;gap:8px}.referral-share-button{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:border-color var(--transition),background var(--transition)}.referral-share-button:hover{border-color:hsl(var(--ring));background:hsl(var(--muted))}.referral-share-button:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.referral-share-code-line{font-size:13.5px;margin:0;overflow-wrap:anywhere}.referral-share-code-line b{font-family:var(--font-mono);color:hsl(var(--foreground));letter-spacing:.08em}.referral-invite-list h3{font-size:15px;margin:0 0 10px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:hsl(var(--muted-foreground));font-weight:600}.referral-invite-list p{font-size:13.5px;margin:0}.referral-invite-list ul{list-style:none;margin:0;padding:0}.referral-invite-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:14px;min-width:0}.referral-invite-list li+li{border-top:1px solid hsl(var(--border))}.referral-invite-list li span{min-width:0;overflow-wrap:anywhere}.referral-invite-list li .t-pill{flex:none}.referral-how{display:flex;flex-wrap:wrap;gap:20px;list-style:none;margin:0;padding:0}.referral-how-step{flex:1 1 200px;min-width:0;display:flex;flex-direction:column;gap:8px}.referral-how-number{width:30px;height:30px;border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));display:grid;place-items:center;font-family:var(--font-heading);font-weight:700;font-size:14px}.referral-how-step h3{font-size:16px;font-weight:700;margin:0}.referral-how-step p{font-size:14px;margin:0}.quest-graph{width:100%;min-width:0}.quest-legend{display:flex;flex-wrap:wrap;gap:6px 14px;list-style:none;margin:0 0 10px;padding:0;font-size:13px;color:hsl(var(--muted-foreground))}.quest-legend i{display:inline-block;width:14px;height:14px;margin-right:6px;vertical-align:-2px;border-radius:4px;border:2px solid transparent}.quest-graph-scroller{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding:4px 2px 10px}.quest-graph-canvas{position:relative}.quest-graph-edges{position:absolute;inset:0;overflow:visible;pointer-events:none}.quest-edge{fill:none;stroke:hsl(var(--border));stroke-width:2.5;stroke-linecap:round}.quest-edge.is-lit{stroke:hsl(var(--success))}.quest-graph-nodes{list-style:none;margin:0;padding:0}.quest-graph-nodes>li{position:absolute}.quest-node{width:100%;height:100%;box-sizing:border-box;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;-moz-column-gap:6px;column-gap:6px;align-items:center;text-align:left;padding:8px 10px;border-radius:calc(var(--radius) * .7);border:2px solid transparent;font:inherit;cursor:pointer}.quest-node:disabled{cursor:default}.quest-node:focus-visible{outline:3px solid hsl(var(--ring));outline-offset:2px}.quest-node .qn-ic{grid-row:1/span 2;display:grid;place-items:center}.quest-node .qn-title{font-weight:700;font-size:13.5px;line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.quest-node .qn-state{font-size:11.5px;line-height:1.2;opacity:.85}.quest-legend .is-finished i,.quest-node.is-finished{background:hsl(var(--success));border-color:hsl(var(--success));color:hsl(var(--success-foreground))}.quest-legend .is-in-progress i,.quest-node.is-in-progress{background:hsl(var(--sunshine));border-color:hsl(var(--sunshine));color:hsl(var(--sunshine-foreground))}.quest-legend .is-ready i,.quest-node.is-ready{background:hsl(var(--primary)/.14);border-color:hsl(var(--primary));color:hsl(var(--card-foreground))}.quest-legend .is-soon i,.quest-node.is-soon{background:hsl(var(--muted));border-color:hsl(var(--border));border-style:dashed;color:hsl(var(--muted-foreground))}.quest-legend .is-locked i,.quest-node.is-locked{background:hsl(var(--muted));border-color:hsl(var(--muted));color:hsl(var(--muted-foreground))}.quest-node.is-next{box-shadow:0 0 0 4px hsl(var(--ring)/.45)}.quest-node.is-picked{position:relative;border-color:hsl(var(--primary));padding-right:28px}.quest-node .qn-picked{position:absolute;top:6px;right:6px;display:inline-flex;color:hsl(var(--primary))}.quest-node.is-finished .qn-picked{color:hsl(var(--primary-foreground))}.tl-home{--home-green:var(--brand-green);--home-sun:var(--brand-sun);--home-ink:var(--brand-ink);--home-ink-inverse:var(--brand-ink-inverse);--home-text:#3a3833;--home-muted:#6b665c;--home-page:#fcfdfc;--home-hero:#eff5f1;--home-alt:#f5f3ec;--home-border:#e9e5db;--home-border-strong:#d6d1c4;--home-card:#ffffff;--home-green-50:#e3efe7;--home-green-100:#cfe3d6;--home-green-200:#d7e8dd;--home-green-300:#9cc4ab;--home-green-deep:#0b4a2d;--home-sun-50:#fbf3de;--home-sun-200:#e9cf8f;--home-sun-ink:#6b4901;--home-green-text:var(--home-green);--home-on-green:#ffffff;--logo-eye:var(--home-card);--home-shadow-lg:0 20px 50px rgb(18 112 69/0.12);--home-shadow-sm:0 6px 18px rgb(18 112 69/0.1);--home-radius-xl:32px;--home-radius-lg:24px;--home-radius-md:16px;--home-radius-sm:10px;--home-radius-pill:999px;--home-ease:cubic-bezier(0.22,0.61,0.36,1);--home-dur:360ms;--home-font-display:"Baloo 2","Trebuchet MS",system-ui,sans-serif;--home-font-body:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;--home-max:1200px;--home-header-offset:88px;--home-h1-size:80px;--home-h2-size:56px;--home-h3-size:34px;--home-intro-size:20px;--home-body-size:17px;--home-gutter:24px;--home-section-pad:96px;background:var(--home-page);color:var(--home-text);font-family:var(--home-font-body);font-size:var(--home-body-size);line-height:1.5;overflow-x:clip}@media (max-width:767px){.tl-home{--home-h1-size:44px;--home-h2-size:36px;--home-h3-size:26px;--home-intro-size:17px;--home-body-size:16px;--home-section-pad:56px}}@media (max-width:389px){.tl-home{--home-gutter:16px}}html[data-mode=dark] .tl-home,html[data-mode=dusk] .tl-home{color-scheme:dark;--home-page:color-mix(in oklab,var(--brand-ink) 78%,black);--home-hero:color-mix(in oklab,var(--brand-green) 16%,var(--home-page));--home-alt:var(--brand-ink);--home-card:color-mix(in oklab,var(--brand-ink) 90%,white);--home-border:color-mix(in oklab,var(--brand-ink) 80%,white);--home-border-strong:color-mix(in oklab,var(--brand-ink) 64%,white);--home-ink:var(--brand-ink-inverse);--home-text:color-mix(in oklab,var(--brand-ink-inverse) 88%,var(--brand-ink));--home-muted:color-mix(in oklab,var(--brand-ink-inverse) 62%,var(--brand-ink));--home-green-text:color-mix(in oklab,var(--brand-green) 55%,white);--home-green-50:color-mix(in oklab,var(--brand-green) 22%,var(--home-page));--home-green-200:color-mix(in oklab,var(--brand-green) 26%,var(--home-page));--home-green-100:color-mix(in oklab,var(--brand-green) 32%,var(--home-page));--home-green-300:color-mix(in oklab,var(--brand-green) 55%,var(--home-page));--home-sun-50:color-mix(in oklab,var(--brand-sun) 18%,var(--home-page));--home-sun-200:color-mix(in oklab,var(--brand-sun) 48%,var(--home-page));--home-sun-ink:color-mix(in oklab,var(--brand-sun) 45%,white)}.tl-home :is(a,button,summary,[role=button]){touch-action:manipulation;-webkit-tap-highlight-color:color-mix(in oklab,var(--home-green) 18%,transparent)}.tl-home :focus-visible{outline:3px solid var(--home-green-text);outline-offset:2px;scroll-margin-top:var(--home-header-offset)}.tl-home .home-on-green :focus-visible,.tl-home .home-on-green:focus-visible{outline-color:var(--home-on-green)}.tl-home .home-skip{position:fixed;top:8px;left:8px;z-index:100;padding:12px 20px;border-radius:var(--home-radius-pill);background:var(--home-card);color:var(--home-green-text);font-weight:700;transform:translateY(-200%)}.tl-home .home-skip:focus-visible{transform:none}.tl-home .home-wrap{box-sizing:border-box;width:100%;max-width:calc(var(--home-max) + 2 * var(--home-gutter));margin-inline:auto;padding-inline:var(--home-gutter)}.tl-home .home-section{padding-block:var(--home-section-pad);scroll-margin-top:var(--home-header-offset)}.tl-home :is(.home-h1,.home-h2,.home-h3){margin:0;color:var(--home-ink);font-family:var(--home-font-display);font-weight:800;text-wrap:balance}.tl-home .home-h1{font-size:var(--home-h1-size);line-height:.96;letter-spacing:-.015em}.tl-home .home-h2{font-size:var(--home-h2-size);line-height:1.02}.tl-home .home-h3{font-size:var(--home-h3-size);line-height:1.1}.tl-home .home-intro{margin:0;color:var(--home-muted);font-size:var(--home-intro-size);line-height:1.5}.tl-home .home-label{margin:0;color:var(--home-green-text);font-size:14px;font-weight:800;line-height:1.4}.tl-home .home-fine{margin:0;color:var(--home-muted);font-size:14px;line-height:1.5}.tl-home :is(.home-btn,.home-chip){display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;min-height:44px;padding:0 20px;border:1.5px solid transparent;border-radius:var(--home-radius-pill);font:700 15px/1.2 var(--home-font-body);text-decoration:none;cursor:pointer;transition:transform var(--home-dur) var(--home-ease)}.tl-home .home-btn--lg{min-height:56px;padding:0 28px;font-size:17px}.tl-home .home-btn--primary{background:var(--home-green);color:var(--home-on-green);box-shadow:0 4px 0 var(--home-green-deep)}.tl-home .home-btn--primary:hover,.tl-home .home-chip[aria-pressed=true]:hover{background:color-mix(in oklab,var(--home-green) 80%,var(--home-green-deep))}.tl-home .home-btn--outline{border-color:var(--home-green-text);background:var(--home-card);color:var(--home-green-text)}.tl-home .home-btn--outline:hover{background:var(--home-green-50);color:color-mix(in oklab,var(--home-green-text) 70%,var(--home-ink))}.tl-home .home-btn--inverse{background:var(--home-on-green);color:var(--home-green)}.tl-home .home-btn--inverse:hover{background:color-mix(in oklab,var(--home-on-green) 88%,var(--home-green));color:var(--home-green-deep)}.tl-home .home-chip{padding:0 18px;border-color:var(--home-border-strong);background:var(--home-card);color:var(--home-ink)}.tl-home .home-chip:hover{border-color:var(--home-green-text)}.tl-home .home-chip[aria-pressed=true]{border-color:var(--home-green);background:var(--home-green);color:var(--home-on-green)}.tl-home :is(.home-btn,.home-chip):active{transform:translateY(2px)}.tl-home .home-ticks{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;list-style:none;color:var(--home-muted);font-size:15px}.tl-home .home-ticks li{display:flex;align-items:center;gap:6px}.tl-home .home-ticks svg{flex:none;color:var(--home-green-text)}@media (prefers-reduced-motion:reduce){.tl-home :is(.home-btn,.home-chip){transition:none}}.tl-home .home-closing{background:var(--home-green);color:var(--home-on-green);padding-block:var(--home-section-pad)}.tl-home .home-closing-in{display:flex;align-items:center;justify-content:space-between;gap:40px}.tl-home .home-closing-text{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:700px}.tl-home .home-closing .home-h2{color:var(--home-on-green)}.tl-home .home-closing .home-intro{color:color-mix(in oklab,var(--home-on-green) 88%,var(--home-green));text-wrap:pretty}.tl-home .home-closing .home-btn{margin-top:8px}.tl-home .home-closing-circle{display:grid;flex:none;place-items:center;width:240px;height:240px;border-radius:50%;background:var(--home-ink-inverse)}.tl-home .home-closing-lumi{position:relative;width:80%}.tl-home .home-closing-lumi .lumi-art{position:relative;width:100%;height:auto}.tl-home .home-closing-shadow{position:absolute;top:87.6%;left:17.6%;width:58.8%;height:7.1%;border-radius:50%;background:var(--home-green);opacity:.12}.tl-home .home-footer{border-top:1px solid var(--home-border);background:var(--home-card);color:var(--home-text);padding-block:72px 40px}.tl-home .home-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:40px}.tl-home .home-footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.tl-home .home-footer-tagline{margin:0;font-size:15px}.tl-home .home-footer-h{margin:0 0 4px;color:var(--home-green-text);font-family:var(--home-font-body);font-size:14px;font-weight:800;line-height:1.4}.tl-home .home-footer-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none;font-size:15px}.tl-home .home-footer-contacts{gap:12px}.tl-home .home-footer-link{display:flex;align-items:center;min-height:32px;color:var(--home-ink);text-decoration:none}.tl-home .home-footer-link:hover{color:var(--home-green-text);text-decoration:underline;text-underline-offset:3px}.tl-home .home-footer-email{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.tl-home .home-footer-legal{display:flex;flex-direction:column;gap:6px;margin-top:48px;padding-top:24px;border-top:1px solid var(--home-border)}@media (max-width:1023px){.tl-home .home-footer-grid{grid-template-columns:repeat(2,1fr)}.tl-home .home-footer-brand{grid-column:1/-1}.tl-home :is(.home-footer-link,.home-footer-logo){min-height:44px}.tl-home .home-footer-link{font-size:16px}}@media (max-width:767px){.tl-home .home-closing-in{flex-direction:column;align-items:stretch;gap:14px}.tl-home .home-closing-text{gap:14px}.tl-home .home-closing .home-btn{align-self:stretch;margin-top:6px}.tl-home .home-closing-circle{order:-1;width:120px;height:120px}.tl-home .home-footer{padding-block:48px calc(96px + env(safe-area-inset-bottom, 0px))}.tl-home .home-footer-grid{grid-template-columns:1fr;gap:24px}.tl-home .home-footer-legal{margin-top:32px;padding-top:20px}}.tl-home .lumi-art{--lumi-green:var(--brand-green);--lumi-sun:var(--brand-sun);--lumi-deep:color-mix(in oklab,var(--brand-green) 70%,black);--lumi-skin:color-mix(in oklab,var(--brand-green) 78%,white);--lumi-legs:color-mix(in oklab,var(--brand-green) 60%,white);--lumi-back:color-mix(in oklab,var(--brand-green) 80%,white);--lumi-leaf:color-mix(in oklab,var(--brand-green) 52%,white);--lumi-soft:color-mix(in oklab,var(--brand-green) 46%,white);--lumi-ink:color-mix(in oklab,var(--brand-green) 30%,black);--lumi-eye:white;display:block;overflow:visible}.tl-home .lumi-art :is(.lumi-sprout,.lumi-legs,.lumi-leg-a,.lumi-leg-b,.lumi-head,.lumi-look,.lumi-lid){transform-box:fill-box}.tl-home .lumi-art .lumi-sprout{transform-origin:50% 100%}.tl-home .lumi-art .lumi-legs,.tl-home .lumi-art .lumi-lid{transform-origin:50% 0}.tl-home .lumi-art :is(.lumi-leg-a,.lumi-leg-b){transform-origin:50% 10%}.tl-home .lumi-art :is(.lumi-head,.lumi-look){transform-origin:20% 80%}.tl-home .lumi-art .lumi-belly{opacity:0}.tl-home .lumi-art .lumi-lid{transform:scaleY(0)}.tl-home .lumi-art--closed .lumi-belly{opacity:1}.tl-home .lumi-art--closed :is(.lumi-head,.lumi-sprout){transform:scale(0)}.tl-home .lumi-art--closed .lumi-legs{transform:scaleY(0)}.tl-home .learn{background:var(--home-alt)}.tl-home .learn-intro{margin-top:14px;text-wrap:balance}.tl-home .learn-bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(210px,auto));gap:16px;margin-top:40px}.tl-home .learn-tile{position:relative;display:flex;flex-direction:column;gap:8px;box-sizing:border-box;padding:28px;border-radius:var(--home-radius-lg);background:var(--home-card);color:var(--home-text);overflow:hidden}.tl-home .learn-tile p{margin:0}.tl-home :is(.learn-tile--english,.learn-tile--reasoning) p{margin-top:auto}.tl-home .learn-tile:not(.learn-tile--maths) .home-h3{font-size:min(30px,var(--home-h3-size))}.tl-home .learn-tile--maths{grid-row:span 2;padding:32px;border-radius:var(--home-radius-xl);background:var(--home-green-50)}.tl-home .learn-fraction{margin-top:auto;color:var(--home-green-text);font-family:var(--home-font-display);font-size:72px;font-weight:800;line-height:1}.tl-home .learn-parts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:4px}.tl-home .learn-parts span{box-sizing:border-box;height:44px;border-radius:var(--home-radius-sm);background:var(--home-green)}.tl-home .learn-parts .learn-part--open{border:2px dashed var(--home-green-text);background:var(--home-card)}.tl-home .learn-tile--english{background:var(--home-sun-50)}.tl-home .learn-tile--english:after{content:"Aa";content:"Aa"/"";position:absolute;top:12px;right:22px;color:var(--home-sun-200);font-family:var(--home-font-display);font-size:64px;font-weight:800;line-height:1.2}.tl-home .learn-shapes{--learn-shape:26px;display:flex;align-items:center;gap:10px;margin-bottom:6px}.tl-home .learn-shapes span{box-sizing:border-box;width:var(--learn-shape);height:var(--learn-shape)}.tl-home .learn-shape--circle{border-radius:50%;background:var(--home-green)}.tl-home .learn-shape--triangle{background:var(--home-sun);clip-path:polygon(50% 0,100% 100%,0 100%)}.tl-home .learn-shape--square{border-radius:4px;background:var(--home-green-300)}.tl-home .learn-shape--unknown{display:flex;align-items:center;justify-content:center;border:2px dashed var(--home-muted);border-radius:8px;color:var(--home-muted);font-size:14px;font-weight:800}.tl-home .learn-tile--papers{grid-column:span 2;flex-direction:row;align-items:center;gap:32px;padding-inline:32px;background:var(--home-green);color:var(--home-on-green)}.tl-home .learn-tile--papers .home-h3{color:inherit}.tl-home .learn-copy{display:flex;flex:1;flex-direction:column;gap:8px}.tl-home .learn-paper{position:relative;flex:none;width:190px;height:150px}.tl-home .learn-paper>span{position:absolute;border-radius:12px}.tl-home .learn-paper-back{top:0;left:28px;width:130px;height:150px;background:color-mix(in oklab,var(--home-green) 70%,var(--home-on-green))}.tl-home .learn-paper-front{top:14px;left:0;display:flex;flex-direction:column;gap:10px;box-sizing:border-box;width:150px;height:136px;padding:18px 16px;background:var(--home-on-green)}.tl-home .learn-paper-front>span{height:6px;border-radius:3px;background:var(--home-green-100)}.tl-home .learn-paper-front>span:first-child{height:8px;border-radius:4px;background:var(--home-green)}.tl-home .learn-ticks{gap:10px 32px;margin-top:28px;color:var(--home-text);font-size:16px}.tl-home .learn-ticks li{gap:8px}@media (max-width:1023px){.tl-home .learn-bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:minmax(210px,auto)}.tl-home .learn-tile--maths{grid-row:auto;grid-column:span 2}}@media (max-width:767px){.tl-home .learn-bento{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:12px;margin-top:24px}.tl-home .learn-tile{padding:22px}.tl-home :is(.learn-tile--maths,.learn-tile--papers){grid-column:auto}.tl-home .learn-fraction{position:absolute;top:18px;right:22px;margin:0;font-size:40px}.tl-home .learn-tile--english:after{top:16px;font-size:36px}.tl-home .learn-shapes{--learn-shape:18px;position:absolute;top:25px;right:22px;gap:6px}.tl-home .learn-shape--unknown{border-radius:4px;font-size:12px}.tl-home :is(.learn-parts,.learn-paper){display:none}.tl-home .learn-ticks{flex-direction:column;margin-top:22px}}.tl-home .dash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"head sample" "points sample";align-content:center;-moz-column-gap:56px;column-gap:56px}.tl-home .dash-head{grid-area:head;align-self:end}.tl-home .dash-head .home-intro{margin-top:16px;text-wrap:balance}.tl-home .dash-points{grid-area:points;align-self:start;margin-top:30px}.tl-home .dash-sample{grid-area:sample;align-self:center;margin:0;border:1px solid var(--home-border);border-radius:var(--home-radius-lg);background:var(--home-card);box-shadow:var(--home-shadow-lg);overflow:hidden}.tl-home .dash-point-list{display:flex;flex-direction:column;gap:18px;margin:0;padding:0;list-style:none}.tl-home .dash-point-list li{display:flex;gap:14px}.tl-home .dash-point-icon{display:flex;flex:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--home-green-50);color:var(--home-green-text)}.tl-home .dash-point-icon--sun{background:var(--home-sun-50);color:var(--home-sun-ink)}.tl-home .dash-point-text{display:flex;flex-direction:column;gap:2px}.tl-home .dash-point-text strong{color:var(--home-ink);font-size:17px}.tl-home .dash-point-text p{margin:0;color:var(--home-muted);line-height:1.45}.tl-home .dash-control{margin:26px 0 0;color:var(--home-muted);font-size:15px}.tl-home .dash-frame-bar{display:flex;align-items:center;gap:16px;padding:14px 18px;border-bottom:1px solid var(--home-border);color:var(--home-muted);font-size:14px;font-weight:700}.tl-home .dash-dots{display:flex;gap:8px}.tl-home .dash-dots span{width:10px;height:10px;border-radius:50%;background:var(--home-border-strong)}.tl-home .dash-frame-body{display:flex;flex-direction:column;gap:18px;padding:24px}.tl-home .dash-child{display:flex;align-items:center;gap:12px}.tl-home .dash-avatar{display:flex;flex:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--home-green-100);color:var(--home-green-deep);font:700 20px/1 var(--home-font-display)}.tl-home :is(.dash-child-text,.dash-working){display:flex;flex-direction:column}.tl-home .dash-child-text strong{color:var(--home-ink);font-size:17px}.tl-home .dash-child-text span,.tl-home .dash-label{color:var(--home-muted);font-size:14px}.tl-home .dash-label{font-weight:800}.tl-home .dash-working{gap:4px;padding:16px;border:1.5px solid var(--home-sun-200);border-radius:var(--home-radius-md);background:var(--home-sun-50);font-size:14px}.tl-home .dash-working .dash-label{color:var(--home-sun-ink)}.tl-home .dash-working strong{color:var(--home-ink);font-size:16px}.tl-home .dash-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.tl-home .dash-panel{padding:16px;border-radius:var(--home-radius-md);background:var(--home-alt);font-size:14px}.tl-home .dash-bars,.tl-home .dash-panel{display:flex;flex-direction:column;gap:8px}.tl-home .dash-bars{margin:0;padding:0;list-style:none}.tl-home .dash-bars li{display:flex;align-items:center;gap:8px;font-weight:700}.tl-home .dash-subject{flex:none;width:78px}.tl-home .dash-track{flex:1;height:8px;border-radius:4px;background:var(--home-border-strong)}.tl-home .dash-fill{display:block;height:100%;border-radius:inherit;background:var(--home-green)}.tl-home .dash-week{display:flex;flex-direction:column;gap:8px}.tl-home :is(.dash-week-bars,.dash-week-days){display:flex;gap:6px}.tl-home .dash-week-bars{align-items:flex-end;height:60px}.tl-home .dash-week-bars span{flex:1;border-radius:4px;background:var(--home-green-300)}.tl-home .dash-week-bars .dash-day--strong{background:var(--home-green)}.tl-home .dash-week-bars .dash-day--rest{background:var(--home-border-strong)}.tl-home .dash-week-days span{flex:1;color:var(--home-muted);font-size:12px;text-align:center}@media (max-width:1023px){.tl-home .dash-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "sample" "points";row-gap:28px}.tl-home .dash-points{margin-top:0}.tl-home .dash-sample{max-width:720px}}@media (max-width:767px){.tl-home .dash-frame-body{gap:14px;padding:18px}.tl-home .dash-control{font-size:14px}}.tl-home .hero{position:relative;box-sizing:border-box;min-height:860px;padding-top:120px;background:var(--home-hero);overflow:hidden;scroll-margin-top:var(--home-header-offset)}.tl-home .hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;max-width:600px}.tl-home .hero .hero-intro{max-width:480px;margin-top:28px;color:var(--home-text)}.tl-home .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.tl-home .hero-trust{margin-top:22px}.tl-home .hero-visual{display:contents}.tl-home .hero-scene{position:absolute;inset:0;z-index:1;container-type:inline-size;pointer-events:none}.tl-home .hero-stage{--hero-k:min(var(--stage-max),tan(atan2(100cqw,var(--stage-w))));position:absolute;bottom:0;left:50%;width:var(--stage-w);height:var(--stage-h);margin-left:calc(var(--stage-w) / -2);transform-origin:50% 100%;scale:var(--hero-k)}.tl-home .hero-stage--narrow{display:none}.tl-home .hero-art{display:block;overflow:visible}html[data-mode=dark] .tl-home .hero-hill--far,html[data-mode=dusk] .tl-home .hero-hill--far{fill:color-mix(in oklab,var(--home-green) 30%,var(--home-hero))}.tl-home .hero-clear{stroke-dasharray:1 1;stroke-dashoffset:0}.tl-home .hero-stone{fill:var(--home-sun);transform-box:fill-box;transform-origin:center}.tl-home .hero-flag{transform-box:fill-box;transform-origin:50% 100%}.tl-home .hero-pole{stroke:var(--home-green-deep);stroke-width:3.5;stroke-linecap:round}.tl-home .hero-flag-label{fill:var(--home-ink);font-family:var(--home-font-body);font-weight:800;font-size:max(var(--label-size),calc(13px / var(--hero-k)))}.tl-home .hero-walk{position:absolute;top:0;left:0;aspect-ratio:204/170;offset-anchor:50% 90%;offset-rotate:0deg;offset-distance:100%}.tl-home .hero-walk :is(.hero-tx,.hero-ty,.hero-sq,.hero-bob,.hero-rot){width:100%;height:100%}.tl-home .hero-sq{transform-origin:50% 90%}.tl-home .hero-rot{transform-origin:45% 58%}.tl-home .hero-shadow{position:absolute;top:84.8%;left:16.7%;width:66.6%;height:9.6%;border-radius:50%;background:var(--home-green);opacity:.12}.tl-home .hero-walk .lumi-look{transform:rotate(-8deg)}@media (max-width:1023px){.tl-home .hero{min-height:0}.tl-home .hero-visual{display:block;position:relative;margin:12px auto 0}.tl-home .hero-stage--wide{display:none}.tl-home .hero-stage--narrow{display:block}}@media (max-width:767px){.tl-home .hero{padding-top:84px}.tl-home .hero .hero-intro{margin-top:14px}.tl-home .hero-actions{flex-direction:column;margin-top:20px}.tl-home .hero-trust{flex-direction:column;gap:4px;margin-top:14px;font-size:14px}}@keyframes heroWalk{0%,44%{offset-distance:0;animation-timing-function:ease-in-out}64%,to{offset-distance:100%}}@keyframes heroTx{0%{transform:translateX(calc(var(--hero-roll-0) - var(--hero-bleed)))}9%{transform:translateX(var(--hero-roll-1))}16%{transform:translateX(var(--hero-roll-2))}22%{transform:translateX(var(--hero-roll-3));animation-timing-function:ease-out}26%,to{transform:translateX(0)}}@keyframes heroTy{0%{transform:translateY(0);animation-timing-function:cubic-bezier(0,.55,.45,1)}4.5%{transform:translateY(var(--hero-peak-1));animation-timing-function:cubic-bezier(.55,0,1,.45)}9%{transform:translateY(0);animation-timing-function:cubic-bezier(0,.55,.45,1)}12.5%{transform:translateY(var(--hero-peak-2));animation-timing-function:cubic-bezier(.55,0,1,.45)}16%{transform:translateY(0);animation-timing-function:cubic-bezier(0,.55,.45,1)}19%{transform:translateY(var(--hero-peak-3));animation-timing-function:cubic-bezier(.55,0,1,.45)}22%,34%{transform:translateY(0);animation-timing-function:ease-out}35.5%{transform:translateY(var(--hero-hop));animation-timing-function:ease-in}37.5%,to{transform:translateY(0)}}@keyframes heroRot{0%{transform:rotate(0deg)}9%{transform:rotate(1turn)}16%{transform:rotate(2turn)}22%{transform:rotate(3turn)}24%{transform:rotate(1088deg)}26%,27%{transform:rotate(3turn)}27.8%{transform:rotate(1090deg)}28.6%{transform:rotate(1070deg)}29.4%{transform:rotate(1089deg)}30.2%{transform:rotate(1072deg)}31%{transform:rotate(1086deg)}31.8%{transform:rotate(1075deg)}32.6%{transform:rotate(1083deg)}33.4%,to{transform:rotate(3turn)}}@keyframes heroSq{0%,7.5%{transform:scale(1)}8.4%{transform:scale(.94,1.06)}9%{transform:scale(1.14,.82)}10.5%,14.5%{transform:scale(1)}15.4%{transform:scale(.95,1.05)}16%{transform:scale(1.1,.86)}17.5%,21%{transform:scale(1)}21.5%{transform:scale(.96,1.04)}22%{transform:scale(1.08,.9)}23.5%,34%{transform:scale(1)}35%{transform:scale(.92,1.1)}37.5%{transform:scale(1.1,.88)}39%,to{transform:scale(1)}}@keyframes heroBob{0%,44%{transform:translateY(0)}46%{transform:translateY(-4px)}48%{transform:translateY(0)}50%{transform:translateY(-4px)}52%{transform:translateY(0)}54%{transform:translateY(-4px)}56%{transform:translateY(0)}58%{transform:translateY(-4px)}60%{transform:translateY(0)}62%{transform:translateY(-4px)}64%{transform:translateY(0)}74%{transform:translateY(-2px)}84%{transform:translateY(0)}94%{transform:translateY(-2px)}to{transform:translateY(0)}}@keyframes heroShadow{0%{transform:scaleX(1);opacity:.12}4.5%{transform:scaleX(.6);opacity:.05}9%{transform:scaleX(1);opacity:.12}12.5%{transform:scaleX(.7);opacity:.07}16%{transform:scaleX(1);opacity:.12}19%{transform:scaleX(.85);opacity:.09}22%,to{transform:scaleX(1);opacity:.12}}@keyframes heroLegsOpen{0%,34.5%{transform:scaleY(0)}36.5%{transform:scaleY(1.15)}38%,to{transform:scaleY(1)}}@keyframes heroBelly{0%,34.5%{opacity:1}36.5%,to{opacity:0}}@keyframes heroHead{0%,35%{transform:scale(0)}37%{transform:scale(1.14)}39%,to{transform:scale(1)}}@keyframes heroSprout{0%,35.5%{transform:scale(0)}38%{transform:scale(1.2)}40%,to{transform:scale(1)}}@keyframes heroLid{0%,39%{transform:scaleY(1)}42%,70%{transform:scaleY(0)}71%{transform:scaleY(1)}72.5%,to{transform:scaleY(0)}}@keyframes heroLook{0%,64%{transform:rotate(0deg)}68%,to{transform:rotate(-8deg)}}@keyframes heroLegA{0%,44%{transform:rotate(0deg)}46%{transform:rotate(14deg)}48%{transform:rotate(-14deg)}50%{transform:rotate(14deg)}52%{transform:rotate(-14deg)}54%{transform:rotate(14deg)}56%{transform:rotate(-14deg)}58%{transform:rotate(14deg)}60%{transform:rotate(-14deg)}62%{transform:rotate(14deg)}64%,to{transform:rotate(0deg)}}@keyframes heroLegB{0%,44%{transform:rotate(0deg)}46%{transform:rotate(-14deg)}48%{transform:rotate(14deg)}50%{transform:rotate(-14deg)}52%{transform:rotate(14deg)}54%{transform:rotate(-14deg)}56%{transform:rotate(14deg)}58%{transform:rotate(-14deg)}60%{transform:rotate(14deg)}62%{transform:rotate(-14deg)}64%,to{transform:rotate(0deg)}}@keyframes heroClear{0%,64%{stroke-dashoffset:1}80%,to{stroke-dashoffset:0}}@keyframes heroSt1{0%,67%{transform:scale(0)}69.5%{transform:scale(1.3)}71%,to{transform:scale(1)}}@keyframes heroSt2{0%,71%{transform:scale(0)}73.5%{transform:scale(1.3)}75%,to{transform:scale(1)}}@keyframes heroSt3{0%,75%{transform:scale(0)}77.5%{transform:scale(1.3)}79%,to{transform:scale(1)}}@keyframes heroFlag{0%,78%{opacity:0;transform:translateY(24px)}82%,to{opacity:1;transform:translateY(0)}}@keyframes heroEnd{0%,to{opacity:0}}.tl-home .hero-stage--wide{--hero-roll-0:-690px;--hero-roll-1:-450px;--hero-roll-2:-220px;--hero-roll-3:-50px;--hero-peak-1:-70px;--hero-peak-2:-44px;--hero-peak-3:-22px;--hero-hop:-14px}.tl-home .hero-stage--narrow{--hero-roll-0:-200px;--hero-roll-1:-125px;--hero-roll-2:-65px;--hero-roll-3:-22px;--hero-peak-1:-44px;--hero-peak-2:-28px;--hero-peak-3:-14px;--hero-hop:-10px}.tl-home .hero-stage{--hero-bleed:max(0px,(100vw - var(--stage-w) * var(--hero-k))/2/var(--hero-k))}.tl-home .hero-end{position:absolute;top:0;left:0;width:1px;height:1px;opacity:0}.tl-home .hero-scene{--hero-dur:10s;--hero-play:running}.tl-home .hero-scene.is-paused{--hero-play:paused}@media (prefers-reduced-motion:no-preference){.tl-home .hero-scene.is-playing .hero-walk{animation:heroWalk var(--hero-dur) both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-tx{animation:heroTx var(--hero-dur) linear both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-ty{animation:heroTy var(--hero-dur) both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-rot{animation:heroRot var(--hero-dur) linear both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-sq{animation:heroSq var(--hero-dur) ease-out both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-bob{animation:heroBob var(--hero-dur) ease-in-out both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-shadow{animation:heroShadow var(--hero-dur) both var(--hero-play)}.tl-home .hero-scene.is-playing .lumi-legs{animation:heroLegsOpen var(--hero-dur) ease-out both var(--hero-play)}.tl-home .hero-scene.is-playing .lumi-belly{animation:heroBelly var(--hero-dur) both var(--hero-play)}.tl-home .hero-scene.is-playing .lumi-head{animation:heroHead var(--hero-dur) ease-out both var(--hero-play)}.tl-home .hero-scene.is-playing .lumi-sprout{animation:heroSprout var(--hero-dur) ease-out both var(--hero-play)}.tl-home .hero-scene.is-playing .lumi-lid{animation:heroLid var(--hero-dur) both var(--hero-play)}.tl-home .hero-scene.is-playing .lumi-look{animation:heroLook var(--hero-dur) ease-in-out both var(--hero-play)}.tl-home .hero-scene.is-playing .lumi-leg-a{animation:heroLegA var(--hero-dur) ease-in-out both var(--hero-play)}.tl-home .hero-scene.is-playing .lumi-leg-b{animation:heroLegB var(--hero-dur) ease-in-out both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-clear{animation:heroClear var(--hero-dur) ease-in-out both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-st1{animation:heroSt1 var(--hero-dur) ease-out both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-st2{animation:heroSt2 var(--hero-dur) ease-out both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-st3{animation:heroSt3 var(--hero-dur) ease-out both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-flag{animation:heroFlag var(--hero-dur) ease-out both var(--hero-play)}.tl-home .hero-scene.is-playing .hero-end{animation:heroEnd var(--hero-dur) linear both var(--hero-play)}}.tl-home .home-btn.hero-playback{position:absolute;right:32px;bottom:24px;z-index:3;padding:0 16px;border:1px solid var(--home-border-strong);background:var(--home-card);color:var(--home-green-text);font-size:14px}.tl-home .home-btn.hero-playback:hover{border-color:var(--home-green-text);background:var(--home-green-50)}.tl-home .home-btn.hero-playback[hidden]{display:none}.tl-home .hero-playback svg{flex:none}@media (max-width:1023px){.tl-home .home-btn.hero-playback{right:16px;bottom:16px}}@media (prefers-reduced-motion:reduce){.tl-home .home-btn.hero-playback{display:none}}.tl-home .home-header{--home-header-bar:60px;--home-header-pad:clamp(8px,10vw - 24px,12px);--home-header-text:clamp(14px,5vw - 2px,15px);position:sticky;top:0;z-index:50;height:0}.tl-home .home-header__bar{position:absolute;inset:0 0 auto;z-index:1;display:flex;align-items:center;gap:6px;box-sizing:border-box;height:var(--home-header-bar);padding:0 10px 0 calc(var(--home-header-pad) + 4px);white-space:nowrap;overflow:hidden;border-bottom:1px solid var(--home-border);background:var(--home-card)}.tl-home .home-header__nav{display:flex;gap:2px}.tl-home .home-header__signin{margin-left:auto}.tl-home .home-header__link{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--home-header-pad);border:0;border-radius:var(--home-radius-pill);background:transparent;color:var(--home-ink);font:700 var(--home-header-text) /1.2 var(--home-font-body);text-decoration:none;cursor:pointer}.tl-home .home-header__link:hover,.tl-home .home-header__link[aria-current=true]{background:var(--home-green-50)}.tl-home .home-header__link[aria-current=true]{color:var(--home-green-text)}.tl-home .home-header__link.home-header__link--trail{background:var(--home-green);color:var(--home-on-green)}.tl-home .home-header__menu{justify-content:center;width:44px;padding:0;border-radius:12px}.tl-home .home-header__menu,.tl-home .home-header__step{background:var(--home-green-50);color:var(--home-green-text)}.tl-home .home-header__step{position:absolute;top:50%;right:60px;padding:6px 10px;border-radius:var(--home-radius-pill);font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;text-align:center;transform:translateY(-50%);pointer-events:none}.tl-home .home-header__progress{position:absolute;inset:auto 0 0;height:3px;background:var(--home-sun);transform-origin:left}.tl-home .home-header :is(.home-header__step,.home-header__progress){opacity:0;transition:opacity var(--home-dur) var(--home-ease)}.tl-home .home-header[data-trail=on] :is(.home-header__step,.home-header__progress){opacity:1}.tl-home .home-header__sheet{position:absolute;inset:var(--home-header-bar) 0 auto;max-height:calc(100dvh - var(--home-header-bar));padding:8px 16px 20px;overflow-y:auto;overscroll-behavior:contain;border-radius:0 0 var(--home-radius-lg) var(--home-radius-lg);background:var(--home-card);box-shadow:var(--home-shadow-lg)}.tl-home .home-header__sheet:not([hidden]){display:grid;gap:6px}.tl-home .home-header__sheet .home-header__link{min-height:52px;padding:0 16px;border-radius:var(--home-radius-md);font-size:18px}@media (max-width:1023px){.tl-home .home-header :is(.home-header__nav,.home-header__cta){display:none}.tl-home .home-header[data-trail=on] .home-header__signin{visibility:hidden}}@media (max-width:359px){.tl-home .home-header__brand span{display:none}}@media (min-width:1024px){.tl-home .home-header{--home-header-bar:64px;--home-header-pad:clamp(8px,1.6vw - 8px,12px);--home-header-text:clamp(14px,0.6vw + 8px,15px)}.tl-home .home-header__bar{inset:24px 0 auto;width:calc(100% - 2 * var(--home-gutter));max-width:1120px;margin-inline:auto;padding:0 10px 0 22px;border-bottom:0;border-radius:var(--home-radius-pill);box-shadow:var(--home-shadow-sm)}.tl-home .home-header__step{position:static;min-width:6em;transform:none}.tl-home .home-header :is(.home-header__menu,.home-header__sheet){display:none}}@media (prefers-reduced-motion:reduce){.tl-home .home-header :is(.home-header__step,.home-header__progress){transition:none}}