:root{--pf-page-bg: linear-gradient(180deg, #1c3a24, #2f5e38);--pf-accent: #ffb347;--pf-accent-dark: #9a5f14;--pf-text: #ffffff;--pf-font: "Fredoka", "Nunito", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--pf-page-bg);font-family:var(--pf-font);-webkit-user-select:none;user-select:none;touch-action:none}.pf-root{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;--sat: env(safe-area-inset-top, 0px);--sar: env(safe-area-inset-right, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px)}.pf-root [hidden]{display:none!important}.pf-root canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:block;touch-action:none}.pf-hud{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;color:#fff}.pf-hud__lives{position:absolute;top:calc(10px + var(--sat));left:calc(14px + var(--sal));font-size:clamp(18px,3.6vh,28px);letter-spacing:2px;text-shadow:0 2px 0 rgba(0,0,0,.35);white-space:nowrap}.pf-hud__lives .op{opacity:.25;filter:grayscale(1)}.pf-hud__center{position:absolute;top:calc(10px + var(--sat));left:50%;transform:translate(-50%);text-align:center;display:flex;flex-direction:column;gap:4px;align-items:center}.pf-hud__level{font-size:clamp(14px,2.6vh,22px);font-weight:600;letter-spacing:1px;text-shadow:0 2px 0 rgba(0,0,0,.35);white-space:nowrap}.pf-hud__edu{font-size:clamp(14px,2.8vh,24px);font-weight:700;letter-spacing:5px;background:#00000059;border-radius:999px;padding:2px 16px;white-space:nowrap}.pf-hud__edu .nog{opacity:.35}.pf-hud__doel{font-size:clamp(18px,3.6vh,30px);font-weight:700;background:#00000080;border:2.5px solid rgba(255,255,255,.4);border-radius:999px;padding:4px 20px;white-space:nowrap;font-variant-numeric:tabular-nums;text-shadow:0 2px 0 rgba(0,0,0,.35)}.pf-hud__doel.klaar{border-color:#59c85e;background:#17542699}.pf-doel-banner{position:absolute;top:24%;left:50%;z-index:6;pointer-events:none;font-size:clamp(18px,min(5.5vh,5.5vw),46px);font-weight:700;color:#fff;background:#0000008c;border-radius:20px;padding:14px 26px;white-space:nowrap;text-shadow:0 2px 0 rgba(0,0,0,.4);animation:pf-doel-banner 2.6s ease forwards}@keyframes pf-doel-banner{0%{opacity:0;transform:translate(-50%) scale(.7)}12%{opacity:1;transform:translate(-50%) scale(1.04)}18%{transform:translate(-50%) scale(1)}78%{opacity:1}to{opacity:0;transform:translate(-50%) scale(.96)}}.pf-hud__right{position:absolute;top:calc(12px + var(--sat));right:calc(176px + var(--sar));display:flex;align-items:center;gap:10px;pointer-events:none}.pf-hud__score{font-size:clamp(20px,4vh,32px);font-weight:700;text-shadow:0 2px 0 rgba(0,0,0,.35),0 4px 12px rgba(0,0,0,.3);font-variant-numeric:tabular-nums}.pf-hud__coins{font-size:clamp(12px,2.2vh,16px);font-weight:600;background:#00000059;border-radius:999px;padding:3px 12px;font-variant-numeric:tabular-nums;white-space:nowrap}.pf-touch{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;pointer-events:none}.pf-move{position:absolute;left:calc(14px + var(--sal));bottom:calc(16px + var(--sab));display:flex;gap:12px}.pf-move button{pointer-events:auto;width:84px;height:92px;border:none;border-radius:16px;cursor:pointer;background:#ffffff2e;color:#fff;font-size:28px;box-shadow:inset 0 0 0 2px #ffffff40;touch-action:none;transition:background .06s}.pf-move button:active,.pf-move button.ingedrukt{background:#ffffff73}.pf-jump{position:absolute;right:calc(16px + var(--sar));bottom:calc(18px + var(--sab));width:92px;height:92px;border-radius:50%;pointer-events:auto;cursor:pointer;border:none;font-size:36px;color:var(--pf-accent-dark);background:var(--pf-accent);border-bottom:6px solid var(--pf-accent-dark);box-shadow:0 6px 16px #00000059;touch-action:none;transition:transform .06s}.pf-jump:active,.pf-jump.ingedrukt{transform:scale(.92)}.pf-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;background:var(--pf-page-bg);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:clamp(8px,1.8vh,18px);text-align:center;padding:clamp(10px,2.5vh,28px);color:var(--pf-text);overflow:hidden auto}.pf-overlay>:first-child{margin-top:auto}.pf-overlay>:last-child{margin-bottom:auto}.pf-overlay h1{margin:0;line-height:1.05;font-size:clamp(28px,min(8vh,10vw),68px);font-weight:700;letter-spacing:1px;text-shadow:0 4px 0 rgba(0,0,0,.28),0 8px 20px rgba(0,0,0,.3)}.pf-art{height:clamp(84px,22vh,210px);max-width:70vw;object-fit:contain;pointer-events:none;-webkit-user-drag:none;filter:drop-shadow(0 8px 18px rgba(0,0,0,.35))}.pf-sub{font-size:clamp(13px,2.4vh,19px);font-weight:500;background:#00000040;padding:clamp(5px,1vh,9px) clamp(14px,3vw,26px);border-radius:999px;max-width:min(92vw,560px)}.pf-score-label{font-size:clamp(13px,2.2vh,18px);letter-spacing:8px;text-transform:uppercase;opacity:.85;font-weight:500}.pf-score{font-size:clamp(42px,11vh,100px);line-height:1;font-weight:700;text-shadow:0 5px 0 rgba(0,0,0,.3),0 10px 22px rgba(0,0,0,.35);font-variant-numeric:tabular-nums}.pf-record{font-size:clamp(15px,2.7vh,22px);font-weight:600;color:var(--pf-accent);animation:pf-pop .5s ease}@keyframes pf-pop{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}.pf-btn{font-family:var(--pf-font);font-weight:600;font-size:clamp(15px,2.7vh,21px);cursor:pointer;letter-spacing:.5px;border:none;border-radius:16px;padding:clamp(8px,1.6vh,13px) clamp(18px,4vw,40px);color:var(--pf-accent-dark);background:var(--pf-accent);border-bottom:6px solid var(--pf-accent-dark);box-shadow:0 6px 14px #00000047;transition:transform .08s}.pf-btn:active{transform:translateY(4px);border-bottom-width:2px}.pf-btn.secundair{color:#fff;background:#ffffff29;border-bottom-color:#0000004d}.pf-btn-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.pf-themes{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.pf-theme-btn{font-family:var(--pf-font);font-weight:600;font-size:clamp(12px,2.2vh,16px);border:2px solid rgba(255,255,255,.4);border-radius:999px;background:#ffffff1f;color:var(--pf-text);padding:5px 16px;cursor:pointer}.pf-theme-btn.actief{background:var(--pf-accent);color:var(--pf-accent-dark);border-color:transparent}.pf-levels{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;max-width:min(92vw,560px)}.pf-level-btn{font-family:var(--pf-font);font-weight:700;font-size:clamp(15px,2.8vh,22px);width:clamp(46px,8vh,60px);height:clamp(46px,8vh,60px);border:none;border-radius:14px;cursor:pointer;color:var(--pf-accent-dark);background:var(--pf-accent);border-bottom:5px solid var(--pf-accent-dark);box-shadow:0 4px 10px #00000040;transition:transform .08s}.pf-level-btn:active{transform:translateY(3px);border-bottom-width:2px}.pf-level-btn.actief{outline:3px solid #fff}.pf-level-btn.slot{background:#ffffff24;color:#ffffff8c;border-bottom-color:#0000004d;cursor:default}.pf-corners{position:absolute;top:calc(10px + var(--sat));right:calc(12px + var(--sar));display:flex;gap:10px;z-index:30}.pf-corner{width:clamp(40px,6vh,52px);height:clamp(40px,6vh,52px);border-radius:50%;border:none;cursor:pointer;background:#0000004d;color:#fff;font-size:clamp(18px,2.8vh,24px);display:flex;align-items:center;justify-content:center;transition:transform .08s}.pf-corner:active{transform:scale(.9)}.pf-corner.sprite{background:none}.pf-corner.sprite img{width:100%;height:100%;object-fit:contain;display:block}.pf-corner--muziek.is-uit{opacity:.45;filter:grayscale(.7)}@media (max-width: 620px){.pf-hud__center{top:calc(58px + var(--sat));left:calc(14px + var(--sal));transform:none;align-items:flex-start;text-align:left}.pf-hud__right{top:calc(58px + var(--sat));right:calc(14px + var(--sar))}}
