@import"https://fonts.googleapis.com/css2?family=Bagel+Fat+One&family=Figtree:wght@400;600;700;800&display=swap";:root{--bj-ink: #1E2140;--bj-ink-muted: #5A5670;--bj-cream: #FBF5EC;--bj-dot: #E9DCC6;--bj-white: #FFFFFF;--bj-machine: #F6D77A;--bj-bulb: #FFE7A3;--bj-bulb-off: #5A4E7A;--bj-girl: #F08AA3;--bj-girl-soft: #F2B8C6;--bj-girl-text: #F4A6BA;--bj-boy: #2F5FA8;--bj-boy-text: #8DB8F0;--bj-accent: #E0607E;--bj-mint: #B9E3CF;--bj-win: #FFE9A8;--bj-verified: #2E7D5B;--bj-error-bg: #FDE8EC;--bj-error-border: #B8304F;--bj-error-text: #7A1A30;--bj-veil: rgba(30, 33, 64, .8);--bj-font-display: "Bagel Fat One", "Arial Rounded MT Bold", system-ui, sans-serif;--bj-font-body: "Figtree", system-ui, sans-serif;--bj-outline: 2px;--bj-shadow-sm: 2px 2px 0 var(--bj-ink);--bj-shadow-md: 4px 4px 0 var(--bj-ink);--bj-shadow-lg: 6px 6px 0 var(--bj-ink);--bj-radius-pill: 999px;--bj-radius-card: 18px;--bj-radius-machine: 28px;--bj-touch: 44px;--bj-hazard: repeating-linear-gradient(135deg, var(--bj-machine) 0 6px, var(--bj-ink) 6px 12px)}body{margin:0;font-family:var(--bj-font-body);color:var(--bj-ink);background-color:var(--bj-cream);background-image:radial-gradient(var(--bj-dot) 1.3px,transparent 1.6px);background-size:18px 18px}html,body,#root{height:100%}body{overflow:hidden;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}a{color:var(--bj-boy)}button{font-family:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,input:focus-visible{outline:3px solid var(--bj-boy);outline-offset:2px}img{-webkit-user-drag:none;user-select:none}.disp{font-family:var(--bj-font-display);font-weight:400;letter-spacing:.5px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.app{--h: 100vh;--chrome: 572px;--strip: 0px;--cell: clamp(34px, calc((var(--h) - var(--chrome) - var(--strip)) / 3), 64px);position:relative;overflow:hidden;overflow:clip;box-sizing:border-box;width:100%;max-width:430px;height:var(--h);margin:0 auto;padding:calc(12px + env(safe-area-inset-top)) 16px calc(18px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px;background-color:var(--bj-cream);background-image:radial-gradient(var(--bj-dot) 1.3px,transparent 1.6px);background-size:18px 18px;user-select:none}.app.is-test{--strip: 28px;padding-top:calc(40px + env(safe-area-inset-top))}@supports (height: 100dvh){.app{--h: 100dvh}}@media(min-width:520px)and (min-height:700px){#root{display:flex;align-items:center;justify-content:center}.app{--h: min(100vh - 32px, 900px);border:3px solid var(--bj-ink);border-radius:34px;box-shadow:var(--bj-shadow-lg)}}.head{display:flex;align-items:center;justify-content:space-between;gap:10px;height:44px;flex-shrink:0}.head-title{display:flex;flex-direction:column;gap:1px;min-width:0}.head-title .disp{font-size:22px;line-height:1;white-space:nowrap}.head-sub{font-size:12px;font-weight:700;color:var(--bj-ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pills{display:flex;gap:8px;flex-shrink:0}.pill{display:flex;align-items:center;gap:6px;height:34px;padding:0 12px 0 6px;background:#fff;border:2px solid var(--bj-ink);border-radius:999px;font-weight:800;font-size:14px;box-shadow:var(--bj-shadow-sm);font-variant-numeric:tabular-nums}.pill img{width:26px;height:26px}.pill.bump{animation:pillbump .45s cubic-bezier(.2,2,.4,1)}@keyframes pillbump{40%{transform:scale(1.18);background:var(--bj-win)}}.tok{width:18px;height:18px;margin-left:3px;border-radius:50%;border:2px solid var(--bj-ink);background:linear-gradient(90deg,var(--bj-girl) 50%,var(--bj-boy) 50%);box-sizing:border-box}.dropin{animation:dropin .7s cubic-bezier(.2,1.5,.4,1)}@keyframes dropin{0%{transform:translateY(-30px) scale(.9);opacity:0}}.spacer{flex-grow:1;display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden}.intro{text-align:center;display:flex;flex-direction:column;gap:6px}.intro .disp{font-size:26px;line-height:1.1}.intro small{font-size:14px;color:var(--bj-ink-muted);font-weight:600;line-height:1.35;text-wrap:balance;padding:0 12px}.race{flex-shrink:0;box-sizing:border-box;padding:10px 12px;display:flex;flex-direction:column;gap:6px;background:#fff;border:2px solid var(--bj-ink);border-radius:18px;box-shadow:var(--bj-shadow-md)}.race-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:16px}.race-title{font-size:16px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.race-title.lead{animation:leadflash 2.6s both}.race-title.lead.girl{color:#b8304f}.race-title.lead.boy{color:var(--bj-boy)}@keyframes leadflash{0%{transform:scale(.6);opacity:0}12%{transform:scale(1.12);opacity:1}20%{transform:none}to{opacity:1}}.race-live{display:flex;align-items:center;gap:5px;flex-shrink:0;font-size:10.5px;font-weight:800;letter-spacing:.6px;color:#b8304f;white-space:nowrap}.race-live i{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse 1s infinite}.race-live.off{color:#8a6a1a}.race-counts{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:baseline;font-weight:800}.race-counts>div{display:flex;gap:6px;align-items:baseline}.race-counts>div:last-child{justify-content:flex-end}.race-counts .lbl{font-size:12px;letter-spacing:1px}.race-counts .num{font-size:17px;font-variant-numeric:tabular-nums;display:inline-block}.race-counts .num.bump{animation:numbump .5s cubic-bezier(.2,2,.4,1)}@keyframes numbump{40%{transform:scale(1.3)}}.race-counts .goal{font-size:11px;letter-spacing:1.5px}.race-track{position:relative;height:28px}.race-rail{position:absolute;inset:0;border:2px solid var(--bj-ink);border-radius:999px;background:var(--bj-cream);overflow:hidden}.race-rail div{position:absolute;top:0;bottom:0;transition:width .7s cubic-bezier(.3,1.4,.5,1)}.race-rail .g{left:0;background:var(--bj-girl)}.race-rail .b{right:0;background:var(--bj-boy)}.race-mid{position:absolute;left:50%;top:-6px;bottom:-6px;width:4px;margin-left:-2px;background:var(--bj-ink);border-radius:2px}.race-needs{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:var(--bj-ink-muted)}.toastslot{height:46px;flex-shrink:0}.toast{display:flex;align-items:center;gap:10px;height:46px;box-sizing:border-box;padding:0 12px 0 6px;background:#fff;border:2px solid var(--bj-ink);border-radius:14px;box-shadow:3px 3px 0 var(--bj-ink);font-size:13px;line-height:1.2;opacity:0;animation:toastlife 3.3s cubic-bezier(.2,1.2,.4,1) forwards;overflow:hidden}.toast.join{background:#e4f4ec}.toast.notice{background:var(--bj-ink);color:#fff}.toast.notice .ava{background:var(--bj-bulb);color:var(--bj-ink)}.toast>div:last-child{min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@keyframes toastlife{0%{transform:translate(60px);opacity:0}12%{transform:none;opacity:1}86%{transform:none;opacity:1}to{transform:translateY(-8px);opacity:0}}@keyframes toastin{0%{transform:translate(60px);opacity:0}}.ava{flex-shrink:0;width:32px;height:32px;box-sizing:border-box;border-radius:50%;border:2px solid var(--bj-ink);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}.ava.girl{background:var(--bj-girl-soft)}.ava.boy{background:var(--bj-boy);color:#fff}.ava.none{background:var(--bj-mint)}.machine{position:relative;flex-shrink:0;background:var(--bj-machine);border:3px solid var(--bj-ink);border-radius:28px;box-shadow:var(--bj-shadow-lg);padding:12px 12px 14px}.machine.onstage{position:absolute;top:calc(124px + env(safe-area-inset-top));left:16px;right:16px;z-index:30;animation:rise .8s cubic-bezier(.2,1.3,.4,1)}.app.is-test .machine.onstage{top:calc(146px + env(safe-area-inset-top))}@keyframes rise{0%{transform:translateY(120px) scale(.92)}}.marquee{background:var(--bj-ink);border-radius:16px;padding:8px 12px 10px;text-align:center}.bulbs{display:flex;justify-content:space-between;margin-bottom:4px}.bulb{width:9px;height:9px;border-radius:50%;background:var(--bj-bulb);animation:blink 1.4s steps(2,jump-none) infinite}.bulb.odd{animation-delay:.7s}.fastlights .bulb{animation-duration:.28s}@keyframes blink{50%{background:var(--bj-bulb-off)}}.mtitle{font-size:28px;line-height:1.1;color:var(--bj-bulb);white-space:nowrap}.msub{font-size:12px;font-weight:700;color:var(--bj-girl-soft);letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.window{position:relative;margin-top:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;background:var(--bj-ink);padding:7px;border-radius:18px}.window.glow{animation:glow .9s}@keyframes glow{30%{box-shadow:0 0 0 5px var(--bj-bulb),0 0 36px 8px var(--bj-bulb)}}.reel{position:relative;height:calc(var(--cell) * 3);overflow:hidden;background:#fffdf8;border-radius:12px}.reel:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(#1e214038,#1e214000 32% 68%,#1e214038)}.cell{height:var(--cell);display:flex;align-items:center;justify-content:center}.cell img{width:calc(var(--cell) - 12px);height:calc(var(--cell) - 12px)}.cell.photo img,.chip.photo img{width:calc(var(--cell) - 14px);height:calc(var(--cell) - 14px);box-sizing:border-box;border-radius:50%;object-fit:cover;border:3px solid var(--bj-ink)}.cell.hit{background:var(--bj-win)}.cell.hit img{animation:pop .6s cubic-bezier(.2,2,.4,1)}@keyframes pop{40%{transform:scale(1.35) rotate(-8deg)}}.strip{animation:reelspin .2s linear infinite;filter:blur(1.6px);will-change:transform}@keyframes reelspin{0%{transform:translateY(calc(var(--cell) * -5))}to{transform:translateY(0)}}.stack{animation:land .32s cubic-bezier(.2,1.8,.4,1)}@keyframes land{0%{transform:translateY(-26px)}}.payl,.payr{position:absolute;top:50%;width:0;height:0;margin-top:-8px;border-top:8px solid transparent;border-bottom:8px solid transparent}.payl{left:-3px;border-left:11px solid var(--bj-accent)}.payr{right:-3px;border-right:11px solid var(--bj-accent)}.readout{margin-top:10px;min-height:36px;box-sizing:border-box;padding:8px 12px;background:var(--bj-ink);border-radius:10px;color:var(--bj-mint);font-weight:700;font-size:14px;line-height:1.4;text-align:center;text-wrap:balance}.readout.win{color:var(--bj-bulb)}.readout.warn{color:#ffc27a}.slot{position:relative;margin:12px auto 0;width:230px;max-width:86%;height:14px;background:var(--bj-ink);border-radius:8px;box-shadow:inset 0 4px #000}.spinrow{display:flex;gap:12px;flex-shrink:0}.spin{width:100%;height:72px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border:3px solid var(--bj-ink);border-radius:22px;background:var(--bj-ink);color:var(--bj-bulb);box-shadow:5px 5px 0 var(--bj-accent);transition:transform .08s,box-shadow .08s;padding:0 8px}.spin .disp{font-size:30px;line-height:1}.spin:active:not(:disabled){transform:translate(4px,4px);box-shadow:1px 1px 0 var(--bj-accent)}.spin:disabled{opacity:.72;cursor:default}.spin small{font-size:12px;font-weight:700;color:var(--bj-girl-soft)}.spin.broke{flex-grow:1;width:auto;min-width:0}.spin.broke:disabled{opacity:1;background:#4a4d63;box-shadow:5px 5px #9a96aa}.spin.broke .disp{font-size:20px;line-height:1.1}.spin.broke small{color:#fff;font-variant-numeric:tabular-nums;text-align:center}.spin.closed{width:100%;flex-grow:0}.invite{flex-shrink:0;width:92px;height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:3px solid var(--bj-ink);border-radius:22px;background:var(--bj-girl-soft);font-weight:800;font-size:14px;line-height:1.1;box-shadow:5px 5px 0 var(--bj-ink);animation:dropin .6s cubic-bezier(.2,1.5,.4,1);transition:transform .08s,box-shadow .08s}.invite:active{transform:translate(4px,4px);box-shadow:1px 1px 0 var(--bj-ink)}.invite.kick{background:var(--bj-machine)}.invite:disabled{opacity:.6;cursor:default}.shake{animation:shake .5s}@keyframes shake{20%{transform:translate(-6px,3px) rotate(-1deg)}40%{transform:translate(6px,-3px) rotate(1deg)}60%{transform:translate(-4px,2px)}80%{transform:translate(3px,-1px)}}.burst{position:absolute;left:50%;top:44%;width:0;height:0;z-index:8;pointer-events:none}.ray{position:absolute;left:0;top:0;width:0;height:0}.bc{position:absolute;left:-13px;top:-13px;width:26px;height:26px;opacity:0;animation:shoot .95s cubic-bezier(.1,.8,.3,1) forwards}.bc.far{animation-name:shootfar}@keyframes shoot{0%{transform:translateY(0) scale(.3);opacity:1}70%{opacity:1}to{transform:translateY(-150px) scale(1) rotate(200deg);opacity:0}}@keyframes shootfar{0%{transform:translateY(0) scale(.3);opacity:1}70%{opacity:1}to{transform:translateY(-230px) scale(1.1) rotate(-240deg);opacity:0}}.wintext{position:absolute;left:-180px;right:-180px;top:-70px;text-align:center;font-size:50px;white-space:nowrap;color:var(--bj-bulb);-webkit-text-stroke:2px var(--bj-ink);paint-order:stroke fill;text-shadow:4px 4px 0 var(--bj-ink);opacity:0;animation:floatup 1.3s cubic-bezier(.2,1.4,.4,1) forwards}.wintext.long{font-size:36px}.wintext.girl{color:var(--bj-girl-text)}.wintext.boy{color:var(--bj-boy-text)}@keyframes floatup{0%{transform:scale(.4);opacity:0}20%{transform:scale(1.1);opacity:1}75%{opacity:1}to{transform:translateY(-60px) scale(1);opacity:0}}.flylayer{position:absolute;inset:0;z-index:12;pointer-events:none;overflow:hidden}.fly{position:absolute;width:30px;height:30px;will-change:transform,opacity}.flash{position:absolute;inset:0;z-index:7;background:var(--bj-bulb);pointer-events:none;opacity:0;animation:flash .6s}@keyframes flash{0%{opacity:.85}to{opacity:0}}.fireworks{position:absolute;inset:0;width:100%;height:100%;z-index:44;pointer-events:none}.machine.broken{animation:clunk .7s cubic-bezier(.3,1.7,.5,1) forwards;transform-origin:20% 100%}@keyframes clunk{0%{transform:none}18%{transform:translateY(-10px) rotate(1.5deg)}45%{transform:translateY(6px) rotate(-3.4deg)}to{transform:translateY(4px) rotate(-2.2deg)}}.machine.broken .bulb{background:var(--bj-bulb-off);animation:flicker 2.6s steps(1) infinite}.machine.broken .bulb:nth-child(3n){animation-delay:-1.1s}.machine.broken .bulb:nth-child(4n+1){animation-delay:-1.9s;animation-duration:3.7s}.machine.broken .bulb:nth-child(5n+2){animation:none}@keyframes flicker{0%,4%{background:var(--bj-bulb)}5%,8%{background:var(--bj-bulb-off)}9%,11%{background:var(--bj-bulb)}12%,to{background:var(--bj-bulb-off)}}.machine.broken .mtitle{opacity:.55}.machine.broken .reel:nth-child(1) .stack{transform:translateY(-17px) rotate(-2deg);animation:none}.machine.broken .reel:nth-child(2) .stack{animation:jam .16s steps(2) infinite alternate}.machine.broken .reel:nth-child(3) .stack{transform:translateY(-9px) rotate(3deg);animation:none}@keyframes jam{0%{transform:translateY(20px)}to{transform:translateY(24px)}}.machine.broken .reel{filter:saturate(.55)}.oos{position:absolute;left:50%;top:50%;z-index:6;transform-origin:50% -34px;animation:swing 2.8s ease-in-out infinite,oosdrop .6s cubic-bezier(.2,1.6,.4,1);margin:-24px 0 0 -108px;width:216px;box-sizing:border-box;padding:9px 8px 10px;text-align:center;background:var(--bj-cream);border:3px solid var(--bj-ink);border-radius:10px;box-shadow:var(--bj-shadow-md);font-size:22px;line-height:1;color:#b8304f;white-space:nowrap}.oos:before,.oos:after{content:"";position:absolute;top:-37px;width:3px;height:36px;background:var(--bj-ink)}.oos:before{left:34px;transform:rotate(32deg);transform-origin:bottom}.oos:after{right:34px;transform:rotate(-32deg);transform-origin:bottom}.oos.small{font-size:16px}@keyframes swing{0%,to{transform:rotate(-5deg)}50%{transform:rotate(4deg)}}@keyframes oosdrop{0%{transform:translateY(-120px) rotate(-18deg);opacity:0}}.smoke{position:absolute;left:50%;bottom:20px;width:0;height:0;z-index:9;pointer-events:none}.smoke i{position:absolute;left:-11px;bottom:0;width:22px;height:22px;border-radius:50%;background:#c9ccda;border:2px solid var(--bj-ink);box-sizing:border-box;opacity:0;animation:puff 2.4s ease-out infinite}.smoke i:nth-child(2){animation-delay:.6s;margin-left:-46px}.smoke i:nth-child(3){animation-delay:1.2s;margin-left:40px}.smoke i:nth-child(4){animation-delay:1.8s;margin-left:78px}@keyframes puff{0%{transform:translateY(0) scale(.4);opacity:0}15%{opacity:.95}to{transform:translate(-18px,-150px) scale(2.1);opacity:0}}.spark{position:absolute;z-index:9;width:26px;height:26px;background:var(--bj-bulb);pointer-events:none;opacity:0;clip-path:polygon(50% 0,61% 36%,100% 30%,68% 54%,86% 92%,50% 68%,14% 92%,32% 54%,0 30%,39% 36%);filter:drop-shadow(0 0 0 var(--bj-ink));animation:spark 1.9s steps(1) infinite}.spark.a{left:4px;top:38%}.spark.b{right:2px;top:58%;animation-delay:.8s;width:20px;height:20px}.spark.c{right:22%;top:24%;animation-delay:1.3s;width:16px;height:16px}@keyframes spark{0%,6%{opacity:1;transform:scale(1.2) rotate(8deg)}7%,12%{opacity:0}13%,17%{opacity:1;transform:scale(.8) rotate(-12deg)}18%,to{opacity:0}}.machine.repaired{animation:repaired .7s cubic-bezier(.2,1.8,.4,1)}@keyframes repaired{0%{transform:translateY(4px) rotate(-2.2deg)}40%{transform:translateY(-12px) rotate(1.2deg) scale(1.02)}}.machine.repaired .bulb{animation-duration:.2s}.veil{position:absolute;inset:0;z-index:20;background:var(--bj-veil);animation:fade .6s}@keyframes fade{0%{opacity:0}}.modal{position:absolute;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;overflow-y:auto}.app.is-test .modal{padding-top:40px}.cap{width:100%;margin:auto;background:#fff;border:3px solid var(--bj-ink);border-radius:14px;box-shadow:var(--bj-shadow-lg);overflow:hidden;animation:dropin .5s cubic-bezier(.2,1.5,.4,1)}.caphead{background:var(--bj-boy);color:#fff;padding:14px 16px}.caphead .why{font-size:13px;font-weight:600}.caphead .pre{font-size:15px;font-weight:600;margin-top:6px}.caphead .noun{font-size:28px;font-weight:800;line-height:1.1}.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:8px}.tile{position:relative;height:clamp(72px,calc((var(--h) - 330px) / 3),92px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0 2px;border:2px solid #E4DCCB;border-radius:6px;background:var(--bj-cream);font-size:13px;font-weight:700;line-height:1.1;transition:transform .12s}.tile.sel{transform:scale(.9);border-color:var(--bj-boy);background:#e3edfa}.tile img{width:50px;height:50px;max-height:58%}.sqgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:8px}.sq{position:relative;aspect-ratio:1;max-height:78px;padding:0;border:0;overflow:hidden;background:#cfe3f5;transition:transform .12s}.sq img{position:absolute;width:400%;height:400%;max-width:none}.sq.sel{transform:scale(.84)}.robot{display:flex;align-items:center;gap:14px;width:calc(100% - 24px);min-height:78px;margin:12px;padding:0 12px 0 14px;box-sizing:border-box;border:2px solid var(--bj-ink);border-radius:8px;background:var(--bj-cream);box-shadow:var(--bj-shadow-sm);text-align:left}.robotbox{flex-shrink:0;width:30px;height:30px;box-sizing:border-box;border:3px solid var(--bj-ink);border-radius:6px;background:#fff}.robot.checking .robotbox{border-radius:50%;border-color:var(--bj-boy) var(--bj-boy) var(--bj-boy) transparent;background:transparent;animation:robotspin .7s linear infinite}@keyframes robotspin{to{transform:rotate(360deg)}}.robotlabel{flex-grow:1;font-size:17px;font-weight:700;line-height:1.2}.robotbrand{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:9px;font-weight:800;letter-spacing:.3px;color:var(--bj-ink-muted)}.robotbrand i{width:26px;height:26px;box-sizing:border-box;border-radius:50%;border:3px solid var(--bj-boy);border-right-color:var(--bj-girl);border-bottom-color:var(--bj-machine)}.tick{position:absolute;left:5px;top:5px;width:22px;height:22px;box-sizing:border-box;border-radius:50%;background:var(--bj-boy);color:#fff;display:flex;align-items:center;justify-content:center;border:2px solid #FFFFFF}.capfoot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px 12px;border-top:2px solid #E4DCCB}.capfoot .brand{font-size:12px;font-weight:700;color:var(--bj-ink-muted)}.btn{height:44px;padding:0 20px;border:2px solid var(--bj-ink);border-radius:10px;background:var(--bj-boy);color:#fff;font-weight:800;font-size:15px;box-shadow:3px 3px 0 var(--bj-ink);flex-shrink:0}.btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:1px 1px 0 var(--bj-ink)}.btn.ghost{background:#fff;color:var(--bj-ink)}.btn.news{background:var(--bj-accent);color:var(--bj-ink)}.btn:disabled{background:#c9ccda;color:#4a4d63;box-shadow:none;cursor:default}.linkbtn{min-height:44px;border:0;background:transparent;padding:0;font-weight:700;font-size:13px;color:var(--bj-boy);text-decoration:underline;text-align:left}.err{margin:0 12px 10px;padding:10px 12px;background:var(--bj-error-bg);border:2px solid var(--bj-error-border);border-radius:10px;font-size:13px;line-height:1.35;color:var(--bj-error-text);animation:dropin .4s;user-select:text}.termwrap{width:100%;margin:auto;display:flex;flex-direction:column;align-items:center;gap:12px}.termhead{text-align:center;color:#fff}.termhead .why{font-size:13px;font-weight:700;color:var(--bj-girl-soft)}.termhead .disp{font-size:22px;line-height:1.15;margin-top:4px}.term{width:300px;max-width:100%;box-sizing:border-box;background:#2b2e3b;border:3px solid var(--bj-ink);border-radius:30px;box-shadow:var(--bj-shadow-lg);padding:14px 14px 16px;display:flex;flex-direction:column;gap:12px;animation:dropin .5s cubic-bezier(.2,1.5,.4,1)}.termscreen{background:#f4f7f2;border:3px solid #111320;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px}.termtop{display:flex;align-items:center;justify-content:space-between}.termtop .brand{font-weight:800;font-size:15px;letter-spacing:.5px}.termtop .brand span{color:var(--bj-verified)}.termitem{font-size:12px;font-weight:700;color:var(--bj-ink-muted)}.termask{font-size:18px;font-weight:800}.opts{display:flex;flex-direction:column;gap:8px}.timer{min-width:52px;height:28px;border-radius:999px;background:var(--bj-ink);color:var(--bj-bulb);font-weight:800;font-size:14px;font-variant-numeric:tabular-nums;display:flex;align-items:center;justify-content:center}.timer.low{background:#b8304f;color:#fff;animation:pulse .6s infinite}.opt{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 14px;border:2px solid var(--bj-ink);border-radius:12px;background:#fff;font-size:20px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.opt.sel{background:#e3edfa;border-color:var(--bj-boy);box-shadow:inset 0 0 0 2px var(--bj-boy)}.code{font-size:13px;letter-spacing:1.5px;padding:3px 8px;border-radius:6px;background:var(--bj-ink);color:#fff}.tbar{height:8px;border-radius:4px;background:#d9dce6;overflow:hidden}.tbar div{height:100%;background:var(--bj-ink);transition:width .15s linear}.fine{font-size:10.5px;line-height:1.35;color:var(--bj-ink-muted)}.payrow{display:flex;align-items:center;gap:10px}.paybtn{flex-grow:1;height:48px;border:2px solid var(--bj-ink);border-radius:12px;background:var(--bj-verified);color:#fff;font-weight:800;font-size:17px}.paybtn:disabled{background:#c9ccda;color:#4a4d63;cursor:default}.keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.key{height:30px;border-radius:8px;background:#454a5e;color:#e6e8f0;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;box-shadow:0 3px #1a1c26}.key.red{background:#b8304f;color:#fff}.key.green{background:var(--bj-verified);color:#fff}.terr{padding:8px 10px;background:var(--bj-error-bg);border:2px solid var(--bj-error-border);border-radius:10px;font-size:12px;line-height:1.35;color:var(--bj-error-text);animation:dropin .4s}@media(max-height:700px){.keypad{display:none}.termhead .disp{font-size:19px}}.banner{position:absolute;top:calc(18px + env(safe-area-inset-top));left:16px;right:16px;z-index:35;text-align:center;color:#fff;animation:dropin .6s cubic-bezier(.2,1.5,.4,1)}.app.is-test .banner{top:calc(40px + env(safe-area-inset-top))}.banner .disp{font-size:24px;line-height:1.1;text-wrap:balance}.app.revealing .head{visibility:hidden}.banner .sub{font-size:14px;font-weight:700;color:var(--bj-girl-soft);margin-top:4px;text-wrap:balance}.slipwrap{position:absolute;top:calc(100% - 20px);left:50%;width:232px;margin-left:-116px;height:300px;overflow:hidden;z-index:-1}.slip{position:relative;background:#fdfdf6;border:2px solid var(--bj-ink);border-top:0;padding:14px 10px 12px;box-shadow:0 10px #00000026;animation:print 2.6s steps(26,end) forwards;transform:translateY(-100%)}@keyframes print{to{transform:translateY(0)}}.slip img{display:block;width:100%;height:auto;min-height:120px;background:#060607;border:1px solid var(--bj-ink);box-sizing:border-box}.sliphead{display:flex;justify-content:space-between;font:700 10px/1 ui-monospace,Menlo,monospace;letter-spacing:.5px;margin-bottom:8px}.slipfoot{margin-top:8px;font:700 10px/1.4 ui-monospace,Menlo,monospace}.stamp{position:absolute;right:14px;bottom:18px;padding:4px 10px;border:3px solid currentColor;border-radius:8px;font-size:20px;transform:rotate(-10deg);animation:stamp .4s cubic-bezier(.2,2,.4,1);background:#fdfdf6b3}.stamp.girl{color:#b8304f}.stamp.boy{color:var(--bj-boy)}@keyframes stamp{0%{transform:rotate(-10deg) scale(2.4);opacity:0}}.emblaze{position:absolute;left:0;right:0;top:calc(262px + env(safe-area-inset-top));z-index:40;text-align:center;transform:rotate(-7deg);pointer-events:none;animation:slam .7s cubic-bezier(.2,1.6,.4,1)}@keyframes slam{0%{transform:rotate(-7deg) scale(3);opacity:0}to{transform:rotate(-7deg) scale(1);opacity:1}}.itsa{font-size:40px;color:var(--bj-bulb);-webkit-text-stroke:2px var(--bj-ink);paint-order:stroke fill;text-shadow:4px 4px 0 var(--bj-ink)}.big{font-size:min(112px,29vw);line-height:.9;-webkit-text-stroke:4px var(--bj-ink);paint-order:stroke fill;text-shadow:7px 7px 0 var(--bj-ink)}.big.girl{color:var(--bj-girl-text)}.big.boy{color:var(--bj-boy-text)}.confetti{position:absolute;inset:0;z-index:45;pointer-events:none;overflow:hidden}.cf{position:absolute;top:-30px;border-radius:2px;animation-name:fall;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes fall{0%{transform:translateY(0) rotate(0)}to{transform:translateY(120vh) rotate(720deg)}}.revealbar{position:absolute;left:16px;right:16px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:46;display:flex;gap:10px;animation:dropin .6s .6s both}.revealbar .btn{flex:1 1 0;height:52px;padding:0 8px}.adj{position:absolute;top:calc(64px + env(safe-area-inset-top));left:16px;right:16px;z-index:32;background:#fff;border:3px solid var(--bj-ink);border-radius:20px;box-shadow:var(--bj-shadow-lg);overflow:hidden;animation:dropin .6s cubic-bezier(.2,1.5,.4,1)}.app.is-test .adj{top:calc(84px + env(safe-area-inset-top))}.adjhead{background:var(--bj-ink);color:var(--bj-bulb);padding:10px 14px;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:1.5px}.adjbody{display:flex;align-items:center;gap:14px;padding:12px 14px 10px}.adjbody img{width:112px;height:126px;flex-shrink:0}.bubble{position:relative;flex-grow:1;padding:12px 14px;background:var(--bj-cream);border:2px solid var(--bj-ink);border-radius:16px;font-weight:800;font-size:16px;line-height:1.3;animation:toastin .35s}.bubble:before{content:"";position:absolute;left:-12px;top:22px;border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:12px solid var(--bj-ink)}.cert{position:relative;margin:0 14px 14px;padding:12px 14px;background:#fffdf3;border:2px dashed var(--bj-ink);border-radius:12px}.cert-title{font-size:11px;font-weight:800;letter-spacing:1.5px;margin-bottom:4px}.cert-rule{height:2px;background:var(--bj-ink);margin:6px 0 8px}.cert-first{margin-top:8px;font-weight:800;font-size:14px;animation:toastin .35s}.crow{display:flex;justify-content:space-between;align-items:baseline;font-weight:800;font-size:15px;padding:3px 0}.crow b{font-size:20px;font-variant-numeric:tabular-nums}.check{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--bj-ink-muted);padding:2px 0}.check i{flex-shrink:0;width:18px;height:18px;box-sizing:border-box;border-radius:50%;border:2px solid #9A96AA;display:flex;align-items:center;justify-content:center}.check.done{color:var(--bj-ink)}.check.done i{background:var(--bj-verified);border-color:var(--bj-verified);color:#fff;animation:pop .4s}.vstamp{position:absolute;right:10px;top:26px;padding:6px 12px;border:4px solid var(--bj-verified);border-radius:10px;color:var(--bj-verified);font-size:28px;line-height:1;transform:rotate(-12deg);background:#fffdf399;animation:vstamp .45s cubic-bezier(.2,2,.4,1)}@keyframes vstamp{0%{transform:rotate(-12deg) scale(3);opacity:0}}.namescreen{position:absolute;inset:0;z-index:50;box-sizing:border-box;padding:calc(20px + env(safe-area-inset-top)) 24px calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px;overflow-y:auto;background-color:var(--bj-cream);background-image:radial-gradient(var(--bj-dot) 1.3px,transparent 1.6px);background-size:18px 18px;--cell: 64px}.app.is-test .namescreen{padding-top:calc(46px + env(safe-area-inset-top))}.nametop{display:flex;align-items:center;justify-content:space-between;gap:10px}.conn{display:flex;align-items:center;gap:6px;min-height:30px;padding:0 12px;border:2px solid var(--bj-ink);border-radius:999px;background:#fff;font-size:12px;font-weight:800;letter-spacing:.5px}.conn i{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:#b8304f;animation:pulse 1s infinite}.conn.connecting i{background:#c99a1e}@keyframes pulse{50%{opacity:.25}}.langseg{display:flex;flex-shrink:0;border:2px solid var(--bj-ink);border-radius:999px;overflow:hidden;background:#fff}.langseg button{width:48px;height:40px;border:0;background:transparent;font-weight:800;font-size:13px;letter-spacing:.5px}.langseg button.on{background:var(--bj-ink);color:var(--bj-bulb)}.cluster{display:flex;gap:10px;justify-content:center;margin-top:6px}.chip{width:66px;height:66px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid var(--bj-ink);border-radius:18px;box-shadow:3px 3px 0 var(--bj-ink)}.chip img{width:52px;height:52px}.chip:nth-child(1){transform:rotate(-8deg) translateY(6px)}.chip:nth-child(2){transform:rotate(4deg)}.chip:nth-child(3){transform:rotate(-3deg)}.chip:nth-child(4){transform:rotate(9deg) translateY(6px)}.brand{text-align:center}.brand .disp{font-size:54px;line-height:.95;margin:0}.brand p{margin:12px auto 0;max-width:310px;font-size:16px;line-height:1.45;font-weight:600;color:#3a3d5a;text-wrap:pretty}.coininfo{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#fff;border:2px solid var(--bj-ink);border-radius:14px;font-size:14px;font-weight:600;line-height:1.4}.coininfo img{width:36px;height:36px;flex-shrink:0}.nameform{display:flex;flex-direction:column;gap:14px;margin-top:auto}.field{display:flex;flex-direction:column;gap:8px}.field label{font-weight:800;font-size:15px}.field input{height:56px;box-sizing:border-box;padding:0 16px;border:3px solid var(--bj-ink);border-radius:14px;background:#fff;font:700 20px var(--bj-font-body);color:var(--bj-ink);box-shadow:3px 3px 0 var(--bj-ink);outline:none;user-select:text;min-width:0}.field input:focus{box-shadow:3px 3px 0 var(--bj-boy);border-color:var(--bj-boy)}.field .hint{font-size:13px;font-weight:600;color:var(--bj-ink-muted)}.field .hint.bad{color:var(--bj-error-text)}.joinbtn{height:60px;font-size:18px;border-width:3px;border-radius:16px;background:var(--bj-ink);color:var(--bj-bulb);box-shadow:5px 5px 0 var(--bj-accent)}.teststrip{position:absolute;top:env(safe-area-inset-top);left:0;right:0;height:28px;z-index:60;display:flex;align-items:center;background:var(--bj-ink);pointer-events:none}.teststrip i{flex-shrink:0;width:34px;height:100%;background:var(--bj-hazard)}.teststrip span{flex-grow:1;text-align:center;color:var(--bj-bulb);font-size:11px;font-weight:800;letter-spacing:1.5px;white-space:nowrap;overflow:hidden}.teststicker{position:absolute;top:-16px;right:-14px;width:54px;height:54px;z-index:9;transform:rotate(14deg);pointer-events:none}@media(max-width:359px){.app{padding-left:10px;padding-right:10px}.head-title .disp{font-size:19px}.pill{padding:0 8px 0 4px;font-size:13px;gap:4px}.pills{gap:5px}.mtitle{font-size:24px}.namescreen{padding-left:16px;padding-right:16px;gap:12px}.brand .disp{font-size:46px}.chip{width:58px;height:58px}.chip img{width:44px;height:44px}.invite{width:80px;font-size:13px}.spin.broke .disp{font-size:17px}.race-live{letter-spacing:.3px;font-size:10px}.adjbody img{width:84px;height:95px}.bubble{font-size:14px}.machine.onstage,.adj,.banner{left:10px;right:10px}}@media(max-height:760px){.app{gap:8px;--chrome: 516px}.race{padding:8px 12px;gap:4px}.race-needs,.msub{display:none}.intro .disp+small{display:none}.machine{padding:10px 10px 12px}.namescreen{gap:12px}.brand .disp{font-size:44px}.brand p{font-size:15px;margin-top:8px}.machine.onstage{top:calc(112px + env(safe-area-inset-top));transform:scale(.86);transform-origin:top center}.app.is-test .machine.onstage{top:calc(134px + env(safe-area-inset-top))}.emblaze{top:calc(200px + env(safe-area-inset-top))}.banner .disp{font-size:20px}.banner .sub{font-size:13px;margin-top:2px}.banner{top:calc(10px + env(safe-area-inset-top))}.app.is-test .banner{top:calc(34px + env(safe-area-inset-top))}.adj{top:calc(16px + env(safe-area-inset-top))}.app.is-test .adj{top:calc(36px + env(safe-area-inset-top))}}@media(max-height:640px){.app{gap:6px;--chrome: 410px;padding-top:calc(8px + env(safe-area-inset-top));padding-bottom:calc(12px + env(safe-area-inset-bottom))}.app.is-test{padding-top:calc(34px + env(safe-area-inset-top))}.head{height:36px}.head-title .disp{font-size:19px}.pill{height:30px}.pill img{width:22px;height:22px}.race{padding:6px 12px 8px;border-radius:14px}.race-title:not(.lead){display:none}.race-top{justify-content:flex-end;min-height:12px}.race-title.lead{font-size:13px;margin-right:auto}.race-live{font-size:9.5px}.race-track{height:22px}.toastslot,.toast{height:38px}.ava{width:26px;height:26px;font-size:12px}.machine{padding:8px 8px 10px;border-radius:22px}.marquee{padding:5px 10px 6px;border-radius:12px}.bulbs{margin-bottom:2px}.bulb{width:7px;height:7px}.mtitle{font-size:21px}.window{margin-top:6px;gap:5px;padding:5px;border-radius:14px}.readout{margin-top:6px;min-height:32px;padding:6px 10px;font-size:13px}.slot{margin-top:6px;height:12px}.spin,.invite{height:56px;border-radius:18px}.spin .disp{font-size:24px}.spin small{font-size:11px}.spin.broke .disp{font-size:16px}.intro .disp{font-size:20px}.cluster{display:none}.brand .disp{font-size:38px}.coininfo{font-size:13px;padding:8px 12px}.field input{height:50px}.joinbtn{height:54px}.adjbody img{width:70px;height:79px}.adjbody{padding:8px 12px 6px}.bubble{font-size:14px;padding:8px 10px}.cert{padding:8px 12px;margin:0 10px 10px}.check{font-size:13px;padding:1px 0}.machine.onstage{transform:scale(.8);top:calc(96px + env(safe-area-inset-top))}.app.is-test .machine.onstage{top:calc(120px + env(safe-area-inset-top))}.emblaze{top:calc(150px + env(safe-area-inset-top))}.tile{height:clamp(60px,calc((var(--h) - 300px) / 3),92px)}.tile img{width:40px;height:40px}.caphead{padding:10px 14px}.caphead .noun{font-size:24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.strip{filter:none;animation:none!important;opacity:.35}.shake,.machine.broken,.machine.repaired{animation:none!important}.burst,.flash,.confetti,.fireworks,.smoke,.spark,.flylayer{display:none!important}.veil,.cap,.term,.adj,.banner,.emblaze,.toast,.dropin,.race,.invite{animation:softfade .2s both!important}.emblaze{transform:rotate(-7deg)}.toast{animation:softtoast 3.3s both!important}.slip{animation:softfade .6s both!important;transform:none}.oos{animation:none!important;transform:rotate(-3deg)}.bulb,.conn i,.race-live i,.timer.low{animation:none!important}.robot.checking .robotbox{animation:none!important;border-color:var(--bj-boy)}}@keyframes softfade{0%{opacity:0}to{opacity:1}}@keyframes softtoast{0%{opacity:0}6%{opacity:1}90%{opacity:1}to{opacity:0}}
