:root{--paper:#fff8ee;--ink:#1b1b1f;--red:#ff4d4d;--orange:#f6821f;--mint:#3dd6a3;--bg:var(--paper);--fg:var(--ink);--surface:#fff;--surface-alt:#fff1dc;--muted:#55555f;--line:var(--ink);--line-soft:#1b1b1f47;--accent-text:#b3261e;--shadow:var(--ink);--primary-shadow:var(--ink);--focus:var(--ink);--dot:#1b1b1f17;--ribbon-bg:var(--ink);--ribbon-fg:var(--paper);--chip-bg:var(--ink);--chip-fg:var(--paper);--tape-1:#f6821f99;--tape-2:#3dd6a3a6;--tape-3:#ff4d4d80;--term-bg:#1b1b1f;--term-bar:#2b2b32;--term-fg:#fff8ee;--term-dim:#cfc8bc;--footer-bg:var(--ink);--footer-fg:var(--paper);--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji";--font-display:ui-rounded, "SF Pro Rounded", "Arial Rounded MT Bold", "Arial Black", Inter, "Adwaita Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--radius:16px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#16161a;--fg:var(--paper);--surface:#222228;--surface-alt:#2a2620;--muted:#c4bfb6;--line:var(--paper);--line-soft:#fff8ee4d;--accent-text:var(--red);--shadow:var(--orange);--primary-shadow:var(--mint);--focus:var(--mint);--dot:#fff8ee12;--ribbon-bg:var(--paper);--ribbon-fg:var(--ink);--chip-bg:var(--paper);--chip-fg:var(--ink);--term-bg:#0e0e11;--term-bar:#24242b;--footer-bg:#0e0e11}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:5.5rem}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background-color:var(--bg);background-image:radial-gradient(var(--dot) 1.2px, transparent 1.4px);min-height:100vh;color:var(--fg);font:400 1.0625rem/1.6 var(--font-body);background-size:22px 22px;margin:0}svg,canvas{max-width:100%}a{color:inherit;-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red);text-underline-offset:.2em;text-decoration-thickness:2px}a:hover{text-decoration-thickness:3px}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}main:focus{outline:none}::selection{background:var(--mint);color:var(--ink)}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.wrap{width:min(100% - 2.5rem,72rem);margin-inline:auto}.skip-link{z-index:100;border:3px solid var(--ink);background:var(--mint);color:var(--ink);border-radius:12px;padding:.75rem 1.1rem;font-weight:800;text-decoration:none;position:absolute;top:-10rem;left:1rem}.skip-link:focus{outline-color:var(--ink);top:.75rem}.ext{vertical-align:-.02em;background-color:currentColor;width:.72em;height:.72em;margin-left:.28em;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 1.5h7.5V9M10.5 1.5 1.5 10.5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 1.5h7.5V9M10.5 1.5 1.5 10.5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat}@media (forced-colors:active){.ext{background-color:linktext}}.ribbon{z-index:40;border-bottom:4px solid var(--red);background:var(--ribbon-bg);color:var(--ribbon-fg);position:sticky;top:0}.ribbon p{max-width:72rem;font:700 .8125rem/1.35 var(--font-body);letter-spacing:.01em;text-align:center;margin:0 auto;padding:.5rem 1rem}.masthead{padding-block:.9rem .25rem}.masthead__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;display:flex}.wordmark{border:3px solid var(--line);background:var(--surface);color:var(--fg);font:900 1.0625rem/1.2 var(--font-display);border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .95rem;text-decoration:none;display:inline-flex;transform:rotate(-2deg)}.nav-list{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.nav-list a{border:2px solid var(--line);background:var(--surface);min-height:2.5rem;color:var(--fg);border-radius:999px;align-items:center;padding:.3rem .8rem;font-size:.9375rem;font-weight:700;text-decoration:none;display:inline-flex}.nav-list a:hover,.btn--ghost:hover,.reading-list a:hover{background:var(--mint);color:var(--ink)}.btn{border:3px solid var(--line);background:var(--surface);min-height:3rem;color:var(--fg);font:800 1.0625rem/1.1 var(--font-body);cursor:pointer;box-shadow:4px 4px 0 var(--shadow);border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.45rem;text-decoration:none;display:inline-flex}.btn--primary{--shadow:var(--primary-shadow);background:var(--orange);color:var(--ink)}.btn--ghost{box-shadow:none;background:0 0}.btn--small{min-height:2.75rem;padding:.5rem 1.1rem;font-size:.9375rem}@media (prefers-reduced-motion:no-preference){.btn{transition:transform .15s,box-shadow .15s,background-color .15s}.btn:not(.btn--ghost):hover{box-shadow:6px 6px 0 var(--shadow);transform:translate(-2px,-2px)}.btn:not(.btn--ghost):active{box-shadow:1px 1px 0 var(--shadow);transform:translate(2px,2px)}}.hero{align-items:center;gap:1.5rem;padding-block:2rem 2.5rem;display:grid}@media (width>=768px){.hero{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:2.5rem;padding-block:3rem 1rem}}.hero__title{font:900 clamp(2.6rem, 9vw, 5.4rem)/1.02 var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin:0 0 1.1rem}.hl{background:var(--mint);color:var(--ink);box-shadow:.07em .07em 0 var(--line);border-radius:.14em;padding:0 .14em .04em;display:inline-block;transform:rotate(-2deg)}.hero__subtitle{border:2px solid var(--ink);background:var(--orange);color:var(--ink);font:700 .9375rem/1.4 var(--font-mono);border-radius:8px;margin:0 0 1.25rem;padding:.35rem .75rem;display:inline-block;transform:rotate(-1.2deg)}.hero__tagline{max-width:32ch;margin:0 0 1.75rem;font-size:clamp(1.15rem,2.8vw,1.45rem);font-weight:600;line-height:1.45}.hero__actions{flex-wrap:wrap;gap:.9rem;display:flex}.hero__art{justify-items:center;display:grid;position:relative}.balloons{width:min(62vw,20rem);height:auto;overflow:visible}.balloon{transform-box:view-box;transform-origin:150px 392px}.balloon__body,.balloon__knot{stroke:var(--line);stroke-width:4px;stroke-linejoin:round}.balloon__string{fill:none;stroke:var(--fg);stroke-width:2.5px;stroke-linecap:round}.balloons__hand{fill:var(--fg)}.stamp{border:4px double var(--accent-text);background:var(--bg);width:7.25rem;height:7.25rem;color:var(--accent-text);font:800 .8125rem/1.2 var(--font-mono);text-align:center;text-transform:uppercase;border-radius:50%;place-items:center;margin:0;display:grid;position:absolute;bottom:6%;right:2%;transform:rotate(-12deg)}@media (prefers-reduced-motion:no-preference){.balloons{animation:7s ease-in-out infinite drift}.balloon--a{animation:6s ease-in-out infinite sway}.balloon--b{animation:7s ease-in-out -2.5s infinite reverse sway}.balloon--c{animation:8s ease-in-out -4s infinite sway}}@keyframes drift{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.section{padding-block:3rem}@media (width>=768px){.section{padding-block:4rem}}.kicker{color:var(--muted);font:700 .875rem/1.4 var(--font-mono);margin:0 0 .35rem}.section-title{font:900 clamp(2rem, 6.5vw, 3.4rem)/1.08 var(--font-display);letter-spacing:-.025em;text-wrap:balance;margin:0 0 .75rem}.title-note{border:2px solid var(--ink);background:var(--red);color:var(--ink);font:800 max(.4em, .9rem)/1.2 var(--font-mono);letter-spacing:0;vertical-align:.3em;border-radius:8px;padding:.3em .6em;display:inline-block;transform:rotate(2deg)}.section-lede{max-width:62ch;margin:0 0 1.5rem}.toolbar{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:2rem;display:flex}.toolbar--end{justify-content:space-between;margin:2rem 0 0}.status{min-height:1.5em;font:700 .9375rem/1.5 var(--font-mono);margin:0}.quote-grid,.lore-list,.shrine-grid,.badge-grid,.reading-list,.link-list{margin:0;padding:0;list-style:none}.quote-grid,.lore-list,.shrine-grid{gap:2rem 1.75rem;display:grid}@media (width>=768px){.quote-grid,.lore-list,.shrine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.quote-grid,.lore-list,.shrine-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.terminal{--focus:var(--mint);border:3px solid var(--line);border-radius:var(--radius);background:var(--term-bg);max-width:48rem;color:var(--term-fg);box-shadow:6px 6px 0 var(--orange);margin:0;overflow:hidden}.terminal__bar{background:var(--term-bar);border-bottom:2px solid #000;align-items:center;gap:.45rem;padding:.6rem .9rem;display:flex}.terminal__dot{border:1.5px solid #000;border-radius:50%;width:.8rem;height:.8rem}.terminal__dot--red{background:var(--red)}.terminal__dot--orange{background:var(--orange)}.terminal__dot--mint{background:var(--mint)}.terminal__name{color:var(--term-dim);font:600 .8125rem/1 var(--font-mono);margin-left:auto}.terminal__screen{min-height:8.5rem;font:600 clamp(1.1rem, 4vw, 1.6rem)/1.6 var(--font-mono);padding:1.3rem 1.3rem 1.5rem}.term-line{overflow-wrap:anywhere;white-space:pre-wrap;min-height:1.6em;margin:0}.term-prompt{color:var(--orange)}.term-line--out{color:var(--mint);font-weight:800}.term-cursor{background:var(--mint);vertical-align:-.12em;width:.6em;height:1.05em;margin-left:.08em;display:inline-block}@media (prefers-reduced-motion:no-preference){.term-cursor{animation:1.05s step-end infinite blink}}@keyframes blink{50%{opacity:0}}.terminal__caption{color:var(--term-fg);font:600 .875rem/1.7 var(--font-mono);border-top:2px dashed #fff8ee40;padding:.8rem 1.3rem .9rem}.terminal__caption a{color:var(--mint);text-decoration-color:currentColor}.quote-card{--tilt:-.6deg;--tape:var(--tape-1);--tape-tilt:-4deg;position:relative}.quote-card:nth-child(3n+2){--tilt:.5deg;--tape:var(--tape-2);--tape-tilt:3deg}.quote-card:nth-child(3n){--tilt:-.25deg;--tape:var(--tape-3);--tape-tilt:-1.5deg}.quote-card:before{content:"";z-index:1;background:var(--tape);width:6.5rem;height:1.6rem;transform:translateX(-50%) rotate(var(--tape-tilt));position:absolute;top:-.8rem;left:50%}.quote-card figure{border:3px solid var(--line);border-radius:var(--radius);background:var(--surface);height:100%;box-shadow:5px 5px 0 var(--shadow);transform:rotate(var(--tilt));flex-direction:column;justify-content:space-between;gap:1.1rem;margin:0;padding:1.6rem 1.3rem .9rem;display:flex}.quote-card:target figure{outline:4px solid var(--mint);outline-offset:5px}.quote-card blockquote{margin:0}.quote-card blockquote:before{content:"“";content:"“" / "";height:2.1rem;color:var(--red);font:900 4.25rem/1 var(--font-display);display:block}.quote-text{overflow-wrap:anywhere;white-space:pre-line;margin:0;font-size:1.1875rem;font-weight:650;line-height:1.45}.quote-meta{border-top:2px dashed var(--line-soft);color:var(--muted);font:600 .875rem/1.4 var(--font-mono);flex-wrap:wrap;align-items:center;gap:.15rem .7rem;padding-top:.6rem;display:flex}.quote-id{background:var(--chip-bg);color:var(--chip-fg);border-radius:4px;padding:.1rem .45rem;font-weight:800}.quote-link{color:var(--fg);margin-left:auto;padding:.65rem .3rem;font-weight:800;display:inline-block}.lore-card{border:3px dashed var(--line);border-radius:var(--radius);background:var(--surface-alt);padding:1.1rem 1.25rem 1.25rem;transform:rotate(-.4deg)}.lore-card:nth-child(2n){transform:rotate(.5deg)}.lore-card p{margin:.65rem 0 0;font-size:1.0625rem;font-weight:650}.lore-tag{border:2px solid var(--ink);background:var(--red);color:var(--ink);font:800 .75rem/1.1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:6px;padding:.3rem .55rem;display:inline-block;transform:rotate(-2deg)}.shrine-card{border:3px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:5px 5px 0 var(--shadow);flex-direction:column;gap:.8rem;padding:1.3rem 1.3rem .6rem;display:flex}.shrine-card h3{font:900 1.55rem/1.15 var(--font-display);letter-spacing:-.01em;margin:0}.shrine-card p{margin:0}.shrine-card q{font-size:1.125rem;font-weight:700}.link-list{border-top:2px dashed var(--line-soft);margin-top:auto;padding-top:.35rem;display:grid}.link-list a{padding-block:.6rem;font-weight:750;display:inline-block}.link-list li+li a{padding-top:.1rem}.vigil{align-items:flex-end;gap:.9rem;display:flex}.vigil__caption{color:var(--muted);font:600 .875rem/1.4 var(--font-mono)}.candle{flex:none;width:1.75rem;height:4.4rem;position:relative}.candle__wax{border:3px solid var(--line);background:var(--paper);border-radius:5px 5px 3px 3px;width:1.75rem;height:2.6rem;position:absolute;bottom:0;left:0}.candle__wick{background:var(--line);width:2px;height:.5rem;position:absolute;bottom:2.55rem;left:calc(50% - 1px)}.candle__flame{background:radial-gradient(circle at 50% 72%, #fff3b0 0 28%, #ffc34d 46%, var(--orange) 72%);transform-origin:50% 100%;border-radius:50%/60% 60% 40% 40%;width:.9rem;height:1.4rem;position:absolute;bottom:2.95rem;left:calc(50% - .45rem);box-shadow:0 0 14px 4px #f6821f73}@media (prefers-reduced-motion:no-preference){.candle__flame{animation:1.6s ease-in-out infinite alternate flicker}}@keyframes flicker{0%{opacity:.92;transform:scale(1)rotate(-2deg)}35%{opacity:1;transform:scale(.92,1.06)rotate(2deg)}70%{opacity:.88;transform:scale(1.05,.94)rotate(-1deg)}to{opacity:1;transform:scale(.96,1.08)rotate(1.5deg)}}.badge-progress{font:700 1rem/1.4 var(--font-mono);margin:0 0 1.5rem}.badge-progress strong{font-size:1.5rem}.badge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;display:grid}@media (width>=768px){.badge-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}}.badge{--tilt:-4deg;--badge-on:var(--mint);border:3px dashed var(--line);background:var(--surface);width:100%;min-height:9.5rem;color:var(--fg);font:800 1rem/1.2 var(--font-body);text-align:center;cursor:pointer;transform:rotate(var(--tilt));border-radius:1.6rem;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:1rem .75rem;display:flex}.badge-grid li:nth-child(4n+2) .badge{--tilt:3deg;--badge-on:var(--orange)}.badge-grid li:nth-child(4n+3) .badge{--tilt:-2deg;--badge-on:var(--red)}.badge-grid li:nth-child(4n) .badge{--tilt:5deg}.badge__icon{opacity:.6;filter:grayscale();font-size:2.1rem;line-height:1}.badge__state{color:var(--muted);font:700 .75rem/1.2 var(--font-mono)}.badge__state:before{content:"press to collect"}.badge[aria-pressed=true]{background:var(--badge-on);color:var(--ink);box-shadow:4px 4px 0 var(--shadow);border-style:solid}.badge[aria-pressed=true] .badge__icon{opacity:1;filter:none}.badge[aria-pressed=true] .badge__state{color:var(--ink)}.badge[aria-pressed=true] .badge__state:before{content:"✓ collected"}@media (prefers-reduced-motion:no-preference){.badge{transition:transform .18s,background-color .18s}.badge:hover{transform:rotate(0)scale(1.04)}.badge:active{transform:rotate(0)scale(.97)}}.confetti{z-index:60;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti__balloon,.confetti__bit{bottom:-5rem;left:var(--x,50%);animation:rise var(--dur,4s) cubic-bezier(.25, .6, .35, 1) var(--delay,0s) both;position:absolute}.confetti__balloon{width:var(--size,36px);height:calc(var(--size,36px) * 1.2);border:2px solid var(--ink);background:var(--c,var(--red));border-radius:50% 50% 46% 54%/56% 56% 44% 44%}.confetti__balloon:after{content:"";width:2px;height:calc(var(--size,36px) * 1.3);background:var(--ink);opacity:.55;position:absolute;top:100%;left:calc(50% - 1px)}.confetti__bit{width:calc(var(--size,36px) * .3);height:calc(var(--size,36px) * .5);background:var(--c,var(--mint));border-radius:2px}@keyframes rise{0%{opacity:1;transform:translate(0)rotate(0)}85%{opacity:1}to{opacity:0;transform:translate(var(--drift,0px), calc(-100vh - 8rem)) rotate(var(--spin,0deg))}}.member{align-items:start;gap:1.75rem;display:grid}@media (width>=768px){.member{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:2.5rem}}.field-label{margin-bottom:.45rem;font-weight:800;display:block}.field{border:3px solid var(--line);background:var(--surface);width:100%;min-height:3.1rem;color:var(--fg);font:600 1.125rem/1.3 var(--font-body);border-radius:12px;padding:.75rem 1rem;display:block}.field::placeholder{color:var(--muted);opacity:1}.field-hint{color:var(--muted);margin:.55rem 0 1.25rem;font-size:.9375rem}.member__form .status{margin-top:.9rem}.member__card{border:3px dashed var(--line);background:var(--surface);border-radius:24px;padding:.8rem;transform:rotate(.8deg)}.member__canvas{border-radius:14px;width:100%;height:auto;display:block}.reading-list{gap:.9rem;max-width:48rem;display:grid}.reading-list a{border:3px solid var(--line);background:var(--surface);min-height:3.25rem;color:var(--fg);box-shadow:4px 4px 0 var(--shadow);border-radius:14px;align-items:center;gap:.75rem;padding:.85rem 1.15rem;font-weight:800;text-decoration:none;display:flex}.site-footer{--focus:var(--mint);border-top:6px solid var(--red);background:var(--footer-bg);color:var(--footer-fg);margin-top:2rem;padding-block:2.75rem 3.25rem}.site-footer p{max-width:70ch;margin:0 0 .9rem}.site-footer a{color:var(--mint);text-decoration-color:currentColor}.footer__balloons{letter-spacing:.25em;font-size:1.75rem}.footer__disclaimer{font-weight:650}.footer__privacy{color:var(--term-dim);font:600 .875rem/1.5 var(--font-mono)}.page--lost{flex-direction:column;min-height:100vh;display:flex}.lost__main{text-align:center;flex:1;padding-block:3rem 4rem}.lost__balloon{width:9rem;height:auto;margin:0 auto 1.5rem;display:block;overflow:visible}.lost__title{font:900 clamp(2.4rem, 8vw, 4.5rem)/1.05 var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin:0 0 1rem}.lost__main p{max-width:40ch;margin:0 auto 2rem;font-size:1.15rem}.lost__main .kicker{margin-bottom:.5rem;font-size:.875rem}@media (prefers-reduced-motion:no-preference){.lost__balloon{animation:6s ease-in infinite float-away}}@keyframes float-away{0%{opacity:1;transform:translate(0)rotate(-4deg)}70%{opacity:1}to{opacity:0;transform:translate(28px,-46vh)rotate(8deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.confetti{display:none}}
