/* Monster Bingo arcade. All styling stays inside the game component. */
.ba-machine{container:bingo / inline-size;--ba-lime:#d1ff58;color:#fff8ff;background:#211037;border:2px solid #8d59bc;border-radius:24px;overflow:hidden;box-shadow:0 9px 0 #140821,0 18px 48px #16092745;margin:0 0 30px;isolation:isolate}
.ba-machine *{box-sizing:border-box}
.ba-machine button,.ba-machine select{font:inherit}
.ba-machine button{cursor:pointer}
.ba-machine button:disabled{cursor:default}
.ba-machine button:focus-visible,.ba-machine select:focus-visible,.ba-machine summary:focus-visible{outline:3px solid #e6ff8c;outline-offset:3px}
.ba-marquee{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 26px 18px;background:linear-gradient(100deg,#7a2eae,#482071 60%,#6a259a);border-bottom:2px solid #a568ce;position:relative}
.ba-marquee:before{content:'';position:absolute;left:18px;right:18px;top:5px;height:4px;background:radial-gradient(circle,#ffeab2 2px,transparent 2px) 0 0/20px 4px}
.ba-marquee strong{font-family:'Baloo 2',sans-serif;font-size:clamp(26px,3.1vw,41px);line-height:1;white-space:nowrap;font-weight:800;letter-spacing:-.025em;text-shadow:0 3px 0 #351246}
.ba-marquee em{font-style:normal;color:var(--ba-lime)}
.ba-marquee>span{font-size:10px;font-weight:900;letter-spacing:.11em;color:#efdcff;white-space:nowrap}
.ba-free-label{border:1px solid #ccb2e86b;border-radius:7px;padding:7px 9px;background:#35144780}
.ba-round-controls{display:flex;align-items:center;gap:16px;padding:20px 24px;background:#321749;border-bottom:1px solid #a780bd38;flex-wrap:wrap}
.ba-round-intro{flex:1;min-width:190px}
.ba-round-intro strong{display:block;font-family:'Baloo 2',sans-serif;font-size:22px;line-height:1.1;letter-spacing:-.02em;color:#fff4ff}
.ba-round-intro>span{display:block;font-size:12px;color:#d2b9e7;line-height:1.5;margin-top:5px}
.ba-options{display:flex;gap:9px}
.ba-options label{font-size:8px;font-weight:900;letter-spacing:.06em;color:#c4a6d9}
.ba-options select{display:block;background:#46265e;border:1px solid #9672ad;color:#f9f0ff;min-height:37px;max-width:145px;padding:7px 24px 7px 9px;border-radius:7px;margin-top:4px;font-size:11px}
.ba-options select:disabled{opacity:.65}
.ba-start{display:inline-flex;align-items:center;justify-content:center;flex:none;background:linear-gradient(#deff83,#c3f344);color:#344411;border:2px solid #e5ffad;border-bottom-color:#b4d866;border-radius:12px;box-shadow:0 4px 0 #779529;font-size:16px!important;font-weight:1000!important;min-height:48px;padding:12px 20px;line-height:1.15;text-align:center;text-decoration:none;white-space:nowrap;transition:transform .15s,filter .15s}
.ba-start:hover{filter:brightness(1.08);transform:translateY(-1px)}
.ba-start:active{transform:translateY(3px);box-shadow:0 1px 0 #779529}
.ba-text-button{border:0;background:none;color:#dac5e7;min-height:38px;padding:7px 4px;font-size:11px!important;font-weight:800;line-height:1.35}
.ba-text-button:hover{color:#fff}
.ba-redeal{font-size:10px!important}
.ba-scoreboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:16px 24px 17px;background:#211037}
.ba-scoreboard>div{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:13px;padding:1px 18px;border-right:1px solid #a37bbe3b;min-width:0}
.ba-scoreboard>div:first-child{padding-left:0}
.ba-scoreboard>div:last-child{border:0}
.ba-scoreboard span{font-size:9px;font-weight:900;letter-spacing:.09em;color:#c1a5d8;grid-column:1/-1}
.ba-scoreboard strong{font-family:'Baloo 2',sans-serif;font-size:35px;line-height:1.2;letter-spacing:-.03em;color:#fff8eb;font-variant-numeric:tabular-nums;white-space:nowrap}
.ba-scoreboard em{font-size:24px;color:#b89cce;font-style:normal}
.ba-scoreboard small{font-size:9px;font-weight:900;letter-spacing:.02em;color:#c8aedb;line-height:1.4}
.ba-scoreboard .ba-goal-score strong{color:#d9ff7b;font-size:29px}
.ba-scoreboard .ba-goal-score small{color:#b2d578}
.ba-scoreboard .is-score-pop{animation:ba-score-pop .65s ease-out;color:#dbff83}
.ba-stage{display:grid;grid-template-columns:minmax(175px,.72fr) minmax(310px,1.42fr) minmax(175px,.72fr);gap:22px;padding:0 24px 24px;align-items:start;max-width:1300px;margin:0 auto}
.ba-ticket{background:#fff8e8;border:3px solid #d5c0e2;border-radius:18px;padding:17px;color:#402653;box-shadow:0 7px 0 #0e041d77;min-width:0;position:relative}
.ba-ticket-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 13px}
.ba-ticket-heading>span{font-size:10px;font-weight:1000;letter-spacing:.08em;color:#8c65a0;white-space:nowrap}
.ba-ticket-heading i{font-style:normal;color:#b594be;margin-left:2px}
.ba-ticket-heading>strong{font-size:10px;color:#783ba4;text-align:right;line-height:1.2;max-width:180px}
.ba-letters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:7px}
.ba-letters span{display:grid;place-items:center;border-radius:8px;padding:7px 0;background:#ffaccd;color:#7b284d;font-family:'Baloo 2',sans-serif;font-size:27px;line-height:1;font-weight:800;border-bottom:3px solid #e886b3}
.ba-letters span:nth-child(2){background:#ffda70;color:#7c5114;border-color:#dcb253}
.ba-letters span:nth-child(3){background:#cbb6ff;color:#523583;border-color:#ac8bde}
.ba-letters span:nth-child(4){background:#8fe2ed;color:#255f6b;border-color:#68bdc5}
.ba-letters span:nth-child(5){background:#d5ee82;color:#4d6727;border-color:#b1cd5d}
.ba-card-wrap{position:relative}
.ba-card{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.ba-cell{appearance:none;aspect-ratio:1;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;min-width:0;border:2px solid #dcc7e1;border-radius:10px;background:#fffef9;color:#4b315f;font-size:clamp(23px,2.8vw,40px)!important;font-family:'Baloo 2',sans-serif!important;font-weight:800;line-height:1;padding:2px;transition:background .15s,transform .12s;box-shadow:0 3px 0 #d8c8dc;touch-action:manipulation;overflow:visible}
.ba-cell.is-target{border-style:dashed;border-color:#ac80bc}
.ba-cell:not(:disabled):hover{background:#eee0fc;transform:translateY(-2px)}
.ba-cell:not(:disabled):active{transform:scale(.93);box-shadow:0 1px 0 #d8c8dc}
.ba-cell:focus-visible{outline-color:#61379a;outline-offset:2px;z-index:2}
.ba-cell.is-available{border:2px solid #91b635;box-shadow:0 0 0 2px #b5d65e,0 3px 0 #849947;background:#e8ffa4;color:#3d5621;animation:ba-match 1s ease-in-out infinite alternate}
.ba-cell.is-daubed{background:var(--bingo-ink);border:2px solid #67457e;color:#fff;box-shadow:0 3px 0 #432352}
.ba-cell.is-daubed:before{content:'';position:absolute;inset:5px;border:1px dashed #ffffff8c;border-radius:50%;transform:rotate(-13deg);pointer-events:none}
.ba-cell.is-fresh{animation:ba-stamp .4s cubic-bezier(.12,.8,.22,1.2)}
.ba-cell.is-winning{border-color:#c3ed69;box-shadow:0 0 0 2px #d2f591;z-index:1}
.ba-cell.is-wrong{animation:ba-shake .35s ease-out;border-color:#dc818c;background:#ffe6e7}
.ba-cell>i{position:absolute;bottom:4px;right:5px;font-size:11px;font-style:normal;display:none}
.ba-cell.is-daubed>i{display:block}
.ba-cell.is-free{background:#d2ec79;color:#4b6026;border-color:#adc75b;box-shadow:0 3px 0 #9ead68}
.ba-cell.is-free>span{font-size:25px;line-height:1}
.ba-cell.is-free small{font-size:8px;line-height:1.1;letter-spacing:.08em;margin-top:3px}
.ba-cell.is-free:before{display:none}
.ba-stamp-sparks{position:absolute;right:-9px;top:-12px;color:#d5ff6c;font-size:26px;pointer-events:none;animation:ba-spark-out .7s ease-out forwards;z-index:5;text-shadow:0 1px 3px #593d91}
.ba-card-overlay{position:absolute;inset:0;z-index:6;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#331644ee;border:2px solid #cc98ef;border-radius:12px;text-align:center;padding:15px;color:#fff;backdrop-filter:blur(2px)}
.ba-card-overlay>span{font-size:11px;font-weight:900;letter-spacing:.15em;color:#e4b4fd}
.ba-card-overlay>strong{font-family:'Baloo 2',sans-serif;font-size:clamp(42px,7vw,94px);line-height:1.2;color:#dcff74;text-shadow:0 5px 0 #759541;margin:8px 0}
.ba-card-overlay>strong.is-ticking{animation:ba-count .7s ease-out}
.ba-card-overlay>p{font-size:12px;line-height:1.5;margin:0;color:#dfc9ee}
.ba-card-hint{display:flex;align-items:center;gap:8px;margin:15px 0 13px;color:#846792;font-size:10px;line-height:1.4;min-height:28px}
.ba-daub-dot{display:block;flex:none;width:11px;height:11px;border-radius:50%;background:#c0e85f;box-shadow:0 0 0 3px #dfedb8}
.ba-claim{width:100%;min-height:77px;background:linear-gradient(#ad64e4,#7739b4);border:2px solid #6d319e;border-top-color:#c48ced;border-radius:13px;box-shadow:0 5px 0 #522278;color:#fff;font-size:36px!important;font-family:'Baloo 2',sans-serif!important;font-weight:900;line-height:1;padding:12px;transition:transform .12s}
.ba-claim:not(:disabled):active{transform:translateY(3px);box-shadow:0 2px 0 #522278}
.ba-claim small{display:block;font-family:'Nunito',sans-serif;font-size:9px;font-weight:900;letter-spacing:.03em;margin-top:6px;line-height:1.2}
.ba-claim:disabled{opacity:.53;box-shadow:0 3px 0 #9f8aac}
.ba-claim.is-ready{background:linear-gradient(#e9ff9d,#c7f253);color:#3e5420;border-color:#b2cc65;box-shadow:0 5px 0 #819b37;animation:ba-ready .85s ease-in-out infinite alternate}
.ba-ink{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px}
.ba-ink>span{font-size:8px;font-weight:900;letter-spacing:.04em;color:#876095;margin-right:6px}
.ba-ink button{width:24px;height:24px;min-height:0;border:2px solid #d4bfdc;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;padding:0}
.ba-ink button[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:2px}
.ba-caller{text-align:center;min-width:0;background:linear-gradient(#4d246bd4,#37194d80);border:1px solid #9f73b961;border-radius:17px;padding:17px 13px 8px}
.ba-caller-title{display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;letter-spacing:.12em;color:#dcbde9;font-weight:900}
.ba-on-air{width:7px;height:7px;border-radius:50%;background:#ac8dbe}
.ba-on-air.is-active{background:#d9ff76;box-shadow:0 0 0 3px #cffb5721;animation:ba-on-air 1.8s infinite}
.ba-ball-stage{position:relative;display:grid;place-items:center;min-height:206px;margin:10px -7px 7px}
.ba-ball{position:relative;z-index:1;width:172px;height:172px;max-width:100%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 34% 20%,#fff9ff,#eda7d6 49%,#a94e96 85%);box-shadow:inset -9px -12px 19px #78336966,inset 5px 7px 12px #fff8ef99,0 12px 0 #16092755,0 0 33px #fbd28411;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#5b2b55;border:3px solid #f5b7df}
.ba-ball:before{content:'';position:absolute;inset:21px;border-radius:50%;border:2px solid #ab659966;background:#fff9eb;box-shadow:inset 0 2px 8px #916b5266}
.ba-ball[data-ball-letter=I]{background:radial-gradient(circle at 34% 20%,#fffde3,#ffdc83 49%,#be8128 85%);border-color:#f8dea8}
.ba-ball[data-ball-letter=N]{background:radial-gradient(circle at 34% 20%,#fff8ff,#c9a3fa 49%,#7f4aba 85%);border-color:#d9bafa}
.ba-ball[data-ball-letter=G]{background:radial-gradient(circle at 34% 20%,#edffff,#89dfea 49%,#3894a2 85%);border-color:#adebf3}
.ba-ball[data-ball-letter=O]{background:radial-gradient(circle at 34% 20%,#faffdb,#d3ec85 49%,#88a53d 85%);border-color:#e3f7a9}
.ba-ball>span{font-family:'Baloo 2',sans-serif;font-size:30px;line-height:1;z-index:1;font-weight:800;margin-top:3px}
.ba-ball>strong{font-family:'Baloo 2',sans-serif;font-size:68px;line-height:1;letter-spacing:-.06em;z-index:1;font-weight:800}
.ba-ball.is-new{animation:ba-ball-drop .48s cubic-bezier(.2,.8,.2,1)}
.ba-orbit{position:absolute;width:201px;max-width:100%;height:189px;border:1px solid #c194d155;border-radius:50%;transform:rotate(-24deg)}
.ba-spark{position:absolute;font-size:22px;color:#edc971}
.ba-spark-one{left:1%;top:12%;transform:rotate(12deg)}
.ba-spark-two{right:1%;bottom:10%;font-size:20px;color:#bcf57c}
.ba-match-call{font-size:10px;font-weight:900;color:#c7a9d7;line-height:1.35;padding:9px 4px;background:#311843;border-radius:7px;min-height:33px}
.ba-match-call.is-match{background:#d7f48d;color:#405e20;box-shadow:0 2px 0 #6d853e}
.ba-call-clock{margin:18px 0 16px}
.ba-call-clock>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;gap:5px}
.ba-call-clock span{font-size:8px;font-weight:900;letter-spacing:.06em;color:#d2b3e3}
.ba-call-clock strong{font-size:13px;font-weight:900;color:#e8fcb4;font-variant-numeric:tabular-nums}
.ba-time-track{height:7px;border-radius:20px;background:#67457b;overflow:hidden}
.ba-time-track i{display:block;height:100%;background:linear-gradient(90deg,#c593f0,#d6ff7d);border-radius:20px;transition:width .1s linear}
.ba-recent-label{font-size:8px;font-weight:900;letter-spacing:.08em;color:#bba0cd;margin-bottom:9px}
.ba-recent{display:flex;justify-content:center;gap:5px;min-height:36px}
.ba-recent>span{background:#62427b;border:1px solid #9c70af;border-radius:50%;width:34px;height:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f0e3f9;flex:none}
.ba-recent>span.on-card{border:2px solid #e2f8a4;background:#54653e;color:#f0ffcc}
.ba-recent>span.is-empty{background:#30153f;border:1px dashed #9b72ae;color:#ae8fbd}
.ba-recent small{font-size:7px;line-height:1;font-weight:900}
.ba-recent strong{font-size:16px;line-height:1.1;font-family:'Baloo 2',sans-serif}
.ba-call-total{font-size:9px;font-weight:800;color:#c3a3d7;margin:10px 0 15px}
.ba-pattern-guide{border-top:1px solid #9f73b949;padding:15px 0 5px}
.ba-pattern-guide>strong{font-size:8px;font-weight:900;letter-spacing:.08em;color:#cdb0df;display:block}
.ba-pattern-example{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;width:78px;margin:12px auto 9px}
.ba-pattern-example i{aspect-ratio:1;display:grid;place-items:center;border:1px solid #876598;background:#55356b;border-radius:2px;font-size:9px;font-style:normal;color:#e1eec7}
.ba-pattern-example i.active{background:#d2f38f;border-color:#e4f9bf;color:#465f27}
.ba-pattern-guide p{font-size:10px;line-height:1.5;color:#decaeb;margin:7px 0 4px}
.ba-sound-control{border-top:1px solid #9f73b949;margin-top:9px;padding-top:3px}
.ba-room{min-width:0}
.ba-room-heading{padding:8px 0 14px}
.ba-kicker{font-size:9px;font-weight:900;letter-spacing:.12em;color:#dcb7f2}
.ba-room-heading h3{font-family:'Baloo 2',sans-serif;font-size:26px;line-height:1.1;letter-spacing:-.025em;margin:4px 0 5px;color:#fff5ff}
.ba-room-heading p{font-size:10px;line-height:1.5;margin:0;color:#c8acd9}
.ba-rivals{display:grid;gap:10px}
.ba-rival{border:1px solid #7c548e;border-radius:13px;background:linear-gradient(125deg,#4c2a63,#351c4a);padding:11px;min-width:0;transition:border-color .2s,box-shadow .2s}
.ba-rival.one-away{border-color:var(--rival);box-shadow:0 0 13px color-mix(in srgb,var(--rival) 15%,transparent)}
.ba-rival.is-winner{border:2px solid #d2f58a;background:#435332}
.ba-rival-top{display:flex;align-items:center;gap:8px}
.ba-avatar{display:flex;align-items:center;justify-content:center;gap:3px;position:relative;flex:none;width:33px;height:32px;border-radius:13px 13px 11px 11px;background:var(--rival);box-shadow:inset -3px -3px 0 #00000020;transform:rotate(-3deg)}
.ba-avatar:before,.ba-avatar:after{content:'';position:absolute;width:7px;height:10px;background:#ffe198;top:-4px;clip-path:polygon(50% 0,100% 100%,0 100%);z-index:-1}
.ba-avatar:before{left:3px;transform:rotate(-25deg)}
.ba-avatar:after{right:3px;transform:rotate(25deg)}
.ba-avatar>i{display:block;position:relative;width:10px;height:11px;border-radius:50%;background:#fff;top:-2px}
.ba-avatar>i:after{content:'';position:absolute;width:5px;height:6px;border-radius:50%;background:#321744;bottom:2px;right:1px}
.ba-avatar>b{position:absolute;bottom:5px;left:12px;width:10px;height:5px;border-radius:0 0 9px 9px;background:#51264c}
.ba-monster-2{border-radius:11px 11px 14px 14px;transform:rotate(3deg)}
.ba-monster-3>i:first-child{width:17px;height:17px;top:-1px}
.ba-monster-3>i:first-child:after{width:7px;height:9px;right:4px}
.ba-monster-3>i:nth-child(2){display:none}
.ba-rival-top>div{flex:1;min-width:0}
.ba-rival-top strong{display:block;font-size:12px;font-weight:1000;color:#fff2ff;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.ba-rival-top>div>span{display:block;font-size:9px;font-weight:900;color:var(--rival);margin-top:2px;line-height:1.2}
.ba-rival-top>b{font-size:11px;align-self:flex-start;color:#eddff5;margin-top:1px}
.ba-rival-top>b small{display:block;font-size:7px;color:#bfa0cf;text-align:right}
.ba-mini-card{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;max-width:119px;margin:9px auto 7px}
.ba-mini-card i{height:10px;display:grid;place-items:center;border-radius:2px;border:1px solid #9c7eac45;background:#271238;color:#3e2946;font-size:7px;font-weight:900;font-style:normal}
.ba-mini-card i.is-target{border-color:#b296bc}
.ba-mini-card i.is-marked{background:var(--rival);border-color:var(--rival);box-shadow:0 0 4px color-mix(in srgb,var(--rival) 22%,transparent)}
.ba-rival-bottom{display:flex;justify-content:space-between;gap:5px;font-size:8px;color:#c3a7d1;line-height:1.2}
.ba-rival-bottom>span:last-child{color:var(--rival)}
.ba-rival-meter{height:6px;background:#261336;border-radius:5px;overflow:hidden;margin:12px 0 10px}
.ba-rival-meter i{display:block;height:100%;background:var(--rival);transition:width .3s;border-radius:5px}
.ba-room-more,.ba-empty-room{font-size:11px;color:#cfb3df;line-height:1.6}
.ba-message{margin:0 24px 21px;padding:13px 16px;border:1px solid #8f66a5;border-radius:11px;background:#46245e;color:#f2dcff;font-size:13px;text-align:center;line-height:1.5;min-height:47px}
.ba-finish-ribbon{position:absolute;left:-9px;right:-9px;top:43%;padding:14px 9px;z-index:6;background:#5c307beF;border:2px solid #c493e1;box-shadow:0 6px 15px #200d2e80;transform:rotate(-5deg);text-align:center;font-family:'Baloo 2',sans-serif;font-size:24px;font-weight:800;color:#fff}
.ba-finish-ribbon.is-win{background:#d9fa8a;border-color:#f2ffd6;color:#466025}
.ba-result{position:relative;display:flex;align-items:center;gap:21px;background:#443058;border:1px solid #b18bc6;margin:0 24px 22px;padding:25px;border-radius:16px;overflow:hidden}
.ba-result.is-win{background:linear-gradient(110deg,#546934,#334f39);border-color:#b9d685}
.ba-result>div:not(.ba-confetti){flex:1;position:relative}
.ba-result-star{font-size:54px;color:#e4ff9d;line-height:1;z-index:1}
.ba-result h2{font-family:'Baloo 2',sans-serif;font-size:31px;line-height:1.1;margin:8px 0;color:#fffce8}
.ba-result p{font-size:11px;color:#e0e8d4;margin:6px 0;line-height:1.5}
.ba-result .ba-kicker{color:#e4f8bf}
.ba-result .ba-start{position:relative;z-index:1;font-size:13px!important}
.ba-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.ba-confetti>i{position:absolute;top:-15px;left:calc(var(--n)*5.5%);width:7px;height:12px;background:var(--confetti);animation:ba-confetti 2.5s ease-out forwards;animation-delay:calc(var(--n)*.04s);transform:rotate(calc(var(--n)*20deg))}
.ba-history{border-top:1px solid #805c9480;padding:17px 24px;background:#1d0d30}
.ba-history summary{cursor:pointer;font-size:12px;font-weight:900;color:#d7bde8}
.ba-history summary>span{font-size:10px;color:#aa8abd;margin-left:8px;font-weight:800}
.ba-history>div{display:grid;grid-template-columns:repeat(15,minmax(0,1fr));gap:5px;margin-top:16px}
.ba-history>div>span{display:grid;place-items:center;padding:7px 2px;background:#402650;color:#967dab;border:1px solid transparent;border-radius:5px;font-size:11px}
.ba-history>div>span.called{background:#8256a1;color:#fff5ff}
.ba-history>div>span.on-card{border-color:#c2d494}
.ba-no-card{min-height:300px;padding:35px 15px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.ba-no-card strong{font-family:'Baloo 2',sans-serif;font-size:28px}
.ba-no-card p{font-size:14px;color:#81618f}
.ba-live-note{padding:15px 24px;font-size:12px;line-height:1.5;color:#d7c0e6;background:#351b48;border-bottom:1px solid #9672ad50}
/* Page identity is server-rendered, so the new game remains recognizable while scripts load. */
.pm-bingo-intro{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0 23px}
.pm-bingo-intro>div{min-width:0}
.pm-bingo-intro .demo-eyebrow{display:block;font-size:10px;letter-spacing:.13em;color:#d2b0f2;font-weight:900;margin-bottom:7px}
.pm-bingo-intro h1{font-family:'Baloo 2',sans-serif;font-size:clamp(34px,4.2vw,53px);line-height:1.03;margin:0;color:#fff5ff;letter-spacing:-.025em;font-weight:800}
.pm-bingo-intro h1 em{font-style:normal;color:#cfff57}
.pm-bingo-intro p{font-size:14px;line-height:1.5;color:#c9b4e1;margin:10px 0 0}
.pm-bingo-intro .pm-bingo-free{border:1px solid #a685c561;background:#5128806b;border-radius:12px;padding:13px 17px;text-align:center;flex:none}
.pm-bingo-free strong{display:block;color:#d3fa84;font-size:11px;font-weight:900;letter-spacing:.08em}
.pm-bingo-free span{display:block;color:#d4bde6;font-size:10px;line-height:1.5;margin-top:5px}
.pm-bingo-instructions{display:flex;justify-content:center;gap:30px;margin:20px 0 26px;color:#c8b3dd;font-size:12px;flex-wrap:wrap}
.pm-bingo-instructions span{display:flex;gap:8px;align-items:center}
.pm-bingo-instructions b{display:grid;place-items:center;background:#77539c;border:1px solid #aa83ca;border-radius:50%;width:23px;height:23px;color:#f0dfff;font-size:10px}
.pm-bingo-instructions strong{color:#e5d6f3;font-weight:800}
@keyframes ba-ball-drop{from{transform:translateY(-27px) scale(.78) rotate(-17deg);opacity:.4}65%{transform:translateY(3px) scale(1.05) rotate(3deg)}to{transform:none;opacity:1}}
@keyframes ba-match{from{box-shadow:0 0 0 1px #bdd76f,0 3px 0 #849947}to{box-shadow:0 0 0 3px #d8ec9c,0 3px 0 #849947}}
@keyframes ba-ready{from{box-shadow:0 5px 0 #819b37}to{box-shadow:0 5px 0 #819b37,0 0 24px #d3fc78}}
@keyframes ba-stamp{0%{transform:scale(1.16) rotate(-8deg)}50%{transform:scale(.91) rotate(3deg)}100%{transform:none}}
@keyframes ba-score-pop{0%{transform:translateY(6px) scale(.8);opacity:.3}40%{transform:translateY(-3px) scale(1.12)}100%{transform:none;opacity:1}}
@keyframes ba-spark-out{from{transform:scale(.5) translateY(5px);opacity:1}to{transform:scale(1.3) translateY(-16px);opacity:0}}
@keyframes ba-shake{0%,100%{transform:none}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@keyframes ba-count{from{transform:scale(1.25);opacity:.5}to{transform:scale(1);opacity:1}}
@keyframes ba-on-air{50%{box-shadow:0 0 0 5px #cffb5710}}
@keyframes ba-confetti{to{transform:translateY(250px) rotate(490deg);opacity:0}}
@container bingo (max-width:1150px){.ba-stage{grid-template-columns:minmax(156px,.7fr) minmax(300px,1.5fr) minmax(156px,.7fr);gap:14px;padding:0 18px 20px}.ba-round-controls{padding:18px;gap:12px}.ba-round-intro strong{font-size:19px}.ba-round-intro>span{font-size:11px}.ba-redeal{width:100%;text-align:right;min-height:20px;margin-top:-5px}.ba-options select{font-size:10px;max-width:133px}.ba-scoreboard{padding:15px 18px}.ba-caller{padding:14px 9px 7px}.ba-ball{width:147px;height:147px}.ba-ball-stage{min-height:176px}.ba-ball:before{inset:17px}.ba-ball>strong{font-size:59px}.ba-ball>span{font-size:24px}.ba-orbit{width:170px;height:165px}.ba-spark{font-size:18px}.ba-recent{gap:3px}.ba-recent>span{width:29px;height:29px}.ba-recent strong{font-size:14px}.ba-room-heading h3{font-size:23px}.ba-rival{padding:10px 8px}.ba-rival-top{gap:6px}.ba-avatar{width:29px;height:29px}.ba-rival-top strong{font-size:11px}.ba-rival-top>b{font-size:10px}.ba-rival-top>div>span{font-size:8px}.ba-mini-card{max-width:108px}.ba-mini-card i{height:9px}.ba-ticket{padding:14px}.ba-ticket-heading>strong{font-size:9px}.ba-scoreboard strong{font-size:31px}.ba-scoreboard .ba-goal-score strong{font-size:25px}.ba-scoreboard small{font-size:8px}}
@container bingo (max-width:890px){.ba-stage{grid-template-columns:minmax(170px,.7fr) minmax(300px,1.3fr);gap:18px}.ba-room{grid-column:1/-1}.ba-room-heading{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:0 0 11px}.ba-room-heading .ba-kicker{display:none}.ba-room-heading h3{margin:0;font-size:25px}.ba-room-heading p{font-size:11px}.ba-rivals{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ba-rival{padding:12px 10px}.ba-mini-card{max-width:100px}.ba-mini-card i{height:9px}.ba-rival-top strong{font-size:12px}.ba-rival-top>div>span{font-size:9px}.ba-rival-top>b{font-size:11px}.ba-avatar{width:31px;height:31px}.ba-caller{padding:18px 13px 10px}.ba-ball{width:168px;height:168px}.ba-ball-stage{min-height:207px}.ba-ball:before{inset:21px}.ba-ball>strong{font-size:68px}.ba-ball>span{font-size:29px}.ba-orbit{width:198px;height:190px}.ba-recent{gap:5px}.ba-recent>span{width:33px;height:33px}.ba-recent strong{font-size:16px}.ba-round-intro{flex-basis:100%}.ba-redeal{flex:1;width:auto;min-height:36px;margin:0}.ba-scoreboard>div{display:block;padding:0 14px}.ba-scoreboard span,.ba-scoreboard small{display:block}.ba-scoreboard small{margin-top:2px}.ba-scoreboard strong{font-size:33px}.ba-scoreboard .ba-goal-score strong{font-size:28px}.ba-scoreboard>div:last-child{padding-right:0}.ba-result{flex-wrap:wrap}.ba-result .ba-start{margin-left:auto}}
@container bingo (max-width:620px){.ba-machine{border-radius:18px;margin-bottom:22px}.ba-marquee{padding:18px 13px 15px;gap:9px}.ba-marquee strong{font-size:29px}.ba-marquee>span{font-size:8px;letter-spacing:.04em}.ba-marquee .ba-round-number{display:none}.ba-free-label{padding:5px 6px;font-size:7px!important}.ba-round-controls{padding:15px 13px;gap:12px}.ba-round-intro strong{font-size:21px}.ba-round-intro>span{font-size:11px}.ba-options{flex:1;gap:8px}.ba-options label{flex:1;font-size:7px}.ba-options select{width:100%;max-width:none;padding:7px 19px 7px 7px;font-size:11px;min-height:37px}.ba-start{font-size:14px!important;min-height:45px;padding:10px 13px}.ba-round-controls>.ba-start{min-width:125px;align-self:flex-end}.ba-redeal{width:100%;flex-basis:100%;min-height:22px;padding:2px;text-align:center;font-size:10px!important}.ba-round-controls.is-playing .ba-options{display:none}.ba-round-controls.is-playing .ba-round-intro{flex:1;min-width:0}.ba-round-controls.is-playing .ba-round-intro strong{font-size:16px}.ba-round-controls.is-playing .ba-round-intro>span{font-size:10px}.ba-round-controls.is-playing>.ba-start{min-width:105px;align-self:center}.ba-round-controls.is-playing .ba-redeal{display:none}.ba-scoreboard{padding:15px 13px;gap:4px}.ba-scoreboard>div{padding:0 8px}.ba-scoreboard span{font-size:7px;letter-spacing:.04em}.ba-scoreboard strong{font-size:27px;margin-top:2px}.ba-scoreboard .ba-goal-score strong{font-size:24px}.ba-scoreboard small{font-size:7px;line-height:1.3}.ba-stage{display:flex;flex-direction:column;gap:17px;padding:0 13px 19px}.ba-caller{width:100%;display:grid;grid-template-columns:102px 1fr;gap:7px 15px;text-align:left;padding:12px 13px;border-radius:13px}.ba-caller-title{grid-column:1/-1;justify-content:flex-start;font-size:9px}.ba-ball-stage{grid-column:1;grid-row:2/6;min-height:107px;margin:0}.ba-ball{width:98px;height:98px;border-width:2px}.ba-ball:before{inset:11px;border-width:1px}.ba-ball>span{font-size:19px;margin-top:1px}.ba-ball>strong{font-size:42px}.ba-orbit{width:110px;height:107px}.ba-spark{display:none}.ba-match-call{grid-column:2;font-size:9px;padding:5px 7px;min-height:26px;text-align:center}.ba-call-clock{grid-column:2;margin:2px 0}.ba-call-clock>div:first-child{margin-bottom:4px}.ba-call-clock span{font-size:7px}.ba-call-clock strong{font-size:11px}.ba-time-track{height:5px}.ba-recent-label{display:none}.ba-recent{grid-column:2;justify-content:flex-start;gap:5px;min-height:29px}.ba-recent>span{width:28px;height:28px}.ba-recent strong{font-size:14px}.ba-recent small{font-size:6px}.ba-call-total{grid-column:2;font-size:8px;margin:0}.ba-pattern-guide{display:none}.ba-sound-control{grid-column:1/-1;border-top:0;margin:0;padding:0;justify-self:end;position:relative}.ba-sound-control .ba-text-button{font-size:9px!important;min-height:25px;padding:2px 0}.ba-ticket{width:100%;padding:15px;border-width:2px;border-radius:16px}.ba-ticket-heading>span{font-size:10px}.ba-ticket-heading>strong{font-size:10px}.ba-cell{font-size:clamp(27px,7.5vw,43px)!important;border-radius:10px}.ba-letters span{font-size:28px}.ba-cell.is-free>span{font-size:28px}.ba-cell.is-free small{font-size:9px}.ba-card-hint{font-size:10px;margin:14px 0 12px}.ba-claim{min-height:75px;font-size:37px!important}.ba-claim small{font-size:9px}.ba-ink{margin-top:18px}.ba-card-overlay>strong{font-size:68px}.ba-room{width:100%}.ba-room-heading{gap:5px;display:block}.ba-room-heading h3{font-size:27px;margin-bottom:3px}.ba-room-heading p{font-size:10px}.ba-rivals{gap:7px}.ba-rival{padding:10px 7px}.ba-rival-top{justify-content:center;flex-wrap:wrap;gap:6px;text-align:center}.ba-rival-top>.ba-avatar{width:29px;height:29px}.ba-rival-top>div{flex-basis:100%;order:2}.ba-rival-top strong{font-size:11px}.ba-rival-top>div>span{font-size:8px}.ba-rival-top>b{font-size:9px;align-self:center;margin:0}.ba-rival-top>b small{font-size:6px}.ba-mini-card{max-width:85px;gap:2px;margin:8px auto}.ba-mini-card i{height:8px;font-size:6px}.ba-rival-bottom{justify-content:center;font-size:7px}.ba-rival-bottom>span:last-child{display:none}.ba-message{margin:0 13px 18px;padding:11px 12px;font-size:12px;line-height:1.5;min-height:45px}.ba-result{margin:0 13px 18px;padding:18px;gap:12px}.ba-result-star{font-size:39px}.ba-result h2{font-size:26px}.ba-result p{font-size:10px}.ba-result .ba-kicker{font-size:8px}.ba-result .ba-start{width:100%}.ba-history{padding:15px 13px}.ba-history summary{font-size:11px}.ba-history>div{grid-template-columns:repeat(10,minmax(0,1fr));gap:4px}.ba-history>div>span{font-size:10px;padding:6px 0}.ba-finish-ribbon{font-size:22px}.pm-bingo-intro{padding:20px 0 18px;gap:12px}.pm-bingo-intro h1{font-size:35px}.pm-bingo-intro p{font-size:12px;margin-top:8px}.pm-bingo-intro .demo-eyebrow{font-size:8px}.pm-bingo-intro .pm-bingo-free{display:none}.pm-bingo-instructions{justify-content:flex-start;gap:9px 18px;font-size:10px;margin:15px 0 23px}.pm-bingo-instructions b{width:20px;height:20px;font-size:9px}.ba-live-note{padding:13px;font-size:11px}}
@container bingo (max-width:370px){.ba-marquee strong{font-size:25px}.ba-round-controls>.ba-start{width:100%}.ba-round-controls.is-playing>.ba-start{width:auto}.ba-scoreboard span{font-size:6px}.ba-scoreboard strong{font-size:24px}.ba-scoreboard .ba-goal-score strong{font-size:21px}.ba-scoreboard small{font-size:6px}.ba-caller{grid-template-columns:86px 1fr;gap:6px 10px;padding:11px}.ba-ball{width:85px;height:85px}.ba-ball-stage{min-height:93px}.ba-ball:before{inset:9px}.ba-ball>span{font-size:16px}.ba-ball>strong{font-size:36px}.ba-orbit{width:96px;height:94px}.ba-recent{gap:3px}.ba-recent>span{width:25px;height:25px}.ba-recent strong{font-size:12px}.ba-match-call{font-size:8px}.ba-ticket{padding:12px}.ba-card,.ba-letters{gap:5px}.ba-cell{font-size:28px!important}.ba-ticket-heading>strong{font-size:9px}.ba-ink>span{font-size:7px}.ba-ink{gap:7px}.ba-rival{padding:9px 5px}.ba-rival-top strong{font-size:10px}.ba-rival-top>div>span{font-size:7px}.ba-card-overlay>strong{font-size:54px}}
@media(prefers-reduced-motion:reduce){.ba-machine *,.ba-machine *:before,.ba-machine *:after{animation:none!important;transition:none!important}.ba-stamp-sparks,.ba-confetti{display:none}}

@media(max-width:620px){.pm-bingo-intro{padding:20px 0 18px;gap:12px}.pm-bingo-intro h1{font-size:35px}.pm-bingo-intro p{font-size:12px}.pm-bingo-intro .pm-bingo-free{display:none}.pm-bingo-instructions{justify-content:flex-start;gap:9px 18px;font-size:10px;margin:15px 0 23px}}
