@import "https://fonts.googleapis.com/css2?family=Caveat:wght@600&family=Dela+Gothic+One&family=Zen+Maru+Gothic:wght@400;500;700&display=swap";:root{--paper:#fff6e8;--ink:#16132e;--sakura:#ff8fb1;--pink:#ffc2d6;--sky:#bfe8ff;--sun:#ffd23f;--violet:#644fca;--display:"Dela Gothic One", "Zen Maru Gothic", system-ui, sans-serif;--body:"Zen Maru Gothic", system-ui, sans-serif;--hand:"Caveat", "Zen Maru Gothic", cursive;--nav-h:68px;--cut:clamp(28px, 5vw, 72px)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-h)}body{background:var(--paper);min-width:320px;color:var(--ink);font:500 17px/1.6 var(--body);margin:0}h1,h2,h3,h4,p,ul{margin:0}ul{padding:0;list-style:none}a{color:inherit;text-decoration:none}::selection{background:var(--sun);color:var(--ink)}:focus-visible{outline:3px solid var(--violet);outline-offset:3px}.btn{border:3px solid var(--ink);background:var(--paper);color:var(--ink);font:700 16px var(--body);cursor:pointer;box-shadow:4px 4px 0 var(--ink);border-radius:999px;padding:12px 26px;transition:transform .15s,box-shadow .15s;display:inline-block}.btn:hover{box-shadow:6px 6px 0 var(--ink);transform:translate(-2px,-2px)}.btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(3px,3px)}.btn.pri{background:var(--sun)}.btn.small{box-shadow:3px 3px 0 var(--ink);padding:8px 18px;font-size:15px}.btn.large{padding:16px 40px;font-size:20px}.sticker{background:var(--sun);color:var(--ink);border:3px solid var(--ink);font:700 14px var(--body);box-shadow:3px 3px 0 var(--ink);padding:3px 14px;display:inline-block;transform:rotate(-3deg)}.sticker.small{margin-right:14px;font-size:13px}.nav{z-index:50;height:calc(var(--nav-h) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 4% 0;background:var(--paper);border-bottom:3px solid var(--ink);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brand{font:400 24px/1 var(--display)}.brand i{color:var(--violet);font-style:normal}.nav ul{align-items:center;gap:26px;font-size:15px;font-weight:700;display:flex}.nav ul a:not(.btn):hover{color:var(--violet)}.hero{min-height:calc(100vh - var(--nav-h));min-height:calc(100svh - var(--nav-h));padding:64px 4% calc(var(--cut) + 64px);background:linear-gradient(#9fdcff 0%,#e2f4ff 100%);align-items:center;display:flex;position:relative;overflow:hidden}.speed{pointer-events:none;background:radial-gradient(at 75% 25%,#ffffffbf 0%,#0000 45%),radial-gradient(at 15% 85%,#77afff38 0%,#0000 50%);position:absolute;inset:0}.petals{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.petal{top:0;left:var(--l);width:var(--s);height:var(--s);background:var(--sakura);opacity:.85;animation:fall var(--d) linear var(--delay) infinite;border-radius:150% 0;position:absolute}@keyframes fall{0%{transform:translateY(-10vh)rotate(0)}to{transform:translate3d(var(--drift), 110vh, 0) rotate(540deg)}}.hero-grid{z-index:2;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px;width:100%;max-width:1220px;margin:0 auto;display:grid;position:relative}.hero h1{font:400 clamp(30px, 4.3vw, 60px)/1.14 var(--display)}.slam{animation:.6s cubic-bezier(.2,1.5,.4,1) both slam;animation-delay:calc(var(--i) * .24s + .2s);display:block}.slam b{font-weight:400;display:inline-block}.s1 b{background:var(--sun);box-shadow:.08em .08em 0 var(--ink);padding:.02em .22em;transform:skew(-8deg)}.s2 b{color:var(--violet)}@keyframes slam{0%{opacity:0;transform:translate(-70px)skew(-16deg)scale(1.25)}to{opacity:1;transform:none}}.lead{max-width:32em;margin:28px 0 34px;font-size:18px}.actions{flex-wrap:wrap;gap:14px;display:flex}.hero-desk{position:relative}.hero-desk .desk{height:580px}.drag-hint{background:var(--paper);border:2px solid var(--ink);font:700 14px var(--body);margin-top:16px;padding:6px 14px;display:inline-block;transform:rotate(-1deg)}.band{margin-top:calc(var(--cut) * -1);padding:calc(var(--cut) + 96px) 4% 112px;clip-path:polygon(0 var(--cut), 100% 0, 100% 100%, 0 100%);position:relative}.inner{max-width:1100px;margin:0 auto}.band.paper{background:var(--paper) radial-gradient(#16132e1f 1.4px, transparent 1.6px) 0 0 / 16px 16px}.band.ink{background:var(--ink);color:var(--paper)}.band.sky{background:var(--sky) radial-gradient(#16132e1f 1.4px, transparent 1.6px) 0 0 / 16px 16px}.band.pink{background:var(--pink)}.band.violet{background:var(--violet);color:#fff}.sh{max-width:780px;margin-bottom:72px}.sh h2{font:400 clamp(34px, 5.6vw, 70px)/1.02 var(--display);letter-spacing:-.01em}.desc{max-width:34em;margin-top:20px;font-size:18px}.reveal{padding:.06em 0 .14em;overflow:hidden}.reveal span{transition:transform .8s cubic-bezier(.2,.9,.2,1);display:inline-block;transform:translateY(110%)}.reveal.in span{transform:none}.tags{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.tags li{font:700 13px var(--body);border:2px solid;border-radius:999px;padding:3px 12px}.tags.sm{gap:6px;margin-top:0}.tags.sm li{padding:1px 9px;font-size:11px}.timeline{position:relative}.trail{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.trail path{fill:none;stroke-linecap:round;stroke-linejoin:round}.track{stroke:var(--ink);stroke-width:4px;stroke-dasharray:2 12;opacity:.35}.drawn{stroke:var(--violet);stroke-width:6px}.spark-g{opacity:0}.spark{fill:var(--sun);stroke:var(--ink);stroke-width:2.5px;transform-box:fill-box;transform-origin:50%;animation:6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.stop{z-index:1;grid-template-columns:1fr 96px 1fr;align-items:start;margin-bottom:88px;display:grid;position:relative}.stop:last-child{margin-bottom:0}.dot{background:var(--paper);border:4px solid var(--ink);border-radius:50%;grid-area:1/2;justify-self:center;width:30px;height:30px;margin-top:34px;transition:background .3s,transform .3s}.stop.on .dot{background:var(--sakura);transform:scale(1.25)}.stop.l .ep{grid-area:1/1}.stop.r .ep{grid-area:1/3}.ep{border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);opacity:.45;background:#fff;padding:24px 26px 26px;transition:opacity .5s,transform .5s;transform:translateY(14px)}.stop.on .ep{opacity:1;transform:none}.ep-head{align-items:center;gap:14px;margin-bottom:12px;display:flex}.ep-no{font:400 40px/1 var(--display);color:var(--violet)}.ep-period{background:var(--sun);border:2px solid var(--ink);font:700 14px var(--body);padding:2px 10px;transform:rotate(-2deg)}.ep h3{font:400 clamp(22px, 2.6vw, 30px)/1.12 var(--display);margin-bottom:10px}.stop.next .ep{box-shadow:none;background:0 0;border-style:dashed}.band.kit{background:var(--ink);color:var(--paper);padding-top:calc(var(--cut) + 56px);padding-bottom:122px}.band.kit .sh{margin-bottom:32px}.band.kit .sh h2{font-size:clamp(30px,4.4vw,52px)}.band.kit .desc{margin-top:12px;font-size:16px}.kit-card{background:var(--paper);color:var(--ink);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--sakura);pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;padding:6px 22px}.kit-row{grid-template-columns:170px 1fr;align-items:center;gap:16px;padding:16px 0;display:grid}.kit-row+.kit-row{border-top:2px dashed var(--ink)}.kit-label{font:700 13px/1.2 var(--body);text-transform:uppercase;letter-spacing:.06em;color:var(--violet)}.kit-list{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.kit-tile{border:2px solid var(--ink);width:48px;height:48px;box-shadow:3px 3px 0 var(--sakura);background:#fff;place-items:center;display:grid}.kit-tile img{object-fit:contain;width:28px;height:28px}.kit-glyph{font:400 15px/1 var(--display);color:var(--violet)}@media (width<=600px){.kit-card{padding:4px 16px}.kit-row{grid-template-columns:1fr;gap:10px;padding:14px 0}.kit-list{gap:10px}}.desk{isolation:isolate;position:relative}.pc{left:var(--x);top:var(--y);aspect-ratio:3/2;perspective:1200px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;outline:none;width:min(320px,84%);position:absolute}.pc.held{cursor:grabbing}.pc-flip{transform-style:preserve-3d;transition:transform .7s cubic-bezier(.3,1.3,.5,1);position:absolute;inset:0}.pc.flip .pc-flip{transform:rotateY(180deg)}.face{backface-visibility:hidden;background:repeating-linear-gradient(135deg, var(--sakura) 0 12px, var(--paper) 12px 24px, var(--sky) 24px 36px, var(--paper) 36px 48px);border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);padding:7px;transition:box-shadow .15s;position:absolute;inset:0}.pc.held .face{box-shadow:10px 12px 0 var(--ink)}.pc:focus-visible .face{outline:3px solid var(--violet);outline-offset:4px}.face-in{background:var(--paper);border:2px solid var(--ink);width:100%;height:100%;position:relative;overflow:hidden}.front svg{width:100%;height:100%;display:block}.back{transform:rotateY(180deg)}.cap{background:var(--paper);border:2px solid var(--ink);max-width:80%;padding:5px 10px;position:absolute;bottom:8px;left:8px;transform:rotate(-2deg)}.cap b{font:400 15px/1.15 var(--display);display:block}.cap small{font:700 12px var(--body)}.flip-hint{background:var(--sun);border:2px solid var(--ink);width:28px;height:28px;font:700 16px var(--body);border-radius:50%;place-items:center;display:grid;position:absolute;top:8px;right:8px}.back .face-in{flex-direction:column;gap:6px;padding:12px 14px 10px;display:flex}.back h4{font:400 15px/1.2 var(--display);padding-right:60px}.msg{font:600 19px/1.12 var(--hand)}.back a{width:fit-content;color:var(--violet);border-bottom:2px solid var(--violet);margin-top:auto;font-size:14px;font-weight:700}.stamp{background:var(--sun);border:2px solid var(--ink);width:42px;height:50px;box-shadow:0 0 0 3px var(--paper), 0 0 0 5px var(--ink);font:700 22px var(--body);place-items:center;display:grid;position:absolute;top:12px;right:14px}.stamp:after{content:"";border:2px solid var(--ink);opacity:.45;border-radius:50%;width:38px;height:38px;position:absolute;top:6px;left:-26px}.cards{grid-template-columns:repeat(auto-fit,minmax(240px,300px));justify-content:center;gap:48px 32px;display:grid}.tc{--rx:0deg;--ry:0deg;--px:50%;--py:50%;aspect-ratio:5/7;width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;touch-action:pan-y;transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));background:0 0;border:0;padding:0;transition:transform .18s ease-out;position:relative}.tc:hover{transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) scale(1.04)}.tc-in{background:linear-gradient(160deg, var(--c1), var(--c2));border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);flex-direction:column;gap:10px;padding:12px;display:flex;position:absolute;inset:0;overflow:hidden}.tc-top,.tc-foot{background:var(--paper);border:2px solid var(--ink);padding:7px 10px;display:block}.tc-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.tc-top b{font:400 17px/1.1 var(--display)}.tc-top em{font:700 12px var(--body);background:var(--sun);border:2px solid var(--ink);flex-shrink:0;padding:0 8px;font-style:normal;transform:rotate(3deg)}.tc-art,.sheet-art{border:2px solid var(--ink);background:radial-gradient(#ffffff40 1.4px, transparent 1.6px) 0 0 / 14px 14px, linear-gradient(160deg, var(--c1), var(--c2));flex:1;place-items:center;display:grid;box-shadow:inset 0 0 0 4px #fff5}.tc-art span,.sheet-art span{font:400 clamp(72px, 9vw, 110px)/1 var(--display);color:var(--paper);text-shadow:4px 4px 0 var(--ink);transition:transform .3s}.tc:hover .tc-art span{transform:scale(1.1)rotate(-4deg)}.tc-foot small{font:700 12px var(--body);color:var(--violet);margin-bottom:2px;display:block}.tc-foot span{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.tc-in:after{content:"";pointer-events:none;opacity:0;mix-blend-mode:soft-light;background:radial-gradient(circle at var(--px) var(--py), #fffd 0, transparent 45%), linear-gradient(115deg, transparent 20%, #ff8fb1aa 35%, #ffd23faa 45%, #bfe8ffaa 55%, transparent 70%);transition:opacity .25s;position:absolute;inset:0}.tc:hover .tc-in:after,.tc:focus-visible .tc-in:after{opacity:1}.tc:focus-visible .tc-in{outline:3px solid var(--violet);outline-offset:4px}.tc.locked .tc-in{border-style:dashed}.scrim{z-index:100;background:#16132ed0;place-items:center;padding:20px;animation:.2s fadein;display:grid;position:fixed;inset:0;overflow:auto}.sheet{background:var(--paper);width:min(700px,100%);color:var(--ink);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--sakura);grid-template-columns:210px 1fr;gap:28px;padding:28px;animation:.35s cubic-bezier(.2,1.4,.4,1) pop;display:grid;position:relative}.sheet-art{aspect-ratio:5/7;flex:none}.sheet-body{flex-direction:column;align-items:flex-start;gap:10px;padding-top:6px;display:flex}.sheet-body h3{font:400 clamp(26px, 4vw, 38px)/1.05 var(--display)}.sheet-body h3.long{font-size:clamp(19px,2.6vw,25px);line-height:1.25}.sheet-body h4{font:400 16px var(--display);margin-top:6px}.sheet-type{color:var(--violet);font-weight:700}.sheet-body .btn{margin-top:10px}.close{border:3px solid var(--ink);background:var(--sun);width:38px;height:38px;font:700 16px var(--body);cursor:pointer;border-radius:50%;position:absolute;top:10px;right:10px}.close:hover{background:var(--sakura)}@keyframes fadein{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:scale(.88)rotate(-2deg)}}.contact{text-align:center;padding-bottom:140px}.tbc{background:var(--ink);color:var(--sun);font:400 clamp(18px, 3vw, 28px) var(--display);border:3px solid #fff;margin-bottom:30px;padding:8px 22px;display:inline-block;transform:rotate(-3deg)}.contact h2{font:400 clamp(36px, 6.5vw, 84px)/1.02 var(--display);max-width:12em;margin:0 auto}.contact .desc{margin:24px auto 40px}.socials{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:48px;display:flex}.footer{padding:28px 4% calc(28px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--paper);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.footer .brand{color:var(--paper);font-size:22px}@media (width<=900px){.hero-grid{grid-template-columns:1fr;gap:56px}.hero-desk .desk{height:560px}.pc{left:var(--mx);top:var(--my)}}@media (width<=760px){.band{padding-bottom:88px}.stop{grid-template-columns:44px 1fr;margin-bottom:56px}.dot{grid-column:1;margin-top:30px}.stop.l .ep,.stop.r .ep{grid-column:2}.ep{padding:20px}}@media (width<=620px){.sheet{grid-template-columns:1fr;gap:18px;padding:20px}.sheet-art{aspect-ratio:16/9}.sheet-body{padding-top:0}}@media (width<=600px){.nav ul li:not(:last-child){display:none}.hero{padding-top:40px}.footer{text-align:center;flex-direction:column}.grid{grid-template-columns:repeat(3,1fr);gap:12px}.skill{padding:14px 6px 10px;font-size:13px}.logo{width:48px;height:48px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.petals,.spark-g,.tc-in:after{display:none}.slam,.spark,.scrim,.sheet{animation:none}.reveal span{transition:none;transform:none}.ep,.dot,.btn,.skill,.face,.pc-flip{transition:none}.ep{opacity:1;transform:none}.tc,.tc:hover{transition:none;transform:none}.tc:hover .tc-art span{transform:none}}@keyframes askpop{0%{opacity:0;transform:translateY(14px)scale(.94)}}.mochi-wrap{right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:60;flex-direction:column;align-items:flex-end;gap:12px;display:flex;position:fixed}.mochi-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;width:104px;height:118px;padding:0;transition:transform .2s cubic-bezier(.3,1.5,.5,1);position:relative}.mochi-btn:hover{transform:scale(1.08)rotate(-3deg)}.mochi-btn:focus-visible{outline:3px solid var(--violet);outline-offset:4px;border-radius:24px}.mochi-shadow{background:#16132e38;border-radius:50%;width:56%;height:10px;animation:3.2s ease-in-out infinite shade;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.mochi{width:100%;height:auto;animation:3.2s ease-in-out infinite bob;display:block;overflow:visible}@keyframes bob{50%{transform:translateY(-9px)}}@keyframes shade{50%{opacity:.6;transform:translate(-50%)scale(.78)}}.mochi .eyes-open{transform-box:fill-box;transform-origin:50%;animation:5.5s infinite blink}@keyframes blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.08)}}.mochi .pupils{transform:translate(calc(var(--lx,0) * 1px), calc(var(--ly,0) * 1px));transition:transform .12s}.mochi .eyes-happy,.mochi .mouth-happy,.mochi-btn:hover .eyes-open,.mochi-btn:focus-visible .eyes-open,.mochi-btn:hover .mouth-idle,.mochi-btn:focus-visible .mouth-idle{display:none}.mochi-btn:hover .eyes-happy,.mochi-btn:focus-visible .eyes-happy,.mochi-btn:hover .mouth-happy,.mochi-btn:focus-visible .mouth-happy{display:inline}.mochi .tail{transform-box:fill-box;transform-origin:0 100%;animation:2.8s ease-in-out infinite tail}@keyframes tail{0%,to{transform:rotate(-7deg)}50%{transform:rotate(9deg)}}.mochi .ear-r{transform-box:fill-box;transform-origin:50% 100%;animation:6s ease-in-out infinite flick}@keyframes flick{0%,88%,to{transform:rotate(0)}91%{transform:rotate(9deg)}94%{transform:rotate(-3deg)}97%{transform:rotate(5deg)}}.mochi .tw{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite twinkle}.mochi .tw2{animation-delay:1.1s}@keyframes twinkle{0%,to{opacity:.3;transform:scale(.4)}50%{opacity:1;transform:scale(1)}}.mochi-bubble{background:var(--paper);max-width:230px;color:var(--ink);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);font:700 14px/1.35 var(--body);padding:10px 36px 10px 14px;animation:.35s cubic-bezier(.2,1.4,.4,1) askpop;position:relative}.mochi-bubble:after{content:"";background:var(--paper);border:3px solid var(--ink);border-top:0;border-left:0;width:14px;height:14px;position:absolute;bottom:-10px;right:38px;transform:rotate(45deg)}.mochi-bubble button{border:2px solid var(--ink);background:var(--sun);width:22px;height:22px;color:var(--ink);font:700 11px/1 var(--body);cursor:pointer;border-radius:50%;padding:0;position:absolute;top:5px;right:5px}.ask{right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:70;background:var(--paper);width:min(380px,100vw - 36px);height:min(540px,100svh - 110px);color:var(--ink);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink);flex-direction:column;animation:.3s cubic-bezier(.2,1.4,.4,1) askpop;display:flex;position:fixed}.ask-head{background:var(--sun);border-bottom:3px solid var(--ink);flex-shrink:0;align-items:center;gap:8px;padding:10px 12px;display:flex}.ask-avatar{background:var(--paper);border:3px solid var(--ink);border-radius:12px;flex-shrink:0;width:48px;height:48px;overflow:hidden}.ask-avatar .mochi{width:100%;height:100%;animation:none}.ask-head div{flex:1;min-width:0}.ask-head b{font:400 18px/1.1 var(--display);display:block}.ask-head small{font:700 12px/1.3 var(--body);display:block}.ask-head button{background:var(--paper);color:var(--ink);border:2px solid var(--ink);font:700 13px var(--body);cursor:pointer;flex-shrink:0;padding:4px 10px}.ask-head button:hover{background:var(--sakura)}.ask-log{background:var(--paper) radial-gradient(#16132e1a 1.2px, transparent 1.4px) 0 0 / 14px 14px;flex-direction:column;flex:1;gap:10px;min-height:0;padding:14px;display:flex;overflow-y:auto}.ask-intro p{margin:0 0 12px;font-size:15px;line-height:1.5}.ask-intro ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.ask-intro button{color:var(--ink);border:2px solid var(--ink);font:700 13px var(--body);cursor:pointer;background:#fff;border-radius:999px;padding:6px 12px}.ask-intro button:hover{background:var(--sakura)}.bub{border:2px solid var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;max-width:86%;margin:0;padding:9px 13px;font-size:15px;line-height:1.45}.bub.me{background:var(--sun);align-self:flex-end}.bub.bot{background:#fff;align-self:flex-start}.bub.err{background:#ffe0e0;align-self:stretch;max-width:100%;font-weight:700}.typing{gap:5px;display:flex}.typing i{background:var(--ink);border-radius:50%;width:8px;height:8px;animation:1s infinite dots}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes dots{0%,60%,to{transform:none}30%{transform:translateY(-5px)}}.ask.busy .ask-avatar .mochi{animation:.5s ease-in-out infinite wiggle}@keyframes wiggle{25%{transform:rotate(-7deg)}75%{transform:rotate(7deg)}}.ask-form{border-top:3px solid var(--ink);background:var(--paper);flex-shrink:0;gap:8px;padding:10px;display:flex}.ask-form input{min-width:0;font:500 15px var(--body);color:var(--ink);border:2px solid var(--ink);background:#fff;border-radius:0;flex:1;padding:9px 12px}.ask-form input:focus{outline:3px solid var(--violet);outline-offset:1px}.ask-form button{background:var(--sun);color:var(--ink);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);font:700 14px var(--body);cursor:pointer;padding:8px 16px}.ask-form button:hover:not(:disabled){background:var(--sakura)}.ask-form button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}@media (width<=600px){.mochi-wrap,.ask{right:12px}.ask{width:calc(100vw - 24px);height:min(560px,100svh - 90px)}.mochi-btn{width:84px;height:96px}}@media (prefers-reduced-motion:reduce){.mochi,.mochi-shadow,.mochi .eyes-open,.mochi .tail,.mochi .ear-r,.mochi .tw,.mochi-bubble,.ask,.typing i,.ask.busy .ask-avatar .mochi{animation:none!important}.mochi-btn,.mochi .pupils{transition:none}}.stk-zone{place-items:center;padding:clamp(24px,4vw,44px) clamp(24px,4vw,44px) 44px;display:grid;position:relative}.stk-wrap{aspect-ratio:1;width:min(100%,360px);animation:.9s cubic-bezier(.2,1.25,.3,1) .1s both stk-in;position:relative}@keyframes stk-in{0%{opacity:0;transform:scale(.82)rotate(-10deg)}to{opacity:1;transform:none}}.stk{--tx:0px;--ty:0px;--tilt:0deg;z-index:5;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;translate:var(--tx) var(--ty);rotate:calc(-4deg + var(--tilt));outline:none;transition:translate .55s cubic-bezier(.2,1.3,.4,1),rotate .5s cubic-bezier(.2,1.3,.4,1),scale .25s;position:absolute;inset:0;scale:1}.stk.held{cursor:grabbing;transition:rotate .15s ease-out,scale .2s;scale:1.05}.stk:focus-visible .stk-photo{outline:3px solid var(--violet);outline-offset:8px}.stk-photo{box-shadow:0 0 0 3px var(--ink), 0 22px 38px #16132e4d;background:#d6daff;border:10px solid #fff;border-radius:30%;transition:box-shadow .25s;position:absolute;inset:0;overflow:hidden}.stk.held .stk-photo{box-shadow:0 0 0 3px var(--ink), 0 40px 60px #16132e61;animation:.4s steps(2,end) stk-glitch}.stk-photo img{object-fit:cover;object-position:50% 25%;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.stk-fallback{width:100%;height:100%;font:400 clamp(56px, 11vw, 104px) var(--display);color:var(--ink);place-items:center;display:grid}.stk-photo:after{content:"";pointer-events:none;background:repeating-linear-gradient(#16132e14 0 1px,#0000 1px 4px);position:absolute;inset:0}.stk-sheen{z-index:1;pointer-events:none;background:linear-gradient(115deg,#0000 35%,#ffffff6b 50%,#0000 65%);transition:transform .9s;position:absolute;inset:0;transform:translate(-120%)}.stk:hover .stk-sheen,.stk.held .stk-sheen{transform:translate(120%)}.stk-beam{z-index:2;opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#fff 50%,#0000);height:3px;animation:6s ease-in-out infinite stk-beam;position:absolute;top:0;left:0;right:0;box-shadow:0 0 16px 5px #ffffff8c}@keyframes stk-beam{0%{opacity:0;top:-4%}8%{opacity:.9}40%{opacity:.9;top:104%}46%,to{opacity:0;top:104%}}@keyframes stk-glitch{0%{filter:drop-shadow(-4px 0 #00e5ffcc)drop-shadow(4px 0 #0059ffb3)}50%{filter:drop-shadow(3px 0 #00e5ffcc)drop-shadow(-3px 0 #0051ffb3)}to{filter:none}}.stk-badge{z-index:2;aspect-ratio:1;border:3px solid var(--ink);background:#fff;border-radius:26%;place-items:center;width:22%;display:grid;position:absolute;top:-6%;right:-8%;rotate:10deg;box-shadow:0 10px 20px #16132e40}.stk-badge svg{fill:#4a2fd6;width:62%;height:62%;stroke:var(--ink);stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round}.stk-term{z-index:2;background:var(--ink);color:#ffd6e3;white-space:nowrap;font:700 clamp(12px, 1.6vw, 15px)/1 var(--mono);border-radius:10px;align-items:center;gap:7px;padding:8px 14px;display:flex;position:absolute;bottom:-3%;left:-9%;rotate:-5deg;box-shadow:0 10px 20px #16132e4d}.stk-term i{color:#7bffc8;font-style:normal}.stk-term .caret{background:#ffd6e3;width:8px;height:1.1em;animation:1s step-end infinite caret}@keyframes caret{50%{opacity:0}}@media (width<=900px){.hero-grid{grid-template-columns:1fr}.stk-wrap{width:min(66vw,280px)}}@media (prefers-reduced-motion:reduce){.stk-wrap,.hero .slam{animation:none}.stk-beam{display:none}.rain pre,.stk-term .caret,.meta li.live:before,.stk.held .stk-photo{animation:none}.stk,.stk-sheen{transition:none}}.hero-grid{grid-template-columns:minmax(300px,.95fr) 1.05fr}.rv-zone{min-width:0}.rv{grid-template-columns:minmax(0,1fr);display:grid;position:relative}.rv-layer{grid-area:1/1;min-width:0;position:relative}.rv-desk .desk{height:580px}.rv-photo{z-index:1;pointer-events:none;visibility:hidden;align-items:center;transition:visibility 0s linear .6s;display:grid}.rv-photo .stk{pointer-events:auto}.rv-desk{z-index:2;visibility:visible;transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .6s,filter .6s,visibility linear}.rv.on .rv-photo{z-index:3;visibility:visible;transition-delay:0s}.rv.on .rv-desk{opacity:0;filter:blur(3px);visibility:hidden;transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .6s,filter .6s,visibility 0s linear .8s;transform:translateY(18px)scale(.9)}.rv-flash{z-index:4;opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#fff,#0000);height:2px;position:absolute;top:0;left:0;right:0;box-shadow:0 0 22px 6px #ffffffb3}.rv.on .rv-flash{animation:1s ease-out rv-sweep}@keyframes rv-sweep{0%{opacity:1;top:0}to{opacity:0;top:100%}}.stk-wrap{animation:none}.stk-photo .stk-real{opacity:0;transition:opacity .1s;position:absolute;inset:0}.rv.on .stk-photo .stk-real{opacity:1;transition:opacity .25s 1.4s}.stk-tiles{grid-template-columns:repeat(var(--n), 1fr);grid-template-rows:repeat(var(--n), 1fr);display:grid;position:absolute;inset:0}.stk-tile{opacity:0;backface-visibility:hidden;transition:transform .5s,opacity .3s;position:relative;overflow:hidden;transform:perspective(700px)rotateY(100deg)scale(.6)}.stk-tile.x{transform:perspective(700px)rotateX(100deg)scale(.6)}.rv.on .stk-tile{opacity:1;transition:transform .8s cubic-bezier(.2, .9, .25, 1) var(--d), opacity .3s ease var(--d);transform:none}.stk-photo .stk-tile img{object-fit:cover;object-position:50% 25%;max-width:none;width:calc(var(--n) * 100%);height:calc(var(--n) * 100%);transform:translate(calc(var(--c) / var(--n) * -100%), calc(var(--r) / var(--n) * -100%));position:absolute;top:0;left:0}.rv.on .stk-photo{animation:.4s steps(2,end) 1.2s stk-glitch}.stk-badge,.stk-term{opacity:0;transition:opacity .35s,scale .5s cubic-bezier(.2,1.4,.4,1);scale:.6}.rv.on .stk-badge,.rv.on .stk-term{opacity:1;transition-delay:1.1s;scale:1}.rv-hud{border:2px solid var(--ink);width:fit-content;max-width:100%;color:var(--ink);font:700 13px var(--mono);background:#fff6e899;border-radius:999px;align-items:center;gap:12px;margin-top:12px;padding:8px 14px;display:flex}.rv-pips{gap:5px;display:flex}.rv-pips i{border:2px solid var(--ink);border-radius:50%;width:9px;height:9px;transition:background .3s,border-color .3s}.rv-pips i.on{background:#1fa971;border-color:#1fa971}.rv-hud button{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;border-bottom:2px solid;padding:0}@media (width<=900px){.hero-grid{grid-template-columns:1fr}.rv-desk .desk{height:560px}}@media (prefers-reduced-motion:reduce){.rv-photo,.rv-desk,.stk-tile,.stk-badge,.stk-term,.stk-photo .stk-real{transition:none!important}.rv.on .stk-photo,.rv.on .rv-flash{animation:none!important}.rv-flash{display:none}.rv.on .stk-photo .stk-real{transition:none}}
