@font-face{font-family:Permanent Marker;font-style:normal;font-display:swap;font-weight:400;src:url(./permanent-marker-latin-400-normal-BF23djCy.woff2)format("woff2"),url(./permanent-marker-latin-400-normal-BnZj5c41.woff)format("woff")}@font-face{font-family:Klee One;font-style:normal;font-display:swap;font-weight:400;src:url(./klee-one-latin-400-normal-DFf6SWtO.woff2)format("woff2"),url(./klee-one-latin-400-normal-LU-EAKDl.woff)format("woff")}@font-face{font-family:Klee One;font-style:normal;font-display:swap;font-weight:600;src:url(./klee-one-latin-600-normal-BKBNDWcl.woff2)format("woff2"),url(./klee-one-latin-600-normal-BN8nrcPB.woff)format("woff")}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}@font-face{font-family:Klee One;font-style:normal;font-display:swap;font-weight:600;src:url(./klee-one-119-600-normal-TmIZnhi6.woff2)format("woff2");unicode-range:U+3001-3002,U+3041-30FF}:root{--paper:#f3f2ee;--paper-hi:#fbfaf7;--ink:#1c1c1f;--graphite:#55555c;--pencil:#9a9aa0;--tone:#dcdbd5;--blue:#79a5dc;--red:#d0402f;--red-ink:#b02f1f;--font-display:"Permanent Marker", "Marker Felt", "Comic Sans MS", cursive;--font-body:"Klee One", "Segoe Print", "Bradley Hand", "Comic Sans MS", cursive;--step--1:clamp(.84rem, .8rem + .2vw, .92rem);--step-0:clamp(1rem, .96rem + .22vw, 1.1rem);--step-1:clamp(1.18rem, 1.08rem + .45vw, 1.4rem);--step-2:clamp(1.45rem, 1.25rem + .9vw, 1.95rem);--step-3:clamp(1.9rem, 1.5rem + 1.9vw, 2.9rem);--step-4:clamp(3.2rem, 2.2rem + 5.4vw, 6.6rem);--sketch-radius:255px 18px 225px 18px / 18px 225px 18px 255px;--sketch-radius-b:18px 225px 18px 255px / 255px 18px 225px 18px;--hard-shadow:4px 4px 0 var(--ink);--gutter-l:max(16px, env(safe-area-inset-left,0px));--gutter-r:max(16px, env(safe-area-inset-right,0px));--ease-out:cubic-bezier(.22, 1, .36, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55;overflow-x:clip}html.is-loading,html.is-loading body{overflow:hidden}h1,h2,h3,h4{text-wrap:balance;margin:0;font-weight:400;line-height:1.05}p{margin:0}a{color:inherit}button{font:inherit;color:inherit}img,svg{max-width:100%}:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:6px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip-link{top:calc(env(safe-area-inset-top,0px) + 10px);left:var(--gutter-l);z-index:200;background:var(--ink);color:var(--paper-hi);border-radius:var(--sketch-radius);transition:transform .2s var(--ease-out);padding:.5rem .9rem;font-weight:600;text-decoration:none;position:fixed;transform:translateY(-160%)}.skip-link:focus-visible{transform:none}.btn{--btn-bg:var(--paper-hi);background:var(--btn-bg);border:2.5px solid var(--ink);border-radius:var(--sketch-radius);min-height:44px;box-shadow:3px 3px 0 var(--ink);font-family:var(--font-body);font-weight:600;font-size:var(--step-0);cursor:pointer;justify-content:center;align-items:center;gap:.55em;padding:.55em 1.15em;line-height:1.1;text-decoration:none;transition:transform .12s,box-shadow .12s,background-color .15s;display:inline-flex}.btn:hover{box-shadow:4px 5px 0 var(--ink);transform:translate(-1px,-2px)rotate(-.6deg)}.btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.btn .icon{flex:none;width:1.25em;height:1.25em}.btn-ink{--btn-bg:var(--ink);color:var(--paper-hi);box-shadow:3px 3px 0 var(--red)}.btn-ink:hover{box-shadow:4px 5px 0 var(--red)}.btn-quiet{box-shadow:none;border-style:dashed}.btn-quiet:hover{box-shadow:none}.icon-btn{background:var(--paper-hi);border:2.5px solid var(--ink);width:44px;height:44px;box-shadow:2px 2px 0 var(--ink);cursor:pointer;border-radius:50% 46% 52% 44%/46% 52% 44% 50%;place-items:center;padding:0;transition:transform .12s;display:inline-grid}.icon-btn:hover{transform:rotate(-8deg)scale(1.05)}.icon-btn .icon{width:22px;height:22px}.loader{z-index:300;background:var(--paper);place-content:center;justify-items:center;gap:.6rem;transition:opacity .6s,visibility .6s;display:grid;position:fixed;inset:0}.loader.is-done{opacity:0;visibility:hidden}.loader-scribble{width:140px;overflow:visible}.loader-scribble path{fill:none;stroke:var(--ink);stroke-width:4px;stroke-linecap:round;stroke-dasharray:220;animation:1.4s ease-in-out infinite scribble}.loader-text{color:var(--graphite);font-weight:600}@keyframes scribble{0%{stroke-dashoffset:220px}55%{stroke-dashoffset:0}to{stroke-dashoffset:-220px}}.noscript{padding:2rem var(--gutter-r) 2rem var(--gutter-l);font-size:var(--step-1)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.ride{height:calc(var(--ride-screens,12) * 100vh);position:relative}.stage{background:var(--paper);isolation:isolate;height:100dvh;position:sticky;top:0;overflow:hidden}.world{transform-origin:0 0;will-change:transform;z-index:1;width:2400px;height:1500px;position:absolute;top:0;left:0}.world-tiles canvas{display:block;position:absolute}.world-live{z-index:2;pointer-events:none;position:absolute;top:0;left:0}.world-ui{z-index:3;pointer-events:none}.world-signs,.world-marks{pointer-events:none;position:absolute;inset:0}.cinema{z-index:9;pointer-events:none;visibility:hidden;will-change:opacity;position:fixed;top:0;left:0}.cinema.is-on{visibility:visible}.skip-cine{right:calc(var(--gutter-r) + 6px);bottom:calc(env(safe-area-inset-bottom,0px) + 18px);z-index:10;min-height:40px;font-family:var(--font-display);font-size:var(--step--1);letter-spacing:.08em;color:var(--ink);background:var(--paper-hi);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);cursor:pointer;opacity:0;visibility:hidden;border-radius:999px 880px 999px 920px/880px 999px 920px;padding:.3rem 1rem;transition:opacity .25s,visibility .25s;position:fixed}.stage.is-cine .skip-cine{opacity:.9;visibility:visible}.world-hits{width:2400px;height:1500px;position:absolute;top:0;left:0;overflow:visible}.world-hits polygon{fill:#0000;pointer-events:all;cursor:pointer}.world-hits polygon:hover{fill:#d0402f0d}.sign{cursor:pointer;pointer-events:auto;transform-origin:50% 100%;background:0 0;border:0;padding:0;position:absolute;top:0;left:0}.sign svg{display:block;overflow:visible}.sign .sign-swing{transform-origin:50% 100%;transition:transform .25s var(--ease-out)}.sign:hover .sign-swing,.sign:focus-visible .sign-swing,.sign.is-active .sign-swing{transform:rotate(-3deg)translateY(-4px)}.sign.is-active .sign-swing{animation:sign-pop .5s var(--ease-out)}@keyframes sign-pop{0%{transform:scale(.92)translateY(0)}60%{transform:scale(1.06)translateY(-8px)rotate(-3deg)}to{transform:rotate(-3deg)translateY(-4px)}}.mark{position:absolute;top:0;left:0;overflow:visible}.mark svg{overflow:visible}.mark path{fill:none;stroke:var(--red);stroke-linecap:round;stroke-linejoin:round}.mark text{fill:var(--red);font-family:var(--font-body);paint-order:stroke;stroke:var(--paper);stroke-width:7px;stroke-linejoin:round;font-weight:600}.hero{z-index:5;pointer-events:none;transition:opacity .4s,visibility .4s;position:absolute;inset:0}.stage.is-map .hero,.stage.is-map .callout{opacity:0;visibility:hidden}.hero-title,.signpost,.scroll-hint,.btn-start{pointer-events:auto}.hero-title{top:calc(env(safe-area-inset-top,0px) + clamp(16px, 4vh, 44px));left:calc(var(--gutter-l) + clamp(4px, 2.4vw, 44px));background:radial-gradient(closest-side, var(--paper) 72%, #f3f2ee00);justify-items:start;gap:.2rem;max-width:min(520px,46vw);padding:.4rem 1.6rem 1.1rem .4rem;display:grid;position:absolute}.hero-kana{font-weight:600;font-size:var(--step-0);letter-spacing:.45em;color:var(--red-ink)}.hero.is-intro *{transition:none!important}.hero-name{font-family:var(--font-display);letter-spacing:.015em;white-space:nowrap;transform-origin:0 100%;margin-bottom:.25rem;font-size:clamp(2.7rem,1.5rem + 4.3vw,5.6rem);line-height:.95;transform:rotate(-2deg)}.hero-name .ch{display:inline-block}.hero-role{font-weight:600;font-size:var(--step-2)}.hero-focus{font-size:var(--step-1);color:var(--graphite);word-spacing:.08em}.hero-focus span{color:var(--pencil);margin-inline:.15em}.btn-start{margin-top:.9rem}.hero-char{aspect-ratio:440/870;transform-origin:50% 100%;will-change:transform;height:min(80vh,760px);position:absolute;bottom:-1vh;left:clamp(150px,15vw,300px)}.hero-char svg{width:100%;height:100%;display:block;overflow:visible}.hero-ground{position:absolute;inset:0}.hero-ground svg{width:100%;height:100%;display:block}.focus-lines{z-index:4;opacity:0;pointer-events:none;will-change:transform, opacity;width:200vw;height:200vh;position:absolute;top:0;left:0}.focus-lines svg{width:100%;height:100%;display:block}.mark-loop,.mark-arrow{stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .25s}.mark-note{opacity:0;transition:opacity .2s}.mark.is-on .mark-loop{stroke-dashoffset:0;transition:stroke-dashoffset .9s cubic-bezier(.6,0,.3,1) .15s}.mark.is-on .mark-arrow{stroke-dashoffset:0;transition:stroke-dashoffset .45s .9s}.mark.is-on .mark-note{opacity:1;transition:opacity .3s 1.2s}.map-banner{top:calc(env(safe-area-inset-top,0px) + 70px);background:var(--paper-hi);border:2.5px solid var(--ink);border-radius:var(--sketch-radius);width:max-content;max-width:calc(100vw - 32px);box-shadow:var(--hard-shadow);opacity:0;visibility:hidden;pointer-events:auto;transition:opacity .3s ease, transform .4s var(--ease-out), visibility .3s;flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem 1rem;padding:.6rem .8rem .6rem 1.1rem;display:flex;position:absolute;left:50%;transform:translate(-50%,-16px)}.map-banner.is-on{opacity:1;visibility:visible;transform:translate(-50%)}.map-banner strong{font-family:var(--font-display);margin-right:.4rem;font-weight:400}.map-banner .btn{min-height:40px;font-size:var(--step--1);padding:.35em .9em}.signpost{left:calc(var(--gutter-l) + 4px);justify-items:start;gap:10px;padding-top:8px;display:grid;position:absolute;top:42%}.signpost-post{z-index:-1;pointer-events:none;width:22px;height:calc(100% + 26vh);position:absolute;top:-10px;left:30px}.plank{--tilt:0deg;width:clamp(150px,12.5vw,196px);height:50px;font-family:var(--font-display);letter-spacing:.05em;text-align:left;cursor:pointer;transform:rotate(var(--tilt));transition:transform .25s var(--ease-out);background:0 0;border:0;align-items:center;padding:0 26px 0 18px;font-size:clamp(1.05rem,.9rem + .5vw,1.3rem);display:flex;position:relative}.plank:nth-child(odd){--tilt:-2.5deg}.plank:nth-child(2n){--tilt:2deg}.plank svg{z-index:-1;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.plank:hover,.plank:focus-visible{transform:rotate(calc(var(--tilt) - 3deg)) translateX(6px)}.scroll-hint{left:calc(var(--gutter-l) + 74px);bottom:calc(env(safe-area-inset-bottom,0px) + 5vh);font-weight:600;font-size:var(--step-1);text-align:center;pointer-events:none;line-height:1.1;position:absolute}.scroll-hint:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 40'%3E%3Cpath d='M13 2 C12 14 14 24 13 36 M4 27 C8 31 11 34 13 37 C15 34 18 31 22 27' fill='none' stroke='%231c1c1f' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;width:26px;height:40px;margin:8px auto 0;animation:1.6s ease-in-out infinite nudge;display:block}@keyframes nudge{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.topbar{z-index:50;padding:calc(env(safe-area-inset-top,0px) + 10px) var(--gutter-r) 8px var(--gutter-l);pointer-events:none;align-items:center;gap:12px;display:flex;position:fixed;top:0;left:0;right:0}.topbar>*{pointer-events:auto}.topbar{transition:opacity .25s}.topbar.is-hidden{opacity:0}.topbar.is-hidden>*{pointer-events:none}.topbar-brand{font-family:var(--font-display);letter-spacing:.02em;background:var(--paper);border-radius:var(--sketch-radius);opacity:0;visibility:hidden;transition:opacity .35s ease, transform .35s var(--ease-out), visibility .35s;padding:2px 10px;font-size:1.55rem;text-decoration:none;transform:translateY(-10px)rotate(-2deg)}.topbar.show-brand .topbar-brand{opacity:1;visibility:visible;transform:rotate(-2deg)}.topnav{background:radial-gradient(closest-side, var(--paper) 70%, #f3f2ee00);align-items:center;gap:clamp(4px,1.6vw,22px);margin-left:auto;padding:2px 8px;display:flex}.topnav button{min-height:44px;font-weight:600;font-size:var(--step-0);cursor:pointer;background:0 0;border:0;padding:8px clamp(4px,.8vw,10px);position:relative}.topnav button:after{content:"";transform-origin:0;height:9px;transition:transform .3s var(--ease-out);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 9' preserveAspectRatio='none'%3E%3Cpath d='M2 6 C20 2 40 7 60 4 C75 2 88 5 98 3' fill='none' stroke='%231c1c1f' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") 50%/100% 100% no-repeat;position:absolute;bottom:4px;left:2px;right:2px;transform:scaleX(0)}.topnav button:hover:after,.topnav button[aria-current=true]:after{transform:scaleX(1)}.compass{flex:none;width:46px;height:46px}.compass svg{width:100%;height:100%;overflow:visible}.compass .needle{transform-origin:23px 23px;transition:transform .6s var(--ease-out)}.hud{z-index:6;pointer-events:none;position:absolute;inset:0}.callout{right:calc(var(--gutter-r) + clamp(0px, 3vw, 40px));bottom:calc(env(safe-area-inset-bottom,0px) + 112px);pointer-events:none;width:min(380px,100vw - 32px);position:absolute}.callout.is-left{right:auto;left:calc(var(--gutter-l) + clamp(0px, 3vw, 40px))}.callout-card{background:var(--paper-hi);border:2.5px solid var(--ink);border-radius:var(--sketch-radius);box-shadow:var(--hard-shadow);opacity:0;visibility:hidden;transition:opacity .3s ease, transform .45s var(--ease-out), visibility .3s;pointer-events:auto;gap:.55rem;padding:1.1rem 1.25rem 1.2rem;display:grid;position:relative;transform:translateY(18px)rotate(1.5deg)scale(.96)}.callout-card.is-open{opacity:1;visibility:visible;transform:rotate(-.8deg)}.callout-kicker{font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--graphite);align-items:center;gap:.5rem;font-weight:600;display:flex}.callout-kicker .icon{width:22px;height:22px;color:var(--ink)}.callout-title{font-family:var(--font-display);font-size:var(--step-3);line-height:1}.callout-teaser{color:var(--graphite)}.callout-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.35rem;display:flex}.callout-hint{font-size:var(--step--1);color:var(--graphite)}.journey{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 16px);width:min(600px,100vw - 32px);height:74px;transition:transform .5s var(--ease-out);pointer-events:auto;position:absolute;transform:translate(-50%)translateY(140%)}.journey.is-on{transform:translate(-50%)}.journey:before{content:"";z-index:-1;background:radial-gradient(closest-side, var(--paper) 62%, #f3f2ee00);pointer-events:none;position:absolute;inset:-6px -28px -10px}.journey-road{width:calc(100% - 40px);height:30px;position:absolute;inset:22px 20px auto;overflow:visible}.journey-stops{margin:0;padding:0;list-style:none;position:absolute;inset:0}.journey-stop{position:absolute;top:10px;transform:translate(-50%)}.journey-stop button{background:var(--paper-hi);border:2.5px solid var(--ink);cursor:pointer;width:44px;height:44px;transition:transform .2s var(--ease-out), background-color .2s;border-radius:50% 44% 52% 46%/46% 52% 44% 50%;place-items:center;padding:0;display:grid}.journey-stop button .icon{width:22px;height:22px}.journey-stop button:hover,.journey-stop button:focus-visible{transform:translateY(-3px)rotate(-6deg)}.journey-stop.is-done button{background:var(--tone)}.journey-stop.is-here button{background:var(--ink);color:var(--paper-hi);transform:scale(1.08)}.journey-stop .tip{background:var(--ink);color:var(--paper-hi);font-size:var(--step--1);white-space:nowrap;opacity:0;pointer-events:none;border-radius:6px;padding:2px 8px;font-weight:600;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)translateY(4px)}.journey-stop button:hover+.tip,.journey-stop button:focus-visible+.tip,.journey-stop.is-here .tip{opacity:1;transform:translate(-50%)}.journey-dot{pointer-events:none;width:30px;height:30px;margin-left:-15px;transition:left .15s linear;position:absolute;top:2px;left:0}.special-btn{right:calc(var(--gutter-r) + 8px);bottom:calc(env(safe-area-inset-bottom,0px) + 22px);min-height:52px;font-family:var(--font-display);font-size:var(--step-0);letter-spacing:.04em;color:var(--paper-hi);background:var(--ink);border:2.5px solid var(--ink);box-shadow:3px 3px 0 var(--red);cursor:pointer;pointer-events:auto;transition:transform .2s var(--ease-out), opacity .25s ease, visibility .25s;border-radius:999px 880px 999px 920px/880px 999px 920px;align-items:center;gap:.5rem;padding:.4rem 1rem .4rem .45rem;display:inline-flex;position:absolute}.special-btn:hover,.special-btn:focus-visible{transform:translate(-1px,-2px)rotate(-2deg)}.special-icon{background:var(--red);border:2px solid var(--paper-hi);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.special-icon .icon{width:22px;height:22px;color:var(--paper-hi)}.stage.is-cine .hud>*,.stage.is-cine .world-ui,.stage.is-map .special-btn{opacity:0;visibility:hidden}@media (width<=1100px){.special-btn{top:calc(env(safe-area-inset-top,0px) + 66px);bottom:auto}}@media (width<=760px){.special-btn{min-height:0;padding:.3rem}.special-label{display:none}}.finale{z-index:7;padding:80px var(--gutter-r) 120px var(--gutter-l);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.finale-card{text-align:center;background:var(--paper-hi);border:3px solid var(--ink);border-radius:var(--sketch-radius-b);width:min(560px,100%);box-shadow:6px 6px 0 var(--ink);opacity:0;visibility:hidden;transition:opacity .4s ease, transform .6s var(--ease-out), visibility .4s;justify-items:center;gap:.7rem;padding:1.6rem 1.6rem 1.7rem;display:grid;transform:translateY(30px)scale(.95)rotate(-1deg)}.finale.is-on .finale-card{opacity:1;visibility:visible;pointer-events:auto;transform:rotate(-1deg)}.finale-kicker{letter-spacing:.12em;text-transform:uppercase;font-weight:600;font-size:var(--step--1);color:var(--red-ink)}.finale-title{font-family:var(--font-display);font-size:var(--step-3)}.finale-text{max-width:44ch;color:var(--graphite)}.finale-actions{flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:.5rem;display:flex}@media (width<=760px){.hero-title{top:calc(env(safe-area-inset-top,0px) + 64px);left:var(--gutter-l);max-width:calc(100vw - 32px);padding-right:.4rem}.signpost{left:auto;right:var(--gutter-r);top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 18vh);justify-items:end;gap:6px}.signpost-post{left:auto;right:26px}.plank{width:132px;height:42px;padding:0 22px 0 14px;font-size:.98rem}.scroll-hint,.journey-stop .tip{display:none}.topbar-brand{font-size:1.25rem}.topnav button{font-size:.95rem}.compass{display:none}.callout,.callout.is-left{left:50%;right:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 98px);transform:translate(-50%)}.callout-card{padding:.9rem 1rem 1rem}}@media (width<=420px){.topbar{gap:6px}.topbar-brand{padding:2px 4px;font-size:1.1rem}.topnav{gap:0;padding:0}.topnav button{padding:8px 6px;font-size:.88rem}}@media (height<=560px) and (width>=761px){.signpost{display:none}}:root{--chalkboard:#24292a;--blue-line:#79a5dc66;--screentone:radial-gradient(var(--ink) .9px, transparent 1.25px) 0 0 / 6px 6px}.chapter{z-index:100;color:var(--ink);position:fixed;inset:0;overflow:clip}.chapter.is-open{background:var(--paper)}.chapter:not(.is-open) .ch-scene,.chapter:not(.is-open) .ch-board,.chapter:not(.is-open) .ch-close{visibility:hidden}.ch-scene,.ch-room{position:absolute;inset:0}.ch-room svg{width:100%;height:100%;display:block}.ch-char{aspect-ratio:440/870;height:min(70vh,640px);position:absolute;bottom:-3vh;left:clamp(-30px,.5vw,16px)}.ch-char svg{width:100%;height:100%;display:block;overflow:visible}.ch-close{z-index:3;top:calc(env(safe-area-inset-top,0px) + 18px);left:calc(var(--gutter-l) + 6px);position:absolute}.ch-doors{z-index:10;pointer-events:none;position:absolute;inset:0;overflow:hidden}.ch-door{width:50.5%;position:absolute;top:0;bottom:0}.ch-door-l{left:0}.ch-door-r{right:0}.ch-door svg{width:100%;height:100%;display:block}.ch-board{z-index:2;top:calc(env(safe-area-inset-top,0px) + 82px);bottom:calc(env(safe-area-inset-bottom,0px) + 26px);left:max(30vw,300px);right:max(var(--gutter-r), 3.5vw);overscroll-behavior:contain;background:var(--paper-hi);border:3px solid var(--ink);box-shadow:7px 8px 0 var(--ink);scrollbar-width:thin;scrollbar-color:var(--ink) transparent;border-radius:7px 12px 9px 14px;flex-direction:column;gap:1.4rem;padding:clamp(18px,2.4vw,34px);display:flex;position:absolute;overflow-y:auto}.ch-board:focus-visible{outline-offset:-6px}.ch-head{border-bottom:2px dashed var(--pencil);gap:.35rem;padding-bottom:.9rem;display:grid}.ch-kicker{font-weight:600;font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase;color:var(--graphite);align-items:center;gap:.55rem;display:flex}.ch-kicker .icon{width:26px;height:26px;color:var(--ink)}.ch-title{font-family:var(--font-display);font-size:var(--step-3)}.ch-body{min-width:0}.ch-pager{border-top:2px dashed var(--pencil);flex-wrap:wrap;justify-content:space-between;gap:.8rem;margin-top:auto;padding-top:1rem;display:flex}.chips{flex-wrap:wrap;gap:7px 8px;margin:0;padding:0;list-style:none;display:flex}.chips li{font-weight:600;font-size:var(--step--1);background:var(--paper-hi);border:2px solid var(--ink);border-radius:999px 880px 999px 920px/880px 999px 920px;padding:3px 11px;line-height:1.4}.chips-ink li{background:var(--ink);color:var(--paper-hi)}.chips-blue li{border-color:var(--ink);box-shadow:2px 2px 0 var(--blue)}.edu{gap:22px;display:grid}.chalk{color:var(--paper-hi);background:radial-gradient(ellipse at 18% 22%, #ffffff12, transparent 46%), radial-gradient(ellipse at 80% 78%, #ffffff0f, transparent 50%), var(--chalkboard);border:9px solid var(--ink);outline:2px solid var(--paper-hi);outline-offset:-14px;border-radius:6px;gap:.45rem;padding:26px 26px 24px;display:grid;position:relative}.chalk-kicker{font-size:var(--step--1);letter-spacing:.18em;text-transform:uppercase;opacity:.8}.chalk-title{font-family:var(--font-display);font-size:var(--step-2);line-height:1.1}.chalk-major{font-weight:600;font-size:var(--step-1)}.chalk-school{opacity:.92}.chalk-meta{opacity:.85;flex-wrap:wrap;gap:.3rem 1.2rem;display:flex}.cgpa{margin-top:.8rem}.cgpa-value{font-size:var(--step-1)}.cgpa-value strong{font-family:var(--font-display);font-weight:400;font-size:var(--step-3)}.cgpa-label{letter-spacing:.14em;font-size:var(--step--1)}.cgpa-bar{width:min(100%,320px);height:26px;display:block;overflow:visible}.cgpa-bar path{fill:none;stroke:var(--paper-hi);stroke-linecap:round}.cgpa-track{stroke-width:3px;opacity:.35;stroke-dasharray:2 7}.cgpa-fill{stroke-width:7px;stroke-dasharray:1;stroke-dashoffset:1px;animation:1.3s cubic-bezier(.6,0,.3,1) .9s forwards chalk-draw}@keyframes chalk-draw{to{stroke-dashoffset:0}}.chalk-doodle{opacity:.7;width:54px;height:54px;position:absolute;top:18px;right:22px;transform:rotate(10deg)}.chalk-doodle .icon{width:100%;height:100%}.cork{background:radial-gradient(#1c1c1f29 1px, transparent 1.4px) 0 0 / 9px 9px, var(--tone);border:3px solid var(--ink);border-radius:6px;padding:18px 16px 20px}.cork-title{font-family:var(--font-display);font-size:var(--step-1);margin-bottom:14px}.notes{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:22px 18px;margin:0;padding:0;list-style:none;display:grid}.note{background:var(--paper-hi);border:2px solid var(--ink);gap:2px;padding:16px 14px 12px;display:grid;position:relative;transform:rotate(-1.4deg);box-shadow:3px 4px #1c1c1f38}.note:nth-child(2n){transform:rotate(1.2deg)}.pin{background:var(--red);border:2.5px solid var(--ink);border-radius:50%;width:17px;height:17px;margin-left:-8px;position:absolute;top:-9px;left:50%}.note-date{font-size:var(--step--1);color:var(--graphite)}.note-title{font-weight:600;line-height:1.3}.note-result{font-family:var(--font-display);font-size:var(--step-0);align-items:center;gap:6px;display:flex}.note-result .icon{width:20px;height:20px}.note-win .note-result{color:var(--red-ink)}.note-text{font-size:var(--step--1)}.exp-head{gap:.2rem;margin-bottom:18px;display:grid}.exp-company{font-family:var(--font-display);font-size:var(--step-2)}.exp-role{color:var(--graphite);font-weight:600}.exp-role span{color:var(--pencil)}.manga{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.panel{background:var(--paper-hi);border:3px solid var(--ink);grid-template-rows:auto 1fr;min-width:0;display:grid;position:relative;overflow:hidden;container-type:inline-size}.panel-1{grid-column:span 6;grid-template-rows:none;grid-template-columns:minmax(170px,.4fr) minmax(0,1fr)}.panel-1 .panel-art{border-bottom:0;border-right:3px solid var(--ink);flex-direction:column;justify-content:center;gap:14px}.panel-2,.panel-3,.panel-4,.panel-5{grid-column:span 3}.panel-6{grid-column:span 6}.panel-art{background:radial-gradient(var(--ink) .75px, transparent 1.1px) 0 0 / 5px 5px, var(--paper-hi);border-bottom:3px solid var(--ink);justify-content:space-between;align-items:center;gap:12px;min-height:104px;padding:12px 16px;display:flex;position:relative;overflow:hidden}.panel-art:before{content:"";background:repeating-conic-gradient(from 0deg at 50% 50%, var(--paper-hi) 0deg 5deg, transparent 5deg 12deg);position:absolute;inset:-60%}.panel-icon{background:var(--paper-hi);border:3px solid var(--ink);border-radius:50% 46% 52% 44%/46% 52% 44% 50%;flex:none;place-items:center;width:66px;height:66px;display:grid;position:relative}.panel-icon .icon{width:36px;height:36px}.sfx{font-family:var(--font-display);color:var(--paper-hi);-webkit-text-stroke:5px var(--ink);paint-order:stroke fill;white-space:nowrap;font-size:clamp(1.5rem,10cqi,2.7rem);line-height:1;position:relative;transform:rotate(-6deg)}.panel-1 .sfx{font-size:clamp(1.6rem,6.4cqi,2.9rem)}.panel-words{align-content:start;gap:8px;padding:14px 16px 16px;display:grid}.panel-title{font-family:var(--font-display);font-size:var(--step-1);line-height:1.15}.panel-stat{font-size:var(--step--1);color:var(--graphite)}.panel-stat strong{font-size:var(--step-0);color:var(--ink)}.stamp{letter-spacing:.1em;text-transform:uppercase;color:var(--red-ink);border:3px double var(--red);background:#fbfaf7e6;border-radius:8px;padding:8px 12px;font-size:.78rem;font-weight:600;position:relative;transform:rotate(9deg)}.proj{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:30px 26px;padding-top:8px;display:grid}.blueprint{background-color:var(--paper-hi);background-image:linear-gradient(var(--blue-line) 1px, transparent 1px), linear-gradient(90deg, var(--blue-line) 1px, transparent 1px);border:2.5px solid var(--ink);background-size:22px 22px;align-content:start;gap:14px;padding:28px 22px 22px;display:grid;position:relative;transform:rotate(-.8deg);box-shadow:5px 6px #1c1c1fd9}.blueprint:nth-child(2n){transform:rotate(.9deg)}.tape{background:#dcdbd5d1;border:1px solid #1c1c1f40;width:92px;height:26px;position:absolute}.tape-a{top:-13px;left:18px;transform:rotate(-7deg)}.tape-b{top:-12px;right:18px;transform:rotate(6deg)}.bp-no{font-weight:600;font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase;color:var(--graphite)}.bp-no span{color:var(--pencil)}.bp-name{font-family:var(--font-display);font-size:var(--step-3);line-height:1}.bp-kind{font-weight:600}.bp-stats{border-block:2px dashed var(--ink);flex-wrap:wrap;gap:10px 26px;margin:0;padding:10px 0;display:flex}.bp-stats div{display:grid}.bp-stats dd{font-family:var(--font-display);font-size:var(--step-2);margin:0;line-height:1.1}.bp-stats dt{font-size:var(--step--1);color:var(--graphite)}.bp-points{gap:8px;margin:0;padding:0 0 0 1.2rem;display:grid}.bp-points li::marker{content:"→ ";font-weight:600}.proj-more{color:var(--graphite);grid-column:1/-1}.status{border:3px solid var(--ink);outline:1.5px solid var(--ink);outline-offset:4px;border-radius:4px;gap:18px;padding:10px;display:grid;position:relative}.status-top{background:radial-gradient(#1c1c1f2e .8px, transparent 1.2px) 0 0 / 5px 5px, var(--paper-hi);border:2px solid var(--ink);gap:8px;padding:16px 18px;display:grid}.status-label{font-family:var(--font-display);letter-spacing:.14em;color:var(--paper-hi);background:var(--ink);justify-self:start;padding:1px 12px;transform:skew(-10deg)}.status-name{font-family:var(--font-display);font-size:var(--step-3);line-height:1}.status-facts{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:8px 18px;margin:0;display:grid}.status-facts dt,.profile-facts dt{font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase;color:var(--graphite)}.status-facts dd,.profile-facts dd{margin:0;font-weight:600}.status-equipped{gap:10px;padding:0 4px;display:grid}.status-equipped h3{font-weight:600;font-size:var(--step-0)}.status-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px;display:grid}.skill-group{border:2px dashed var(--ink);border-radius:12px 8px 14px 9px;align-content:start;gap:10px;padding:12px 14px 14px;display:grid}.skill-group h4{font-family:var(--font-display);font-size:var(--step-1)}.mail{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:28px;display:grid}.letter{background:linear-gradient(90deg, transparent 38px, #d0402f8c 38px 40px, transparent 40px), repeating-linear-gradient(var(--paper-hi) 0 calc(1.9rem - 1px), var(--blue-line) calc(1.9rem - 1px) 1.9rem);border:2.5px solid var(--ink);gap:.9rem;padding:22px 22px 22px 52px;line-height:1.9rem;display:grid;box-shadow:5px 6px #1c1c1fd9}.letter-hello,.letter-sign{font-family:var(--font-display);font-size:var(--step-1)}.letter-sign{justify-self:end}.letter-form{gap:4px;margin-top:.4rem;display:grid}.letter-form label{font-weight:600;font-size:var(--step--1)}.letter-form input,.letter-form textarea{width:100%;font:inherit;color:inherit;border:2px solid var(--ink);background:#fbfaf7d9;border-radius:8px 10px 7px 12px;margin-bottom:8px;padding:6px 8px}.letter-form textarea{resize:vertical;min-height:6rem}.letter-actions{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;display:flex}.letter-note{font-size:var(--step--1);color:var(--graphite);line-height:1.4}.postcard{background:var(--paper-hi);border:3px solid var(--ink);box-shadow:6px 7px 0 var(--ink);gap:1rem;padding:24px 22px;display:grid;position:relative;transform:rotate(1deg)}.pc-title{font-family:var(--font-display);font-size:var(--step-2);padding-right:80px}.stamp-post{width:66px;height:74px;font-family:var(--font-display);text-align:center;color:var(--red-ink);border:3px dashed var(--red);place-items:center;line-height:1;display:grid;position:absolute;top:14px;right:16px;transform:rotate(7deg)}.stamp-post small{font-size:.75rem}.addr{margin:0;padding:0;list-style:none;display:grid}.addr li{border-bottom:1.5px dashed var(--pencil);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 10px;padding:8px 0;display:grid}.addr-label{grid-column:1/-1}.addr a,.addr li>span:not(.addr-label){overflow-wrap:anywhere;font-weight:600}.addr-label{font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;color:var(--graphite)}.copy{min-height:36px;font-size:var(--step--1);background:var(--paper-hi);border:2px solid var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-weight:600;display:inline-flex}.copy .icon{width:16px;height:16px}.profile{z-index:110;padding:calc(env(safe-area-inset-top,0px) + 16px) var(--gutter-r) calc(env(safe-area-inset-bottom,0px) + 16px) var(--gutter-l);overscroll-behavior:contain;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.profile-backdrop{background:#1c1c1f80;position:fixed;inset:0}.profile-card{background:var(--paper-hi);border:3px solid var(--ink);width:min(960px,100%);box-shadow:9px 10px 0 var(--ink);border-radius:8px 14px 10px 16px;grid-template-columns:minmax(0,.75fr) minmax(0,1.4fr);display:grid;position:relative;overflow:hidden}.profile-close{z-index:2;position:absolute;top:12px;right:12px}.profile-art{background:var(--screentone), var(--paper-hi);border-right:3px solid var(--ink);grid-template-rows:minmax(0,1fr) auto;min-height:460px;padding:40px 8px 14px;display:grid;position:relative;overflow:hidden}.profile-art:before{content:"";background:repeating-conic-gradient(from 0deg at 50% 40%, var(--paper-hi) 0deg 3.5deg, transparent 3.5deg 10deg);position:absolute;inset:-30%}.profile-turntable{cursor:grab;touch-action:pan-y;width:100%;height:100%;min-height:340px;display:block;position:relative}.profile-turntable:active{cursor:grabbing}.profile-hint{font-size:var(--step--1);color:var(--ink);background:var(--paper-hi);border:1.5px dashed var(--ink);border-radius:999px;padding:0 8px;font-weight:600;position:absolute;top:46px;right:14px;transform:rotate(4deg)}.profile-poses{flex-wrap:wrap;justify-content:center;gap:6px;display:flex;position:relative}.profile-poses button{min-height:36px;font-weight:600;font-size:var(--step--1);background:var(--paper-hi);border:2px solid var(--ink);cursor:pointer;border-radius:999px 880px 999px 920px/880px 999px 920px;padding:2px 12px}.profile-poses button[aria-pressed=true]{color:var(--paper-hi);background:var(--ink)}.profile-tag{font-family:var(--font-display);color:var(--paper-hi);background:var(--ink);padding:2px 10px;position:absolute;top:16px;left:16px;transform:rotate(-4deg)}.profile-info{align-content:start;gap:1rem;min-width:0;padding:clamp(20px,3vw,34px);display:grid}.profile-kicker{font-weight:600;font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--red-ink)}.profile-name{font-family:var(--font-display);font-size:var(--step-3);padding-right:48px}.profile-kana{font-family:var(--font-body);font-weight:600;font-size:var(--step-0);letter-spacing:.3em;color:var(--graphite);white-space:nowrap}.profile-facts{border-block:2px dashed var(--pencil);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px 20px;margin:0;padding:14px 0;display:grid}.profile-bio{gap:.7rem;max-width:62ch;display:grid}.profile-actions{flex-wrap:wrap;gap:.6rem;display:flex}.profile-chapters{flex-wrap:wrap;gap:4px 14px;display:flex}.profile-chapters button{border:0;border-bottom:2px solid var(--ink);cursor:pointer;background:0 0;min-height:40px;padding:4px 2px;font-weight:600}.profile-chapters button:hover{color:var(--red-ink);border-color:var(--red)}@media (width<=760px){.chapter{overflow-y:auto}.ch-scene{height:46vh;position:absolute;inset:0 0 auto;overflow:hidden}.ch-char{height:40vh;bottom:-2vh;left:2vw}.ch-board{margin:38vh 12px calc(env(safe-area-inset-bottom,0px) + 20px);box-shadow:5px 6px 0 var(--ink);position:relative;inset:auto;overflow:visible}.edu,.mail,.manga{grid-template-columns:minmax(0,1fr)}.panel-1,.panel-2,.panel-3,.panel-4,.panel-5,.panel-6{grid-column:auto}.panel-1{grid-template-rows:auto 1fr;grid-template-columns:none}.panel-1 .panel-art{border-right:0;border-bottom:3px solid var(--ink);flex-direction:row;justify-content:space-between}.profile-card{grid-template-columns:minmax(0,1fr)}.profile-art{border-right:0;border-bottom:3px solid var(--ink);min-height:380px}.profile-turntable{min-height:290px}}@media (width>=761px) and (width<=1100px){.ch-char{height:min(52vh,480px)}.ch-board{left:max(24vw,210px)}.edu,.mail{grid-template-columns:minmax(0,1fr)}}.bp-tag{color:var(--paper-hi);background:var(--red-ink);border-radius:999px;padding:0 8px;font-style:normal}.bp-live{margin:0}.bp-live .btn{max-width:100%}.bp-live-text{overflow-wrap:anywhere;text-align:left;min-width:0}.bp-live-text small{opacity:.8;font-size:.78em;font-weight:400;display:block}.resume{z-index:1;padding:clamp(48px, 9vh, 96px) var(--gutter-r) clamp(48px, 9vh, 90px) var(--gutter-l);background:var(--paper);position:relative}.sheet{background:var(--paper-hi);border:3px solid var(--ink);width:min(920px,100%);box-shadow:8px 9px 0 var(--ink);border-radius:8px 14px 9px 16px;gap:2rem;margin:0 auto;padding:clamp(22px,4vw,52px);display:grid}.sheet-head{border-bottom:3px solid var(--ink);flex-wrap:wrap;justify-content:space-between;gap:1.2rem 2rem;padding-bottom:1.4rem;display:flex}.sheet-head>div{min-width:0}.sheet-kicker{font-weight:600;font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--red-ink)}.sheet-name{font-family:var(--font-display);font-size:var(--step-3)}.sheet-role{color:var(--graphite);margin-top:.3rem;font-weight:600}.sheet-contact{gap:4px;margin:0;padding:0;font-weight:600;list-style:none;display:grid}.sheet-contact li{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;display:flex}.sheet-contact .icon{flex:none;width:20px;height:20px}.sheet-block{gap:.7rem;min-width:0;display:grid}.sheet-block h3{font-family:var(--font-display);font-size:var(--step-2);background:linear-gradient(#0000 58%,#d0402f38 58% 88%,#0000 88%);justify-self:start;padding:0 .3rem}.sheet-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.2rem 1rem;display:flex}.sheet-title strong{font-weight:600;font-size:var(--step-1)}.sheet-when{color:var(--graphite);font-size:var(--step--1);font-variant-numeric:tabular-nums;font-weight:600}.sheet-stack{font-size:var(--step--1);color:var(--graphite)}.sheet-list{gap:.55rem;max-width:78ch;margin:0;padding-left:1.2rem;display:grid}.sheet-list li::marker{content:"— "}.sheet-stat{white-space:nowrap;color:var(--red-ink);font-weight:600}.sheet-split{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:2rem;display:grid}.sheet-skills{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:.8rem 2rem;margin:0;display:grid}.sheet-skills dt{font-weight:600}.sheet-skills dd{color:var(--graphite);margin:0}.sheet-foot{border-top:3px solid var(--ink);text-align:center;justify-items:center;gap:1.2rem;padding-top:1.6rem;display:grid}.sheet-actions{flex-wrap:wrap;justify-content:center;gap:.7rem;display:flex}.sheet-credit{font-size:var(--step--1);color:var(--graphite)}@media print{.topbar,.ride,.loader,.skip-link,.chapter,.profile,.sheet-actions,.sheet-top{display:none!important}body,.resume{background:#fff;padding:0}.sheet{box-shadow:none;border:0;padding:0}}.sheet-links{font-size:var(--step--1);overflow-wrap:anywhere;font-weight:600}
