.tutorials-hero{--tutorials-edge:var(--colors-neutral-7);color:var(--colors-fg-default);background:var(--colors-bg-default);padding-block:clamp(56px,7vw,96px) 64px}.tutorials-hero-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);align-items:center;grid-gap:clamp(24px,4vw,56px);gap:clamp(24px,4vw,56px)}.tutorials-hero-copy{max-width:410px;padding-bottom:12px}.tutorials-eyebrow{margin:0 0 18px;font-size:14px;font-weight:700;color:var(--colors-violet-11)}.tutorials-hero h1{margin:0;font-family:var(--font-logo),sans-serif;font-size:clamp(48px,5vw,68px);font-weight:800;line-height:1.06;letter-spacing:-.025em;text-wrap:balance}.tutorials-title-end{display:block;color:var(--colors-violet-11)}.tutorials-intro{max-width:31ch;margin:24px 0 28px;font-size:18px;line-height:1.65;color:var(--colors-fg-muted)}.tutorials-primary{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.tutorials-primary button{min-height:52px;height:auto;max-width:100%;white-space:normal;padding-block:12px;min-width:210px}.tutorials-help-link,.tutorials-primary>span{font-size:13px;color:var(--colors-fg-muted)}.tutorials-help-link{display:inline-flex;align-items:center;gap:8px;margin-top:20px;min-height:44px;text-underline-offset:4px}.tutorials-help-link:hover{color:var(--colors-fg-default);text-decoration:underline}.tutorials-help-link:focus-visible{outline:2px solid var(--colors-violet-9);outline-offset:6px;border-radius:4px}.tutorials-help-link svg{flex-shrink:0}.tutorials-figure{min-width:0;margin:0;scroll-margin-top:90px}.tutorials-scene{position:relative;isolation:isolate;padding:18px 0 38px 32%}.tutorials-ground{position:absolute;inset-inline:26% 1%;bottom:22px;height:17px;background:var(--colors-neutral-5);opacity:.32;border-radius:50%}.tutorials-character-shadow{position:absolute;left:-3%;bottom:36px;width:34%;height:14px;border-radius:50%;background:radial-gradient(ellipse,var(--colors-neutral-7),transparent 72%);opacity:.5;pointer-events:none}.tutorials-scene:has(.tutorials-character:empty) .tutorials-character-shadow{display:none}.tutorials-sheet{position:relative;z-index:1;padding:28px 32px 26px;border:2px solid var(--tutorials-edge);border-radius:12px 22px 22px 12px;background:var(--colors-bg-default);box-shadow:0 5px 0 var(--tutorials-edge)}.tutorials-paper-top{display:flex;align-items:center;gap:10px;margin-bottom:24px;padding-right:10px;font-size:12px;font-weight:600;color:var(--colors-fg-muted)}.tutorials-reading-mark{display:grid;place-items:center;color:var(--colors-amber-11)}.tutorials-bookmark{position:absolute;top:-2px;right:20px;width:20px;height:34px;fill:var(--colors-amber-4);stroke:var(--colors-amber-8);stroke-width:2px;stroke-linejoin:round}.tutorials-passage{margin:0;font-size:clamp(21px,1.8vw,25px);font-weight:500;line-height:1.7;text-wrap:pretty}.tutorials-clue-word{position:relative;display:inline-block;background:transparent;color:inherit;isolation:isolate}.tutorials-clue-word:before{content:"";position:absolute;z-index:-1;inset:14% -4px 6%;border-radius:4px;background:var(--colors-amber-4);opacity:0;transform:scaleX(.85);transform-origin:left;transition:opacity .24s ease,transform .36s cubic-bezier(.22,1,.36,1)}.tutorials-clue-word[data-highlighted=true]:before{opacity:1;transform:scaleX(1)}.tutorials-clue-word>svg{position:absolute;inset-inline:-4px;bottom:-2px;width:calc(100% + 8px);height:8px;overflow:visible;fill:none;stroke:var(--colors-amber-10);stroke-width:3px;stroke-linecap:round;pointer-events:none;opacity:0}.tutorials-clue-word[data-highlighted=true]>svg{opacity:1}.tutorials-clue-word path{stroke-dasharray:1;stroke-dashoffset:1}.tutorials-clue-word[data-highlighted=true] path{stroke-dashoffset:0}.tutorials-hero[data-still=false] .tutorials-clue-word[data-highlighted=true] path{animation:tutorials-trace .46s cubic-bezier(.22,1,.36,1) both}.tutorials-ink-tip{fill:var(--colors-amber-10);stroke:none;opacity:0}.tutorials-hero[data-still=false] .tutorials-clue-word[data-highlighted=true] .tutorials-ink-tip{animation:tutorials-ink-settle .42s ease-out .3s both}.tutorials-question{margin:22px 0 26px;font-size:15px;font-weight:700;line-height:1.6}.tutorials-guidance{padding-top:20px;border-top:2px solid var(--tutorials-edge)}.tutorials-from{display:flex;align-items:center;gap:7px;margin:0 0 10px;font-size:12px;font-weight:700;color:var(--colors-violet-11)}.tutorials-hint{display:grid;margin:0 0 16px;min-height:3.2em;font-size:15px;line-height:1.6;color:var(--colors-fg-muted)}.tutorials-hint>p{grid-area:1/1;margin:0}.tutorials-hint>p[data-visible=false]{visibility:hidden}.tutorials-guidance button{min-height:44px;height:auto;max-width:100%;white-space:normal;padding-block:10px}.tutorials-character{position:absolute;z-index:2;width:53%;left:-13%;bottom:0;pointer-events:none}.tutorials-character svg{display:block;width:100%;height:auto;overflow:visible}.tutorials-figure figcaption{padding-left:12%;font-size:12px;line-height:1.6;text-align:center;color:var(--colors-fg-muted)}.tutorials-hero[data-active=false] .tutorials-clue-word path,.tutorials-hero[data-active=false] .tutorials-ink-tip{animation-play-state:paused}.tutorials-hero[data-still=true] .tutorials-clue-word:before{transition:none}@keyframes tutorials-trace{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes tutorials-ink-settle{0%{opacity:0}35%{opacity:.75}to{opacity:0}}@media (max-width:1023px){.tutorials-hero-layout{grid-template-columns:minmax(0,1fr);gap:36px;justify-items:center}.tutorials-hero-copy{max-width:520px;padding-bottom:0;text-align:center}.tutorials-title-end{display:inline}.tutorials-intro{margin-inline:auto}.tutorials-primary{align-items:center}.tutorials-help-link{margin-top:14px}.tutorials-figure{width:100%;max-width:620px}}@media (max-width:540px){.tutorials-hero{padding-block:40px 36px}.tutorials-hero-layout{gap:20px}.tutorials-hero h1{font-size:clamp(40px,10vw,50px)}.tutorials-eyebrow{margin-bottom:12px}.tutorials-intro{font-size:16px;line-height:1.7;margin-block:18px 24px}.tutorials-hero-copy{max-width:380px}.tutorials-primary button{width:100%}.tutorials-scene{padding:72px 0 28px}.tutorials-sheet{padding:22px;border-radius:18px}.tutorials-paper-top{min-height:100px;padding-left:110px;padding-right:0;gap:8px;flex-direction:column;align-items:flex-start;justify-content:center;margin-bottom:24px}.tutorials-character{width:180px;top:0;left:-10px;bottom:auto}.tutorials-ground{display:none}.tutorials-character-shadow{top:195px;left:37px;bottom:auto;width:92px;height:10px;z-index:2;opacity:.3}.tutorials-passage{font-size:21px}.tutorials-question{font-size:15px;margin-block:20px}.tutorials-guidance button{width:100%}.tutorials-figure figcaption{padding-inline:12px}}@media (prefers-reduced-motion:reduce){.tutorials-hero[data-still=false] .tutorials-clue-word[data-highlighted=true] .tutorials-ink-tip,.tutorials-hero[data-still=false] .tutorials-clue-word[data-highlighted=true] path{animation:none}.tutorials-clue-word:before{transition:none}}.tutorial-walkthrough{--tw-edge:var(--colors-neutral-7);padding-block:24px 80px;color:var(--colors-fg-default);background:var(--colors-bg-default)}.tw-intro{max-width:860px;margin:0 auto 28px;text-align:center}.tw-back{display:inline-flex;gap:8px;align-items:center;min-height:44px;font-size:13px;color:var(--colors-fg-muted)}.tw-back,.tw-intro .tutorials-eyebrow{margin-bottom:12px}.tw-intro h1{font-family:var(--font-logo),sans-serif;font-size:clamp(34px,3.8vw,50px);font-weight:800;line-height:1.15;letter-spacing:-.02em;text-wrap:balance;margin:0}.tw-summary{margin:18px auto 12px;font-size:18px;line-height:1.65;color:var(--colors-fg-muted);text-wrap:pretty}.tw-prerequisite{margin:0;font-size:12px;color:var(--colors-fg-muted);line-height:1.6}.tw-stages{max-width:790px;margin:0 auto 32px}.tw-stages ol{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.tw-stages a{display:flex;width:100%;height:auto;min-height:58px;gap:10px;padding:10px 14px;text-align:left;white-space:normal;line-height:1.4;font-size:14px}.tw-step-number{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:12px;color:var(--colors-fg-muted)}.tw-stages small{display:block;font-size:10px;font-weight:400;color:var(--colors-fg-muted)}.tw-workshop{position:relative;display:grid;grid-template-columns:minmax(210px,.48fr) minmax(0,1fr);grid-gap:clamp(24px,4vw,64px);gap:clamp(24px,4vw,64px);max-width:1100px;margin:0 auto;align-items:end;isolation:isolate}.tw-fragments{position:absolute;inset:0;pointer-events:none}.tw-fragments span{position:absolute;inset:0 auto auto 0;scroll-margin-top:96px}.tw-companion{align-self:stretch;display:flex;flex-direction:column;justify-content:flex-start;padding-top:12px}.tw-companion-copy{padding:20px 16px 0;max-width:290px}.tw-name{font-size:12px;font-weight:700;color:var(--colors-violet-11)}.tw-companion h2{font-family:var(--font-logo),sans-serif;margin:12px 0;font-size:26px;line-height:1.25;text-wrap:balance}.tw-companion p{font-size:14px;color:var(--colors-fg-muted);line-height:1.7;margin:0}.tw-character-stage{position:relative;order:-1;margin-top:0;aspect-ratio:1142/1377;width:100%;max-width:320px}.tw-character-stage .tutorials-character{inset:0;width:100%}.tw-contact-shadow{position:absolute;bottom:1%;left:17%;right:20%;height:12px;border-radius:50%;background:radial-gradient(ellipse,var(--colors-neutral-8),transparent 70%);opacity:.45}.tw-paper{scroll-margin-top:92px;position:relative;padding:clamp(24px,3vw,40px);border:2px solid var(--tw-edge);border-radius:16px 24px 24px 16px;box-shadow:0 5px 0 var(--tw-edge);background:var(--colors-bg-default)}.tw-paper-heading{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--colors-fg-muted);padding-right:30px}.tw-paper-heading>svg{color:var(--colors-amber-11);flex-shrink:0}.tw-paper-ribbon{position:absolute;top:-2px;right:30px;width:18px;height:32px;background:var(--colors-amber-7);-webkit-clip-path:polygon(0 0,100% 0,100% 100%,50% 76%,0 100%);clip-path:polygon(0 0,100% 0,100% 100%,50% 76%,0 100%)}.tw-passage{font-size:clamp(22px,2vw,28px);line-height:1.7;margin:28px 0 32px;font-weight:500;text-wrap:pretty}.tw-passage mark{color:inherit;background:transparent}.tw-link-word{position:relative;display:inline-block;isolation:isolate}.tw-link-word:before{content:"";position:absolute;z-index:-1;inset:14% -3px 8%;border-radius:4px;background:var(--colors-amber-4);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1)}.tw-link-word[data-highlighted=true]:before{transform:scaleX(1)}.tw-link-word svg{opacity:0;position:absolute;bottom:-2px;left:-3px;width:calc(100% + 6px);height:8px;fill:none;stroke:var(--colors-amber-10);stroke-width:3px;stroke-linecap:round;pointer-events:none;overflow:visible}.tw-link-word[data-highlighted=true] svg{opacity:1}.tw-link-word path{stroke-dasharray:1;stroke-dashoffset:1}.tw-link-word[data-highlighted=true] path{stroke-dashoffset:0}.tutorial-walkthrough[data-still=false] .tw-link-word[data-highlighted=true] path{animation:tw-ink .45s cubic-bezier(.22,1,.36,1) both}.tw-passage .tw-evidence{background:linear-gradient(var(--colors-violet-4),var(--colors-violet-4)) 0 95% /0 90% no-repeat;box-decoration-break:clone;-webkit-box-decoration-break:clone;transition:background-size .6s cubic-bezier(.22,1,.36,1)}.tw-passage .tw-evidence[data-highlighted=true]{background-size:100% 90%}.tw-exercise{border-top:2px solid var(--tw-edge);padding-top:26px;min-height:355px}.tw-stage-heading{font-size:18px;line-height:1.55;font-weight:700;margin:0 0 16px}.tw-exercise [data-scope=radio-group][data-part=root]{gap:12px}.tw-exercise [data-part=item]{min-height:60px;align-items:center}.tw-exercise [data-part=item-text]{font-size:15px;line-height:1.5}.tw-exercise [data-part=item-control]{flex-shrink:0}.tw-choice-instruction{font-size:13px;line-height:1.6;color:var(--colors-fg-muted);margin-bottom:2px;font-weight:400}.tw-feedback{min-height:90px;padding-top:18px;font-size:14px;line-height:1.65}.tw-feedback strong{display:flex;align-items:center;gap:8px;font-size:15px}.tw-feedback p{margin:4px 0 0;color:var(--colors-fg-muted)}.tutorial-walkthrough[data-correct=true] .tw-feedback strong{color:var(--colors-violet-11)}.tw-actions{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin-top:12px}.tw-actions>*,.tw-clue-panel button,.tw-next>a{min-height:46px;height:auto;padding-block:12px;white-space:normal;max-width:100%}.tw-clue-panel{padding-top:12px}.tw-clue-symbol{display:inline-flex;flex-direction:column;color:var(--colors-amber-11);padding:6px 12px 12px;font-family:var(--font-logo),sans-serif;font-size:36px;line-height:1.25}.tw-clue-symbol svg{display:block;width:100%;height:12px;stroke:var(--colors-amber-10);stroke-width:3px;stroke-linecap:round;fill:none}.tutorial-walkthrough[data-still=false] .tw-clue-symbol path{stroke-dasharray:1;animation:tw-ink .5s ease-out both}.tw-clue-panel p{font-size:16px;line-height:1.8;max-width:48ch;margin:16px 0 24px}.tw-clue-panel p,.tw-scope{color:var(--colors-fg-muted)}.tw-scope{text-align:right;max-width:1100px;margin:22px auto 0;font-size:12px;line-height:1.6}.tw-takeaway{scroll-margin-top:110px;max-width:1100px;margin:88px auto 0;border-top:2px solid var(--tw-edge);padding-top:56px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.75fr);grid-gap:64px;gap:64px;align-items:center}.tw-takeaway h2{scroll-margin-top:110px;font-family:var(--font-logo),sans-serif;font-size:clamp(28px,3vw,36px);font-weight:700;line-height:1.2;text-wrap:balance;margin:0 0 16px}.tw-takeaway p{color:var(--colors-fg-muted);font-size:15px;line-height:1.7}.tw-takeaway blockquote{font-size:17px;line-height:1.7;margin:24px 0 0;border-left:2px solid var(--colors-violet-7);padding-left:18px}.tw-next{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.tw-next p{font-size:13px;margin:0;max-width:42ch}.tw-guide-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:13px;color:var(--colors-fg-muted);text-underline-offset:4px}.tw-back:hover,.tw-guide-link:hover{color:var(--colors-fg-default);text-decoration:underline}.tw-back:focus-visible,.tw-guide-link:focus-visible,.tw-stage-heading:focus-visible,.tw-takeaway h2:focus-visible{outline:2px solid var(--colors-violet-9);outline-offset:6px;border-radius:4px}.tutorial-walkthrough[data-active=false] .tw-clue-symbol path,.tutorial-walkthrough[data-active=false] .tw-link-word path{animation-play-state:paused}.tutorial-walkthrough[data-still=true] .tw-evidence,.tutorial-walkthrough[data-still=true] .tw-link-word:before{transition:none}@keyframes tw-ink{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@media (max-width:900px){.tw-workshop{grid-template-columns:minmax(150px,.36fr) minmax(0,1fr);gap:24px}.tw-companion-copy{padding:0}.tw-companion h2{font-size:22px}.tw-companion{justify-content:end;gap:24px;padding:0}.tw-actions{align-items:stretch;flex-direction:column}.tw-takeaway{gap:32px}}@media (max-width:640px){.tutorial-walkthrough{padding-block:24px 48px}.tw-intro{margin-bottom:24px;text-align:left}.tw-back{margin-bottom:18px}.tw-intro h1{font-size:clamp(30px,8vw,40px)}.tw-summary{font-size:16px;margin-block:16px 10px}.tw-stages{margin-bottom:26px}.tw-stages ol{gap:6px}.tw-stages a{min-height:82px;height:100%;padding:10px 6px;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:3px;font-size:12px}.tw-stages small{font-size:9px}.tw-workshop{grid-template-columns:minmax(0,1fr);gap:0}.tw-companion{display:grid;grid-template-columns:140px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;padding:0 4px;margin-bottom:10px}.tw-character-stage{grid-area:1/1;width:148px;margin:0 0 0 -12px}.tw-companion-copy{grid-area:1/2}.tw-companion h2{font-size:20px;line-height:1.3;margin-block:6px}.tw-companion p{font-size:12px;line-height:1.6}.tw-name{font-size:11px}.tw-paper{padding:24px 18px;border-radius:18px}.tw-paper-heading{font-size:11px}.tw-paper-ribbon{right:20px}.tw-passage{font-size:22px;margin-block:24px}.tw-stage-heading{font-size:17px}.tw-exercise{min-height:0;padding-top:24px}.tw-exercise [data-part=item-text]{font-size:14px}.tw-feedback{min-height:80px;font-size:13px}.tw-actions>*,.tw-clue-panel button{width:100%;font-size:13px}.tw-scope{text-align:center;margin-top:20px}.tw-takeaway{margin-top:48px;padding-top:32px;grid-template-columns:minmax(0,1fr);gap:28px}.tw-next{align-items:stretch}}@media (prefers-reduced-motion:reduce){.tutorial-walkthrough .tw-link-word:before,.tutorial-walkthrough .tw-passage .tw-evidence{transition:none}.tutorial-walkthrough[data-still=false] .tw-clue-symbol path,.tutorial-walkthrough[data-still=false] .tw-link-word[data-highlighted=true] path{animation:none;stroke-dashoffset:0}}