.gsec{background:linear-gradient(180deg,#8FD8FF 0%,#D9F4FF 45%,#8FE07A 45%,#5CC255 100%);padding:28px 0 40px;border-bottom:3px solid var(--ink)}
.game{position:relative;width:100%;max-width:470px;margin:0 auto;border:4px solid var(--ink);border-radius:32px;background:linear-gradient(180deg,#8FD8FF 0%,#D9F4FF 48%,#8FE07A 48%,#5CC255 100%);box-shadow:0 8px 0 var(--ink);overflow:hidden;font-family:var(--b)}
.trees{position:absolute;left:0;right:0;top:0;height:110px;pointer-events:none}
.trees i{position:absolute;border-radius:50%;border:3px solid var(--ink);background:#3FA84A}
.trees i:nth-child(1){left:-30px;top:-55px;width:200px;height:170px}
.trees i:nth-child(2){left:120px;top:-75px;width:220px;height:170px;background:#4BB955}
.trees i:nth-child(3){right:-40px;top:-55px;width:210px;height:170px}
.hud{position:relative;z-index:6;display:flex;align-items:center;gap:10px;padding:14px}
.hbtn{width:48px;height:48px;border-radius:50%;background:#fff;border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);display:flex;align-items:center;justify-content:center;flex:none}
.timebar{flex-grow:1;height:26px;border:3px solid var(--ink);border-radius:999px;background:#fff;overflow:hidden}
.timebar i{display:block;height:100%;width:100%;background:var(--coral)}
.score{display:flex;align-items:center;gap:4px;height:48px;padding:0 14px 0 8px;border:3px solid var(--ink);border-radius:999px;background:#fff;box-shadow:0 4px 0 var(--ink);font-family:var(--d);font-size:26px;font-weight:700;flex:none}
.field{position:relative;height:clamp(490px,62vh,560px);z-index:5;margin-top:-4px}
.field #items{position:absolute;inset:0;overflow:hidden}
.itm{position:absolute;width:76px;height:76px;margin-left:-38px;padding:0;border:0;background:transparent;cursor:pointer;touch-action:manipulation}
.itm:active{transform:scale(.85)}
.pop{position:absolute;margin-left:-20px;font-family:var(--d);font-size:34px;font-weight:700;color:var(--ink);text-shadow:0 2px 0 #fff;pointer-events:none;animation:popup .7s ease-out forwards}
@keyframes popup{0%{transform:translateY(0) scale(.6);opacity:1}100%{transform:translateY(-40px) scale(1.3);opacity:0}}
.panel{position:absolute;left:14px;right:14px;top:10px;border:4px solid var(--ink);border-radius:30px;background:#fff;box-shadow:0 8px 0 var(--ink);padding:22px 16px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;z-index:6}
.panel[hidden]{display:none}
.panel h2{font-size:42px;line-height:.95;text-align:left}
.panel h2 span{color:var(--coral)}
.panel .row{display:flex;align-items:center;gap:14px}
.panel .row img{width:64px;height:64px;border-radius:18px;display:block}
.panel .chan{display:block;width:150px;height:150px;border-radius:24px;border:3px solid var(--ink);object-fit:cover;animation:bob 2.6s ease-in-out infinite}
.panel .say{font-weight:800;font-size:19px;line-height:1.35;max-width:300px}
.panel .small{font-size:16px;color:var(--mute);max-width:300px;line-height:1.4}
.big{min-height:72px;width:230px;border-radius:999px;border:4px solid var(--ink);background:var(--sun);box-shadow:0 6px 0 var(--ink);font-family:var(--d);font-size:34px;font-weight:700;color:var(--ink);cursor:pointer;animation:pulse 1.4s ease-in-out infinite}
.big:active{transform:translateY(3px);box-shadow:0 3px 0 var(--ink)}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.chosen{display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--d);font-size:36px;font-weight:700;line-height:1}
.choices{display:flex;gap:10px;justify-content:center}
.ch{cursor:pointer;border:3px solid var(--ink);border-radius:22px;box-shadow:0 5px 0 var(--ink);padding:8px;display:flex;flex-direction:column;align-items:center;gap:6px;width:min(118px,29vw);font-family:var(--d);font-size:26px;font-weight:700;color:var(--ink);min-height:44px}
.ch:active{transform:translateY(3px);box-shadow:0 2px 0 var(--ink)}
.ch img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px;border:2px solid var(--ink)}
.ch.save{background:var(--mint)}.ch.save img{object-position:50% 55%}
.ch.spend{background:var(--lilac)}.ch.spend img{object-position:50% 60%}
.ch.share{background:var(--butter)}.ch.share img{object-position:50% 30%}
.brilliant{font-family:var(--d);font-size:42px;font-weight:700;line-height:1;color:var(--coral)}
.album{position:relative;z-index:3;margin:0 10px 12px;border:4px solid var(--ink);border-radius:28px;background:var(--cream);box-shadow:0 6px 0 var(--ink);padding:12px 14px;display:flex;gap:12px}
.album .jarcol{width:104px;display:flex;flex-direction:column;align-items:center;gap:6px}
.album h3{font-size:17px;line-height:1}
.jar{position:relative;width:76px;height:150px;border:4px solid var(--ink);border-radius:14px 14px 26px 26px;background:#fff;overflow:hidden}
.jar #jar-fill{position:absolute;left:0;right:0;bottom:0;height:0;background:#FFC93C;border-top:3px solid #C98A00;transition:height .6s}
.album .cnt{font-family:var(--d);font-size:19px;font-weight:700}
.album .rest{flex-grow:1;display:flex;flex-direction:column;gap:6px;min-width:0}
#stickers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.slot{height:66px;border:3px dashed var(--ink);border-radius:16px;background:#F1E9D2;display:flex;align-items:center;justify-content:center}
.slot.have{border-style:solid;background:#fff}
.slot.new{animation:newst 1.1s ease-in-out infinite}
@keyframes newst{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(255,210,63,.9)}50%{transform:scale(1.12);box-shadow:0 0 0 10px rgba(255,210,63,0)}}
#flowers{display:flex;gap:6px;align-items:flex-end;height:46px}
.fl{width:34px;height:44px;display:flex;align-items:flex-end;justify-content:center}
.pot{display:block;width:24px;height:10px;border-radius:12px 12px 4px 4px;background:#C9A26A;border:2px solid var(--ink)}
.reset{align-self:flex-start;margin-top:4px;background:none;border:0;color:var(--mute);font:700 14px var(--b);text-decoration:underline;cursor:pointer;padding:10px 0;min-height:44px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){.panel .chan,.big,.slot.new{animation:none}}
@media (max-width:480px){.gsec{padding:12px 0 24px}.game{border-radius:24px}.panel h2{font-size:36px}}

.prize{min-height:0}
