:root{--banana:#FFE135;--cream:#FFF8DC;--peel:#3E2723;--leaf:#3c8d2f;--rust:#e8742a}
body{margin:0;font-family:'Fredoka',sans-serif;color:var(--peel);background:
radial-gradient(circle at 10% 10%,#fff3a0 0,transparent 40%),
radial-gradient(circle at 90% 30%,#ffd98a 0,transparent 35%),
repeating-linear-gradient(45deg,var(--cream) 0 22px,#fff4cc 22px 44px);min-height:100vh}
body.minion{background:var(--banana)!important;filter:saturate(1.4)}
.display{font-family:'Bagel Fat One',cursive;letter-spacing:.5px}
.mono{font-family:'DM Mono',monospace}
.card{background:#fffdf3;border:3px solid var(--peel);border-radius:22px;box-shadow:6px 6px 0 var(--peel)}
.btn{border:3px solid var(--peel);border-radius:999px;box-shadow:3px 3px 0 var(--peel);transition:transform .12s,box-shadow .12s;background:#fff}
.btn:hover:not(:disabled){transform:translate(-1px,-2px) rotate(-1deg);box-shadow:5px 5px 0 var(--peel)}
.btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:0 0 0 var(--peel)}
.btn:disabled{opacity:.45;cursor:not-allowed}
.peel{background:linear-gradient(135deg,var(--banana),var(--rust))}
.chip{border:3px solid transparent;transition:all .15s}
.chip.on{border-color:var(--peel);background:var(--banana);transform:translateY(-3px);box-shadow:4px 4px 0 var(--peel)}
.logo{display:inline-block;animation:bob 2s ease-in-out infinite}
.logo:hover{animation:wob .4s infinite}
@keyframes bob{50%{transform:translateY(-6px) rotate(8deg)}}
@keyframes wob{25%{transform:rotate(-20deg)}75%{transform:rotate(20deg)}}
.spin{display:inline-block;animation:sp 1s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}
.rise{animation:rise .5s both}
@keyframes rise{from{opacity:0;transform:translateY(20px)}}
.confetti{position:fixed;top:-40px;font-size:28px;pointer-events:none;animation:fall 2.2s ease-in forwards;z-index:60}
@keyframes fall{to{transform:translateY(110vh) rotate(720deg);opacity:.6}}
.drop{border:3px dashed var(--peel);background:var(--cream);border-radius:22px}
.drop.over{background:var(--banana)}
input[type=range].slider{-webkit-appearance:none;appearance:none;background:transparent;position:absolute;inset:0;width:100%;height:100%;margin:0;cursor:ew-resize}
input[type=range].slider::-webkit-slider-thumb{-webkit-appearance:none;width:6px;height:100vh;background:transparent}
.scrollx{scrollbar-width:thin}