/* Nori 1.20: viewport-bound playroom and an articulated origami puppet. */
#kz-nori{position:fixed;inset:0;pointer-events:none;z-index:80;overflow:clip;color:#161616;font:14px/1.45 var(--sans,Arial,sans-serif)}
#kz-nori [hidden]{display:none!important}#kz-nori button{font-family:var(--sans,Arial,sans-serif)}
.kz-nori-puppet{position:relative;display:block;width:100%;aspect-ratio:512/544;pointer-events:none;transform-origin:61% 80%}
.kz-nori-part{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;pointer-events:none;user-select:none}
.kz-nori-tail,.kz-nori-leg-left,.kz-nori-leg-right{z-index:1}.kz-nori-leg-left{transform-origin:69% 87%}.kz-nori-leg-right{transform-origin:52% 87%}
.kz-nori-torso{z-index:2}.kz-nori-arm-left,.kz-nori-arm-right{z-index:3}.kz-nori-arm-right{transform-origin:52% 70%}.kz-nori-arm-left{transform-origin:72% 70%}
.kz-nori-head{z-index:4;transform-origin:61.5% 65.9%;transform:translate(var(--nori-x,0px),var(--nori-y,0px)) rotate(var(--nori-look,0deg));transition:transform 160ms ease-out}
.kz-nori-grumpy{display:none;z-index:4;left:5%;top:3%;width:87%;height:66%;object-fit:fill}.is-grumpy .kz-nori-head{visibility:hidden}.is-grumpy .kz-nori-grumpy{display:block}
.kz-nori-dock{position:absolute;left:calc(16px + env(safe-area-inset-left,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));width:76px;min-height:88px;border:0;padding:0;background:transparent;pointer-events:auto;cursor:pointer;color:#161616;font:10px/1.2 Arial,sans-serif;filter:drop-shadow(0 2px 2px #16161618)}
.kz-nori-dock-label{position:relative;left:62%;transform:translateX(-50%);display:block;width:38px;box-sizing:border-box;margin:0;padding:3px;text-align:center;background:#F4F0E5e8;border:1px solid #DAD7CE;border-radius:10px}
.kz-nori-dock.is-away .kz-nori-puppet{opacity:0}.kz-nori-dock.is-away .kz-nori-dock-label{opacity:.6}
.kz-nori-ambient{position:absolute;left:var(--nori-left,0px);top:var(--nori-top,0px);width:var(--nori-size,160px);pointer-events:none;transform-origin:50% 100%;filter:drop-shadow(0 3px 3px #16161615)}
.kz-nori-grip{display:none;position:absolute;width:23px;height:30px;border-radius:48% 45% 38% 48%;background:linear-gradient(125deg,#2a2a2a,#161616);z-index:7;border-right:2px solid #4b4b4b;box-shadow:2px 1px 2px #16161622}
.is-peek-left .kz-nori-grip,.is-peek-right .kz-nori-grip,.is-hang .kz-nori-grip,.is-climb .kz-nori-grip{display:block}
.is-peek-left .kz-nori-grip{left:calc(var(--nori-size)*.5 - 10px)}.is-peek-right .kz-nori-grip{right:calc(var(--nori-size)*.5 - 10px)}
.is-peek-left .kz-nori-grip-one,.is-peek-right .kz-nori-grip-one{top:38%}.is-peek-left .kz-nori-grip-two,.is-peek-right .kz-nori-grip-two{top:76%}
.is-peek-left .kz-nori-edge-body{animation:kz-nori-reach-left 3600ms ease-in-out both}.is-peek-right .kz-nori-edge-body{animation:kz-nori-reach-right 3600ms ease-in-out both}
.is-peek-left .kz-nori-torso,.is-peek-left .kz-nori-tail,.is-peek-left .kz-nori-leg-left,.is-peek-left .kz-nori-leg-right,.is-peek-left .kz-nori-arm-left,.is-peek-left .kz-nori-arm-right{clip-path:inset(0 70% 0 0)}
.is-peek-right .kz-nori-torso,.is-peek-right .kz-nori-tail,.is-peek-right .kz-nori-leg-left,.is-peek-right .kz-nori-leg-right,.is-peek-right .kz-nori-arm-left,.is-peek-right .kz-nori-arm-right{clip-path:inset(0 0 0 80%)}
.is-peek-left .kz-nori-grip-one,.is-peek-right .kz-nori-grip-one{animation:kz-nori-grip-in 3600ms ease both}.is-peek-left .kz-nori-grip-two,.is-peek-right .kz-nori-grip-two{animation:kz-nori-grip-in 3600ms 130ms ease both}
.is-hang .kz-nori-edge-body{animation:kz-nori-hang 3600ms ease both}.is-hang .kz-nori-grip{top:calc(var(--nori-size)*.17);width:27px;height:21px}.is-hang .kz-nori-grip-one{left:32%}.is-hang .kz-nori-grip-two{left:63%}
.is-climb .kz-nori-edge-body{animation:kz-nori-climb 3600ms ease both}.is-climb .kz-nori-grip{top:calc(var(--nori-size)*.765 - 20px);width:28px;height:22px}.is-climb .kz-nori-grip-one{left:28%}.is-climb .kz-nori-grip-two{left:74%}
.is-hop .kz-nori-puppet{animation:kz-nori-hop 1200ms ease both}.is-hop .kz-nori-leg-left{animation:kz-nori-tuck-left 1200ms ease}.is-hop .kz-nori-leg-right{animation:kz-nori-tuck-right 1200ms ease}
.is-perch .kz-nori-edge-body{animation:kz-nori-arrive 3600ms ease both}.is-wave .kz-nori-arm-right{animation:kz-nori-wave 1400ms ease-in-out 2}.is-inspect .kz-nori-head{animation:kz-nori-inspect 3500ms ease}.is-nap .kz-nori-head{animation:kz-nori-nap 3500ms ease}
.kz-nori-launch{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:50px;padding:12px 20px;background:transparent;color:var(--ink,#161616);border:1px solid var(--ink,#161616);border-radius:2px;font:500 13px/1.5 var(--sans,Arial,sans-serif);cursor:pointer}.kz-nori-launch:hover{background:#161616;color:#F4F0E5}
#kz-nori button:focus-visible,.kz-nori-launch:focus-visible{outline:2px solid #D94A38;outline-offset:3px}
.kz-nori-game{box-sizing:border-box;pointer-events:auto;width:min(750px,calc(100vw - 24px));height:min(680px,calc(100dvh - 24px));max-width:750px;max-height:calc(100dvh - 24px);overflow:hidden;overscroll-behavior:contain;margin:auto;padding:22px 28px 14px;border:1px solid #A39E94;border-radius:8px;background:#F4F0E5;color:#161616;box-shadow:0 24px 100px #0003}
.kz-nori-game[open]{display:flex;flex-direction:column;gap:10px}.kz-nori-game::backdrop{background:#16161688}
.kz-nori-game-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.kz-nori-kicker{font:9px/1.4 var(--sans,Arial,sans-serif);letter-spacing:.12em;color:#767269}.kz-nori-game h2{margin:2px 0 0;font:400 34px/1.05 var(--serif,Georgia,serif);letter-spacing:-.04em;color:#161616}
.kz-nori-return{flex-shrink:0;min-height:38px;border:0;border-bottom:1px solid #A39E94;background:transparent;padding:4px 0;font-size:11px;color:#161616;cursor:pointer}.kz-nori-return span{margin-left:10px}
.kz-nori-game #kz-nori-intro{font:12px/1.4 var(--sans,Arial,sans-serif);margin:0;color:#5d5a54;flex-shrink:0}
.kz-nori-meter{display:grid;grid-template-columns:auto minmax(30px,1fr) auto;gap:12px;align-items:center;flex-shrink:0}.kz-nori-meter-label{display:flex;gap:10px;font-size:11px;white-space:nowrap}.kz-nori-meter-label strong{color:#D94A38}
.kz-nori-progress{display:block;width:100%;height:7px;border:0;border-radius:20px;overflow:hidden;appearance:none;background:#DAD7CE;color:#D94A38;accent-color:#D94A38}.kz-nori-progress::-webkit-progress-bar{background:#DAD7CE}.kz-nori-progress::-webkit-progress-value{background:#D94A38;transition:width 250ms ease}.kz-nori-progress::-moz-progress-bar{background:#D94A38}
.kz-nori-gift{border:0;background:transparent;color:#D94A38;font-size:10px;padding:5px;cursor:pointer}
.kz-nori-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;flex-shrink:0}.kz-nori-tabs button{min-height:36px;border:1px solid #A39E94;background:transparent;border-radius:3px;font-size:11px;color:#161616;cursor:pointer}.kz-nori-tabs button[aria-pressed="true"]{background:#161616;color:#F4F0E5}
.kz-nori-room{position:relative;flex:1;min-height:0;overflow:hidden;border:1px solid #DAD7CE;border-radius:5px;background:linear-gradient(180deg,#F4F0E5,#EAE6DA55)}
.kz-nori-stage{position:absolute;inset:0;overflow:hidden;touch-action:none;container-type:size}
.kz-nori-request{position:absolute;left:12px;right:12px;top:12px;z-index:8;text-align:center;margin:0;font:15px/1.35 var(--sans,Arial,sans-serif);color:#161616;pointer-events:none}.kz-nori-request.is-selected{color:#D94A38}
.kz-nori-pet{position:absolute;left:50%;bottom:91px;transform:translateX(-50%);width:auto;height:min(290px,calc(100% - 141px));aspect-ratio:512/544;background:transparent;border:0;padding:0;cursor:grab;touch-action:none}.kz-nori-pet .kz-nori-puppet{height:100%}.kz-nori-pet:active{cursor:grabbing}.kz-nori-pet:disabled{cursor:wait}
.kz-nori-ground{position:absolute;bottom:89px;left:32%;width:40%;height:8px;background:#1616160d;border-radius:50%;pointer-events:none}
.kz-nori-foods{position:absolute;bottom:10px;left:12px;right:12px;z-index:9;height:74px}.kz-nori-fruits{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;width:min(440px,100%);height:100%;margin:auto}.kz-nori-fruits button{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;min-width:0;min-height:44px;border:1px solid #DAD7CE;border-radius:5px;background:#F4F0E5;padding:4px 2px;cursor:grab;touch-action:none;color:#161616;font-size:9px}.kz-nori-fruits svg{width:min(52px,100%);height:50px;filter:drop-shadow(0 2px 1px #16161611)}.kz-nori-fruits button.is-picked{opacity:.4;border-color:#D94A38}.kz-nori-fruits button:disabled{opacity:.5;cursor:wait}
.kz-nori-flight{position:absolute;left:0;top:0;width:56px;height:56px;pointer-events:none;z-index:12;filter:drop-shadow(0 3px 3px #16161622)}.kz-nori-flight svg{width:100%;height:100%}
.kz-nori-stage-controls{position:absolute;inset:auto 12px 10px;display:flex;justify-content:center;gap:8px;z-index:11;pointer-events:none}.kz-nori-stage-controls button{pointer-events:auto;min-height:34px;border:1px solid #A39E94;background:#F4F0E5;padding:6px 12px;border-radius:3px;color:#161616;font-size:11px;cursor:pointer}.kz-nori-stage-controls button:disabled{opacity:.5;cursor:wait}
[data-mode="food"] .kz-nori-stage-controls{inset:auto 12px 87px;justify-content:flex-end}.kz-nori-rope,.kz-nori-rope-score{display:none}
[data-mode="rope"] .kz-nori-foods,[data-mode="pet"] .kz-nori-foods{display:none}
[data-mode="rope"] .kz-nori-pet,[data-mode="pet"] .kz-nori-pet{bottom:53px;height:min(310px,calc(100% - 113px))}
[data-mode="rope"] .kz-nori-ground,[data-mode="pet"] .kz-nori-ground{bottom:52px}
[data-mode="rope"] .kz-nori-rope{display:block;position:absolute;width:100%;height:calc(100% - 58px);bottom:40px;left:0;pointer-events:none;overflow:visible}.kz-nori-rope path{stroke:#D94A38;stroke-width:3;fill:none;stroke-linecap:round}.kz-nori-rope-back{z-index:0}.kz-nori-rope-front{z-index:7}
[data-mode="rope"] .kz-nori-rope-score{display:flex;position:absolute;top:42px;right:14px;align-items:center;gap:5px;font-size:11px;z-index:9}.kz-nori-rope-score>span{color:#D94A38;font-size:22px;font-weight:600}.kz-nori-rope-score small{display:block;font-size:10px;margin-left:9px;color:#767269}
.is-jumping .kz-nori-puppet{animation:kz-nori-jump 620ms linear both}.is-jumping .kz-nori-leg-left{animation:kz-nori-tuck-left 620ms ease}.is-jumping .kz-nori-leg-right{animation:kz-nori-tuck-right 620ms ease}
[data-mode="rope"] .kz-nori-arm-right{transform:rotate(-22deg)}[data-mode="rope"] .kz-nori-arm-left{transform:rotate(22deg)}
.is-petted .kz-nori-head{animation:kz-nori-petted 900ms ease}.is-fed .kz-nori-head{animation:kz-nori-eat 1000ms ease}.is-fed .kz-nori-arm-right{transform:rotate(34deg)}.is-fed .kz-nori-arm-left{transform:rotate(-34deg)}.is-grumpy .kz-nori-puppet{animation:kz-nori-shake 550ms ease}
.kz-nori-hearts{position:absolute;inset:0;pointer-events:none;z-index:10}.kz-nori-hearts span{position:absolute;left:var(--heart-x,55%);top:45%;color:#D94A38;font-size:18px;animation:kz-nori-heart 1300ms ease-out both}
.kz-nori-reward{position:absolute;inset:0;padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;overflow:hidden}.kz-nori-reward h3{font:400 38px/1.05 var(--serif,Georgia,serif);letter-spacing:-.035em;margin:0;max-width:480px}.kz-nori-reward p{font:13px/1.55 var(--sans,Arial,sans-serif);margin:0;max-width:470px}.kz-nori-code-row{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;padding:12px;border:1px dashed #D94A38;border-radius:3px}.kz-nori-code-row code{font:600 17px/1.4 monospace;letter-spacing:.02em;white-space:nowrap}.kz-nori-code-row button,.kz-nori-reward>button{min-height:34px;border:1px solid #A39E94;background:transparent;padding:6px 10px;font-size:11px;color:#161616;cursor:pointer}.kz-nori-reward .kz-nori-reward-note{font-size:11px;color:#767269}
.kz-nori-feedback{display:flex;gap:8px;align-items:center;flex-shrink:0;min-height:32px}.kz-nori-status{margin:0;font:11px/1.4 var(--sans,Arial,sans-serif);color:#5d5a54;flex:1;min-width:0}.kz-nori-retry{min-height:30px;border:1px solid #A39E94;background:transparent;padding:4px 8px;cursor:pointer;color:#161616;font-size:10px}.kz-nori-save-note{font:9px/1.3 var(--sans,Arial,sans-serif);color:#767269;margin:0;flex-shrink:0}
@keyframes kz-nori-reach-left{0%,100%{transform:translateX(-95px) rotate(12deg)}20%{transform:translateX(0) rotate(6deg)}45%,70%{transform:translateX(22px) rotate(10deg)}}
@keyframes kz-nori-reach-right{0%,100%{transform:translateX(110px) rotate(-12deg)}20%{transform:translateX(0) rotate(-6deg)}45%,70%{transform:translateX(-25px) rotate(-10deg)}}
@keyframes kz-nori-grip-in{0%,100%{opacity:0;transform:scale(.6)}10%,88%{opacity:1;transform:scale(1)}}
@keyframes kz-nori-hang{0%,100%{transform:translateY(-170px) rotate(180deg)}23%,78%{transform:translateY(0) rotate(180deg)}45%{transform:translateY(0) rotate(187deg)}65%{transform:translateY(0) rotate(176deg)}}
@keyframes kz-nori-climb{0%,100%{transform:translateY(150px)}22%{transform:translateY(20px)}45%,78%{transform:translateY(0) rotate(-3deg)}}
@keyframes kz-nori-arrive{0%,100%{opacity:0;transform:translateY(45px)}18%,82%{opacity:1;transform:translateY(0)}}
@keyframes kz-nori-wave{0%,100%{transform:rotate(0)}25%,65%{transform:rotate(56deg)}45%,80%{transform:rotate(42deg)}}
@keyframes kz-nori-hop{0%,100%{transform:translateY(0) scale(1)}14%{transform:translateY(4px) scale(1.03,.97)}38%{transform:translateY(-42px) rotate(-3deg)}65%{transform:translateY(2px) scale(1.02,.98)}80%{transform:translateY(-12px) rotate(2deg)}}
@keyframes kz-nori-jump{0%,100%{transform:translateY(0)}10%{transform:translateY(3px) scale(1.03,.97)}30%,65%{transform:translateY(calc(-1 * var(--nori-jump-height,45px)))}85%{transform:translateY(-10px)}}
@keyframes kz-nori-tuck-left{0%,100%{transform:rotate(0)}35%,65%{transform:rotate(18deg) translateY(-4px)}}@keyframes kz-nori-tuck-right{0%,100%{transform:rotate(0)}35%,65%{transform:rotate(-18deg) translateY(-4px)}}
@keyframes kz-nori-inspect{0%,100%{transform:rotate(0)}25%{transform:rotate(-9deg)}65%{transform:rotate(7deg)}}@keyframes kz-nori-nap{0%,100%{transform:rotate(0)}20%,80%{transform:rotate(-10deg) translateY(3px)}}
@keyframes kz-nori-petted{0%,100%{transform:rotate(0)}25%,75%{transform:rotate(-6deg) translateY(2px)}50%{transform:rotate(5deg)}}@keyframes kz-nori-eat{0%,100%{transform:translateY(0)}25%,65%{transform:translateY(3px) rotate(3deg)}45%,80%{transform:translateY(-2px) rotate(-2deg)}}@keyframes kz-nori-shake{20%,60%{transform:translateX(-4px)}40%,80%{transform:translateX(4px)}}@keyframes kz-nori-heart{0%{opacity:0;transform:translateY(10px) scale(.6)}20%{opacity:1}100%{opacity:0;transform:translateY(-65px)}}
@media(max-width:640px){.kz-nori-dock{width:62px;min-height:74px;left:calc(10px + env(safe-area-inset-left,0px));bottom:calc(10px + env(safe-area-inset-bottom,0px))}.kz-nori-game{width:calc(100vw - 16px);height:min(740px,calc(100dvh - 16px));max-height:calc(100dvh - 16px);padding:16px 14px 10px;gap:8px!important}.kz-nori-game h2{font-size:29px}.kz-nori-kicker{font-size:7px}.kz-nori-return{font-size:10px}.kz-nori-game #kz-nori-intro{font-size:11px}.kz-nori-meter{gap:7px}.kz-nori-meter-label{font-size:10px;gap:7px}.kz-nori-tabs button{font-size:10px;min-height:34px}.kz-nori-request{font-size:14px}.kz-nori-rope-score{font-size:10px!important}.kz-nori-reward{padding:16px;gap:12px}.kz-nori-reward h3{font-size:31px}.kz-nori-code-row code{font-size:15px}}
@media(max-height:540px){.kz-nori-game{padding:8px 14px;gap:5px!important}.kz-nori-game h2{font-size:24px}.kz-nori-game #kz-nori-intro,.kz-nori-save-note{display:none}.kz-nori-game-top{min-height:37px}.kz-nori-return{min-height:30px}.kz-nori-tabs button{min-height:28px}.kz-nori-feedback{min-height:24px}.kz-nori-request{top:5px;font-size:11px}.kz-nori-pet{left:70%;bottom:8px;height:calc(100% - 37px);max-height:190px}.kz-nori-foods{left:8px;right:auto;width:47%;bottom:8px;height:calc(100% - 32px);max-height:160px}.kz-nori-fruits{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:4px}.kz-nori-fruits button{font-size:8px;min-height:44px;padding:1px}.kz-nori-fruits svg{width:34px;height:34px}[data-mode="food"] .kz-nori-stage-controls{inset:auto 5px 1px;justify-content:flex-end}.kz-nori-stage-controls button{min-height:27px;padding:3px 8px;font-size:10px}[data-mode="rope"] .kz-nori-pet,[data-mode="pet"] .kz-nori-pet{height:calc(100% - 62px);bottom:32px;left:50%}[data-mode="rope"] .kz-nori-rope{height:calc(100% - 30px);bottom:26px}[data-mode="rope"] .kz-nori-rope-score{top:20px;right:8px}.kz-nori-reward{padding:9px;gap:5px}.kz-nori-reward h3{font-size:23px}.kz-nori-reward p{font-size:11px}.kz-nori-code-row{padding:4px 9px}.kz-nori-code-row code{font-size:13px}.kz-nori-reward .kz-nori-reward-note{font-size:9px}.kz-nori-reward>button,.kz-nori-code-row button{min-height:27px;font-size:10px;padding:3px 8px}}
@media(prefers-reduced-motion:reduce){#kz-nori *,#kz-nori *::before,#kz-nori *::after{animation:none!important;transition:none!important}.kz-nori-ambient{display:none!important}.kz-nori-hearts{display:none!important}}

/* Articulated ears follow the head with a softer, delayed movement. */
.kz-nori-head{pointer-events:none}.kz-nori-face{z-index:2}.kz-nori-ear-upright{z-index:1;transform-origin:82.5% 46.3%}.kz-nori-ear-folded{z-index:3;transform-origin:54.5% 40.9%}
.kz-nori-ambient .kz-nori-ear-upright{animation:kz-nori-ear-listen 3800ms 120ms ease-in-out both}.kz-nori-ambient .kz-nori-ear-folded{animation:kz-nori-ear-listen 3800ms 240ms ease-in-out reverse both}
.kz-nori-ambient.is-corner,.kz-nori-ambient.is-card{overflow:hidden;filter:none}.is-corner .kz-nori-edge-body,.is-card .kz-nori-edge-body{height:calc(var(--nori-size)*544/512);animation:kz-nori-curious-rise 3800ms cubic-bezier(.22,.7,.25,1) both;transform-origin:61% 62%}
.is-corner .kz-nori-torso,.is-corner .kz-nori-tail,.is-corner .kz-nori-leg-left,.is-corner .kz-nori-leg-right,.is-corner .kz-nori-arm-left,.is-corner .kz-nori-arm-right,.is-card .kz-nori-torso,.is-card .kz-nori-tail,.is-card .kz-nori-leg-left,.is-card .kz-nori-leg-right,.is-card .kz-nori-arm-left,.is-card .kz-nori-arm-right{visibility:hidden}
.is-corner.from-right .kz-nori-head,.is-card.from-right .kz-nori-head{--nori-lean:7deg}.is-corner.from-left .kz-nori-head,.is-card.from-left .kz-nori-head{--nori-lean:-7deg}
.is-corner .kz-nori-head,.is-card .kz-nori-head{animation:kz-nori-curious-tilt 3800ms ease-in-out both}
.is-card .kz-nori-grip{display:block;top:calc(var(--nori-cut) - 9px);width:calc(var(--nori-size)*.10);height:14px;border-radius:50% 50% 35% 35%;animation:kz-nori-card-paws 3800ms ease both}.is-card .kz-nori-grip-one{left:35%}.is-card .kz-nori-grip-two{left:77%}
.is-peek-left .kz-nori-torso,.is-peek-left .kz-nori-tail,.is-peek-left .kz-nori-leg-left,.is-peek-left .kz-nori-leg-right,.is-peek-left .kz-nori-arm-left,.is-peek-left .kz-nori-arm-right,.is-peek-right .kz-nori-torso,.is-peek-right .kz-nori-tail,.is-peek-right .kz-nori-leg-left,.is-peek-right .kz-nori-leg-right,.is-peek-right .kz-nori-arm-left,.is-peek-right .kz-nori-arm-right{visibility:hidden}
.is-peek-left .kz-nori-edge-body{transform-origin:52% 70%;animation:kz-nori-edge-left 3800ms cubic-bezier(.22,.7,.25,1) both}.is-peek-right .kz-nori-edge-body{transform-origin:48% 70%;animation:kz-nori-edge-right 3800ms cubic-bezier(.22,.7,.25,1) both}.is-peek-right .kz-nori-puppet{transform:scaleX(-1)}
.is-peek-left .kz-nori-grip{left:calc(var(--nori-size)*.40 - 7px)}.is-peek-right .kz-nori-grip{right:calc(var(--nori-size)*.28 - 7px)}.is-peek-left .kz-nori-grip,.is-peek-right .kz-nori-grip{width:16px;height:20px}.is-peek-left .kz-nori-grip-one,.is-peek-right .kz-nori-grip-one{top:46%}.is-peek-left .kz-nori-grip-two,.is-peek-right .kz-nori-grip-two{top:66%}
.kz-nori-fruits button>span{position:static;line-height:1.15;text-align:center}.kz-nori-rope circle{fill:#161616;stroke:#F4F0E5;stroke-width:1}.kz-nori-rope path{stroke-width:4;stroke:#D94A38;filter:drop-shadow(0 1px 1px #16161633)}.kz-nori-rope path.kz-nori-rope-glint{stroke:#F4B4A5;stroke-width:1;filter:none}
[data-mode="rope"] .kz-nori-arm-right{transform:rotate(calc(-22deg + var(--nori-wrist,0deg)))}[data-mode="rope"] .kz-nori-arm-left{transform:rotate(calc(22deg - var(--nori-wrist,0deg)))}
@keyframes kz-nori-curious-rise{0%,100%{transform:translateY(calc(var(--nori-size)*.75))}20%{transform:translateY(calc(var(--nori-size)*.15))}35%,75%{transform:translateY(0)}87%{transform:translateY(calc(var(--nori-size)*.08))}}
@keyframes kz-nori-curious-tilt{0%,30%,100%{transform:rotate(0)}45%,60%{transform:rotate(var(--nori-lean,-7deg))}75%{transform:rotate(calc(-.5 * var(--nori-lean,-7deg)))}}
@keyframes kz-nori-card-paws{0%,12%,100%{transform:translateY(18px)}20%,87%{transform:translateY(0)}95%{transform:translateY(18px)}}
@keyframes kz-nori-ear-listen{0%,25%,100%{transform:rotate(0)}48%{transform:rotate(-5deg)}66%{transform:rotate(4deg)}}
@keyframes kz-nori-edge-left{0%,100%{transform:translateX(calc(var(--nori-size)*-.9)) rotate(-36deg)}20%{transform:translateX(calc(var(--nori-size)*-.10)) rotate(-22deg)}40%,73%{transform:translateX(0) rotate(-12deg)}85%{transform:translateX(calc(var(--nori-size)*-.08)) rotate(-20deg)}}
@keyframes kz-nori-edge-right{0%,100%{transform:translateX(calc(var(--nori-size)*.9)) rotate(36deg)}20%{transform:translateX(calc(var(--nori-size)*.10)) rotate(22deg)}40%,73%{transform:translateX(0) rotate(12deg)}85%{transform:translateX(calc(var(--nori-size)*.08)) rotate(20deg)}}
@media(max-width:640px){.kz-nori-dock{left:auto;right:var(--nori-dock-right,calc(11px + env(safe-area-inset-right,0px)));bottom:var(--nori-dock-bottom,calc(77px + env(safe-area-inset-bottom,0px)))}.actions .kz-nori-launch{display:flex;justify-content:center;gap:14px;margin-inline:auto;text-align:center;width:100%;max-width:100%;align-self:center}.kz-nori-foods{left:7px;right:7px}.kz-nori-fruits{gap:3px}.kz-nori-fruits button{font-size:8px}.kz-nori-rope-score{flex-wrap:wrap;justify-content:flex-end;max-width:220px}.kz-nori-rope-score small{margin-left:5px}}
@media(max-height:540px){.kz-nori-rope-score{top:18px!important;max-width:200px}.kz-nori-foods{left:6px;right:auto}}

.kz-nori-ambient.is-corner.at-top{overflow:visible}.is-corner.at-top .kz-nori-grip{display:block}

/* Comic dialogue: the tail points from the message toward Nori. */
.kz-nori-speech{border:2px solid #161616;background:#fffdf6;border-radius:22px 25px 20px 24px;box-shadow:3px 3px 0 #16161612;color:#161616}
.kz-nori-speech::after{content:"";position:absolute;pointer-events:none;width:17px;height:17px;background:#fffdf6;border-right:2px solid #161616;border-bottom:2px solid #161616;transform:rotate(45deg)}
[data-mode="food"] .kz-nori-request{left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:calc(100% - 30px);padding:10px 18px;font-weight:500;top:10px}
[data-mode="food"] .kz-nori-request::after{left:58%;bottom:-10px}
[data-mode="food"] .kz-nori-request.is-selected{color:#161616}
[data-mode="pet"] .kz-nori-request,[data-mode="rope"] .kz-nori-request{border:0;background:transparent;box-shadow:none;border-radius:0}
[data-mode="pet"] .kz-nori-request::after,[data-mode="rope"] .kz-nori-request::after{display:none}
.kz-nori-brief-guide{position:absolute;right:max(12px,env(safe-area-inset-right,0px));bottom:max(112px,env(safe-area-inset-bottom,0px));width:min(470px,calc(100% - 24px));display:grid;grid-template-columns:minmax(0,1fr) 126px;gap:20px;align-items:center;pointer-events:none}
.kz-nori-brief-speech{position:relative;padding:15px 17px;pointer-events:auto;min-width:0}
.kz-nori-brief-speech::after{right:-10px;top:40%;transform:rotate(-45deg)}
.kz-nori-speaker{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;font-weight:600}
#kz-nori .kz-nori-brief-speech p{margin:0;font:13px/1.5 var(--sans,Arial,sans-serif);overflow-wrap:anywhere}
.kz-nori-brief-speech button{display:block;margin-top:10px;min-height:40px;padding:7px 10px;background:#161616;color:#F4F0E5;border:0;border-radius:4px;font-size:11px;cursor:pointer}
.kz-nori-brief-actor{width:126px;transform-origin:50% 90%;pointer-events:none}
.kz-nori-dock.is-guiding{visibility:hidden}
.kz-nori-brief-guide.is-entering .kz-nori-brief-actor{animation:kz-nori-help-entry 850ms cubic-bezier(.22,.7,.25,1) both}
.kz-nori-brief-guide.is-entering .kz-nori-leg-left{animation:kz-nori-tuck-left 850ms ease both}.kz-nori-brief-guide.is-entering .kz-nori-leg-right{animation:kz-nori-tuck-right 850ms ease both}
.kz-nori-brief-guide.is-entering .kz-nori-brief-speech{animation:kz-nori-help-bubble 300ms 250ms ease-out both}
@keyframes kz-nori-help-entry{0%{transform:translate(190px,20px) rotate(9deg)}35%{transform:translate(-12px,-34px) rotate(-7deg)}60%{transform:translate(4px,4px) scale(1.03,.97)}80%{transform:translate(0,-6px)}100%{transform:translate(0,0)}}
@keyframes kz-nori-help-bubble{from{opacity:0;transform:translateY(5px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:640px){.kz-nori-brief-guide{grid-template-columns:minmax(0,1fr) 84px;gap:13px;bottom:max(112px,env(safe-area-inset-bottom,0px));width:calc(100% - 24px)}.kz-nori-brief-actor{width:84px}.kz-nori-brief-speech{padding:12px 13px}.kz-nori-brief-speech::after{width:13px;height:13px;right:-8px}.kz-nori-brief-speech button{min-height:44px}#kz-nori .kz-nori-brief-speech p{font-size:12px;line-height:1.45}}
@media(max-height:540px){.kz-nori-brief-guide{bottom:72px;grid-template-columns:minmax(0,1fr) 90px;width:min(450px,calc(100% - 24px))}.kz-nori-brief-actor{width:90px}.kz-nori-brief-speech{padding:10px 13px}#kz-nori .kz-nori-brief-speech p{font-size:11px}.kz-nori-brief-speech button{min-height:32px;margin-top:6px}[data-mode="food"] .kz-nori-request{left:68%;top:4px;max-width:60%;padding:5px 10px;font-size:11px}[data-mode="food"] .kz-nori-request::after{width:10px;height:10px;bottom:-6px}}
