:root{--sd-page-bg: linear-gradient(180deg, #1c4c72, #2d6f9e);--sd-accent: #ffd166;--sd-accent-dark: #b98a1e;--sd-text: #ffffff;--sd-pane-border: rgba(255, 255, 255, .85);--sd-font: "Fredoka", "Nunito", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--sd-page-bg);font-family:var(--sd-font);-webkit-user-select:none;user-select:none;touch-action:manipulation}.sd-root{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--sd-page-bg);color:var(--sd-text);--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)}.sd-root [hidden]{display:none!important}.sd-hud{position:absolute;top:var(--sat);left:0;right:0;height:56px;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:0 calc(12px + var(--sar)) 0 calc(12px + var(--sal));gap:10px}.sd-hud__left,.sd-hud__right{display:flex;align-items:center;gap:10px;min-width:0}.sd-hud__menu{font-family:var(--sd-font);font-size:clamp(13px,2.2vh,16px);font-weight:600;color:var(--sd-accent-dark);background:#ffffffeb;border:none;border-radius:999px;padding:6px 16px;cursor:pointer;box-shadow:0 3px 8px #0000004d;transition:transform .08s}.sd-hud__menu:active{transform:scale(.94)}.sd-hud__scene{font-size:clamp(13px,2.4vh,17px);font-weight:600;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 2px 0 rgba(0,0,0,.3)}.sd-progress{display:flex;flex-direction:column;align-items:center;gap:3px}.sd-progress__count{font-size:clamp(15px,2.8vh,21px);font-weight:700;text-shadow:0 2px 0 rgba(0,0,0,.3);font-variant-numeric:tabular-nums;white-space:nowrap}.sd-progress__dots{display:flex;gap:5px}.sd-dot{width:10px;height:10px;border-radius:50%;background:#ffffff47;box-shadow:inset 0 0 0 1.5px #0000002e;transition:background .2s,transform .2s}.sd-dot.gevonden{background:var(--sd-accent);transform:scale(1.15)}.sd-hud__time{font-size:clamp(14px,2.6vh,19px);font-weight:700;background:#00000059;border-radius:999px;padding:4px 14px;font-variant-numeric:tabular-nums;text-shadow:0 2px 0 rgba(0,0,0,.3)}.sd-hud__time.bijna-op{background:#c81e1ebf;animation:sd-blink 1s infinite}@keyframes sd-blink{50%{opacity:.55}}.sd-hud__score{font-size:clamp(17px,3.4vh,26px);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}.sd-stage{position:absolute;top:calc(56px + var(--sat));bottom:calc(64px + var(--sab));left:var(--sal);right:var(--sar);display:flex;align-items:center;justify-content:center}.sd-panes{display:flex;align-items:center;justify-content:center;gap:10px}.sd-panes.gestapeld{flex-direction:column}.sd-pane{position:relative;overflow:hidden;border-radius:14px;border:3px solid var(--sd-pane-border);box-shadow:0 8px 22px #00000059;background:#fff;cursor:crosshair;touch-action:manipulation}.sd-pane svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;pointer-events:none}.sd-pane .sd-marker-laag{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.sd-pane.schud{animation:sd-schud .32s}@keyframes sd-schud{0%,to{transform:translate(0)}25%{transform:translate(-6px)}50%{transform:translate(5px)}75%{transform:translate(-3px)}}.sd-marker{position:absolute;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none}.sd-marker--found{border:4px solid #21b04b;box-shadow:0 0 0 3px #ffffffd9,inset 0 0 0 2px #ffffffd9,0 2px 8px #00000059;animation:sd-pop .4s cubic-bezier(.2,2.2,.4,1)}@keyframes sd-pop{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.sd-marker--hint{border:4px dashed #ff9800;box-shadow:0 0 0 3px #ffffffb3;animation:sd-puls .55s ease-in-out 3}@keyframes sd-puls{0%,to{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.25);opacity:.65}}.sd-miss{position:absolute;transform:translate(-50%,-50%);color:#e53935;font-weight:700;pointer-events:none;text-shadow:0 0 6px rgba(255,255,255,.9),0 2px 4px rgba(0,0,0,.3);animation:sd-miss-fade .7s forwards}@keyframes sd-miss-fade{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}.sd-floater{position:absolute;transform:translate(-50%,-50%);font-weight:700;pointer-events:none;white-space:nowrap;text-shadow:0 0 6px rgba(255,255,255,.85),0 2px 4px rgba(0,0,0,.35);animation:sd-zweef 1s forwards}.sd-floater.goed{color:#1b8f3f}.sd-floater.fout{color:#e53935}@keyframes sd-zweef{0%{opacity:0}15%{opacity:1}to{opacity:0;transform:translate(-50%,-120%)}}.sd-spark{position:absolute;width:8px;height:8px;border-radius:50%;background:#ffd23e;pointer-events:none;box-shadow:0 0 6px #ffd23ee6;animation:sd-spark .6s ease-out forwards}@keyframes sd-spark{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.2);opacity:0}}.sd-controls{position:absolute;bottom:var(--sab);left:var(--sal);right:var(--sar);height:64px;z-index:5;display:flex;align-items:center;justify-content:center;gap:12px}.sd-hint{font-family:var(--sd-font);font-weight:600;font-size:clamp(14px,2.6vh,19px);cursor:pointer;border:none;border-radius:999px;padding:9px 24px;color:var(--sd-accent-dark);background:var(--sd-accent);border-bottom:5px solid var(--sd-accent-dark);box-shadow:0 5px 12px #00000047;transition:transform .08s;display:flex;align-items:center;gap:8px}.sd-hint:active{transform:translateY(3px);border-bottom-width:2px}.sd-hint:disabled{opacity:.45;cursor:default}.sd-hint__badge{background:#00000038;border-radius:999px;min-width:26px;padding:2px 8px;font-size:.85em;font-variant-numeric:tabular-nums}.sd-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;background:var(--sd-page-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(8px,1.8vh,18px);text-align:center;padding:clamp(10px,2.5vh,28px);color:var(--sd-text);overflow:hidden}.sd-overlay-img{max-height:clamp(120px,30vh,340px);max-width:min(64vw,320px);object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.4));pointer-events:none}.sd-overlay-img--home{order:-1}.sd-overlay--home{gap:clamp(12px,2.4vh,26px)}.sd-overlay h1{margin:0;line-height:1.05;font-size:clamp(26px,min(7.5vh,9.5vw),62px);font-weight:700;letter-spacing:1px;text-shadow:0 4px 0 rgba(0,0,0,.28),0 8px 20px rgba(0,0,0,.3)}.sd-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)}.sd-stars{display:flex;gap:6px;font-size:clamp(34px,7vh,58px)}.sd-stars .ster{filter:drop-shadow(0 3px 4px rgba(0,0,0,.35));animation:sd-ster-pop .5s backwards}.sd-stars .ster:nth-child(2){animation-delay:.15s}.sd-stars .ster:nth-child(3){animation-delay:.3s}.sd-stars .ster.leeg{opacity:.28;filter:grayscale(1);animation:none}@keyframes sd-ster-pop{0%{transform:scale(0) rotate(-30deg)}70%{transform:scale(1.25) rotate(8deg)}to{transform:scale(1) rotate(0)}}.sd-stats{display:flex;gap:clamp(10px,3vw,26px);flex-wrap:wrap;justify-content:center}.sd-stat{background:#00000040;border-radius:14px;padding:clamp(6px,1.4vh,12px) clamp(14px,3vw,24px);min-width:96px}.sd-stat .label{font-size:clamp(11px,1.8vh,14px);opacity:.8;letter-spacing:1px;text-transform:uppercase}.sd-stat .value{font-size:clamp(20px,4vh,34px);font-weight:700;font-variant-numeric:tabular-nums}.sd-record{font-size:clamp(15px,2.7vh,22px);font-weight:600;color:var(--sd-accent);animation:sd-ster-pop .5s ease}.sd-btn{font-family:var(--sd-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(--sd-accent-dark);background:var(--sd-accent);border-bottom:6px solid var(--sd-accent-dark);box-shadow:0 6px 14px #00000047;transition:transform .08s}.sd-btn:active{transform:translateY(4px);border-bottom-width:2px}.sd-btn.secundair{color:#fff;background:#ffffff29;border-bottom-color:#0000004d}.sd-btn-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.sd-themes{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;max-width:94vw}.sd-theme-btn{font-family:var(--sd-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(--sd-text);padding:5px 16px;cursor:pointer}.sd-theme-btn.actief{background:var(--sd-accent);color:var(--sd-accent-dark);border-color:transparent}.sd-scenes{display:flex;gap:clamp(10px,1.6vw,18px);flex-wrap:wrap;justify-content:center;max-width:min(94vw,900px);margin:clamp(4px,1vh,10px) 0}.sd-level{font-family:var(--sd-font);color:var(--sd-text);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(2px,.6vh,6px);width:clamp(104px,15vw,150px);min-height:clamp(96px,14vh,132px);padding:clamp(8px,1.4vh,14px) 8px;border:3px solid rgba(255,255,255,.35);border-radius:20px;background:#ffffff1f;box-shadow:0 4px 10px #0000002e;transition:transform .1s,border-color .1s,background .1s,box-shadow .1s}.sd-level:hover{background:#ffffff2e}.sd-level.actief{border-color:var(--sd-accent);background:#ffffff38;box-shadow:0 0 0 3px color-mix(in srgb,var(--sd-accent) 35%,transparent),0 8px 18px #00000047;transform:scale(1.06)}.sd-level__nr{font-size:clamp(24px,4.6vh,38px);font-weight:700;line-height:1;text-shadow:0 3px 0 rgba(0,0,0,.25)}.sd-level.actief .sd-level__nr{color:var(--sd-accent)}.sd-level__naam{font-size:clamp(12px,2vh,15px);font-weight:600;line-height:1.15;min-height:2.3em;display:flex;align-items:center}.sd-level__sterren{display:flex;gap:3px;font-size:clamp(15px,2.6vh,20px);line-height:1}.sd-level__sterren .ster{opacity:.25;filter:grayscale(1)}.sd-level__sterren .ster.vol{opacity:1;filter:none;color:var(--sd-accent);text-shadow:0 2px 3px rgba(0,0,0,.35)}.sd-btn--play{display:flex;flex-direction:column;align-items:center;gap:1px;font-size:clamp(18px,3.2vh,26px);padding:clamp(10px,1.9vh,16px) clamp(30px,6vw,60px)}.sd-btn__sub{font-size:.52em;font-weight:600;opacity:.8;letter-spacing:.3px}.sd-corner{position:absolute;z-index:30;width:40px;height:40px;border-radius:50%;border:none;cursor:pointer;background:#0000004d;color:#fff;font-size:18px;display:flex;align-items:center;justify-content:center;transition:transform .08s}.sd-corner:active{transform:scale(.9)}.sd-corner--fs{right:calc(12px + var(--sar));bottom:calc(12px + var(--sab))}.sd-corner--mute{left:calc(12px + var(--sal));bottom:calc(12px + var(--sab))}.sd-confetti{position:absolute;top:0;right:0;bottom:0;left:0;z-index:25;pointer-events:none;overflow:hidden}.sd-confetti-stuk{position:absolute;top:-3vh;width:10px;height:16px;border-radius:3px;animation:sd-confetti-val linear forwards}@keyframes sd-confetti-val{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(110vh) rotate(660deg);opacity:.7}}@media (max-width: 560px){.sd-hud{padding:0 8px}.sd-hud__scene{display:none}}.sd-vondst{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:40;background:var(--sd-accent, #ffd23e);color:var(--sd-accent-dark, #6b4a10);font-weight:800;font-size:clamp(14px,2.6vmin,19px);padding:9px 20px;border-radius:999px;box-shadow:0 4px 14px #0000004d;pointer-events:none;white-space:nowrap;max-width:92vw;overflow:hidden;text-overflow:ellipsis}.sd-vondst.zicht{animation:sd-vondst-pop 2.2s ease forwards}@keyframes sd-vondst-pop{0%{opacity:0;transform:translate(-50%) translateY(10px) scale(.85)}12%{opacity:1;transform:translate(-50%) translateY(0) scale(1.04)}18%{transform:translate(-50%) scale(1)}80%{opacity:1}to{opacity:0}}
