@layer components{.lite-app{background:radial-gradient(120% 40rem at 50% -10rem, #62cdf917, transparent 70%), var(--void);min-height:100dvh;color:var(--text)}.lite-wrap{width:100%;max-width:34rem;padding:1.5rem 1rem calc(3rem + env(safe-area-inset-bottom));margin-inline:auto}.lite-head{z-index:30;padding-top:env(safe-area-inset-top);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-2);background:#000000b8;position:sticky;top:0}.lite-head__row{align-items:center;gap:1rem;max-width:34rem;height:3.5rem;margin-inline:auto;padding-inline:1rem;display:flex}.lite-head__nav{align-items:center;gap:1.1rem;margin-inline-start:auto;display:flex}.lite-head__link{color:var(--text-2);transition:color .3s var(--ease-state);font-size:.625rem}.lite-head__link:hover,.lite-head__link[aria-current=page]{color:var(--text)}.display{letter-spacing:-.04em;text-wrap:balance;font-weight:760;line-height:.95}.lite-h1{font-size:clamp(2.375rem,10.5vw,3.25rem)}.lite-h2{letter-spacing:-.035em;font-size:clamp(1.5rem,6vw,1.875rem);font-weight:720;line-height:1.05}.lite-lead{color:var(--text-2);font-size:1.0625rem;line-height:1.55}.lite-label{color:var(--text-2);align-items:center;gap:.75rem;display:inline-flex}.lite-muted{color:var(--muted)}.accent{color:var(--cyan)}.lite-card{background:var(--panel);isolation:isolate;border-radius:1.25rem;padding:1.25rem;display:block;position:relative}.lite-card--raised{background:var(--panel-2)}.lite-card:before,.lite-card:after{content:"";border-radius:inherit;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.lite-card:before{background:var(--line-2)}.lite-card--lit:after{background:linear-gradient(160deg, var(--cyan), #62cdf91f 40%, #62cdf90a 70%, #62cdf94d)}a.lite-card{transition:transform .6s var(--ease-out)}a.lite-card:hover:before{background:#62cdf966}.lite-bars{grid-auto-columns:1fr;grid-auto-flow:column;gap:.3rem;display:grid}.lite-bar{background:var(--line-2);height:3px;transition:background-color .5s var(--ease-state), box-shadow .5s;border-radius:3px}.lite-bar.is-done{background:var(--cyan);box-shadow:0 0 8px var(--cyan-glow)}.lite-block{width:100%}.lite-actions{gap:.75rem;display:grid}.lite-week{grid-template-columns:repeat(7,1fr);gap:.4rem;display:grid}.lite-week__day{justify-items:center;gap:.45rem;display:grid}.lite-week__dot{width:1.75rem;height:1.75rem;box-shadow:inset 0 0 0 1px var(--line-2);border-radius:50%;place-items:center;display:grid}.lite-week__dot.is-done{background:var(--cyan);box-shadow:0 0 14px var(--cyan-glow)}.lite-week__dot.is-today:not(.is-done){box-shadow:inset 0 0 0 1px var(--cyan)}.lite-week__dot.is-future{opacity:.45}.lite-week__lbl{color:var(--muted);letter-spacing:.18em;font-size:.5625rem}.lite-still{height:clamp(250px,48vh,440px);margin:-1.5rem -1rem 0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0%,#000 12% 58%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 12% 58%,#0000 100%)}.lite-still--short{height:clamp(190px,32vh,300px)}.lite-still img{object-fit:cover;width:100%;height:100%;animation:still-in 1.6s var(--ease-out) both;display:block}.lite-still+section{margin-top:-4.5rem;position:relative}.lite-still--short+section{margin-top:-3.25rem}@keyframes still-in{0%{opacity:0;transform:scale(1.06)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.lite-still img{animation:none}}.lite-rows{display:grid}.lite-row{border-top:1px solid var(--line-2);grid-template-columns:2rem 1fr auto;align-items:center;gap:.75rem;padding:.95rem 0;display:grid}.lite-row:first-child{border-top:0}.lite-row__n{color:var(--muted);font-size:.625rem}.lite-row__t{letter-spacing:-.015em;font-weight:600;line-height:1.25}.lite-row__s{color:var(--text-2);margin-top:.15rem;font-size:.875rem;line-height:1.4}.lite-row__state{color:var(--muted);font-size:.5625rem}.lite-row__state.is-done,a.lite-row:hover .lite-row__t{color:var(--cyan)}.lite-tick{background:var(--cyan);width:1.4rem;height:1.4rem;color:var(--void);box-shadow:0 0 10px var(--cyan-glow);border-radius:50%;place-items:center;display:inline-grid}.lite-features{gap:1.25rem;display:grid}.lite-features li{grid-template-columns:auto 1fr;align-items:start;gap:.875rem;display:grid}.lite-features .spark{margin-top:.55rem}.lite-fh{letter-spacing:-.015em;margin-bottom:.25rem;font-size:1.0625rem;font-weight:650}.lite-fb{color:var(--text-2);font-size:.9375rem;line-height:1.55}.lite-app :is(p,li)>a,.lite-inline-links a{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.lite-select{width:100%;min-height:3rem;color:var(--text);font:inherit;box-shadow:inset 0 0 0 1px var(--line-2);appearance:none;background:#ffffff05;background-image:linear-gradient(45deg, transparent 50%, var(--text-2) 50%), linear-gradient(135deg, var(--text-2) 50%, transparent 50%);background-position:calc(100% - 1.1rem),calc(100% - .8rem);background-repeat:no-repeat;background-size:.3rem .3rem;border:0;border-radius:.85rem;padding:0 .9rem;font-size:1rem}.lite-select:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.lite-select option{background:var(--panel);color:var(--text)}.lite-toggle button{color:var(--text-2);cursor:pointer;transition:background-color .4s var(--ease-state), color .4s var(--ease-state);background:0 0;border:0;border-radius:999px;padding:.55rem 1.1rem;font-size:.875rem;font-weight:560}.lite-toggle button[aria-current=true]{background:var(--text);color:var(--void)}.lite-switch{cursor:pointer;width:3.1rem;height:1.85rem;transition:background-color .3s var(--ease-state);background:#ffffff1f;border:0;border-radius:999px;flex:none;position:relative}.lite-switch span{background:var(--text);width:1.45rem;height:1.45rem;transition:transform .3s var(--ease-out);border-radius:50%;position:absolute;top:.2rem;left:.2rem}.lite-switch.is-on{background:var(--cyan)}.lite-switch.is-on span{background:var(--void);transform:translate(1.25rem)}.lite-switch:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.lite-danger{color:var(--text);box-shadow:inset 0 0 0 1px #fff6}.legal{color:var(--text-2);gap:1rem;font-size:1rem;line-height:1.7;display:grid}.legal h1{color:var(--text);letter-spacing:-.04em;margin-bottom:.25rem;font-size:clamp(2rem,8vw,2.75rem);font-weight:740;line-height:1}.legal h2{color:var(--text);letter-spacing:-.03em;margin-top:1.5rem;font-size:1.375rem;font-weight:680;line-height:1.2}.legal h3{color:var(--text);letter-spacing:-.015em;margin-top:.75rem;font-size:1.0625rem;font-weight:650}.legal ul{gap:.5rem;padding-left:1.2rem;list-style:outside;display:grid}.legal li::marker{color:var(--cyan)}.legal a{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--cyan);text-decoration-color:var(--cyan);text-underline-offset:3px}.legal strong{color:var(--text);font-weight:600}.legal .legal__updated{font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:.6875rem}.lite-foot{border-top:1px solid var(--line-2);flex-wrap:wrap;gap:.6rem 1.25rem;margin-top:1rem;padding:2rem 0 .5rem;display:flex}.lite-foot a{color:var(--text-2);font-size:.625rem}.lite-foot a:hover{color:var(--text)}.lite-toggle{box-shadow:inset 0 0 0 1px var(--line-2);background:#ffffff05;border-radius:999px;grid-auto-flow:column;padding:.25rem;display:inline-grid}.lite-toggle a{color:var(--text-2);transition:background-color .4s var(--ease-state), color .4s var(--ease-state);border-radius:999px;padding:.55rem 1.1rem;font-size:.875rem;font-weight:560}.lite-toggle a[aria-current=true]{background:var(--text);color:var(--void)}.lite-price{align-items:baseline;gap:.35rem;display:flex}.lite-price b{letter-spacing:-.045em;font-size:3rem;font-weight:760;line-height:1}.lite-notice{color:var(--text-2);background:#62cdf90f;border-radius:1rem;align-items:flex-start;gap:.75rem;padding:.9rem 1rem;font-size:.875rem;line-height:1.5;display:flex;box-shadow:inset 0 0 0 1px #62cdf94d}.lite-notice .spark{margin-top:.5rem}.player-stage{background:var(--void);min-height:100dvh}@media (min-width:640px){.player-stage{background:radial-gradient(60rem 40rem at 50% 0%, #62cdf914, transparent 70%), var(--void);place-items:center;padding:2rem 1rem;display:grid}}.player-device{height:100dvh}@media (min-width:640px){.player-device{background:linear-gradient(150deg,#2a3542,#0a0e13 35%,#05070a 70%,#1c2530);border-radius:3.1rem;width:25rem;height:min(52rem,100dvh - 4rem);padding:.7rem;position:relative;box-shadow:0 0 0 1px #ffffff24,inset 0 0 0 1px #ffffff0f,0 50px 100px -30px #000000e6,0 0 90px -20px #62cdf959}}.lesson{height:100%;padding:calc(.75rem + env(safe-area-inset-top)) 1.1rem calc(.9rem + env(safe-area-inset-bottom));background:radial-gradient(120% 60% at 50% 0,#62cdf91a,#0000 60%),#010203;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid;position:relative;overflow:hidden}@media (min-width:640px){.lesson{border-radius:2.45rem;padding:1.4rem 1.1rem 1.1rem}}.lesson__top{gap:.9rem;padding-bottom:.5rem;display:grid}.lesson__bar-row{align-items:center;gap:.75rem;display:flex}.lesson__bar-row .lite-bars{flex:1}.lesson__close{width:2.25rem;height:2.25rem;color:var(--text-2);box-shadow:inset 0 0 0 1px var(--line-2);border-radius:50%;flex:none;place-items:center;transition:color .3s,box-shadow .3s;display:grid}.lesson__close:hover{color:var(--text);box-shadow:inset 0 0 0 1px var(--cyan)}.lesson__meta{color:var(--text-2);justify-content:space-between;gap:.5rem;display:flex}.lesson__meta .mono{letter-spacing:.18em;font-size:.5625rem}.lesson__of{color:var(--cyan)}.lesson__viewport{touch-action:pan-y;cursor:grab;min-width:0;margin-inline:-1.1rem;position:relative;overflow:clip}.lesson__viewport:active{cursor:grabbing}.lesson__track{height:100%;transition:transform .7s var(--ease-out);margin:0;padding:0;list-style:none;display:flex}.lesson__card{overscroll-behavior:contain;-webkit-user-select:none;user-select:none;flex:0 0 100%;align-content:center;gap:.9rem;min-width:0;padding:1.25rem 1.6rem;display:grid;overflow:hidden auto}.lesson__kicker{color:var(--cyan);margin-bottom:.25rem;font-size:.5625rem;display:block}.lesson__h{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(1.625rem,7vw,2rem);font-weight:720;line-height:1.02}.lesson__b{color:var(--text-2);font-size:1rem;line-height:1.55}.lesson__nav{justify-content:space-between;align-items:center;gap:.5rem;padding-top:.5rem;display:flex}.lesson__btn{white-space:nowrap;min-height:2.75rem;box-shadow:inset 0 0 0 1px var(--line-2);color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:560;transition:box-shadow .3s,opacity .3s,background-color .3s}.lesson__btn--next{background:var(--text);color:var(--void);box-shadow:none}.lesson__btn--next:hover:not(:disabled){box-shadow:0 0 0 1px var(--cyan), 0 0 22px 2px var(--cyan-glow)}.lesson__btn:disabled{opacity:.35;cursor:default}.lesson__count{color:var(--muted);white-space:nowrap;font-size:.625rem}.ex{gap:.6rem;display:grid}.ex__panel{box-shadow:inset 0 0 0 1px var(--line-2);color:var(--text-2);background:#ffffff05;border-radius:.95rem;padding:.85rem .95rem;font-size:.9375rem;line-height:1.5}.ex__panel--after{color:var(--text);background:#62cdf90f;box-shadow:inset 0 0 0 1px #62cdf98c}.ex__lbl{color:var(--muted);margin-bottom:.35rem;font-size:.5625rem;display:block}.ex__panel--after .ex__lbl{color:var(--cyan)}.ex__note{color:var(--muted);font-size:.8125rem;line-height:1.45}.quiz{border:0;gap:.55rem;min-width:0;margin:0;padding:0;display:grid}.quiz__q{margin-bottom:.6rem;padding:0;font-size:clamp(1.375rem,6vw,1.625rem)}.quiz__opt{box-shadow:inset 0 0 0 1px var(--line-2);cursor:pointer;transition:box-shadow .4s var(--ease-state), background-color .4s var(--ease-state);background:#ffffff05;border-radius:.85rem;align-items:center;gap:.7rem;padding:.85rem .9rem;font-size:.9375rem;line-height:1.35;display:flex;position:relative}.quiz__opt:hover{box-shadow:inset 0 0 0 1px #62cdf966}.quiz__opt input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.quiz__opt:has(input:focus-visible){outline:2px solid var(--cyan);outline-offset:2px}.quiz__key{width:1.5rem;height:1.5rem;box-shadow:inset 0 0 0 1px var(--line-2);letter-spacing:0;border-radius:50%;flex:none;place-items:center;font-size:.625rem;display:grid}.quiz__opt.is-right{box-shadow:inset 0 0 0 1px var(--cyan);background:#62cdf91a}.quiz__opt.is-right .quiz__key{background:var(--cyan);color:var(--void);box-shadow:none}.quiz__opt.is-wrong{background:#ffffff0a;box-shadow:inset 0 0 0 1px #ffffff59}.quiz__opt.is-wrong .quiz__key{background:var(--text-2);color:var(--void);box-shadow:none}.quiz__fb{min-height:2.8em;color:var(--text-2);margin-top:.2rem;font-size:.875rem;line-height:1.45}.quiz__fb.is-right{color:var(--text)}.deck{gap:.9rem;display:grid}.deck__stack{touch-action:none;perspective:900px;height:13rem;position:relative}.deck__item{background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--line-2), 0 20px 40px -24px #000000e6;cursor:grab;transition:transform .55s var(--ease-out), opacity .3s var(--ease-state), box-shadow .4s var(--ease-state), background-color .4s var(--ease-state);will-change:transform;border-radius:1.25rem;outline:none;align-content:center;padding:1.15rem 1.25rem;display:grid;position:absolute;inset:0}.deck__item:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.deck__item.is-dragging{cursor:grabbing;transition:none}.deck__item.lean-left{box-shadow:inset 0 0 0 1px #ffffff73}.deck__item.lean-right{box-shadow:inset 0 0 0 1px var(--cyan), 0 0 26px -6px var(--cyan-glow)}.deck__item.is-right{background:linear-gradient(160deg, #62cdf924, #62cdf905 60%), var(--panel-2);box-shadow:inset 0 0 0 1px var(--cyan), 0 0 34px -8px var(--cyan-glow)}.deck__item.is-wrong{box-shadow:inset 0 0 0 1px #fff6}.deck__item.is-enter{animation:deck-enter .45s var(--ease-out) backwards}.deck__item.is-flip{animation:deck-flip .46s var(--ease-state) backwards}@keyframes deck-enter{0%{opacity:.4;transform:translateY(10px)scale(.95)}to{opacity:1;transform:none}}@keyframes deck-flip{0%{transform:rotateY(0)}50%{transform:rotateY(90deg)}to{transform:rotateY(0)}}.deck__face{justify-items:start;gap:.6rem;display:grid}.deck__text{letter-spacing:-.02em;font-size:1.1875rem;font-weight:600;line-height:1.3}.deck__verdict{letter-spacing:-.035em;align-items:center;gap:.6rem;font-size:1.5rem;font-weight:720;line-height:1;display:inline-flex}.is-right .deck__verdict{color:var(--cyan)}.deck__disc{border-radius:50%;flex:none;place-items:center;width:1.75rem;height:1.75rem;display:grid}.is-right .deck__disc{background:var(--cyan);color:var(--void);box-shadow:0 0 16px var(--cyan-glow)}.is-wrong .deck__disc{color:var(--text);box-shadow:inset 0 0 0 1.5px #fff9}.deck__why{color:var(--text-2);font-size:.9375rem;line-height:1.45}.deck__ans{color:var(--muted);letter-spacing:.18em;font-size:.5625rem}.deck__score{letter-spacing:-.035em;color:var(--text);font-size:1.75rem;font-weight:720;line-height:1.05}.deck__stamp{letter-spacing:.18em;pointer-events:none;border-radius:.45rem;padding:.3rem .55rem;font-size:.625rem;position:absolute;top:.9rem}.deck__stamp--right{color:var(--cyan);box-shadow:inset 0 0 0 1.5px var(--cyan);left:.9rem}.deck__stamp--left{color:var(--text);right:.9rem;box-shadow:inset 0 0 0 1.5px #fff9}.deck__under{background:var(--panel);box-shadow:inset 0 0 0 1px var(--line-2);opacity:.6;border-radius:1.25rem;position:absolute;inset:.5rem .75rem -.5rem}.deck__choices{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.deck__choice{min-height:2.9rem;color:var(--text);box-shadow:inset 0 0 0 1px var(--line-2);cursor:pointer;transition:box-shadow .3s var(--ease-state);background:#ffffff05;border:0;border-radius:999px;font-size:.875rem;font-weight:560}.deck__choice:hover{box-shadow:inset 0 0 0 1px var(--cyan)}.deck__hint{min-height:2.9rem;color:var(--cyan);letter-spacing:.18em;animation:deck-hint 2.4s var(--ease-state) infinite;justify-content:center;align-items:center;gap:.7rem;font-size:.5625rem;display:flex}@keyframes deck-hint{0%,to{opacity:.55}50%{opacity:1}}.deck__dots{justify-content:center;gap:.45rem;display:flex}.deck__dot{width:.5rem;height:.5rem;transition:background-color .4s var(--ease-state), box-shadow .4s var(--ease-state);background:#ffffff24;border-radius:50%}.deck__dot.is-now{box-shadow:inset 0 0 0 1.5px var(--cyan);background:0 0}.deck__dot.is-right{background:var(--cyan);box-shadow:0 0 8px var(--cyan-glow)}.deck__dot.is-wrong{background:0 0;box-shadow:inset 0 0 0 1.5px #ffffff8c}.try__prompt{color:var(--text);-webkit-user-select:text;user-select:text;background:#ffffff05;border-radius:.95rem;padding:.95rem 1rem;font-size:.9375rem;line-height:1.5;position:relative;box-shadow:inset 0 0 0 1px #62cdf959}.try__copy{min-height:2.5rem;color:var(--text);box-shadow:inset 0 0 0 1px var(--line-2);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-self:start;align-items:center;gap:.5rem;padding-inline:1rem;font-size:.8125rem;font-weight:560;transition:box-shadow .3s;display:inline-flex}.try__copy:hover{box-shadow:inset 0 0 0 1px var(--cyan)}.recap{gap:.85rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}.recap li{color:var(--text);grid-template-columns:auto 1fr;align-items:start;gap:.85rem;font-size:1rem;line-height:1.45;display:grid}.recap .spark{margin-top:.55rem}@media (prefers-reduced-motion:reduce){.lesson__track,.deck__item,.lite-bar{transition:none!important}.deck__item,.deck__hint{animation:none!important}}.art{width:100%;position:relative}.art svg{width:100%;height:100%;display:block;overflow:visible}.art--hero{height:clamp(132px,31vh,250px)}.art--mid{height:clamp(96px,20vh,172px)}.art--banner{height:clamp(70px,12.5vh,112px)}.art--thumb,.art--cover{aspect-ratio:16/10}.art .art-mono{font-family:var(--font-geist-mono), ui-monospace, monospace}.art .art-sans{font-family:var(--font-geist), system-ui, sans-serif}.lesson__card>.art{width:calc(100% + 2.4rem);margin-inline:-1.2rem}.lesson__card:not([aria-hidden]) .art{animation:art-in .9s var(--ease-out) both}@keyframes art-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}.lesson__card[aria-hidden] .art *{animation-play-state:paused}@keyframes art-pulse{0%,to{opacity:.6;transform:scale(.94)}50%{opacity:1;transform:scale(1.05)}}.a-pulse{transform-box:fill-box;transform-origin:50%;animation:art-pulse 3.2s var(--ease-state) infinite}@keyframes art-twinkle{0%,to{opacity:.12}50%{opacity:.95}}.a-twinkle{animation:3.8s ease-in-out infinite art-twinkle}@keyframes art-flow{to{stroke-dashoffset:-32px}}.a-flow{stroke-dasharray:2 6;animation:1.6s linear infinite art-flow}@keyframes art-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.a-float{animation:art-float 5.5s var(--ease-state) infinite}@keyframes art-spin{to{transform:rotate(360deg)}}.a-spin{transform-box:fill-box;transform-origin:50%;animation:22s linear infinite art-spin}.a-spin-rev{transform-box:fill-box;transform-origin:50%;animation:28s linear infinite reverse art-spin}@keyframes art-blink{0%,49%{opacity:1}50%,to{opacity:0}}.a-blink{animation:1.1s step-end infinite art-blink}@keyframes art-scan{0%{opacity:0;transform:translateY(-36px)}20%,80%{opacity:1}to{opacity:0;transform:translateY(36px)}}.a-scan{animation:art-scan 3.4s var(--ease-state) infinite}@keyframes art-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.a-rise{animation:art-rise .9s var(--ease-out) both}@keyframes art-draw{0%{stroke-dashoffset:var(--len,300)}to{stroke-dashoffset:0}}.a-draw{stroke-dasharray:var(--len,300);animation:art-draw 1.8s var(--ease-out) both}@keyframes art-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.a-grow{transform-box:fill-box;transform-origin:0;animation:art-grow 1.1s var(--ease-out) both}@media (prefers-reduced-motion:reduce){.art,.art *{animation:none!important}}}
