.room-chat{z-index:35;position:relative}.room-header-left:has(.room-chat){z-index:35;position:relative}.room-chat-trigger{position:relative}.room-chat-unread{border:1px solid var(--casino-gold);min-width:21px;height:21px;color:var(--casino-cream);background:#9f302b;border-radius:11px;place-items:center;padding:0 4px;font-size:11px;font-weight:700;line-height:1;display:grid;position:absolute;top:-7px;right:-7px;box-shadow:0 2px 5px #0009}.room-chat-panel{color:#f5e7c7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#10241df2;border:1px solid #a88851;border-radius:16px;flex-direction:column;width:min(330px,100vw - 24px);height:min(380px,54svh);display:flex;position:absolute;top:calc(100% + 12px);left:0;overflow:hidden;box-shadow:0 18px 38px #000a,inset 0 1px #e9d2a32b}.room-chat-heading{border-bottom:1px solid #bca06a40;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 12px;display:flex}.room-chat-heading h2{font-family:var(--font-heading);margin:0;font-size:19px;font-weight:600}.room-chat-heading small,.room-chat-status{color:#cbb88e;font-size:11px}.room-chat-heading button{color:#e8d2a8;cursor:pointer;background:#ffffff12;border:0;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}.room-chat-status{margin:0;padding:5px 16px}.room-chat-older{color:#f5e7c7;cursor:pointer;background:#ffffff12;border:1px solid #bca06a66;border-radius:8px;align-self:center;margin:5px 0 0;padding:4px 10px;font-size:11px}.room-chat-messages{flex:1;min-height:0;padding:8px 16px;font-size:13px;line-height:1.5;overflow-y:auto}.room-chat-messages p{overflow-wrap:anywhere;margin:10px 0}.room-chat-entry strong{color:#e8c480;font-size:11px;font-weight:650;display:block}.room-chat-entry span{white-space:pre-wrap}.room-chat-empty{color:#cbb88e}.room-chat-compose{border-top:1px solid #bca06a40;align-items:end;gap:8px;padding:8px;display:flex}.room-chat-compose textarea{resize:none;color:#f5e7c7;min-width:0;height:55px;font:inherit;background:#091911;border:1px solid #bca06a66;border-radius:8px;flex:1;padding:8px 11px;font-size:13px}.room-chat-compose textarea::placeholder{color:#b5aa8c}.room-chat-compose button{color:#15251b;cursor:pointer;background:#e2bd72;border:0;border-radius:8px;min-width:52px;height:38px;font-size:12px;font-weight:700}.room-chat-compose button:disabled{opacity:.45;cursor:not-allowed}.room-chat-readonly,.room-chat-error{color:#cbb88e;border-top:1px solid #bca06a40;margin:0;padding:13px 16px;font-size:12px}.room-chat-error{color:#ffe2a0;padding-top:6px}.room-chat-panel textarea:focus-visible,.room-chat-panel button:focus-visible,.room-chat-messages:focus-visible{outline-offset:2px;outline:2px solid #f3cb7d}.room-chat-panel{overscroll-behavior:contain}.room-chat-messages{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@media (width<=600px){.game-room:has(.room-chat) .room-header{height:96px}.room-header-left:has(.room-chat){align-items:flex-start;gap:8px;display:flex}.room-header-left:has(.room-chat) .room-spectators{flex:none;width:43px;height:43px;margin:0;position:static}.game-room:has(.room-chat) .room-code{max-width:60%;height:35px;top:49px;left:50%;transform:translate(-50%)}}@media (width<=600px),(width<=900px) and (height<=500px){.room-header-left:has(.room-chat-panel){z-index:45}.room-chat-panel{inset:var(--room-chat-viewport-top,0px) 0 auto;width:100vw;height:var(--room-chat-viewport-height,100dvh);max-height:none;padding-bottom:env(safe-area-inset-bottom);border:0;border-radius:0;position:fixed}.room-chat-heading{padding:max(8px, env(safe-area-inset-top)) 12px 8px;flex:none;align-items:center}.room-chat-heading button{width:44px;height:44px}.room-chat-messages{padding:10px 16px}.room-chat-compose{padding:8px 8px max(8px, env(safe-area-inset-bottom));flex:none;gap:8px}.room-chat-compose textarea{height:48px;padding:10px 12px;font-size:16px}.room-chat-compose button{min-width:56px;height:44px;font-size:14px}}.game-room{isolation:isolate;height:100svh;min-height:620px;color:var(--casino-cream);font-family:var(--font-sans);background:var(--casino-night);padding:18px 26px max(12px, env(safe-area-inset-bottom));flex-direction:column;align-items:center;display:flex;position:relative;overflow:hidden}.room-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;width:min(100%,1160px);height:88px;display:flex;position:relative}.room-icon{border:1.5px solid var(--casino-gold);width:58px;height:58px;color:var(--casino-gold);background:var(--casino-panel-gradient);cursor:pointer;border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 -3px 1px #a96e23,0 6px 12px #0009}.room-icon svg{stroke-width:2px;width:28px;height:28px}.room-header-actions{align-items:center;gap:16px;display:flex}.room-header-left{align-items:center;gap:12px;display:flex}.room-spectators{border:1px solid var(--casino-gold);background:var(--casino-panel-gradient);height:36px;color:var(--casino-cream);letter-spacing:.02em;white-space:nowrap;border-radius:18px;align-items:center;gap:7px;padding:0 12px;font-size:12px;display:inline-flex;box-shadow:inset 0 -2px #9f651d,0 4px 10px #0008}.room-spectators svg{width:16px;height:16px;color:var(--casino-gold);stroke-width:2px}.room-spectators-count{font-variant-numeric:tabular-nums;font-weight:700}.room-code{background:var(--casino-panel-gradient);max-width:45%;height:36px;color:var(--casino-cream);cursor:pointer;border:1px solid #c5a46199;border-radius:18px;align-items:center;gap:8px;padding:0 12px;display:flex;position:absolute;top:11px;left:50%;transform:translate(-50%);box-shadow:inset 0 -1px #9f651d88,0 3px 8px #0006}.room-code small{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--casino-cream-muted);font-size:9px;font-weight:600}.room-code strong{font-family:var(--font-mono);letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.room-code>span{align-items:center;gap:7px;min-width:0;display:flex}.room-code svg{width:14px;color:var(--casino-cream-muted);flex-shrink:0}.finished-room-strip{z-index:1;background:var(--casino-panel-gradient);border:1px solid #c5a461;border-radius:18px;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px 24px;width:min(100%,1100px);margin-bottom:14px;padding:12px 18px;display:flex;position:relative;box-shadow:inset 0 -2px #9f651d,0 8px 18px #0008}.finished-room-summary{flex-wrap:wrap;align-items:baseline;gap:4px 12px;min-width:0;display:flex}.finished-room-eyebrow{color:#cfb77e;letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:600}.finished-room-summary strong{color:#fff0c8;font-family:var(--font-heading);overflow-wrap:anywhere;font-size:clamp(17px,3vw,23px);font-weight:500}.finished-room-summary small{color:#cdb77f;flex-basis:100%}.finished-room-actions{flex-wrap:wrap;gap:8px;display:flex}.finished-room-restart{color:#231708;background:var(--casino-gold-gradient)}.finished-room-error{color:#ffe2a0;flex-basis:100%;margin:0}@media (width>=601px) and (width<=850px){.room-spectators-label{display:none}}.table-shell{background:repeating-linear-gradient(3deg, var(--casino-wood) 0px, #302015 2px, #25190f 4px, #342316 6px);width:min(100%,1100px);min-height:0;box-shadow:0 14px 0 #090c07, 0 22px 28px #000a, inset 0 0 0 5px #170f09, inset 0 0 0 7px var(--casino-wood-light), inset 0 0 24px 8px #080703;border:1px solid #785020;border-radius:110px 110px 65px 65px;flex:1;padding:19px;position:relative;transform:perspective(1350px)rotateX(25deg);container-type:inline-size}.table-felt{border:3px solid var(--casino-brass);background:radial-gradient(ellipse at 50% 35%, var(--casino-felt-bright), var(--casino-felt) 48%, var(--casino-felt-deep) 85%, #011d10);border-radius:90px 90px 47px 47px;height:100%;position:relative;box-shadow:0 0 0 3px #060b05,inset 0 0 0 4px #152c13,inset 0 0 45px 10px #001b10}.table-felt:before{content:"";pointer-events:none;border:3px solid #74924a35;border-radius:70px 70px 34px 34px;position:absolute;inset:14px}.table-felt:after{content:"";border-radius:inherit;opacity:.2;pointer-events:none;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.5' d='M0 0h180v180H0z'/%3E%3C/svg%3E");position:absolute;inset:0}.table-seat{z-index:3;flex-direction:column;align-items:center;display:flex;position:absolute}.seat-top{top:-5px;left:50%;transform:translate(-50%)}.seat-left{top:32%;left:-7px}.seat-right{top:32%;right:-7px}.seat-you{z-index:20;bottom:-1px;left:50%;transform:translate(-50%)}.player-plaque{border:1px solid var(--casino-gold);background:linear-gradient(135deg,#0a1d0c,#000c04 70%);border-radius:24px;align-items:center;gap:12px;min-width:160px;padding:5px 20px 5px 7px;display:flex;position:relative;box-shadow:inset 0 -2px #8a5718,0 5px 10px #0007}.player-avatar{background:radial-gradient(circle at 50% 65%,#52462b,#101a0d 75%);border:2px solid #f0ca70;border-radius:50%;place-items:center;width:57px;height:57px;font-size:43px;line-height:1;display:grid;overflow:hidden;box-shadow:inset 0 0 0 3px #091509}.player-details{flex-direction:column;gap:5px;display:flex}.player-name{align-items:center;gap:4px;max-width:105px;font-size:15px;display:flex}.player-name>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.jev-fallback-mark{color:#cbb27c;opacity:.48;flex-shrink:0;display:inline-flex}.jev-fallback-mark svg{stroke-width:1.6px;width:11px;height:11px}.player-count{align-items:center;gap:9px;font-size:19px;display:flex}.player-count i{text-align:center;color:#e4a241;background:repeating-linear-gradient(45deg,#b92b21 0 3px,#941e19 3px 5px);border:1px solid #ecc369;border-radius:2px;width:17px;height:24px;font-size:15px;font-style:normal}.seat-active .player-plaque{box-shadow:0 0 18px #edc67535,inset 0 -2px #bd842c}.turn-indicator{white-space:nowrap;color:#172311;letter-spacing:.06em;background:#e9be66;border:1px solid #f1d58a;border-radius:8px;padding:1px 8px;font-size:9px;font-weight:700;position:absolute;top:-11px;left:50%;transform:translate(-50%)}.turn-indicator:has(.turn-thinking-icon){align-items:center;gap:4px;display:inline-flex}.turn-thinking-icon{width:11px;height:11px;animation:1.2s linear infinite turn-thinking-spin}@keyframes turn-thinking-spin{to{transform:rotate(360deg)}}.opponent-hand{filter:drop-shadow(0 6px 3px #0007);justify-content:center;margin-top:5px;padding-left:19px;display:flex}.seat-you .opponent-hand{order:-1;margin-top:0;margin-bottom:5px}.table-card-back{background:#64180f;border:2px solid #ded8c3;border-radius:4px;width:35px;height:48px;margin-left:-19px;padding:3px;box-shadow:1px 0 2px #000}.table-card-back>span{color:#e0a04f;background:repeating-conic-gradient(#ac2921 0% 25%,#852019 0% 50%) 0 0/8px 8px;border:1px solid #31150d;place-items:center;width:100%;height:100%;font-size:17px;display:grid}.table-play-area{z-index:4;text-align:center;width:48%;position:absolute;top:22%;left:50%;transform:translate(-50%)}.pile-label{letter-spacing:.2em;color:#c5c892;font-size:9px}.table-pile{justify-content:center;padding-top:12px;display:flex}.table-pile .played-card{width:clamp(44px,7cqw,76px);height:clamp(64px,10cqw,106px);transform:rotate(var(--pile-angle));margin:0 -4px;animation:.25s ease-out table-deal}.table-prompt{text-align:center;color:#c1cba8;z-index:2;background:#001c0e18;border:1px solid #a9bd7c1f;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:44%;max-width:340px;min-height:54px;padding:8px 14px;font-size:14px;display:flex;position:absolute;top:63%;left:50%;transform:translate(-50%,-50%)}.table-prompt small{color:#a4b897;font-size:10px}.table-prompt .your-turn-text{color:#d5c38b;text-transform:uppercase;letter-spacing:.13em;font-weight:650}.your-hand{z-index:5;width:100%;height:clamp(108px,16cqw,160px);position:absolute;bottom:61px}.game-room .table-card{color:var(--casino-black);background:#fff;border:2px solid #111;border-radius:8px;padding:8px;overflow:hidden;box-shadow:0 5px 8px #0006}.game-room .played-card{padding:0}.game-room .played-card .card-value{font-size:36cqw}.game-room .played-card .card-suit{font-size:22cqw}.game-room .played-card .card-center{font-size:58cqw}.game-room .hand-card{transform-origin:50% 100%;width:clamp(65px,14cqw,147px);height:100%;transform:translateX(calc(-50% + var(--card-x))) translateY(var(--card-y)) rotate(var(--card-angle));z-index:calc(1 + var(--card-order));opacity:1;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .25s cubic-bezier(.2,.8,.25,1.3),box-shadow .2s,border-color .2s;position:absolute;top:0;left:50%}.game-room .table-card .text-suit-red{color:#d50918}.game-room .table-card .text-suit-black{color:#111}.game-room .hand-card[aria-pressed=true]{transform:translateX(calc(-50% + var(--card-x))) translateY(calc(var(--card-y) - var(--dev-selected-lift,27px))) rotate(var(--card-angle));border-color:#ffe39a;box-shadow:0 0 0 2px #edc675,0 0 22px #e9bb5b55,0 14px 16px #0008}.game-room.dev-show-guides .your-hand{outline-offset:4px;outline:1px dashed #f4d58499}.game-room.dev-show-guides .table-play-area,.game-room.dev-show-guides .table-prompt{outline-offset:5px;outline:1px dashed #8fd4a5aa}.game-room.dev-show-guides .your-hand:before{content:"HAND BOUNDS";color:#f4d584;font-family:var(--font-mono);letter-spacing:.12em;pointer-events:none;font-size:8px;position:absolute;top:-17px;left:0}.game-room.dev-show-card-order .your-hand{counter-reset:hand-card}.game-room.dev-show-card-order .hand-card:before{content:counter(hand-card);counter-increment:hand-card;z-index:2;color:#f4d584;width:17px;height:17px;font-family:var(--font-mono);pointer-events:none;background:#173d28e8;border-radius:50%;place-items:center;font-size:9px;display:grid;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.game-room.dev-reduce-motion .hand-card,.game-room.dev-reduce-motion .table-pile .played-card{transition:none;animation:none}.game-room .hand-card:active:not(:disabled){transform:translateX(calc(-50% + var(--card-x))) translateY(calc(var(--card-y) - 17px)) rotate(var(--card-angle)) scale(.98)}@media (hover:hover){.game-room .hand-card:hover:not(:disabled):not([aria-pressed=true]){transform:translateX(calc(-50% + var(--card-x))) translateY(calc(var(--card-y) - 15px)) rotate(var(--card-angle))}.table-action:hover:not(:disabled),.room-icon:hover{filter:brightness(1.18)}}.game-room button:focus-visible,.game-room a:focus-visible,.table-dialog button:focus-visible,.table-dialog a:focus-visible{outline:3px solid var(--casino-focus);outline-offset:4px}.game-room .hand-card:focus-visible{z-index:30}.table-controls{z-index:40;flex-shrink:0;grid-template-columns:repeat(3,1fr);gap:18px;width:min(100%,880px);padding-top:23px;display:grid;position:relative}.table-action{z-index:41;border:1.5px solid var(--casino-gold);height:60px;color:var(--casino-gold);cursor:pointer;background:linear-gradient(135deg,#0b2513,#001108 80%);border-radius:24px;font-size:23px;font-weight:550;transition:transform .15s,filter .15s;position:relative;box-shadow:inset 0 -3px #a5681f,inset 0 2px #fff2,0 6px 10px #0008}.table-action:active:not(:disabled){transform:translateY(3px)}.table-action:disabled{cursor:not-allowed;color:#b5a978}.table-action.action-play{background:var(--casino-gold-gradient);color:var(--casino-black);box-shadow:inset 0 -3px #aa681b,inset 0 2px #fff6,0 6px 10px #0008}.action-play:disabled{filter:saturate(.65)brightness(.85)}.table-footnote{color:#a99d6e;letter-spacing:.14em;grid-column:1/-1;justify-content:center;align-items:center;gap:25px;margin-top:-5px;font-size:10px;display:flex}.table-footnote button{cursor:pointer;letter-spacing:.03em}.table-footnote button:disabled{opacity:.4;cursor:not-allowed}.table-dialog{background:var(--casino-panel);color:var(--casino-cream);border:1px solid #c5a461;border-radius:22px}.table-dialog [data-slot=dialog-description]{color:#b9b99f;line-height:1.8}.table-menu-dialog,.leave-table-dialog{background:radial-gradient(ellipse at 50% 0%, #a7803030, transparent 62%), var(--casino-panel);gap:12px;width:min(400px,100% - 2rem);max-width:400px;padding:26px;box-shadow:0 24px 70px #0008}.table-menu-dialog [data-slot=dialog-title],.leave-table-dialog [data-slot=dialog-title]{font-family:var(--font-heading);color:#fff0c8;font-size:22px}.table-menu-dialog [data-slot=dialog-description]{margin-bottom:4px}.table-menu-actions{gap:10px;display:grid}.table-menu-actions>.table-small-button,.table-menu-actions .table-lobby-option .table-small-button{width:100%}.table-menu-actions .table-lobby-option{border-top:1px solid #c5a46155;margin-top:4px;padding-top:16px}.table-dialog.winner-dialog{text-align:center;background:radial-gradient(at 50% 35%,#80592133,#0000 58%),radial-gradient(at 50% 65%,#a6004526,#0000 65%),#091b12;border-color:#c5a461a6;gap:12px;width:min(440px,100% - 2rem);max-width:440px;max-height:calc(100dvh - 2rem);padding:28px 28px 30px;overflow-y:auto;box-shadow:0 28px 100px #000a,inset 0 0 0 5px #c5a4610d}.winner-eyebrow{color:#cfb77e;letter-spacing:.28em;text-transform:uppercase;margin:0;font-size:10px;font-weight:600}.winner-artwork{pointer-events:none;min-width:0}.winner-artwork-loss img{filter:drop-shadow(0 8px 16px #e9005933);width:100%;height:auto;margin:0 auto;display:block}.winner-emblem{filter:drop-shadow(0 12px 18px #0007);width:min(100%,290px);height:clamp(180px,32dvh,270px);margin:0 auto}.winner-emblem-fallback{object-fit:contain;width:100%;height:100%}.winner-wordmark{aspect-ratio:2.8;filter:drop-shadow(0 6px 10px #e9005933);margin-top:-32px;position:relative;overflow:hidden}.winner-wordmark img{width:100%;height:auto;position:absolute;top:50%;left:0;transform:translateY(-54%)}.winner-dialog [data-slot=dialog-title]{font-family:var(--font-heading);color:#fff0c8;text-wrap:balance;overflow-wrap:anywhere;margin-top:4px;font-size:clamp(24px,6vw,30px)}.winner-dialog [data-slot=dialog-description]{text-wrap:balance}.winner-dialog .table-small-button{color:#231708;background:linear-gradient(135deg,#ffe2a0,#c99843);border-color:#ffe2a0;margin-top:8px;padding:13px 20px;font-size:13px;font-weight:700;box-shadow:0 4px 16px #0004}.winner-dialog .table-small-button:hover{background:#ffe2a0}.table-small-button{color:var(--casino-gold);background:var(--casino-panel-raised);text-align:center;cursor:pointer;border:1px solid #c5a461;border-radius:10px;justify-content:center;align-items:center;padding:10px 18px;display:inline-flex}.table-dialog .table-small-button{min-height:44px;font-size:13px;font-weight:600;line-height:1.25;transition:background .15s,border-color .15s,color .15s}.table-menu-primary{color:#251b0a;background:var(--casino-gold-gradient);border-color:#ffe2a0}.table-menu-primary:hover{background:#ffe2a0}.table-lobby-option{text-align:center;justify-items:center;gap:7px;display:grid}.table-lobby-option small{color:#b9b99f;font-size:11px;line-height:1.35}.table-leave-button{color:#ffe2d6;background:#572c2a;border-color:#c78175}.table-leave-button:hover{background:#713732;border-color:#e7a293}.winner-dialog .table-lobby-option{width:100%}.winner-dialog .table-lobby-option .table-small-button{color:#f5d99d;width:100%;box-shadow:none;background:0 0;border-color:#a38250;margin-top:0}.winner-dialog .table-lobby-option .table-small-button:hover{background:#c5a46122}.leave-table-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:10px;display:grid}@media (width<=420px){.leave-table-actions{grid-template-columns:1fr}}.leave-table-actions button:disabled{cursor:wait;opacity:.65}.leave-table-error{color:#ffb2a5}.room-departure-notice{top:max(16px, env(safe-area-inset-top));z-index:40;width:max-content;max-width:calc(100vw - 32px);color:var(--casino-cream);background:var(--casino-panel);border:1px solid #c5a461;border-radius:12px;margin:0;padding:12px 18px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #0007}.table-settings-list{gap:16px;display:grid}.bot-strategy-settings{gap:10px;display:grid}.settings-section-heading{gap:2px;padding-bottom:4px;display:grid}.settings-section-heading>span{color:#f3cf84;font-family:var(--font-heading);font-size:16px}.settings-section-heading>small,.bot-strategy-note{color:#929f87;font-size:10px;line-height:1.5}.bot-strategy-row{background:#0b2415;border:1px solid #8f743f66;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:8px 9px 8px 13px;display:flex}.bot-strategy-name{color:#f7dfab;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.bot-strategy-toggle{background:#031109;border:1px solid #735c30;border-radius:9px;flex-shrink:0;grid-template-columns:1fr 1fr;padding:2px;display:grid}.bot-strategy-toggle button{color:#8f9d85;cursor:pointer;border-radius:6px;min-width:59px;padding:6px 8px;font-size:10px;transition:color .15s,background .15s,box-shadow .15s}.bot-strategy-toggle button[aria-pressed=true]{color:#172311;background:linear-gradient(160deg,#ffe39a,#e9b94e);box-shadow:inset 0 -1px #9a6220}.bot-strategy-note{margin:0}.table-setting-row{border-bottom:1px solid #8f743f33;justify-content:space-between;align-items:center;gap:20px;padding:12px 0;display:flex}.table-setting-row strong{color:#f3cf84;font-family:var(--font-heading);font-size:15px}.table-setting-row p{color:#b9b99f;margin:5px 0 0;font-size:12px;line-height:1.55}.turn-notification-settings{border-top:1px solid #8f743f66;gap:10px;padding-top:16px;display:grid}.turn-notification-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.turn-notification-row strong,.turn-notification-device strong{font-family:var(--font-heading);color:#f3cf84;font-size:15px}.turn-notification-row p,.turn-notification-device p{color:#b9b99f;margin:5px 0 0;line-height:1.55}.table-setting-switch{cursor:pointer;background:#031109;border:1px solid #8f743f;border-radius:999px;flex:none;width:52px;height:32px;padding:0;transition:background .18s,border-color .18s;position:relative}.table-setting-switch:after{content:"";background:#b9b99f;border-radius:50%;width:22px;height:22px;transition:transform .18s,background .18s;position:absolute;top:4px;left:4px;box-shadow:0 2px 4px #0005}.table-setting-switch[aria-checked=true]{background:linear-gradient(160deg,#ffe39a,#e9b94e);border-color:#f3cf84}.table-setting-switch[aria-checked=true]:after{background:#172311;transform:translate(20px)}.table-setting-switch:disabled,.table-setting-switch[aria-disabled=true]{opacity:.65;cursor:wait}.table-setting-switch:focus-visible{outline-offset:3px;outline:3px solid #f3cf84}@media (prefers-reduced-motion:reduce){.table-setting-switch,.table-setting-switch:after{transition:none}}.turn-notification-feedback{color:#f3cf84;margin:0}.turn-notification-device{background:#0b2415;border:1px solid #8f743f66;border-radius:12px;padding:12px}.turn-notification-device-button{width:100%;margin-top:12px}.turn-notification-device-switch{margin-top:12px}.turn-notification-device-button:focus-visible{outline-offset:3px;outline:3px solid #f3cf84}.room-loading{font-family:var(--font-heading);justify-content:center;font-size:24px}@keyframes table-deal{0%{opacity:0;translate:0 30px}to{opacity:1;translate:0}}@media (width>=1000px) and (height>=740px){.game-room{padding-top:24px}.room-header{height:95px}.table-controls{padding-top:28px}.table-prompt{top:58%}.your-hand{bottom:65px}}@media (width<=600px){.game-room{min-height:570px;padding:12px 10px max(9px, env(safe-area-inset-bottom))}.room-header{height:76px;padding:0 3px}.finished-room-strip{border-radius:12px;gap:9px;margin-bottom:10px;padding:10px 12px}.finished-room-actions{width:100%}.finished-room-actions .table-small-button{flex:auto;padding:8px}.room-icon{width:43px;height:43px}.room-icon svg{width:24px;height:24px}.room-header-actions{gap:8px}.room-header-left{display:block;position:relative}.room-spectators{justify-content:center;gap:4px;min-width:43px;height:22px;padding:0 5px;font-size:11px;position:absolute;top:47px;left:0}.room-spectators svg{width:13px;height:13px}.room-spectators-label{display:none}.room-code{gap:6px;max-width:41%;height:35px;padding:0 10px;top:4px}.help-icon{width:39px;height:39px;margin-top:2px}.table-shell{border-radius:66px 66px 37px 37px;padding:10px}.table-felt{border-width:2px;border-radius:55px 55px 29px 29px}.table-felt:before{border-width:2px;border-radius:46px 46px 22px 22px;inset:9px}.player-plaque{border-radius:18px;gap:7px;min-width:100px;padding:4px 10px 4px 4px}.player-avatar{width:38px;height:38px;font-size:30px}.player-name{max-width:66px;font-size:12px}.player-count{gap:6px;font-size:15px}.player-count i{width:12px;height:18px;font-size:11px}.player-details{gap:2px}.seat-top{top:-3px}.seat-top .player-plaque{min-width:122px}.seat-left{top:31%;left:-10px}.seat-right{top:31%;right:-10px}.seat-you .player-plaque{min-width:136px;padding:5px 15px 5px 5px}.seat-you .player-avatar{width:45px;height:45px;font-size:35px}.seat-you .player-name{font-size:14px}.table-card-back{width:27px;height:37px;margin-left:-17px}.opponent-hand{margin-top:3px;padding-left:17px}.table-card-back>span{font-size:12px}.turn-indicator{font-size:8px;top:-10px}.table-brand{top:31%}.brand-spade{font-size:100px}.table-brand>span:not(.brand-spade){letter-spacing:.27em;font-size:8px}.brand-rule{margin-top:8px}.brand-rule:before,.brand-rule:after{width:29px}.table-prompt{border-radius:11px;width:58%;min-height:55px;padding:8px;font-size:13px;top:66%}.table-prompt small{font-size:9px}.your-hand{height:28cqw;bottom:66px}.game-room .hand-card{border-radius:6px;width:19cqw;padding:4px}.game-room .hand-card[aria-pressed=true]{transform:translateX(calc(-50% + var(--card-x))) translateY(calc(var(--card-y) - var(--dev-selected-lift,20px))) rotate(var(--card-angle))}.table-play-area{width:49%;top:34%}.table-pile .played-card{width:12cqw;height:18cqw}.pile-label{font-size:7px}.table-controls{gap:11px;padding:20px 13px 0}.table-action{border-radius:18px;height:49px;font-size:20px}.table-footnote{gap:18px;margin-top:0;font-size:8px}}.game-room-dev-tools{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));z-index:50;color:#dfe8bc;width:min(300px,100vw - 32px);font-family:var(--font-mono);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(145deg,#12261aee,#06130cee 80%);border:1px solid #8da45a;border-radius:14px;position:fixed;overflow:hidden;box-shadow:0 14px 30px #0009,inset 0 1px #d5e18b2e}.game-room-dev-trigger{color:#f4d584;width:100%;font:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;touch-action:none;background:0 0;border:0;align-items:center;gap:8px;padding:10px 12px;font-size:10px;font-weight:700;display:flex}.game-room-dev-tools.is-dragging{-webkit-user-select:none;user-select:none}.game-room-dev-tools.is-dragging .game-room-dev-trigger{cursor:grabbing}.game-room-dev-trigger>svg{width:15px;height:15px}.game-room-dev-trigger>svg:last-child{margin-left:auto;transition:transform .2s}.game-room-dev-tools:not(.is-open) .game-room-dev-trigger>svg:last-child{transform:rotate(-90deg)}.game-room-dev-live-dot{background:#9ed26d;border-radius:50%;width:7px;height:7px;box-shadow:0 0 9px #9ed26d}.game-room-dev-panel{scrollbar-color:#718d4e #06130c;border-top:1px solid #8da45a44;max-height:min(76svh,560px);padding:12px;overflow-y:auto}.game-room-dev-section+.game-room-dev-section{border-top:1px solid #8da45a35;margin-top:16px;padding-top:15px}.game-room-dev-section-heading{color:#f4d584;letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:9px;font-weight:700;display:flex}.game-room-dev-section-heading>svg{color:#94b276;width:14px;height:14px}.game-room-dev-live-label{color:#9ed26d;font-size:8px}.game-room-dev-viewport{color:#f2f4dc;align-items:center;gap:9px;display:flex}.game-room-dev-viewport svg{color:#9ed26d;width:18px;height:18px}.game-room-dev-viewport strong{letter-spacing:-.04em;font-size:17px;font-weight:500}.game-room-dev-meta{color:#8ea18b;flex-wrap:wrap;gap:5px 10px;margin-top:7px;font-size:8px;line-height:1.5;display:flex}.game-room-dev-range{margin-top:13px;display:block}.game-room-dev-range-header{color:#dfe8bc;justify-content:space-between;font-size:10px;display:flex}.game-room-dev-range-header output{color:#f4d584}.game-room-dev-range input[type=range]{accent-color:#d6a848;cursor:ew-resize;width:100%;height:18px;margin:5px 0 0;display:block}.game-room-dev-range-hint{color:#839684;font-size:8px;display:block}.game-room-dev-toggle{color:#cbd8b2;cursor:pointer;align-items:center;gap:9px;min-height:28px;font-size:10px;display:flex}.game-room-dev-toggle input{accent-color:#d6a848;width:14px;height:14px}.game-room-dev-reset{color:#b8c99c;width:100%;font:inherit;cursor:pointer;background:#0b1d12;border:1px solid #8da45a66;border-radius:8px;justify-content:center;align-items:center;gap:7px;margin-top:16px;padding:8px;font-size:9px;display:flex}.game-room-dev-reset svg{width:13px;height:13px}.game-room-dev-tools button:hover{filter:brightness(1.2)}.game-room-dev-tools button:focus-visible,.game-room-dev-tools input:focus-visible{outline-offset:2px;outline:2px solid #fff0b5}@media (height<=700px) and (width>=601px){.game-room{min-height:440px;padding-top:8px}.room-header{height:59px}.room-icon{width:42px;height:42px}.room-code{top:3px}.table-shell{padding:12px}.player-avatar{width:38px;height:38px;font-size:29px}.player-plaque{border-radius:18px;min-width:120px;padding:4px 12px 4px 5px}.player-name{font-size:12px}.player-count{font-size:13px}.player-count i{width:12px;height:17px;font-size:10px}.table-card-back{width:23px;height:30px;margin-left:-14px}.opponent-hand{padding-left:14px}.table-brand{top:23%}.brand-spade{font-size:80px}.table-brand>span:not(.brand-spade){font-size:8px}.brand-rule{margin-top:4px}.table-prompt{min-height:42px;padding:5px;font-size:12px;top:60%}.your-hand{height:100px;bottom:42px}.game-room .hand-card{width:75px}.table-controls{gap:8px;padding-top:16px}.table-action{height:42px;font-size:19px}.table-pile .played-card{width:45px;height:66px}.table-play-area{top:25%}}@media (width<=600px) and (height<=700px){.game-room{min-height:560px}.room-header{height:65px}.room-code{max-width:42%}.room-header-actions{gap:5px}.room-header-actions .room-icon{width:34px;height:36px}.room-header-actions svg{width:21px}.seat-left,.seat-right{top:25%}.seat-top .opponent-hand{transform-origin:top;transform:scale(.85)}.table-play-area{top:28%}.table-pile{padding-top:4px}.table-pile .played-card{width:10cqw;height:15cqw}.table-prompt{min-height:43px;padding:5px;font-size:11px;top:59%}.table-prompt small{font-size:8px}.your-hand{height:25cqw;bottom:57px}.table-brand{top:24%}}@media (width>=601px) and (height<=500px){.game-room{min-height:360px;padding:6px 18px}.room-header{height:49px}.room-icon{width:36px;height:36px}.room-code{top:0}.table-shell{padding:9px}.table-seat{transform-origin:top;transform:scale(.8)}.seat-top{transform:translate(-50%)scale(.8)}.seat-left,.seat-right{top:3px}.seat-you{bottom:-10px;left:72%;transform:translate(-50%)scale(.75)}.your-hand{width:58%;height:77px;bottom:36px;left:42%;container-type:inline-size}.game-room .hand-card{width:57px}.table-play-area{width:30%;top:35%;left:23%}.table-pile{padding-top:3px}.table-pile .played-card{width:34px;height:47px}.table-prompt{gap:1px;width:33%;min-height:33px;padding:3px;font-size:10px;top:83%;left:23%}.table-prompt small{font-size:8px}.table-brand{display:none}.table-controls{gap:5px;width:80%;padding-top:13px}.table-action{height:35px;font-size:16px}.table-footnote{margin-top:0;font-size:8px}}@media (width<=600px){.game-room-dev-tools{top:max(62px, env(safe-area-inset-top));right:max(10px, env(safe-area-inset-right));width:min(280px,100vw - 20px)}}@media (prefers-reduced-motion:reduce){.game-room *,.game-room :before,.game-room :after{transition:none!important;animation:none!important}}.online-bot-settings{gap:.75rem;display:grid}.online-bot-settings p{margin:0;font-size:.85rem}
