@font-face{font-family:"Fredoka";src:url("fonts/Fredoka.ttf") format("truetype");font-weight:300 700;font-display:swap}
:root{
 --jf-cream:#FFF8EE;--jf-red:#D2232A;--jf-red-dark:#A8161D;--jf-ink:#2B1B17;--jf-ink-soft:#5A4640;--jf-gold:#F2B33D;
 --jf-chocolate:#5A3220;--jf-vanilla:#F3E3C3;--jf-strawberry:#E8344E;--jf-strawberry-light:#FF8FA3;
 --jf-tapioca:#EFE4CF;--jf-pearl:#D9C7A3;--jf-protein:#3B2116;--jf-protein-accent:#C89B6D;
 --jf-font:"Fredoka",ui-rounded,"SF Pro Rounded","Segoe UI",system-ui,sans-serif;
 --jf-radius:18px;--jf-tap:48px;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:var(--jf-cream);color:var(--jf-ink);font-family:var(--jf-font);-webkit-tap-highlight-color:transparent;overscroll-behavior:none}
button{font-family:inherit}
.jf-btn{min-height:var(--jf-tap);min-width:var(--jf-tap);padding:10px 22px;border:0;border-radius:999px;background:var(--jf-red);color:#fff;font-weight:600;font-size:18px;cursor:pointer;box-shadow:0 4px 0 var(--jf-red-dark);transition:transform .08s}
.jf-btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--jf-red-dark)}
.jf-btn.alt{background:#fff;color:var(--jf-ink);box-shadow:0 4px 0 #D9CBB8}
.jf-btn:focus-visible{outline:3px solid var(--jf-gold);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001s!important;transition-duration:.001s!important}}
