@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/nunito-viet.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/nunito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/nunito-viet.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/nunito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/nunito-viet.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/nunito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/nunito-viet.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/nunito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/nunito-viet.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/nunito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Twemoji Country Flags;font-style:normal;font-weight:1 1000;font-display:swap;src:url(/fonts/twemoji-country-flags.woff2) format("woff2");unicode-range:U+1F1E6-1F1FF,U+1F3F4,U+E0062-E0063,U+E0065,U+E0067,U+E006C,U+E006E,U+E0073-E0074,U+E0077,U+E007F}*{margin:0;padding:0;box-sizing:border-box}:root{--home-border: #101321}body{font-family:Twemoji Country Flags,Nunito,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#181c2f,#232946);min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:0;color:#e0e6f0}*{scrollbar-width:thin;scrollbar-color:rgba(120,134,203,.55) transparent}::-webkit-scrollbar{width:.45vw;height:.45vw}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#7886cb8c;border-radius:.3vw}::-webkit-scrollbar-thumb:hover{background:#7886cbcc}.view{display:none}.view.active{display:block}#authView.active{display:flex;flex-wrap:wrap;width:100%;justify-content:space-between;align-items:flex-start;gap:0 4vw}.auth-topbar-row{flex:0 0 100%}#authView .auth-news,#authView .auth-container{margin-top:3vh}.auth-topbar{display:flex;align-items:center;gap:.83vw 1.67vw;margin:0 8vw 0 6vw;padding:1.11vw 0;border-bottom:.069vw solid #353b5c;font-family:Twemoji Country Flags,Nunito,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.7}.auth-topbar-brand{font-weight:900;font-size:1.67vw;letter-spacing:.02em;color:#f1f5f9;text-decoration:none}.auth-topbar-nav{display:flex;gap:.28vw 1.22vw}.auth-topbar-nav a{color:#8ba3d4;text-decoration:none;font-weight:700;font-size:1.06vw}.auth-topbar-nav a:hover,.auth-topbar-nav a[aria-current=page]{color:#f1f5f9}.auth-container{background:#fff;border-radius:1.4vw;padding:2.8vw;box-shadow:0 1.39vw 4.17vw #0000004d;max-width:31.25vw;min-width:26.4vw;width:100%;margin-top:10vh;margin-right:8vw}.auth-news{flex:1;max-width:43vw;margin-top:10vh;margin-left:6vw;display:flex;flex-direction:column;min-width:0;background:#94a3b81f;backdrop-filter:blur(.69vw);-webkit-backdrop-filter:blur(.69vw);border:.069vw solid rgba(148,163,184,.22);border-radius:1.25vw;padding:1.5vw 1.65vw;box-shadow:0 .83vw 2.78vw #00000040}.auth-news-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25vw}.auth-news-title{color:#f8fafc;font-size:1.95vw;font-weight:700;letter-spacing:.035vw}.auth-news-add{flex:0 0 auto;margin-left:auto;background:#ffffff1f;color:#e2e8f0;border:.069vw solid rgba(255,255,255,.22);border-radius:.7vw;padding:.55vw 1.1vw;font-size:.97vw;font-weight:600;cursor:pointer;transition:background .15s}.auth-news-add:hover{background:#ffffff38}.auth-news-add.hidden{display:none}.auth-news-list{display:flex;flex-direction:column;gap:.97vw;flex:1 1 auto;min-height:0;max-height:70vh;overflow-y:auto;padding-right:.42vw}.auth-news-head{flex:0 0 auto}.auth-news-card{background:#ffffff0f;border:.069vw solid rgba(255,255,255,.1);border-radius:.97vw;padding:1.25vw 1.4vw;position:relative}.auth-news-card .news-date{color:#94a3b8;font-size:.83vw;font-weight:600;text-transform:uppercase;letter-spacing:.042vw}.auth-news-card .news-title{color:#f1f5f9;font-size:1.25vw;font-weight:700;margin:.28vw 0 .55vw}.auth-news-card .news-body{color:#cbd5e1;font-size:.97vw;line-height:1.55;white-space:pre-wrap;word-break:break-word}.auth-news-card .news-body+.news-body{margin-top:.7vw}.auth-news-card .news-img{display:block;max-width:100%;height:auto;margin:.85vw 0;border-radius:.7vw;border:.069vw solid rgba(255,255,255,.1)}.auth-news-welcome{color:#cbd5e1;font-size:.97vw;line-height:1.55;padding:.14vw .14vw .28vw}.js-news-welcome{flex:0 0 auto;margin-bottom:1.25vw}.js-news-welcome:empty{display:none}.news-link{color:#93c5fd;text-decoration:underline;cursor:pointer;font-weight:600}.news-link:hover{color:#bfdbfe}#matchmakingBar{display:none;position:fixed;top:.97vw;left:50%;transform:translate(-50%);z-index:9995;flex-direction:column;align-items:stretch;gap:.7vw}.mm-bar-main{display:flex;align-items:center;justify-content:center;gap:1.25vw;padding:1.84vw 2.8vw;min-width:29.2vw;background:linear-gradient(135deg,#232946,#181c2f);border:.069vw solid #3a4576;border-radius:.97vw;box-shadow:0 12px 34px #00000073}.mm-bar-spinner{width:1.4vw;height:1.4vw;border:.208vw solid rgba(147,197,253,.35);border-top-color:#93c5fd;border-radius:50%;animation:mmspin .8s linear infinite}@keyframes mmspin{to{transform:rotate(360deg)}}.mm-bar-label{color:#e0e6f0;font-weight:600;font-size:1.46vw}.mm-bar-time{color:#93c5fd;font-weight:700;font-variant-numeric:tabular-nums;font-size:1.46vw;min-width:4.2vw;text-align:center}.mm-bar-cancel{flex:0 0 auto;background:linear-gradient(135deg,#f5576c,#c1121f);color:#fff;border:none;border-radius:.85vw;padding:.97vw 1.5vw;font-size:1.18vw;font-weight:700;cursor:pointer;box-shadow:0 12px 34px #00000073}.mm-bar-cancel:hover{filter:brightness(1.08)}.auth-news-card .news-del{position:absolute;top:.85vw;right:.85vw;background:transparent;border:none;color:#64748b;font-size:1.25vw;cursor:pointer;line-height:1;padding:.14vw .42vw}.auth-news-card .news-del:hover{color:#f87171}.auth-news-empty{color:#64748b;font-style:italic;font-size:1.04vw;padding:.55vw .14vw}#homeView .home-main{flex-wrap:wrap;gap:1.65vw;justify-content:space-between;align-items:flex-start}#homeView .home-actions-panel{flex:0 0 auto;margin-left:auto}.home-news-panel.auth-news{order:-1;margin:0;max-width:min(38.9vw,100%);flex:1 1 22vw;align-self:flex-start}.public-news-body{flex:1;min-height:0;padding:1.65vw;display:flex;justify-content:center;overflow-y:auto}.public-news-panel.auth-news{margin:0;width:100%;max-width:52.8vw;flex:0 1 auto;align-self:flex-start}.public-instance .js-news-add{display:none!important}#authView{font-size:1.11vw;line-height:1.35}#authView input,#authView button{line-height:1.35}#authView .btn-secondary{border-width:.14vw}#authView .btn-primary:hover:not(:disabled){transform:translateY(-.14vw);box-shadow:0 .69vw 1.39vw #667eea66}#authView .btn-secondary:hover:not(:disabled){transform:translateY(-.14vw)}.auth-tagline{margin:.5vw 0 0;text-align:center;font-size:.95vw;color:#8ba3d4;line-height:1.4}.auth-guides{display:flex;flex-wrap:wrap;justify-content:center;gap:.3vw .8vw;margin-top:1.2vw;font-size:.85vw}.auth-guides a{color:#5a67d8;text-decoration:none;font-weight:600}.auth-guides a:hover{text-decoration:underline}.auth-tabs{display:flex;gap:.7vw;margin-top:1.75vw;margin-bottom:2.1vw}.auth-tab{flex:1;padding:.85vw;border:none;background:#f0f0f0;color:#666;font-size:1.1vw;font-weight:600;cursor:pointer;border-radius:.55vw;transition:all .3s}.auth-tab.active-tab{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.auth-form{display:none}.auth-form.active-form{display:block}#registerForm .input-group{margin-bottom:1.95vw}.error-message{background:#f8d7da;color:#721c24;padding:.85vw;border-radius:.55vw;margin-bottom:1.4vw;display:none}.error-message.show{display:block}.success-message{background:#d4edda;color:#155724;padding:.85vw;border-radius:.55vw;margin-bottom:1.4vw;display:none}.success-message.show{display:block}#homeView{--home-bg: #eaf1ff;--home-surface: #ffffff;--home-border: #1a1d2a;--home-muted: #596177;--home-accent-a: #4f78ff;--home-accent-b: #19b8c9;--home-accent-c: #f0a13b;width:100vw;height:100vh;max-width:none}.home-shell{width:100%;height:100%;scrollbar-gutter:stable;background:radial-gradient(circle at 15% 15%,#3b63e714,#3b63e700 40%),radial-gradient(circle at 80% 88%,#31b2ba14,#31b2ba00 42%),linear-gradient(135deg,#181c2f,#232946);border:.208vw solid #232946;border-radius:.56vw;box-shadow:0 18px 40px #00000061;overflow-y:auto;overflow-x:hidden;font-family:Twemoji Country Flags,Nunito,Trebuchet MS,Segoe UI,sans-serif}.home-topbar{height:6.7vw;box-sizing:border-box;display:flex;align-items:stretch;justify-content:space-between;gap:.85vw;padding:.7vw 1.25vw;background:linear-gradient(180deg,#232946,#181c2f);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);position:sticky;top:0;z-index:10}.home-title{display:flex;align-items:center;font-family:Twemoji Country Flags,Nunito,Trebuchet MS,Segoe UI,sans-serif;font-size:4.2vw;font-weight:800;letter-spacing:.05em;color:#e0e6f0;text-shadow:0 5px 12px rgba(34,54,124,.24)}.home-profile{display:flex;align-items:center;gap:.7vw;margin-left:auto;padding:.3vw .55vw;border-radius:1.1vw}.home-icon-box{width:5.85vw;min-width:5.85vw;height:5.4vw;border:none;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#233a5d,#1a233a);font-size:2.5vw;border-radius:.7vw;position:relative;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s}.home-bell-box:hover{transform:translateY(-1px) scale(1.03);box-shadow:0 0 24px #3b82f6,0 14px 26px #30469c61}.bell-icon{pointer-events:none}.bell-badge{position:absolute;top:.4vw;right:.4vw;min-width:1.25vw;height:1.25vw;background:#ef4444;border-radius:.63vw;font-size:.76vw;font-weight:800;color:#fff;display:flex;align-items:center;justify-content:center;padding:0 .28vw;pointer-events:none;line-height:1}.home-user-box{min-width:19.4vw;border:none;display:flex;align-items:center;gap:.85vw;padding:.42vw .97vw;background:linear-gradient(180deg,#233a5d,#1a233a);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border .2s;border-radius:.85vw}.home-user-box:hover{background:#233a5d;transform:translateY(-1px) scale(1.03);box-shadow:0 0 24px #3b82f6,0 14px 26px #30469c61}.home-avatar{width:4.3vw;height:4.3vw;border:.208vw solid #232946;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.95vw;background:#232946;color:#e0e6f0;overflow:hidden}.home-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.home-user-info{display:flex;flex-direction:column;gap:.28vw;color:#e0e6f0}.home-username{font-family:Twemoji Country Flags,Nunito,sans-serif;font-size:1.75vw;font-weight:700;line-height:1;letter-spacing:.01em}.home-flag{display:inline-flex;align-items:center;justify-content:center;width:2.8vw;height:1.55vw;padding:0;font-size:.97vw;font-weight:700;line-height:1;color:#e0e6f0}.home-main{display:flex;justify-content:flex-end;padding:1.65vw;min-height:calc(100% - 6.9vw)}.home-actions-panel{border-radius:1.25vw;padding:1.65vw}.home-actions-panel{display:flex;flex-direction:column;gap:1.1vw;width:min(52.8vw,100%)}.home-action-group{border:.14vw solid #232946;border-radius:.97vw;padding:.85vw;background:linear-gradient(145deg,#232946,#181c2f);box-shadow:0 10px 20px #32469121}.home-action-group:nth-of-type(1){border-color:#4f78ffa6}.home-action-group:nth-of-type(2){border-color:#19b8c9a6}.home-action-group:nth-of-type(3){border-color:#f0a13bb3}.home-action-group.play-group{border:none;background:none;box-shadow:none;padding:0}.home-group-label{font-size:.95vw;font-weight:700;letter-spacing:.14em;color:#a3aed6;margin:.14vw .28vw .7vw;text-transform:uppercase}.home-menu{width:100%;display:flex;flex-direction:column;gap:.85vw}.home-menu-btn{width:100%;border:.14vw solid #3b82f6;border-radius:.85vw;background:linear-gradient(180deg,#233a5d,#1a233a);color:#f3f6ff;text-transform:uppercase;letter-spacing:.08em;font-size:2.1vw;font-weight:700;padding:1.1vw 1.4vw;text-align:center;box-shadow:0 0 12px #3b82f62e,0 2px 8px #0000002e;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border .2s}.guest-locked,.home-menu-btn.guest-locked{opacity:.45;filter:grayscale(.6);cursor:not-allowed;pointer-events:none}.home-menu-btn:disabled{opacity:.45;filter:grayscale(.6);cursor:not-allowed}.home-menu-btn:disabled:hover{transform:none;box-shadow:none;background:linear-gradient(180deg,#1e293b,#131b2b);color:#f3f6ff!important;border:.14vw solid #475569}.home-menu-btn:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 0 24px #3b82f6,0 14px 26px #30469c61;background:linear-gradient(180deg,#3b82f6,#1e293b);color:#000!important;border:.14vw solid #60a5fa}.home-menu-btn:active{transform:translateY(0);box-shadow:0 4px 10px #0000001a}.home-menu-btn.bot-selected{background:linear-gradient(180deg,#3b82f6,#1e293b);border:.14vw solid #60a5fa;color:#000;box-shadow:0 0 24px #3b82f6,0 14px 26px #30469c61}.room-form-row{display:flex;gap:.8vw;align-items:center;margin-bottom:.6vw}.room-btn{width:auto;flex:0 0 auto;font-size:1.1vw;padding:.7vw 1.4vw;border-radius:.6vw}.room-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.room-btn-danger{border-color:#b91c1c;background:linear-gradient(180deg,#3b1d24,#241318)}.room-btn-danger:hover{border-color:#f5576c;background:linear-gradient(180deg,#f5576c,#7f1d1d)}.room-btn-quiet{border-color:#475569;background:linear-gradient(180deg,#1e293b,#131b2b)}.room-select,.room-input{flex:1 1 auto;min-width:0;background:#16203a;color:#f3f6ff;border:.12vw solid #3b82f6;border-radius:.6vw;padding:.7vw 1vw;font-size:1.1vw;font-family:inherit}.room-select{border:none;background:#16203a}.room-select:focus,.room-select:hover:not(:disabled){outline:none;background:#1c2947}.room-select:disabled{background:#16203a;color:#cbd5e1;opacity:1;cursor:not-allowed}.room-input::placeholder{color:#64748b;letter-spacing:.12em}.room-input:focus,.room-select:focus{outline:none;border-color:#60a5fa}#roomJoinCode{text-transform:uppercase;letter-spacing:.3em}.room-code{flex:1 1 auto;font-size:2.2vw;font-weight:800;letter-spacing:.35em;color:#60a5fa;background:#0f1728;border:.12vw dashed #3b82f6;border-radius:.6vw;padding:.6vw 1vw;text-align:center}.room-meta{color:#9fb4d4;font-size:1vw;margin-top:.4vw}.room-members{display:flex;flex-direction:column;gap:.4vw}.room-member{background:#16203a;border:.1vw solid #26375c;border-radius:.5vw;padding:.6vw 1vw;color:#e2e8f0;font-size:1.1vw}.room-member-empty{color:#64748b;font-style:italic;border-style:dashed}.room-member-filled{display:flex;align-items:center;gap:.9vw;padding:.8vw 1vw}.room-member-avatar{flex:0 0 auto;width:3.2vw;height:3.2vw;border-radius:50%;overflow:hidden;background:#0f1728;border:.1vw solid #3b82f6;display:flex;align-items:center;justify-content:center;font-size:1.2vw}.room-member-avatar img{width:100%;height:100%;object-fit:cover;display:block}.room-member-info{flex:1 1 auto;min-width:0}.room-member-link{cursor:pointer;transition:background .15s ease,border-color .15s ease}.room-member-link:hover{background:#1c2947;border-color:#3b82f6}.room-member-link:hover .room-member-name{color:#60a5fa}.room-member-name{font-size:1.25vw;color:#f3f6ff;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-member-meta{display:flex;align-items:center;gap:.45vw;margin-top:.25vw}.room-member-flag{font-size:1.2vw;line-height:1}.room-member-code{font-size:.85vw;color:#94a3b8;letter-spacing:.12em}.room-member-host{flex:0 0 auto;font-size:.8vw;font-weight:800;letter-spacing:.12em;color:#0b1120;background:#60a5fa;border-radius:.3vw;padding:.25vw .6vw}.rv-players .room-member-empty{padding:1.4vw 1vw;font-size:1.05vw}.tour-body{flex:1 1 auto;display:flex;flex-direction:column;gap:1vw;padding:1vw 2vw 5vw;min-height:0;overflow-y:auto}.tour-actions{display:flex;gap:.8vw;align-items:center;flex-wrap:wrap}.tour-join-group{margin-left:auto;display:flex;align-items:center;gap:.8vw}.tour-code-input{flex:0 0 auto;width:15vw;text-transform:uppercase;letter-spacing:.08em;border:none}.tour-columns{display:grid;grid-template-columns:1fr 1fr;gap:1vw;min-height:0}.tour-list-head{display:flex;align-items:center;gap:1vw;margin-bottom:.9vw}.tour-list-head .rv-panel-title{margin-bottom:0;flex:0 0 auto}.tour-search{flex:1 1 auto;min-width:0;font-size:1vw;padding:.55vw .9vw}.tour-code-input:focus{outline:none;box-shadow:0 0 0 .12vw #60a5fa}.tour-list{display:flex;flex-direction:column;gap:.6vw}.tour-row{display:flex;align-items:center;gap:1vw;background:#16203a;border:.1vw solid #26375c;border-radius:.6vw;padding:.9vw 1.1vw;cursor:pointer;transition:background .15s ease,border-color .15s ease}.tour-row:hover{background:#1c2947;border-color:#3b82f6}.tour-row-main{flex:1 1 auto;min-width:0}.tour-row-name{font-size:1.15vw;font-weight:700;color:#f3f6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tour-row-meta{font-size:.85vw;color:#94a3b8;margin-top:.2vw}.tour-row-slots{flex:0 0 auto;font-size:.75vw;font-weight:800;letter-spacing:.12em;color:#0b1120;background:#60a5fa;border-radius:.3vw;padding:.25vw .6vw}.tour-row-slots.is-full{background:#64748b}#tourCreateDuration{flex:0 0 auto;width:8vw}.tour-duration-hint{flex:0 0 auto;width:14vw;margin-left:.8vw;color:#9fb4d4;font-size:.95vw;white-space:nowrap}.tour-duration-hint.is-invalid{color:#f5a0a0}.tour-countdown{text-align:center;margin:-.9vw 0 1.4vw;color:#60a5fa}.tour-countdown-label{font-size:.85vw;text-transform:uppercase;letter-spacing:.14em;color:#9fb4d4}.tour-countdown-value{font-size:1.8vw;font-weight:800;letter-spacing:.06em;line-height:1.2}.tour-countdown.is-ended{color:#64748b}.tour-countdown.is-soon{color:#fbbf24}.tour-modal-error{min-height:1.3vw;margin-top:.7vw;color:#f5a0a0;font-size:.95vw;text-align:center}.tour-lock{margin-left:.6vw;color:#fbbf24;font-size:.8vw}.tour-empty{color:#64748b;font-style:italic;font-size:.95vw;padding:.8vw .2vw}.tour-create{max-width:46vw}#tournamentDetailView .rv-body{grid-template-columns:34vw 1fr 22vw}.rv-players .tour-table-wrap{flex:1 1 auto;min-height:0;overflow-y:auto}.tour-footer-side{justify-self:end;display:flex;gap:.6vw}.tour-standings-panel{flex:1 1 auto;min-height:0}.tour-table-wrap{overflow-x:auto}.tour-table{width:100%;border-collapse:collapse;font-size:1vw}.tour-table th{text-align:left;color:#9fb4d4;font-size:.8vw;text-transform:uppercase;letter-spacing:.1em;border-bottom:.1vw solid #26375c;padding:.5vw .7vw}.tour-table td{color:#e2e8f0;padding:.6vw .7vw;border-bottom:.07vw solid #1e2c47}.tour-table th:first-child,.tour-table td:first-child{width:2.2vw;color:#64748b}.tour-table th:nth-child(n+3),.tour-table td:nth-child(n+3){width:3vw;text-align:center}.tour-table th:nth-child(2),.tour-table td:nth-child(2){width:auto;min-width:12vw;white-space:nowrap}.tour-flag{margin-right:.5vw}.tour-standing-name{cursor:pointer;font-weight:600}.tour-standing-name:hover{color:#60a5fa;text-decoration:underline}#toastContainer{position:fixed;right:1.4vw;bottom:1.4vw;z-index:9995;display:flex;flex-direction:column-reverse;gap:.6vw;pointer-events:none}.toast{min-width:14vw;max-width:26vw;padding:.8vw 1.1vw;border-radius:.6vw;border-left:.25vw solid #3b82f6;background:linear-gradient(135deg,#1c2947,#141d33);color:#e2e8f0;font-size:1vw;line-height:1.45;box-shadow:0 8px 30px #00000073;animation:toast-life 6s ease forwards;overflow-wrap:anywhere}.toast-error{border-left-color:#f5576c;color:#ffd9de}@keyframes toast-life{0%{opacity:0;transform:translate(1.5vw)}5%{opacity:1;transform:translate(0)}65%{opacity:1}to{opacity:0;transform:translateY(-.4vw)}}@media (prefers-reduced-motion: reduce){.toast{animation:toast-fade 6s linear forwards}@keyframes toast-fade{0%,65%{opacity:1}to{opacity:0}}}.cg-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#060a148c}.cg-modal{background:linear-gradient(180deg,#16203a,#101728);border:.14vw solid #3b82f6;border-radius:1vw;padding:2.4vw 2.6vw;min-width:38vw;box-shadow:0 0 40px #3b82f640,0 20px 50px #00000080}.cg-modal-title{font-size:2vw;font-weight:800;color:#f3f6ff;text-transform:uppercase;letter-spacing:.08em;text-align:center;margin-bottom:.6vw}.cg-modal-sub{text-align:center;color:#9fb4d4;font-size:1vw;margin-bottom:1.4vw}.cg-choice-row{display:flex;gap:1.4vw;margin-top:1.4vw}.cg-choice-btn{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:.4vw;padding:2vw 1.4vw;border:.14vw solid #3b82f6;border-radius:.85vw;background:linear-gradient(180deg,#233a5d,#1a233a);color:#f3f6ff;cursor:pointer;font-family:inherit;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.cg-choice-btn:hover{transform:translateY(-2px) scale(1.02);background:linear-gradient(180deg,#3b82f6,#1e293b);box-shadow:0 0 24px #3b82f6}.cg-choice-icon{font-size:2.4vw}.cg-choice-label{font-size:1.4vw;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.cg-choice-sub{font-size:.85vw;color:#9fb4d4}.cg-code-input{display:block;width:100%;margin:0 auto;background:#0f1728;color:#60a5fa;border:.12vw dashed #3b82f6;border-radius:.6vw;padding:1vw;font-family:inherit;font-size:2.4vw;font-weight:800;letter-spacing:.4em;text-align:center;text-transform:uppercase}.cg-code-input:focus{outline:none;border-color:#60a5fa;border-style:solid}.cg-code-input::placeholder{color:#334765}.cg-modal-actions{display:flex;gap:.8vw;justify-content:center;margin-top:1.4vw}.rv-shell{width:100vw;height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#0b1120,#131b2b)}.rv-topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1vw;height:6.7vw;box-sizing:border-box;padding:.7vw 1.25vw;border-bottom:.1vw solid #26375c;background:linear-gradient(180deg,#232946,#181c2f);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rv-exit{position:fixed;left:1.4vw;bottom:1.4vw;z-index:20;border:.14vw solid #475569;border-radius:.6vw;background:linear-gradient(180deg,#1e293b,#131b2b);color:#f3f6ff;font-family:inherit;font-size:1.2vw;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.7vw 1.8vw;cursor:pointer}.rv-exit:hover{border-color:#f5a0a0;color:#f5a0a0}.rv-code-box{text-align:center;cursor:pointer;padding:.3vw 2vw;border-radius:.6vw;border:.1vw solid #26375c;background:#0f1728}.rv-code-box:hover{border-color:#3b82f6}.rv-code-hint{font-size:.7vw;color:#64748b;text-transform:uppercase;letter-spacing:.14em}.rv-code{font-size:2vw;font-weight:800;color:#60a5fa;letter-spacing:.32em}.rv-topbar-user{justify-self:end}.rv-body{flex:1 1 auto;display:grid;grid-template-columns:28vw 1fr 24vw;grid-template-rows:minmax(0,1fr);gap:1vw;padding:1vw 1.4vw;min-height:0}.rv-panel{background:#16203a99;border:.1vw solid #26375c;border-radius:.8vw;padding:1.2vw;display:flex;flex-direction:column;min-height:0}.rv-panel-title{font-size:1.3vw;font-weight:800;color:#f3f6ff;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.9vw}.rv-panel-subtitle{font-size:.9vw;color:#9fb4d4;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5vw}.rv-players .room-members{flex:0 0 auto}.rv-invite{margin-top:auto}.rv-settings{overflow-y:auto;max-width:34vw;margin-left:auto;margin-right:auto;width:100%}.rv-room-title{font-size:1.8vw;font-weight:800;color:#f3f6ff;text-align:center;margin-bottom:1.6vw}.rv-setting-row{display:flex;align-items:center;gap:1vw;padding:.7vw 0;border-bottom:.08vw solid #1e2c47}.rv-setting-label{flex:0 0 10vw;font-size:1.05vw;color:#cbd5e1;text-transform:uppercase;letter-spacing:.06em}.rv-setting-static{color:#9fb4d4;font-size:.95vw;flex:1 1 auto;text-align:right;white-space:nowrap}.rv-guest-note{margin-top:1.2vw;color:#9fb4d4;font-size:.95vw;font-style:italic}.rv-chat .chat-messages{flex:1 1 auto;min-height:0;overflow-y:auto;margin-bottom:.7vw}.rv-chat .chat-input-group{flex:0 0 auto}.rv-chat .chat-message{background:#16203a;border-left:.2vw solid #3b82f6;border-radius:.4vw;padding:.5vw .7vw;margin-bottom:.5vw;font-size:.95vw;line-height:1.55;color:#fff;word-break:normal;overflow-wrap:anywhere}.rv-chat .chat-message strong{color:#60a5fa;font-weight:700}.rv-chat .chat-message .chat-text{color:#fff}.rv-chat .chat-input{background:#16203a;color:#f3f6ff;border:.12vw solid #3b82f6;border-radius:.5vw;padding:.6vw .8vw;font-size:.95vw;font-family:inherit}.rv-chat .chat-input::placeholder{color:#64748b}.rv-chat .chat-input:focus{outline:none;border-color:#60a5fa}.rv-chat .chat-send-btn{border-radius:.5vw;padding:.6vw 1.1vw;font-size:.95vw;font-family:inherit}.rv-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1vw;padding:.9vw 1.4vw 1.4vw;border-top:.1vw solid #26375c}.rv-footer .rv-exit{justify-self:start;position:static}.rv-start-btn{min-width:16vw;border:.14vw solid #3b82f6;border-radius:.6vw;background:linear-gradient(180deg,#233a5d,#1a233a);color:#f3f6ff;font-family:inherit;font-size:1.15vw;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:.65vw 1.6vw;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.rv-start-btn:hover:not(:disabled){transform:translateY(-2px);background:linear-gradient(180deg,#3b82f6,#1e293b);box-shadow:0 0 24px #3b82f6}.rv-start-btn:disabled{opacity:.4;cursor:not-allowed}#channelView .home-main,#settingsView .home-main{justify-content:center}#settingsView .home-actions-panel{width:min(75vw,100%)}#channelView .home-actions-panel{width:min(69.4vw,100%);background:transparent;border:none;box-shadow:none;padding:0}#channelView .home-action-group{background:transparent;border:none;box-shadow:none;padding:0}.channel-card-list{width:100%;display:flex;flex-direction:column;gap:2.5vw}.channel-card{width:100%;border:.14vw solid #3b82f6;border-radius:.85vw;background:linear-gradient(180deg,#233a5d,#1a233a);color:#f3f6ff;padding:2.8vw 2.5vw;text-align:left;cursor:pointer;box-shadow:0 0 12px #3b82f62e,0 2px 8px #0000002e;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border .2s}.channel-card:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 0 24px #3b82f6,0 14px 26px #30469c61;background:linear-gradient(180deg,#2d4a78,#1e293b);border:.14vw solid #60a5fa}.channel-card:active{transform:translateY(0);box-shadow:0 4px 10px #0000001a}.channel-card-title{font-size:2.5vw;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.7vw}.channel-card-desc{font-size:1.1vw;font-weight:400;color:#b8c8e8;letter-spacing:.01em;line-height:1.5}.channel-card-row{display:flex;gap:2.5vw}.channel-card-row .channel-card{flex:1}#leaderboardView{width:100vw;height:100vh;max-width:none}.lb-tabs{display:flex;gap:0;padding:.97vw 1.95vw 0;border-bottom:.14vw solid #2d3a5a}.lb-tab{background:none;border:none;outline:none;color:#64748b;font-size:1.1vw;font-weight:700;padding:.55vw 1.4vw .85vw;cursor:pointer;position:relative;letter-spacing:.04em;transition:color .2s}.lb-tab.active{color:#e2e8f0}.lb-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:3px;background:#60a5fa;border-radius:.14vw .14vw 0 0}.lb-filters{display:flex;align-items:center;gap:1.65vw;padding:.97vw 1.95vw;background:#ffffff08;border-bottom:.069vw solid #2d3a5a}.lb-filter-group{display:flex;align-items:center;gap:.55vw;flex:1}.lb-filter-label{font-size:.76vw;font-weight:800;letter-spacing:.12em;color:#64748b;text-transform:uppercase;white-space:nowrap}.lb-country-select{flex:1;background:#1e2a40;color:#e2e8f0;border:.069vw solid #334155;border-radius:.5vw;padding:.42vw .7vw;font-size:.97vw;font-weight:600;font-family:inherit;cursor:pointer;outline:none;max-width:18vw}.lb-country-select:focus{border-color:#60a5fa}.lb-filter-divider{width:1px;height:1.95vw;background:#2d3a5a;align-self:center;flex-shrink:0}.lb-show-group{display:flex;align-items:center;gap:.55vw}.lb-show-btns{display:flex;gap:.28vw}.lb-show-btn{background:none;border:none;outline:none;color:#64748b;font-size:.9vw;font-weight:700;padding:.35vw .97vw;border-radius:1.4vw;cursor:pointer;transition:background .15s,color .15s}.lb-show-btn.active{background:#e2e8f0;color:#181c2f}.lb-sort-row{display:flex;align-items:center;gap:.7vw;padding:.7vw 1.95vw;border-bottom:.069vw solid #2d3a5a}.lb-sort-label{font-size:.9vw;font-weight:700;color:#64748b;margin-right:.28vw}.lb-sort-btn{background:none;border:none;outline:none;color:#64748b;font-size:.9vw;font-weight:700;padding:.42vw 1.1vw;border-radius:1.4vw;cursor:pointer;transition:background .15s,color .15s}.lb-sort-btn.active{background:#1e2a40;color:#e2e8f0;border:.069vw solid #334155}.lb-table-wrap{height:27.8vw;overflow-y:auto;padding:0 1.95vw}.lb-table{width:100%;border-collapse:collapse;font-size:1.04vw}.lb-table thead th{padding:.85vw .55vw;text-align:left;font-size:.76vw;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#64748b;border-bottom:.14vw solid #2d3a5a}.lb-table tbody tr{border-bottom:.069vw solid rgba(255,255,255,.05);transition:background .12s}.lb-table tbody tr:hover{background:#ffffff0a}.lb-table tbody tr.lb-row-me{background:#60a5fa14}.lb-table td{padding:.7vw .55vw;color:#e2e8f0;font-weight:600}.lb-rank{width:3.9vw;color:#94a3b8;font-weight:800;font-size:1.1vw}.lb-player{display:flex;align-items:center;gap:.55vw}.lb-flag{font-size:1.25vw;line-height:1}.lb-name{font-weight:700}.lb-score{text-align:right;font-weight:800;color:#60a5fa;font-size:1.1vw}.lb-loading{text-align:center;padding:2.2vw;color:#64748b;font-style:italic;font-size:1.5vw}.lb-pagination{display:flex;align-items:center;justify-content:center;gap:.28vw;padding:.97vw 1.95vw;border-top:.069vw solid #2d3a5a;flex-wrap:wrap}.lb-page-btn{background:none;border:.069vw solid transparent;outline:none;color:#94a3b8;font-size:.9vw;font-weight:700;min-width:2.36vw;height:2.36vw;padding:0 .7vw;border-radius:.55vw;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.lb-page-btn:hover:not(.disabled):not(.active){background:#ffffff12;color:#e2e8f0}.lb-page-btn.active{background:#60a5fa;color:#181c2f;border-color:#60a5fa}.lb-page-btn.disabled{opacity:.3;cursor:default;pointer-events:none}.lb-page-ellipsis{color:#64748b;padding:0 .42vw;line-height:2.36vw}.friends-body{display:flex;flex-direction:row;flex:1;min-height:0;gap:0;overflow:hidden}.friends-left-panel{display:flex;flex-direction:column;width:42%;min-width:19.4vw;border-right:.139vw solid #2d3a5a;overflow:hidden}.friends-panel-header{display:flex;align-items:center;justify-content:space-between;padding:1.1vw 1.95vw .97vw;border-bottom:.14vw solid #2d3a5a;flex-shrink:0;gap:1.1vw}.friends-panel-title{font-size:1.55vw;font-weight:800;color:#e2e8f0;white-space:nowrap}.fmd-wrap{position:relative;flex-shrink:0}.fmd-trigger{display:flex;align-items:center;gap:.55vw;padding:.5vw .85vw;background:#1e2a40;border:.069vw solid #334155;border-radius:.5vw;color:#e2e8f0;font-size:.97vw;font-weight:600;cursor:pointer;white-space:nowrap;min-width:8.3vw;justify-content:space-between;-webkit-user-select:none;user-select:none;transition:border-color .15s}.fmd-trigger:hover,.fmd-wrap.open .fmd-trigger{border-color:#60a5fa}.fmd-trigger-arrow{font-size:.7vw;color:#64748b}.fmd-menu{display:none;position:fixed;background:#1e2a40;border:.069vw solid #334155;border-radius:.55vw;min-width:9.7vw;z-index:5000;box-shadow:0 8px 24px #0006;overflow:visible}.fmd-wrap.open .fmd-menu{display:block}.fmd-item{position:relative;padding:.63vw .97vw;font-size:.97vw;font-weight:600;color:#e2e8f0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.42vw;border-radius:.42vw;transition:background .12s}.fmd-item:hover{background:#60a5fa1f}.fmd-item.active{color:#60a5fa}.fmd-item-arrow{font-size:.7vw;color:#64748b}.fmd-submenu{display:none;position:fixed;background:#1e2a40;border:.069vw solid #334155;border-radius:.55vw;min-width:8.3vw;z-index:5001;box-shadow:0 8px 24px #0006}.fmd-item:hover .fmd-submenu{display:block}.fmd-subitem{padding:.63vw .97vw;font-size:.9vw;font-weight:600;color:#e2e8f0;cursor:pointer;border-radius:.42vw;transition:background .12s}.fmd-subitem:hover{background:#60a5fa1f}.fmd-subitem.active{color:#60a5fa}.friends-table-wrap{padding:0 1.4vw;overflow-y:auto;max-height:27.8vw}.friends-right-panel{display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden;padding:1.4vw 1.95vw;gap:1.1vw}.friends-search-wrap{flex-shrink:0}.friends-search-input{width:100%;padding:.85vw 1.25vw;background:#1e2a40;border:.069vw solid #334155;border-radius:.7vw;color:#e2e8f0;font-size:1.04vw;font-weight:500;outline:none;box-sizing:border-box;transition:border-color .2s}.friends-search-input:focus{border-color:#60a5fa}.friends-search-input::placeholder{color:#64748b}.friends-search-results{flex:1;overflow-y:auto}.friends-result-row{display:flex;align-items:center;justify-content:space-between;padding:.85vw .97vw;border-bottom:.069vw solid rgba(255,255,255,.05);transition:background .12s}.friends-result-row:hover{background:#ffffff0a}.friends-result-info{display:flex;align-items:center;gap:.7vw}.friends-result-name{font-size:1.04vw;font-weight:700;color:#e2e8f0}.friends-result-flag{font-size:1.25vw}.friends-add-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:.42vw;color:#fff;font-size:.76vw;font-weight:700;padding:.28vw .7vw;cursor:pointer;transition:opacity .15s;white-space:nowrap;width:fit-content;flex:0 0 auto}.friends-add-btn:hover{opacity:.85}.friends-add-btn:disabled{opacity:.4;cursor:default}.friends-add-btn.pending{background:#2d3a5a;color:#64748b}.friends-add-btn.already{background:#1e3a2a;color:#4ade80}#replayModal{display:flex;flex-direction:column;align-items:center;background:#181c2f;overflow-y:auto}.replay-topbar{width:100%;padding:.7vw 5vw .4vw;display:flex;justify-content:center;align-items:center;flex-shrink:0}#replayInfoText{font-size:.95vw;font-weight:700;color:#94a3b8;flex:1;min-width:0}.replay-left-section{display:flex;flex-direction:column;align-items:center;gap:1vw}.replay-body{display:flex;flex-direction:row;gap:1.6vw;align-items:stretch;justify-content:center;padding:0 1vw 4vw;width:100%;box-sizing:border-box}.replay-middle-section{display:flex;flex-direction:column;justify-content:space-between;flex:0 0 21vw;min-height:0}.replay-side-panel{flex:0 0 19vw;display:flex;flex-direction:column}.replay-panel{background:#16203a99;border:.1vw solid #26375c;border-radius:.69vw;padding:.8vw;display:flex;flex-direction:column;align-items:center;gap:.85vw;width:100%;box-sizing:border-box;flex:1}.replay-panel-header{font-size:.8vw;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#94a3b8;padding-bottom:.55vw;border-bottom:.1vw solid #26375c;align-self:stretch}.replay-step-indicator{font-size:1.7vw;font-weight:800;color:#a78bfa;font-family:Courier New,monospace;text-align:center}.replay-btn-row{display:flex;gap:.55vw;justify-content:center;align-self:stretch}.replay-ctrl-btn{flex:1;background:#16203a;border:.12vw solid #3b82f6;color:#cbd5e1;border-radius:.56vw;padding:.45vw .65vw;cursor:pointer;font-size:1.05vw;font-weight:700;transition:all .15s;text-align:center}.replay-ctrl-btn:hover{background:#1d2b4d;border-color:#60a5fa;transform:translateY(-1px)}.replay-play-full-btn{align-self:stretch;padding:.55vw;font-size:.85vw;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;border-radius:.56vw;cursor:pointer;transition:all .2s;flex:unset}.replay-play-full-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea4d}#profileView{width:100vw;height:100vh;max-width:none}.profile-shell{width:100%;height:100%;background:linear-gradient(135deg,#181c2f,#232946);border:.208vw solid #1a1d2a;border-radius:.42vw;overflow-y:auto;overflow-x:hidden;font-family:Twemoji Country Flags,Nunito,Trebuchet MS,Segoe UI,sans-serif;position:relative;display:flex;flex-direction:column}.profile-main{flex:1;display:flex;align-items:center;justify-content:center;padding:2.2vw 1.4vw 2.8vw}.profile-layout{display:grid;grid-template-columns:18vw 1fr;gap:0;width:min(59.7vw,100%);min-height:36vw;border-radius:1.4vw;overflow:hidden;box-shadow:0 32px 64px #0000006b}.profile-id-panel{background:linear-gradient(160deg,#1e254a,#141829);border-right:.104vw solid #2a345e;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.1vw;padding:2.8vw 1.65vw;text-align:center}.profile-avatar-circle{width:6.1vw;height:6.1vw;border-radius:50%;background:linear-gradient(135deg,#3b63e7,#2bb9c9);display:flex;align-items:center;justify-content:center;font-size:2.9vw;box-shadow:0 6px 24px #3b63e759;border:.208vw solid #2a345e;position:relative;cursor:pointer;overflow:hidden}.profile-avatar-circle img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.profile-avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#00000073;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;font-size:1.5vw}.profile-avatar-circle:hover .profile-avatar-overlay{opacity:1}.profile-username{font-family:Twemoji Country Flags,Nunito,sans-serif;font-size:1.8vw;font-weight:800;color:#fff;letter-spacing:.04em;word-break:break-all}.profile-country-badge{display:flex;flex-direction:column;align-items:center;gap:.42vw;margin-top:.28vw}.profile-current-flag{font-size:1.95vw;line-height:1}.profile-current-code{font-size:.9vw;font-weight:700;letter-spacing:.12em;color:#8ba3d4;text-transform:uppercase}.profile-fields-panel{background:linear-gradient(160deg,#232946,#1a1f38);display:flex;flex-direction:column;gap:0;padding:2.5vw 2.2vw 1.95vw}.profile-field-group{display:flex;flex-direction:column;gap:.55vw;margin-bottom:1.5vw}.profile-field-label{font-size:.76vw;font-weight:700;letter-spacing:.14em;color:#667fcf;text-transform:uppercase}.profile-field-input{width:100%;border:.1vw solid #2e3d6a;border-radius:.7vw;background:#181c2f;color:#e0e6f0;font-size:.97vw;font-family:inherit;padding:.7vw .97vw;transition:border-color .2s,box-shadow .2s}.profile-field-input:focus{outline:none;border-color:#3b63e7;box-shadow:0 0 0 3px #3b63e72e}.profile-country-select{width:100%;border:.1vw solid #2e3d6a;border-radius:.7vw;background:#181c2f;color:#e0e6f0;font-size:.97vw;font-family:inherit;padding:.7vw .97vw;height:2.9vw;transition:border-color .2s}.profile-country-select:focus{outline:none;border-color:#3b63e7;box-shadow:0 0 0 3px #3b63e72e}.profile-country-select option{background:#181c2f;color:#e0e6f0}.profile-divider{height:1.5px;background:#2a345e;border:none;margin:.28vw 0 1.5vw}.profile-pw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7vw}.profile-pw-grid input{border:.1vw solid #2e3d6a;border-radius:.7vw;background:#181c2f;color:#e0e6f0;font-size:.9vw;font-family:inherit;padding:.63vw .85vw;width:100%;transition:border-color .2s}.profile-pw-grid input:focus{outline:none;border-color:#3b63e7}.profile-pw-btn{width:100%;margin-top:.7vw;padding:.7vw;border:.1vw solid #2e3d6a;border-radius:.7vw;background:#1e254a;color:#8ba3d4;font-size:.9vw;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}.profile-pw-btn:hover{background:#2a345e;color:#fff}.profile-status{display:none;padding:.55vw .85vw;border-radius:.55vw;font-size:.9vw;font-weight:600;margin-bottom:.85vw}.profile-status.success{display:block;background:#21965326;color:#5de8a0}.profile-status.error{display:block;background:#b9272726;color:#f87171}.profile-action-row{display:flex;gap:.85vw;margin-top:auto;padding-top:.55vw}.profile-cancel-btn{flex:1;padding:.76vw;border:.1vw solid #2e3d6a;border-radius:.7vw;background:transparent;color:#8ba3d4;font-size:.9vw;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}.profile-cancel-btn:hover{background:#1e254a;color:#fff}.profile-save-btn{flex:2;padding:.76vw;border:none;border-radius:.7vw;background:linear-gradient(135deg,#3b63e7,#2bb9c9);color:#fff;font-size:.9vw;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:0 4px 18px #3b63e740;transition:opacity .2s,transform .15s}.profile-save-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.profile-save-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}@media (max-width: 620px){.profile-layout{grid-template-columns:1fr}.profile-id-panel{flex-direction:row;justify-content:flex-start;padding:20px;border-right:none;border-bottom:.104vw solid #2a345e;text-align:left}.profile-country-badge{flex-direction:row;margin-top:0}}.matchmaking-container{background:#fff;border-radius:1.39vw;padding:40px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%}h1{text-align:center;color:#333;margin-bottom:.7vw;font-size:2.8vw}.subtitle{text-align:center;color:#666;margin-bottom:2.1vw;font-size:1vw}.input-group{margin-bottom:1.4vw}label{display:block;margin-bottom:.55vw;color:#555;font-weight:600;font-size:1.1vw}input{width:100%;padding:.85vw;border:.14vw solid #e0e0e0;border-radius:.55vw;font-size:1.1vw;transition:border-color .3s}input:focus{outline:none;border-color:#667eea}.button-group{display:flex;gap:.7vw;margin-top:1.4vw}button{flex:1;padding:1.05vw;border:none;border-radius:.55vw;font-size:1.1vw;font-weight:600;cursor:pointer;transition:all .3s}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #667eea66}.btn-secondary{background:transparent;color:#667eea;border:2px solid #667eea}.btn-secondary:hover:not(:disabled){background:#667eea1a;transform:translateY(-2px)}.btn-danger{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #f5576c66}.status{margin:1.4vw 0;padding:1.1vw;border-radius:.55vw;text-align:center;font-weight:600;display:none}.status.show{display:block}.status.idle{background:#f0f0f0;color:#666}.status.waiting{background:#fff3cd;color:#856404;animation:pulse 2s infinite}.status.matched{background:#d4edda;color:#155724}.status.error{background:#f8d7da;color:#721c24}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}#loadingOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99998;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4vw;background:#0a101eb8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility 0s linear .2s}#loadingOverlay.show{opacity:1;visibility:visible;transition:opacity .2s ease,visibility 0s}.loading-ring{width:4.2vw;height:4.2vw;min-width:44px;min-height:44px;border-radius:50%;border:.3vw solid rgba(59,130,246,.25);border-top-color:#3b82f6;animation:spin .9s linear infinite}.loading-text{color:#e8eeff;font-size:1.2vw;font-weight:600;letter-spacing:.04em;text-align:center;max-width:70vw}.loading-hint{color:#7f93bd;font-size:.95vw;opacity:0;transition:opacity .4s ease}#loadingOverlay.slow .loading-hint{opacity:1}#apiProgress{position:fixed;top:0;left:0;right:0;height:.22vw;min-height:2px;z-index:99999;background:linear-gradient(90deg,#3b82f6,#60a5fa,#3b82f6);background-size:200% 100%;transform:scaleX(0);transform-origin:left;opacity:0;transition:opacity .15s ease;pointer-events:none}#apiProgress.busy{opacity:1;animation:apiProgressGrow 6s cubic-bezier(.1,.8,.2,1) forwards,apiProgressShimmer 1.2s linear infinite}@keyframes apiProgressGrow{0%{transform:scaleX(0)}40%{transform:scaleX(.55)}75%{transform:scaleX(.8)}to{transform:scaleX(.92)}}@keyframes apiProgressShimmer{0%{background-position:0% 0}to{background-position:-200% 0}}#apiProgress.done{animation:none;transform:scaleX(1);opacity:0;transition:transform .2s ease,opacity .35s ease .15s}.spinner{border:.2vw solid #f3f3f3;border-top:.2vw solid #667eea;border-radius:50%;width:2.8vw;height:2.8vw;animation:spin 1s linear infinite;margin:20px auto;display:none}.spinner.show{display:block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.info{background:#e7f3ff;border-left:.28vw solid #2196F3;padding:.85vw;margin-top:1.4vw;border-radius:.28vw;font-size:.97vw;color:#555}.queue-info{text-align:center;margin-top:1vw;color:#666;font-size:.97vw;font-style:italic}.queue-count{display:flex;align-items:center;justify-content:center;gap:.5vw;min-height:2.4vw;margin:1.1vw 0 .4vw;font-size:1.05vw;font-weight:600;color:#8ba3d4}.queue-count.has-players{color:#cbd5e1}.queue-count .qc-num{font-weight:800;color:#e0e6f0}#matchmakingView,#exRankedView,#exUnrankedView{--match-bg: #eaf1ff;--match-surface: #ffffff;--match-border: #1a1d2a;--match-muted: #596177;width:100vw;height:100vh;max-width:none}#matchmakingView .matchmaking-container,#exRankedView .matchmaking-container,#exUnrankedView .matchmaking-container{max-width:none;width:100%;height:100%;padding:0 0 5.5vw;border-radius:.42vw;border:.208vw solid var(--match-border);color:#101321;background:radial-gradient(circle at 15% 15%,#3b63e714,#3b63e700 40%),radial-gradient(circle at 80% 88%,#31b2ba14,#31b2ba00 42%),linear-gradient(135deg,#181c2f,#232946);box-shadow:0 18px 40px #00000047;font-family:Twemoji Country Flags,Nunito,Trebuchet MS,Segoe UI,sans-serif;position:relative;overflow-y:auto;overflow-x:hidden}.match-back{position:fixed;left:1.4vw;bottom:1.4vw;border:.14vw solid #2b345a;background:linear-gradient(180deg,#fff,#f4f8ff);color:#131728;border-radius:.85vw;padding:.85vw 1.5vw;text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:1.1vw;min-width:7vw;text-align:center;z-index:20;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.match-back:hover{transform:translateY(-2px);box-shadow:0 14px 26px #30469c33;background:linear-gradient(180deg,#fff,#e8f2ff)}.match-heading{display:flex;flex-direction:column;gap:2px;align-self:center}.match-title{margin:0 0 18px;text-align:center;color:#fff;font-size:clamp(34px,4.5vw,60px);font-weight:800;letter-spacing:.05em;text-transform:uppercase;background:linear-gradient(180deg,#232946,#181c2f);border:.14vw solid #232946;border-radius:.83vw;padding:16px 20px;box-shadow:0 0 12px #3b82f62e,0 2px 8px #0000002e}.match-subtitle{margin:0;color:#596177;font-size:13px;letter-spacing:.12em;text-transform:uppercase}.match-profile-box{display:flex;align-items:center;gap:12px;min-width:220px;padding:6px 14px;border:.208vw solid var(--match-border);border-radius:.83vw;background:linear-gradient(180deg,#fff,#eef4ff);box-shadow:0 10px 20px #111b381f;justify-self:end;align-self:center}.match-profile-avatar{width:50px;height:50px;border-radius:50%;border:.208vw solid var(--match-border);display:flex;align-items:center;justify-content:center;font-size:24px;background:#fff;flex:0 0 auto}.match-profile-info{display:flex;flex-direction:column;gap:6px;min-width:0}.match-profile-name{color:#111;font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.match-profile-flag{display:inline-flex;align-items:center;justify-content:center;width:40px;height:22px;border:.208vw solid var(--match-border);border-radius:.28vw;background:#fff;font-size:14px;line-height:1}#matchmakingView .input-group,#exRankedView .input-group,#exUnrankedView .input-group{margin-bottom:14px}#matchmakingView .matchmaking-user-input,#exRankedView .matchmaking-user-input,#exUnrankedView .matchmaking-user-input{display:none}#matchmakingView label,#exRankedView label,#exUnrankedView label{color:#4e597c;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}#matchmakingView input,#exRankedView input,#exUnrankedView input{background:#fff;color:#101321;border:.14vw solid #b0bcd4;border-radius:.56vw}#matchmakingView input::placeholder,#exRankedView input::placeholder,#exUnrankedView input::placeholder{color:#8a96b0}#matchmakingView .status,#exRankedView .status,#exUnrankedView .status{margin:.7vw 0;border-radius:.7vw;border:.14vw solid #d0d8ee;text-transform:uppercase;letter-spacing:.06em;font-size:1.5vw;font-weight:700}#matchmakingView .status.idle,#exRankedView .status.idle,#exUnrankedView .status.idle{background:#f0f4fb;color:#4e597c}#matchmakingView .status.waiting,#exRankedView .status.waiting,#exUnrankedView .status.waiting{background:#fff8e1;color:#856404;border-color:#f5d87a}#matchmakingView .status.matched,#exRankedView .status.matched,#exUnrankedView .status.matched{background:#e8f8f0;color:#155724;border-color:#89d6a8}#matchmakingView .status.error,#exRankedView .status.error,#exUnrankedView .status.error{background:#fde8e8;color:#721c24;border-color:#f5a0a0}#matchmakingView .spinner,#exRankedView .spinner,#exUnrankedView .spinner{display:none!important}#matchmakingView .queue-info,#exRankedView .queue-info,#exUnrankedView .queue-info{margin:.55vw 0 .97vw;color:#596177;font-size:1.1vw;letter-spacing:.08em;text-transform:uppercase;font-weight:600}#matchmakingView .button-group,#exRankedView .button-group,#exUnrankedView .button-group{display:grid;grid-template-columns:1fr;gap:10px;margin-top:14px;justify-items:center}.match-action-area{min-height:calc(100% - 14.6vw);display:flex;flex-direction:column;justify-content:center;padding:2.8vw 1.65vw 1.65vw;margin-top:15vh}.match-action-area .button-group{width:75vw;margin-left:auto;margin-right:auto}.match-action-area .button-group .home-menu-btn{width:100%}#matchmakingView .btn-primary,#exRankedView .btn-primary,#exUnrankedView .btn-primary{border-radius:.85vw;border:.14vw solid #2b345a;background:linear-gradient(180deg,#fff,#f4f8ff);color:#131728;text-transform:uppercase;letter-spacing:.08em;font-size:3.6vw;font-weight:700;padding:1.25vw 1.4vw;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}#matchmakingView .btn-primary:hover:not(:disabled),#exRankedView .btn-primary:hover:not(:disabled),#exUnrankedView .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 26px #30469c33;background:linear-gradient(180deg,#fff,#e8f2ff)}#matchmakingView .btn-danger,#exRankedView .btn-danger,#exUnrankedView .btn-danger{width:min(38.9vw,60%);border-radius:.7vw;border:.14vw solid #c43030;background:linear-gradient(180deg,#fff5f5,#ffe0e0);color:#7a1010;text-transform:uppercase;letter-spacing:.08em;font-weight:700;padding:.97vw 1.25vw;font-size:1.25vw;transition:transform .2s ease,box-shadow .2s ease}#matchmakingView .btn-danger:hover:not(:disabled),#exRankedView .btn-danger:hover:not(:disabled),#exUnrankedView .btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #b4282833}#matchmakingView .matchmaking-container,#exRankedView .matchmaking-container,#exUnrankedView .matchmaking-container{display:flex;flex-direction:column}#exUnrankedView .match-info-row .match-time-card{grid-column:2}.ad-rail{position:fixed;top:6.7vw;bottom:0;width:0;overflow:hidden;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:5}.ad-rail-left{left:0}.ad-rail-right{right:0}.ad-rail.live{width:12vw}.ad-rail.filled{pointer-events:auto}.ad-rail.filled:before{content:"Ad";position:absolute;top:.3vw;left:50%;transform:translate(-50%);font-size:.7vw;letter-spacing:.08em;text-transform:uppercase;color:#5f7099}.match-info-row{display:grid;grid-template-columns:1fr 1fr;gap:1.1vw;width:75vw;margin-left:auto;margin-right:auto;padding:2.2vw 0 0;flex-shrink:0}.match-rating-card{background:linear-gradient(145deg,#1b2240,#141829);border:.14vw solid #2a345e;border-radius:.85vw;padding:1.1vw 1.65vw;height:5.55vw;display:flex;flex-direction:row;align-items:center}.match-rating-inner{display:flex;flex-direction:row;align-items:flex-end;gap:.7vw}.match-time-card{background:linear-gradient(145deg,#1b2240,#141829);border:.14vw solid #2a345e;border-radius:.85vw;height:5.55vw;justify-content:center;padding:0;overflow:hidden;position:relative}#matchRatingValue,#exRankedRatingValue{font-family:Twemoji Country Flags,Nunito,Trebuchet MS,sans-serif;font-size:3.6vw;font-weight:800;color:#e0e6f0;line-height:1;letter-spacing:-.02em}.match-rating-label{font-family:Twemoji Country Flags,Nunito,Trebuchet MS,sans-serif;font-size:1vw;font-weight:500;color:#8a96c0;letter-spacing:.04em}.bot-picker{width:100%;border:.14vw solid #3b82f6;border-radius:.85vw;background:linear-gradient(180deg,#1b2540,#141c30);box-shadow:0 0 12px #3b82f62e,0 2px 8px #00000038;padding:1vw;box-sizing:border-box}.bot-picker-featured{display:flex;align-items:flex-start;gap:.9vw}.bot-picker-portrait{width:5.2vw;height:5.2vw;flex:0 0 auto;border-radius:50%;overflow:hidden;background:#253355;border:.14vw solid #3b82f6;display:flex;align-items:center;justify-content:center}.bot-picker-portrait img{width:100%;height:100%;object-fit:cover;display:block}.bot-picker-speech{position:relative;flex:1 1 auto;min-height:3.4vw;background:#223050;border:.12vw solid #3b82f6;border-radius:.7vw;padding:.75vw .95vw;color:#e8eeff;font-size:1vw;line-height:1.45}.bot-picker-speech:before{content:"";position:absolute;left:-.62vw;top:1.5vw;width:0;height:0;border-top:.5vw solid transparent;border-bottom:.5vw solid transparent;border-right:.62vw solid #3b82f6}.bot-picker-speech:after{content:"";position:absolute;left:-.44vw;top:1.5vw;width:0;height:0;border-top:.5vw solid transparent;border-bottom:.5vw solid transparent;border-right:.62vw solid #223050}.bot-picker-identity{display:flex;align-items:baseline;gap:.6vw;margin:.85vw .1vw .7vw}.bot-picker-name{font-size:1.45vw;font-weight:800;color:#f3f6ff;letter-spacing:.02em}.bot-picker-rating{font-size:1.1vw;font-weight:700;color:#7f93bd}.bot-picker-grid{display:grid;grid-template-columns:repeat(7,minmax(0,6.2vw));justify-content:center;gap:.6vw}.bot-tile{position:relative;aspect-ratio:1 / 1;border:.14vw solid #2a345e;border-radius:.6vw;background:#253355;overflow:hidden;cursor:pointer;padding:0;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.bot-tile-face{display:block;width:100%;height:100%}.bot-tile-face img{width:100%;height:100%;object-fit:cover;display:block}.bot-tile-face svg{width:60%;height:60%;margin:20%;display:block}.bot-tile:hover{transform:translateY(-.15vw);border-color:#60a5fa;box-shadow:0 0 14px #3b82f68c}.bot-tile.selected{border-color:#3b82f6;box-shadow:0 0 0 .14vw #3b82f6,0 0 18px #3b82f6bf}.bot-tile-tick{position:absolute;top:.18vw;right:.18vw;width:1.35vw;height:1.35vw;border-radius:50%;background:#16a34a;border:.1vw solid #0d3f1f;color:#fff;font-size:.85vw;font-weight:900;line-height:1.35vw;text-align:center;box-shadow:0 0 6px #16a34abf;pointer-events:none}.bot-tile-name{position:absolute;left:0;right:0;bottom:0;padding:.18vw 0;font-size:.62vw;font-weight:700;text-align:center;color:#f3f6ff;background:linear-gradient(180deg,#0a101e00,#0a101ee0 55%)}#matchTimeControl,#exRankedTimeControl,#exUnrankedTimeControl,#trainingBotSelect,#trainingExBotSelect,#simulationBot1Select,#simulationBot2Select{width:100%;height:100%;min-height:0;background:transparent;border:none;color:#e0e6f0;font-family:Twemoji Country Flags,Nunito,Trebuchet MS,sans-serif;font-size:2vw;font-weight:700;padding:1.1vw 3.3vw 1.1vw 1.65vw;cursor:pointer;outline:none;letter-spacing:.02em;-webkit-appearance:none;-moz-appearance:none;appearance:none}#matchTimeControl option,#exRankedTimeControl option,#exUnrankedTimeControl option,#trainingBotSelect option,#trainingExBotSelect option,#simulationBot1Select option,#simulationBot2Select option{background:#1b2240;color:#e0e6f0;font-size:1.4vw}.match-time-chevron{position:absolute;right:1.4vw;top:50%;transform:translateY(-50%);pointer-events:none;color:#8a96c0;font-size:1.25vw;line-height:1}.match-action-area{flex:1}.game-view{display:flex;flex-direction:column;align-items:center;width:100%;max-width:1400px;padding:20px}.game-outer{display:flex;gap:20px;width:100%;align-items:flex-start;justify-content:center}.game-container{background:transparent;border-radius:1.04vw;padding:1.6vw;flex:0 0 auto;display:flex;gap:1.6vw;align-items:stretch;align-self:flex-start}.game-side-container{flex:0 0 19vw;width:19vw;min-width:0;min-height:0;display:flex;flex-direction:column;gap:1vw;overflow:hidden;margin-top:1.6vw;height:35.8vw;max-height:35.8vw}.game-left-section{display:flex;flex-direction:column;flex:0 0 auto;align-items:flex-end;gap:0}.score-side{display:none}.board-score-wrap{width:30vw;display:flex;flex-direction:column}.board-score-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:.35vw;gap:.25vw}.score-p1,.score-p2{min-width:unset;padding:.25vw .55vw}.score-p1 .score-label,.score-p2 .score-label{font-size:9px;letter-spacing:.5px;margin-bottom:1px}.score-p1 .score-value,.score-p2 .score-value{font-size:16px}.score-p1{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6px 14px;border-radius:.56vw;text-align:center;box-shadow:0 3px 10px #667eea4d;width:fit-content;min-width:120px}.score-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:2px}.score-value{font-size:22px;font-weight:700}.game-board{background:#bbada0;border-radius:.7vw;padding:.7vw;position:relative;display:block;width:30vw;height:30vw}@keyframes board-shake{0%{transform:translate(0)}15%{transform:translate(-7px)}30%{transform:translate(7px)}45%{transform:translate(-5px)}60%{transform:translate(5px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}to{transform:translate(0)}}.board-shake{animation:board-shake .35s ease}@keyframes score-delta-rise{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-28px)}}.score-delta{position:fixed;font-size:1.1vw;font-weight:800;pointer-events:none;animation:score-delta-rise 1s ease-out forwards;z-index:9999}.score-delta.gain{color:#48bb78}.score-delta.loss{color:#f56565}.score-p2{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;padding:6px 14px;border-radius:.56vw;text-align:center;box-shadow:0 3px 10px #f5576c4d;width:fit-content;min-width:120px}.game-middle-section{display:flex;flex-direction:column;justify-content:space-between;flex:0 0 21vw;min-height:0}.player-info-box{background:#f8f9fa;border:.208vw solid #667eea;border-radius:.69vw;padding:20px;display:flex;flex-direction:column;gap:12px;position:relative;opacity:.6;transition:all .3s ease}.player-info-box.active{opacity:1;box-shadow:0 0 30px #667eea99;animation:pulse-border 2s infinite}.player-info-box.p2{border-color:#f5576c}.player-info-box.p2.active{box-shadow:0 0 30px #f5576c99}.player-info-box.victory{opacity:1;border-color:#f6c90e;box-shadow:0 0 30px #f6c90e59}.player-info-box.defeat{opacity:1;border-color:#f87171;box-shadow:0 0 20px #f871714d}.player-info-box.draw{opacity:1;border-color:#9ca3af;box-shadow:0 0 20px #9ca3af4d}.player-info-box.victory .turn-indicator,.player-info-box.defeat .turn-indicator,.player-info-box.draw .turn-indicator{display:block;animation:none}.player-info-box.victory .turn-indicator{background:linear-gradient(135deg,#f6c90e,#f59e0b);color:#fff}.player-info-box.defeat .turn-indicator{background:linear-gradient(135deg,#f87171,#dc2626);color:#fff}.player-info-box.draw .turn-indicator{background:linear-gradient(135deg,#9ca3af,#6b7280);color:#fff}.player-info-box.p2.victory .turn-indicator{background:linear-gradient(135deg,#f6c90e,#f59e0b);color:#fff}.player-info-box.p2.defeat .turn-indicator{background:linear-gradient(135deg,#f87171,#dc2626);color:#fff}.player-info-box.p2.draw .turn-indicator{background:linear-gradient(135deg,#9ca3af,#6b7280);color:#fff}.player-info-box.victory .timer-value{color:#f6c90e!important}.player-info-box.defeat .timer-value{color:#f87171!important}.player-info-box.draw .timer-value{color:#9ca3af!important}@keyframes pulse-border{0%,to{border-width:.208vw}50%{border-width:.208vw}}.turn-indicator{position:absolute;top:-1vw;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.35vw 1.4vw;border-radius:1.4vw;font-size:.95vw;font-weight:700;text-transform:uppercase;box-shadow:0 4px 10px #0000004d;display:none;animation:bounce 1s infinite;white-space:nowrap}.player-info-box.active .turn-indicator{display:block}.player-info-box.p2 .turn-indicator{background:linear-gradient(135deg,#f093fb,#f5576c)}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-5px)}}.timer-section{margin-bottom:10px}.timer-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.timer-value{font-size:48px;font-weight:700;color:#667eea;font-family:Courier New,monospace}.player-info-box.p2 .timer-value{color:#f5576c}.player-details{display:flex;align-items:center;gap:10px;padding:10px;background:#fff;border-radius:.56vw}.player-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;font-weight:700;overflow:hidden;flex-shrink:0}.player-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.player-info-box.p2 .player-avatar{background:linear-gradient(135deg,#f093fb,#f5576c)}.player-username{font-family:Twemoji Country Flags,Nunito,sans-serif;font-size:18px;font-weight:600;color:#333}.player-flag-rating{display:flex;align-items:center;gap:4px;font-size:14px;color:#555;margin-top:2px}.player-flag-rating span:last-child{font-weight:600;color:#888}.log-section{background:#16203a99;border:.1vw solid #26375c;border-radius:.69vw;padding:.8vw;flex:1;display:flex;flex-direction:column;width:100%;box-sizing:border-box;overflow:hidden}.log-header{font-size:.8vw;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#94a3b8;margin-bottom:.55vw;padding-bottom:.55vw;border-bottom:.1vw solid #26375c}.log-content{flex:1;overflow-y:auto;overflow-x:hidden;font-size:.72vw;color:#cbd5e1;min-height:0}.log-entry{padding:.35vw 0;border-bottom:.069vw solid rgba(255,255,255,.06);word-wrap:break-word;overflow-wrap:break-word}.log-entry:last-child{border-bottom:none}.log-turn-counter{position:sticky;top:0;z-index:1;background:#16203a;font-weight:700;color:#93c5fd;border-bottom:.069vw solid #26375c}.log-turn-counter:last-child{border-bottom:.069vw solid #26375c}.chat-section{background:#16203a99;border:.1vw solid #26375c;border-radius:.69vw;padding:.8vw;flex:1;display:flex;flex-direction:column;width:100%;box-sizing:border-box;overflow:hidden}.chat-header{font-size:.8vw;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#94a3b8;margin-bottom:.55vw;padding-bottom:.55vw;border-bottom:.1vw solid #26375c}.chat-messages{flex:1;overflow-y:auto;overflow-x:hidden;margin-bottom:.55vw;min-height:0;min-width:0}.chat-message{padding:.35vw .55vw;margin-bottom:.45vw;border-radius:.56vw;background:#16203a;font-size:.72vw;line-height:1.5;color:#fff;word-break:normal;overflow-wrap:anywhere;border-left:.208vw solid #3b82f6}.chat-message .sender{font-weight:700;color:#60a5fa;margin-right:.28vw;font-size:.72vw}.chat-message .chat-text{color:#fff}.chat-input-group{display:flex;gap:.45vw;min-width:0}.chat-input{flex:1;min-width:0;padding:.45vw .65vw;background:#16203a;color:#f3f6ff;border:.12vw solid #3b82f6;border-radius:.35vw;font-size:.8vw;font-family:inherit;overflow:hidden}.chat-input::placeholder{color:#64748b}.chat-input:focus{outline:none;border-color:#60a5fa}.chat-send-btn{padding:.45vw .85vw;font-size:.8vw;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:.35vw;font-weight:600;cursor:pointer;transition:all .2s}.chat-send-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea4d}.tile{background:#cdc1b4;border-radius:.35vw;display:flex;align-items:center;justify-content:center;font-family:Twemoji Country Flags,Nunito,sans-serif;font-size:32px;font-weight:700;color:#776e65;aspect-ratio:1}.tile.tile-2{background:#eee4da;color:#776e65}.tile.tile-4{background:#ede0c8;color:#776e65}.tile.tile-8{background:#f2b179;color:#f9f6f2}.tile.tile-16{background:#f59563;color:#f9f6f2}.tile.tile-32{background:#f67c5f;color:#f9f6f2}.tile.tile-64{background:#f65e3b;color:#f9f6f2}.tile.tile-128{background:#edcf72;color:#f9f6f2;font-size:28px}.tile.tile-256{background:#edcc61;color:#f9f6f2;font-size:28px}.tile.tile-512{background:#edc850;color:#f9f6f2;font-size:28px}.tile.tile-1024{background:#edc53f;color:#f9f6f2;font-size:28px}.tile.tile-2048{background:#edc22e;color:#f9f6f2;font-size:28px}@keyframes classic-result-fade-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}#classicResultBanner{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;display:none;align-items:center;justify-content:center;pointer-events:none;background:#00000061;border-radius:.69vw}#classicResultBanner.visible{display:flex;animation:classic-result-fade-in 1.2s cubic-bezier(.22,1,.36,1) forwards}#classicResultBanner span{font-size:5vw;font-weight:900;letter-spacing:.08em;text-shadow:0 3px 18px rgba(0,0,0,.8);white-space:nowrap}#classicResultBanner.game-over span{color:#f87171}#classicBoard{position:relative;display:block}#multiResultBanner{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;display:none;align-items:center;justify-content:center;pointer-events:none;background:#0000002e;border-radius:.69vw}#multiResultBanner.visible{display:flex;animation:ex-result-fade-in 1.2s cubic-bezier(.22,1,.36,1) forwards}#multiResultBanner span{font-size:3vw;font-weight:900;letter-spacing:.06em;text-shadow:0 3px 18px rgba(0,0,0,.7);white-space:nowrap}#multiResultBanner.victory span{color:#f6c90e}#multiResultBanner.defeat span{color:#f87171}#multiResultBanner.draw span{color:#8ba3d4}#blitzResultBanner{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;display:none;align-items:center;justify-content:center;pointer-events:none;background:#0000002e;border-radius:.69vw}#blitzResultBanner.visible{display:flex;animation:classic-result-fade-in 1.2s cubic-bezier(.22,1,.36,1) forwards}#blitzResultBanner span{font-size:5vw;font-weight:900;letter-spacing:.08em;text-shadow:0 3px 18px rgba(0,0,0,.8);white-space:nowrap}#blitzResultBanner.defeat span{color:#9ca3af}#blitzResultBanner.game-over span{color:#f87171}@keyframes blitz-cd-tick{0%{opacity:0;transform:scale(.4)}18%{opacity:1;transform:scale(1.15)}55%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.4)}}#blitzCountdownOverlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:70;display:none;align-items:center;justify-content:center;background:#00000085;border-radius:.7vw;pointer-events:none}#blitzCountdownOverlay span{font-size:clamp(56px,12vw,140px);font-weight:900;color:#f6c90e;text-shadow:0 4px 28px rgba(0,0,0,.7);letter-spacing:.02em}#blitzCountdownOverlay span.blitz-cd-anim{animation:blitz-cd-tick .95s cubic-bezier(.22,1,.36,1) forwards}.classic-bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);gap:.7vw;padding:.7vw;pointer-events:none}.classic-bg-cell{background:#eee4da59;border-radius:.35vw}.classic-tile-container{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.classic-tile-container .tile{position:absolute;aspect-ratio:unset;box-sizing:border-box;transition:left .15s ease-in-out,top .15s ease-in-out;will-change:left,top;z-index:1}#classicTileContainer .tile,#blitzTileContainer .tile,#multiTileContainer .tile,#exTileContainer .tile{transition-duration:.1s}@keyframes tile-appear{0%{transform:scale(0)}60%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes tile-pop{0%{transform:scale(1)}50%{transform:scale(1.14)}to{transform:scale(1)}}.tile-appear{animation:tile-appear .1s ease-in-out}.tile-pop{animation:tile-pop .1s ease-in-out}.game-actions{display:flex;justify-content:center;gap:.6vw;margin-top:1.3vw;padding-bottom:1.3vw}.action-btn{padding:.65vw 1.3vw;border:none;border-radius:.55vw;font-size:1vw;font-weight:700;cursor:pointer;transition:all .2s;background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.action-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #f5576c4d}.keyboard-hint{margin-top:20px;text-align:center;color:#666;font-size:13px;font-style:italic}@media (max-width: 1200px){.game-outer{flex-direction:column}.game-side-container{max-width:100%;flex-direction:row}.game-container{flex-direction:column;align-self:stretch}.game-middle-section{flex-direction:row;flex:1}.player-info-box{flex:1}}#gameView{overflow-x:auto;flex:1 0 auto;min-width:0;width:100%}#gameView .game-view{max-width:none!important;width:100%;padding:1vw;box-sizing:border-box}#gameView .game-outer{flex-direction:row;gap:1.6vw;align-items:stretch;justify-content:center}#gameView .game-left-section{align-items:center;gap:1vw}#gameView .game-container{display:contents}#gameView .game-side-container{flex-direction:column}#gameView .game-middle-section{flex-direction:column;flex:0 0 21vw}#gameView .game-side-container{height:33vw;max-height:33vw;min-height:0;margin-top:0}#gameView .player-info-box,#replayModal .player-info-box,#exGameView .player-info-box,#exReplayModal .player-info-box{flex:0 0 auto}#gameView .game-board,#replayModal .game-board{width:30vw;height:30vw}#classicView .action-btn,#blitzView .action-btn,#training2048View .action-btn{font-size:1vw;padding:.65vw 1.3vw}#classicView .score-value,#blitzView .score-value{font-size:1.5vw}#classicView .score-label,#blitzView .score-label{font-size:.8vw}#classicView .score-p1,#blitzView .score-p1{min-width:0;padding:.4vw .97vw}#classicView .game-board,#blitzView .game-board,#training2048View .game-board{width:32vw;height:32vw}#classicView .tile,#blitzView .tile,#training2048View .tile,#training2048SimulationView .tile{font-size:2.5vw}@media (max-width: 768px){.profile-topbar{min-height:86px;padding:12px}.profile-title{font-size:clamp(24px,7.5vw,40px)}.profile-main{padding:14px 14px 86px}.profile-card{padding:14px;gap:14px}.profile-user-row{padding:10px}.profile-action-row{flex-direction:column-reverse}.profile-action-row button{width:100%}.profile-password-grid{grid-template-columns:1fr}.profile-back-corner{left:14px;bottom:14px;min-width:110px}.game-board{width:320px;height:320px}}#exGameView{background:#181c2f;overflow-x:auto;width:100%;min-height:100vh}.ex-gv-outer{display:flex;flex-direction:row;gap:1.4vw;align-items:flex-start;padding:1.6vw 2vw 13.2vw;box-sizing:border-box;width:fit-content;min-width:100%;justify-content:center}.ex-gv-left{display:flex;flex-direction:column;gap:.6vw;flex:0 0 28.5vw;width:28.5vw;align-items:flex-end}#exGameBoard{position:relative;width:28.5vw;height:28.5vw;aspect-ratio:1 / 1;flex:0 0 auto;background:#b5a18a;border-radius:.69vw;overflow:hidden}.ex-board-wrap{position:relative;width:28.5vw;display:flex;flex-direction:column}.ex-board-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;pointer-events:none}.ex-board-cell{position:absolute;background:transparent;border:.14vw solid transparent;border-radius:.28vw;pointer-events:all;cursor:pointer;box-sizing:border-box;transition:border-color .15s}.ex-board-cell:hover{border-color:#f6c90e80}.ex-cell-selected{border-color:#f6c90e!important;background:#f6c90e26!important}.ex-cell-target1{border-color:#48bb78!important;background:#48bb7826!important}#exOppLastCard{position:absolute;top:.4vw;right:.4vw;z-index:20;background:#c5303066;border:.14vw solid #667eea;border-radius:.5vw;padding:.35vw .6vw;pointer-events:none;display:none;flex-direction:column;gap:.14vw;max-width:8vw}#exOppLastCard.visible{display:flex;animation:ex-opp-card-fade 2s ease-out forwards}@keyframes ex-opp-card-fade{0%{opacity:1}60%{opacity:.7}to{opacity:0}}#exOppLastCard .opp-card-label{font-size:.75vw;color:#f7fafc;font-weight:600;text-transform:uppercase;letter-spacing:.05em}#exOppLastCard .opp-card-name{font-size:.95vw;font-weight:700}#exOppBoughtCard{position:absolute;top:.4vw;right:.4vw;z-index:20;background:#2f855a66;border:.14vw solid #48bb78;border-radius:.5vw;padding:.35vw .6vw;pointer-events:none;display:none;flex-direction:column;gap:.14vw;max-width:8vw}#exOppBoughtCard.visible{display:flex;animation:ex-opp-card-fade 2s ease-out forwards}#exOppBoughtCard .opp-card-label{font-size:.75vw;color:#f7fafc;font-weight:600;text-transform:uppercase;letter-spacing:.05em}#exOppBoughtCard .opp-card-name{font-size:.95vw;font-weight:700}#exYourTurnAnnounce{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0}#exYourTurnAnnounce span{color:#e53e3e;font-size:2.4vw;font-weight:900;text-shadow:0 2px 12px rgba(0,0,0,.55);letter-spacing:.04em;white-space:nowrap}@keyframes ex-your-turn-fade{0%{opacity:1;transform:scale(1.08)}60%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(.96)}}.ex-your-turn-anim{animation:ex-your-turn-fade 3s ease-out forwards}.game-exit-btn{position:fixed;top:1.1vw;left:1.1vw;z-index:60;width:2.9vw;height:2.9vw;padding:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;background:#181c2feb;border:.14vw solid #38406b;border-radius:.45vw;color:#cbd5e1;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.game-exit-btn:hover{background:#232946;border-color:#f5576c;color:#f5576c}.game-exit-btn svg{width:1.6vw;height:1.6vw;display:block}.ex-hand-left,.ex-hand-right,.game-corner-right{position:fixed;bottom:.9vw;z-index:41;display:flex;align-items:flex-end;gap:.9vw}.ex-hand-left{left:1.2vw}.ex-hand-right,.game-corner-right{right:1.2vw}.ex-resources{display:flex;flex-direction:row;justify-content:flex-start;gap:1.6vw;width:100%;margin:.45vw 0 .2vw;font-size:1.35vw;font-weight:700;color:#cbd5f5;white-space:nowrap;line-height:1.25}.ex-hand-left .ex-pile-row{margin-top:0}.ex-hand-right .action-btn,.game-corner-right .action-btn{font-size:1.05vw;padding:.55vw 1.3vw;min-width:8.5vw}.action-btn.is-leave{background:linear-gradient(135deg,#f093fb,#f5576c)}.ex-hand-float{position:fixed;left:50%;bottom:.3vw;transform:translate(-50%);width:36vw;z-index:40;display:flex;flex-direction:column;align-items:center;pointer-events:none}.ex-hand-float .ex-hand-cards{width:100%;height:12.4vw}.ex-hand-float .ex-card{width:8vw;height:11.2vw;padding:1.45vw .4vw .5vw;border-radius:.7vw}.ex-hand-float .ex-card-name{font-size:1vw}.ex-hand-float .ex-card-desc{font-size:.68vw;-webkit-line-clamp:7;line-height:1.28}.ex-hand-float .ex-card-cost{top:-.55vw;left:-.55vw;width:2.2vw;height:2.2vw;font-size:1.2vw;border-width:.15vw}.ex-hand-float .ex-card{pointer-events:auto}.ex-hand-float.ex-pending-dim .ex-card{pointer-events:none}.ex-hand-action-row{display:flex;gap:.35vw;flex-wrap:wrap;margin-bottom:.35vw}.ex-hand-action-row .action-btn{font-size:.9vw;padding:.3vw .6vw}.ex-hand-cards{position:relative;height:8vw;overflow:visible}.ex-card{position:absolute;bottom:.1vw;left:50%;width:4.8vw;height:6.7vw;box-sizing:border-box;padding:1vw .3vw .4vw;border:.14vw solid #667eea;border-radius:.5vw;background:linear-gradient(165deg,#262e50,#171c30 58%,#0f1220);box-shadow:0 .2vw .55vw #00000073;cursor:pointer;display:flex;flex-direction:column;align-items:center;overflow:visible;transform-origin:50% 135%;transition:transform .13s ease,box-shadow .13s ease,opacity .2s ease;z-index:var(--ex-card-z, 1);transform:translate(-50%) translateY(var(--ex-card-drop, 0vw)) rotate(var(--ex-card-rot, 0deg))}.ex-card-dealing{opacity:0;pointer-events:none}.ex-card:hover{transform:translate(-50%) translateY(-.7vw) rotate(0) scale(1.07);box-shadow:0 .45vw 1vw #0009,0 0 .6vw var(--ex-card-color, #667eea);z-index:60}.ex-card-name{font-size:.74vw;font-weight:700;line-height:1.2;text-align:center;overflow-wrap:anywhere}.ex-card-desc{margin-top:.3vw;font-size:.55vw;line-height:1.3;color:#97a6cd;text-align:center;overflow-wrap:anywhere;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}.ex-card-cost{position:absolute;top:-.4vw;left:-.4vw;width:1.5vw;height:1.5vw;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 30%,#46538f,#1a2040 72%);border:.11vw solid #f6c90e;color:#fff;font-size:.82vw;font-weight:800;line-height:1;box-shadow:0 0 .35vw #f6c90e80}.ex-pile-row{display:flex;gap:.5vw;margin-top:.25vw;align-items:center}.ex-pile{display:flex;flex-direction:column;align-items:center;gap:.1vw;cursor:default;-webkit-user-select:none;user-select:none}.ex-pile-stack{position:relative;width:2vw;height:2.4vw}.ex-pile-stack span{position:absolute;width:1.8vw;height:2.2vw;border-radius:.35vw;border:.14vw solid #667eea;background:#181c2f;box-sizing:border-box}.ex-pile-stack span:nth-child(1){top:4px;left:4px;background:#1a1f38}.ex-pile-stack span:nth-child(2){top:2px;left:2px;background:#1e2340}.ex-pile-stack span:nth-child(3){top:0;left:0;background:#232946;display:flex;align-items:center;justify-content:center;font-size:.95vw;font-weight:700;color:#8ba3d4}.ex-pile-stack.discard span{border-color:#e06c75}.ex-pile-stack.discard span:nth-child(1){background:#2d1a1c}.ex-pile-stack.discard span:nth-child(2){background:#331e20}.ex-pile-stack.discard span:nth-child(3){background:#3a2224}.ex-pile-label{font-size:.8vw;color:#8ba3d4;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.ex-opp-area{display:flex;align-items:center;gap:.6vw;width:28.5vw;max-width:28.5vw;box-sizing:border-box;overflow:hidden;background:#e06c750f;border:.069vw solid rgba(224,108,117,.25);border-radius:.69vw;padding:.45vw .55vw;margin-bottom:.6vw}.ex-opp-pile{display:flex;flex-direction:column;align-items:center;gap:.15vw;flex:0 0 auto}.ex-opp-pile .ex-pile-stack{width:1.8vw;height:2.3vw}.ex-opp-pile .ex-pile-stack span{width:1.6vw;height:2.1vw;font-size:.8vw}.ex-opp-hand-wrap{flex:1 1 auto;min-width:0}.ex-opp-hand-label{font-size:.75vw;color:#e06c75;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25vw}.ex-opp-hand{display:flex;gap:.25vw;flex-wrap:nowrap;overflow-x:auto;min-width:0;min-height:2.3vw;align-items:center}.ex-opp-card-back{width:1.6vw;height:2.2vw;border-radius:.35vw;flex:0 0 auto;border:.14vw solid #e06c75;background:repeating-linear-gradient(45deg,#2d1a1c,#2d1a1c 4px,#3a2224 4px,#3a2224 8px);box-sizing:border-box}.ex-fly-card{position:fixed;z-index:10000;pointer-events:none;border-radius:.49vw;border:.208vw solid #667eea;background:#232946;color:#f1f5f9;font-size:.83vw;font-weight:800;line-height:1.2;text-align:center;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;padding:.28vw;box-sizing:border-box;overflow:hidden;box-shadow:0 10px 28px #000000a6,0 0 0 1px #ffffff14;transition:transform 1.1s cubic-bezier(.33,0,.2,1),opacity .22s ease}.ex-fly-card.facedown{background:repeating-linear-gradient(45deg,#2d1a1c,#2d1a1c 4px,#3a2224 4px,#3a2224 8px);color:transparent}@keyframes exPilePulse{0%{transform:scale(1)}45%{transform:scale(1.18)}to{transform:scale(1)}}.ex-pile-bump{animation:exPilePulse .35s ease}@keyframes ex-result-fade-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}#exResultBanner{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;display:none;align-items:center;justify-content:center;pointer-events:none;background:#0000002e;border-radius:.69vw}#exResultBanner.visible{display:flex;animation:ex-result-fade-in 1.2s cubic-bezier(.22,1,.36,1) forwards}#exResultBanner span{font-size:3vw;font-weight:900;letter-spacing:.06em;text-shadow:0 3px 18px rgba(0,0,0,.7);white-space:nowrap}#exResultBanner.victory span{color:#f6c90e}#exResultBanner.defeat span{color:#f87171}#exResultBanner.draw span{color:#8ba3d4}.ex-pending-dim{opacity:.25;pointer-events:none;transition:opacity .25s}.ex-gv-mid{flex:0 0 21vw;display:flex;flex-direction:column;justify-content:flex-start;gap:0;min-height:0}.ex-mid-players{display:flex;flex-direction:column;justify-content:space-between;height:34vw}#exGameView .player-info-box,#exReplayModal .player-info-box,#gameView .player-info-box,#replayModal .player-info-box{transition:opacity .3s ease,box-shadow .3s ease,border-color .3s ease}#exGameView .player-info-box,#exReplayModal .player-info-box,#gameView .player-info-box,#replayModal .player-info-box{padding:1.1vw;gap:.7vw}#exGameView .timer-value,#exReplayModal .timer-value,#gameView .timer-value,#replayModal .timer-value{font-size:2.9vw}#exGameView .timer-section,#exReplayModal .timer-section,#gameView .timer-section,#replayModal .timer-section{text-align:center}#exGameView .player-username,#exReplayModal .player-username,#gameView .player-username,#replayModal .player-username{font-size:1.25vw}#exGameView .player-avatar,#exReplayModal .player-avatar,#gameView .player-avatar,#replayModal .player-avatar{width:3.4vw;height:3.4vw;font-size:1.6vw}#exGameView .turn-indicator,#exReplayModal .turn-indicator,#gameView .turn-indicator,#replayModal .turn-indicator,#exGameView .player-flag-rating,#exReplayModal .player-flag-rating,#gameView .player-flag-rating,#replayModal .player-flag-rating{font-size:.95vw}#exGameView .timer-section,#exReplayModal .timer-section,#gameView .timer-section,#replayModal .timer-section{margin-bottom:.6vw}#exGameView .player-details,#exReplayModal .player-details,#gameView .player-details,#replayModal .player-details{padding:.6vw;gap:.6vw;border-radius:.5vw}#exGameView .player-flag-rating,#exReplayModal .player-flag-rating,#gameView .player-flag-rating,#replayModal .player-flag-rating{gap:.25vw;margin-top:.12vw}#exGameView .player-info-box,#exReplayModal .player-info-box,#gameView .player-info-box,#replayModal .player-info-box{border-width:.18vw;border-radius:.65vw}#exGameView .tile,#exReplayModal .tile{font-size:3vw}#gameView .tile,#replayModal .tile{font-size:2.3vw}#exGameView .action-btn,#exReplayModal .action-btn,#gameView .action-btn,#replayModal .action-btn{font-size:1vw;padding:.65vw 1.3vw}.ex-shop-area{background:#232946;border-radius:.69vw;padding:8px;overflow-y:auto;margin:10px 0;max-height:180px}.ex-shop-btn{width:3.99vw;height:3.29vw;flex:0 0 auto;padding:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#2c3560,#1d2340);border:.14vw solid #667eea;border-radius:.42vw;color:#e0e6f0;font-size:1.8vw;line-height:1;cursor:pointer;box-shadow:0 3px 10px #0006;transition:all .15s}.ex-shop-btn:hover{border-color:#93c5fd;transform:translateY(-2px)}.ex-shop-btn-row{display:flex;align-items:center;gap:.4vw;margin:.55vw 0}.ex-shop-btn-label{color:#8ba3d4;font-size:.9vw;font-weight:700}.ex-shop-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;margin:0;z-index:10001;background:#0009;box-sizing:border-box}.ex-shop-popup-card{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#232946,#181c2f);border:.069vw solid #2a345e;border-radius:.97vw;padding:1.25vw;width:min(62vw,96vw);max-height:88vh;overflow-y:auto;box-shadow:0 22px 60px #0009}.ex-shop-popup-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75vw;color:#f1f5f9;font-weight:800;font-size:.95vw}.ex-shop-popup-close{background:transparent;border:none;color:#8ba3d4;font-size:1.3vw;line-height:1;cursor:pointer;padding:0 .35vw;flex:0 0 auto}.ex-shop-popup-close:hover{color:#f87171}.ex-shop-modal .ex-shop-cards{grid-template-columns:repeat(5,1fr);gap:1.1vw}.ex-shop-title{color:#8ba3d4;font-size:.9vw;font-weight:700;margin-bottom:.25vw}.ingame-settings-btn,.ingame-help-btn{position:fixed;top:1vw;width:2.6vw;height:2.6vw;display:flex;align-items:center;justify-content:center;font-size:1.3vw;line-height:1;border:.104vw solid #38406b;border-radius:.5vw;background:#181c2fd9;color:#cbd5e1;cursor:pointer;z-index:900;padding:0;transition:border-color .12s,transform .12s}.ingame-settings-btn{right:1vw}.ingame-help-btn{right:4.2vw;font-weight:800;font-family:inherit}.ingame-settings-btn:hover,.ingame-help-btn:hover{border-color:#4f78ff;transform:scale(1.06);color:#fff}.ex-shop-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:.9vw}.ex-shop-card{position:relative;border:.14vw solid #667eea;border-radius:.42vw;padding:.25vw .35vw;cursor:pointer;background:#181c2f;opacity:.35;transition:transform .1s;box-sizing:border-box;aspect-ratio:3 / 4;display:flex;flex-direction:column;justify-content:space-between;overflow:visible}.ex-shop-cost-circle,.ex-shop-use-circle{position:absolute;top:-.5vw;z-index:3;width:2.2vw;height:2.2vw;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 30%,#46538f,#1a2040 72%);color:#fff;font-size:1.2vw;font-weight:800;line-height:1}.ex-shop-use-circle{left:-.5vw;border:.15vw solid #f6c90e;box-shadow:0 0 .35vw #f6c90e80}.ex-shop-cost-circle{right:-.5vw;border:.15vw solid #ff6b5e;box-shadow:0 0 .35vw #e53e3e80}.ex-shop-card .ex-card-name{font-size:.88vw;text-align:center;padding:0 1.6vw}.ex-shop-card .ex-card-desc{font-size:.72vw;-webkit-line-clamp:8;margin-top:.3vw;line-height:1.28}.ex-shop-card-affordable{opacity:1}.ex-shop-card-soldout{opacity:.2;cursor:not-allowed;filter:grayscale(1)}.ex-shop-card-soldout:hover{transform:none}.ex-shop-card:hover{transform:translateY(-2px)}.ex-shop-meta{display:flex;justify-content:space-between}.ex-shop-cost{font-size:.75vw;color:#f6c90e;font-weight:700}.ex-shop-count{font-size:.82vw;color:#8ba3d4}.ex-card-moves-badge{font-size:.7vw;color:#a78bfa;font-weight:700;letter-spacing:.02em;margin:0}.ex-shop-bottom{display:flex;flex-direction:column;gap:.25vw}.ex-shop-bottom .ex-shop-meta{justify-content:flex-end}.ex-shop-popup-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;z-index:10005;display:none;align-items:center;justify-content:center}.ex-shop-popup{background:#232946;border-radius:.97vw;padding:1.5vw 1.8vw 1.3vw;min-width:14vw;max-width:20vw;text-align:center;box-shadow:0 8px 32px #00000080}.ex-shop-popup-name{font-size:1.15vw;font-weight:700;margin-bottom:.55vw}.ex-shop-popup-desc{color:#c0c8e8;font-size:.92vw;margin-bottom:1vw;line-height:1.5}.ex-shop-popup-cost{font-size:1vw;color:#f6c90e;font-weight:700;margin-bottom:1.1vw}.ex-shop-popup-btns{display:flex;gap:.75vw;justify-content:center}.ex-shop-popup-buy{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:.56vw;color:#fff;font-size:.95vw;font-weight:700;padding:.45vw 1.5vw;cursor:pointer}.ex-shop-popup-cancel{background:#2a345e;border:none;border-radius:.56vw;color:#8ba3d4;font-size:.95vw;padding:.45vw 1.1vw;cursor:pointer}.ex-pending-info{background:#2a345e;border-radius:.42vw;padding:6px 10px;color:#f6c90e;font-size:.9vw;font-weight:600;margin-bottom:.42vw}.ex-gv-side{flex:0 0 23vw;width:23vw;display:flex;flex-direction:column;gap:1.4vw;overflow:hidden;margin-top:2vw;height:34.5vw;max-height:34.5vw}.ex-move-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;z-index:1000;display:none;align-items:center;justify-content:center}.ex-move-dialog{background:#232946;border-radius:.97vw;padding:1.5vw;text-align:center}.ex-move-dialog h3{color:#e0e6f0;margin-bottom:.85vw;font-size:1.1vw}.ex-dir-btns{display:grid;grid-template-columns:repeat(3,3vw);grid-template-rows:repeat(3,3vw);gap:.35vw;justify-content:center}.ex-dir-btn{background:#2a345e;border:none;border-radius:.56vw;color:#e0e6f0;font-size:1.4vw;cursor:pointer;width:3vw;height:3vw;display:flex;align-items:center;justify-content:center}.ex-dir-btn:hover{background:#667eea}.ex-dir-btn.ex-dir-cancel{font-size:1vw;color:#8ba3d4}#exReplayModal{display:flex;flex-direction:column;align-items:center;background:#181c2f;overflow-y:auto}#exReplayInfoText{font-size:.85vw;font-weight:700;color:#94a3b8;flex:1;min-width:0}.exrp-body{align-items:flex-start;justify-content:center;gap:1.4vw;padding-bottom:13.2vw}.exrp-left{flex:0 0 auto;gap:.6vw}.exrp-board-wrap{width:28.5vw;position:relative}#exReplayActionCard{position:absolute;top:.4vw;right:.4vw;z-index:20;background:#c5303066;border:.14vw solid #667eea;border-radius:.5vw;padding:.35vw .6vw;pointer-events:none;display:none;flex-direction:column;gap:.14vw;max-width:8vw}#exReplayActionCard.visible{display:flex;animation:exrp-action-fade 2s ease-out forwards}@keyframes exrp-action-fade{0%{opacity:1}60%{opacity:.7}to{opacity:0}}#exReplayActionCard .opp-card-label{font-size:.75vw;color:#f7fafc;font-weight:600;text-transform:uppercase;letter-spacing:.05em}#exReplayActionCard .opp-card-name{font-size:.95vw;font-weight:700}#exReplayBoard{position:relative;width:100%!important;height:auto!important;aspect-ratio:1 / 1;background:#b5a18a;border-radius:.69vw;overflow:hidden}.exrp-pwrap{position:relative}.exrp-sus-wrap{padding-bottom:2.8vw}.exrp-admin-wrap{padding-top:2.8vw}.exrp-admin-wrap .player-info-box{box-sizing:border-box}.exrp-score{position:absolute;z-index:6;right:.6vw;width:9vw;text-align:center;box-shadow:0 4px 14px #0006;box-sizing:border-box}.exrp-score .score-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#exGameView .score-label,#exReplayModal .score-label,#gameView .score-label,#replayModal .score-label{font-size:.7vw}#exGameView .score-value,#exReplayModal .score-value,#gameView .score-value,#replayModal .score-value{font-size:1.25vw}#exGameView .score-p1,#exGameView .score-p2,#exReplayModal .score-p1,#exReplayModal .score-p2,#gameView .score-p1,#gameView .score-p2,#replayModal .score-p1,#replayModal .score-p2{min-width:0;padding:.3vw .6vw;border-radius:.5vw}#exGameView .score-label,#exReplayModal .score-label,#gameView .score-label,#replayModal .score-label{margin-bottom:.1vw;letter-spacing:.05vw}#gameView .board-score-header .score-p1,#gameView .board-score-header .score-p2,#replayModal .board-score-header .score-p1,#replayModal .board-score-header .score-p2{width:9vw;box-sizing:border-box;text-align:center}#gameView .board-score-header .score-value,#replayModal .board-score-header .score-value,.exrp-score .score-value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#gameView .board-score-header,#replayModal .board-score-header{align-items:stretch}.exrp-score-admin{bottom:calc(100% - 2.8vw + 5px);top:auto}.exrp-score-sus{top:calc(100% - 2.8vw + 5px);bottom:auto}.exrp-opp-area{width:28.5vw;max-width:100%}.exrp-middle{flex:0 0 21vw}.exrp-shop-area{flex:1 1 auto;min-height:0;overflow-y:auto}.exrp-side{flex:0 0 19vw}.exrp-panel{gap:.7vw}#simulationSpeedSlider,.exrp-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;align-self:stretch;width:100%;background:transparent;border:none;outline:none;cursor:pointer;margin:.6vw 0}#simulationSpeedSlider::-moz-focus-outer,.exrp-slider::-moz-focus-outer{border:0}#simulationSpeedSlider::-webkit-slider-runnable-track,.exrp-slider::-webkit-slider-runnable-track{height:.42vw;border-radius:.42vw;background:#26375c}#simulationSpeedSlider::-webkit-slider-thumb,.exrp-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.3vw;height:1.3vw;margin-top:-.44vw;border-radius:50%;background:#f1f5f9;border:.14vw solid #3b82f6;cursor:pointer;box-shadow:0 .07vw .28vw #0000004d}#simulationSpeedSlider::-moz-range-track,.exrp-slider::-moz-range-track{height:.42vw;border-radius:.42vw;background:#26375c}#simulationSpeedSlider::-moz-range-progress,.exrp-slider::-moz-range-progress{height:.42vw;border-radius:.42vw;background:#3b82f6}#simulationSpeedSlider::-moz-range-thumb,.exrp-slider::-moz-range-thumb{width:1.3vw;height:1.3vw;border-radius:50%;background:#f1f5f9;border:.14vw solid #3b82f6;cursor:pointer;box-shadow:0 .07vw .28vw #0000004d}.exrp-swap-btn{background:linear-gradient(135deg,#38b2ac,#319795)}.exrp-log-header{margin-top:.25vw;border-bottom:.1vw solid #26375c;padding-bottom:.45vw}.exrp-log{align-self:stretch;flex:1 1 auto;min-height:6vw;max-height:34vh;overflow-y:auto}.exrp-log-line{padding:.25vw .35vw;color:#cbd5e1;font-size:.72vw;line-height:1.45;border-bottom:.069vw solid rgba(255,255,255,.06);cursor:pointer;border-radius:.28vw}.exrp-log-line:hover{background:#16203a;color:#f3f6ff}.exrp-log-line.current{background:#1d2b4d;color:#93c5fd;font-weight:700}.exrp-log-line .n{color:#64748b;margin-right:.35vw;font-variant-numeric:tabular-nums}.exrp-empty{color:#9ca3af;font-style:italic;font-size:.7vw}#exReplayModal .ex-card,#exReplayModal .ex-shop-card{cursor:default}#exReplayModal .ex-shop-card:hover{transform:none}#exReplayModal .ex-card:hover{transform:translate(-50%) translateY(var(--ex-card-drop, 0vw)) rotate(var(--ex-card-rot, 0deg));box-shadow:0 .2vw .55vw #00000073;z-index:var(--ex-card-z, 1)}@media (max-width: 1100px){.exrp-body{flex-wrap:wrap}}.upage-body{flex:1;min-height:0;overflow-y:auto;width:100%}.upage-inner{max-width:62.5vw;width:100%;margin:0 auto;padding:1.65vw 2.2vw 5.5vw;display:flex;flex-direction:column;gap:1.4vw}.upage-notfound{min-height:70vh;display:flex;align-items:center;justify-content:center;font-size:1.8vw;font-weight:800;color:#94a3b8;letter-spacing:.03em}.upage-card{background:#ffffff0a;border:.069vw solid rgba(255,255,255,.08);border-radius:.97vw;padding:1.4vw 1.65vw}.upage-profile-card{display:flex;align-items:center;gap:1.65vw}.upage-avatar-circle{position:relative;width:5.55vw;height:5.55vw;border-radius:50%;background:#ffffff14;display:flex;align-items:center;justify-content:center;font-size:2.8vw;flex-shrink:0;overflow:hidden}.upage-avatar-circle:hover .profile-avatar-overlay{opacity:1}.upage-identity{display:flex;flex-direction:column;gap:.42vw}.upage-nameline{display:flex;align-items:center;min-width:0}.upage-username{font-size:1.55vw;font-weight:800;color:#e0e6f0}.upage-country-badge{display:flex;align-items:center;gap:.42vw;font-size:1.4vw}.upage-stats-row{display:flex;gap:1.1vw}.upage-stat-card{flex:1}.upage-stat-title,.upage-section-title{font-size:.9vw;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin-bottom:.97vw}.upage-stat-row{display:flex;justify-content:space-between;align-items:center;padding:.42vw 0;border-bottom:.069vw solid rgba(255,255,255,.05)}.upage-stat-row:last-child{border-bottom:none}.upage-stat-label{color:#94a3b8;font-size:.97vw}.upage-stat-value{font-weight:800;color:#60a5fa;font-size:1.04vw}.upage-ratings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12.5vw,1fr));gap:.85vw}.upage-rating-box{background:#ffffff0a;border-radius:.7vw;padding:.85vw .97vw;display:flex;flex-direction:column;gap:.28vw}.upage-rating-tc{font-size:.83vw;font-weight:700;text-transform:uppercase;color:#64748b;letter-spacing:.05em}.upage-rating-val{font-size:1.55vw;font-weight:800;color:#a78bfa}.upage-rating-val .rating-rank,.user-popup-rating .val .rating-rank{font-size:.83vw;font-weight:600;color:#94a3b8;margin-left:.15vw;vertical-align:baseline}.upage-rating-wl{font-size:.83vw;color:#94a3b8}.upage-rating-wl span.w{color:#facc15}.upage-rating-wl span.l{color:#f87171}.upage-admin-note{margin-top:.35vw;font-size:.83vw;color:#fbbf24}.upage-rating-wl .wr,.user-popup-rating .wl .wr{color:#cbd5e1;font-weight:600}.upage-replays-card{padding-bottom:.85vw}.upage-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1vw;margin-bottom:.28vw}.lb-name-link{cursor:pointer;color:#e0e6f0;font-weight:700;text-decoration:none}.lb-name-link:hover{color:#a78bfa;text-decoration:underline}.home-title{padding-left:4.2vw}.nav-menu-btn{position:fixed;top:1.8vw;left:1.25vw;width:3.2vw;height:3.05vw;z-index:60;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.35vw;background:#3b82f61f;border:.14vw solid #3b82f6;border-radius:.85vw;cursor:pointer;padding:0;transition:background .15s ease}.nav-menu-btn:hover{background:#3b82f647}.nav-menu-btn span{display:block;width:1.5vw;height:2.5px;border-radius:.14vw;background:#cdd8f0}.nav-menu-dropdown{position:fixed;top:5.4vw;left:1.25vw;z-index:60;min-width:13.2vw;background:linear-gradient(180deg,#232946,#181c2f);border:.069vw solid rgba(255,255,255,.12);border-radius:.85vw;box-shadow:0 12px 30px #0006;padding:.55vw;display:flex;flex-direction:column;gap:.28vw}.nav-menu-dropdown button{text-align:left;background:transparent;border:none;color:#e0e6f0;font-size:1.04vw;font-weight:700;padding:.7vw .85vw;border-radius:.55vw;cursor:pointer}.nav-menu-dropdown button:hover{background:#3b82f62e}.nav-menu-dropdown button.nav-menu-logout{color:#f87171}.nav-menu-dropdown button.nav-menu-logout:hover{background:#f8717129}.public-instance .home-profile,.public-instance .lb-show-group,.public-instance #lbBackBtn,.public-instance #upageBackBtn,.public-instance .lb-tabs{display:none!important}.public-blank{flex:1;display:flex;align-items:center;justify-content:center}.public-blank-text{color:#64748b;font-size:1.4vw;font-style:italic}.public-players-body{flex:1;display:flex;flex-direction:column;gap:1.1vw;padding:1.65vw 2.2vw;max-width:57vw;width:100%;margin:0 auto;overflow:hidden}.public-players-search{padding:.97vw 1.25vw;border-radius:.85vw;border:.069vw solid rgba(255,255,255,.12);background:#ffffff0a;color:#e0e6f0;font-size:1.1vw}.public-players-search:focus{outline:none;border-color:#3b82f6}.public-players-results{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.55vw}.public-player-row{display:flex;align-items:center;gap:.85vw;padding:.85vw 1.1vw;border-radius:.7vw;background:#ffffff08;cursor:pointer}.public-player-row:hover{background:#3b82f624}.public-player-flag{font-size:1.4vw}.public-player-name{font-weight:700;color:#e0e6f0}.user-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.user-popup{width:100%;max-width:51.11vw;max-height:88vh;overflow-y:auto;background:linear-gradient(180deg,#232946,#181c2f);border:.069vw solid rgba(255,255,255,.12);border-radius:1.11vw;box-shadow:0 1.39vw 4.17vw #00000080;padding:1.53vw 1.53vw 1.39vw;display:flex;flex-direction:column;gap:1.11vw;color:#e0e6f0}.user-popup-loading,.user-popup-empty{text-align:center;color:#94a3b8;padding:1.25vw 0;font-style:italic}.user-popup-empty{padding:.56vw 0}.user-popup-header{display:flex;align-items:center;justify-content:space-between;gap:.83vw;border-bottom:.069vw solid rgba(255,255,255,.08);padding-bottom:.97vw}.user-popup-headleft{display:flex;align-items:center;gap:.97vw;min-width:0}.user-popup-avatar{width:3.33vw;height:3.33vw;flex-shrink:0;border-radius:50%;overflow:hidden;background:#ffffff14;display:flex;align-items:center;justify-content:center;font-size:1.81vw}.user-popup-avatar img{width:100%;height:100%;object-fit:cover}.user-popup-name{font-size:1.53vw;font-weight:800;color:#e0e6f0}.user-popup-country{display:flex;align-items:center;gap:.42vw;color:#94a3b8;font-size:.97vw}.user-popup-flag{font-size:1.53vw}.user-popup-statrow{display:flex;gap:.83vw}.user-popup-statcard{flex:1;background:#ffffff0a;border:.069vw solid rgba(255,255,255,.08);border-radius:.83vw;padding:.83vw .97vw}.user-popup-statt{font-size:.83vw;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin-bottom:.69vw}.user-popup-statline{display:flex;justify-content:space-between;align-items:center;padding:.28vw 0}.user-popup-statline span{color:#94a3b8;font-size:.9vw}.user-popup-statline b{color:#60a5fa;font-weight:800;font-size:.97vw}.user-popup-sectt{font-size:.83vw;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin-bottom:.69vw}.user-popup-ratings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.79vw}.user-popup-rating{background:#ffffff0a;border-radius:.69vw;padding:.79vw .95vw;display:flex;flex-direction:column;gap:.24vw}.user-popup-rating .tc,.user-popup-rating .val,.user-popup-rating .wl{overflow-wrap:break-word}.user-popup-rating .tc{font-size:.87vw;font-weight:700;text-transform:uppercase;color:#64748b}.user-popup-rating .val{font-size:1.6vw;font-weight:800;color:#a78bfa}.user-popup-rating .wl{font-size:.87vw;color:#94a3b8}.user-popup-rating .wl .w{color:#facc15}.user-popup-rating .wl .l{color:#f87171}.user-popup-friend{display:inline-flex;align-items:center;flex:0 0 auto}.user-popup-friend-badge{flex:0 0 auto;align-self:center;margin-left:.7vw;padding:.2vw .6vw;border-radius:.35vw;font-size:.8vw;font-weight:700;white-space:nowrap;color:#9fb4d4;background:#94a3b826}.user-popup-friend-badge.is-friend{color:#4ade80;background:#4ade8026}.user-popup-addbtn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:.42vw;color:#fff;font-family:inherit;font-size:.76vw;font-weight:700;padding:.28vw .7vw;margin-left:.7vw;cursor:pointer;transition:opacity .15s;white-space:nowrap;width:fit-content;flex:0 0 auto}.user-popup-addbtn:hover{opacity:.85}.supporter-bar{height:.55vw;border-radius:.4vw;background:#ffffff14;overflow:hidden}.supporter-bar-fill{height:100%;width:0;border-radius:.4vw;background:linear-gradient(90deg,#fbbf24,#f59e0b);transition:width .4s ease}.supporter-bar-top{width:100%;margin:0 0 .9vw}.supporter-bar-top .supporter-bar{height:1.6vw;border-radius:.8vw}.supporter-bar-top .supporter-bar-fill{border-radius:.8vw}.supporter-bar-top .supporter-bar-label{font-size:.85vw;text-align:left}.supporter-bar-top .supporter-bar-label strong{color:#e0e6f0;font-weight:800}.supporter-bar-label{margin-top:.45vw;color:#94a3b8;font-size:.8vw}.support-plans-col{width:min(52vw,100%);display:flex;flex-direction:column}.support-plans-row{display:flex;align-items:flex-start;gap:.8vw;width:100%;justify-content:center}.checkout-line{display:flex;align-items:center;justify-content:space-between;gap:.8vw;padding:.5vw 0;border-bottom:.069vw solid rgba(255,255,255,.06);color:#cbd5e1;font-size:.95vw}.checkout-line:last-of-type{border-bottom:none}.checkout-line button{background:none;border:none;color:#f87171;font-size:1vw;cursor:pointer;font-family:inherit}.checkout-total{margin-top:.6vw;padding-top:.7vw;border-top:.1vw solid #26375c;color:#fbbf24;font-weight:800;font-size:1.1vw;text-align:right}.checkout-method{display:flex;align-items:flex-start;gap:.6vw;padding:.6vw;margin-bottom:.5vw;border:.1vw solid #26375c;border-radius:.5vw;background:#ffffff08;cursor:pointer}.checkout-method input[type=radio]{flex:0 0 auto;width:auto;margin:.25vw 0 0;padding:0;border:none;border-radius:0;accent-color:#3b82f6;transform:scale(1.1)}.checkout-method-body{display:flex;flex-direction:column;gap:.15vw}.checkout-method-name{color:#e0e6f0;font-weight:700;font-size:.95vw}.checkout-method-note{color:#94a3b8;font-size:.8vw}.support-checkout-btn{display:block;width:auto;margin:1.2vw auto 0;padding:.55vw 2.2vw;font-size:.95vw}.support-checkout-btn:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none}.support-cart-row{position:absolute;left:100%;top:0;margin-left:.5vw}.support-cart-btn{position:relative;display:flex;align-items:center;justify-content:center;background:#16203a;border:.1vw solid #26375c;border-radius:.5vw;padding:.5vw .7vw;color:#e0e6f0;font-family:inherit;font-size:1.7vw;line-height:1;cursor:pointer;transition:border-color .15s,transform .15s}.support-cart-btn:hover{border-color:#3b82f6;transform:translateY(-1px)}.support-cart-count{position:absolute;top:-.3vw;right:-.3vw;min-width:1.15vw;height:1.15vw;padding:0 .22vw;border-radius:.58vw;background:#fbbf24;color:#3b2a06;font-size:.7vw;font-weight:800;line-height:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.support-cart-panel{position:absolute;top:calc(100% + .4vw);left:0;z-index:50;width:22vw;background:linear-gradient(180deg,#232946,#181c2f);border:.1vw solid #26375c;border-radius:.7vw;padding:1vw;box-shadow:0 1vw 2.4vw #00000080;display:flex;flex-direction:column;gap:.6vw}.support-cart-title{font-size:.9vw;font-weight:800;color:#e0e6f0;text-transform:uppercase;letter-spacing:.06em}.support-cart-line{display:flex;align-items:center;justify-content:space-between;gap:.6vw;color:#cbd5e1;font-size:.85vw}.support-cart-line button{background:none;border:none;color:#f87171;font-size:.9vw;cursor:pointer;font-family:inherit}.support-cart-empty{color:#94a3b8;font-style:italic;font-size:.85vw}.support-cart-total{border-top:.1vw solid #26375c;padding-top:.6vw;color:#fbbf24;font-weight:800;font-size:1vw;text-align:right}.support-perks{list-style:none;margin:0 0 1.2vw;padding:0;display:flex;flex-direction:column;gap:.5vw}.support-perks li{display:flex;align-items:flex-start;gap:.55vw;color:#cbd5e1;font-size:.95vw;line-height:1.45}.support-perks li:before{content:"✓";color:#fbbf24;font-weight:800;flex:0 0 auto}.support-plans-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1vw}.support-plan{display:flex;flex-direction:column;align-items:center;gap:.5vw;padding:1.2vw 1vw;border-radius:.7vw;border:.1vw solid rgba(255,255,255,.12);background:#ffffff0a}.support-plan-label{font-size:1vw;font-weight:700;color:#e0e6f0;text-transform:uppercase;letter-spacing:.04em}.support-plan-price{font-size:1.6vw;font-weight:800;color:#fbbf24}.support-plan-per{font-size:.78vw;color:#94a3b8;min-height:1.1vw}.support-plan-btn{width:auto;align-self:center;padding:.4vw 1.1vw;font-size:.8vw;letter-spacing:.02em}.name-supporter,.chat-message .sender.name-supporter,.chat-message strong.name-supporter,.rv-chat .chat-message strong.name-supporter{color:#fbbf24}.upage-rename-btn{background:none;border:none;cursor:pointer;padding:0 .35vw;line-height:1;color:#64748b;display:inline-flex;align-items:center;transition:color .15s ease,transform .15s ease}.upage-rename-btn svg{width:1.15vw;height:1.15vw;display:block}.upage-rename-btn:hover{color:#fbbf24;transform:scale(1.12)}.upage-rename-btn:disabled{cursor:not-allowed;opacity:.5}.supporter-badge{display:inline-block;margin-left:.7vw;padding:.22vw .6vw;border-radius:.35vw;white-space:nowrap;font-size:.76vw;font-weight:700;letter-spacing:.03em;color:#3b2a06;background:linear-gradient(135deg,#fbbf24,#f59e0b)}.user-popup-addbtn.is-remove{background:linear-gradient(135deg,#ef4444,#b91c1c)}.user-popup-fullbtn{margin-top:.28vw;width:100%;padding:.85vw;border:none;border-radius:.7vw;cursor:pointer;font-size:1.04vw;font-weight:700;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);transition:filter .15s ease}.user-popup-fullbtn:hover{filter:brightness(1.1)}.user-popup-fullbtn.secondary{background:#ffffff14}.setting-row{display:flex;align-items:flex-start;gap:.8vw;cursor:pointer;padding:.5vw 0}.setting-check{width:1.15vw;height:1.15vw;min-width:16px;min-height:16px;margin-top:.15vw;accent-color:#3b82f6;cursor:pointer;flex:0 0 auto}.setting-text{display:flex;flex-direction:column;gap:.25vw}.setting-title{color:#e8eeff;font-size:1vw;font-weight:600}.setting-note{color:#8ba3d4;font-size:.85vw;line-height:1.5}.setting-row:hover .setting-title{color:#fff}.setting-range-row{display:flex;align-items:center;gap:.8vw;margin-top:.45vw}.setting-range{flex:1 1 auto;max-width:22vw;min-width:140px;accent-color:#3b82f6;cursor:pointer}.setting-range-value{flex:0 0 auto;min-width:3.2vw;text-align:right;color:#a3aed6;font-size:.9vw;font-weight:600;font-variant-numeric:tabular-nums}.bot-picker-flag{font-size:1.15vw;line-height:1;margin-left:.15vw}.home-flag:empty:before,.lb-flag:empty:before,.friends-result-flag:empty:before,.public-player-flag:empty:before,.user-popup-flag:empty:before,.bot-picker-flag:empty:before,.net-bars{display:inline-flex;align-items:flex-end;gap:.1vw;height:.85vw;margin-left:.35vw;vertical-align:-.05em}.net-bar{width:.18vw;border-radius:.04vw;background:#cbd5e138}.net-bar:nth-child(1){height:30%}.net-bar:nth-child(2){height:52%}.net-bar:nth-child(3){height:76%}.net-bar:nth-child(4){height:100%}.net-bars.level-4 .net-bar.on{background:#48bb78}.net-bars.level-3 .net-bar.on{background:#9ae6b4}.net-bars.level-2 .net-bar.on{background:#f6c90e}.net-bars.level-1 .net-bar.on{background:#e53e3e}.player-flag-rating>span:first-child:empty:before,#upageFlag:empty:before{content:"?";display:inline-block;box-sizing:border-box;font-size:.62em;font-weight:700;width:1.94em;height:1.37em;line-height:1.3em;text-align:center;vertical-align:-.08em;border-radius:.16em;background:#8f97a8;color:#2b3040;box-shadow:inset 0 0 0 .1em #0000004d}#gameBoard,#exGameBoard,#classicBoard,#blitzBoard{touch-action:none}html.in-game,html.in-game body{overscroll-behavior:none}
