.bingo-game{max-width:1120px;margin:0 auto;padding:12px 14px 30px;color:#264c43;font-family:inherit;font-size:18px;line-height:1.45}
.bingo-game *{box-sizing:border-box}
.bingo-game h2,.bingo-game h3,.bingo-game p{margin-top:0}
.bingo-game h2{font-size:30px;margin-bottom:12px;line-height:1.2}
.bingo-game h3{font-size:25px;margin-bottom:12px;line-height:1.2}
.bingo-game button,.bingo-game input,.bingo-game select{font:inherit;-webkit-tap-highlight-color:transparent}
.bingo-eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:2px;color:#697c70;margin-bottom:9px}
.bingo-intro{text-align:center;padding:12px 8px 22px}
.bingo-intro p{color:#5b7168;margin-bottom:0}
.bingo-choices{display:flex;align-items:stretch;justify-content:center}
.bingo-choice+.bingo-choice{margin-left:24px}
.bingo-choice{flex:1;max-width:460px;padding:26px;background:#fffdf7;border:1px solid #e5e0d5;border-radius:26px;box-shadow:0 7px 0 rgba(83,99,80,.05)}
.bingo-choice-solo{background:#eef5eb}
.bingo-choice-art{display:flex;align-items:center;justify-content:center;width:72px;height:72px;background:#d5e7cb;border-radius:26px;color:#598065;font-size:48px;margin-bottom:18px;transform:rotate(-5deg)}
.bingo-choice-art-family{background:#e9def2;color:#8871a0;transform:rotate(5deg)}
.bingo-choice p{color:#65776a;font-size:17px}
.bingo-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 18px;border:1px solid #c8d6c9;border-radius:16px;background:#edf3e8;color:#245b49;font-weight:700;cursor:pointer;touch-action:manipulation;line-height:1.25;text-align:center}
.bingo-button:hover{background:#e0ecda}
.bingo-button:active{transform:translateY(1px)}
.bingo-button:focus-visible,.bingo-cell:focus-visible,.bingo-input:focus-visible{outline:3px solid #d28759;outline-offset:3px}
.bingo-button:disabled{cursor:default;opacity:.55;transform:none}
.bingo-primary{background:#245b49;color:#fffdf4;border-color:#245b49;box-shadow:0 3px 0 #184536}
.bingo-primary:hover{background:#316d58}
.bingo-subtle{background:transparent;box-shadow:none}
.bingo-choice>.bingo-button{display:flex;width:100%;margin-top:12px}
.bingo-label{display:block;font-size:15px;font-weight:700;margin-bottom:7px}
.bingo-input{display:block;width:100%;min-height:48px;border:1px solid #b8c7ba;background:#fffefa;border-radius:12px;padding:10px 12px;color:#244c41;font-size:18px}
.bingo-join{border-top:1px solid #e6e5db;margin-top:23px;padding-top:18px}
.bingo-join-row{display:flex;align-items:stretch}
.bingo-join-row>.bingo-button{margin-left:8px}
.bingo-code-input{min-width:0;letter-spacing:3px;text-transform:uppercase}
.bingo-name-input{margin-bottom:12px}
.bingo-room-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.bingo-room-heading>.bingo-button{margin-left:16px}
.bingo-room-heading h2{margin-bottom:0}
.bingo-room-code{letter-spacing:4px;color:#76648c}
.bingo-lobby{max-width:720px;margin:0 auto;padding:26px;text-align:center;background:#fffdf7;border:1px solid #e5dfd3;border-radius:28px}
.bingo-lobby-flower{display:inline-block;font-size:68px;color:#bd93b1;line-height:1;margin-bottom:20px}
.bingo-roster{display:flex;flex-wrap:wrap;list-style:none;justify-content:center;padding:0;margin:14px 0}
.bingo-roster li{padding:8px 13px;margin:4px;background:#eee9f3;border-radius:13px;font-size:16px;color:#655b75}
.bingo-roster .bingo-person-you{background:#e0eddd;color:#315b44}
.bingo-roster small{display:block;font-size:11px;color:#65736a}
.bingo-note{font-size:15px;color:#707d73;margin:18px 0}
.bingo-waiting{background:#f1eaf6;border-radius:14px;padding:15px;color:#756087}
.bingo-play-layout{display:flex;align-items:flex-start;justify-content:center}
.bingo-caller{flex:0 0 285px;padding:22px 16px;background:#f3edf7;border:1px solid #e7deec;border-radius:28px;text-align:center}
.bingo-current-ball{display:flex;flex-direction:column;align-items:center;justify-content:center;width:154px;height:154px;border-radius:50%;margin:0 auto 12px;background:#fffdf7;border:11px solid #cbb8dd;box-shadow:inset 0 -7px 0 #f0ede6,0 5px 0 #e6dceb;color:#5e4d70}
.bingo-current-ball>span{font-size:19px;font-weight:800;line-height:1.15}
.bingo-current-ball>strong{font-size:61px;font-weight:800;line-height:1.1}
.bingo-ball-caption{font-size:15px;color:#71637d;margin-bottom:14px}
.bingo-recent{display:flex;flex-wrap:wrap;justify-content:center;min-height:48px;margin-bottom:10px}
.bingo-recent>span{display:flex;flex-direction:column;align-items:center;justify-content:center;width:34px;height:43px;margin:0 3px 6px;background:#fffdfa;border:1px solid #ded4e6;border-radius:11px;font-size:17px;font-weight:700;line-height:1.15}
.bingo-recent small{font-size:9px;font-weight:700;color:#877793}
.bingo-solo-controls{display:flex;flex-direction:column;margin:12px 0 18px}
.bingo-solo-controls>.bingo-button+.bingo-button{margin-top:8px}
.bingo-caller>.bingo-button{width:100%;font-size:15px;margin-top:8px}
.bingo-speed{font-size:15px;padding:10px 7px;background:#fffdfa}
.bingo-countdown{font-size:14px;min-height:38px;margin:12px 0 0;color:#73677b}
.bingo-board-area{flex:1;max-width:540px;min-width:0;margin-left:34px}
.bingo-card-instruction{font-size:15px;text-align:center;color:#667d6b;margin-bottom:12px}
.bingo-card{padding:14px;border:1px solid #cedecb;border-radius:25px;background:#e8efdc;box-shadow:0 5px 0 rgba(73,101,69,.08)}
.bingo-card-head,.bingo-card-row{display:flex;margin-bottom:8px}
.bingo-card-row:last-child{margin-bottom:0}
.bingo-card-head>span{flex:1;min-width:0;margin-right:8px;text-align:center;font-weight:800;font-size:24px;color:#56734f;padding-bottom:3px}
.bingo-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-width:0;height:71px;margin-right:8px;background:#fffdf5;color:#31523e;border:1px solid #d5dfc9;border-bottom-width:3px;border-radius:13px;font-size:29px;font-weight:800;cursor:pointer;touch-action:manipulation;padding:0;line-height:1.1}
.bingo-card-head>span:last-child,.bingo-cell:last-child{margin-right:0}
.bingo-cell>i{display:none;position:absolute;bottom:3px;right:5px;font-size:13px;font-style:normal;color:#fff8ea}
.bingo-cell.bingo-marked{background:#759574;border-color:#648461;color:#fffef5;box-shadow:inset 0 2px 0 rgba(255,255,255,.12)}
.bingo-cell.bingo-marked>i{display:block}
.bingo-cell.bingo-free{background:#d9b69c;color:#fffdf3;border-color:#c59f80;cursor:default}
.bingo-free>span{font-size:33px;line-height:1.05}
.bingo-free small{font-size:9px;letter-spacing:1px;margin-top:3px}
.bingo-claim{display:flex;width:100%;margin-top:18px;min-height:56px;background:#e98768;border-color:#d77b5f;color:#fffdf5;box-shadow:0 4px 0 #cb7459;font-size:22px;font-weight:800}
.bingo-claim:hover{background:#dc7c5e}
.bingo-board-area>.bingo-primary{display:flex;width:100%;margin-top:18px}
.bingo-history{display:flex;flex-wrap:wrap;justify-content:center;margin:24px auto 0;padding:17px;max-width:850px;background:#fffdf6;border:1px solid #e2e1d4;border-radius:20px}
.bingo-history>span{display:flex;align-items:center;justify-content:center;width:37px;height:37px;margin:3px;color:#9c9d91;border:1px solid #e8e7dd;border-radius:50%;font-size:16px}
.bingo-history>.bingo-number-called{background:#dbe9d5;color:#315b40;border-color:#bfd3b7;font-weight:800}
.bingo-room-footer{display:flex;align-items:center;justify-content:space-between;margin-top:18px}
.bingo-room-footer .bingo-roster{justify-content:flex-start}
.bingo-error{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;margin-bottom:16px;border:1px solid #e2b7a8;background:#fff1e9;color:#884a35;border-radius:14px;font-size:16px}
.bingo-error .bingo-button{flex-shrink:0;margin-left:10px}
.bingo-winner{margin-bottom:18px;padding:17px 20px;border-radius:16px;background:#f8e4ba;color:#725a2f;text-align:center;font-weight:700}
.bingo-loading{padding:45px 20px;text-align:center;background:#f6f2e9;border-radius:28px}
.bingo-copy-helper{position:absolute;left:-9999px;width:1px;height:1px}
@media(max-width:850px){.bingo-game{padding:8px 8px 24px}.bingo-board-area{margin-left:20px}.bingo-caller{flex-basis:235px;padding:17px 12px}.bingo-cell{height:62px;font-size:26px}.bingo-card{padding:11px}.bingo-choice+.bingo-choice{margin-left:16px}.bingo-choice{padding:22px}.bingo-game h2{font-size:27px}.bingo-current-ball{width:135px;height:135px}}
@media(max-width:620px){.bingo-choices{display:block}.bingo-choice{max-width:none;margin-bottom:18px}.bingo-choice+.bingo-choice{margin-left:0}.bingo-room-heading{align-items:flex-start}.bingo-room-heading h2{font-size:22px}.bingo-room-heading .bingo-button{font-size:14px;padding:10px 12px;min-height:42px}.bingo-play-layout{display:block}.bingo-caller{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;padding:14px;margin-bottom:18px}.bingo-current-ball{width:90px;height:90px;border-width:7px;margin:0 10px 0 0}.bingo-current-ball>strong{font-size:38px}.bingo-current-ball>span{font-size:14px}.bingo-ball-caption{width:calc(100% - 110px);margin:0;text-align:left}.bingo-recent{width:100%;margin:8px 0 0;min-height:0}.bingo-solo-controls{flex-direction:row;flex:0 0 100%;margin:10px 0}.bingo-solo-controls>.bingo-button{flex:1;font-size:16px}.bingo-solo-controls>.bingo-button+.bingo-button{margin-top:0;margin-left:8px}.bingo-caller>.bingo-label{width:40%;margin:0;font-size:14px}.bingo-caller>.bingo-speed{width:57%;min-height:42px}.bingo-countdown{width:100%;margin:6px 0 0;min-height:22px}.bingo-caller>.bingo-button{width:auto;min-height:38px;padding:8px 12px;font-size:14px;margin:0}.bingo-board-area{max-width:none;margin-left:0}.bingo-card-instruction{font-size:14px}.bingo-card{padding:10px}.bingo-cell{height:58px;font-size:27px}.bingo-room-footer{display:block}.bingo-room-footer>.bingo-button{width:100%}.bingo-error{display:block}.bingo-error .bingo-button{margin-top:10px;margin-left:0}.bingo-lobby{padding:22px 17px}}
@media(prefers-reduced-motion:reduce){.bingo-button:active{transform:none}}
.bingo-campaign-entry{display:flex;align-items:center;justify-content:space-between;background:#f6ecf8;border:1px solid #d9c6e1;border-radius:20px;padding:17px 23px;margin-bottom:18px}
.bingo-campaign-entry h3{font-size:22px;margin-bottom:5px;color:#513a65}.bingo-campaign-entry p{font-size:14px;margin-bottom:0;color:#705d7f}.bingo-campaign-entry .bingo-eyebrow{font-size:10px;margin-bottom:5px}.bingo-campaign-entry>.bingo-button{margin-left:20px;min-width:205px}
.bingo-world-tabs{display:flex;margin:0 0 12px}.bingo-world-tab{flex:1;min-height:55px;margin-right:10px;padding:8px;border:1px solid #d2c7db;border-radius:14px;background:#faf5fb;color:#685576;cursor:pointer;font-weight:700}.bingo-world-tab:last-child{margin-right:0}.bingo-world-tab small{display:block;font-size:11px;font-weight:500;margin-top:2px}.bingo-world-selected{background:#725786;color:#fffaf5;border-color:#725786;box-shadow:0 3px 0 #523d65}
.bingo-map{background:#fffbf4;border:1px solid #e3d3c3;padding:13px 20px 16px;border-radius:23px}.bingo-map-intro{display:flex;align-items:center;margin-bottom:8px}.bingo-map-intro>img{width:95px;height:70px;object-fit:contain;margin-right:14px}.bingo-map-intro h3{font-size:23px;margin-bottom:4px;color:#584267}.bingo-map-intro p{font-size:13px;margin-bottom:0;color:#736776}.bingo-stage-grid{display:flex;flex-wrap:wrap;margin:-5px}.bingo-stage{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;width:calc(20% - 10px);min-height:65px;margin:5px;border:1px solid #cfc1d7;border-bottom-width:3px;border-radius:14px;background:#f6edf8;color:#5b426d;cursor:pointer;touch-action:manipulation}.bingo-stage>strong{font-size:24px;line-height:1.1}.bingo-stage-stars{font-size:14px;letter-spacing:1px;margin-top:2px}.bingo-stage:disabled{background:#f2eee8;border-color:#ded8cf;color:#938a90;cursor:default}.bingo-stage:disabled .bingo-stage-stars{font-size:9px;letter-spacing:0}.bingo-stage-complete{background:#e9f0df;border-color:#aabe95;color:#455f3d}.bingo-stage-chest{border-color:#cfaa6e;background:#fff0ce}.bingo-stage>i{position:absolute;right:7px;top:5px;font-style:normal;color:#a77334;font-size:20px}.bingo-stage:focus-visible,.bingo-world-tab:focus-visible{outline:3px solid #c77c48;outline-offset:2px}.bingo-map-footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px}.bingo-map-footer>span{font-size:12px;color:#716873;max-width:60%}.bingo-map-footer>.bingo-button{font-size:14px;margin-left:15px;min-height:44px}
.bingo-chapter-label{display:flex;align-items:center;justify-content:space-between;flex-basis:100%;margin:9px 5px 2px;color:#705b7d;font-size:12px}.bingo-chapter-label span{font-size:9px;letter-spacing:.5px;color:#8a778f}.bingo-chapter-label:first-child{margin-top:0}
.bingo-goal{display:flex;align-items:center;justify-content:center;margin-bottom:9px;padding:8px 10px;background:#fffcf5;border:1px solid #e0d6c5;border-radius:14px;min-height:69px}.bingo-pattern{display:flex;flex-wrap:wrap;flex-shrink:0;width:50px;height:50px;margin-right:13px}.bingo-pattern>span{display:block;width:8px;height:8px;margin:1px;background:#e8e4dd;border-radius:2px}.bingo-pattern>.bingo-pattern-target{background:#ae8fc0}.bingo-pattern>.bingo-pattern-done{background:#4a7252}.bingo-goal-name{display:block;font-size:17px;font-weight:800;color:#5f4771}.bingo-goal-progress{display:block;font-size:13px;color:#4a6650;margin-top:1px}.bingo-goal small{display:block;font-size:10px;color:#7b6f7c;margin-top:2px}.bingo-star-rule{font-size:11px;text-align:center;color:#746775;margin:10px 0 0}
.bingo-boosters{display:flex;margin-top:10px}.bingo-boosters>.bingo-button{flex:1;min-width:0;padding:8px 5px;min-height:44px;font-size:12px;background:#fffaf5}.bingo-boosters>.bingo-button+.bingo-button{margin-left:6px}.bingo-boosters b{display:inline-block;margin-left:5px;background:#e8ddeb;color:#674f78;border-radius:7px;padding:1px 5px}.bingo-boosters>.bingo-boost-selected{border:2px solid #b17d36;background:#fff0cb;color:#78571d}.bingo-booster-note,.bingo-wild-instruction{font-size:10px;line-height:1.4;margin:7px 0 0;color:#7a6b7e}.bingo-wild-instruction{font-size:12px;color:#805c28;background:#fff1c9;padding:7px;border-radius:8px}.bingo-game .bingo-hinted{outline:3px solid #dcad4d;outline-offset:-4px;box-shadow:0 0 0 2px #fff2a1}.bingo-game .bingo-wild-cell.bingo-marked{background:#f2d28b;border-color:#c19a45;color:#6b5126}.bingo-wild-cell.bingo-marked>i{color:#7b5319}
@media(max-width:620px){.bingo-campaign-entry{display:block;padding:17px}.bingo-campaign-entry>.bingo-button{margin:13px 0 0;width:100%;min-width:0}.bingo-map{padding:12px}.bingo-map-intro>img{width:68px;height:60px;margin-right:8px}.bingo-map-intro h3{font-size:19px}.bingo-map-intro p{font-size:11px}.bingo-world-tab{font-size:14px;margin-right:6px}.bingo-world-tab small{font-size:9px}.bingo-stage{min-height:59px;margin:4px;width:calc(20% - 8px)}.bingo-stage>strong{font-size:20px}.bingo-stage-stars{font-size:10px}.bingo-stage>i{font-size:12px;right:4px;top:3px}.bingo-stage:disabled .bingo-stage-stars{font-size:7px}.bingo-map-footer{display:block}.bingo-map-footer>span{display:block;max-width:none}.bingo-map-footer>.bingo-button{margin:10px 0 0;width:100%}.bingo-boosters{width:100%;margin-top:8px}.bingo-booster-note,.bingo-wild-instruction{width:100%}.bingo-goal{justify-content:flex-start}.bingo-goal-name{font-size:16px}}
@media(min-width:621px) and (max-width:1180px) and (min-height:561px) and (max-height:820px){.bingo-game{padding-top:4px;padding-bottom:8px}.bingo-intro{padding:0 8px 8px}.bingo-intro h2{font-size:24px;line-height:1.08;margin-bottom:5px}.bingo-intro p{font-size:14px}.bingo-campaign-entry{padding:10px 16px;margin-bottom:10px}.bingo-choice{padding:14px}.bingo-choice-art{width:48px;height:48px;font-size:32px;margin-bottom:7px;border-radius:17px}.bingo-choice h3{font-size:20px;margin-bottom:6px}.bingo-choice p{font-size:14px;margin-bottom:7px}.bingo-choice>.bingo-button{margin-top:7px;min-height:44px}.bingo-label{font-size:13px;margin-bottom:4px}.bingo-name-input{margin-bottom:7px}.bingo-join{margin-top:10px;padding-top:9px}.bingo-input{min-height:44px;padding:7px 10px}.bingo-join-row>.bingo-button{min-height:44px;padding:7px 14px}.bingo-room-heading{margin-bottom:7px}.bingo-map-footer{margin-top:9px}}
