.intro[data-astro-cid-d4nisn5p]{text-align:center;max-width:36rem;margin:0 auto 52px}.intro[data-astro-cid-d4nisn5p] p[data-astro-cid-d4nisn5p]{color:var(--stone-600);margin-top:16px;font-size:18px;line-height:1.55}.table-wrap[data-astro-cid-d4nisn5p]{max-width:1080px;margin:0 auto}table[data-astro-cid-d4nisn5p]{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%}th[data-astro-cid-d4nisn5p],td[data-astro-cid-d4nisn5p]{vertical-align:top;text-align:left;padding:18px 22px}thead[data-astro-cid-d4nisn5p] th[data-astro-cid-d4nisn5p]{letter-spacing:-.02em;color:var(--stone-500);padding-top:22px;padding-bottom:16px;font-size:16px;font-weight:600}thead[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p],tbody[data-astro-cid-d4nisn5p] th[data-astro-cid-d4nisn5p]{width:17%}thead[data-astro-cid-d4nisn5p] th[data-astro-cid-d4nisn5p].us{width:32%}tbody[data-astro-cid-d4nisn5p] th[data-astro-cid-d4nisn5p]{color:var(--stone-900);font-size:15px;font-weight:600}tbody[data-astro-cid-d4nisn5p] th[data-astro-cid-d4nisn5p],tbody[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p]{border-top:1px solid var(--stone-200)}tbody[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p]{color:var(--stone-500);font-size:15px;line-height:1.5}.text[data-astro-cid-d4nisn5p]{display:block}.mark[data-astro-cid-d4nisn5p]+.text[data-astro-cid-d4nisn5p]{padding-left:30px}.mark[data-astro-cid-d4nisn5p]{float:left;width:20px;height:20px;color:var(--correct);background:#16a34a1f;border-radius:50%;place-items:center;margin-top:1px;display:grid}.us[data-astro-cid-d4nisn5p]{border-left:1px solid var(--tutor-200);border-right:1px solid var(--tutor-200);background:#fff}thead[data-astro-cid-d4nisn5p] .us[data-astro-cid-d4nisn5p]{border-top:1px solid var(--tutor-200);color:var(--tutor-dark);border-radius:16px 16px 0 0;font-size:18px}tbody[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p].us{color:var(--stone-800);border-top-color:var(--tutor-100);font-weight:500}tfoot[data-astro-cid-d4nisn5p] .us[data-astro-cid-d4nisn5p]{border-bottom:1px solid var(--tutor-200);border-radius:0 0 16px 16px;padding:8px 22px 24px;box-shadow:0 30px 50px -36px #155dfc80}tfoot[data-astro-cid-d4nisn5p] .btn[data-astro-cid-d4nisn5p]{justify-content:center;width:100%}tfoot[data-astro-cid-d4nisn5p] small[data-astro-cid-d4nisn5p]{text-align:center;color:var(--stone-500);margin-top:10px;font-size:13px;display:block}@media (width<=760px){.intro[data-astro-cid-d4nisn5p]{margin-bottom:32px}.intro[data-astro-cid-d4nisn5p] p[data-astro-cid-d4nisn5p]{font-size:16.5px}table[data-astro-cid-d4nisn5p],tbody[data-astro-cid-d4nisn5p],tfoot[data-astro-cid-d4nisn5p],tr[data-astro-cid-d4nisn5p],th[data-astro-cid-d4nisn5p],td[data-astro-cid-d4nisn5p]{display:block}thead[data-astro-cid-d4nisn5p]{display:none}tbody[data-astro-cid-d4nisn5p] tr[data-astro-cid-d4nisn5p]{border:1px solid var(--stone-200);background:#fff;border-radius:14px;margin-bottom:14px;padding:18px 18px 6px}tbody[data-astro-cid-d4nisn5p] th[data-astro-cid-d4nisn5p],tbody[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p]{border:0;width:auto;padding:0}tbody[data-astro-cid-d4nisn5p] th[data-astro-cid-d4nisn5p]{margin-bottom:12px;font-size:16px}tbody[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p]{margin-bottom:12px;font-size:14.5px}tbody[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p]:before{content:attr(data-label);letter-spacing:.04em;text-transform:uppercase;color:var(--stone-400);margin-bottom:3px;font-size:11.5px;font-weight:600;display:block}tbody[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p].us{border:1px solid var(--tutor-200);background:var(--tutor-50);border-radius:10px;margin:0 -8px 12px;padding:10px}tbody[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p].us:before{color:var(--tutor-dark)}tfoot[data-astro-cid-d4nisn5p] td[data-astro-cid-d4nisn5p]:not(.us){display:none}tfoot[data-astro-cid-d4nisn5p] .us[data-astro-cid-d4nisn5p]{box-shadow:none;background:0 0;border:0;padding:6px 0 0}}.art[data-astro-cid-7xvgqs2m]{width:100%;position:relative}.frame[data-astro-cid-7xvgqs2m]{border:1px solid var(--stone-200);background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px -24px #1c191738}.strip[data-astro-cid-7xvgqs2m]{border-bottom:1px solid var(--stone-200);align-items:center;gap:4px;height:34px;padding:0 8px;display:flex;overflow:hidden}.tab[data-astro-cid-7xvgqs2m]{height:24px;color:var(--stone-500);white-space:nowrap;border-radius:7px;align-items:center;gap:6px;padding:0 9px;font-size:11.5px;display:inline-flex}.tab[data-astro-cid-7xvgqs2m].on{background:var(--stone-100);color:var(--stone-900);font-weight:500}.tab[data-astro-cid-7xvgqs2m] .x{color:var(--stone-400)}.add[data-astro-cid-7xvgqs2m]{width:22px;height:22px;color:var(--stone-400);place-items:center;display:grid}.board[data-astro-cid-7xvgqs2m]{aspect-ratio:560/380;background-color:var(--board);background-image:radial-gradient(circle at 1px 1px, var(--dot) 1px, transparent 1.3px);background-size:20px 20px;position:relative}.board[data-astro-cid-7xvgqs2m]>svg{width:100%;height:100%;position:absolute;inset:0}.art svg .hw{font-family:var(--font-hand);fill:var(--stone-900);font-size:30px;font-weight:500}.art svg .hw.t{fill:var(--tutor);font-size:26px;font-weight:700}.art svg .ink{fill:none;stroke:var(--stone-900);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.art svg .mk{fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.art svg .mk.tutor{stroke:var(--tutor)}.art svg .mk.bad{stroke:var(--mistake)}.art svg .mk.good{stroke:var(--correct)}.art svg .mk.warn{stroke:var(--attention)}.art svg .typed{font-family:var(--font-sans);fill:var(--stone-600);font-size:14px}.float-card{z-index:2;border:1px solid var(--stone-200);color:var(--stone-800);background:#fff;border-radius:16px;padding:14px 16px;font-size:13.5px;line-height:1.55;position:absolute;box-shadow:0 18px 40px -14px #1c191747}.float-card strong{color:var(--stone-900);font-weight:600}.float-chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.float-chips span{border:1px solid var(--tutor-200);background:var(--tutor-50);color:var(--tutor-dark);border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:11.5px;display:inline-flex}.cursor-pill{z-index:2;align-items:center;gap:6px;display:flex;position:absolute}.cursor-pill i{background:var(--tutor);border-radius:50%;width:11px;height:11px;box-shadow:0 0 0 4px #155dfc33}.cursor-pill b{background:var(--tutor);color:#fff;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:500}@media (width<=640px){.float-card{padding:10px 12px;font-size:12px}}.diagram[data-astro-cid-gfyws7fi] path[data-astro-cid-gfyws7fi]{fill:none;stroke:var(--stone-800);stroke-width:2.4px;stroke-linecap:round}.diagram[data-astro-cid-gfyws7fi] .arc[data-astro-cid-gfyws7fi]{stroke:var(--tutor);stroke-width:2.6px}.lab[data-astro-cid-gfyws7fi]{font-family:var(--font-sans);fill:var(--stone-700);font-size:16px;font-weight:600}.tutor-at[data-astro-cid-gfyws7fi]{top:30%;left:57%}.rule[data-astro-cid-gfyws7fi]{flex-direction:column;gap:2px;display:flex;bottom:-26px;left:-28px}.rule-label[data-astro-cid-gfyws7fi]{letter-spacing:.08em;text-transform:uppercase;color:var(--stone-400);font-size:11px}.rule-eq[data-astro-cid-gfyws7fi]{color:var(--stone-900);font-family:Georgia,serif;font-size:17px;font-style:italic}@media (width<=1100px){.rule[data-astro-cid-gfyws7fi]{left:12px}}@media (width<=640px){.rule-eq[data-astro-cid-gfyws7fi]{font-size:13px}}.pen-path[data-astro-cid-gfyws7fi]{opacity:0;top:80%;left:16%}.in-view .pen-path[data-astro-cid-gfyws7fi]{animation:9s both diagram-pen}@keyframes diagram-pen{0%,2.5%{opacity:0;top:80%;left:16%}3.3%{opacity:1;top:80%;left:16%}8.9%{top:80%;left:77%}13.9%{top:35%;left:55%}18.9%{top:80%;left:16%}22%{top:76%;left:71%}26%{top:77%;left:44%}31%{top:54%;left:71%}36%{top:77%;left:64%}40%,46%{opacity:1;top:53%;left:31%}50%,to{opacity:0;top:53%;left:31%}}.hint-card[data-astro-cid-pjv3mdgw]{flex-direction:column;gap:10px;width:290px;display:flex;top:92px;right:-30px}.h-row[data-astro-cid-pjv3mdgw]{justify-content:flex-end;display:flex}.h-row[data-astro-cid-pjv3mdgw] span[data-astro-cid-pjv3mdgw]{background:var(--stone-100);color:var(--stone-900);border-radius:14px 14px 5px;padding:6px 12px}.qas[data-astro-cid-pjv3mdgw]{border-top:1px solid var(--stone-200);flex-wrap:wrap;gap:5px;padding-top:10px;display:flex}.qas[data-astro-cid-pjv3mdgw] span[data-astro-cid-pjv3mdgw]{border:1px solid var(--stone-200);color:var(--stone-600);border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:11.5px;display:inline-flex}.qas[data-astro-cid-pjv3mdgw] .on[data-astro-cid-pjv3mdgw]{border-color:var(--stone-900);color:var(--stone-900)}@media (width<=1100px){.hint-card[data-astro-cid-pjv3mdgw]{right:12px}}@media (width<=640px){.hint-card[data-astro-cid-pjv3mdgw]{width:220px;font-size:11.5px;top:40px}}.in-view .qas[data-astro-cid-pjv3mdgw] .stuck[data-astro-cid-pjv3mdgw]{animation:9.5s both tap-stuck}@keyframes tap-stuck{0%,12%{border-color:var(--stone-200);color:var(--stone-600);background:0 0;transform:none}13%{background:var(--stone-100);border-color:var(--stone-400);color:var(--stone-900);transform:scale(.94)}15%,to{border-color:var(--stone-200);color:var(--stone-600);background:0 0;transform:none}}.mark-card[data-astro-cid-g6df5c4a]{width:272px;top:58px;right:-28px}@media (width<=1100px){.mark-card[data-astro-cid-g6df5c4a]{right:12px}}@media (width<=640px){.mark-card[data-astro-cid-g6df5c4a]{width:200px;top:44px}}.pen-path[data-astro-cid-g6df5c4a]{opacity:0;top:40%;left:30%}.in-view .pen-path[data-astro-cid-g6df5c4a]{animation:10.5s both mark-pen}@keyframes mark-pen{0%,41%{opacity:0;top:40%;left:30%}43%{opacity:1;top:40%;left:31%}46%{top:51%;left:27%}50%{top:72%;left:23%}56%{top:72%;left:31%}60%{top:82%;left:40%}64%,72%{opacity:1;top:85%;left:60%}76%,to{opacity:0;top:85%;left:60%}}.art[data-astro-cid-v2ktbtzf] .good-t{fill:var(--correct);font-weight:700}.art[data-astro-cid-v2ktbtzf] .bad-t{fill:var(--mistake);font-weight:700}.sticky[data-astro-cid-v2ktbtzf]{z-index:2;width:170px;font-family:var(--font-hand);color:var(--stone-900);background:#fde68a;padding:18px 16px 22px;font-size:23px;font-weight:700;line-height:1.15;position:absolute;bottom:34px;right:-26px;rotate:-4deg;box-shadow:0 16px 30px -12px #78500059}.score[data-astro-cid-v2ktbtzf]{z-index:2;border:3px solid var(--correct);width:68px;height:68px;font-family:var(--font-hand);color:var(--correct);background:#fff;border-radius:50%;place-items:center;font-size:28px;font-weight:700;display:grid;position:absolute;bottom:24px;left:24px;rotate:-8deg}@media (width<=1100px){.sticky[data-astro-cid-v2ktbtzf]{right:10px}}@media (width<=640px){.sticky[data-astro-cid-v2ktbtzf]{width:120px;padding:12px 10px 14px;font-size:17px}.score[data-astro-cid-v2ktbtzf]{width:48px;height:48px;font-size:20px;left:10px}}.tools[data-astro-cid-raid2q5g]{z-index:2;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:-44px;left:50%;transform:translate(-50%)}.tray[data-astro-cid-raid2q5g],.bar[data-astro-cid-raid2q5g]{border:1px solid var(--stone-200);white-space:nowrap;background:#fffffff5;border-radius:14px;align-items:center;gap:2px;display:flex;box-shadow:0 12px 30px -12px #1c191740}.tray[data-astro-cid-raid2q5g]{padding:4px 6px}.bar[data-astro-cid-raid2q5g]{color:var(--stone-600);padding:4px}.rows[data-astro-cid-raid2q5g]{display:grid}.row[data-astro-cid-raid2q5g]{grid-area:1/1;gap:2px;display:flex}.hl-row[data-astro-cid-raid2q5g]{visibility:hidden}.sw[data-astro-cid-raid2q5g],.sz[data-astro-cid-raid2q5g],.tb[data-astro-cid-raid2q5g]{border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.sw[data-astro-cid-raid2q5g] i[data-astro-cid-raid2q5g]{border-radius:50%;width:17px;height:17px}.sw[data-astro-cid-raid2q5g].on i[data-astro-cid-raid2q5g]{box-shadow:0 0 0 2px #fff, 0 0 0 3.5px var(--stone-900)}.sz[data-astro-cid-raid2q5g] i[data-astro-cid-raid2q5g]{background:var(--stone-800);border-radius:50%}.sz[data-astro-cid-raid2q5g].on{background:var(--stone-100)}.sep[data-astro-cid-raid2q5g]{background:var(--stone-200);width:1px;height:18px;margin:0 3px}.chev[data-astro-cid-raid2q5g]{width:12px;color:var(--stone-400);place-items:center;display:grid;transform:rotate(180deg)}.tb[data-astro-cid-raid2q5g].pen{background:var(--stone-900);color:#fff}.in-view .tb[data-astro-cid-raid2q5g].pen{animation:10s both tool-pen}.in-view .tb[data-astro-cid-raid2q5g].hl{animation:10s both tool-hl}.in-view .tb[data-astro-cid-raid2q5g].eq{animation:10s both tool-eq}.in-view .ink-row[data-astro-cid-raid2q5g]{animation:10s both row-ink}.in-view .hl-row[data-astro-cid-raid2q5g]{animation:10s both row-hl}@keyframes tool-pen{0%,35.9%{background:var(--stone-900);color:#fff}36%,58.9%{color:var(--stone-600);background:0 0}59%,to{background:var(--stone-900);color:#fff}}@keyframes tool-hl{0%,35.9%{color:var(--stone-600);background:0 0}36%,47.9%{background:var(--stone-900);color:#fff}48%,to{color:var(--stone-600);background:0 0}}@keyframes tool-eq{0%,47.9%{color:var(--stone-600);background:0 0}48%,58.9%{background:var(--stone-900);color:#fff}59%,to{color:var(--stone-600);background:0 0}}@keyframes row-ink{0%,35.9%{visibility:visible}36%,47.9%{visibility:hidden}48%,to{visibility:visible}}@keyframes row-hl{0%,35.9%{visibility:hidden}36%,47.9%{visibility:visible}48%,to{visibility:hidden}}@media (width<=640px){.tools[data-astro-cid-raid2q5g]{bottom:-52px;transform:translate(-50%)scale(.72)}}.rows[data-astro-cid-cognygiv]{flex-direction:column;gap:112px;max-width:1000px;margin:0 auto;display:flex}.row[data-astro-cid-cognygiv]{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;gap:72px;display:grid}.row[data-astro-cid-cognygiv].flip .text[data-astro-cid-cognygiv]{order:2}.text[data-astro-cid-cognygiv]{max-width:380px}.text[data-astro-cid-cognygiv] p[data-astro-cid-cognygiv]{color:var(--stone-500);margin-top:18px;font-size:16.5px;line-height:1.6}.media[data-astro-cid-cognygiv]{transition-delay:.12s}@media (width<=900px){.rows[data-astro-cid-cognygiv]{gap:80px}.row[data-astro-cid-cognygiv]{grid-template-columns:1fr;gap:40px}.row[data-astro-cid-cognygiv].flip .text[data-astro-cid-cognygiv]{order:0}.text[data-astro-cid-cognygiv]{max-width:34rem}.text[data-astro-cid-cognygiv] p[data-astro-cid-cognygiv]{margin-top:14px;font-size:16px}}.demo{--chat-w:316px;max-width:1100px;margin:0 auto;position:relative}.demo .dtabs{grid-template-columns:repeat(4,1fr);gap:2px;margin:0 auto 14px;display:grid}.demo .dtab{border:1px solid var(--stone-200);height:46px;color:var(--stone-500);letter-spacing:-.01em;background:#fff;border-bottom:0;border-radius:14px 14px 0 0;font-size:15.5px;font-weight:500;transition:background-color .2s,color .2s;position:relative}.demo .dtab:hover{color:var(--stone-900)}.demo .dtab[aria-selected=true]{background:var(--stone-200);color:var(--stone-900);font-weight:600}.demo .dtab:after{content:"";background:var(--stone-200);height:1px;position:absolute;bottom:0;left:0;right:0}.demo .dtab .bar{z-index:1;height:4px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.demo .dtab .bar>i{background:var(--stone-900);width:0;height:100%;display:block}.demo .window{grid-template-columns:var(--chat-w) 1fr;border:1px solid var(--stone-200);box-shadow:var(--shadow-window);isolation:isolate;background:#fff;border-radius:16px;display:grid;position:relative;overflow:hidden}.demo .chat{border-right:1px solid var(--stone-200);min-height:0;position:relative}.demo .chat-in{background:#fff;flex-direction:column;display:flex;position:absolute;inset:0}.demo .chat-head{border-bottom:1px solid var(--stone-200);flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 14px 0 16px;display:flex}.demo .brand{letter-spacing:-.02em;font-size:15px;font-weight:600}.demo .head-icons{color:var(--stone-500);gap:16px;display:flex}.demo .msgs{scrollbar-width:none;flex:1;min-height:0;padding:20px 16px;position:relative;overflow-y:auto}.demo .msgs::-webkit-scrollbar{display:none}.demo .empty{text-align:center;height:100%;color:var(--stone-500);flex-direction:column;justify-content:center;align-items:center;padding:0 16px;font-size:14px;line-height:1.6;display:none}.demo .empty-title{color:var(--stone-900);margin-bottom:6px;font-size:15px;font-weight:500}.demo .msgs:not(:has(.thread.active .m.on)) .empty{display:flex}.demo .thread{flex-direction:column;gap:20px;display:none}.demo .thread.active{display:flex}.demo .m{color:var(--stone-800);font-size:14px;line-height:1.65;display:none}.demo .m.on{animation:.35s cubic-bezier(.2,.7,.2,1) msg-in;display:block}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}}.demo .m.s.on{justify-content:flex-end;display:flex}.demo .bub{background:var(--stone-100);max-width:85%;color:var(--stone-900);border-radius:16px 16px 6px;padding:8px 14px}.demo .m.p.on{color:var(--stone-400);align-items:center;gap:8px;display:flex}.demo .dots{gap:4px;display:flex}.demo .dots i{background:var(--tutor-400);border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite dot}.demo .dots i:nth-child(2){animation-delay:.15s}.demo .dots i:nth-child(3){animation-delay:.3s}@keyframes dot{50%{opacity:.35}}.demo .tt p+p{margin-top:.6em}.demo .tt strong{color:var(--stone-900);font-weight:600}.demo .tt .wd{display:none}.demo .tt .wd.on{display:inline}.demo .chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:none}.demo .chips.on{animation:.35s ease-out msg-in;display:flex}.demo .chip{border:1px solid var(--tutor-200);background:var(--tutor-50);color:var(--tutor-dark);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;line-height:18px;display:inline-flex}.demo .composer{border-top:1px solid var(--stone-200);background:#fff;flex-shrink:0;padding:12px}.demo .qas{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.demo .qa{border:1px solid var(--stone-200);color:var(--stone-600);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;line-height:18px;transition:background-color .15s,border-color .15s,transform .15s;display:inline-flex}.demo .qa.pressed,.demo .send.pressed{background:var(--stone-100);border-color:var(--stone-300);transform:scale(.95)}.demo .input{border:1px solid var(--stone-200);border-radius:16px;align-items:center;gap:8px;padding:6px 6px 6px 14px;transition:border-color .15s;display:flex}.demo .input.typing{border-color:var(--stone-400)}.demo .field{white-space:nowrap;flex:1;align-items:center;min-width:0;height:32px;font-size:14px;display:flex;position:relative;overflow:hidden}.demo .ph{color:var(--stone-400);position:absolute;left:0}.demo .ctext:not(:empty)~.ph{display:none}.demo .caret{background:var(--stone-900);width:1.5px;height:17px;margin-left:1px;animation:1s step-end infinite caret;display:none}.demo .input.typing .caret{display:block}@keyframes caret{50%{opacity:0}}.demo .send{background:var(--stone-200);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;transition:background-color .15s,transform .15s;display:grid}.demo .input.typing .send,.demo .send.pressed{background:var(--stone-900)}.demo .main{flex-direction:column;min-width:0;display:flex}.demo .apptabs{border-bottom:1px solid var(--stone-200);background:#fff;flex-shrink:0;align-items:center;gap:4px;height:36px;padding:0 8px;display:flex;overflow:hidden}.demo .apptab{height:26px;color:var(--stone-500);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:12.5px;transition:background-color .2s,color .2s;display:inline-flex}.demo .apptab.active{background:var(--stone-100);color:var(--stone-900);font-weight:500}.demo .apptab-add{width:26px;height:26px;color:var(--stone-400);place-items:center;display:grid}.demo .board{--s:1;height:calc(600px * var(--s));background-color:var(--board);position:relative;overflow:hidden}.demo .canvas{width:820px;height:600px;transform:scale(var(--s));transform-origin:0 0;background-image:radial-gradient(circle at 1px 1px, var(--dot) 1px, transparent 1.3px);background-size:24px 24px;position:absolute;top:0;left:0}.demo .scene{opacity:0;visibility:hidden;transition:opacity .35s,visibility 0s .35s;position:absolute;inset:0}.demo .scene.active{opacity:1;visibility:visible;transition:opacity .35s}.demo .layer{pointer-events:none;width:820px;height:600px;position:absolute;inset:0;overflow:visible}.demo .student-ink path{fill:none;stroke:var(--stone-900);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.demo .typed{color:var(--stone-700);white-space:nowrap;margin:0;font-size:15px;position:absolute}.demo .ink{font-family:var(--font-hand);color:var(--stone-900);white-space:nowrap;font-size:34px;font-weight:500;line-height:1.15;display:inline-block;position:absolute}.demo .ink.sm{font-size:25px}.demo .ink.md{font-size:27px}.demo .ink.tutor{color:var(--tutor);font-size:29px;font-weight:700}.demo .ink.md.tutor{font-size:26px}.demo .ink.mark{color:var(--correct);font-weight:700}.demo .ink.mark.bad{color:var(--mistake)}.demo .ink .w{clip-path:inset(-12px 100% -12px -12px);display:inline-block}.demo .ink.on .w{animation:write var(--dur,1s) linear forwards}.demo .ink.instant .w{clip-path:none;animation:none}@keyframes write{to{clip-path:inset(-12px)}}.demo .nib{opacity:0;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c1917' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.17 6.81a1 1 0 0 0-3.99-3.99L3.84 16.17a2 2 0 0 0-.5.83l-1.32 4.35a.5.5 0 0 0 .62.62l4.35-1.32a2 2 0 0 0 .83-.5z' fill='%23fff'/%3E%3C/svg%3E") 50%/contain no-repeat;width:22px;height:22px;position:absolute;top:58%;left:0;transform:translate(-2px,-90%)}.demo .ink.on:not(.instant) .nib{animation:nib var(--dur,1s) linear forwards}@keyframes nib{0%{opacity:1;left:0}92%{opacity:1}to{opacity:0;left:100%}}.demo .frac{vertical-align:middle;flex-direction:column;align-items:center;margin:0 2px;font-size:.78em;line-height:1.05;display:inline-flex}.demo .frac>:first-child{border-bottom:2px solid;border-radius:1px;padding:0 5px 1px}.demo .mk{fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.demo .mk.tutor{stroke:var(--tutor)}.demo .mk.mistake{stroke:var(--mistake)}.demo .mk.correct{stroke:var(--correct)}.demo .mk.attention{stroke:var(--attention);stroke-width:3.5px}.demo .focus-pulse{animation:.9s ease-out focus-pulse}@keyframes focus-pulse{35%{filter:drop-shadow(0 0 7px #155dfc99)}}.demo .axes path{fill:none;stroke:var(--stone-700);stroke-width:1.8px;stroke-linecap:round}.demo .axes text{font-family:var(--font-sans);fill:var(--stone-500);font-size:13px}.demo .axes .axis-name{fill:var(--stone-700);font-size:15px;font-style:italic}.demo .midline path{stroke:var(--attention);stroke-width:2px;stroke-dasharray:7 7}.demo .midline text,.demo .point text{font-family:var(--font-hand);font-size:24px;font-weight:700}.demo .midline text{fill:#d97706}.demo .curve{fill:none;stroke:var(--tutor);stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round;--draw-dur:1.5s}.demo .point circle,.demo .point text{fill:var(--tutor)}.demo .root circle{fill:none;stroke:var(--correct);stroke-width:3px}.demo .paper{border:1px solid var(--stone-200);color:#111;background:#fff;width:540px;height:620px;font-family:Arial,Helvetica,sans-serif;position:absolute;top:64px;left:140px;box-shadow:0 10px 30px -12px #1c191733}.demo .paper .q{align-items:center;gap:14px;font-size:14.5px;display:flex;position:absolute;top:22px;left:20px}.demo .paper .qn{color:#fff;background:#111;place-items:center;width:26px;height:26px;font-size:14px;display:grid}.demo .paper .part{font-size:14.5px;position:absolute;left:60px;right:22px}.demo .marks-avail{font-size:13px;font-weight:700;position:absolute;right:0}.demo .paper .lines{background-image:radial-gradient(circle at 1px 1px,#b9b4ae .9px,#0000 1.2px);background-position:0 30px;background-size:5px 36px;position:absolute;left:58px;right:110px}.demo .panel{border:1px solid var(--stone-200);box-shadow:var(--shadow-panel);color:var(--stone-600);background:#fffffff2;border-radius:12px;align-items:center;gap:2px;padding:4px;display:flex;position:absolute}.demo .panel.undo{top:12px;left:12px}.demo .panel.menu{top:12px;right:12px}.demo .panel.zoom{bottom:16px;right:12px}.demo .ib{border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.demo .ib.off{color:var(--stone-300)}.demo .ib.active{background:var(--stone-100);color:var(--stone-900)}.demo .pct{text-align:center;min-width:48px;color:var(--stone-600);font-size:12px;font-weight:500}.demo .panel .div,.demo .toolbar .div{background:var(--stone-200);width:1px;height:20px;margin:0 4px}.demo .toolbar{border:1px solid var(--stone-200);box-shadow:var(--shadow-panel);color:var(--stone-600);background:#fffffff2;border-radius:16px;align-items:center;gap:2px;padding:6px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.demo .tb{border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.demo .tb.active{background:var(--stone-900);color:#fff}.demo .chev{width:16px;height:36px;color:var(--stone-400);place-items:center;display:grid;transform:rotate(180deg)}.demo .looking{opacity:0;pointer-events:none;background:linear-gradient(100deg,#0000 35%,#155dfc14 50%,#0000 65%) 0 0/250% 100%;transition:opacity .3s;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #155dfc40}.demo .looking.on{opacity:1;animation:1.4s ease-in-out infinite looking-sweep}@keyframes looking-sweep{0%{background-position:120% 0}to{background-position:-120% 0}}.demo .tcursor{z-index:5;opacity:0;pointer-events:none;align-items:center;gap:6px;transition:left .55s cubic-bezier(.3,.9,.3,1),top .55s cubic-bezier(.3,.9,.3,1),opacity .2s,transform .2s;display:flex;position:absolute;top:300px;left:600px;transform:scale(.85)}.demo .tcursor.on{opacity:1;transform:none}.demo .tdot{background:var(--tutor);border-radius:50%;width:11px;height:11px;box-shadow:0 0 0 4px #155dfc33}.demo .tpill{background:var(--tutor);color:#fff;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:500}.demo .spointer{z-index:10;opacity:0;pointer-events:none;filter:drop-shadow(0 2px 3px #00000040);transition:left .6s cubic-bezier(.4,.1,.2,1),top .6s cubic-bezier(.4,.1,.2,1),opacity .25s,transform .15s;position:absolute;top:60%;left:60%}.demo .spointer.on{opacity:1}.demo .spointer.tap{transform:scale(.85)}@media (width<=860px){.demo .dtabs{scrollbar-width:none;grid-template-columns:repeat(4,max-content);justify-content:start;margin-left:-16px;margin-right:-16px;padding:0 16px;overflow-x:auto}.demo .dtabs::-webkit-scrollbar{display:none}.demo .dtab{border-radius:14px 14px 0 0;height:46px;padding:0 18px;font-size:15px}.demo .window{border-radius:14px;grid-template-columns:1fr}.demo .chat{border-right:0;border-top:1px solid var(--stone-200);order:2;height:330px}.demo .chat-head{display:none}}.demo .tt p:not(:has(.wd.on)){display:none}.demo .stylepanel{border:1px solid var(--stone-200);box-shadow:var(--shadow-panel);background:#fffffff2;border-radius:16px;align-items:center;gap:4px;padding:6px 8px;display:flex;position:absolute;bottom:74px;left:50%;transform:translate(-50%)}.demo .stylepanel .div{background:var(--stone-200);width:1px;height:20px;margin:0 4px}.demo .sw,.demo .sz{border-radius:8px;place-items:center;width:32px;height:32px;transition:background-color .2s;display:grid}.demo .sw i{border-radius:50%;width:20px;height:20px;transition:box-shadow .2s}.demo .sw.on i{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--stone-900)}.demo .sz i{background:var(--stone-800);border-radius:50%}.demo .sz.on{background:var(--stone-100)}.demo .tb{transition:background-color .2s,color .2s}.demo .lpill{border:1px solid var(--tutor-200);color:var(--tutor-dark);white-space:nowrap;background:#fffffff2;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:500;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:0 1px 2px #1c191714}.demo .lpill svg{animation:1s ease-in-out infinite dot}.demo .spen{z-index:4;opacity:0;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c1917' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.17 6.81a1 1 0 0 0-3.99-3.99L3.84 16.17a2 2 0 0 0-.5.83l-1.32 4.35a.5.5 0 0 0 .62.62l4.35-1.32a2 2 0 0 0 .83-.5z' fill='%23fff'/%3E%3C/svg%3E") 50%/contain no-repeat;width:24px;height:24px;transition:opacity .15s;position:absolute;top:0;left:0;transform:translate(-2px,-22px)}.demo .spen.on{opacity:1}.demo .typed.typing{animation:type-on var(--dur,1s) steps(var(--steps,40)) both}@keyframes type-on{0%{clip-path:inset(-6px 100% -6px -6px)}to{clip-path:inset(-6px)}}.demo .tcaret{background:var(--stone-900);opacity:0;width:1.5px;height:19px;position:absolute;top:1px;left:0}.demo .typed.typing .tcaret{animation:caret-ride var(--dur,1s) steps(var(--steps,40)) both, caret 1s steps(1) var(--dur,1s) 2}@keyframes caret-ride{0%{opacity:1;left:0}to{opacity:1;left:calc(100% - 2px)}}.demo .typed[data-type]:not(.typing){visibility:hidden}.demo .typed.done .tcaret{display:none}.hero[data-astro-cid-ge2uvauf]{padding:80px 0 24px}.copy[data-astro-cid-ge2uvauf]{text-align:center;flex-direction:column;align-items:center;margin-bottom:52px;display:flex}.display[data-astro-cid-ge2uvauf]{max-width:24ch}.lede[data-astro-cid-ge2uvauf]{max-width:36rem;margin:18px 0 28px}@media (width<=760px){.hero[data-astro-cid-ge2uvauf]{padding:40px 0 16px}.copy[data-astro-cid-ge2uvauf]{margin-bottom:32px}.lede[data-astro-cid-ge2uvauf]{margin:14px 0 22px}}.heading[data-astro-cid-swxkmlat]{max-width:24ch}.frame[data-astro-cid-swxkmlat]{border:1px solid var(--stone-300);background:#fff;grid-template-columns:1fr 1fr;max-width:1040px;margin:0 auto;display:grid;position:relative}.handle[data-astro-cid-swxkmlat]{z-index:5;border:1px solid var(--stone-400);background:#fff;width:9px;height:9px;position:absolute}.tl[data-astro-cid-swxkmlat]{top:-5px;left:-5px}.tr[data-astro-cid-swxkmlat]{top:-5px;right:-5px}.bl[data-astro-cid-swxkmlat]{bottom:-5px;left:-5px}.br[data-astro-cid-swxkmlat]{bottom:-5px;right:-5px}.item[data-astro-cid-swxkmlat]{border-bottom:1px solid var(--stone-200);position:relative}.item[data-astro-cid-swxkmlat]:last-child{border-bottom:0}.title[data-astro-cid-swxkmlat]{text-align:left;letter-spacing:-.025em;background:0 0;border:0;width:100%;padding:28px 32px 26px;font-size:clamp(1.1rem,1rem + .35vw,1.3rem);font-weight:600;line-height:1.25;display:block}.item[data-astro-cid-swxkmlat]:not(.open) .title[data-astro-cid-swxkmlat]{color:var(--stone-500)}.item[data-astro-cid-swxkmlat]:not(.open) .title[data-astro-cid-swxkmlat]:hover{color:var(--stone-900)}.body[data-astro-cid-swxkmlat]{grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.2,.7,.2,1);display:grid}.item[data-astro-cid-swxkmlat].open .body[data-astro-cid-swxkmlat]{grid-template-rows:1fr}.body-in[data-astro-cid-swxkmlat]{padding:0 32px;overflow:hidden}.body[data-astro-cid-swxkmlat] p[data-astro-cid-swxkmlat]{max-width:26rem;color:var(--stone-600);font-size:16px;line-height:1.6}.body[data-astro-cid-swxkmlat] .link-arrow[data-astro-cid-swxkmlat]{margin:24px 0 30px;font-size:15.5px}.progress[data-astro-cid-swxkmlat]{background:var(--stone-900);width:0;height:2px;position:absolute;bottom:-1px;left:0}.item[data-astro-cid-swxkmlat].open.running .progress[data-astro-cid-swxkmlat]{width:100%;transition:width var(--cycle,7s) linear}.stage[data-astro-cid-swxkmlat]{border-left:1px solid var(--stone-200);flex-direction:column;min-height:580px;display:flex;overflow:hidden}.apptabs[data-astro-cid-swxkmlat]{border-bottom:1px solid var(--stone-200);background:#fff;flex-shrink:0;align-items:center;gap:4px;height:38px;padding:0 6px 0 8px;display:flex;overflow:hidden}.apptab[data-astro-cid-swxkmlat]{height:27px;color:var(--stone-500);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:0 11px;font-size:12.5px;transition:background-color .2s,color .2s;display:inline-flex}.stage[data-astro-cid-swxkmlat][data-on="0"] [data-astro-cid-swxkmlat][data-tab="0"],.stage[data-astro-cid-swxkmlat][data-on="1"] [data-astro-cid-swxkmlat][data-tab="1"],.stage[data-astro-cid-swxkmlat][data-on="2"] [data-astro-cid-swxkmlat][data-tab="2"]{background:var(--stone-100);color:var(--stone-900);font-weight:500}[data-astro-cid-swxkmlat][data-tab="2"]{display:none}.stage[data-astro-cid-swxkmlat][data-on="2"] [data-astro-cid-swxkmlat][data-tab="2"]{animation:.35s ease-out 1.45s both tab-in;display:inline-flex}@keyframes tab-in{0%{opacity:0;max-width:0;padding:0}to{max-width:180px}}.tab-ib[data-astro-cid-swxkmlat]{width:26px;height:26px;color:var(--stone-400);flex:none;place-items:center;display:grid}.tab-ib[data-astro-cid-swxkmlat].fold{margin-left:auto}.board[data-astro-cid-swxkmlat]{background-color:var(--board);flex:1;position:relative;overflow:hidden}.pane[data-astro-cid-swxkmlat]{opacity:0;pointer-events:none;transition:opacity .45s;position:absolute;inset:0}.pane[data-astro-cid-swxkmlat].on{opacity:1}.canvas[data-astro-cid-swxkmlat]{background-image:linear-gradient(#e7e5e4 1px,#0000 1px),linear-gradient(90deg,#e7e5e4 1px,#0000 1px);background-size:24px 24px;padding:70px 28px 90px;position:absolute;inset:0}.panel[data-astro-cid-swxkmlat],.toolbar[data-astro-cid-swxkmlat]{z-index:3;border:1px solid var(--stone-200);box-shadow:var(--shadow-panel);color:var(--stone-600);background:#fffffff2;align-items:center;gap:2px;display:flex;position:absolute}.panel[data-astro-cid-swxkmlat]{border-radius:12px;padding:3px}.panel[data-astro-cid-swxkmlat].undo{top:12px;left:12px}.panel[data-astro-cid-swxkmlat].menu{top:12px;right:12px}.ib[data-astro-cid-swxkmlat]{border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.ib[data-astro-cid-swxkmlat].off{color:var(--stone-300)}.ib[data-astro-cid-swxkmlat].active{background:var(--stone-100);color:var(--stone-900)}.panel[data-astro-cid-swxkmlat] .div[data-astro-cid-swxkmlat],.toolbar[data-astro-cid-swxkmlat] .div[data-astro-cid-swxkmlat]{background:var(--stone-200);width:1px;height:20px;margin:0 3px}.toolbar[data-astro-cid-swxkmlat]{border-radius:16px;padding:5px;bottom:14px;left:50%;transform:translate(-50%)}.tb[data-astro-cid-swxkmlat]{border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.tb[data-astro-cid-swxkmlat].active{background:var(--stone-900);color:#fff}.chev[data-astro-cid-swxkmlat]{width:14px;height:34px;color:var(--stone-400);place-items:center;display:grid;transform:rotate(180deg)}.tutor-card[data-astro-cid-swxkmlat]{z-index:2;border:1px solid var(--tutor-200);max-width:340px;color:var(--stone-800);background:#fff;border-radius:14px;padding:14px 16px;font-size:14.5px;line-height:1.55;position:absolute;bottom:80px;left:24px;box-shadow:0 16px 34px -18px #155dfc73}.tutor-card[data-astro-cid-swxkmlat] b[data-astro-cid-swxkmlat]{color:var(--stone-900);font-weight:600}.tutor-card[data-astro-cid-swxkmlat] sub[data-astro-cid-swxkmlat]{font-size:.7em}.typed[data-astro-cid-swxkmlat]{color:var(--stone-600);font-size:13.5px}.lines[data-astro-cid-swxkmlat]{color:var(--stone-900);flex-direction:column;align-items:flex-start;font-size:28px;line-height:1.38;display:flex}.lines[data-astro-cid-swxkmlat]>[data-astro-cid-swxkmlat]{white-space:nowrap}.lines[data-astro-cid-swxkmlat] em[data-astro-cid-swxkmlat]{font-style:normal}.ring[data-astro-cid-swxkmlat],.spot[data-astro-cid-swxkmlat]{position:relative}.ring[data-astro-cid-swxkmlat]>svg[data-astro-cid-swxkmlat],.spot[data-astro-cid-swxkmlat]>svg[data-astro-cid-swxkmlat]{width:calc(100% + 20px);height:calc(100% + 4px);position:absolute;top:-2px;left:-10px;overflow:visible}.ring[data-astro-cid-swxkmlat] path[data-astro-cid-swxkmlat],.spot[data-astro-cid-swxkmlat]>svg[data-astro-cid-swxkmlat] path[data-astro-cid-swxkmlat]{fill:none;stroke:var(--mistake);stroke-width:2.4px;stroke-linecap:round}.in-view .press[data-astro-cid-swxkmlat]{animation:press .5s ease var(--delay,0s) both}@keyframes press{0%{transform:none}35%{background:var(--tutor-100);border-color:var(--tutor-400);color:var(--tutor-dark);transform:scale(.93)}to{background:var(--tutor-50);border-color:var(--tutor-400);color:var(--tutor-dark);transform:none}}.pasted[data-astro-cid-swxkmlat]{border:1px solid var(--stone-200);opacity:0;background:#fff;border-radius:4px;justify-content:space-between;align-items:center;gap:14px;width:fit-content;max-width:100%;padding:10px 14px;display:flex;box-shadow:0 10px 24px -14px #1c191759}.pasted[data-astro-cid-swxkmlat] .typed[data-astro-cid-swxkmlat]{max-width:16ch;line-height:1.45}.in-view .pasted[data-astro-cid-swxkmlat]{animation:.5s cubic-bezier(.2,.7,.2,1) .1s both paste}@keyframes paste{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.see-grid[data-astro-cid-swxkmlat]{margin-top:10px}.p-see[data-astro-cid-swxkmlat] .canvas[data-astro-cid-swxkmlat]{padding-top:62px}.see-grid[data-astro-cid-swxkmlat] .lines[data-astro-cid-swxkmlat]{font-size:26px}.crossed[data-astro-cid-swxkmlat]{color:var(--stone-500);position:relative}.crossed[data-astro-cid-swxkmlat] svg[data-astro-cid-swxkmlat]{width:calc(100% + 8px);height:14px;margin-top:-6px;position:absolute;top:50%;left:-4px}.crossed[data-astro-cid-swxkmlat] path[data-astro-cid-swxkmlat]{fill:none;stroke:var(--stone-700);stroke-width:2px;stroke-linecap:round}.tri[data-astro-cid-swxkmlat]{flex:none;width:124px;height:auto}.tri[data-astro-cid-swxkmlat] .shape[data-astro-cid-swxkmlat]{fill:none;stroke:var(--stone-700);stroke-width:1.5px;stroke-linejoin:round}.tri[data-astro-cid-swxkmlat] text[data-astro-cid-swxkmlat]{font-family:var(--font-sans);fill:var(--stone-700);font-size:13px}.look[data-astro-cid-swxkmlat]{z-index:3;border:1px solid var(--tutor-200);color:var(--tutor-dark);white-space:nowrap;opacity:0;background:#fffffff2;border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:12px;font-weight:500;display:inline-flex;position:absolute;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 1px 2px #1c191714}.scan[data-astro-cid-swxkmlat]{opacity:0;pointer-events:none;background:linear-gradient(#0000 42%,#155dfc1a 50%,#0000 58%) 0 0/100% 300%;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #155dfc4d}.in-view .look[data-astro-cid-swxkmlat]{animation:looking 1.5s ease var(--delay,0s) both}.in-view .scan[data-astro-cid-swxkmlat]{animation:scan 1.5s ease-in-out var(--delay,0s) both}@keyframes looking{0%{opacity:0}12%,85%{opacity:1}to{opacity:0}}@keyframes scan{0%{opacity:0;background-position:0 100%}12%{opacity:1}85%{opacity:1}to{opacity:0;background-position:0 0}}.draw-grid[data-astro-cid-swxkmlat]{justify-content:space-between;gap:12px;margin-top:14px;display:flex}.tick[data-astro-cid-swxkmlat]{vertical-align:-2px;width:28px;height:24px;margin-left:12px;display:inline-block}.tick[data-astro-cid-swxkmlat] path[data-astro-cid-swxkmlat]{fill:none;stroke:var(--correct);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.note[data-astro-cid-swxkmlat]{color:var(--tutor);white-space:nowrap;align-items:flex-end;gap:2px;font-size:23px;display:flex;position:absolute;top:100%;left:0}.note[data-astro-cid-swxkmlat] svg[data-astro-cid-swxkmlat]{width:20px;height:26px;margin-bottom:14px}.note[data-astro-cid-swxkmlat] path[data-astro-cid-swxkmlat],.fix[data-astro-cid-swxkmlat] path[data-astro-cid-swxkmlat]{fill:none;stroke:var(--tutor);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.sketch[data-astro-cid-swxkmlat]{flex:none;width:150px;height:auto;margin-top:10px;overflow:visible}.sketch[data-astro-cid-swxkmlat] .axes[data-astro-cid-swxkmlat]{fill:none;stroke:var(--stone-500);stroke-width:1.4px;stroke-linecap:round}.sketch[data-astro-cid-swxkmlat] .curve[data-astro-cid-swxkmlat]{fill:none;stroke:var(--tutor);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.sketch[data-astro-cid-swxkmlat] .root[data-astro-cid-swxkmlat]{fill:#fff;stroke:var(--correct);stroke-width:2.4px}.sketch[data-astro-cid-swxkmlat] text[data-astro-cid-swxkmlat]{font-family:var(--font-hand);fill:var(--tutor);font-size:20px;font-weight:700}.chips[data-astro-cid-swxkmlat]{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.chips[data-astro-cid-swxkmlat] span[data-astro-cid-swxkmlat]{border:1px solid var(--tutor-200);background:var(--tutor-50);color:var(--tutor-dark);border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;display:inline-flex}.zoom[data-astro-cid-swxkmlat]{transform-origin:8% 22%}.in-view .zoom[data-astro-cid-swxkmlat]{animation:.8s cubic-bezier(.2,.7,.2,1) 6.25s both zoom-in}@keyframes zoom-in{to{transform:scale(1.12)}}.ping[data-astro-cid-swxkmlat]{border:2px solid var(--tutor);opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:-8px -14px}.in-view .ping[data-astro-cid-swxkmlat]{animation:ping .9s ease-out var(--delay,0s) 2 both}@keyframes ping{0%{opacity:.8;transform:scale(.8)}to{opacity:0;transform:scale(1.5)}}.ghost[data-astro-cid-swxkmlat]{z-index:4;opacity:0;position:absolute;top:46%;left:50%}.file[data-astro-cid-swxkmlat]{border:1px solid var(--stone-200);color:var(--mistake);white-space:nowrap;background:#fffffff5;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;display:flex;transform:rotate(-3deg);box-shadow:0 18px 36px -14px #1c191766}.file[data-astro-cid-swxkmlat] b[data-astro-cid-swxkmlat]{color:var(--stone-900);font-size:13px;font-weight:600}.cursor[data-astro-cid-swxkmlat]{width:22px;height:22px;position:absolute;bottom:-16px;right:-10px}.cursor[data-astro-cid-swxkmlat] path[data-astro-cid-swxkmlat]{fill:var(--stone-900);stroke:#fff;stroke-width:1.6px;stroke-linejoin:round}.in-view .ghost[data-astro-cid-swxkmlat]{animation:drag-in 1.35s cubic-bezier(.3, .6, .3, 1) var(--delay,0s) both}@keyframes drag-in{0%{opacity:0;transform:translate(calc(230px - 50%),calc(150px - 50%))}12%{opacity:1}70%{opacity:1;transform:translate(-50%,-50%)}82%{opacity:1;transform:translate(-50%,-50%)scale(.94)}to{opacity:0;transform:translate(-50%,-50%)scale(.86)}}.dropzone[data-astro-cid-swxkmlat]{z-index:1;border:2px dashed var(--tutor-400);opacity:0;pointer-events:none;background:#155dfc0a;border-radius:14px;position:absolute;inset:10px}.in-view .dropzone[data-astro-cid-swxkmlat]{animation:dropzone 1.2s ease var(--delay,0s) both}@keyframes dropzone{0%{opacity:0}30%,80%{opacity:1}to{opacity:0}}.page[data-astro-cid-swxkmlat]{border:1px solid var(--stone-200);color:#111;background:#fff;padding:0 66px 16px 20px;font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.45;position:absolute;inset:58px 28px -30px;box-shadow:0 18px 40px -22px #1c191759}.page[data-astro-cid-swxkmlat]:after{content:"";border-left:1px solid #111;position:absolute;top:38px;bottom:0;right:52px}.page-top[data-astro-cid-swxkmlat]{border-bottom:1px solid #111;justify-content:space-between;margin:0 -44px 14px 0;padding:12px 0 8px;font-size:11px;font-weight:700;display:flex}.page[data-astro-cid-swxkmlat] .q[data-astro-cid-swxkmlat] b[data-astro-cid-swxkmlat]{color:#fff;background:#111;margin-right:10px;padding:1px 5px;font-size:12px;display:inline-block}.page[data-astro-cid-swxkmlat] .eq[data-astro-cid-swxkmlat]{color:#333;margin-top:8px}.ans[data-astro-cid-swxkmlat]{color:var(--stone-900);flex-direction:column;margin:10px 0 0 4px;font-size:26px;line-height:1.4;display:flex}.ans[data-astro-cid-swxkmlat] sub[data-astro-cid-swxkmlat]{font-size:.55em}.aline[data-astro-cid-swxkmlat]{white-space:nowrap;display:block;position:relative}.aline[data-astro-cid-swxkmlat].rule{border-bottom:1px dotted #555}.fix[data-astro-cid-swxkmlat]{color:var(--tutor);white-space:nowrap;align-items:center;gap:4px;font-size:22px;display:flex;position:absolute;top:2px;left:calc(100% + 14px)}.fix[data-astro-cid-swxkmlat] svg[data-astro-cid-swxkmlat]{width:26px;height:12px}.m[data-astro-cid-swxkmlat]{width:46px;font-family:var(--font-sans);text-align:center;font-size:13px;font-weight:700;line-height:1.2;position:absolute;top:8px;right:-60px}.m[data-astro-cid-swxkmlat].good{color:var(--correct)}.m[data-astro-cid-swxkmlat].bad{color:var(--mistake)}.marks[data-astro-cid-swxkmlat]{text-align:right;margin-top:8px;font-size:12px;font-weight:700;position:relative}.m[data-astro-cid-swxkmlat].total{border:2px solid var(--mistake);color:var(--mistake);border-radius:50%;padding:3px 0;top:-4px}.page[data-astro-cid-swxkmlat] .q[data-astro-cid-swxkmlat].next{opacity:.45;margin-top:26px}@media (width<=900px){.frame[data-astro-cid-swxkmlat]{grid-template-columns:1fr}.stage[data-astro-cid-swxkmlat]{border-left:0;border-top:1px solid var(--stone-200);min-height:620px}.title[data-astro-cid-swxkmlat]{padding:22px 20px 20px}.body-in[data-astro-cid-swxkmlat]{padding:0 20px}.body[data-astro-cid-swxkmlat] .link-arrow[data-astro-cid-swxkmlat]{margin:18px 0 24px}.tutor-card[data-astro-cid-swxkmlat]{left:16px;right:16px}}@media (width<=520px){.canvas[data-astro-cid-swxkmlat]{padding:62px 16px 90px}.lines[data-astro-cid-swxkmlat],.see-grid[data-astro-cid-swxkmlat] .lines[data-astro-cid-swxkmlat]{font-size:23px}.tri[data-astro-cid-swxkmlat]{width:110px}.draw-grid[data-astro-cid-swxkmlat]{flex-direction:column;gap:34px}.sketch[data-astro-cid-swxkmlat]{width:140px;margin-left:auto}.page[data-astro-cid-swxkmlat]{left:14px;right:14px}.ans[data-astro-cid-swxkmlat]{font-size:22px}.fix[data-astro-cid-swxkmlat]{display:none}.ib[data-astro-cid-swxkmlat]{width:27px;height:27px}.tb[data-astro-cid-swxkmlat]{width:30px;height:30px}.tb[data-astro-cid-swxkmlat].wide,.chev[data-astro-cid-swxkmlat]{display:none}}.cards[data-astro-cid-shszrx7l]{grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:0 auto;display:grid}.card[data-astro-cid-shszrx7l]{border:1px solid var(--stone-200);background:#fff;border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.card[data-astro-cid-shszrx7l]:nth-child(2){transition-delay:.1s}.card[data-astro-cid-shszrx7l]:nth-child(3){transition-delay:.2s}.shot[data-astro-cid-shszrx7l]{background:var(--paper-yellow);place-items:center;height:230px;padding:22px 24px 0;display:grid;position:relative;overflow:hidden}.copy[data-astro-cid-shszrx7l]{flex-direction:column;flex:1;padding:26px;display:flex}.copy[data-astro-cid-shszrx7l] h3[data-astro-cid-shszrx7l]{letter-spacing:-.03em;font-size:19px;font-weight:600}.copy[data-astro-cid-shszrx7l] p[data-astro-cid-shszrx7l]{color:var(--stone-500);margin:10px 0 20px;font-size:15.5px;line-height:1.6}.copy[data-astro-cid-shszrx7l] .link-arrow[data-astro-cid-shszrx7l]{margin-top:auto;font-size:15px}.bd[data-astro-cid-shszrx7l]{background-color:var(--board);background-image:radial-gradient(circle at 1px 1px, var(--dot) 1px, transparent 1.3px);background-size:16px 16px;border-radius:10px 10px 0 0;align-self:end;width:100%;height:100%;padding:18px 18px 0;position:relative;overflow:hidden;box-shadow:0 10px 30px -10px #785a004d}.work[data-astro-cid-shszrx7l]{color:var(--stone-900);white-space:nowrap;flex-direction:column;align-items:flex-start;font-size:25px;line-height:1.35;display:flex}.tick[data-astro-cid-shszrx7l]{vertical-align:-2px;width:26px;height:22px;margin-left:10px;display:inline-block}.tick[data-astro-cid-shszrx7l] path[data-astro-cid-shszrx7l]{fill:none;stroke:var(--correct);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.reply[data-astro-cid-shszrx7l]{border:1px solid var(--tutor-200);color:var(--stone-700);background:#fff;border-radius:12px;padding:11px 13px;font-size:13px;line-height:1.5;position:absolute;bottom:16px;left:18px;right:18px;box-shadow:0 12px 28px -16px #155dfc73}.reply[data-astro-cid-shszrx7l] b[data-astro-cid-shszrx7l]{color:var(--stone-900);font-weight:600}.q[data-astro-cid-shszrx7l]{color:var(--stone-600);margin:-4px 0 4px;font-size:11.5px}.steps[data-astro-cid-shszrx7l]{font-size:18px;line-height:1.18}.slip[data-astro-cid-shszrx7l]{font-style:normal;position:relative}.slip[data-astro-cid-shszrx7l] svg[data-astro-cid-shszrx7l]{width:calc(100% + 18px);height:calc(100% + 2px);position:absolute;top:-1px;left:-9px;overflow:visible}.slip[data-astro-cid-shszrx7l] path[data-astro-cid-shszrx7l]{fill:none;stroke:var(--mistake);stroke-width:2.4px;stroke-linecap:round}.sweep[data-astro-cid-shszrx7l]{opacity:0;pointer-events:none;border-radius:inherit;background:linear-gradient(#0000 42%,#155dfc1f 50%,#0000 58%) 0 0/100% 300%;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #155dfc4d}.looking[data-astro-cid-shszrx7l]{border:1px solid var(--tutor-200);color:var(--tutor-dark);opacity:0;background:#fff;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:500;display:inline-flex;position:absolute;top:12px;right:12px}.in-view .sweep[data-astro-cid-shszrx7l]{animation:sweep 1.3s ease-in-out var(--delay,0s) both}.in-view .looking[data-astro-cid-shszrx7l]{animation:looking 1.3s ease var(--delay,0s) both}@keyframes sweep{0%{opacity:0;background-position:0 100%}12%,85%{opacity:1}to{opacity:0;background-position:0 0}}.fb[data-astro-cid-shszrx7l]{flex-direction:column;gap:2px;padding:8px 11px;display:flex;bottom:10px;left:auto;right:12px}.fb[data-astro-cid-shszrx7l] .row[data-astro-cid-shszrx7l]{color:var(--stone-700);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.fb[data-astro-cid-shszrx7l] .row[data-astro-cid-shszrx7l] svg{color:var(--correct);flex:none}.fb[data-astro-cid-shszrx7l] .row[data-astro-cid-shszrx7l].bad{color:var(--stone-900);font-weight:500}.fb[data-astro-cid-shszrx7l] .row[data-astro-cid-shszrx7l].bad svg{color:var(--mistake)}.add[data-astro-cid-shszrx7l]{z-index:2;border:1px solid var(--stone-200);width:32px;height:32px;box-shadow:var(--shadow-panel);color:var(--stone-600);background:#fff;border-radius:10px;place-items:center;display:grid;position:absolute;top:12px;right:12px}.in-view .add[data-astro-cid-shszrx7l].press{animation:.5s .2s both tap}@keyframes tap{40%{background:var(--stone-100);color:var(--stone-900);transform:scale(.9)}}.photo[data-astro-cid-shszrx7l]{color:#2a2418;opacity:0;background:linear-gradient(160deg,#f6f1e3 0%,#ece4cf 100%);border-radius:3px;width:86%;padding:12px 14px 10px;font-family:Georgia,Times New Roman,serif;font-size:13.5px;line-height:1.6;transform:rotate(-2deg);box-shadow:0 1px #0000000a,0 10px 22px -12px #3c280073}.photo[data-astro-cid-shszrx7l] b[data-astro-cid-shszrx7l]{margin-right:8px;font-family:Arial,Helvetica,sans-serif;font-weight:700}.photo[data-astro-cid-shszrx7l] .dim[data-astro-cid-shszrx7l]{opacity:.55}.in-view .photo[data-astro-cid-shszrx7l]{animation:.6s cubic-bezier(.2,.7,.2,1) .6s both land}@keyframes land{0%{opacity:0;transform:translateY(-14px)rotate(-5deg)scale(1.04)}to{opacity:1;transform:rotate(-2deg)}}.work[data-astro-cid-shszrx7l].under{margin:12px 0 0 8px}.seen[data-astro-cid-shszrx7l]{border:1px solid var(--tutor-200);color:var(--tutor-dark);background:#fff;border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:500;position:absolute;bottom:14px;right:14px}.ask[data-astro-cid-shszrx7l]{z-index:1;background:var(--stone-100);color:var(--stone-800);border-radius:14px;padding:6px 12px;font-size:12.5px;position:absolute;top:14px;right:14px}.fig[data-astro-cid-shszrx7l]{width:100%;height:auto;margin-top:6px;display:block}.fig[data-astro-cid-shszrx7l] .edge[data-astro-cid-shszrx7l]{fill:none;stroke:var(--tutor);stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round}.fig[data-astro-cid-shszrx7l] .height[data-astro-cid-shszrx7l]{fill:none;stroke:var(--tutor);stroke-width:2px;stroke-linecap:round}.fig[data-astro-cid-shszrx7l] text[data-astro-cid-shszrx7l]{font-family:var(--font-sans);fill:var(--stone-600);font-size:12px;font-weight:500}.fig[data-astro-cid-shszrx7l] text[data-astro-cid-shszrx7l].h{font-family:var(--font-hand);fill:var(--tutor);font-size:20px;font-weight:700}.done[data-astro-cid-shszrx7l]{border:1px solid var(--tutor-200);background:var(--tutor-50);color:var(--tutor-dark);border-radius:999px;padding:4px 10px;font-size:11.5px;position:absolute;bottom:12px;left:14px}@media (width<=1000px){.cards[data-astro-cid-shszrx7l]{grid-template-columns:1fr;max-width:480px}}
