@import "https://fonts.googleapis.com/css2?family=Outfit:wght@700;900&display=swap";:root{--bg-dark:#0f172a;--bg-gradient:linear-gradient(135deg, #0f172a 0%, #1e1b4b 100%);--glass-bg:#ffffff0d;--glass-border:#ffffff1a;--glass-shadow:0 8px 32px 0 #0000005e;--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent-color:#8b5cf6;--accent-hover:#7c3aed;--danger-color:#ef4444;--success-color:#10b981}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-gradient);color:var(--text-primary);background-attachment:fixed;flex-direction:column;min-height:100dvh;font-family:Inter,system-ui,-apple-system,sans-serif;display:flex;overflow:auto}#root{flex-direction:column;width:100%;min-height:100dvh;display:flex}.app-main,.game-page{min-width:0}.home-route{justify-content:center;align-items:center;width:100%;min-width:0;min-height:0;padding:2rem;display:flex}.home-panel{flex:0 auto}.game-table-area{min-width:552px;min-height:clamp(552px,100dvh - 426px,732px);padding:16px}.square-table-stage{aspect-ratio:1;isolation:isolate;flex:none;width:clamp(520px,100dvh - 458px,700px);position:relative}.glass-panel.square-game-table{isolation:isolate;border-radius:28px;position:absolute;inset:17%}.square-game-table:before{content:"";z-index:0;pointer-events:none;border:1px solid #c4b5fd1f;border-radius:18px;position:absolute;inset:12px;box-shadow:inset 0 0 26px #8b5cf614}.square-game-table>div{z-index:1}.table-player-seat{width:128px;min-width:128px}.player-chat-speech{z-index:300;color:#fff;overflow-wrap:anywhere;pointer-events:none;background:linear-gradient(135deg,#5b21b6fa,#1e1b4bfa);border:1px solid #c4b5fda6;border-radius:13px 13px 13px 4px;width:max-content;max-width:220px;max-height:70px;padding:.52rem .68rem;font-size:.72rem;font-weight:700;line-height:1.3;animation:2s both player-chat-speech;position:absolute;bottom:calc(100% + 10px);left:50%;overflow:hidden;box-shadow:0 10px 28px #00000080,0 0 18px #8b5cf640}.player-chat-speech:after{content:"";border:6px solid #0000;border-top-color:#5b21b6fa;position:absolute;top:100%;left:18px}.game-chat-panel{background:linear-gradient(145deg,#0f172af5,#1e1b4bcc);border:1px solid #8b5cf640;border-radius:13px;flex:none;grid-template-rows:auto minmax(0,1fr) auto;width:100%;min-width:0;height:230px;margin-top:.25rem;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff09}.game-chat-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:.42rem .58rem;display:flex}.game-chat-header>div{color:#c4b5fd;align-items:center;gap:.4rem;display:flex}.game-chat-header strong{font-size:.76rem}.game-chat-header small{color:var(--text-secondary);font-size:.58rem}.game-chat-header-actions{align-items:center;gap:.45rem;display:flex}.mobile-chat-toggle,.mobile-chat-close,.mobile-chat-backdrop{display:none}.hand-card-viewport{flex:auto;min-width:0;max-width:100%;position:relative}.hand-finished-state{width:min(440px,100%);min-height:92px;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.18rem;margin:0 auto;display:flex}.hand-finished-state>span{color:#34d399;background:#10b9811f;border:1px solid #34d3998c;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:900;display:grid;box-shadow:0 0 16px #10b98133}.hand-finished-state strong{color:var(--text-primary);font-size:.9rem}.hand-finished-state small{font-size:.68rem}.hand-scroll-hint{z-index:40;color:#fff;white-space:nowrap;background:#5b21b6f5;border:1px solid #c4b5fdb8;border-radius:999px;align-items:center;gap:.12rem;min-width:34px;min-height:36px;padding:.34rem .38rem;font-size:.61rem;font-weight:900;display:none;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 16px #0f172ab3,0 0 14px #8b5cf67a}.hand-scroll-hint.is-left{left:3px}.hand-scroll-hint.is-left span{min-width:1ch}.hand-scroll-hint.is-right{right:3px}@media (width>=621px){.player-hand-panel{min-height:170px}.player-hand-cards{position:relative}.player-hand-cards>button{z-index:2}.hand-card-viewport{flex:0 auto;width:fit-content}}@keyframes mobile-chat-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.game-chat-messages{scrollbar-width:thin;scrollbar-color:#8b5cf661 transparent;flex-direction:column;gap:.38rem;min-height:0;padding:.42rem .5rem;display:flex;overflow-y:auto}.game-chat-empty{color:#94a3b8b8;margin:auto;font-size:.68rem}.game-chat-message{align-self:flex-start;max-width:86%}.game-chat-message.is-own{align-self:flex-end}.game-chat-meta{color:var(--text-secondary);justify-content:space-between;gap:.6rem;margin:0 .24rem .16rem;font-size:.54rem;display:flex}.game-chat-meta strong{color:#c4b5fd}.game-chat-bubble{overflow-wrap:anywhere;background:#ffffff0e;border:1px solid #ffffff12;border-radius:4px 10px 10px;padding:.38rem .5rem;font-size:.67rem;line-height:1.3}.game-chat-message.is-own .game-chat-bubble{background:#6d28d99e;border-color:#8b5cf652;border-radius:10px 4px 10px 10px}.game-chat-form{border-top:1px solid #ffffff0f;padding:.4rem}.game-chat-error{color:#fda4af;margin-bottom:.28rem;font-size:.58rem}.game-chat-controls{gap:.35rem;display:flex}.game-chat-controls input{color:#fff;background:#03061694;border:1px solid #ffffff17;border-radius:8px;outline:none;flex:1;min-width:0;padding:.48rem .58rem;font-size:.68rem}.game-chat-controls input:focus{border-color:#8b5cf6a6}.game-chat-controls button{color:#fff;cursor:pointer;background:#7c3aed;border:0;border-radius:8px;flex:0 0 34px;place-items:center;width:34px;font-size:.7rem;font-weight:850;display:grid}.game-chat-controls button:disabled{opacity:.42;cursor:default}@media (width>=1850px){.player-hand-panel{min-height:230px}.game-chat-panel{border-top:none;border-bottom:none;border-right:none;border-radius:0;width:min(20vw,380px);min-width:320px;height:auto;margin:0;position:fixed;top:155px;bottom:0;right:0}}@media (width>=1000px) and (height>=800px){.app-header{padding:.5rem 1rem!important}.app-header .title-text{font-size:2.5rem!important}.game-status-bar{margin:.5rem 1rem!important;padding:.5rem 1rem!important}.player-hand-panel{gap:.25rem!important;padding:.5rem!important}.player-hand-panel .hand-card-scroll{padding:20px 10px 2px!important}}@keyframes player-chat-speech{0%{opacity:0;transform:translate(-50%,8px)scale(.94)}10%,80%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-7px)scale(.98)}}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:16px}.btn{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .2s}.btn:hover{background:var(--accent-hover);transform:translateY(-2px)}.input-field{border:1px solid var(--glass-border);color:var(--text-primary);background:#0003;border-radius:8px;outline:none;width:100%;padding:12px 16px;font-size:1rem;transition:border-color .2s}.input-field:focus{border-color:var(--accent-color)}.title-text{text-transform:uppercase;letter-spacing:5px;color:#f9c;-webkit-text-stroke:2px #903;text-shadow:4px 4px #f36,8px 8px #603,10px 10px 15px #000c;font-family:Outfit,sans-serif;font-weight:900;animation:3s ease-in-out infinite float-title}@keyframes float-title{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-5px)scale(1.02)}}.animated-o{transform-origin:50%;filter:drop-shadow(0 0 15px #db277799);animation:6s ease-in-out infinite pulse-spin}@keyframes pulse-spin{0%{transform:scale(1)rotate(0)}25%{transform:scale(1.1)rotate(20deg)}50%{transform:scale(.95)rotate(0)}75%{transform:scale(1.05)rotate(-20deg)}to{transform:scale(1)rotate(0)}}.wrinkles{transform-origin:50px 50px;animation:10s linear infinite alternate wrinkle-spin}@keyframes wrinkle-spin{0%{transform:rotate(-15deg)}to{transform:rotate(15deg)}}.score-screen{z-index:100;background:var(--bg-gradient);width:100%;height:auto;position:fixed;inset:0;overflow:hidden auto;gap:clamp(.75rem,2vh,1.5rem)!important;min-height:100dvh!important;padding:clamp(1rem,3vh,2rem) clamp(.75rem,2vw,2rem)!important}.score-summary{flex:none;width:min(100%,540px);flex-wrap:nowrap!important;gap:clamp(.4rem,2vw,2rem)!important}.score-summary-card{flex:0 240px;min-width:0;padding:clamp(.35rem,1.2vh,1rem) clamp(.5rem,2vw,2rem)!important}.score-summary-card>div:first-child{font-size:clamp(.55rem,1.5vmin,.9rem)!important}.score-summary-card>div:last-child{font-size:clamp(1rem,3.5vmin,2rem)!important}.score-title{flex:none;line-height:1.05;margin:0!important;font-size:clamp(2rem,6vmin,4rem)!important}.score-table-panel{flex-direction:column;flex:none;display:flex;width:min(100%,1000px)!important;padding:clamp(1rem,2.5vmin,2rem)!important;overflow:auto visible!important}.score-table-heading{flex:none;font-size:clamp(1.1rem,2.5vmin,1.5rem);line-height:1.1;margin-bottom:clamp(.75rem,1.5vh,1.5rem)!important}.stats-table{table-layout:fixed;width:100%;max-width:100%}.score-table-panel .stats-table{flex:none;height:auto}.stats-table th,.stats-table td{text-overflow:ellipsis;min-width:0;line-height:1.2;overflow:hidden;padding:clamp(.6rem,1.5vmin,.9rem)!important;font-size:clamp(.75rem,1.75vmin,1.1rem)!important}.stats-table th:first-child,.stats-table td:first-child{width:6%!important}.stats-table th:nth-child(2),.stats-table td:nth-child(2){width:20%}.stats-table th:nth-child(3),.stats-table td:nth-child(3){width:22%}.stats-table th:nth-child(4),.stats-table td:nth-child(4){width:12%}.stats-table th:nth-child(n+5),.stats-table td:nth-child(n+5){width:8%}.stats-table td:nth-child(2),.stats-table td:nth-child(3){overflow-wrap:anywhere;white-space:normal}.score-actions{flex:none;justify-content:center;max-width:100%;gap:clamp(.35rem,1.5vw,1rem)!important;margin-top:0!important;padding-bottom:0!important}.score-actions .btn{white-space:nowrap;padding:clamp(.45rem,1.4vh,1rem) clamp(.6rem,2vw,2rem)!important;font-size:clamp(.65rem,2vmin,1.2rem)!important}@media (width<=650px){.points-label{display:none}.score-screen{border-radius:0}}@media (height<=560px){.score-screen{gap:.2rem!important;padding-top:.2rem!important;padding-bottom:.2rem!important}.score-summary-card{padding-top:.2rem!important;padding-bottom:.2rem!important}.score-table-heading{margin-bottom:.1rem!important}.stats-table th,.stats-table td{padding-top:.35rem!important;padding-bottom:.35rem!important}}.pause-overlay{z-index:450;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:radial-gradient(circle,#8b5cf629,#0000 42%),#070a1cbd;place-items:center;padding:1rem;animation:.45s ease-out both pause-fade-in;display:grid;position:fixed;inset:0}.trick-resolution-banner{z-index:180;pointer-events:none;text-align:center;background:linear-gradient(135deg,#5b21b6f0,#1e1b4bf5);border:1px solid #c084fc8c;border-radius:14px;flex-direction:column;align-items:center;width:max-content;max-width:min(88%,390px);padding:.6rem 1rem;animation:.38s cubic-bezier(.2,.85,.25,1.15) both trick-resolution-in;display:flex;position:absolute;top:.45rem;left:50%;transform:translate(-50%);box-shadow:0 12px 34px #00000080,0 0 28px #c084fc38}.trick-resolution-banner>span{color:#ddd6fe;letter-spacing:.16em;text-transform:uppercase;font-size:.58rem;font-weight:900}.trick-resolution-banner>strong{color:#fff;text-shadow:0 0 12px #ffffff59;margin-top:.12rem;font:900 clamp(1rem,2.3vw,1.35rem)/1.1 Outfit,sans-serif}.trick-resolution-cards{justify-content:center;gap:.28rem;margin:.42rem 0 .2rem;display:flex}.trick-resolution-card{background:#fff;border:2px solid #ffffffeb;border-radius:6px;flex:none;width:40px;height:58px;overflow:hidden;box-shadow:0 5px 14px #0000006b,0 0 12px #d8b4fe66}.trick-resolution-card:nth-child(2n){transform:translateY(2px)rotate(2deg)}.trick-resolution-card:nth-child(odd){transform:rotate(-2deg)}.trick-resolution-banner>small{color:#c4b5fd;margin-top:.18rem;font-size:.68rem}.trick-winning-card{animation:.72s ease-in-out infinite alternate trick-winning-glow}.completed-trick-card{opacity:.58;filter:saturate(.45)brightness(.78);box-shadow:-2px 2px 8px #00000038!important}.completed-trick-label{z-index:160;color:#cbd5e1;text-align:center;pointer-events:none;background:#0f172ae6;border:1px solid #94a3b847;border-radius:9px;flex-direction:column;align-items:center;max-width:calc(100% - 24px);padding:.42rem .7rem;display:flex;position:absolute;bottom:24%;left:50%;transform:translate(-50%);box-shadow:0 5px 18px #00000047}.completed-trick-label strong{color:#a7f3d0;font-size:clamp(.62rem,1.4vw,.78rem)}.completed-trick-label span{color:#94a3b8;white-space:normal;margin-top:.1rem;font-size:clamp(.52rem,1.2vw,.66rem);line-height:1.25}@keyframes trick-resolution-in{0%{opacity:0;transform:translate(-50%,-10px)scale(.9)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes trick-winning-glow{0%{filter:brightness()}to{filter:brightness(1.08)drop-shadow(0 0 9px #c084fcb3)}}.pause-card{text-align:center;background:linear-gradient(145deg,#1e1b4bf5,#0f172af7);border:1px solid #a78bfa66;border-radius:28px;width:min(92vw,430px);padding:2rem 2rem 1.6rem;animation:.65s cubic-bezier(.2,.85,.25,1.2) both pause-card-in;position:relative;overflow:hidden;box-shadow:0 28px 80px #0009,0 0 45px #8b5cf638}.pause-card h2{color:#f5f3ff;letter-spacing:.02em;margin:.25rem 0 .45rem;font:900 clamp(2rem,7vw,3rem)/1 Outfit,sans-serif}.pause-card p{color:#c4b5fd;max-width:310px;margin:0 auto;line-height:1.45}.pause-kicker{color:#a78bfa;letter-spacing:.22em;text-transform:uppercase;margin-top:1.2rem;font-size:.72rem;font-weight:800}.pause-clock{--pause-angle:360deg;background:conic-gradient(from -90deg, #c084fc var(--pause-angle), #ffffff14 0);filter:drop-shadow(0 0 18px #c084fc59);border-radius:50%;place-items:center;width:180px;height:180px;margin:0 auto;display:grid;position:relative}.pause-clock:before{content:"";border-radius:inherit;background:radial-gradient(circle at 50% 38%,#312e81,#17152e 72%);border:1px solid #ffffff1a;position:absolute;inset:9px;box-shadow:inset 0 0 24px #00000061}.pause-clock-content{z-index:1;color:#ddd6fe;flex-direction:column;align-items:center;gap:.35rem;display:flex;position:relative}.pause-clock-content svg{animation:2.4s ease-in-out infinite pause-cup-float}.pause-clock-content strong{color:#fff;font-variant-numeric:tabular-nums;letter-spacing:.04em;text-shadow:0 0 18px #c084fca6;font:900 2.25rem/1 Outfit,monospace}.pause-steam{z-index:2;gap:.65rem;display:flex;position:absolute;top:1rem;left:50%;transform:translate(-50%)}.pause-steam span{filter:blur(1px);background:linear-gradient(#0000,#ddd6feb3,#0000);border-radius:50%;width:4px;height:26px;animation:2.1s ease-in-out infinite pause-steam-rise}.pause-steam span:nth-child(2){animation-delay:.45s}.pause-steam span:nth-child(3){animation-delay:.9s}.pause-dots{justify-content:center;gap:.4rem;margin-top:1.2rem;display:flex}.pause-dots span{background:#a78bfa;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite pause-dot}.pause-dots span:nth-child(2){animation-delay:.2s}.pause-dots span:nth-child(3){animation-delay:.4s}@keyframes pause-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pause-card-in{0%{opacity:0;transform:translateY(24px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes pause-cup-float{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-5px)rotate(2deg)}}@keyframes pause-steam-rise{0%{opacity:0;transform:translateY(18px)scaleX(.7)}45%{opacity:.8}to{opacity:0;transform:translateY(-16px)scaleX(1.4)}}@keyframes pause-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}@media (height<=560px){.pause-card{padding:1rem 1.25rem}.pause-clock{width:130px;height:130px}.pause-kicker{margin-top:.65rem}}@media (width<=620px){.home-route{height:100%;padding:.45rem;overflow:hidden}.home-panel{max-height:100%;padding:.8rem!important}.home-title{font-size:1.25rem;margin-bottom:.55rem!important}.home-error{margin-bottom:.45rem!important;font-size:.72rem!important}.home-avatar-section{margin-bottom:.65rem!important}.home-avatar{width:64px!important;height:64px!important;margin-bottom:.4rem!important}.home-avatar-button{padding:6px 12px!important;font-size:.72rem!important}.home-name-section{margin-bottom:.45rem!important}.home-name-section label{font-size:.8rem;margin-bottom:.3rem!important}.home-name-section input{margin-bottom:0!important;padding:10px!important}.home-actions{gap:.5rem!important;margin-top:.55rem!important}.home-divider{margin:.25rem 0!important}.home-invite-button{margin-top:.55rem!important}.game-page{max-width:100vw;overflow-x:clip}.game-status-bar{grid-template-columns:minmax(0,1fr) auto;gap:.5rem .6rem;align-items:center!important;margin:.5rem!important;padding:.62rem!important;display:grid!important}.game-status-info{min-width:0;font-size:.82rem;gap:.28rem .6rem!important}.game-status-info>div:nth-child(2){gap:.35rem!important;font-size:.72rem!important}.game-status-actions{gap:.4rem!important}.game-turn-status{text-align:center;border-top:1px solid #ffffff0f;grid-column:1/-1;padding-top:.42rem;font-size:.78rem}.game-status-actions>div>.glass-panel{max-height:calc(100dvh - 88px);overflow-y:auto;width:auto!important;position:fixed!important;top:72px!important;left:8px!important;right:8px!important;transform:none!important}.game-table-area{min-width:0;min-height:0;padding:8px}.square-table-stage{width:min(100vw - 16px,100dvh - 340px,404px)}.glass-panel.square-game-table{border-radius:18px}.square-game-table:before{border-radius:12px;inset:8px}.table-player-seat{border-radius:12px;width:clamp(62px,min(23vw,13dvh),88px);min-width:clamp(62px,min(23vw,13dvh),88px);padding:.42rem!important}.table-player-avatar{width:clamp(32px,min(11vw,7dvh),42px)!important;height:clamp(32px,min(11vw,7dvh),42px)!important}.table-player-name{text-overflow:clip!important;margin-top:.3rem!important;font-size:.62rem!important;overflow:visible!important}.table-player-meta,.table-player-role{line-height:1.2;font-size:.52rem!important}.player-chat-speech{max-width:120px;padding:.42rem .52rem;font-size:.64rem}.table-player-seat[data-table-side=top] .player-chat-speech{top:calc(100% + 8px);bottom:auto}.table-player-seat[data-table-side=top] .player-chat-speech:after{border-top-color:#0000;border-bottom-color:#5b21b6fa;top:auto;bottom:100%}.player-hand-panel{border-radius:14px 14px 0 0;width:100%;gap:.42rem!important;padding:.62rem!important}.player-hand-heading{font-size:.84rem;padding:0 .3rem!important}.player-hand-cards{min-width:0;gap:.5rem!important}.hand-card-viewport{flex:auto;width:0}.player-hand-cards>button{padding:8px!important}.hand-card-scroll{width:100%;min-width:0;max-width:none!important;padding:20px 4px 8px!important}.hand-scroll-hint{z-index:40;color:#fff;white-space:nowrap;background:#5b21b6f5;border:1px solid #c4b5fdb8;border-radius:999px;align-items:center;gap:.12rem;min-width:34px;min-height:36px;padding:.34rem .38rem;font-size:.61rem;font-weight:900;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 16px #0f172ab3,0 0 14px #8b5cf67a}.hand-scroll-hint.is-left{left:3px}.hand-scroll-hint.is-left span{min-width:1ch}.hand-scroll-hint.is-right{right:3px}.player-hand-actions{justify-content:center;width:100%;gap:.5rem!important}.player-hand-actions .btn{padding:10px 16px;font-size:.84rem}.mobile-chat-toggle{z-index:36;color:#ddd6fe;background:#5b21b638;border:1px solid #8b5cf661;border-radius:999px;align-items:center;gap:.35rem;padding:.36rem .55rem;font-size:.68rem;font-weight:800;display:flex;position:absolute;top:.48rem;right:.62rem}.mobile-chat-backdrop{z-index:500;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0306169e;border:0;display:block;position:fixed;inset:0}.mobile-chat-close{color:#fff;background:#ffffff14;border:0;border-radius:8px;place-items:center;width:28px;height:28px;padding:0;font-size:1.15rem;line-height:1;display:grid}.game-chat-panel{top:auto;right:8px;bottom:max(8px, env(safe-area-inset-bottom));z-index:510;width:auto;min-width:0;height:min(58dvh,440px);margin:0;display:none;position:fixed;left:8px;transform:none}.game-chat-panel.is-mobile-open{animation:.28s both mobile-chat-in;display:grid}.trick-resolution-banner{padding:.45rem .7rem;top:.25rem}.trick-resolution-card{width:34px;height:50px}.trick-resolution-banner>small{font-size:.58rem}}@media (prefers-reduced-motion:reduce){.pause-overlay,.pause-card,.pause-clock-content svg,.pause-steam span,.pause-dots span,.trick-resolution-banner,.trick-winning-card,.player-chat-speech{animation:none}}@media (width<=620px){.app-header{min-height:62px;justify-content:flex-start!important;padding:.65rem .85rem!important}.app-header .title-text{letter-spacing:3px;font-size:1.8rem!important}.app-header-actions{right:.8rem!important}.app-header-actions button{gap:0!important;font-size:0!important}}@media (width>=621px) and (width<=1366px) and (pointer:coarse),(orientation:landscape) and (height<=600px) and (width<=1180px){.hand-scroll-hint{display:flex}.mobile-chat-toggle{z-index:36;color:#ddd6fe;background:#5b21b638;border:1px solid #8b5cf661;border-radius:999px;align-items:center;gap:.35rem;padding:.36rem .55rem;font-size:.68rem;font-weight:800;display:flex;position:absolute;top:.48rem;right:.62rem}.mobile-chat-backdrop{z-index:500;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0306169e;border:0;display:block;position:fixed;inset:0}.mobile-chat-close{color:#fff;background:#ffffff14;border:0;border-radius:8px;place-items:center;width:28px;height:28px;padding:0;font-size:1.15rem;line-height:1;display:grid}.game-chat-panel{border-top:none;border-bottom:none;border-right:none;border-radius:0;width:min(460px,100vw - 16px);height:auto;position:fixed;inset:155px 0 0 auto}.game-chat-panel.is-mobile-open{animation:.28s both mobile-chat-in;display:grid}}@media (orientation:portrait) and (width>=621px) and (width<=1024px){.app-header{min-height:72px;padding:.7rem 1rem!important}.app-header .title-text{font-size:2.15rem!important}.app-header-actions{right:1rem!important}.game-status-bar{margin:.5rem .75rem!important;padding:.6rem .8rem!important}.game-table-area{min-width:0;min-height:0;padding:8px}.square-table-stage{width:min(100vw - 28px,100dvh - 390px,590px)}.table-player-seat{width:clamp(76px,min(14vw,11dvh),108px);min-width:clamp(76px,min(14vw,11dvh),108px);padding:.55rem!important}.table-player-avatar{width:clamp(38px,min(7vw,6dvh),48px)!important;height:clamp(38px,min(7vw,6dvh),48px)!important}.table-player-name{font-size:.72rem!important}.player-hand-panel{gap:.35rem!important;padding:.58rem!important}.player-hand-panel .hand-card-scroll{padding-top:20px!important;padding-bottom:4px!important}.player-hand-cards>button{position:static;left:auto}.hand-card-viewport{flex:auto;width:0}.hand-scroll-hint{display:flex}.player-hand-actions .btn{padding:9px 16px;font-size:.82rem}}@media (orientation:landscape) and (height<=600px) and (width<=1180px),(orientation:landscape) and (width>=621px) and (width<=1366px) and (pointer:coarse){.home-route{height:100%;padding:.35rem;overflow:hidden}.home-panel{grid-template-columns:150px minmax(0,1fr);grid-template-areas:"title title""error error""avatar name""avatar actions";align-items:center;column-gap:1rem;width:min(720px,100%);max-height:100%;display:grid;max-width:720px!important;padding:.65rem 1rem!important}.home-title{grid-area:title;font-size:1.15rem;margin-bottom:.35rem!important}.home-error{grid-area:error;margin-bottom:.3rem!important;font-size:.7rem!important}.home-avatar-section{grid-area:avatar;margin:0!important}.home-avatar{width:72px!important;height:72px!important;margin-bottom:.35rem!important}.home-avatar-button{padding:5px 10px!important;font-size:.68rem!important}.home-name-section{grid-area:name;width:100%;margin:0 0 .35rem!important}.home-name-section label{font-size:.72rem;margin-bottom:.2rem!important}.home-name-section input{margin-bottom:0!important;padding:8px!important}.home-actions,.home-invite-button{grid-area:actions}.home-actions{gap:.35rem!important;margin-top:0!important}.home-divider{margin:.1rem 0!important}.home-actions .btn,.home-invite-button{padding-block:7px!important}.home-invite-button{margin-top:0!important}body,#root,.app-container{height:100dvh;overflow:hidden;min-height:0!important}.app-header{height:54px;min-height:54px;padding:.35rem .8rem!important}.app-header .title-text{letter-spacing:2px;font-size:clamp(1.55rem,6.5vh,2rem)!important}.app-header-actions{right:.8rem!important}.app-header-actions button{gap:.35rem!important;font-size:.74rem!important}.app-main{min-height:0;overflow:hidden}.game-page{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,48%) minmax(0,52%);width:100%;height:100%;min-height:0;overflow:hidden;display:grid!important}.game-status-bar{grid-area:1/1/auto/-1;gap:.5rem;min-width:0;font-size:.75rem;margin:.35rem .55rem!important;padding:.42rem .7rem!important}.game-status-info{min-width:0;flex-wrap:nowrap!important;gap:.45rem!important}.game-status-info>div:nth-child(2){font-size:.68rem!important}.game-turn-status{white-space:nowrap;font-size:.74rem}.game-table-area{grid-area:2/1;align-self:stretch;min-width:0;min-height:0;padding:4px}.square-table-stage{width:min(100% - 8px,100dvh - 132px,620px)}.glass-panel.square-game-table{border-radius:16px}.square-game-table:before{border-radius:10px;inset:7px}.table-player-seat{border-radius:11px;width:clamp(56px,13vmin,108px);min-width:clamp(56px,13vmin,108px);padding:clamp(.28rem,1.2vmin,.52rem)!important}.table-player-avatar{width:clamp(28px,7vmin,52px)!important;height:clamp(28px,7vmin,52px)!important}.table-player-name{margin-top:.22rem!important;font-size:clamp(.54rem,1.65vmin,.72rem)!important}.table-player-meta,.table-player-role{font-size:clamp(.46rem,1.3vmin,.6rem)!important}.player-chat-speech{max-width:130px;padding:.35rem .45rem;font-size:.58rem}.player-hand-panel{grid-area:2/2;align-self:center;width:calc(100% + 10px);min-height:0;max-height:calc(100% - 8px);margin:0 6px 0 -16px;overflow:visible;border-radius:14px!important;gap:.28rem!important;padding:.48rem!important}.player-hand-heading{font-size:.72rem;padding:0 .2rem!important}.player-hand-cards{min-width:0;gap:.35rem!important}.player-hand-cards>button{flex:none;position:static;left:auto;padding:7px!important}.player-hand-cards>button svg{width:19px;height:19px}.hand-card-viewport{flex:auto;width:0;min-width:0}.hand-card-scroll{width:100%;padding:18px 3px 5px!important}.hand-card-scroll>div{width:clamp(46px,15vmin,60px)!important;height:clamp(70px,23vmin,90px)!important}.hand-card-scroll>div:not(:first-child){margin-left:clamp(-20px,-5vmin,-14px)!important}.player-hand-actions{gap:.45rem!important}.player-hand-actions .btn{padding:7px 13px;font-size:.72rem}.mobile-chat-toggle{padding:.28rem .48rem;font-size:.62rem;top:.35rem;right:.45rem}.game-chat-panel{border-top:none;border-bottom:none;border-right:none;border-radius:0;width:min(460px,100vw - 16px);height:auto;position:fixed;inset:115px 0 0 auto}}@media (orientation:landscape) and (height<=430px) and (width<=900px){.game-page{grid-template-columns:minmax(0,42%) minmax(0,58%)}.app-header-actions button{gap:0!important;font-size:0!important}.game-status-info>div:nth-child(2) span:nth-child(2),.game-status-info>div:nth-child(2) span:nth-child(3){display:none}.table-player-seat{width:clamp(56px,18vmin,72px);min-width:clamp(56px,18vmin,72px)}}@media (orientation:portrait) and (height<=720px) and (width<=1024px){.app-header{height:52px;min-height:52px;padding-block:.35rem!important}.app-header .title-text{font-size:1.55rem!important}.game-status-bar{margin-block:.25rem!important;padding-block:.34rem!important}.game-turn-status{padding-top:.3rem}.square-table-stage{width:min(100vw - 14px,100dvh - 350px,390px)}.table-player-seat{width:clamp(62px,min(21vw,12dvh),78px);min-width:clamp(62px,min(21vw,12dvh),78px);padding:.34rem!important}.table-player-avatar{width:clamp(30px,min(10vw,6dvh),38px)!important;height:clamp(30px,min(10vw,6dvh),38px)!important}.player-hand-panel{gap:.2rem!important;padding-block:.34rem!important}.hand-card-scroll>div{width:48px!important;height:70px!important}.hand-card-scroll>div:not(:first-child){margin-left:-16px!important}.player-hand-actions .btn{padding-block:6px}}.volume-slider{appearance:none;cursor:pointer;background:#fff3;border-radius:4px;outline:none;width:100px;height:6px;margin:0}.volume-slider::-webkit-slider-thumb{appearance:none;background:var(--accent-color);cursor:pointer;border-radius:50%;width:16px;height:16px;transition:transform .1s,box-shadow .1s;box-shadow:0 0 10px #ff3ea580}.volume-slider::-webkit-slider-thumb:hover{transform:scale(1.3);box-shadow:0 0 15px #ff3ea5cc}.volume-slider::-moz-range-thumb{background:var(--accent-color);cursor:pointer;border:none;border-radius:50%;width:16px;height:16px;transition:transform .1s,box-shadow .1s;box-shadow:0 0 10px #ff3ea580}.volume-slider::-moz-range-thumb:hover{transform:scale(1.3);box-shadow:0 0 15px #ff3ea5cc}.toggle-switch{width:44px;height:24px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;border:1px solid var(--glass-border);background-color:#ffffff1a;border-radius:24px;transition:all .4s;position:absolute;inset:0}.slider:before{content:"";background-color:var(--text-primary);border-radius:50%;width:16px;height:16px;transition:all .4s;position:absolute;bottom:3px;left:4px}input:checked+.slider{background-color:var(--success-color);border-color:var(--success-color)}input:checked+.slider:before{transform:translate(20px)}@keyframes turn-pulse{0%{box-shadow:0 0 5px var(--success-color)}50%{box-shadow:0 0 25px var(--success-color), 0 0 10px var(--success-color) inset}to{box-shadow:0 0 5px var(--success-color)}}.is-turn-highlight{border:2px solid var(--success-color)!important;animation:1.5s ease-in-out infinite turn-pulse!important}.lobby-route{background:radial-gradient(circle at 18% 14%,#8b5cf617,#0000 34%),radial-gradient(circle at 84% 78%,#ec48990f,#0000 30%);width:100%;height:100%;padding:clamp(.8rem,2vw,1.6rem);position:relative;overflow:hidden}.lobby-shell{background:linear-gradient(145deg,#1a1d41f5,#131633fa);border:1px solid #a78bfa2e;border-radius:24px;grid-template-rows:auto minmax(0,1fr) auto;width:min(100%,1380px);height:100%;min-height:600px;margin:0 auto;display:grid;overflow:hidden;box-shadow:0 30px 90px #0306186b}.lobby-header{background:linear-gradient(105deg,#8b5cf61f,#0000 46%),#ffffff05;border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;gap:2rem;padding:1.35rem 1.6rem;display:flex}.lobby-heading h2{letter-spacing:-.025em;margin:.22rem 0;font:900 clamp(1.65rem,3vw,2.35rem)/1.1 Outfit,sans-serif}.lobby-heading p,.lobby-section-heading p,.lobby-chat-header p{color:var(--text-secondary);margin:0;font-size:.82rem}.lobby-eyebrow{color:#a78bfa;letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:.38rem;font-size:.7rem;font-weight:800;display:flex}.lobby-invite{align-items:stretch;gap:.65rem;display:flex;position:relative}.lobby-code-card,.lobby-link-button{color:var(--text-primary);cursor:pointer;border:1px solid #a78bfa38;transition:border-color .2s,background .2s,transform .2s}.lobby-code-card:hover,.lobby-link-button:hover{border-color:#a78bfaa6;transform:translateY(-1px)}.lobby-code-card{text-align:left;background:#070a1e70;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:1fr auto;column-gap:.75rem;min-width:185px;padding:.65rem .8rem;display:grid}.lobby-code-card>span{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;grid-column:1/-1;font-size:.66rem;font-weight:700}.lobby-code-card strong{color:#c4b5fd;letter-spacing:.16em;margin-top:.08rem;font:900 1.1rem/1.2 Outfit,sans-serif}.lobby-code-card svg{color:#a78bfa;align-self:center}.lobby-link-button{white-space:nowrap;background:#8b5cf624;border-radius:12px;align-items:center;gap:.55rem;padding:.7rem 1rem;font-weight:750;display:flex}.lobby-copy-error{color:#fda4af;position:absolute;top:calc(100% + .25rem);right:0}.lobby-content{grid-template-columns:minmax(0,1.65fr) minmax(310px,.72fr);gap:1rem;min-height:0;padding:1rem;display:grid}.lobby-main{grid-template-rows:minmax(0,1fr) auto;gap:1rem;min-height:0;display:grid}.lobby-panel{background:#06091d57;border:1px solid #ffffff13;border-radius:18px;min-width:0;box-shadow:inset 0 1px #ffffff06}.lobby-players-panel,.lobby-settings{padding:1rem}.lobby-players-panel{min-height:0;overflow-y:auto}.lobby-section-heading,.lobby-chat-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem;display:flex}.lobby-section-heading>div,.lobby-chat-header>div{align-items:center;gap:.68rem;display:flex}.lobby-section-heading h3,.lobby-chat-header h3{margin:0 0 .12rem;font-size:.98rem}.lobby-section-icon{color:#a78bfa;background:#8b5cf61c;border:1px solid #a78bfa33;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.lobby-player-count,.lobby-locked-badge{color:#c4b5fd;background:#8b5cf61a;border:1px solid #a78bfa33;border-radius:999px;padding:.27rem .55rem;font-size:.7rem;font-weight:800}.lobby-player-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.lobby-player-card,.lobby-empty-seat{border-radius:14px;align-items:center;gap:.7rem;min-height:74px;padding:.65rem;display:flex;position:relative}.lobby-player-card{background:#ffffff09;border:1px solid #ffffff13}.lobby-player-card.is-me{background:linear-gradient(100deg,#8b5cf624,#ffffff06);border-color:#8b5cf670}.lobby-player-avatar{background:#ffffff12;border:2px solid #ffffff1f;border-radius:15px;flex:none;width:50px;height:50px;overflow:hidden;box-shadow:0 8px 20px #00000038}.lobby-player-copy{min-width:0}.lobby-player-name{align-items:center;gap:.42rem;font-weight:800;display:flex}.lobby-player-name>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lobby-player-name small{color:#ddd6fe;background:#8b5cf633;border-radius:5px;padding:.12rem .32rem;font-size:.58rem}.lobby-player-meta{color:var(--text-secondary);align-items:center;gap:.3rem;margin-top:.28rem;font-size:.68rem;display:flex}.lobby-player-meta svg{color:#fbbf24}.lobby-online-dot{background:#34d399;border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 8px #34d399a6}.lobby-seat-number{color:#94a3b87a;font:700 .6rem/1 monospace;position:absolute;top:.48rem;right:.55rem}.lobby-empty-seat{color:#94a3b8b8;background:#ffffff03;border:1px dashed #94a3b82e}.lobby-empty-seat>span{color:#8b5cf6;border:1px dashed #a78bfa4d;border-radius:14px;place-items:center;width:46px;height:46px;font-size:1.4rem;display:grid}.lobby-empty-seat strong,.lobby-empty-seat small{display:block}.lobby-empty-seat strong{font-size:.82rem}.lobby-empty-seat small{color:#94a3b880;margin-top:.18rem;font-size:.66rem}.lobby-settings{transition:opacity .2s}.lobby-settings.is-locked .lobby-settings-grid{opacity:.65}.lobby-settings-grid{grid-template-columns:1.2fr .8fr;gap:.65rem;display:grid}.lobby-setting{background:#ffffff06;border:1px solid #ffffff0e;border-radius:12px;justify-content:space-between;align-items:center;gap:.8rem;min-width:0;padding:.68rem;display:flex}.lobby-end-setting{grid-column:1/-1}.lobby-game-modes{background:#ffffff06;border:1px solid #ffffff0e;border-radius:12px;align-self:start;min-width:0;transition:border-color .22s,background .22s;overflow:hidden}.lobby-game-modes.is-open{background:#8b5cf60b;border-color:#a78bfa33}.lobby-game-modes-trigger{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.5rem;padding:.68rem;display:grid}.lobby-game-modes-trigger:hover{background:#8b5cf60e}.lobby-game-modes-trigger:focus-visible{outline-offset:-2px;outline:2px solid #a78bfa}.lobby-game-modes-status{color:var(--text-secondary);white-space:nowrap;background:#94a3b81a;border-radius:999px;padding:.2rem .42rem;font-size:.58rem;font-weight:800}.lobby-game-modes-status.is-active{color:#ddd6fe;background:#8b5cf63d}.lobby-game-modes-chevron{color:var(--text-secondary);transition:color .22s,transform .28s cubic-bezier(.2,.8,.2,1)}.lobby-game-modes.is-open .lobby-game-modes-chevron{color:#a78bfa;transform:rotate(180deg)}.lobby-game-modes-body{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.2,.8,.2,1),opacity .2s;display:grid}.lobby-game-modes.is-open .lobby-game-modes-body{opacity:1;grid-template-rows:1fr}.lobby-game-modes-inner{min-height:0;overflow:hidden}.lobby-game-modes-options{border-top:1px solid #ffffff0f;gap:.38rem;margin:0 .5rem .5rem;display:grid}.lobby-mode-option{cursor:pointer;justify-content:space-between;align-items:center;gap:.65rem;min-width:0;padding:.62rem .2rem .24rem;display:flex}.lobby-mode-option .lobby-setting-label,.lobby-mode-option .lobby-setting-label>span{min-width:0}.lobby-mode-option .lobby-setting-label small{white-space:normal}.lobby-mode-option+.lobby-mode-option{border-top:1px solid #ffffff0b;padding-top:.58rem}.lobby-mode-option.is-disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.5)}.lobby-mode-title{align-items:center;gap:.38rem;display:flex}.lobby-mode-title em{color:#cbd5e1;letter-spacing:.035em;text-transform:uppercase;border:1px solid #94a3b838;border-radius:999px;padding:.12rem .3rem;font-size:.48rem;font-style:normal;font-weight:850}.lobby-setting-label{align-items:center;gap:.52rem;min-width:max-content;display:flex}.lobby-setting-label>svg{color:#a78bfa}.lobby-setting-label strong,.lobby-setting-label small{display:block}.lobby-setting-label strong{font-size:.76rem}.lobby-setting-label small{color:var(--text-secondary);margin-top:.1rem;font-size:.61rem}.lobby-setting-control{justify-content:flex-end;align-items:center;gap:.45rem;min-width:0;display:flex}.lobby-segments{background:#03061675;border:1px solid #ffffff0f;border-radius:9px;gap:.18rem;padding:.2rem;display:flex}.lobby-segments button{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.34rem .5rem;font-size:.64rem;font-weight:800}.lobby-segments button.is-active{color:#fff;background:#7c3aed;box-shadow:0 3px 10px #7c3aed47}.lobby-segments button:disabled{cursor:default}.lobby-number-input,.lobby-limit-input input{color:#fff;text-align:center;background:#03061680;border:1px solid #a78bfa2e;border-radius:8px;outline:none;width:48px;padding:.42rem .28rem;font:750 .7rem/1 inherit}.lobby-toggle-setting{cursor:pointer}.lobby-toggle-setting input,.lobby-mode-option input{opacity:0;pointer-events:none;position:absolute}.lobby-toggle{background:#94a3b838;border-radius:999px;flex:none;width:40px;height:22px;transition:background .2s;position:relative}.lobby-toggle:after{content:"";background:#e2e8f0;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px}.lobby-toggle-setting input:checked+.lobby-toggle,.lobby-mode-option input:checked+.lobby-toggle{background:#7c3aed}.lobby-toggle-setting input:checked+.lobby-toggle:after,.lobby-mode-option input:checked+.lobby-toggle:after{transform:translate(18px)}.lobby-mode-option input:disabled+.lobby-toggle{background:#94a3b81f}.lobby-mode-option input:disabled+.lobby-toggle:after{background:#e2e8f080}.lobby-limit-input{background:#03061680;border-radius:8px;align-items:center;display:flex;overflow:hidden}.lobby-limit-input input{border:0;border-right:1px solid #ffffff12;border-radius:0}.lobby-limit-input span{color:var(--text-secondary);padding:0 .45rem;font-size:.6rem;font-weight:700}.lobby-chat{grid-template-rows:auto minmax(0,1fr) auto;min-height:0;display:grid;overflow:hidden}.lobby-chat-header{border-bottom:1px solid #ffffff0f;margin:0;padding:1rem}.lobby-chat-header p{align-items:center;gap:.32rem;display:flex}.lobby-chat-messages{scrollbar-width:thin;scrollbar-color:#8b5cf661 transparent;flex-direction:column;gap:.7rem;min-height:0;padding:.9rem;display:flex;overflow-y:auto}.lobby-chat-empty{min-height:100%;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;display:flex}.lobby-chat-empty svg{color:#a78bfa8c;margin-bottom:.35rem}.lobby-chat-empty strong{color:#cbd5e1;font-size:.82rem}.lobby-chat-empty span{font-size:.7rem}.lobby-chat-message{align-self:flex-start;max-width:86%;animation:.22s ease-out both lobby-message-in}.lobby-chat-message.is-own{align-self:flex-end}.lobby-chat-meta{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:.6rem;margin:0 .3rem .23rem;font-size:.61rem;display:flex}.lobby-chat-meta strong{color:#c4b5fd}.lobby-chat-bubble{overflow-wrap:anywhere;background:#ffffff0e;border:1px solid #fff1;border-radius:5px 13px 13px;padding:.58rem .72rem;font-size:.78rem;line-height:1.42}.lobby-chat-message.is-own .lobby-chat-bubble{background:linear-gradient(135deg,#7c3aedad,#6d28d98f);border-color:#8b5cf647;border-radius:13px 5px 13px 13px}.lobby-chat-form{background:#03061633;border-top:1px solid #ffffff0f;padding:.78rem}.lobby-chat-form>div:last-of-type{gap:.45rem;display:flex}.lobby-chat-form input{color:#fff;background:#0306168a;border:1px solid #ffffff17;border-radius:10px;outline:none;flex:1;min-width:0;padding:.7rem .78rem;font-size:.76rem}.lobby-chat-form input:focus{border-color:#8b5cf6a6;box-shadow:0 0 0 3px #8b5cf617}.lobby-chat-form button{color:#fff;cursor:pointer;background:#7c3aed;border:0;border-radius:10px;place-items:center;width:42px;transition:background .2s,transform .2s;display:grid}.lobby-chat-form button:hover:not(:disabled){background:#8b5cf6;transform:translateY(-1px)}.lobby-chat-form button:disabled{opacity:.38;cursor:default}.lobby-chat-form>small{color:#94a3b880;text-align:right;margin-top:.3rem;font-size:.58rem;display:block}.lobby-chat-error,.lobby-copy-error{color:#fda4af;font-size:.65rem}.lobby-chat-error{margin-bottom:.4rem}.lobby-footer{background:#03061640;border-top:1px solid #ffffff12;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex}.lobby-ready-state{align-items:center;gap:.65rem;display:flex}.lobby-ready-state>span{background:#f59e0b;border-radius:50%;flex:none;width:10px;height:10px;box-shadow:0 0 12px #f59e0b80}.lobby-ready-state>span.is-ready{background:#34d399;box-shadow:0 0 12px #34d3998c}.lobby-ready-state strong,.lobby-ready-state small{display:block}.lobby-ready-state strong{font-size:.8rem}.lobby-ready-state small{color:var(--text-secondary);margin-top:.1rem;font-size:.66rem}.lobby-start-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:0;border-radius:11px;min-width:205px;padding:.78rem 1.25rem;font-weight:850;transition:transform .2s,box-shadow .2s;box-shadow:0 8px 24px #7c3aed40}.lobby-start-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 30px #7c3aed5c}.lobby-start-button:disabled{color:#ffffff80;box-shadow:none;cursor:default;background:#8b5cf657}.lobby-waiting-host{color:var(--text-secondary);font-size:.76rem;font-style:italic}@keyframes lobby-message-in{0%{opacity:0;transform:translateY(5px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1050px){.lobby-content{grid-template-columns:minmax(0,1fr) 320px}.lobby-settings-grid{grid-template-columns:1fr}.lobby-end-setting{grid-column:auto}.lobby-setting{flex-wrap:wrap}}@media (width<=820px){.lobby-route{overflow-y:auto}.lobby-shell{height:auto;min-height:100%;overflow:visible}.lobby-header{align-items:flex-start}.lobby-content{grid-template-columns:1fr}.lobby-main{min-height:580px}.lobby-chat{min-height:430px}}@media (width<=620px){.lobby-route{padding:0}.lobby-shell{border-width:0;border-radius:0}.lobby-header,.lobby-footer{flex-direction:column;align-items:stretch}.lobby-invite{grid-template-columns:1fr;display:grid}.lobby-code-card{width:100%}.lobby-link-button{justify-content:center}.lobby-content{padding:.7rem}.lobby-player-grid{grid-template-columns:1fr}.lobby-main{min-height:670px}.lobby-setting,.lobby-setting-control{flex-direction:column;align-items:stretch}.lobby-toggle-setting{flex-direction:row;align-items:center}.lobby-mode-option{align-items:center}.lobby-mode-title{flex-direction:column;align-items:flex-start;gap:.2rem}.lobby-segments,.lobby-segments button{flex:1}.lobby-number-input,.lobby-start-button{width:100%}}@media (height<=720px) and (width>=821px){.lobby-header{padding-top:.85rem;padding-bottom:.85rem}.lobby-heading p{display:none}.lobby-content{gap:.7rem;padding:.7rem}.lobby-main{gap:.7rem}.lobby-players-panel,.lobby-settings{padding:.75rem}.lobby-player-card,.lobby-empty-seat{min-height:64px}}@media (prefers-reduced-motion:reduce){.lobby-chat-message,.lobby-code-card,.lobby-link-button,.lobby-start-button,.lobby-game-modes-body,.lobby-game-modes-chevron{transition:none;animation:none}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}
