.menu-screen{width:100%;min-height:100vh;padding:clamp(14px,2.5vw,34px)}.menu-screen .menu-dashboard{display:flex;flex-direction:column;gap:22px;width:min(100%,1240px);margin:0 auto}.menu-screen .menu-top-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr);gap:20px}.menu-screen .menu-hero{display:grid;grid-template-columns:minmax(190px,.85fr) minmax(240px,1.15fr);align-items:center;gap:clamp(20px,3vw,38px);min-height:294px;padding:clamp(22px,3vw,36px);overflow:hidden;position:relative;border-radius:var(--radius-lg);background:radial-gradient(circle at 12% 10%,rgba(255,255,255,.25),transparent 15rem),linear-gradient(135deg,#0f766e,#0e7490 58%,#075985);box-shadow:0 24px 54px #0f4c5c33}.menu-screen .menu-hero:after{content:"";width:180px;height:180px;position:absolute;right:-54px;bottom:-92px;border:28px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}.menu-screen .game-banner{display:block;width:100%;max-width:330px;height:auto;margin:0 auto;border-radius:16px;filter:drop-shadow(0 16px 20px rgba(4,47,46,.24))}.menu-screen .menu-title{min-width:0;position:relative;z-index:1}.menu-screen .menu-title p{max-width:38ch;margin:14px 0 0;color:#ffffffd1;font-size:.98rem;line-height:1.6}.menu-screen .menu-eyebrow,.menu-screen .section-eyebrow{display:block;margin-bottom:8px;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.menu-screen .menu-eyebrow{max-width:100%;color:#fef3c7;overflow-wrap:anywhere}.menu-screen .section-eyebrow{color:#0f766e}.menu-screen h1{max-width:9ch;margin:0;color:#fff;font-size:clamp(2.2rem,4.3vw,4.4rem);line-height:.94;letter-spacing:-.045em}.menu-screen .button-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.menu-screen .menu-action{display:flex;flex-direction:column;align-items:flex-start;min-height:140px;padding:18px;margin:0;overflow:hidden;position:relative;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fffffff0;color:#11384f;box-shadow:0 16px 36px #0f172a14;text-align:left}.menu-screen .menu-action:after{content:"";width:70px;height:70px;position:absolute;right:-24px;bottom:-34px;border:12px solid rgba(14,116,144,.07);border-radius:50%}.menu-screen .menu-action:hover:not(:disabled){background:#fff;color:#11384f;transform:translateY(-3px);box-shadow:0 20px 42px #0f172a21}.menu-screen .primary-action{background:linear-gradient(145deg,#0f766e,#0d9488);color:#fff;border-color:transparent}.menu-screen .primary-action:hover:not(:disabled){background:linear-gradient(145deg,#115e59,#0f766e);color:#fff}.menu-screen .primary-action:after{border-color:#ffffff1f}.menu-screen .host-action{background:linear-gradient(145deg,#f97316,#fb923c);color:#fff;border-color:transparent}.menu-screen .host-action:hover:not(:disabled){background:linear-gradient(145deg,#ea580c,#f97316);color:#fff}.menu-screen .host-action:after{border-color:#ffffff24}.menu-screen .action-mark{display:inline-flex;min-height:27px;padding:5px 9px;border-radius:999px;background:#fff3;color:inherit;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.menu-screen .menu-action:not(.primary-action):not(.host-action) .action-mark{background:#e0f2fe;color:#075985}.menu-screen .action-label{display:block;margin-top:auto;padding-top:16px;font-size:1.08rem;font-weight:900}.menu-screen .action-detail{display:block;margin-top:3px;position:relative;z-index:1;color:#64748b;font-size:.76rem;line-height:1.35}.menu-screen .primary-action .action-detail,.menu-screen .host-action .action-detail{color:#ffffffc7}.menu-screen .message{display:flex;align-items:center;width:100%;padding:14px 42px 14px 16px;margin:0;position:relative;border-radius:14px;word-wrap:break-word}.menu-screen .message.success{background-color:#dcfce7;color:#14532d;border:1px solid #86efac}.menu-screen .message.info{background-color:#e0f2fe;color:#075985;border:1px solid #7dd3fc}.menu-screen .message.warning{background-color:#fef3c7;color:#7c2d12;border:1px solid #facc15}.menu-screen .message.error{background-color:#fee2e2;color:#7f1d1d;border:1px solid #fca5a5}.menu-screen .message .message-text{flex:1;text-align:left}.menu-screen .message .close-button{width:32px;height:32px;padding:0;margin:0;position:absolute;top:50%;right:8px;transform:translateY(-50%);background:transparent;border:none;color:inherit;box-shadow:none;font-size:18px}.menu-screen .menu-content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,390px);gap:22px;align-items:start}.menu-screen .menu-primary-column,.menu-screen .account-rail{display:flex;flex-direction:column;gap:22px;min-width:0}.menu-screen .menu-primary-column{align-items:stretch;padding:0}.menu-screen .account-rail{position:sticky;top:22px}.menu-screen .my-games-panel{width:100%;padding:clamp(18px,2.4vw,26px);border:1px solid rgba(14,116,144,.14);border-radius:var(--radius-lg);background:#ffffffeb;box-shadow:var(--shadow)}.menu-screen .my-games-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.menu-screen .my-games-header h2{margin:0;color:#11384f;font-size:1.5rem}.menu-screen .my-games-header p{max-width:34ch;margin:0;color:#64748b;font-size:.9rem;text-align:right}.menu-screen .my-games-empty{display:flex;flex-direction:column;gap:4px;min-height:112px;padding:24px;margin:0;justify-content:center;border:1px dashed #99c9c3;border-radius:14px;background:linear-gradient(135deg,#f0fdfa,#f8fafc);color:#64748b}.menu-screen .my-games-empty strong{color:#134e4a;font-size:1rem}.menu-screen .my-games-empty span{font-size:.9rem}.menu-screen .my-games-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.menu-screen .my-games-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border:1px solid rgba(15,23,42,.07);border-radius:14px;background:#f8fafc}.menu-screen .my-games-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.menu-screen .my-games-status{display:inline-flex;align-self:flex-start;padding:3px 8px;border-radius:999px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.menu-screen .my-games-status.live{background:#fee2e2;color:#991b1b}.menu-screen .my-games-status.waiting{background:#e0f2fe;color:#075985}.menu-screen .my-games-status.finished{background:#dcfce7;color:#14532d}.menu-screen .my-games-meta{color:#64748b;font-size:.86rem}.menu-screen .my-games-button{flex-shrink:0;margin:0;background:#0f766e;color:#fff}.menu-screen .my-games-button:hover:not(:disabled){background:#115e59;color:#fff}.menu-screen .session-panel{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;align-items:center;padding:16px;border:1px solid rgba(14,116,144,.14);border-radius:16px;background:#ffffffd1}.menu-screen .session-panel strong,.menu-screen .session-panel span{display:block}.menu-screen .session-panel strong{color:#11384f;font-size:.9rem}.menu-screen .session-panel div>span{color:#64748b;font-size:.78rem}.menu-screen .session-dot{width:10px;height:10px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 5px #22c55e1f}.menu-screen .logout-button{grid-column:1/-1;width:100%;margin:12px 0 0;position:static;inset:auto;background-color:#334155;box-shadow:none}.menu-screen .logout-button:hover:not(:disabled){background-color:#1e293b}.menu-screen footer{width:100%;margin-top:4px;padding:22px 0 4px;border-top:1px solid rgba(15,118,110,.12);color:#64748b;text-align:center}.menu-screen footer a{color:#0f766e;font-weight:700;text-decoration:none}.menu-screen footer a:hover{text-decoration:underline}.menu-screen .principal-id{max-width:100%;margin:0;overflow-wrap:anywhere;font-size:.78rem}.menu-screen .principal-id span{display:block;margin-bottom:3px;color:#334155;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.menu-screen .site-credit{margin:10px 0 0;font-size:.8rem}@media (max-width: 1080px){.menu-screen .menu-top-grid{grid-template-columns:1fr}.menu-screen .menu-hero{min-height:270px}.menu-screen .menu-action{min-height:120px}}@media (max-width: 900px){.menu-screen .menu-content-grid{grid-template-columns:1fr}.menu-screen .account-rail{position:static}}@media (max-width: 680px){.menu-screen .menu-hero{grid-template-columns:1fr;min-height:auto;text-align:center}.menu-screen .game-banner{max-width:260px}.menu-screen .menu-title p,.menu-screen h1{margin-right:auto;margin-left:auto}.menu-screen .my-games-header{align-items:flex-start;flex-direction:column;gap:8px}.menu-screen .my-games-header p{max-width:none;text-align:left}}@media (max-width: 520px){.menu-screen{padding:12px}.menu-screen .menu-dashboard,.menu-screen .menu-top-grid,.menu-screen .menu-content-grid,.menu-screen .menu-primary-column,.menu-screen .account-rail{gap:14px}.menu-screen .menu-hero{padding:22px 18px;border-radius:16px}.menu-screen .button-group{gap:10px}.menu-screen .menu-action{min-height:128px;padding:15px;border-radius:14px}.menu-screen .action-detail{display:none}.menu-screen .my-games-panel{padding:16px;border-radius:16px}.menu-screen .my-games-item{align-items:stretch;flex-direction:column}.menu-screen .my-games-button{width:100%}}.balance-display{width:100%;padding:20px;border:1px solid rgba(14,116,144,.14);border-radius:var(--radius-lg);background:#fffffff0;box-shadow:var(--shadow)}.balance-display .wallet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.balance-display .wallet-header h3{margin:0;color:#11384f;font-size:1.35rem;text-align:left}.balance-display .wallet-eyebrow{display:block;margin-bottom:4px;color:#0f766e;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.balance-display button{margin:0}.balance-display .refresh-button,.balance-display .copy-button{padding:7px 11px;border:1px solid #a7c7c3;background:#f0fdfa;color:#115e59;font-size:.78rem}.balance-display .refresh-button:hover:not(:disabled),.balance-display .copy-button:hover:not(:disabled){background:#ccfbf1;color:#134e4a;box-shadow:none}.balance-display .balance-value{display:flex;align-items:baseline;gap:8px;min-height:92px;padding:18px;border-radius:16px;background:radial-gradient(circle at 100% 0,rgba(255,255,255,.16),transparent 9rem),linear-gradient(135deg,#0f766e,#0e7490);color:#fff;box-shadow:0 16px 30px #0f766e33}.balance-display .balance-value strong{min-width:0;font-size:clamp(1.65rem,3vw,2.15rem);line-height:1;letter-spacing:-.04em;overflow-wrap:anywhere}.balance-display .balance-value span{color:#ccfbf1;font-size:.82rem;font-weight:900;letter-spacing:.08em}.balance-display .balance-value.is-loading{align-items:center}.balance-display .balance-value.is-loading span{letter-spacing:0}.balance-display .account-identifier{margin-top:22px}.balance-display .account-identifier h4{margin:0 0 9px;color:#11384f;font-size:.94rem}.balance-display .identifier-value{max-width:100%;padding:12px;margin:0 0 10px;overflow-wrap:anywhere;border:1px solid #dbe5ec;border-radius:12px;background:#f8fafc;color:#334155;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.74rem;line-height:1.55}.balance-display .copy-status{margin:8px 0 0;color:#047857;font-size:.75rem}.balance-display .funding-note{margin:12px 0 0;color:#64748b;font-size:.78rem;line-height:1.55}.balance-display .transfer-section{display:flex;flex-direction:column;gap:12px;margin-top:22px;padding-top:20px;border-top:1px solid #e2e8f0}.balance-display .transfer-section label>span{display:block;margin-bottom:5px;color:#475569;font-size:.76rem;font-weight:800}.balance-display .transfer-section input{width:100%;min-width:0;font-size:.88rem}.balance-display .transfer-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.balance-display .transfer-heading h4{margin:0;color:#11384f;font-size:1rem}.balance-display .transfer-heading span{color:#94a3b8;font-size:.67rem}.balance-display .amount-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;border:1px solid #d1d5db;border-radius:10px;background:#fff}.balance-display .amount-input:focus-within{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e24}.balance-display .amount-input input{border:0;outline:0}.balance-display .amount-input input:focus{outline:0}.balance-display .amount-input span{padding-right:12px;color:#64748b;font-size:.75rem;font-weight:900}.balance-display .transfer-button{width:100%;min-height:44px;background:linear-gradient(135deg,#16a34a,#059669)}.balance-display .transfer-button:hover:not(:disabled){background:linear-gradient(135deg,#15803d,#047857)}@media (max-width: 520px){.balance-display{padding:16px;border-radius:16px}}.chat-room{width:100%;padding:clamp(18px,2.4vw,24px);border:1px solid rgba(14,116,144,.14);border-radius:var(--radius-lg);background:#ffffffeb;box-shadow:var(--shadow)}.chat-room .chat-room-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.chat-room .chat-room-header button{flex-shrink:0;margin:0;padding:8px 12px;background:#fff7ed;border:1px solid #fed7aa;color:#c2410c;font-size:.8rem}.chat-room .chat-room-header button:hover:not(:disabled){background:#ffedd5;color:#9a3412;box-shadow:none}.chat-room .chat-title-block{min-width:0}.chat-room .chat-title-block h3{margin:0;color:#11384f;font-size:1.4rem;line-height:1.2;overflow-wrap:anywhere}.chat-room .chat-eyebrow{display:block;margin-bottom:5px;color:#0f766e;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.chat-room .chat-identity{display:block;margin-top:5px;color:#64748b;font-size:.8rem;overflow-wrap:anywhere}.chat-room .username-input{display:flex;gap:10px;margin-bottom:14px;padding:12px;border-radius:12px;background:#f8fafc}.chat-room .username-input input{flex:1;min-width:0;font-size:.9rem}.chat-room .username-input button{margin:0;background-color:#16a34a}.chat-room .username-input button:hover:not(:disabled){background-color:#15803d}.chat-room .chat-box{height:clamp(300px,42vh,440px);margin-bottom:14px;padding:12px;overflow-y:auto;border:1px solid #dce8e6;border-radius:14px;background:linear-gradient(#f8fafceb,#f8fafceb),radial-gradient(circle,#99c9c3 1px,transparent 1px);background-size:auto,18px 18px;font-size:.92rem;scroll-behavior:smooth;scrollbar-color:#99c9c3 transparent;scrollbar-width:thin}.chat-room .chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:100%;color:#64748b;text-align:center}.chat-room .chat-empty strong{color:#134e4a}.chat-room .chat-empty span{font-size:.84rem}.chat-room .chat-message{display:flex;flex-direction:column;align-items:flex-start;max-width:92%;margin-bottom:10px;padding:11px 13px;position:relative;border:1px solid #e2e8f0;border-radius:4px 14px 14px;background:#fff;box-shadow:0 5px 14px #0f172a0a}.chat-room .chat-message:nth-child(2n){margin-left:auto;border-radius:14px 4px 14px 14px;background:#f0fdfa;border-color:#c8eee9}.chat-room .chat-message .message-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 9px;margin-bottom:4px}.chat-room .chat-message .username{color:#0f766e;font-weight:900;overflow-wrap:anywhere}.chat-room .chat-message .system-username{color:#f97316;font-style:italic}.chat-room .chat-message .timestamp{color:#94a3b8;font-size:.68rem}.chat-room .chat-message .message-content{align-self:stretch;padding:2px 0;color:#334155;line-height:1.5;overflow-wrap:anywhere}.chat-room .chat-message .delete-button{align-self:flex-end;margin:3px 0 0;padding:3px 7px;background-color:transparent;border:none;box-shadow:none;color:#ef4444;font-size:.7rem}.chat-room .chat-message .delete-button:hover:not(:disabled){background:#fee2e2;color:#b91c1c;transform:none;box-shadow:none}.chat-room .message-input-container{display:flex;gap:10px;align-items:center;padding:7px;border:1px solid #cbd5e1;border-radius:14px;background:#fff}.chat-room .message-input-container:focus-within{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1f}.chat-room .message-input-container input{flex:1;min-width:0;padding:8px 9px;border:0;outline:0;font-size:.92rem}.chat-room .message-input-container input:focus{outline:0}.chat-room .message-input-container button{min-width:86px;margin:0;background:#0f766e}.chat-room .message-input-container button:hover:not(:disabled){background-color:#115e59}.chat-room .message-input-container button.sending-button{background-color:#99f6e4;color:#115e59;cursor:not-allowed}.chat-room .message-input-container button.sending-button:hover{background-color:#99f6e4}@media (max-width: 560px){.chat-room{padding:16px;border-radius:16px}.chat-room .chat-room-header,.chat-room .username-input,.chat-room .message-input-container{flex-direction:column;align-items:stretch}.chat-room .chat-room-header button,.chat-room .message-input-container button{width:100%}.chat-room .chat-box{height:360px}.chat-room .chat-message{max-width:100%}}.message{display:flex;align-items:center;padding:15px 20px;margin:10px 0;border-radius:5px;max-width:600px;word-wrap:break-word;position:relative}.message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.message.warning{background-color:#fff3cd;color:#856404;border:1px solid #ffeeba}.message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.message .message-text{flex:1;text-align:center}.message .close-button{position:absolute;top:-15px;right:-20px;background:transparent;border:none;font-size:20px;cursor:pointer;color:inherit}.contact-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.contact-content{background-color:#fff;padding:20px;border-radius:8px;width:90%;max-width:600px;position:relative;overflow-y:auto;max-height:90vh}.close-button{position:absolute;top:10px;right:10px;background-color:#dc3545;color:#fff;border:none;font-size:1.5rem;cursor:pointer;width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center}.close-button:hover{background-color:#c82333}.contact-form{display:flex;flex-direction:column}.contact-form input,.contact-form textarea{margin-bottom:10px;padding:8px;font-size:1rem;border:1px solid #ccc;border-radius:4px}.contact-form textarea{resize:vertical;min-height:100px}.contact-form button{padding:10px;font-size:1rem;cursor:pointer;background-color:#28a745;color:#fff;border:none;border-radius:4px}.contact-form button:disabled{background-color:#6c757d;cursor:not-allowed}.error-message{color:red;margin-bottom:10px}.message-list{display:flex;flex-direction:column}.message-item{border-bottom:1px solid #ccc;padding:10px 0}.message-item p{margin:5px 0}.message-item button{margin-top:10px;padding:5px 10px;cursor:pointer;background-color:#dc3545;color:#fff;border:none;border-radius:4px}.message-item button:hover{background-color:#c82333}.close-modal-button{margin-top:15px;padding:10px;font-size:1rem;cursor:pointer;background-color:#007bff;color:#fff;border:none;border-radius:4px;width:100%}.close-modal-button:hover{background-color:#0056b3}@media (max-width: 600px){.contact-content{width:95%;padding:15px}}.play-bingo-screen{width:100%;min-height:100vh;padding:clamp(14px,2.5vw,34px)}.play-bingo-screen .games-page-shell{display:flex;flex-direction:column;gap:22px;width:min(100%,1180px);margin:0 auto}.play-bingo-screen .games-hero{min-height:300px;padding:clamp(22px,3.5vw,42px);overflow:hidden;position:relative;border-radius:24px;background:radial-gradient(circle at 88% 12%,rgba(255,255,255,.13),transparent 15rem),radial-gradient(circle at 12% 115%,rgba(249,115,22,.34),transparent 19rem),linear-gradient(135deg,#0f766e,#0e7490 58%,#075985);color:#fff;box-shadow:0 26px 58px #0f4c5c38}.play-bingo-screen .games-hero:after{content:"";width:210px;height:210px;position:absolute;right:-58px;bottom:-96px;border:30px solid rgba(255,255,255,.07);border-radius:50%;pointer-events:none}.play-bingo-screen .hero-back-button{padding:8px 12px;margin:0 0 34px;position:relative;z-index:1;border:1px solid rgba(255,255,255,.24);background:#ffffff1f;color:#fff;font-size:.82rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.play-bingo-screen .hero-back-button:hover:not(:disabled){background:#fff3;color:#fff}.play-bingo-screen .games-hero-content{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(30px,6vw,80px);align-items:end;position:relative;z-index:1}.play-bingo-screen .games-hero-copy{max-width:620px}.play-bingo-screen .games-hero-copy h1{max-width:10ch;margin:0;color:#fff;font-size:clamp(2.6rem,6vw,5.2rem);line-height:.94;letter-spacing:-.055em}.play-bingo-screen .games-hero-copy p{max-width:55ch;margin:18px 0 0;color:#ffffffd1;font-size:1rem;line-height:1.6}.play-bingo-screen .games-eyebrow,.play-bingo-screen .section-eyebrow,.play-bingo-screen .section-kicker{display:block;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.play-bingo-screen .games-eyebrow{margin-bottom:10px;color:#fef3c7}.play-bingo-screen .section-eyebrow,.play-bingo-screen .section-kicker{margin-bottom:6px;color:#0f766e}.play-bingo-screen .games-overview{display:grid;grid-template-columns:repeat(4,minmax(94px,1fr));gap:10px}.play-bingo-screen .overview-stat{min-width:104px;padding:15px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.play-bingo-screen .overview-stat span,.play-bingo-screen .overview-stat strong{display:block}.play-bingo-screen .overview-stat span{color:#ffffffb3;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.play-bingo-screen .overview-stat strong{margin-top:4px;color:#fff;font-size:1.8rem;line-height:1}.play-bingo-screen .overview-stat.live-stat{background:#22c55e2e;border-color:#86efac57}.play-bingo-screen .overview-stat.progressive-stat{background:#f59e0b38;border-color:#fbbf2473}.play-bingo-screen .overview-stat.progressive-stat strong{font-size:1.35rem}.play-bingo-screen .progressive-jackpot-callout{margin-top:14px;padding:12px 14px;border-radius:12px;border:1px solid rgba(251,191,36,.35);background:#fffbeb24;color:#ffffffeb;font-size:.9rem;line-height:1.5}.play-bingo-screen .progressive-jackpot-callout strong{color:#fde68a}.play-bingo-screen .message{display:flex;align-items:center;width:100%;padding:14px 46px 14px 17px;margin:0;position:relative;border-radius:14px;box-shadow:0 10px 24px #0f172a0f}.play-bingo-screen .message.success{background:#dcfce7;color:#14532d;border:1px solid #86efac}.play-bingo-screen .message.info{background:#e0f2fe;color:#075985;border:1px solid #7dd3fc}.play-bingo-screen .message.warning{background:#fef3c7;color:#7c2d12;border:1px solid #facc15}.play-bingo-screen .message.error{background:#fee2e2;color:#7f1d1d;border:1px solid #fca5a5}.play-bingo-screen .message .message-text{flex:1}.play-bingo-screen .message .close-button{width:32px;height:32px;padding:0;margin:0;position:absolute;top:50%;right:8px;transform:translateY(-50%);background:transparent;border:0;color:inherit;box-shadow:none}.play-bingo-screen .search-and-filter{width:100%;padding:clamp(18px,2.5vw,26px);border:1px solid rgba(14,116,144,.14);border-radius:var(--radius-lg);background:#ffffffeb;box-shadow:var(--shadow)}.play-bingo-screen .browse-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.play-bingo-screen .browse-heading h2{margin:0;color:#11384f;font-size:1.5rem}.play-bingo-screen .refresh-status{display:inline-flex;align-items:center;gap:7px;color:#64748b;font-size:.76rem;white-space:nowrap}.play-bingo-screen .refresh-status.is-refreshing .refresh-dot{animation:statusPulse 1s ease-in-out infinite}.play-bingo-screen .refresh-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px #22c55e1f}.play-bingo-screen .browse-controls{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:18px;align-items:end}.play-bingo-screen .search-control{display:flex;flex-direction:column;gap:6px}.play-bingo-screen .search-control>span{color:#475569;font-size:.76rem;font-weight:800}.play-bingo-screen .search-control .search-input{width:100%;min-height:46px;padding-right:16px;font-size:.92rem}.play-bingo-screen .filters{display:flex;gap:8px;flex-wrap:wrap}.play-bingo-screen .filter-chip{min-height:42px;padding:9px 14px;margin:0;border:1px solid #d8e3ea;background:#f8fafc;color:#475569;font-size:.82rem}.play-bingo-screen .filter-chip:hover:not(:disabled){background:#f0fdfa;border-color:#99c9c3;color:#115e59;box-shadow:none}.play-bingo-screen .filter-chip.is-active{background:#0f766e;border-color:#0f766e;color:#fff;box-shadow:0 8px 18px #0f766e2e}.play-bingo-screen .results-summary{display:flex;align-items:center;gap:4px;margin-top:15px;padding-top:14px;border-top:1px solid #e2e8f0;color:#64748b;font-size:.8rem}.play-bingo-screen .results-summary strong{color:#334155}.play-bingo-screen .results-summary button{padding:0;margin:0 0 0 auto;background:transparent;color:#0f766e;box-shadow:none;font-size:.78rem}.play-bingo-screen .results-summary button:hover:not(:disabled){background:transparent;color:#115e59;box-shadow:none;text-decoration:underline;transform:none}.play-bingo-screen .refresh-warning{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #fde68a;border-radius:14px;background:#fffbeb;color:#854d0e;font-size:.85rem}.play-bingo-screen .refresh-warning button{flex-shrink:0;padding:7px 10px;margin:0;background:#f59e0b;font-size:.76rem}.play-bingo-screen .games-loading-state,.play-bingo-screen .games-empty-state{width:100%;padding:clamp(22px,3vw,34px);border:1px solid rgba(14,116,144,.14);border-radius:var(--radius-lg);background:#ffffffeb;box-shadow:var(--shadow)}.play-bingo-screen .loading-copy{display:flex;align-items:center;gap:22px;margin-bottom:26px}.play-bingo-screen .loading-copy h2{margin:0 0 5px;color:#11384f;font-size:1.45rem}.play-bingo-screen .loading-copy p{margin:0;color:#64748b;font-size:.9rem}.play-bingo-screen .bingo-loader{display:flex;gap:4px}.play-bingo-screen .bingo-loader i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#0f766e;color:#fff;font-size:.75rem;font-style:normal;font-weight:900;box-shadow:0 8px 18px #0f766e2e;animation:bingoBounce 1.15s ease-in-out infinite}.play-bingo-screen .bingo-loader i:nth-child(2){animation-delay:.1s;background:#0e7490}.play-bingo-screen .bingo-loader i:nth-child(3){animation-delay:.2s;background:#2563eb}.play-bingo-screen .bingo-loader i:nth-child(4){animation-delay:.3s;background:#f97316}.play-bingo-screen .bingo-loader i:nth-child(5){animation-delay:.4s;background:#db2777}.play-bingo-screen .game-skeleton-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.play-bingo-screen .game-skeleton{display:flex;flex-direction:column;gap:16px;min-height:228px;padding:20px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.play-bingo-screen .game-skeleton>span,.play-bingo-screen .game-skeleton .skeleton-stats span{display:block;overflow:hidden;position:relative;border-radius:999px;background:#e2e8f0}.play-bingo-screen .game-skeleton>span:after,.play-bingo-screen .game-skeleton .skeleton-stats span:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);animation:skeletonShimmer 1.4s infinite}.play-bingo-screen .skeleton-pill{width:82px;height:24px}.play-bingo-screen .skeleton-title{width:62%;height:28px}.play-bingo-screen .skeleton-button{width:100%;height:42px;margin-top:auto}.play-bingo-screen .skeleton-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.play-bingo-screen .skeleton-stats span{height:52px;border-radius:10px}.play-bingo-screen .games-empty-state{display:flex;flex-direction:column;align-items:center;min-height:300px;justify-content:center;text-align:center}.play-bingo-screen .games-empty-state h2{margin:16px 0 7px;color:#11384f;font-size:1.55rem}.play-bingo-screen .games-empty-state p{max-width:56ch;margin:0;color:#64748b;line-height:1.6}.play-bingo-screen .games-empty-state.error-state .empty-state-mark{background:#fee2e2;color:#b91c1c;border-color:#fecaca}.play-bingo-screen .empty-state-mark{display:grid;place-items:center;width:62px;height:62px;border:8px solid #99f6e4;border-radius:50%;background:#0f766e;color:#fff;font-size:1.7rem;font-weight:900;box-shadow:0 12px 25px #0f766e2e}.play-bingo-screen .empty-state-actions{display:flex;gap:10px;margin-top:22px}.play-bingo-screen .empty-state-actions button{margin:0}.play-bingo-screen .secondary-button{border:1px solid #a7c7c3;background:#f0fdfa;color:#115e59}.play-bingo-screen .secondary-button:hover:not(:disabled){background:#ccfbf1;color:#134e4a}.play-bingo-screen .game-sections{display:flex;flex-direction:column;gap:22px}.play-bingo-screen .games-section{width:100%;padding:clamp(18px,2.5vw,28px);overflow:hidden;border:1px solid rgba(14,116,144,.14);border-radius:var(--radius-lg);background:#ffffffeb;box-shadow:var(--shadow)}.play-bingo-screen .now-playing-section{border-color:#22c55e42;background:linear-gradient(135deg,#ecfdf5a6,#fffffff0 34%)}.play-bingo-screen .past-games-section{background:linear-gradient(135deg,#f8fafcc7,#fffffff0)}.play-bingo-screen .games-section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:20px}.play-bingo-screen .games-section-header h2{margin:0;color:#11384f;font-size:clamp(1.45rem,3vw,1.9rem)}.play-bingo-screen .games-section-header p{max-width:62ch;margin:6px 0 0;color:#64748b;font-size:.86rem}.play-bingo-screen .live-kicker{display:flex;align-items:center;gap:7px;color:#15803d}.play-bingo-screen .live-kicker i{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px #22c55e1f;animation:statusPulse 1.5s ease-in-out infinite}.play-bingo-screen .archive-kicker{color:#64748b}.play-bingo-screen .section-count{display:grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border-radius:999px;background:#e6f7f5;color:#0f766e;font-size:.9rem;font-weight:900}.play-bingo-screen .game-list{width:100%;overflow:hidden}.play-bingo-screen .active-game-list{height:calc(var(--visible-rows) * 400px)}.play-bingo-screen .past-game-list{height:calc(var(--visible-rows) * 270px)}.play-bingo-screen .game-row{padding:0 2px 14px}.play-bingo-screen .game-item{display:flex;flex-direction:column;width:100%;height:100%;padding:20px;overflow:hidden;position:relative;border:1px solid #dce8e6;border-radius:18px;background:#fff;box-shadow:0 12px 28px #0f172a12}.play-bingo-screen .game-item:before{content:"";width:5px;position:absolute;inset:0 auto 0 0;background:#0f766e}.play-bingo-screen .game-item.paid-game:before{background:#f97316}.play-bingo-screen .game-item h3{margin:3px 0 0;color:#11384f;font-size:1.35rem;line-height:1.15;overflow-wrap:anywhere}.play-bingo-screen .game-card-badges{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.play-bingo-screen .game-status-badge,.play-bingo-screen .game-price-badge,.play-bingo-screen .private-badge,.play-bingo-screen .complete-badge,.play-bingo-screen .past-private-note{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:999px;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.play-bingo-screen .game-status-badge.live{background:#dcfce7;color:#166534}.play-bingo-screen .game-status-badge.upcoming{background:#e0f2fe;color:#075985}.play-bingo-screen .game-price-badge.free{background:#ccfbf1;color:#115e59}.play-bingo-screen .game-price-badge.paid{background:#ffedd5;color:#c2410c}.play-bingo-screen .private-badge{background:#f3e8ff;color:#7e22ce}.play-bingo-screen .game-card-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end}.play-bingo-screen .game-number{display:block;color:#64748b;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.play-bingo-screen .game-countdown{min-width:144px;padding:10px 12px;border:1px solid #bae6fd;border-radius:12px;background:#f0f9ff;text-align:right}.play-bingo-screen .game-countdown.live{border-color:#bbf7d0;background:#f0fdf4}.play-bingo-screen .game-countdown span,.play-bingo-screen .game-countdown strong{display:block}.play-bingo-screen .game-countdown span{color:#64748b;font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.play-bingo-screen .game-countdown strong{margin-top:2px;color:#075985;font-size:.86rem}.play-bingo-screen .game-countdown.live strong{color:#166534}.play-bingo-screen .game-card-stats{display:grid;grid-template-columns:minmax(150px,1.4fr) .6fr .8fr minmax(180px,1.1fr);gap:8px;margin-top:15px}.play-bingo-screen .game-card-stat{min-width:0;padding:10px 11px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc}.play-bingo-screen .game-card-stat span,.play-bingo-screen .game-card-stat strong{display:block}.play-bingo-screen .game-card-stat span{margin-bottom:3px;color:#64748b;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.play-bingo-screen .game-card-stat strong{color:#334155;font-size:.82rem;line-height:1.3;overflow-wrap:anywhere}.play-bingo-screen .game-card-stat.prize-stat{border-color:#bbf7d0;background:#f0fdf4}.play-bingo-screen .game-card-stat.prize-stat strong{color:#047857}.play-bingo-screen .pattern-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:12px;padding:11px 13px;border:1px solid #fde68a;border-radius:12px;background:#fffbeb}.play-bingo-screen .pattern-callout div>span,.play-bingo-screen .pattern-callout strong,.play-bingo-screen .pattern-callout small{display:block}.play-bingo-screen .pattern-callout div>span{color:#92400e;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.play-bingo-screen .pattern-callout strong{color:#78350f;font-size:.88rem}.play-bingo-screen .pattern-callout small{max-width:66ch;margin-top:2px;color:#a16207;font-size:.7rem;line-height:1.35}.play-bingo-screen .host-share{flex-shrink:0;padding:5px 8px;border-radius:999px;background:#fef3c7;color:#92400e;font-size:.68rem;font-weight:800}.play-bingo-screen .game-item-actions{display:flex;margin-top:auto;padding-top:13px}.play-bingo-screen .game-item-button{width:100%;min-height:44px;margin:0;background:linear-gradient(135deg,#0f766e,#0d9488)}.play-bingo-screen .game-item-button:hover:not(:disabled){background:linear-gradient(135deg,#115e59,#0f766e)}.play-bingo-screen .game-item-button.game-item-button--continue{background:linear-gradient(135deg,#2563eb,#0e7490)}.play-bingo-screen .game-item-button.game-item-button--continue:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#075985)}.play-bingo-screen .card-fee-note{margin:7px 0 0;color:#94a3b8;font-size:.66rem;line-height:1.35;text-align:center}.play-bingo-screen .past-game{padding:18px 20px}.play-bingo-screen .past-game:before{background:#94a3b8}.play-bingo-screen .past-game-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.play-bingo-screen .complete-badge{flex-shrink:0;background:#e2e8f0;color:#475569}.play-bingo-screen .past-game-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.play-bingo-screen .past-game-stats div{min-width:0;padding:10px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}.play-bingo-screen .past-game-stats span,.play-bingo-screen .past-game-stats strong{display:block}.play-bingo-screen .past-game-stats span{margin-bottom:3px;color:#94a3b8;font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.play-bingo-screen .past-game-stats strong{color:#475569;font-size:.77rem;line-height:1.35;overflow-wrap:anywhere}.play-bingo-screen .past-private-note{align-self:flex-start;margin-top:10px;background:#f3e8ff;color:#7e22ce}.play-bingo-screen .games-page-footer-actions{display:flex;justify-content:center}.play-bingo-screen .back-button{margin:0;background:#334155}.play-bingo-screen .back-button:hover:not(:disabled){background:#1e293b}.play-bingo-screen footer{margin-top:0;color:#64748b}@keyframes bingoBounce{0%,55%,to{transform:translateY(0)}25%{transform:translateY(-7px)}}@keyframes skeletonShimmer{to{transform:translate(100%)}}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.82)}}@media (prefers-reduced-motion: reduce){.play-bingo-screen .bingo-loader i,.play-bingo-screen .game-skeleton>span:after,.play-bingo-screen .skeleton-stats span:after,.play-bingo-screen .refresh-dot,.play-bingo-screen .live-kicker i{animation:none}}@media (max-width: 820px){.play-bingo-screen .games-hero-content{grid-template-columns:1fr}.play-bingo-screen .games-overview{width:100%}.play-bingo-screen .browse-controls{grid-template-columns:1fr}.play-bingo-screen .game-card-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.play-bingo-screen{padding:12px}.play-bingo-screen .games-page-shell{gap:14px}.play-bingo-screen .games-hero{min-height:auto;padding:20px 18px 24px;border-radius:18px}.play-bingo-screen .hero-back-button{margin-bottom:28px}.play-bingo-screen .games-hero-copy h1{font-size:clamp(2.5rem,14vw,3.6rem)}.play-bingo-screen .games-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.play-bingo-screen .overview-stat{min-width:0;padding:11px 8px}.play-bingo-screen .overview-stat span{font-size:.56rem}.play-bingo-screen .overview-stat strong{font-size:1.45rem}.play-bingo-screen .search-and-filter,.play-bingo-screen .games-loading-state,.play-bingo-screen .games-empty-state,.play-bingo-screen .games-section{padding:16px;border-radius:16px}.play-bingo-screen .browse-heading,.play-bingo-screen .games-section-header,.play-bingo-screen .loading-copy,.play-bingo-screen .refresh-warning{align-items:flex-start;flex-direction:column}.play-bingo-screen .filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.play-bingo-screen .filter-chip{padding-right:8px;padding-left:8px}.play-bingo-screen .game-skeleton-list{grid-template-columns:1fr}.play-bingo-screen .game-skeleton-list .game-skeleton:nth-child(2){display:none}.play-bingo-screen .bingo-loader i{width:31px;height:31px}.play-bingo-screen .empty-state-actions{flex-direction:column;width:100%}.play-bingo-screen .empty-state-actions button{width:100%}.play-bingo-screen .active-game-list{height:calc(var(--visible-rows) * 625px)}.play-bingo-screen .past-game-list{height:calc(var(--visible-rows) * 390px)}.play-bingo-screen .game-item{padding:17px 15px;border-radius:14px}.play-bingo-screen .game-card-title-row{grid-template-columns:1fr;gap:11px}.play-bingo-screen .game-countdown{min-width:0;text-align:left}.play-bingo-screen .game-card-stats,.play-bingo-screen .past-game-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.play-bingo-screen .pattern-callout{align-items:flex-start;flex-direction:column;gap:8px}.play-bingo-screen .past-game-header{align-items:flex-start}}@media (max-width: 390px){.play-bingo-screen .filters{grid-template-columns:1fr}.play-bingo-screen .active-game-list{height:calc(var(--visible-rows) * 660px)}.play-bingo-screen .past-game-list{height:calc(var(--visible-rows) * 430px)}}.confirmation-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.confirmation-modal .modal-content{background-color:#fff;padding:2rem;border-radius:8px;max-width:400px;width:90%;text-align:center}.confirmation-modal .modal-content h2{margin-top:0}.confirmation-modal .modal-content p{margin:1rem 0}.confirmation-modal .modal-content .small-print,.confirmation-modal .modal-content .progressive-rules{font-size:.88rem;line-height:1.45;color:#475569;text-align:left}.confirmation-modal .modal-content .progressive-rules{padding:10px 12px;border-radius:8px;background:#fffbeb;border:1px solid #fcd34d}.confirmation-modal .modal-content .modal-buttons{display:flex;justify-content:space-around;margin-top:2rem}.confirmation-modal .modal-content .modal-buttons button{padding:.5rem 1rem;font-size:1rem;cursor:pointer}.confirmation-modal .small-print{font-size:12px;color:#777;margin-top:-10px;margin-bottom:10px}.confirmation-modal .form-group input{font-size:16px}.host-bingo-screen{display:flex;flex-direction:column;align-items:center;width:100%;min-height:100vh;padding:24px}.host-bingo-screen h1{margin-bottom:30px;color:#11384f}.host-bingo-screen .hosted-games-panel{width:min(100%,440px);margin-bottom:20px;padding:16px;border-radius:8px;border:1px solid rgba(14,116,144,.18);background:#ffffffeb;box-shadow:0 14px 32px #0f172a14}.host-bingo-screen .hosted-games-panel h2{margin:0 0 6px;color:#11384f;font-size:1.2rem}.host-bingo-screen .hosted-games-panel p{margin:0 0 12px;color:#475569;font-size:.92rem}.host-bingo-screen .hosted-games-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.host-bingo-screen .hosted-games-item{display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:8px;background:#f8fafc;border:1px solid rgba(15,23,42,.08)}.host-bingo-screen .hosted-games-item strong{display:block;color:#11384f}.host-bingo-screen .hosted-games-item span{display:block;color:#64748b;font-size:.85rem}.host-bingo-screen .return-game-button{width:100%;background:#0f766e;color:#fff}.host-bingo-screen .return-game-button:hover:not(:disabled){background:#115e59}.host-bingo-screen .active-game-warning{background-color:#ffe0e0;border:1px solid #fca5a5;padding:10px;border-radius:8px;margin-bottom:20px;color:#b71c1c;width:100%;max-width:400px;text-align:center}.host-bingo-screen .host-form{display:flex;flex-direction:column;gap:15px;width:min(100%,440px);padding:18px;border-radius:8px;border:1px solid rgba(14,116,144,.18);background:#ffffffe6;box-shadow:0 18px 44px #0f172a14}.host-bingo-screen .host-form .win-type-selector select{width:100%;padding:10px;font-size:1rem;border-radius:8px;border:1px solid #cbd5e1;margin-bottom:12px}.host-bingo-screen .host-form .win-type-help{margin:0 0 10px;color:#64748b;font-size:.9rem;line-height:1.4}.host-bingo-screen .host-form .form-group{display:flex;flex-direction:column}.host-bingo-screen .host-form .form-group label{margin-bottom:5px;font-weight:700}.host-bingo-screen .host-form .form-group input{padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:1rem}.host-bingo-screen .host-form .form-group .win-type-options{display:flex;gap:10px}.host-bingo-screen .host-form .form-group .win-type-options label{display:flex;align-items:center}.host-bingo-screen .host-form .form-group .win-type-options label input{margin-right:5px}.host-bingo-screen .host-form .small-print{font-size:.4rem;color:#555;margin-bottom:10px;line-height:1.2}.host-bingo-screen .host-form .submit-button{padding:10px 20px;font-size:1rem;cursor:pointer;background-color:#16a34a;color:#fff;border:none;border-radius:8px;transition:background-color .3s}.host-bingo-screen .host-form .submit-button:hover{background-color:#15803d}.host-bingo-screen .host-form .submit-button:disabled{background-color:#86efac;cursor:not-allowed}.host-bingo-screen .back-button{margin-top:20px;background-color:#757575;padding:10px 20px;border:none;color:#fff;border-radius:8px;cursor:pointer;transition:background-color .3s}.host-bingo-screen .back-button:hover{background-color:#616161}.host-bingo-screen .back-button:disabled{background-color:#bdbdbd;cursor:not-allowed}@media (max-width: 560px){.host-bingo-screen{padding:14px}}.win-type-details{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;padding:14px;border-radius:8px;border:1px solid rgba(14,116,144,.18);background:#ffffffeb}.win-type-details--compact{grid-template-columns:1fr;padding:12px}.win-type-details-heading{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.win-type-details-heading strong{color:#11384f;font-size:1rem}.win-type-difficulty{display:inline-flex;padding:3px 8px;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.win-type-difficulty.quick{background:#dcfce7;color:#14532d}.win-type-difficulty.medium{background:#e0f2fe;color:#075985}.win-type-difficulty.long{background:#fef3c7;color:#7c2d12}.win-type-summary,.win-type-description,.win-type-note{margin:0 0 8px;color:#475569;font-size:.92rem;line-height:1.45}.win-type-note{font-size:.82rem;color:#64748b;font-style:italic}.win-type-pattern{display:flex;flex-direction:column;align-items:center;gap:6px}.win-type-pattern-grid{display:grid;grid-template-columns:repeat(5,18px);gap:3px}.win-type-pattern-cell{width:18px;height:18px;border-radius:4px;background:#e2e8f0;border:1px solid #cbd5e1}.win-type-pattern-cell.is-active{background:#0f766e;border-color:#0f766e}.win-type-pattern-cell.is-free.is-active{background:#f97316;border-color:#ea580c}.win-type-pattern-label{color:#64748b;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}@media (max-width: 720px){.win-type-details{grid-template-columns:1fr}}.about-screen{display:flex;flex-direction:column;align-items:center;padding:20px;max-width:900px;margin:0 auto;color:#424242;font-family:Arial,sans-serif}.about-screen h1{margin-bottom:30px;color:#1976d2;text-align:center}.about-screen h2{margin-top:30px;margin-bottom:15px;color:#1976d2}.about-screen h3{margin-top:20px;margin-bottom:10px;color:#1976d2}.about-screen p{margin-bottom:15px;line-height:1.6;text-align:justify}.about-screen strong{color:#1976d2}.about-screen em{color:#424242;font-style:italic}.about-screen ul{list-style-type:disc;padding-left:40px;margin-bottom:15px}.about-screen ul li{margin-bottom:10px}.about-screen ul li ul{list-style-type:circle;padding-left:20px;margin-top:5px}.about-screen ul li ul li{margin-bottom:5px}.about-screen ol{list-style-type:decimal;padding-left:40px;margin-bottom:15px}.about-screen ol li{margin-bottom:10px}.about-screen ol li ul{list-style-type:circle;padding-left:20px;margin-top:5px}.about-screen ol li ul li{margin-bottom:5px}.about-screen a{color:#1976d2;text-decoration:none}.about-screen a:hover{text-decoration:underline}.about-screen button.back-button{padding:10px 20px;font-size:1rem;cursor:pointer;background-color:#757575;color:#fff;border:none;border-radius:5px;transition:background-color .3s;margin-top:30px}.about-screen button.back-button:hover{background-color:#616161}@media (max-width: 768px){.about-screen,.about-screen .about-screen{padding:15px}.about-screen h1{font-size:1.8rem}.about-screen h2{font-size:1.4rem}.about-screen h3{font-size:1.2rem}.about-screen p,.about-screen li{font-size:1rem}.about-screen ul,.about-screen ol{padding-left:30px}.about-screen button.back-button{width:100%;padding:10px 0}}.bingo-card{display:flex;justify-content:center;width:100%;margin:0}.bingo-card .bingo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));gap:clamp(5px,1.4vw,9px);width:min(100%,520px);aspect-ratio:5/6;padding:clamp(8px,2vw,14px);border-radius:8px;background:#11384f;border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 0 0 1px #ffffff14,0 20px 45px #0f172a2e;text-align:center}.bingo-card .bingo-letter,.bingo-card .bingo-cell{display:flex;justify-content:center;align-items:center;min-width:0;min-height:0;border-radius:8px}.bingo-card .bingo-letter{background:#f9c74f;color:#11384f;font-size:clamp(1.2rem,4vw,2rem);font-weight:900;border:1px solid rgba(124,58,0,.16)}.bingo-card .bingo-cell{position:relative;overflow:hidden;background:#fff;color:#102a43;border:1px solid rgba(15,23,42,.12);cursor:pointer;font-size:clamp(1rem,4vw,1.7rem);font-weight:900;transition:background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}.bingo-card .bingo-cell:hover{transform:translateY(-1px);box-shadow:0 10px 18px #0f172a24}.bingo-card .bingo-cell.marked{background:#14b8a6;color:#fff;border-color:#0f766e;box-shadow:inset 0 0 0 4px #ffffff3d}.bingo-card .bingo-cell.marked:after{content:"";position:absolute;top:18%;right:18%;bottom:18%;left:18%;border-radius:50%;border:3px solid rgba(255,255,255,.78);pointer-events:none}.bingo-card .bingo-cell.first-five:not(.marked){box-shadow:inset 0 0 0 2px #fbbf248c,0 0 0 1px #f59e0b59}.bingo-card .bingo-cell.marked-first-five{background:linear-gradient(145deg,#f59e0b,#d97706 55%,#b45309);color:#fffbeb;border-color:#fbbf24;box-shadow:inset 0 0 0 3px #ffffff59,0 0 0 2px #fbbf24bf,0 10px 20px #b4530959}.bingo-card .bingo-cell.marked-first-five:after{border-color:#fffbebe6}.bingo-card .bingo-cell .first-five-star{position:absolute;top:4px;left:5px;font-size:clamp(.62rem,2vw,.82rem);line-height:1;color:#fff7ed;text-shadow:0 1px 2px rgba(120,53,15,.45);pointer-events:none}.bingo-card .bingo-cell .first-five-order{position:absolute;right:4px;bottom:3px;padding:1px 4px;border-radius:999px;background:#fffbebeb;color:#92400e;font-size:clamp(.55rem,1.8vw,.68rem);font-weight:900;line-height:1.2;pointer-events:none}.bingo-card .bingo-cell.free{background:#f97316;color:#fff;font-size:clamp(.82rem,3vw,1.2rem);cursor:default;box-shadow:inset 0 0 0 4px #ffffff38}.bingo-card .bingo-cell.free:hover{transform:none;box-shadow:inset 0 0 0 4px #ffffff38}.bingo-card .bingo-card-error{display:flex;justify-content:center;align-items:center;width:min(100%,520px);padding:20px;border:1px solid #fca5a5;border-radius:8px;background-color:#fee2e2;color:#7f1d1d;font-size:1rem}.game-info{display:flex;flex-direction:column;gap:16px;width:min(100%,430px);padding:18px;border:1px solid rgba(14,116,144,.18);border-radius:8px;background:#fffffff0;box-shadow:0 18px 40px #0f172a1a}.game-info h3{margin:0;color:#18465f;font-size:.95rem}.game-info .latest-number{display:grid;grid-template-columns:1fr auto;align-items:center;min-height:94px;padding:14px;border-radius:8px;background:linear-gradient(135deg,#0e74901a,#f59e0b29),#fffdf7;border:1px solid rgba(245,158,11,.28)}.game-info .latest-label{color:#5b6472;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.game-info .latest-ball{position:relative;display:inline-grid;place-items:center;width:74px;height:74px;border-radius:50%;background:#fff;color:#0f4c5c;box-shadow:inset 0 0 0 6px #f9c74f,0 12px 24px #0f172a29}.game-info .latest-ball strong{line-height:1;font-size:.95rem}.game-info .latest-ball span{line-height:1;font-size:1.8rem;font-weight:900}.game-info .latest-ball.is-first-five{background:linear-gradient(160deg,#fff7ed,#fde68a);color:#92400e;box-shadow:inset 0 0 0 5px #f59e0b,0 0 0 3px #fbbf248c,0 12px 24px #b4530938}.game-info .latest-ball .latest-first-five-star{position:absolute;top:6px;right:8px;font-size:.72rem;line-height:1;color:#b45309}.game-info .latest-ball .latest-first-five-order{position:absolute;bottom:5px;left:50%;transform:translate(-50%);padding:1px 6px;border-radius:999px;background:#92400e;color:#fffbeb;font-size:.62rem;font-weight:900;line-height:1.3}.game-info .latest-empty{color:#18465f;font-size:1.35rem;font-weight:900}.game-info .button-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.game-info .game-info-button{min-height:44px;margin:0;padding:10px 14px;border-radius:8px;font-size:.95rem;text-align:center}.game-info .admin-button{background-color:#0f766e}.game-info .admin-button:hover:not(:disabled){background-color:#115e59}.game-info .auto-draw-button{background-color:#2563eb}.game-info .auto-draw-button:hover:not(:disabled){background-color:#1d4ed8}.game-info .check-win-button{background-color:#db2777}.game-info .check-win-button:hover:not(:disabled){background-color:#be185d}.game-info .called-numbers{display:flex;flex-direction:column;gap:10px}.game-info .called-numbers-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.game-info .called-numbers-heading h3{margin:0}.game-info .first-five-legend{color:#b45309;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.game-info .first-five-calls-strip{display:flex;flex-wrap:wrap;gap:6px;padding:10px;border-radius:8px;border:1px solid rgba(245,158,11,.45);background:linear-gradient(135deg,#fef3c7f2,#fffbebfa)}.game-info .first-five-calls-strip.is-free-game{border-color:#94a3b88c;background:linear-gradient(135deg,#f1f5f9f2,#f8fafcfa)}.game-info .first-five-paid-only-note{width:100%;margin:0 0 2px;color:#64748b;font-size:.76rem;font-weight:700;line-height:1.35}.game-info .first-five-call-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 6px;border-radius:999px;border:1px solid #f59e0b;background:#fff;color:#92400e;font-size:.82rem;font-weight:800;box-shadow:0 4px 10px #b453091f}.game-info .first-five-call-order{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:50%;background:#f59e0b;color:#fffbeb;font-size:.68rem;font-weight:900}.game-info .first-five-call-value{white-space:nowrap}.game-info .first-five-call-placeholder{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;border:1px dashed #fbbf24;color:#a16207;font-size:.76rem;font-weight:700}.game-info .numbers-list{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;min-height:38px;max-height:132px;overflow-y:auto;padding:4px}.game-info .called-number,.game-info .called-empty{display:inline-flex;align-items:center;justify-content:center;min-width:46px;min-height:32px;padding:6px 10px;border-radius:999px;font-size:.84rem;font-weight:800}.game-info .called-number{gap:4px;background:#fff4c7;color:#7c3e00;border:1px solid #f6c453}.game-info .called-number.is-first-five{background:linear-gradient(135deg,#fde68a,#fbbf24);color:#78350f;border-color:#d97706;box-shadow:0 0 0 1px #ffffffa6 inset}.game-info .called-first-five-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:18px;padding:0 4px;border-radius:999px;background:#92400e;color:#fffbeb;font-size:.62rem;font-weight:900;line-height:1}.game-info .called-empty{width:100%;background:#eef7f6;color:#64748b;border:1px dashed #a7c7c3}.game-info .game-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.game-info .game-stat{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0}.game-info .game-stat span{color:#64748b;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.game-info .game-stat strong{color:#102a43;font-size:1rem;overflow-wrap:anywhere}.game-info .total-prize{background:#ecfdf5;border-color:#86efac}.game-info .total-prize strong{color:#047857}.game-info .audio-controls{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:14px;border-radius:8px;border:1px solid #f5c542;background:#fff8df}.game-info .audio-controls.is-enabled{border-color:#7dd3fc;background:#effbff}.game-info .audio-title,.game-info .audio-detail{display:block}.game-info .audio-title{color:#18465f;font-weight:900}.game-info .audio-detail{color:#5b6472;font-size:.86rem}.game-info .audio-toggle-button{min-width:88px;margin:0;background:#f97316}.game-info .audio-toggle-button:hover:not(:disabled){background:#ea580c}.game-info .audio-controls.is-enabled .audio-toggle-button{background:#0f766e}.game-info .audio-controls.is-enabled .audio-toggle-button:hover:not(:disabled){background:#115e59}.game-info .auto-mark-controls{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:14px;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc}.game-info .auto-mark-controls.is-enabled{border-color:#86efac;background:#ecfdf5}.game-info .auto-mark-controls.needs-action{border-color:#fcd34d;background:#fffbeb}.game-info .auto-mark-title,.game-info .auto-mark-detail{display:block}.game-info .auto-mark-title{color:#18465f;font-weight:900}.game-info .auto-mark-detail{color:#5b6472;font-size:.86rem}.game-info .auto-mark-toggle-button{min-width:88px;margin:0;background:#1d4ed8}.game-info .auto-mark-toggle-button:hover:not(:disabled){background:#1e40af}.game-info .auto-mark-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:88px;padding:8px 12px;border-radius:999px;background:#dcfce7;color:#166534;font-size:.82rem;font-weight:800}.game-info .progressive-prize-panel{padding:14px;border-radius:8px;border:1px solid rgba(245,158,11,.45);background:linear-gradient(135deg,#fef3c7e6,#fffbebf2)}.game-info .progressive-prize-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.game-info .progressive-prize-title{color:#92400e;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.game-info .progressive-prize-amount{color:#b45309;font-size:1.1rem}.game-info .progressive-prize-rules{margin:0;color:#78350f;font-size:.84rem;line-height:1.45}@media (max-width: 520px){.game-info{padding:14px}.game-info .latest-number,.game-info .audio-controls,.game-info .auto-mark-controls{grid-template-columns:1fr;justify-items:center;text-align:center}.game-info .game-stats{grid-template-columns:1fr}}.winner-info{background-color:#ecfdf5;border:1px solid #86efac;padding:18px;margin:0;text-align:center;border-radius:8px;box-shadow:0 12px 26px #0f172a14}.winner-info h2{color:#047857;margin-bottom:10px}.winner-info p{font-size:1.05rem;color:#102a43;margin:0}.game-screen{display:flex;flex-direction:column;align-items:center;width:100%;min-height:100vh;padding:22px}.game-screen h1{margin:0;color:#11384f;font-size:clamp(1.7rem,3.5vw,2.7rem);line-height:1.05}.game-screen p{color:#3f4b5b;font-size:1rem}.game-screen .message{display:flex;align-items:center;width:100%;padding:14px 42px 14px 16px;margin:0;border-radius:8px;position:relative;box-shadow:0 10px 24px #0f172a14}.game-screen .message.success{background-color:#dcfce7;color:#14532d;border:1px solid #86efac}.game-screen .message.info{background-color:#e0f2fe;color:#075985;border:1px solid #7dd3fc}.game-screen .message.warning{background-color:#fef3c7;color:#7c2d12;border:1px solid #facc15}.game-screen .message.error{background-color:#fee2e2;color:#7f1d1d;border:1px solid #fca5a5}.game-screen .message .message-text{flex:1;text-align:left}.game-screen .message .close-button{position:absolute;top:50%;right:8px;width:32px;height:32px;padding:0;margin:0;transform:translateY(-50%);background:transparent;color:inherit;border:none;box-shadow:none;font-size:18px}.game-screen .game-room-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;width:min(100%,1180px);margin-bottom:22px;padding:14px;border-radius:var(--radius-lg);background:#ffffffd6;border:1px solid rgba(14,116,144,.18);box-shadow:0 18px 44px #0f172a14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.game-screen .game-title-block{display:flex;flex-direction:column;min-width:0}.game-screen .game-kicker{color:#0f766e;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.game-screen .game-status{display:inline-flex;align-items:center;justify-content:center;min-width:92px;min-height:36px;padding:8px 12px;border-radius:999px;font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.game-screen .game-status.live{background:#dcfce7;color:#166534;border:1px solid #86efac}.game-screen .game-status.waiting{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.game-screen .game-status.complete{background:#e0f2fe;color:#075985;border:1px solid #7dd3fc}.game-screen .game-layout{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,430px);gap:22px;align-items:start;width:min(100%,1180px)}.game-screen>.chat-room{width:min(100%,1180px);margin-top:22px}.game-screen .bingo-stage,.game-screen .game-side-panel,.game-screen .game-empty-card{border-radius:var(--radius-lg);border:1px solid rgba(14,116,144,.18);background:#ffffffd6;box-shadow:0 18px 44px #0f172a14}.game-screen .bingo-stage{display:flex;flex-direction:column;align-items:center;gap:16px;padding:clamp(14px,3vw,26px)}.game-screen .game-side-panel{display:flex;flex-direction:column;gap:14px;padding:0;background:transparent;border:none;box-shadow:none}.game-screen .live-game-notice{margin:0 0 12px;padding:10px 12px;border-radius:8px;background:#fee2e2;color:#991b1b;border:1px solid #fca5a5;font-weight:700}.game-screen .game-card-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:100%;margin-top:18px;padding-top:16px;border-top:1px solid rgba(14,116,144,.12)}.game-screen .game-action-stack{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:100%;margin-top:8px;padding-top:16px;border-top:1px solid rgba(14,116,144,.12)}.game-screen .view-card-button,.game-screen .admin-button,.game-screen .auto-draw-button,.game-screen .check-win-button,.game-screen .reset-button,.game-screen .claim-button,.game-screen .become-host-button,.game-screen .back-button{min-height:44px;padding:11px 18px;margin:0;border-radius:8px}.game-screen .view-card-button{background-color:#16a34a}.game-screen .view-card-button:hover:not(:disabled){background-color:#15803d}.game-screen .view-card-button.disabled{background-color:#86efac;cursor:not-allowed}.game-screen .admin-button{background-color:#0f766e}.game-screen .admin-button:hover:not(:disabled){background-color:#115e59}.game-screen .auto-draw-button{background-color:#2563eb}.game-screen .auto-draw-button:hover:not(:disabled){background-color:#1d4ed8}.game-screen .auto-draw-speed-panel{display:flex;flex-direction:column;gap:10px;width:100%;padding:14px;border-radius:8px;border:1px solid rgba(37,99,235,.22);background:linear-gradient(135deg,#eff6fff2,#f8fafcfa);text-align:left}.game-screen .auto-draw-speed-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.game-screen .auto-draw-speed-title{color:#1e3a8a;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.game-screen .auto-draw-speed-header strong{color:#1d4ed8;font-size:1rem}.game-screen .auto-draw-speed-note,.game-screen .auto-draw-speed-live{margin:0;color:#475569;font-size:.82rem;line-height:1.45}.game-screen .auto-draw-speed-live{color:#1d4ed8;font-weight:700}.game-screen .auto-draw-speed-presets{display:flex;flex-wrap:wrap;gap:8px}.game-screen .auto-draw-speed-preset{min-height:36px;padding:8px 12px;margin:0;border:1px solid #bfdbfe;border-radius:999px;background:#fff;color:#1e40af;font-size:.82rem;font-weight:800;cursor:pointer}.game-screen .auto-draw-speed-preset:hover{background:#eff6ff}.game-screen .auto-draw-speed-preset.is-active{border-color:#2563eb;background:#2563eb;color:#fff;box-shadow:0 8px 18px #2563eb38}.game-screen .auto-draw-speed-slider{display:grid;gap:6px;color:#334155;font-size:.82rem;font-weight:700}.game-screen .auto-draw-speed-slider input[type=range]{width:100%;accent-color:#2563eb}.game-screen .auto-draw-speed-range{color:#64748b;font-size:.76rem;font-weight:600}.game-screen .check-win-button{background-color:#db2777}.game-screen .check-win-button:hover:not(:disabled){background-color:#be185d}.game-screen .reset-button{background-color:#ef4444}.game-screen .reset-button:hover:not(:disabled){background-color:#dc2626}.game-screen .claim-button{background-color:#f97316}.game-screen .claim-button:hover:not(:disabled){background-color:#ea580c}.game-screen .become-host-button{background-color:#9333ea}.game-screen .become-host-button:hover:not(:disabled){background-color:#7e22ce}.game-screen .back-button{background-color:#334155}.game-screen .back-button:hover:not(:disabled){background-color:#1e293b}.game-screen .header-back-button{min-width:116px}.game-screen .bottom-back-button{margin-top:28px}.game-screen .start-game-message{width:100%;margin:0;padding:10px 12px;border-radius:8px;background:#fff7ed;color:#9a3412;text-align:center;border:1px solid #fed7aa}.game-screen footer{color:#475569}.game-screen .chat-notification-banner{position:fixed;top:18px;left:50%;z-index:1050;width:min(92vw,34rem);padding:14px 18px 16px;border:1px solid #99f6e4;border-radius:14px;background:linear-gradient(135deg,#f0fdfa,#fff);box-shadow:0 16px 36px #0f172a29;transform:translate(-50%);cursor:pointer;animation:chat-banner-enter .35s ease-out}.game-screen .chat-notification-banner:hover{border-color:#5eead4}.game-screen .chat-notification-label{display:block;margin-bottom:4px;color:#0f766e;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.game-screen .chat-notification-author{margin:0 0 4px;color:#11384f;font-size:.95rem;font-weight:800;overflow-wrap:anywhere}.game-screen .chat-notification-text{margin:0;color:#334155;font-size:.92rem;line-height:1.45;overflow-wrap:anywhere}.game-screen--centered{justify-content:center;text-align:center}.game-screen--centered .game-empty-card{width:min(100%,520px);padding:26px;margin-bottom:16px}.game-screen--centered h1{margin-top:4px;margin-bottom:12px}@keyframes chat-banner-enter{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (max-width: 900px){.game-screen{padding:14px}.game-screen .game-room-header,.game-screen .game-layout{width:100%}.game-screen .game-layout{grid-template-columns:1fr}}@media (max-width: 620px){.game-screen .game-room-header{grid-template-columns:1fr;justify-items:stretch;text-align:center}.game-screen .game-status,.game-screen .header-back-button{width:100%}}.winner-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;align-items:center;justify-content:center;background-color:#0000008c;padding:1rem}.winner-modal .winner-modal-content{width:min(100%,28rem);padding:2rem;border-radius:12px;background:#fff;text-align:center;box-shadow:0 18px 48px #0003}.winner-modal .winner-modal-eyebrow{display:inline-block;margin-bottom:.5rem;font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0f766e}.winner-modal h2{margin:0 0 1rem;font-size:2rem}.winner-modal p{margin:.75rem 0;line-height:1.5}.winner-modal .winner-modal-button{margin-top:1.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;background:#0f766e;color:#fff;font-size:1rem;font-weight:600;cursor:pointer}.game-over-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;align-items:center;justify-content:center;background-color:#0000008c;padding:1rem}.game-over-modal .game-over-modal-content{width:min(100%,28rem);padding:2rem;border-radius:12px;background:#fff;text-align:center;box-shadow:0 18px 48px #0003}.game-over-modal .game-over-modal-eyebrow{display:inline-block;margin-bottom:.5rem;font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1d4ed8}.game-over-modal h2{margin:0 0 1rem;font-size:2rem;color:#11384f}.game-over-modal p{margin:.75rem 0;line-height:1.5}.game-over-modal .game-over-modal-button{margin-top:1.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;background:#1d4ed8;color:#fff;font-size:1rem;font-weight:600;cursor:pointer}.terms-conditions-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a9e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.terms-modal-card{display:flex;flex-direction:column;width:min(100%,760px);max-height:min(92vh,900px);border-radius:12px;overflow:hidden;background:#fff;border:1px solid rgba(14,116,144,.18);box-shadow:0 28px 60px #0f172a38}.terms-modal-header{padding:20px 22px 14px;background:linear-gradient(135deg,#0e749014,#10b98114),#fff;border-bottom:1px solid rgba(14,116,144,.12)}.terms-modal-header h2{margin:4px 0 6px;color:#11384f;font-size:1.55rem}.terms-modal-eyebrow{display:inline-flex;color:#0f766e;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.terms-modal-meta{margin:0;color:#64748b;font-size:.88rem}.terms-scroll-panel{flex:1;overflow-y:auto;padding:18px 22px;text-align:left;color:#334155}.terms-scroll-panel h1{font-size:1.35rem;margin:0 0 .75rem;color:#11384f}.terms-scroll-panel h2{font-size:1.05rem;margin:1.2rem 0 .5rem;color:#18465f}.terms-scroll-panel p,.terms-scroll-panel li{line-height:1.55;font-size:.95rem}.terms-scroll-panel ul{padding-left:1.25rem;margin:.5rem 0 1rem}.terms-scroll-panel a{color:#0f766e;text-decoration:none}.terms-scroll-panel a:hover{text-decoration:underline}.terms-scroll-panel hr{border:none;border-top:1px solid #e2e8f0;margin:1rem 0}.terms-modal-footer{display:flex;flex-direction:column;gap:12px;padding:16px 22px 20px;border-top:1px solid #e2e8f0;background:#f8fafc}.terms-checkbox{display:flex;align-items:flex-start;gap:10px;color:#334155;font-size:.92rem;line-height:1.45;cursor:pointer}.terms-checkbox input{margin-top:3px;flex-shrink:0}.terms-agree-button{align-self:stretch;min-height:46px;border:none;border-radius:8px;background:#0f766e;color:#fff;font-size:1rem;font-weight:800;cursor:pointer}.terms-agree-button:hover:not(:disabled){background:#115e59}.terms-agree-button:disabled{background:#94a3b8;cursor:not-allowed}@media (max-width: 620px){.terms-conditions-modal{padding:10px}.terms-modal-header,.terms-scroll-panel,.terms-modal-footer{padding-left:16px;padding-right:16px}}:root{color-scheme:light;--bg: #f3fbf8;--surface: #ffffff;--text: #102a43;--muted: #5b6472;--primary: #0f766e;--primary-dark: #115e59;--accent: #f97316;--danger: #ef4444;--warning: #f59e0b;--radius: 12px;--radius-lg: 20px;--shadow: 0 18px 44px rgba(15, 23, 42, .08)}*{box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at 8% 8%,rgba(20,184,166,.12),transparent 30rem),radial-gradient(circle at 92% 18%,rgba(249,115,22,.12),transparent 26rem),linear-gradient(150deg,#effcf8,#f8fbff 48%,#fff8ef),var(--bg);background-attachment:fixed;color:var(--text);margin:0;padding:0;line-height:1.5;min-width:320px}main{display:flex;flex-direction:column;align-items:center;padding:20px}button{padding:10px 18px;margin:8px 0;font-size:.95rem;font-weight:600;cursor:pointer;background-color:var(--primary);color:#fff;border:none;border-radius:var(--radius);transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}button:hover:not(:disabled){background-color:var(--primary-dark);transform:translateY(-1px);box-shadow:0 8px 18px #1976d238}button:disabled{opacity:.6;cursor:not-allowed}button:focus-visible{outline:3px solid rgba(249,115,22,.38);outline-offset:2px}button.admin-button{background-color:var(--danger)}button.check-win-button{background-color:var(--warning)}button.toggle-win-button{background-color:var(--accent)}input,select,textarea{border:1px solid #d1d5db;border-radius:10px;padding:10px 12px;font:inherit;background:var(--surface);transition:border-color .2s ease,box-shadow .2s ease}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:3px solid rgba(15,118,110,.14)}footer{margin-top:40px;text-align:center}footer a{color:var(--primary);text-decoration:none}footer a:hover{text-decoration:underline}.login-logo{display:block;margin:0 auto 20px;max-width:30%;height:auto}.game-banner{display:block;margin:0 auto 20px;max-width:80%;height:auto}.generate-card-container{display:flex;flex-direction:column;align-items:center}@media (max-width: 768px){.login-logo{max-width:50%}.game-banner{max-width:100%}}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(135deg,#0f766e1a,#f973161a),#f3fbf8}.auth-card{width:min(100%,520px);padding:32px 28px;border-radius:8px;background:#ffffffeb;border:1px solid rgba(14,116,144,.18);box-shadow:0 18px 48px #0f172a14;text-align:center}.loading-screen,.login-screen{display:flex;flex-direction:column;align-items:center}.login-logo{max-width:220px;width:60%;height:auto;margin-bottom:20px}.auth-card h1{margin:0 0 12px;color:#11384f;font-size:clamp(1.8rem,4vw,2.4rem);letter-spacing:0}.auth-subtitle{margin:0 0 24px;color:#4b5563;line-height:1.6;font-size:1rem}.login-button{width:100%;max-width:320px;padding:14px 20px;font-size:1rem;font-weight:600;cursor:pointer;background:#0f766e;color:#fff;border:none;border-radius:8px;transition:transform .2s ease,box-shadow .2s ease}.login-button:hover{transform:translateY(-1px);background:#115e59;box-shadow:0 10px 24px #0f766e47}.loading-spinner{width:42px;height:42px;border:4px solid rgba(15,118,110,.15);border-top-color:#0f766e;border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.logout-button{position:fixed;bottom:20px;right:20px;padding:10px 20px;font-size:1rem;cursor:pointer;background-color:#ef4444;color:#fff;border:none;border-radius:8px;box-shadow:0 8px 20px #ef444440;transition:background-color .2s ease}.logout-button:hover{background-color:#dc2626}
