.trail-node{position:relative;display:grid;place-items:center;flex-shrink:0;border-radius:var(--trail-squircle);isolation:isolate;color:var(--trail-on-node);transition:transform var(--dur-base) var(--ease-spring),box-shadow var(--dur-base) var(--ease-out-soft),filter var(--dur-base) var(--ease-out-soft)}.trail-node>svg{position:relative;z-index:1}.trail-node--done{background:var(--trail-done);box-shadow:var(--trail-glow-done),inset 0 1.5px 0 hsla(0,0%,100%,.55)}.trail-node--active{background:var(--trail-active);box-shadow:var(--trail-glow-active),inset 0 1.5px 0 hsla(0,0%,100%,.55)}.trail-node--capstone{background:var(--trail-capstone);box-shadow:var(--trail-glow-capstone),inset 0 1.5px 0 hsla(0,0%,100%,.6)}.trail-node--available{background:color-mix(in srgb,var(--aurora-violet) 18%,var(--paper-1));color:var(--fg-2);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:500;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--aurora-violet) 45%,transparent),var(--shadow-xs)}.trail-node--locked{background:var(--trail-locked);color:var(--trail-locked-ink);box-shadow:inset 0 0 0 1.5px var(--trail-track);--node-ring:var(--trail-track)}.trail-node--available{--node-ring:color-mix(in srgb,var(--aurora-violet) 55%,transparent)}.trail-node--done{--node-ring:color-mix(in srgb,var(--aurora-cyan) 60%,transparent)}.trail-node--active{--node-ring:color-mix(in srgb,var(--aurora-violet) 60%,transparent)}.trail-node--kind-practice{outline:1.5px solid var(--node-ring);outline-offset:4px;transition:transform var(--dur-base) var(--ease-spring),box-shadow var(--dur-base) var(--ease-out-soft),filter var(--dur-base) var(--ease-out-soft),outline-offset var(--dur-base) var(--ease-spring)}.trail-link:focus-visible .trail-node--kind-practice,.trail-link:hover .trail-node--kind-practice{outline-offset:6px}.trail-node--kind-canvas{border-radius:var(--r-md);outline:1.5px solid var(--node-ring);outline-offset:-7px}.trail-node--kind-practice.trail-node--available{--node-ring:color-mix(in srgb,var(--aurora-amber) 62%,transparent);background:color-mix(in srgb,var(--aurora-amber) 22%,var(--paper-1));box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--aurora-amber) 46%,transparent),var(--shadow-xs)}.trail-node--kind-canvas.trail-node--available{--node-ring:color-mix(in srgb,var(--aurora-peach) 66%,transparent);background:color-mix(in srgb,var(--aurora-peach) 22%,var(--paper-1));box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--aurora-peach) 48%,transparent),var(--shadow-xs)}.trail-node--ghost{opacity:.5;filter:saturate(.35)}.trail-limb{fill:none;stroke:var(--trail-track);stroke-width:var(--trail-stroke-sm);stroke-linecap:round;stroke-dasharray:5 7}.trail-limb--done{stroke:var(--aurora-cyan);stroke-dasharray:none;opacity:.75}.trail-limb-grow{stroke-dashoffset:0;animation:trail-limb-grow var(--dur-glass) var(--ease-out-soft) both}@keyframes trail-limb-grow{0%{stroke-dasharray:0 140}}.trail-branch-add{position:absolute;top:50%;display:grid;place-items:center;width:44px;height:44px;border:none;background:none;padding:0;cursor:pointer;opacity:0;transform:translateY(-50%) scale(.8);transition:opacity var(--dur-fast) var(--ease-out-soft),transform var(--dur-fast) var(--ease-spring);z-index:3}.trail-branch-add>span{display:grid;place-items:center;width:26px;height:26px;border-radius:var(--r-pill);background:var(--paper);color:var(--fg-3);box-shadow:inset 0 0 0 1.5px var(--rule-2),var(--shadow-xs);transition:color var(--dur-fast) var(--ease-out-soft),box-shadow var(--dur-fast) var(--ease-out-soft)}.trail-branch-add:focus-visible,.trail-branch-slot:hover .trail-branch-add{opacity:1;transform:translateY(-50%) scale(1)}.trail-branch-add:focus-visible>span,.trail-branch-add:hover>span{color:var(--brand);box-shadow:inset 0 0 0 1.5px var(--brand),var(--shadow-xs)}.trail-branch-add:focus-visible{outline:none}.trail-node--active:before,.trail-node--capstone:before,.trail-node--done:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse 70% 60% at 28% 12%,hsla(0,0%,100%,.5) 0,hsla(0,0%,100%,0) 62%);pointer-events:none;z-index:0}.trail-link{display:block;text-decoration:none;-webkit-tap-highlight-color:transparent}.trail-link:focus-visible .trail-node:not(.trail-node--locked),.trail-link:hover .trail-node:not(.trail-node--locked){transform:translateY(-3px) scale(1.05);filter:saturate(1.08)}.trail-link:focus-visible{outline:none}.trail-link:focus-visible .trail-node{box-shadow:var(--trail-glow-active),0 0 0 3px var(--brand)}.trail-node--active:after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;animation:trail-pulse 2.6s var(--ease-out-soft) infinite}@keyframes trail-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--aurora-violet) 46%,transparent)}70%{box-shadow:0 0 0 18px color-mix(in srgb,var(--aurora-violet) 0,transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb,var(--aurora-violet) 0,transparent)}}@keyframes trail-node-in{0%{opacity:0;transform:scale(.62) translateY(12px)}to{opacity:1;transform:none}}.trail-node-in{animation:trail-node-in .52s var(--ease-spring) both}.trail-bubble{bottom:calc(100% + 12px);white-space:nowrap;padding:var(--s-1_5) var(--s-3);border-radius:var(--r-pill);background:var(--fg);color:var(--paper);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-wide);text-transform:uppercase;box-shadow:var(--shadow-md);animation:trail-bubble-bob 2.6s var(--ease-in-out) infinite;z-index:3;pointer-events:none}.trail-bubble,.trail-bubble:after{position:absolute;left:50%;transform:translateX(-50%)}.trail-bubble:after{content:"";top:100%;border:5px solid transparent;border-top:5px solid var(--fg)}@keyframes trail-bubble-bob{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-4px)}}.trail-crown{position:absolute;bottom:calc(100% - 6px);left:50%;transform:translateX(-50%);color:var(--gold);z-index:2;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.trail-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.trail-track{stroke:var(--trail-track)}.trail-progress,.trail-track{fill:none;stroke-width:var(--trail-stroke);stroke-linecap:round}.trail-progress{stroke-dasharray:1;stroke-dashoffset:var(--reveal-to,1);animation:trail-reveal var(--dur-glass) var(--ease-out-soft) .12s both}@keyframes trail-reveal{0%{stroke-dashoffset:1}to{stroke-dashoffset:var(--reveal-to,1)}}.trail-shimmer{fill:none;stroke:hsla(0,0%,100%,.85);stroke-width:calc(var(--trail-stroke) - 2px);stroke-linecap:round;stroke-dasharray:.035 .965;animation:trail-shimmer 6s linear infinite;mix-blend-mode:screen;opacity:.7}@keyframes trail-shimmer{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.ring-arc-fill{animation:ring-arc-fill var(--dur-glass) var(--ease-out-soft) both}@keyframes ring-arc-fill{0%{stroke-dashoffset:var(--ring-c,0)}}.trail-spine{bottom:0;width:var(--trail-stroke-sm);background:var(--trail-track);overflow:hidden}.trail-spine,.trail-spine__fill{position:absolute;top:0;border-radius:var(--r-pill)}.trail-spine__fill{left:0;right:0;background:linear-gradient(to bottom,var(--trail-fill-a),var(--trail-fill-b) 55%,var(--trail-fill-c));transition:height var(--dur-glass) var(--ease-out-soft)}.trail-spine__bead{position:absolute;left:50%;width:7px;height:7px;border-radius:50%;background:hsla(0,0%,100%,.9);transform:translateX(-50%);mix-blend-mode:screen;animation:trail-bead 3.6s var(--ease-in-out) infinite}@keyframes trail-bead{0%,to{top:4%;opacity:0}15%{opacity:.9}85%{opacity:.9}to{top:96%;opacity:0}}.trail-glint{animation:trail-glint 1.4s var(--ease-out-soft) 1 both}@keyframes trail-glint{0%{transform:translate(-50%,-50%) scale(1);filter:none}22%{transform:translate(-50%,-50%) scale(1.12);filter:drop-shadow(0 0 10px color-mix(in srgb,var(--aurora-amber) 70%,transparent))}55%{transform:translate(-50%,-50%) scale(1)}70%{transform:translate(-50%,-50%) scale(1.06);filter:drop-shadow(0 0 6px color-mix(in srgb,var(--aurora-amber) 50%,transparent))}to{transform:translate(-50%,-50%) scale(1);filter:none}}@media (prefers-reduced-motion:reduce){.trail-glint{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--aurora-amber) 55%,transparent))}.ring-arc-fill,.trail-bubble,.trail-glint,.trail-limb-grow,.trail-node--active:after,.trail-node-in,.trail-shimmer,.trail-spine__bead{animation:none}.trail-progress{animation:none;stroke-dashoffset:var(--reveal-to,1)}.trail-bubble{transform:translateX(-50%)}.trail-branch-add,.trail-node--kind-practice{transition:none}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}
/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}