.pp-app{--pp-ink:#244a5a;--pp-paper:#fbfffe;--pp-mint:#3fd0b0;--pp-aqua:#3ab8e0;--pp-pink:#ff6f9e;--pp-gold:#ffd24d;--pp-goo:#b3cc1f;--pp-berry:#a050d8;--pp-speck:#1fc4a6;--play-accent:#23a4c4;overflow:hidden;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;height:100dvh;background:#d4f0ea;color:#fff}.pp-scene{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;touch-action:none}.pp-app:not([data-phase=play]) :is(.pp-head,.pp-board,.pp-view,.pp-controls,.pp-hint,.pp-quit,.pp-toast,.pp-banner,.pp-floats){display:none}.pp-head{position:absolute;z-index:4;left:0;right:0;top:calc(env(safe-area-inset-top, 0px) + 10px);pointer-events:none;display:flex;padding:0 92px 0 10px}.pp-head,.pp-pill{align-items:center;gap:6px}.pp-pill{display:inline-flex;height:40px;padding:0 11px;border-radius:20px;flex-shrink:0;background:rgba(36,74,90,.84);border:2px solid rgba(255,255,255,.92);box-shadow:0 3px 0 rgba(36,74,90,.22);color:#fff}.pp-pill b{font:800 18px/1 Playful,sans-serif;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pp-pill small{font:800 10px/1 Playful,sans-serif;letter-spacing:1px;opacity:.85}.pp-clockpill{flex-direction:column;justify-content:center;align-items:stretch;gap:3px;min-width:64px}.pp-clockpill b{font-size:16px;text-align:center}.pp-track{display:block;height:5px;border-radius:3px;background:rgba(255,255,255,.22);overflow:hidden}.pp-track i{display:block;height:100%;background:#8ff0d8;transform-origin:left;transition:background .3s}.pp-track i[data-level=mid]{background:var(--pp-gold)}.pp-track i[data-level=low]{background:#ff6f8a}.pp-hurry .pp-clockpill{animation:pp-pulse .5s ease-in-out infinite alternate;border-color:#ffb0c4}@keyframes pp-pulse{to{transform:scale(1.07)}}.pp-cleanpill{background:var(--pp-mint);min-width:92px}.pp-waterpill{padding:0 9px}.pp-drops{display:flex;gap:2px}.pp-drops i{width:10px;height:14px;border-radius:50% 50% 50% 50%/62% 62% 40% 40%;background:radial-gradient(circle at 35% 35%,#e6fbff 0 18%,#5fd2ff 40%,#2a9fd8);transform:rotate(0deg)}.pp-drops i.used{background:rgba(255,255,255,.2);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35)}.pp-board{position:absolute;z-index:4;left:10px;right:10px;top:calc(env(safe-area-inset-top, 0px) + 58px);display:flex;gap:8px;align-items:stretch;justify-content:center;max-width:520px;margin:0 auto;padding:6px 8px;border-radius:16px;background:rgba(251,255,254,.88);border:2px solid #fff;box-shadow:0 3px 0 rgba(36,74,90,.14);color:var(--pp-ink)}.pp-chart{display:grid;grid-gap:2px;gap:2px;flex:1 1;min-width:0}.pp-chart-row{display:grid;grid-template-columns:40px repeat(8,1fr);grid-gap:2px;gap:2px;align-items:center}.pp-chart-row:nth-child(2){margin-bottom:3px}.pp-chart-row small{font:800 8px/1 Playful,sans-serif;letter-spacing:.5px;color:#6b8f9a;white-space:nowrap}.pp-cell{display:block;height:12px;min-width:0;padding:0;border:0;border-radius:4px;cursor:pointer;background:#ffffff;box-shadow:inset 0 0 0 1.5px #cfe3e6;transition:background .2s,transform .2s}.pp-chart-row[data-face=back] .pp-cell{border-radius:2px 2px 6px 6px}.pp-chart-row:nth-child(3) .pp-cell{border-radius:6px 6px 2px 2px}.pp-cell[data-state=goo]{background:var(--pp-goo);box-shadow:inset 0 0 0 1.5px #9aa52a}.pp-cell[data-state=berry]{background:var(--pp-berry);box-shadow:inset 0 0 0 1.5px #6a2a9c}.pp-cell[data-state=speck]{background:var(--pp-speck);box-shadow:inset 0 0 0 1.5px #0d8a74}.pp-cell[data-state=foam]{background:repeating-radial-gradient(circle at 30% 40%,#e2f6ff 0 2px,#ffffff 2px 4px);box-shadow:inset 0 0 0 1.5px #9fd8ef}.pp-cell.pop{animation:pp-cellpop .5s ease}@keyframes pp-cellpop{40%{transform:scale(1.35);background:#fff6a8}}button.pp-cell:active{transform:scale(.9)}.pp-press{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:66px;flex-shrink:0}.pp-press small{font:800 8px/1 Playful,sans-serif;letter-spacing:.8px;color:#6b8f9a}.pp-pbar{display:block;width:100%;height:10px;border-radius:5px;background:#e4eff1;overflow:hidden;box-shadow:inset 0 0 0 1.5px #cfe3e6}.pp-pbar i{display:block;height:100%;background:linear-gradient(90deg,#7fe0c4,#ffd24d 60%,#ff5f7e);transform-origin:left;transform:scaleX(0)}.pp-pbar i[data-level=high]{animation:pp-blink .25s steps(2) infinite}@keyframes pp-blink{50%{filter:brightness(1.4)}}.pp-strikes{display:flex;gap:4px}.pp-strikes i{width:14px;height:14px;border-radius:50%;background:#e4eff1;box-shadow:inset 0 0 0 1.5px #cfe3e6}.pp-strikes i.on{background:#ff5f7e;box-shadow:inset 0 0 0 1.5px #c02a4a;animation:pp-cellpop .4s ease}.pp-stunned .pp-pbar{box-shadow:inset 0 0 0 2px #ff5f7e}.pp-view{left:50%;bottom:calc(env(safe-area-inset-bottom, 0px) + 96px);transform:translateX(-50%);pointer-events:none;padding:4px 12px;border-radius:12px;background:rgba(36,74,90,.7);color:#fff;font:800 11px/1.2 Playful,sans-serif;letter-spacing:1.5px}.pp-controls,.pp-view{position:absolute;z-index:4}.pp-controls{left:10px;right:10px;bottom:calc(env(safe-area-inset-bottom, 0px) + 12px);display:grid;grid-template-columns:58px 1fr 1fr 58px;grid-gap:8px;gap:8px;max-width:460px;margin:0 auto}.pp-ctl{position:relative;height:72px;border-radius:22px;border:3px solid #fff;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#fff;box-shadow:inset 0 3px 0 rgba(255,255,255,.3),0 5px 0 rgba(36,74,90,.35);transition:transform .08s,box-shadow .08s}.pp-ctl:active{transform:translateY(3px);box-shadow:inset 0 3px 0 rgba(255,255,255,.3),0 2px 0 rgba(36,74,90,.35)}.pp-ctl b{position:relative;font:800 17px/1 Playful,sans-serif;letter-spacing:1px}.pp-ctl small{position:relative;font:800 9px/1 Playful,sans-serif;letter-spacing:.8px;opacity:.9}.pp-rot{background:linear-gradient(#5cc8e8,#2c9fc8)}.pp-headbtn{background:linear-gradient(#ff8fbc,#e85590)}.pp-headicon{display:flex;gap:3px;align-items:flex-end;height:14px}.pp-headicon i{width:6px;height:12px;border-radius:3px 3px 1px 1px;background:#fff}.pp-headbtn[data-head=tip] .pp-headicon i{width:4px;height:8px}.pp-headbtn[data-head=tip] .pp-headicon i:nth-child(2){height:14px}.pp-headbtn[data-head=tip]{background:linear-gradient(#b48cff,#8456e0)}.pp-flushbtn{background:linear-gradient(#5fd8f8,#2a9fd8)}.pp-foamfill{position:absolute;left:0;right:0;bottom:0;height:100%;transform-origin:bottom;transform:scaleY(0);background:repeating-radial-gradient(circle at 20% 80%,rgba(255,255,255,.5) 0 5px,rgba(225,248,255,.28) 5px 9px);transition:transform .15s}.pp-flushbtn b,.pp-flushbtn small{text-shadow:0 1px 2px rgba(20,80,110,.6)}.pp-flushbtn[data-level=full]{animation:pp-pulse .45s ease-in-out infinite alternate;border-color:#fff6a8}.pp-flushbtn:disabled{filter:grayscale(.8) brightness(.9)}.pp-hint{position:absolute;z-index:7;left:50%;bottom:calc(env(safe-area-inset-bottom, 0px) + 126px);transform:translate(-50%,10px);opacity:0;width:max-content;max-width:min(340px,calc(100vw - 32px));padding:9px 14px;border-radius:14px;pointer-events:none;text-align:center;background:rgba(251,255,254,.95);color:var(--pp-ink);border:2px solid #fff;box-shadow:0 4px 0 rgba(36,74,90,.18);font:800 13px/1.3 Playful,sans-serif;transition:opacity .25s,transform .25s}.pp-hint.show{opacity:1;transform:translate(-50%)}.pp-floats{position:absolute;inset:0;z-index:6;pointer-events:none}.pp-float{position:absolute;transform:translate(-50%,-50%);font:800 22px/1 Playful,sans-serif;color:#fff;-webkit-text-stroke:1.5px rgba(36,74,90,.7);paint-order:stroke fill;animation:pp-float 1.2s ease-out forwards;white-space:nowrap}.pp-float.goo{color:#f2ff8a}.pp-float.berry{color:#e8c2ff}.pp-float.speck{color:#9ffff0;font-size:26px}@keyframes pp-float{0%{opacity:0;transform:translate(-50%,-30%) scale(.6)}20%{opacity:1;transform:translate(-50%,-60%) scale(1.15)}to{opacity:0;transform:translate(-50%,-180%) scale(1)}}.pp-toast{position:absolute;z-index:7;left:50%;top:calc(env(safe-area-inset-top, 0px) + 168px);transform:translateX(-50%);opacity:0;pointer-events:none;padding:8px 16px;border-radius:16px;background:var(--pp-aqua);color:#fff;font:800 14px/1.2 Playful,sans-serif;white-space:nowrap;border:2px solid #fff;box-shadow:0 3px 0 rgba(36,74,90,.25);max-width:calc(100vw - 24px);overflow:hidden;text-overflow:ellipsis}.pp-toast[data-kind=good]{background:#22b48e}.pp-toast[data-kind=bad]{background:#e03c68}.pp-toast[data-kind=warn]{background:#b46ae0}.pp-toast.show{animation:pp-toast 1.9s ease forwards}@keyframes pp-toast{0%{opacity:0;transform:translate(-50%,-8px) scale(.9)}12%{opacity:1;transform:translate(-50%) scale(1.04)}20%{transform:translate(-50%) scale(1)}82%{opacity:1}to{opacity:0}}.pp-banner{position:absolute;z-index:7;left:50%;top:40%;transform:translate(-50%,-50%) scale(.6);opacity:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.pp-banner b{font:800 46px/1 Playful,sans-serif;color:#fff;-webkit-text-stroke:3px var(--pp-aqua);paint-order:stroke fill;text-shadow:0 6px 0 rgba(36,74,90,.4);white-space:nowrap}.pp-banner span{font:800 16px/1.2 Playful,sans-serif;color:var(--pp-ink);background:rgba(255,255,255,.9);padding:4px 12px;border-radius:12px}.pp-banner.show{animation:pp-banner 2.6s cubic-bezier(.2,1.4,.4,1) forwards}@keyframes pp-banner{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}15%{opacity:1;transform:translate(-50%,-50%) scale(1)}85%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(1.05)}}.pp-corner{position:absolute;z-index:8;top:calc(env(safe-area-inset-top, 0px) + 10px);right:10px;display:flex;gap:6px}.pp-app[data-phase=loading] .pp-corner{display:none}.pp-icon-btn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#fff;background:rgba(36,74,90,.84);border:2px solid rgba(255,255,255,.92);box-shadow:0 3px 0 rgba(36,74,90,.22)}.pp-icon-btn .off{display:none}.pp-icon-btn[aria-pressed=true] .off{display:block}.pp-icon-btn[aria-pressed=true] .on{display:none}.pp-app:not([data-phase=play]) .pp-corner{top:calc(env(safe-area-inset-top, 0px) + 14px)}.pp-app .overlay{background:linear-gradient(180deg,rgba(212,240,234,.05),rgba(36,74,90,.45));backdrop-filter:none;-webkit-backdrop-filter:none}.pp-panel{position:relative;width:min(400px,100%);margin:auto;padding:22px 20px 18px;border-radius:30px;text-align:center;background:var(--pp-paper);border:3px solid #fff;box-shadow:0 8px 0 rgba(36,74,90,.25),0 18px 40px rgba(36,74,90,.25);color:var(--pp-ink)}.pp-panel:before{content:"";position:absolute;inset:7px;border:2px dashed rgba(63,208,176,.45);border-radius:23px;pointer-events:none}.pp-kicker{position:relative;display:inline-block;padding:4px 12px;border-radius:10px;background:#e2f8f2;color:#1f9d84;font:800 11px/1.2 Playful,sans-serif;letter-spacing:1.5px}.pp-title{position:relative;margin:10px 0 6px;font:800 44px/.95 Playful,sans-serif;color:var(--pp-aqua);text-shadow:0 4px 0 #1d7fa0}.pp-title span{font-size:54px;color:#fff;-webkit-text-stroke:3px var(--pp-pink);paint-order:stroke fill;text-shadow:0 5px 0 #c03a72}.pp-blurb{position:relative;margin:0 0 14px;font:700 14px/1.35 Playful,sans-serif;color:#4f7682}.pp-rules{position:relative;list-style:none;margin:0 0 16px;padding:0;display:grid;grid-gap:8px;gap:8px;text-align:left}.pp-rules li{display:grid;grid-template-columns:28px 1fr;grid-column-gap:10px;column-gap:10px;font:600 13px/1.3 Playful,sans-serif;color:#4f7682}.pp-rules li p{margin:0}.pp-rules li b{font:800 14px/1.1 Playful,sans-serif;color:var(--pp-ink)}.pp-rules li span{width:28px;height:28px;border-radius:50%;background:var(--pp-mint);color:#fff;display:grid;place-items:center;font:800 16px/1 Playful,sans-serif}.pp-rules li:nth-child(2) span{background:var(--pp-aqua)}.pp-rules li:nth-child(3) span{background:var(--pp-pink)}.pp-rules li:nth-child(4) span{background:var(--pp-gold);color:var(--pp-ink)}.pp-app button.big{position:relative;width:100%;background:linear-gradient(#5fd8f8,#23a4c4);color:#fff;border-color:#dff7ff;box-shadow:inset 0 3px 0 rgba(255,255,255,.35),0 5px 0 #17708a}.pp-app button.big:active{box-shadow:0 1px 0 #17708a}.pp-best{position:relative;margin:10px 0 0;font:700 12px/1.3 Playful,sans-serif;color:#6b8f9a}.pp-small{padding-top:18px}.pp-result-title{position:relative;margin:0 0 8px;font:800 32px/1 Playful,sans-serif;color:var(--pp-aqua)}.pp-r-chart{position:relative;margin:0 auto 6px;max-width:300px;padding:6px 8px;border-radius:12px;background:#eef8f7}.pp-r-chart .pp-cell{cursor:default}.pp-result-line{position:relative;margin:6px 0 8px;font:700 14px/1.35 Playful,sans-serif;color:#4f7682}.pp-result-big{position:relative;display:flex;align-items:baseline;justify-content:center;gap:8px}.pp-result-big b{font:800 54px/1 Playful,sans-serif;color:var(--pp-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pp-result-big span{font:800 18px/1 Playful,sans-serif;color:#1f9d84}.pp-result-list{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-gap:6px 10px;gap:6px 10px;margin:10px 0 14px}.pp-result-list div{display:flex;justify-content:space-between;gap:6px;padding:6px 10px;border-radius:10px;background:#eef8f7}.pp-result-list dt{font:700 12px/1.2 Playful,sans-serif;color:#6b8f9a}.pp-result-list dd{margin:0;font:800 13px/1.2 Playful,sans-serif;color:var(--pp-ink)}.pp-link-btn{background:none;border:0;color:#1f9d84;font:800 14px/1 Playful,sans-serif;text-decoration:underline;cursor:pointer}.pp-app .share-btn,.pp-link-btn{position:relative;display:block;margin:10px auto 0}@media (min-width:700px){.pp-board{top:64px}.pp-cell{height:14px}.pp-chart-row{grid-template-columns:52px repeat(8,1fr)}.pp-chart-row small{font-size:9px}.pp-press{width:90px}}