.bouncer-page{--bouncer-accent:#e2ad49;--bouncer-soft:#fff0bb;max-width:1180px;min-height:100svh;padding:max(12px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));color:#273248;margin:0 auto}.bouncer-hot{--bouncer-accent:#e57d60;--bouncer-soft:#ffe0cf}.bouncer-on-fire{--bouncer-accent:#c76679;--bouncer-soft:#f8d6df}.bouncer-nuclear{--bouncer-accent:#7a61b7;--bouncer-soft:#e6ddff}.bouncer-header{grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-bottom:11px;display:grid}.bouncer-header>a{color:#454151;touch-action:manipulation;background:#fffdf8;border:1px solid #ddd5c9;border-radius:13px;justify-self:start;align-items:center;min-height:48px;padding:8px 13px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 3px #eee4d6}.bouncer-header h1{letter-spacing:-.06em;text-align:center;margin:0;font:900 clamp(25px,4vw,38px)/1 monospace}.bouncer-header h1 span{color:#cf6b83}.bouncer-best{text-align:right;justify-self:end}.bouncer-best small,.bouncer-best strong{display:block}.bouncer-best small{color:#817889;letter-spacing:.12em;font:800 9px monospace}.bouncer-best strong{color:#d79b2e;letter-spacing:2px;min-width:58px;margin-top:3px;font-size:18px}.bouncer-page button{touch-action:manipulation;-webkit-user-select:none;user-select:none;font-family:inherit}:is(.bouncer-page button:focus-visible,.bouncer-page a:focus-visible,.bouncer-page canvas:focus-visible){outline-offset:3px;outline:3px solid #ef9e52}.bouncer-page button:disabled{opacity:.45;cursor:default;box-shadow:none}.bouncer-difficulties{justify-content:center;gap:7px;margin:0 auto 11px;display:flex}.bouncer-difficulties button{color:#4b4755;background:#fffdf8;border:1px solid #ded5ca;border-radius:15px;justify-content:center;align-items:center;gap:6px;min-width:118px;min-height:48px;padding:7px 12px;font-size:12px;font-weight:900;display:flex;box-shadow:0 3px #eee4d6}.bouncer-difficulties button.selected{border-color:var(--bouncer-accent);background:var(--bouncer-soft);box-shadow:0 3px 0 color-mix(in srgb, var(--bouncer-accent) 55%, white)}.bouncer-machine{background:#fff0c9;border:2px solid #eccb86;border-radius:24px;padding:13px;box-shadow:0 7px #e5c983}.bouncer-hud{grid-template-columns:minmax(190px,1fr) auto auto auto;align-items:center;gap:20px;padding:0 5px 10px;display:grid}.bouncer-hud small{color:#746d72;font-size:10px;display:block}.bouncer-hud>div:first-child strong{margin-top:3px;font-size:14px;display:block}.bouncer-gumnuts,.bouncer-leaves{color:#765535;white-space:nowrap;font-size:19px}.bouncer-gumnuts strong,.bouncer-leaves strong{font-size:22px}.bouncer-gumnuts span{color:#817889;font-size:12px}.bouncer-blocks{text-align:center;min-width:52px}.bouncer-blocks strong{font:900 25px/1 monospace;display:block}.bouncer-blocks small{margin-top:3px}.bouncer-screen{background:#263344;border:4px solid #304550;border-radius:16px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #fff4}.bouncer-screen canvas{width:100%;height:clamp(300px,100svh - 291px,430px);image-rendering:pixelated;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;display:block}.bouncer-overlay{background:#182030b8;place-items:center;padding:12px;display:grid;position:absolute;inset:0;overflow:auto}.bouncer-dialog{color:#fffdf4;text-align:center;width:min(100%,480px)}.bouncer-eyebrow{color:#f8db92;letter-spacing:.12em;text-transform:uppercase;margin:0 0 9px;font:800 11px/1.4 monospace}.bouncer-dialog h2{letter-spacing:-.05em;margin:0;font:900 clamp(26px,4vw,42px)/1.05 monospace}.bouncer-dialog>p:not(.bouncer-eyebrow):not(.bouncer-stars){max-width:430px;margin:13px auto 18px;font-size:15px;line-height:1.5}.bouncer-page .bouncer-primary{color:#283147;background:#ffe7a4;border:2px solid #ffe7a4;border-radius:12px;min-height:58px;padding:12px 25px;font-size:17px;font-weight:900;box-shadow:0 5px #b98742}.bouncer-stars{color:#ffd66e;letter-spacing:8px;margin:12px 0 0;font-size:36px}.bouncer-stars span{color:#9f9ca4}.bouncer-controls{grid-template-columns:minmax(150px,1fr) minmax(230px,1.2fr) 58px minmax(150px,1fr);align-items:center;gap:10px;padding-top:11px;display:grid}.bouncer-controls button{border-radius:14px;min-height:62px;font-weight:900}.bouncer-steer{color:#72532d;background:#fff9e7;border:2px solid #d9a84a;font:900 25px monospace;box-shadow:0 4px #d7aa62}.bouncer-steer span{letter-spacing:.09em;font-size:14px}.bouncer-steer:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #d7aa62}.bouncer-left{text-align:right}.bouncer-right{text-align:left}.bouncer-message{text-align:center;min-width:0}.bouncer-message strong,.bouncer-message small{display:block}.bouncer-message strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.bouncer-message small{color:#746b63;margin-top:4px;font-size:10px}.bouncer-pause{color:#66593e;background:#fffdf8;border:1px solid #dbcba7;width:58px;padding:0;font-size:21px}.bouncer-learning{color:#6b6675;text-align:center;justify-content:center;align-items:center;gap:7px;margin:17px 0 4px;font-size:12px;display:flex}.bouncer-learning>span{font-size:20px}@media (max-width:720px){.bouncer-page{padding:10px}.bouncer-header{grid-template-columns:1fr 1fr;gap:8px}.bouncer-header h1{grid-area:1/1/auto/-1}.bouncer-header>a{grid-area:2/1}.bouncer-best{grid-area:2/2}.bouncer-difficulties{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.bouncer-difficulties button{min-width:0;min-height:45px}.bouncer-machine{border-radius:17px;padding:8px}.bouncer-hud{grid-template-columns:1fr auto auto;gap:8px}.bouncer-hud>div:first-child{grid-column:1/-1}.bouncer-blocks{min-width:42px}.bouncer-screen canvas{height:min(68vw,360px)}.bouncer-controls{grid-template-columns:1fr 52px 1fr;gap:7px}.bouncer-message{grid-area:2/1/auto/-1}.bouncer-pause{width:52px}.bouncer-controls button{min-height:58px}.bouncer-dialog>p:not(.bouncer-eyebrow):not(.bouncer-stars){margin:9px auto 13px;font-size:13px}.bouncer-page .bouncer-primary{min-height:52px;font-size:15px}}@media (orientation:landscape) and (max-height:850px){.bouncer-header,.bouncer-difficulties{margin-bottom:7px}.bouncer-difficulties button{min-height:42px}.bouncer-machine{padding:9px}.bouncer-hud{padding-bottom:7px}.bouncer-screen canvas{height:clamp(250px,100svh - 300px,350px)}.bouncer-controls{padding-top:8px}.bouncer-controls button{min-height:54px}.bouncer-learning{display:none}}@media (prefers-reduced-motion:reduce){.bouncer-steer:active:not(:disabled){transform:none}}
