/* Peek-a-Boo: dimensional nature scenes, staggered hideouts and large letter cards. */
.peek-tile{background:linear-gradient(145deg,#dcf8bd,#a9e9aa);color:#3e6c45}
.peek-screen{max-width:1220px;margin:0 auto;padding:0 20px 12px}.peek-screen[hidden]{display:none}
.peek-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px}.peek-heading h1{font-size:clamp(24px,3vw,36px);color:#466c57;margin:1px 0;letter-spacing:-.8px}.peek-heading .home-kicker{color:#6c8b55;font-size:10px;letter-spacing:2px}
.peek-heading-status{display:flex;align-items:center;gap:10px}.peek-count{min-width:86px;min-height:50px;display:grid;place-items:center;padding:0 10px;background:linear-gradient(#fffbea,#f7e7b5);border:3px solid #fff;border-radius:20px;box-shadow:0 3px 0 #ccb577;color:#796137;font-size:20px;font-weight:900}
.peek-target{display:flex;align-items:center;gap:10px;min-height:54px;padding:3px 5px 3px 15px;background:linear-gradient(140deg,#648166,#375d49);border:3px solid #e6f7bd;border-radius:23px;box-shadow:0 3px 0 #294d3e,0 3px 12px #4d704729;color:#fff9da;font-size:17px;font-weight:900}.peek-target strong{width:51px;height:51px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(#fffdf1,#ffe9a8);box-shadow:inset 0 -3px 0 #dcb879;color:#6a549c;font-size:42px;line-height:1}.peek-target strong.hint{animation:peek-hint .35s ease}
.peek-alphabet{display:grid;grid-template-columns:repeat(26,minmax(0,1fr));gap:3px;margin:0 0 9px;padding:5px 8px;background:#ffffff70;border:1px solid #ffffffa6;border-radius:16px}.peek-alphabet span{height:25px;display:grid;place-items:center;border-radius:8px;color:#5e796b;font-weight:800;font-size:14px;transition:background .2s,color .2s}.peek-alphabet span.done{background:linear-gradient(#fff5ae,#f7d26c);color:#766029;box-shadow:inset 0 -2px 0 #dabc63}.peek-alphabet span.next{background:#7b639d;color:#fff;border:2px solid #ffefb3;box-shadow:0 0 0 2px #b6a0d5}
.peek-meadow{position:relative;isolation:isolate;overflow:hidden;height:clamp(430px,calc(100dvh - 238px),690px);border:4px solid #fff8dd;border-radius:30px;background:#acd58b url('peek-art/meadow.webp') center 54%/cover no-repeat;box-shadow:0 5px 0 #80a567,0 12px 25px #37675126;touch-action:manipulation}
.peek-meadow[data-theme=forest]{background-image:url('peek-art/forest.webp');box-shadow:0 5px 0 #779169,0 12px 25px #37675126}.peek-meadow[data-theme=pond]{background-image:url('peek-art/pond.webp');box-shadow:0 5px 0 #77a8a2,0 12px 25px #37675126}
.peek-meadow:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(#faffdc0d,transparent 65%,#29482c12);z-index:5}
.peek-critters{position:absolute;inset:0;z-index:3}.peek-slot{position:absolute;width:29%;height:53%;left:9%;top:4%;z-index:1}.peek-slot:nth-child(2){left:59%;top:1%;width:28%;height:51%}.peek-slot:nth-child(3){left:24%;top:43%;width:30%;height:54%;z-index:2}.peek-slot:nth-child(4){left:66%;top:41%;width:30%;height:54%;z-index:2}
.peek-critter{position:relative;width:100%;height:100%;border:0;margin:0;padding:0;background:transparent;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;overflow:visible}.peek-critter:before{content:'';position:absolute;inset:auto 12% 4%;height:12%;border-radius:50%;background:radial-gradient(ellipse,#253c2166,transparent 70%);transform:scaleX(1.2);pointer-events:none}.peek-critter:focus-visible{outline:4px solid #fff0a0;outline-offset:-4px;border-radius:45%}
.peek-reveal{position:absolute;inset:0 0 17%;overflow:hidden;pointer-events:none}.peek-presenter{position:absolute;inset:0;animation:peek-emerge .65s cubic-bezier(.2,.8,.3,1.15) both;transform-origin:50% 80%}.peek-model{position:absolute;height:100%;width:auto;aspect-ratio:1;bottom:0;left:50%;translate:-50% 0;filter:drop-shadow(0 4px 4px #30402925);animation:peek-breathe 3.8s ease-in-out infinite;animation-delay:var(--idle-delay,0s);transform-origin:50% 85%}.peek-model img,.peek-blink{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.peek-blink{opacity:0;animation:peek-blink 5.4s infinite;animation-delay:var(--idle-delay,0s)}
.peek-critter-letter{position:absolute;z-index:4;left:50%;bottom:22%;transform:translateX(-50%) rotate(-4deg);width:clamp(70px,7vw,88px);height:clamp(70px,7vw,88px);display:grid;place-items:center;background:linear-gradient(135deg,#fffef5,#fff1c0 65%,#f1d887);border:4px solid #fff9e7;border-radius:25px;color:#7254a0;font-weight:900;font-size:clamp(57px,5.8vw,72px);line-height:1;box-shadow:0 5px 0 #bc924d,0 7px 12px #2a462954,inset 0 2px 0 white;text-shadow:0 2px white;transition:box-shadow .25s;pointer-events:none;animation:peek-card-in .65s ease-out both}.peek-critter.next .peek-critter-letter{box-shadow:0 5px 0 #bc924d,0 0 0 4px #eedbff,0 0 22px #f8edb5aa;animation:peek-card-in .65s ease-out both,peek-letter-invite 2.2s .65s ease-in-out infinite}.peek-hiding-place{position:absolute;z-index:3;bottom:2%;left:-4%;width:108%;height:39%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 5px 3px #30472b40);pointer-events:none;transform-origin:50% 100%;animation:peek-hideout-sway 5s ease-in-out infinite alternate}.peek-place-log .peek-hiding-place{height:36%;animation:none}.peek-place-stump .peek-hiding-place{height:37%;animation:none}.peek-place-rock .peek-hiding-place{height:36%;animation:none}
.peek-critter.found{pointer-events:none}.peek-critter.found .peek-presenter{animation:peek-hide .64s ease-in both}.peek-critter.found .peek-critter-letter{animation:peek-letter-thanks .64s both}.peek-critter.try-again .peek-presenter{animation:peek-gentle-wiggle .4s ease}.peek-critter.try-again .peek-critter-letter{box-shadow:0 5px 0 #bc924d,0 0 0 4px #ffe2a1}
.peek-tap-sparkles{position:absolute;inset:0;pointer-events:none;z-index:7}.peek-tap-sparkles i{position:absolute;left:50%;top:40%;width:12px;height:12px;opacity:0;background:#fff4a0;clip-path:polygon(50% 0,62% 35%,100% 50%,62% 62%,50% 100%,35% 62%,0 50%,35% 35%);--dx:-75px;--dy:-60px}.peek-tap-sparkles i:nth-child(2){--dx:65px;--dy:-75px;background:#fff}.peek-tap-sparkles i:nth-child(3){--dx:95px;--dy:5px;background:#ebc3ff}.peek-tap-sparkles i:nth-child(4){--dx:-90px;--dy:25px}.peek-tap-sparkles i:nth-child(5){--dx:5px;--dy:-100px;background:#e5f9ff}.peek-critter.found .peek-tap-sparkles i{animation:peek-spark .65s ease-out both}
.peek-flora{position:absolute;inset:0;pointer-events:none;z-index:4}.peek-flora img{position:absolute;width:17%;bottom:-7%;left:-5%;transform-origin:bottom;animation:peek-hideout-sway 4s ease-in-out infinite alternate}.peek-flora img:nth-child(2){left:auto;right:-6%;width:20%;bottom:-5%;animation-delay:-2s}
.peek-cloud{position:absolute;pointer-events:none;width:100px;height:26px;background:#fffdf590;border-radius:50%;filter:blur(6px);box-shadow:25px -9px 0 3px #fffdf590;animation:peek-cloud-drift 21s ease-in-out infinite alternate;z-index:1}.peek-cloud-one{top:9%;left:36%}.peek-cloud-two{top:15%;left:67%;scale:.65;animation-delay:-10s}.peek-meadow[data-theme=forest] .peek-cloud{opacity:.45}
.peek-butterfly{position:absolute;width:42px;height:35px;z-index:2;pointer-events:none;animation:peek-fly 10s ease-in-out infinite alternate;filter:drop-shadow(0 2px 1px #3d784429)}.peek-butterfly svg{width:100%;height:100%;animation:peek-wing .7s ease-in-out infinite alternate}.peek-butterfly-one{left:45%;top:20%}.peek-butterfly-two{left:5%;top:62%;width:28px;animation-delay:-4s}.peek-atmosphere{position:absolute;inset:0;pointer-events:none;z-index:1}.peek-atmosphere i{position:absolute;width:5px;height:5px;border-radius:50%;background:#fffad1;box-shadow:0 0 8px #fffadd;top:48%;left:5%;animation:peek-pollen 8s ease-in-out infinite;opacity:0}.peek-atmosphere i:nth-child(2){left:35%;top:33%;animation-delay:-3s}.peek-atmosphere i:nth-child(3){left:74%;top:47%;animation-delay:-5s}.peek-atmosphere i:nth-child(4){left:54%;top:65%;animation-delay:-1s}.peek-atmosphere i:nth-child(5){left:92%;top:28%;animation-delay:-7s}.peek-atmosphere i:nth-child(6){left:19%;top:70%;animation-delay:-4s}
.peek-water-shine{position:absolute;left:25%;right:20%;bottom:6%;height:29%;pointer-events:none;background:repeating-radial-gradient(ellipse at 50% 70%,transparent 0 28px,#ecffff5e 29px 30px,transparent 31px 59px);border-radius:50%;opacity:0;animation:peek-ripple 4.5s ease-in-out infinite}.peek-meadow[data-theme=pond] .peek-water-shine{opacity:.4}
.peek-letter-pop{position:absolute;z-index:8;left:50%;top:9%;transform:translateX(-50%);width:clamp(80px,11vw,120px);height:clamp(80px,11vw,120px);display:grid;place-items:center;background:linear-gradient(#fffbe2,#ffe183);border:5px solid #fffdf5;border-radius:32px;box-shadow:0 6px 0 #c79648,0 10px 25px #46614d50;color:#75569d;font-size:clamp(62px,8.5vw,94px);font-weight:900;pointer-events:none}.peek-letter-pop[hidden],.peek-finish[hidden]{display:none}.peek-letter-pop.show{animation:peek-letter-pop .85s ease-out both}
.peek-finish{position:absolute;inset:0;z-index:9;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;background:linear-gradient(#edf9d9e8,#daf2bae8);color:#72579b;text-align:center}.peek-finish strong{font-size:clamp(75px,12vw,130px);text-shadow:0 4px #fff8bd;animation:peek-hint .6s both}.peek-finish span{max-width:700px;padding:0 20px;font-size:clamp(22px,3.3vw,38px);font-weight:900;letter-spacing:8px;line-height:1.7;word-break:break-all;color:#47744f}
@keyframes peek-emerge{0%{transform:translateY(110%)}65%{transform:translateY(-4%)}100%{transform:translateY(0)}}
@keyframes peek-hide{0%{transform:translateY(0)}28%{transform:translateY(-5%) rotate(3deg)}100%{transform:translateY(110%)}}
@keyframes peek-breathe{0%,100%{transform:rotate(-1.3deg) scale(1)}50%{transform:rotate(1.3deg) scale(1.015,1.025)}}
@keyframes peek-blink{0%,43%,47%,100%{opacity:0}44%,46%{opacity:1}}
@keyframes peek-hideout-sway{to{transform:rotate(1.3deg) scaleX(1.015)}}
@keyframes peek-letter-invite{50%{translate:0 -4px}}
@keyframes peek-letter-thanks{30%{scale:1.13;rotate:7deg;opacity:1}100%{scale:.65;translate:0 70px;opacity:0}}
@keyframes peek-letter-pop{0%{scale:.5;opacity:0;translate:0 20px}25%{scale:1.1;opacity:1}75%{scale:1;opacity:1;translate:0 0}100%{opacity:0;translate:0 -18px}}
@keyframes peek-spark{15%{opacity:1}100%{transform:translate(var(--dx),var(--dy)) rotate(100deg) scale(.2);opacity:0}}
@keyframes peek-gentle-wiggle{25%{transform:rotate(-3deg)}55%{transform:rotate(3deg)}80%{transform:rotate(-1deg)}}
@keyframes peek-hint{50%{transform:scale(1.12)}}
@keyframes peek-cloud-drift{to{translate:65px 0}}
@keyframes peek-fly{25%{translate:35px -12px;rotate:8deg}65%{translate:-25px 8px;rotate:-8deg}100%{translate:45px -20px}}
@keyframes peek-wing{to{transform:scaleX(.6) rotate(4deg)}}
@keyframes peek-pollen{20%,70%{opacity:.65}100%{translate:35px -55px;opacity:0}}
@keyframes peek-ripple{50%{transform:scale(1.07,.95)}}
@media(max-width:760px){.peek-screen{padding:0 10px 10px}.peek-heading{gap:6px}.peek-heading h1{font-size:23px}.peek-heading .home-kicker{font-size:9px;letter-spacing:1px}.peek-heading-status{gap:5px}.peek-target{padding:3px 4px 3px 8px;gap:5px;font-size:12px;min-height:43px;border-width:2px;border-radius:17px}.peek-target strong{width:38px;height:38px;font-size:31px;border-radius:12px}.peek-count{min-width:60px;min-height:43px;font-size:16px;padding:0 5px;border-width:2px;border-radius:16px}.peek-alphabet{grid-template-columns:repeat(13,minmax(0,1fr));padding:5px;gap:2px}.peek-alphabet span{height:22px;font-size:12px}.peek-meadow{height:clamp(470px,calc(100dvh - 250px),690px);border-radius:24px;background-position:center}.peek-slot{left:1%;top:5%;width:47%;height:43%}.peek-slot:nth-child(2){left:51%;top:2%;width:47%;height:44%}.peek-slot:nth-child(3){left:3%;top:50%;width:48%;height:46%}.peek-slot:nth-child(4){left:51%;top:46%;width:48%;height:46%}.peek-critter-letter{width:70px;height:70px;font-size:57px;border-width:3px;border-radius:20px}.peek-flora img{width:27%;bottom:-4%;left:-11%}.peek-flora img:nth-child(2){width:29%;right:-11%}}
@media(max-width:410px){.peek-heading h1{font-size:20px;letter-spacing:-.5px}.peek-target{font-size:11px;gap:3px;padding-left:5px}.peek-target strong{width:34px;height:34px;font-size:28px}.peek-count{min-width:52px;font-size:14px}.peek-heading-status{gap:4px}.peek-critter-letter{width:64px;height:64px;font-size:51px}}
@media(max-height:650px) and (min-width:761px){.peek-meadow{height:390px}.peek-heading h1{font-size:26px}.peek-target{min-height:43px}.peek-target strong{width:40px;height:40px;font-size:33px}.peek-alphabet{margin-bottom:7px}.peek-critter-letter{width:72px;height:72px;font-size:58px}}
.peek-screen[hidden] *,.peek-meadow[data-paused=true] *{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.peek-screen *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}}

@keyframes peek-card-in{0%{opacity:0;translate:0 30px;scale:.8}65%{opacity:1;translate:0 -4px;scale:1.05}100%{opacity:1;translate:0 0;scale:1}}

.peek-model>.lisa-character{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#peek-meadow[data-paused=true] .character-bird image{animation-play-state:paused}
