*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}:root{--bg:#0b1118;--surface:#111a24;--surface-2:#172331;--surface-3:#1d2b3b;--text:#f5f8fb;--muted:#91a0b2;--line:rgba(255,255,255,.07);--accent:#36a8ff;--accent-2:#7c5cff;--green:#42d66d;--red:#ff5c6c;--danger:#ff5c6c;--input:#16212d;--shadow:0 18px 50px rgba(0,0,0,.22)}html[data-theme="light"]{--bg:#fff9f5;--surface:#fff;--surface-2:#fff1e9;--surface-3:#ffe7dc;--text:#111827;--muted:#4b5563;--line:#d7e1ec;--accent:#ef3f5f;--accent-2:#ff8a3d;--green:#27b85b;--red:#e53935;--input:#fffaf7;--shadow:0 18px 45px rgba(90,50,30,.10)}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font-latin),var(--font-persian),-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,sans-serif;font-variant-numeric:lining-nums tabular-nums}#app{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;margin:0!important;z-index:2147483000!important;background:var(--bg)!important}#authScreen{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:2147483001!important}body{overscroll-behavior:none}button,input,textarea,select{font:inherit}button{background:transparent;color:inherit}button,a{touch-action:manipulation;-webkit-user-select:none;user-select:none}button{cursor:pointer}input,textarea,select{outline:0}:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 72%,white 8%)!important;outline-offset:2px;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)!important}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-thumb{background:rgba(140,160,180,.3);border-radius:20px}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes spin{to{transform:rotate(360deg)}}.auth-screen{position:fixed;inset:0;z-index:9998;display:none;align-items:center;justify-content:center;padding:20px;background:var(--bg);overflow:auto}.auth-screen.show{display:flex}.auth-container{width:min(100%,410px);padding:24px;border:1px solid var(--line);border-radius:24px;background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:var(--shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.auth-title{text-align:center;font-size:25px;line-height:1.3;margin-bottom:7px;font-weight:950;letter-spacing:-.3px}.auth-subtitle{text-align:center;color:var(--muted);font-size:15px;margin-bottom:24px}.auth-form{display:flex;flex-direction:column;gap:11px}.auth-input,.form-field input,.form-field textarea,.form-field select{width:100%;border:1px solid transparent;background:var(--input);color:var(--text);border-radius:14px;padding:13px 14px;font-size:15px;min-height:49px}.auth-input:focus,.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:rgba(66,214,109,.45)!important;outline:0!important;box-shadow:0 0 0 3px rgba(66,214,109,.08)!important}.auth-btn{position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(150,255,185,.28);background:linear-gradient(135deg,rgba(37,210,104,.88),rgba(24,157,76,.72));color:#fff;border-radius:14px;min-height:49px;padding:0 18px;font-weight:900;box-shadow:0 10px 28px rgba(35,190,92,.16),inset 0 1px 0 rgba(255,255,255,.32);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.auth-btn::before{content:"";position:absolute;top:-35%;bottom:-35%;left:-65%;width:34%;z-index:-1;transform:skewX(-24deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);opacity:0;transition:left .55s ease,opacity .2s ease}.auth-btn:hover{transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 14px 34px rgba(35,190,92,.24),inset 0 1px 0 rgba(255,255,255,.38)}.auth-btn:hover::before{left:135%;opacity:1}.auth-btn:active{transform:translateY(0) scale(.985)}.auth-btn:disabled{opacity:.55}.auth-switch{text-align:center;margin-top:15px;color:var(--muted);font-size:15px}.auth-switch button{border:0;background:none;color:var(--accent);font-weight:800}.auth-error{display:none;padding:10px;border-radius:10px;color:var(--red);background:rgba(255,92,108,.08);border:1px solid rgba(255,92,108,.3);font-size:15px;text-align:center}.auth-error.show{display:block}.app{width:100%;height:100dvh;display:flex;overflow:hidden}.sidebar{width:320px;flex:0 0 320px;background:var(--surface);border-left:1px solid var(--line);display:flex;flex-direction:column;z-index:100}.sidebar-header{height:64px;display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.menu-btn,.theme-btn,.logout-btn,.back-btn,.content-actions button{width:42px;height:42px;border:0;border-radius:13px;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center}.menu-btn svg,.back-btn svg{width:21px;height:21px}.menu-btn:active,.theme-btn:active,.logout-btn:active,.back-btn:active{background:var(--surface-2)}.sidebar-title{font-size:18px;font-weight:900;flex:1}.sidebar-search{padding:12px}.search-box{height:44px;border-radius:14px;background:var(--input);display:flex;align-items:center;gap:8px;padding:0 12px}.search-box svg{width:18px;color:var(--muted)}.search-box input{flex:1;border:0;outline:0;background:none;color:var(--text);font-size:15px}.sidebar-nav{flex:1;overflow:auto;padding:6px 8px}.nav-section{padding:13px 10px 7px;color:var(--muted);font-size:15px;font-weight:800}.nav-item{cursor:pointer;user-select:none;min-height:48px;border-radius:13px;display:flex;align-items:center;gap:13px;padding:0 12px;margin:3px 0;color:var(--text)}button:not(:disabled),a,.room-card,.filter-chips .chip,.online-user,.content-actions button,.menu-btn,.theme-btn,.logout-btn,.back-btn,.send-button,.emoji-button{cursor:pointer}.nav-item svg{pointer-events:none;width:20px;height:20px;color:var(--muted)}.nav-item span{font-size:15px;flex:1}.nav-item.active{background:var(--surface-2)}.nav-item.active svg{color:var(--accent)}.online-count-badge{min-width:24px;height:22px;padding:0 7px;border-radius:11px;background:rgba(66,214,109,.13);color:var(--green);font-size:15px;display:flex;align-items:center;justify-content:center}.sidebar-footer{padding:11px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px}.user-avatar,.profile-avatar{background:linear-gradient(135deg,var(--accent),var(--accent-2));display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.user-avatar{width:42px;height:42px}.user-info{flex:1;min-width:0}.user-name{font-size:15px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-status{font-size:15px;color:var(--green)}.user-status:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-left:5px}.main-content{min-width:0;flex:1;height:100%;display:flex;flex-direction:column;background:var(--bg)}.content-header{height:64px;flex:0 0 64px;display:flex;align-items:center;gap:10px;padding:9px 18px;background:var(--surface);border-bottom:1px solid var(--line);z-index:5}.back-btn{display:none}.content-title{flex:1;font-size:16px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.content-actions{display:flex;gap:4px}.content-body{flex:1;overflow:auto;padding:20px;overscroll-behavior:contain}.page{display:none}.page.active{display:block}.hero-card{background:linear-gradient(135deg,var(--surface-2),var(--surface));border:1px solid var(--line);border-radius:22px;padding:24px;margin-bottom:16px;box-shadow:var(--shadow)}.hero-title{font-size:23px;margin-bottom:7px}.hero-title em{color:var(--accent);font-style:normal}.hero-desc{font-size:15px;color:var(--muted);margin-bottom:18px}.hero-stats{display:flex;gap:10px}.stat-item{background:var(--input);border:1px solid var(--line);padding:11px 15px;border-radius:14px;min-width:110px}.stat-value{display:block;font-size:19px;font-weight:900;color:var(--accent)}.stat-label{font-size:15px;color:var(--muted)}.toolbar{display:flex;gap:9px;margin-bottom:12px}.filter-chips{display:flex;gap:7px;flex-wrap:wrap}.chip{padding:9px 13px;border-radius:20px;background:var(--surface);border:1px solid var(--line);font-size:15px;color:var(--muted)}.chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.room-card{cursor:pointer;display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:17px;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;will-change:transform}.room-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,0,0,.14);border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}.room-card:active{transform:translateY(-1px) scale(.995)}.home-action-btn,.free-rooms-entry,.form-section,.profile-card,.contact-social-item,.contact-form-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.home-action-btn:hover,.free-rooms-entry:hover,.form-section:hover,.profile-card:hover,.contact-social-item:hover,.contact-form-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(0,0,0,.10);border-color:color-mix(in srgb,var(--accent) 24%,var(--line))}.home-action-btn i,.free-rooms-entry>i,.create-submit i,.form-title>i,.profile-social-grid label>i,.file-drop-icon i{font-size:18px}.home-action-btn i{font-size:22px;color:var(--accent)}.room-cover{height:125px;background:linear-gradient(135deg,var(--surface-2),var(--surface-3));position:relative}.room-cover img{width:100%;height:100%;object-fit:cover}.room-cover-fallback{height:100%;display:flex;align-items:center;justify-content:center;font-size:42px}.room-status{position:absolute;top:9px;right:9px;padding:5px 9px;border-radius:20px;background:rgba(0,0,0,.62);font-size:15px;color:#fff}.room-status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-left:4px}.room-status.live{background:var(--green);color:#06230e}.room-status.full{background:var(--red)}.room-status.warning{background:#ffb020;color:#241600}.room-body{padding:12px;display:flex;flex-direction:column;flex:1}.room-name{font-size:15px;font-weight:900;margin-bottom:4px;overflow-wrap:anywhere}.room-game{font-size:15px;color:var(--accent);margin-bottom:8px}.room-meta{font-size:15px;color:var(--muted)}.room-owner{display:flex;align-items:center;gap:6px}.room-owner-avatar{width:20px;height:20px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:15px}.room-info{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:9px;border-top:1px solid var(--line);font-size:15px;color:var(--muted)}.nexmat-loading-overlay{position:absolute;inset:0;display:none;align-items:center;justify-content:center;gap:9px;z-index:30;background:color-mix(in srgb,var(--surface) 78%,transparent);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);border-radius:inherit}.nexmat-loading-overlay.show{display:flex}.nexmat-loading-spinner{width:18px;height:18px;border:2px solid var(--surface-3);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.empty-state,.loading{display:flex;align-items:center;justify-content:center;min-height:180px;color:var(--muted);font-size:15px}.loading:before{content:"";width:19px;height:19px;border:2px solid var(--surface-3);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin-left:8px}.general-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:14px;height:100%;min-height:0}.general-chat{min-width:0;min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:20px;display:flex;flex-direction:column;overflow:hidden}.general-chat-top{padding:13px 15px;display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--surface-2),var(--surface))}.general-chat-title{display:flex;align-items:center;gap:9px;flex:1;min-width:0}.general-chat-icon{width:38px;height:38px;border-radius:12px;background:rgba(54,168,255,.12);display:flex;align-items:center;justify-content:center}.general-chat-title strong{display:block;font-size:15px}.general-chat-title small{display:block;color:var(--muted);font-size:15px;margin-top:2px}.online-pill,.chat-reset-mini{border:1px solid var(--line);background:var(--input);color:var(--text);border-radius:20px;min-height:34px;padding:0 10px;font-size:15px}.online-pill{display:flex;align-items:center;gap:5px}.chat-reset-mini{color:var(--red)}.online-pulse{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(66,214,109,.1)}.general-messages{flex:1;min-height:0;overflow:auto;padding:12px;display:flex;flex-direction:column;gap:7px;background:radial-gradient(circle at 80% 0%,rgba(54,168,255,.04),transparent 35%)}.general-messages .message{display:flex;gap:7px;padding:5px;border-radius:10px}.general-messages .message.me{flex-direction:row-reverse}.general-messages .msg-content{min-width:0;max-width:80%}.general-messages .msg-header{display:flex;align-items:center;gap:7px;margin-bottom:2px}.general-messages .msg-name{font-size:15px;font-weight:900;color:var(--accent)}.general-messages .message.me .msg-name{color:var(--green)}.general-messages .msg-time{font-size:15px;color:var(--muted)}.general-messages .msg-text{background:var(--surface-2);border:1px solid var(--line);padding:7px 9px;border-radius:12px;font-size:15px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.general-messages .message.me .msg-text{background:rgba(54,168,255,.1)}.chat-empty{margin:auto;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;color:var(--muted)}.chat-empty-icon{width:58px;height:58px;border-radius:18px;background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:26px;margin-bottom:4px}.chat-empty strong{color:var(--text);font-size:15px}.chat-empty span{font-size:15px}.general-composer{display:flex;align-items:flex-end;gap:8px;padding:10px;border-top:1px solid var(--line);background:var(--surface)}.composer-wrap{flex:1;min-width:0;background:var(--input);border:1px solid var(--line);border-radius:15px;padding:8px 10px}.composer-wrap textarea{display:block;width:100%;border:0;resize:none;max-height:130px;min-height:24px;background:none;color:var(--text);font-size:15px;line-height:1.55}.composer-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:15px;margin-top:3px}.send-button{width:44px;height:44px;flex:0 0 44px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;display:flex;align-items:center;justify-content:center}.send-button svg{width:19px;height:19px}.online-panel{min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column}.online-header{height:54px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.online-title{display:flex;align-items:center;gap:7px;font-size:15px;font-weight:900}.online-list{flex:1;overflow:auto;padding:7px}.online-user{display:flex;align-items:center;gap:8px;padding:9px;border-radius:12px}.online-user:active{background:var(--surface-2)}.online-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 7px var(--green)}.online-user .msg-avatar{width:30px!important;height:30px!important}.create-form{width:min(100%,680px);margin:0 auto}.create-intro{display:flex;align-items:center;gap:12px;margin-bottom:13px}.create-icon{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-size:27px;display:flex;align-items:center;justify-content:center}.create-intro h2{font-size:18px}.create-intro p{color:var(--muted);font-size:15px;margin-top:3px}.form-section{background:var(--surface);border:1px solid var(--line);border-radius:19px;padding:16px}.create-main-fields{display:flex;flex-direction:column;gap:14px}.form-field{display:flex;flex-direction:column;gap:6px;min-width:0}.form-field label{font-size:15px;font-weight:800;color:var(--muted)}.form-field label b{color:var(--red)}.form-field label span{font-weight:500}.form-field textarea{min-height:90px;resize:vertical}.input-with-icon{display:flex;align-items:center;gap:8px;background:var(--input);border:1px solid transparent;border-radius:13px;padding-right:13px}.input-with-icon:focus-within{border-color:var(--accent)}.input-with-icon input{border:0;background:transparent;padding-right:0}.steam-search{position:relative}.steam-results{position:absolute;left:0;right:0;top:100%;margin-top:5px;z-index:300;background:var(--surface);border:1px solid var(--line);border-radius:14px;max-height:280px;overflow:auto;box-shadow:var(--shadow);display:none}.steam-results.show{display:block}.steam-item{display:flex;align-items:center;gap:10px;padding:9px;min-height:54px}.steam-item:active{background:var(--surface-2)}.steam-item img{width:76px;height:35px;border-radius:6px;object-fit:cover}.steam-item-info{min-width:0;flex:1}.steam-item-name{font-size:15px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.steam-item-id{font-size:15px;color:var(--muted)}.selected-game{display:flex;align-items:center;gap:9px;background:var(--input);border:1px solid var(--line);border-radius:13px;padding:8px;margin-top:7px}.selected-game img{width:70px;height:34px;object-fit:cover;border-radius:5px}.selected-game-info{flex:1;min-width:0}.selected-game-info strong{display:block;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-game-info small{font-size:15px;color:var(--muted)}.selected-game button{width:30px;height:30px;border:0;border-radius:9px;background:var(--surface-2);color:var(--red)}.advanced-toggle{width:100%;margin-top:9px;min-height:48px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:14px;display:flex;align-items:center;gap:8px;padding:0 13px;font-size:15px;font-weight:800}.advanced-toggle .advanced-icon{width:28px;height:28px;border-radius:8px;background:var(--surface-2);display:flex;align-items:center;justify-content:center}.advanced-toggle .advanced-chevron{margin-right:auto;font-size:17px;color:var(--muted);transition:transform .2s}.advanced-toggle.open .advanced-chevron{transform:rotate(180deg)}.advanced-panel{margin-top:8px;padding:13px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.advanced-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.create-submit{width:100%;margin-top:10px}.profile-image{display:block!important;flex:0 0 auto!important;width:auto;max-width:none!important;aspect-ratio:1/1;object-fit:cover!important;visibility:visible!important;opacity:1!important}.message .profile-image,.online-user .profile-image,.member-item .profile-image{border-radius:50%;overflow:hidden}.profile-card{width:min(100%,520px);margin:auto}.profile-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}.profile-avatar{width:72px;height:72px;font-size:28px}.profile-info h2{font-size:18px}.profile-info p{color:var(--muted);font-size:15px;margin-top:3px}.avatar-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:7px}.contact-links{width:min(100%,620px);display:flex;flex-direction:column;gap:9px}.contact-link{display:flex;align-items:center;gap:11px;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:15px;text-decoration:none;color:var(--text);min-height:64px}.contact-icon{width:42px;height:42px;border-radius:12px;background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:19px}.contact-info{flex:1}.contact-info strong{display:block;font-size:15px}.contact-info small{display:block;color:var(--muted);font-size:15px;margin-top:2px}.room-layout{height:100%;display:flex;flex-direction:column;min-height:0}.room-head{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:13px;margin-bottom:12px}.room-head-top{display:flex;gap:10px;align-items:flex-start}.room-head-info{flex:1;min-width:0}.room-head-title{font-size:18px;font-weight:900;overflow-wrap:anywhere}.room-head-meta{font-size:15px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.room-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.room-actions button{min-height:38px;border:1px solid var(--line);background:var(--input);color:var(--text);border-radius:10px;padding:0 10px;font-size:15px}.room-actions .primary{background:var(--accent);color:#fff}.room-actions .danger{background:var(--red);color:#fff}.room-actions .success{background:var(--green);color:#06230e}.room-game-banner{height:180px;margin-top:11px;border-radius:13px;overflow:hidden;position:relative;background:#050505;isolation:isolate;display:flex;align-items:center;justify-content:center}.room-game-banner:before{content:"";position:absolute;inset:-24px;background-image:var(--game-bg);background-size:cover;background-position:center;filter:blur(22px);transform:scale(1.12);opacity:.58;z-index:0}.room-game-banner:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.08);z-index:1}.game-center{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;pointer-events:none}.game-cover-frame{width:min(260px,62%);height:100px;padding:0;box-sizing:border-box;background:transparent;border:0;border-radius:10px;display:flex;align-items:center;justify-content:center}.room-game-banner img{position:relative;z-index:1;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;border:0;border-radius:8px;box-shadow:0 5px 18px rgba(0,0,0,.28),0 0 12px rgba(255,255,255,.10);background:transparent;display:block;transition:transform .22s ease,filter .22s ease,box-shadow .22s ease}.room-game-banner:hover img{transform:scale(1.025);filter:brightness(1.04);box-shadow:0 7px 22px rgba(0,0,0,.34),0 0 16px rgba(255,255,255,.13)}.room-game-banner:active img{transform:scale(1.018)}.game-title{color:#fff;font-size:18px;font-weight:900;line-height:1.25;text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.9);max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-content{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:12px}.room-chat{min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column;overflow:hidden}.chat-header{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid var(--line);font-size:15px;font-weight:900}.chat-messages{flex:1;min-height:0;overflow:auto;padding:12px;display:flex;flex-direction:column;gap:7px}.message{display:flex;gap:7px;padding:5px;border-radius:10px}.message.me{flex-direction:row-reverse}.msg-avatar{width:32px;height:32px;flex:0 0 32px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:flex;align-items:center;justify-content:center;font-size:15px}.msg-content{min-width:0;max-width:80%}.msg-header{display:flex;align-items:center;gap:7px;margin-bottom:2px}.msg-name{font-size:15px;font-weight:900;color:var(--accent)}.message.me .msg-name{color:var(--green)}.msg-time{font-size:15px;color:var(--muted)}.msg-text{background:var(--surface-2);border:1px solid var(--line);padding:7px 9px;border-radius:12px;font-size:15px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.message.me .msg-text{background:rgba(54,168,255,.1)}.msg-actions{display:flex}.msg-actions button{border:0;background:none;color:var(--red)}.chat-input{display:flex;align-items:flex-end;gap:7px;padding:8px;border-top:1px solid var(--line)}.chat-input textarea{flex:1;min-height:42px;max-height:110px;padding:9px 11px;background:var(--input);border:1px solid var(--line);border-radius:12px;color:var(--text);font-size:15px;resize:none}.chat-input button{width:42px;height:42px;border:0;border-radius:12px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center}.members-panel{min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:auto}.members-header,.online-header{padding:11px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.members-title{font-size:15px;font-weight:900}.members-count{font-size:15px;color:var(--muted)}.members-list{padding:6px}.member-item{display:flex;align-items:center;gap:8px;padding:8px;border-radius:10px}.member-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:15px}.member-info{flex:1;min-width:0}.member-name{font-size:15px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-role{font-size:15px;color:var(--muted)}.member-role.owner{color:#ffb020}.member-actions button{border:0;background:var(--red);color:#fff;border-radius:7px;padding:5px 8px;font-size:15px}.online-page{max-width:650px;margin:auto}.online-page-head{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;margin-bottom:10px}.online-page-title{font-size:18px;font-weight:900}.online-page-sub{font-size:15px;color:var(--muted);margin-top:4px}.online-page-list{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:6px}.modal-overlay{position:fixed;inset:0;z-index:2147483005;background:rgba(0,0,0,.58);display:none;align-items:center;justify-content:center;padding:14px}.modal-overlay.show{display:flex}.modal{width:min(100%,500px);max-height:90dvh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.modal-header{height:54px;padding:0 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:15px;font-weight:900}.modal-close{width:34px;height:34px;border:0;border-radius:10px;background:var(--surface-2);color:var(--muted)}.modal-body{padding:14px}.modal-footer{padding:10px 14px;border-top:1px solid var(--line);display:flex;gap:7px}.modal-footer button{flex:1;min-height:42px;border:1px solid var(--line);border-radius:11px;background:var(--input);color:var(--text)}.modal-footer .primary{background:var(--accent);color:#fff}.modal-footer .danger{background:var(--red);color:#fff}.toast{position:fixed;z-index:2147483006;top:max(14px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);max-width:90%;padding:10px 15px;border-radius:12px;background:var(--surface-3);border:1px solid var(--line);box-shadow:var(--shadow);font-size:15px}.toast.success{border-color:var(--green)}.toast.error{border-color:var(--red)}.mobile-bottom-back{display:none}.mobile-menu-toggle,.mobile-menu-backdrop{display:none}.social-links{align-items:center;gap:10px}.social-link{width:38px!important;height:38px!important;padding:0!important;border-radius:12px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;text-decoration:none}.social-link i{line-height:1}.default-avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 auto;border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}.default-avatar-one{background:linear-gradient(135deg,rgba(54,168,255,.22),rgba(124,92,255,.18));color:var(--accent)}.default-avatar-two{background:linear-gradient(135deg,rgba(66,214,109,.20),rgba(54,168,255,.14));color:var(--green)}.default-avatar-preview{display:flex;gap:10px;margin:0 0 12px}.default-avatar-preview .default-avatar{width:48px;height:48px;font-size:23px}.profile-editor{display:grid;gap:12px}.profile-social-grid label>i{display:inline-flex;width:20px;justify-content:center;margin-left:4px;color:var(--accent)}.bio-editor{width:100%;min-height:150px!important;resize:vertical!important;padding:13px 14px!important;border:1px solid var(--line)!important;border-radius:15px!important;background:var(--input)!important;color:var(--text)!important;outline:none!important;line-height:1.8!important;font-size:16px!important;box-sizing:border-box}.bio-editor:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(54,168,255,.10)!important}.file-drop{position:relative;display:flex;align-items:center;gap:12px;padding:15px;border:1px dashed var(--line);border-radius:15px;background:var(--input);cursor:pointer}.file-drop:hover{border-color:var(--accent);background:var(--surface-2)}.file-drop-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:rgba(54,168,255,.10);font-size:22px;flex:0 0 44px}.file-drop strong{display:block;font-size:15px}.file-drop small{display:block;color:var(--muted);margin-top:3px;font-size:15px}.file-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.contact-hero{max-width:760px;margin:0 auto 14px;padding:24px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,var(--surface-2),var(--surface));box-shadow:var(--shadow)}.contact-hero h2{font-size:22px;margin-bottom:7px}.contact-hero p{color:var(--muted);line-height:1.9;font-size:15px}.social-icons{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:0 auto 18px}.social-icons a{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--line);color:var(--text);text-decoration:none;font-size:23px;transition:.18s ease}.social-icons a:hover{transform:translateY(-2px);border-color:var(--accent);color:var(--accent)}.contact-page-clean{width:min(100%,820px);margin:0 auto;padding:8px 0 28px}.contact-clean-head{text-align:center;margin:0 auto 18px}.contact-clean-head h1{font-size:28px;line-height:1.3;margin:0 0 7px;font-weight:900}.contact-clean-head p{margin:0;color:var(--muted);font-size:14px}.contact-social-clean{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:620px;margin:0 auto 14px}.contact-social-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:96px;padding:12px 8px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.05);transition:transform .16s ease,border-color .16s ease,background .16s ease}.contact-social-item:hover{transform:translateY(-2px);border-color:var(--accent);background:var(--surface-2)}.contact-social-icon{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--surface-2);font-size:22px}.contact-social-item strong{font-size:14px}.contact-bug-clean{display:block;margin:0 auto!important;min-width:150px}.contact-divider{height:1px;background:var(--line);margin:22px auto;max-width:700px}.contact-form-clean{max-width:760px!important;margin:0 auto!important;padding:20px!important;border-radius:20px!important}.contact-form-note{margin:-7px 0 16px;color:var(--muted);font-size:13px}.contact-send-clean{width:100%;min-height:46px}.contact-social-item.telegram .contact-social-icon{color:#159bd7}.contact-social-item.instagram .contact-social-icon{color:#d83f72}.contact-social-item.steam .contact-social-icon{color:#3d9bd6}.contact-social-item.admin .contact-social-icon{color:var(--accent)}.contact-links{max-width:760px;margin:auto;display:grid;gap:10px}.contact-link{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid var(--line);border-radius:17px;background:var(--surface);color:var(--text);text-decoration:none;cursor:pointer;transition:.18s ease}.contact-link:hover{transform:translateY(-1px);border-color:var(--accent);background:var(--surface-2)}.contact-icon{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:var(--surface-2);font-size:20px;flex:0 0 44px}.contact-info{flex:1;min-width:0}.contact-info strong{display:block;font-size:15px}.contact-info small{display:block;color:var(--muted);margin-top:3px;font-size:15px}.contact-link>span{font-size:20px;color:var(--muted)}.profile-image{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid var(--line);background:var(--surface-2);display:block}.profile-image.small{width:34px;height:34px}.profile-image.tiny{width:30px;height:30px}.profile-upload{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profile-upload input[type=file]{max-width:100%;font-size:15px}.profile-bio{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted);line-height:1.8;font-size:15px}.profile-stat{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;margin-top:8px}.profile-stat strong{font-size:15px}.profile-stat span{font-size:15px;color:var(--muted)}.captcha-box{display:grid;grid-template-columns:1fr 1fr;gap:7px;align-items:center}.captcha-question{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-weight:900;text-align:center;direction:ltr}.more-btn{width:30px;height:30px;border:0;background:transparent;color:var(--muted);border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer}.more-btn:hover{background:var(--surface-2);color:var(--text)}.user-clickable{cursor:pointer}.user-clickable:hover{text-decoration:underline;text-decoration-color:var(--accent)}.moderation-actions{display:grid;gap:8px}.moderation-actions button{min-height:42px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);color:var(--text);font-weight:800}.moderation-actions button.danger{background:rgba(255,70,90,.10);border-color:rgba(255,70,90,.35);color:var(--red)}.emoji-popover{position:absolute;right:8px;bottom:calc(58px+18px);z-index:900;background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:8px;box-shadow:var(--shadow);display:none;grid-template-columns:repeat(8,1fr);gap:4px;width:min(320px,calc(100vw - 24px));max-height:210px;overflow:auto}.emoji-popover.show{display:grid}.emoji-popover button{border:0;background:transparent;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:9px;min-width:32px;min-height:32px;font-size:20px;cursor:pointer}.emoji-popover button:hover{background:var(--surface-2)}.emoji-host{position:relative}.profile-image{object-fit:cover!important;overflow:hidden}.pending-message{opacity:.68}.pending-message .msg-time{font-style:italic}.chat-send:disabled,.auth-btn:disabled{opacity:.75;cursor:wait}.send-button.is-sending{opacity:.72;transform:scale(.98)}:root{--min-font:15px}body{font-size:15px}html[data-theme="light"]{--bg:#f5f9ff;--surface:#ffffff;--surface-2:#eef5ff;--surface-3:#dceaff;--text:#101820;--muted:#4f6175;--line:#c9dbef;--accent:#0969d7;--accent-2:#e52f45;--input:#f7fbff}.contact-bug-btn{margin-top:14px;border:1px solid rgba(54,168,255,.35);background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border-radius:13px;min-height:44px;padding:0 16px;font-weight:900;font-size:15px;box-shadow:0 8px 22px rgba(0,0,0,.18)}.bug-report-overlay[hidden]{display:none!important}.bug-report-overlay{position:fixed;inset:0;z-index:2147483005;background:rgba(0,0,0,.58);display:flex;align-items:center;justify-content:center;padding:14px}.bug-report-card{width:min(100%,520px);max-height:90dvh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow)}.bug-report-head{display:flex;align-items:center;justify-content:space-between;font-size:18px}.bug-report-head button{width:36px;height:36px;border:0;border-radius:10px;background:var(--surface-2);color:var(--text);font-size:24px}.bug-report-sub{color:var(--muted);font-size:15px;margin:4px 0 14px}.bug-report-card label{display:block;font-size:15px;font-weight:800;margin:10px 0}.bug-report-card input,.bug-report-card select,.bug-report-card textarea{display:block;width:100%;margin-top:6px;background:var(--input);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:11px 12px;font-size:15px}.bug-report-card textarea{min-height:120px;resize:vertical}.role-badge{display:inline-flex;align-items:center;gap:3px;font-size:15px;font-weight:900}.role-badge.role-user{color:var(--muted)}.role-badge.role-active{color:var(--accent)}.role-badge.role-vip{color:#d49a00}.role-badge.role-admin{color:var(--accent-2)}.profile-social-grid{display:grid;grid-template-columns:1fr;gap:9px}.profile-social-grid label{font-size:15px;font-weight:800;color:var(--muted)}.profile-social-grid input{margin-top:5px;width:100%;background:var(--input);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:11px 12px;font-size:15px}.mobile-topbar,.mobile-bottomnav{display:none}.home-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px}.home-action-btn{min-height:72px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,var(--surface-2),var(--surface));color:var(--text);display:flex;align-items:center;justify-content:center;gap:8px;flex-direction:column;font-weight:900;box-shadow:0 8px 22px rgba(0,0,0,.12)}.home-action-btn:active{transform:scale(.98)}.danger-zone{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.danger-account-btn{width:100%;min-height:48px;border:1px solid rgba(255,92,108,.35);border-radius:14px;background:rgba(255,92,108,.08);color:var(--red);font-size:15px;font-weight:900}.delete-account-form{max-width:420px;margin:0 auto}.rooms-page-tools{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.free-rooms-entry{width:100%;min-height:52px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,var(--surface-2),var(--surface));color:var(--text);font-size:15px;font-weight:900;display:flex;align-items:center;justify-content:space-between;padding:0 15px;box-shadow:0 8px 24px rgba(0,0,0,.10)}.free-rooms-entry>.entry-arrow{font-size:24px;line-height:1;color:var(--accent);margin-right:auto}.free-rooms-entry>.entry-label{font-size:15px;line-height:1;color:var(--text);margin-right:8px}.free-rooms-entry>i{font-size:19px;color:var(--accent)}.free-room-card .room-cover{background:linear-gradient(145deg,var(--surface-2),var(--surface))!important;min-height:92px!important}.free-room-card .free-room-icon{font-size:36px}.room-link{display:inline;border:0;background:none;padding:0;color:var(--accent);font:inherit;font-weight:900;cursor:pointer}.reply-btn{width:22px;height:22px!important;min-width:22px!important;padding:0!important;margin:0 1px!important;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--muted)!important;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer;font-size:11px!important;line-height:1}.reply-btn i{font-size:10px;line-height:1}.reply-btn:hover{color:var(--accent)!important;background:transparent!important}.reply-preview{display:flex;align-items:center;gap:7px;margin:4px 6px;padding:6px 8px;border:0;border-right:2px solid var(--accent);border-radius:8px;background:var(--surface-2);min-width:0;max-height:42px}.reply-preview>span{color:var(--accent);font-size:11px;flex:0 0 auto}.reply-preview>div{min-width:0;flex:1}.reply-preview b,.reply-preview small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-preview b{font-size:11px}.reply-preview small{font-size:11px;color:var(--muted);margin-top:1px}.reply-preview button{width:22px;height:22px;border:0!important;background:transparent!important;color:var(--muted);font-size:18px;padding:0}.reply-quote{margin:3px 0 5px;padding:4px 7px;border-right:2px solid var(--accent);border-radius:6px;background:var(--surface-2);font-size:11px;max-width:min(100%,280px);overflow:hidden}.reply-quote b,.reply-quote span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-quote b{color:var(--accent);margin-bottom:1px;font-size:10px}.message{min-width:0}.msg-content{min-width:0}.msg-text{overflow-wrap:anywhere}.segmented-switch{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;background:var(--surface-2);border:1px solid var(--line);border-radius:13px;margin-bottom:10px}.segmented-option{min-height:42px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease}.segmented-option.active{background:var(--surface);color:var(--text);box-shadow:0 3px 12px rgba(0,0,0,.10)}.segmented-option:active{transform:scale(.985)}.home-room-switch{margin-top:2px}.game-title{border:0;background:transparent;padding:2px 8px;color:#fff;font:inherit;font-size:18px;font-weight:900;cursor:pointer;border-radius:9px}.game-title:hover{background:rgba(255,255,255,.10)}:root{--bg:#070b12;--surface:#0e1622;--surface-2:#131f2d;--surface-3:#1a2a3c;--text:#f5f8fc;--muted:#8e9db0;--line:rgba(255,255,255,.075);--accent:#35a8ff;--accent-2:#875cff;--green:#43e37a;--red:#ff5d70;--input:#0b1420;--shadow:0 24px 70px rgba(0,0,0,.34);--radius:18px;--nav-h:76px;--top-h:66px;--keyboard-height:0px}html[data-theme="light"]{--bg:#f5f7fb;--surface:#ffffff;--surface-2:#f0f4fa;--surface-3:#e8eef7;--text:#17202c;--muted:#66758a;--line:rgba(20,35,55,.10);--accent:#087fe5;--accent-2:#6545df;--green:#16a657;--red:#dc3f54;--input:#f7f9fc;--shadow:0 24px 65px rgba(31,48,72,.12)}html,body{background:radial-gradient(circle at 15% 0%,rgba(53,168,255,.055),transparent 30%),radial-gradient(circle at 90% 15%,rgba(135,92,255,.045),transparent 28%),var(--bg)!important;color:var(--text)!important}body{font-size:15px}#app{isolation:isolate}.app{display:flex;width:100%;height:100dvh;overflow:hidden}.sidebar{width:292px;flex:0 0 292px;height:100%;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface) 90%,var(--bg)));border-left:1px solid var(--line);box-shadow:20px 0 60px rgba(0,0,0,.08)}.sidebar-header{height:72px;padding:12px 14px;border-bottom:1px solid var(--line)}.sidebar-title{font-size:21px;letter-spacing:.5px}.sidebar-title::first-letter{color:var(--accent)}.sidebar-search{padding:14px 12px 10px}.search-box{height:44px;border:1px solid var(--line);background:var(--input);border-radius:14px}.sidebar-nav{padding:8px 10px;overflow:auto}.nav-section{font-size:11px;font-weight:900;color:var(--muted);padding:14px 10px 7px;letter-spacing:.5px}.nav-item{min-height:46px;margin:3px 0;padding:0 12px;border-radius:13px;display:flex;align-items:center;gap:11px;color:var(--muted);transition:background .18s,transform .18s,color .18s}.nav-item svg{width:20px;height:20px;flex:0 0 20px}.nav-item:hover{background:var(--surface-2);color:var(--text);transform:translateX(-2px)}.nav-item.active{background:linear-gradient(100deg,rgba(53,168,255,.16),rgba(135,92,255,.08));color:var(--text);box-shadow:inset 3px 0 var(--accent)}.nav-item.active svg{color:var(--accent)}.online-count-badge{margin-right:auto;min-width:23px;height:21px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:var(--surface-3);font-size:11px}.sidebar-footer{margin-top:auto;padding:12px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px}.user-avatar{width:40px;height:40px;border-radius:13px}.user-info{min-width:0;flex:1}.user-name{font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-status{font-size:11px;color:var(--green)}.logout-btn{flex:0 0 38px;width:38px;height:38px}.main-content{height:100%;min-width:0;background:transparent}.content-header{height:var(--top-h);flex:0 0 var(--top-h);padding:0 22px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.content-title{font-size:17px}.content-body{padding:22px;scrollbar-gutter:stable}.page.active{animation:v12PageIn .18s ease both}@keyframes v12PageIn{from{opacity:.65;transform:translateY(3px)}to{opacity:1;transform:none}}.hero-card,.form-section,.profile-card,.online-page-head,.online-page-list,.rooms-page-tools,.room-head,.members-panel,.general-chat,.contact-form-card{border:1px solid var(--line);box-shadow:0 10px 35px rgba(0,0,0,.10)}.hero-card{padding:25px;border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,var(--surface)),var(--surface))}.hero-title{font-size:27px}.hero-desc{font-size:14px}.hero-stats{gap:12px}.stat-item{min-width:125px}.home-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}.home-action-btn{min-height:82px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,var(--surface-2),var(--surface));color:var(--text);display:flex;align-items:center;justify-content:center;gap:8px;flex-direction:column;font-weight:900;transition:.18s;box-shadow:0 8px 25px rgba(0,0,0,.10)}.home-action-btn i{color:var(--accent);font-size:21px}.home-action-btn:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.toolbar{gap:10px}.toolbar .auth-input{min-height:45px}.segmented-switch{padding:4px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line)}.segmented-option{min-height:38px;border-radius:10px}.rooms-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.room-card{min-width:0;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,var(--surface),var(--surface-2));overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.11);transition:.18s}.room-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 28%,var(--line));box-shadow:0 18px 45px rgba(0,0,0,.20)}.room-cover{height:142px}.room-body{padding:13px}.general-layout{height:100%;min-height:0;grid-template-columns:minmax(0,1fr) 270px;gap:16px}.general-chat{border-radius:21px}.general-chat-top{min-height:64px;padding:11px 14px}.general-messages{padding:14px;gap:8px}.general-messages .msg-content{max-width:min(78%,760px)}.general-composer{padding:10px 12px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.composer-wrap{border-color:var(--line);background:var(--input)}.send-button{box-shadow:0 8px 22px rgba(53,168,255,.22)}.emoji-popover{z-index:1000}.create-form{width:min(100%,820px);margin:0 auto}.create-intro{padding:2px 2px 8px}.create-intro h2{font-size:21px}.form-section{padding:20px;border-radius:20px}.create-main-fields{gap:16px}.form-field input,.form-field textarea,.form-field select,.input-with-icon{min-height:46px;border-color:var(--line);border-radius:13px}.form-field textarea{padding:11px 13px}.advanced-toggle{margin-top:12px;min-height:50px;background:var(--surface)}.advanced-panel{padding:16px}.create-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:12px}.create-actions button{min-height:52px;border:0;border-radius:14px;font-weight:900;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.18s}.create-submit{margin-top:0!important;background:linear-gradient(135deg,var(--accent),var(--accent-2))!important;color:#fff!important;box-shadow:0 12px 28px rgba(53,168,255,.20)}.free-create-btn{background:linear-gradient(135deg,rgba(67,227,122,.16),rgba(53,168,255,.08));color:var(--green);border:1px solid color-mix(in srgb,var(--green) 30%,var(--line))!important}.create-actions button:hover{transform:translateY(-2px);filter:brightness(1.05)}.steam-results{border-radius:15px}.room-layout{height:100%;min-height:0}.room-head{padding:16px;border-radius:20px}.room-head-top{align-items:center}.room-actions{gap:7px}.room-actions button{min-height:40px;border-radius:11px}.room-game-banner{height:190px;margin-top:13px;border-radius:15px}.room-content{grid-template-columns:minmax(0,1fr) 270px;gap:14px;min-height:0}.room-chat{border-radius:20px}.chat-header{height:52px;padding:0 14px}.chat-messages{padding:14px;gap:8px}.chat-input{padding:9px 11px;background:color-mix(in srgb,var(--surface) 95%,transparent)}.chat-input textarea{min-height:42px}.members-panel{border-radius:20px}#mobileBottomBack{display:none!important}#mobileBottomBack{display:none!important}@media (max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){:root{--top-h:58px;--nav-h:60px;--mobile-nav-space:calc(var(--nav-h)+env(safe-area-inset-bottom))}html,body{width:100%;max-width:100%;height:100%;overflow:hidden;overflow-x:hidden}html,body,#app,.app,.main-content,.content-body{box-sizing:border-box;max-width:100%;min-width:0}*,*::before,*::after{box-sizing:border-box}img,svg,video,canvas{max-width:100%}.page,.page.active,.content-body>*{max-width:100%;min-width:0}#app{width:100vw!important;height:100dvh!important}.app{height:100dvh;display:block;overflow:hidden}.sidebar{display:none!important}.main-content{width:100%;height:100dvh;display:flex;flex-direction:column;min-width:0;box-sizing:border-box;overflow:hidden}.mobile-topbar{display:flex!important;position:relative!important;inset:auto!important;flex:0 0 var(--top-h);height:var(--top-h)!important;align-items:center;padding:0 12px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);z-index:50}.mobile-logo strong{font-size:19px;font-weight:950;letter-spacing:.5px}.mobile-online{margin-right:auto;margin-left:8px;display:inline-flex!important;align-items:center;justify-content:center;gap:5px;min-width:76px;padding:7px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);font-size:10px}.mobile-online i{display:block;width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(66,214,109,.10)}.mobile-online b{display:inline-block;min-width:12px;color:var(--text);font-size:12px;font-weight:950;line-height:1}.mobile-online span{font-size:10px;color:var(--muted)}.mobile-top-btn{display:inline-flex!important;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--text)}.mobile-top-btn i{font-size:16px;line-height:1}.content-header{height:var(--top-h);flex:0 0 var(--top-h);padding:0 12px}.content-header .back-btn{display:flex!important;width:36px;height:36px}.content-title{font-size:15px}.content-actions button{width:36px;height:36px}.content-body{flex:1;min-height:0;overflow:auto;padding:12px 10px 16px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.hero-card{padding:17px;border-radius:18px;margin-bottom:12px}.hero-title{font-size:21px}.hero-desc{font-size:13px;margin-bottom:13px}.hero-stats{gap:7px}.stat-item{min-width:0;flex:1;padding:9px 10px}.stat-value{font-size:17px}.stat-label{font-size:11px}.home-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.home-action-btn{min-height:66px;border-radius:15px;font-size:12px}.home-action-btn i{font-size:20px}.toolbar{margin-bottom:9px}.toolbar .auth-input{min-height:43px}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.room-card{border-radius:15px}.room-cover{height:94px}.room-body{padding:9px}.room-name{font-size:13px}.room-game{font-size:11px}.room-meta,.room-info{font-size:10px}.room-info{gap:5px;padding-top:7px}.segmented-switch{width:100%;display:grid;grid-template-columns:1fr 1fr}.segmented-option{font-size:12px}.rooms-page-tools{border-radius:15px}.hero-card,.form-section,.profile-card,.online-page-head,.online-page-list,.rooms-page-tools,.room-head,.general-chat,.contact-form-card,.room-card,.room-chat,.room-game-banner{max-width:100%;min-width:0;box-sizing:border-box}.rooms-grid,.home-quick-actions,.room-content,.general-layout{width:100%;max-width:100%;min-width:0}.room-section-title{font-size:14px;margin:12px 2px 8px}:root{--nav-h:60px;--mobile-nav-space:calc(var(--nav-h)+env(safe-area-inset-bottom));--mobile-composer-h:58px;--mobile-chat-gap:8px}.content-body{flex:1;min-height:0;overflow:auto;padding:12px 10px 16px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:auto;scroll-padding-bottom:0}.content-body:not(:has(.general-chat)):not(:has(.room-chat)){padding-bottom:var(--mobile-nav-space)!important;scroll-padding-bottom:var(--mobile-nav-space)!important}.mobile-bottomnav{position:fixed!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:calc(var(--nav-h)+env(safe-area-inset-bottom))!important;min-height:calc(var(--nav-h)+env(safe-area-inset-bottom))!important;max-height:calc(var(--nav-h)+env(safe-area-inset-bottom))!important;margin:0!important;padding:5px 7px env(safe-area-inset-bottom)!important;box-sizing:border-box!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:5px!important;align-items:stretch!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:18px 18px 0 0!important;background:color-mix(in srgb,var(--surface) 97%,transparent)!important;backdrop-filter:blur(22px) saturate(1.2)!important;-webkit-backdrop-filter:blur(22px) saturate(1.2)!important;box-shadow:0 -8px 26px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.05)!important;visibility:visible!important;opacity:1!important;z-index:2147483647!important}@media(min-width:901px){.mobile-bottomnav{display:none!important;visibility:hidden!important;pointer-events:none!important}}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){body:has(#authScreen.show) .mobile-bottomnav{display:none!important;visibility:hidden!important;pointer-events:none!important}body:not(:has(#authScreen.show)) .mobile-bottomnav{display:grid!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}.content-body:not(:has(.general-chat)):not(:has(.room-chat)){padding-bottom:var(--mobile-nav-space)!important;scroll-padding-bottom:var(--mobile-nav-space)!important}}.mobile-bnav{position:relative;min-width:0;width:100%;height:100%;margin:0;padding:5px 2px!important;border:1px solid transparent!important;border-radius:14px!important;background:transparent!important;color:var(--muted)!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;font-size:10px!important;font-weight:900!important;line-height:1.1!important;transition:background .16s ease,color .16s ease,transform .12s ease!important;touch-action:manipulation}.mobile-bnav svg{width:21px!important;height:21px!important;flex:0 0 auto!important;color:currentColor!important;transform:none!important;filter:none!important}.mobile-bnav span{display:block!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis}.mobile-bnav.active{color:var(--accent)!important;background:rgba(53,168,255,.11)!important;border-color:rgba(53,168,255,.16)!important}.mobile-bnav.active svg{color:var(--accent)!important;transform:translateY(-1px)!important}.mobile-bnav:active{transform:scale(.95)!important}.mobile-bnav em{top:2px!important;right:calc(50% - 22px)!important}.content-body:has(.general-chat){padding:0!important;margin:0!important;overflow:hidden}.general-layout{display:block!important;width:100%;height:100%;min-height:0}.general-chat{width:100%;height:calc(100% - var(--mobile-nav-space));min-height:0;border:0;border-radius:0;display:flex;flex-direction:column;overflow:hidden;background:var(--surface)}.general-chat-top{flex:0 0 54px;min-height:54px;padding:8px 10px;box-sizing:border-box}.general-chat-title strong{font-size:13px}.general-chat-title small{font-size:10px}.general-chat-title{min-width:0}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){body.general-chat-fullscreen .mobile-bottomnav{display:none!important}body.general-chat-fullscreen .mobile-topbar{display:none!important}body.general-chat-fullscreen .content-header{display:none!important}body.general-chat-fullscreen .content-body:has(.general-chat){position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:2147483646!important;padding:0!important;margin:0!important;overflow:hidden!important;background:var(--bg)!important}body.general-chat-fullscreen .content-body:has(.general-chat)>.page.active{height:100%!important;min-height:0!important}body.general-chat-fullscreen .content-body:has(.general-chat) .general-layout{height:100%!important;min-height:0!important}body.general-chat-fullscreen .content-body:has(.general-chat) .general-chat{height:100%!important;min-height:0!important}}.general-chat-icon{width:34px;height:34px}.online-pill,.chat-reset-mini{min-height:31px;font-size:10px;padding:0 8px}.general-messages{flex:1;min-height:0;height:auto;overflow-y:auto;overflow-x:hidden;padding:10px 8px;box-sizing:border-box;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.general-messages .message{gap:6px;padding:4px 2px}.general-messages .msg-content{max-width:82%}.general-messages .msg-name{font-size:11px}.general-messages .msg-time{font-size:9px}.general-messages .msg-text{font-size:12px;line-height:1.55;padding:7px 9px;border-radius:10px}.general-composer{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;flex:0 0 var(--mobile-composer-h);min-height:var(--mobile-composer-h);box-sizing:border-box;z-index:2147483645;padding:6px!important;border:1px solid var(--line);border-radius:17px;background:color-mix(in srgb,var(--surface) 98%,transparent)!important;box-shadow:0 10px 28px rgba(0,0,0,.24);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.composer-wrap{padding:5px 8px;border-radius:12px}.composer-wrap textarea{min-height:38px;max-height:78px;font-size:15px;line-height:1.45}.composer-meta{display:none}.emoji-button,.send-button{width:42px;height:42px;min-width:42px;flex:0 0 42px;border-radius:12px}.emoji-button{font-size:21px}.emoji-popover{position:absolute!important;right:4px;bottom:calc(100%+8px);max-height:190px}.content-body:has(.room-chat){padding:0!important;margin:0!important;overflow:hidden}.room-layout{position:relative;height:calc(100% - var(--mobile-nav-space));min-height:0;display:flex;flex-direction:column;background:var(--surface);overflow:hidden}.room-head{flex:0 0 auto;margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:9px 10px 10px;background:var(--surface);z-index:20}.room-head-top{display:flex!important;align-items:center!important;gap:9px!important;min-height:48px;cursor:pointer}.room-head-info{min-width:0;flex:1}.room-head-title{font-size:14px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-head-meta{font-size:10px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-quick-action{flex:0 0 auto}.room-quick-action button{min-height:38px;padding:0 12px;border:1px solid var(--line)!important;border-radius:11px!important;background:var(--surface-2)!important;color:var(--text)!important;font-size:11px;font-weight:900}.room-quick-action .success{background:rgba(66,214,109,.12)!important;color:var(--green)!important;border-color:rgba(66,214,109,.30)!important}.room-quick-action .danger{background:rgba(255,92,108,.10)!important;color:var(--red)!important;border-color:rgba(255,92,108,.28)!important}.room-game-banner{order:-1;display:flex!important;height:145px;margin:0 0 9px;border-radius:14px;overflow:hidden;cursor:pointer}.game-cover-frame{width:min(250px,68%);height:92px}.game-title{font-size:14px;max-width:90%}.room-game-banner img{pointer-events:none}.room-content{display:flex!important;flex:1;min-height:0;width:100%}.room-chat{width:100%;height:100%;min-height:0;border:0;border-radius:0;display:flex;flex-direction:column;background:var(--surface);overflow:hidden}.chat-header{height:45px;flex:0 0 45px;padding:0 10px;font-size:12px}.chat-messages{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:9px 8px;box-sizing:border-box;-webkit-overflow-scrolling:touch}.message{gap:6px;padding:4px 2px}.msg-avatar{width:29px;height:29px;flex-basis:29px}.msg-content{max-width:82%}.msg-name{font-size:11px}.msg-time{font-size:9px}.msg-text{font-size:12px;line-height:1.55;padding:7px 9px}.chat-input{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;flex:0 0 var(--mobile-composer-h);min-height:var(--mobile-composer-h);box-sizing:border-box;z-index:2147483645;padding:6px!important;border:1px solid var(--line);border-radius:17px;background:color-mix(in srgb,var(--surface) 98%,transparent)!important;box-shadow:0 10px 28px rgba(0,0,0,.24);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.chat-input textarea{min-height:38px;max-height:78px;font-size:15px;padding:8px 9px}.chat-input .char-counter{display:none}.chat-input .emoji-button,.chat-input>button:last-child{width:42px;height:42px;min-width:42px}.chat-input .emoji-popover{position:absolute!important;right:4px;bottom:calc(100%+8px)}.room-mobile-details{display:none;position:absolute;inset:0;z-index:40;padding:10px 10px calc(12px+env(safe-area-inset-bottom));box-sizing:border-box;background:var(--surface);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.room-info-open .room-mobile-details{display:block!important}.room-mobile-details:before{content:'اطلاعات اتاق';display:block;margin:0 0 8px;padding:11px 13px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2);font-size:13px;font-weight:950}.room-detail-back-row{margin-bottom:8px}.room-detail-back-row .back-btn{display:inline-flex!important;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);color:var(--text);font-size:11px;font-weight:900}.room-detail-summary{display:flex;flex-direction:column;gap:4px;margin-bottom:8px;padding:12px 13px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.room-detail-summary strong{font-size:15px}.room-detail-summary span,.room-detail-summary small{font-size:11px;color:var(--muted);line-height:1.6}.room-mobile-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:8px;padding:8px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2);box-shadow:0 8px 22px rgba(0,0,0,.12)}.room-mobile-actions button{min-height:44px!important;width:100%;border:1px solid var(--line)!important;border-radius:11px!important;background:var(--input)!important;color:var(--text)!important;font-size:11px;font-weight:900}.room-mobile-actions .success{background:rgba(66,214,109,.10)!important;color:var(--green)!important;border-color:rgba(66,214,109,.28)!important}.room-mobile-actions .danger{background:rgba(255,92,108,.09)!important;color:var(--red)!important;border-color:rgba(255,92,108,.26)!important}.room-mobile-presence{display:grid;grid-template-columns:1fr;gap:8px}.room-mobile-presence section{border:1px solid var(--line);border-radius:15px;background:var(--surface-2);overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.10)}.presence-title{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;border-bottom:1px solid var(--line);font-size:12px;font-weight:900}.presence-list{padding:5px;max-height:220px;overflow:auto}.members-panel{display:none!important}button{background:transparent;color:inherit}.keyboard-open .content-body:has(.general-chat),.keyboard-open .content-body:has(.room-chat){padding-bottom:0!important;margin-bottom:0!important}.keyboard-open .general-chat,.keyboard-open .room-layout{height:calc(var(--chat-vh,100dvh) - var(--mobile-nav-space))!important;max-height:calc(var(--chat-vh,100dvh) - var(--mobile-nav-space))!important}.keyboard-open .general-composer,.keyboard-open .chat-input{position:fixed!important;bottom:calc(7px+env(safe-area-inset-bottom))!important}.keyboard-open .general-messages,.keyboard-open .chat-messages{padding-bottom:calc(var(--mobile-composer-h)+16px)!important}.content-body,.general-messages,.chat-messages{scrollbar-gutter:auto!important}button{background:transparent;color:inherit}}@media(max-width:430px){.mobile-bottomnav{gap:3px!important;padding-left:5px!important;padding-right:5px!important}.mobile-bnav{font-size:9px!important;padding-left:1px!important;padding-right:1px!important}.mobile-bnav svg{width:20px!important;height:20px!important}.content-body{padding-left:8px;padding-right:8px}.rooms-grid{gap:7px}.room-cover{height:86px}.room-game-banner{height:132px}}@media(max-width:350px){.mobile-bnav span{font-size:8px!important}.mobile-bnav svg{width:19px!important;height:19px!important}.rooms-grid{grid-template-columns:1fr}.room-cover{height:125px}}@media(min-width:901px) and (max-width:1250px){.sidebar{width:255px;flex-basis:255px}.rooms-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){button,a,[role="button"],input,textarea,select{-webkit-tap-highlight-color:transparent}button:focus,button:active,a:focus,a:active,[role="button"]:focus,[role="button"]:active{outline:none!important}button:focus-visible,a:focus-visible,[role="button"]:focus-visible{outline:none!important;box-shadow:none!important}.online-panel{display:none!important}}.auth-input:focus-visible,.form-field input:focus-visible,.form-field textarea:focus-visible,.form-field select:focus-visible,.search-box input:focus-visible,.chat-input textarea:focus-visible,.composer-wrap textarea:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 72%,white 8%)!important;outline-offset:2px!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)!important}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.general-chat>#replyPreview,.room-chat>#replyPreview{flex:0 0 auto!important;order:1!important;width:100%!important;max-width:100%!important;min-height:0!important;box-sizing:border-box!important;margin:0!important;padding:7px 10px!important;border-radius:10px 10px 0 0!important;overflow:hidden!important}.general-chat>.general-composer,.room-chat>.chat-input{order:2!important;flex:0 0 var(--mobile-composer-h)!important;min-height:var(--mobile-composer-h)!important;max-height:var(--mobile-composer-h)!important;box-sizing:border-box!important}}.nexmat-loading-overlay{background:var(--surface)!important;color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow)}.nexmat-loading-overlay .nexmat-loading-label{font-weight:800;font-size:14px}.nexmat-operation-status{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;margin:8px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font-size:13px;font-weight:800}.steam-results .nexmat-steam-status{display:none;position:sticky;top:0;z-index:2}.steam-results.searching .nexmat-steam-status{display:flex}.room-owner-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.room-owner-crown{margin-right:5px;font-size:13px}@media (max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.content-body{padding-bottom:var(--mobile-nav-space)!important;scroll-padding-bottom:var(--mobile-nav-space)!important}.content-body::after{display:none!important;content:none!important}}:root{--danger-glass:rgba(255,72,92,.13);--danger-border:rgba(255,92,108,.34)}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){body.auth-state .mobile-bottomnav,#authScreen.show~.mobile-bottomnav{display:none!important;visibility:hidden!important;pointer-events:none!important}.auth-screen{padding:16px!important;overflow:auto!important}.auth-container{width:min(100%,420px)!important}}.room-actions{gap:6px!important}.room-actions button,.room-quick-action button,.room-mobile-actions button{min-height:36px!important;height:36px!important;padding:0 10px!important;border-radius:10px!important;font-size:12px!important;box-shadow:none!important;transition:background .15s ease,border-color .15s ease,transform .15s ease!important}.room-actions button:not(.primary):not(.danger):not(.success){background:rgba(255,255,255,.045)!important;border:1px solid var(--line)!important}.room-actions .danger,.room-quick-action .danger,.room-mobile-actions .danger,.danger{background:var(--danger-glass)!important;border:1px solid var(--danger-border)!important;color:var(--red)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.danger-glass{min-height:32px!important;height:32px!important;padding:0 9px!important;border-radius:9px!important;background:var(--danger-glass)!important;border:1px solid var(--danger-border)!important;color:var(--red)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;font-size:11px!important;font-weight:850!important;box-shadow:none!important;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);cursor:pointer}.danger-glass:hover,.room-actions .danger:hover,.room-quick-action .danger:hover,.room-mobile-actions .danger:hover{transform:translateY(-1px);background:rgba(255,72,92,.19)!important}.modal-footer .danger,.moderation-actions button.danger{background:var(--danger-glass)!important;border:1px solid var(--danger-border)!important;color:var(--red)!important}.danger-account-btn{width:auto!important;min-height:38px!important;padding:0 12px!important;border-radius:10px!important;background:var(--danger-glass)!important;border:1px solid var(--danger-border)!important;font-size:12px!important;box-shadow:none!important}.room-actions{padding:4px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:rgba(255,255,255,.025)!important;box-shadow:none!important}.free-room-card{min-height:150px!important;max-width:270px!important}.free-room-card .free-room-body{padding:15px!important;display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:5px!important}.free-room-card .free-room-header{font-size:20px!important;line-height:1.2!important;font-weight:950!important;letter-spacing:-.3px}.free-room-card .free-room-number{font-size:13px!important;color:var(--accent)!important;font-weight:800!important}.free-room-card .free-room-members{display:flex!important;align-items:baseline!important;gap:5px!important;margin-top:5px!important;color:var(--muted)!important}.free-room-card .free-room-members i{font-size:13px!important;color:var(--accent)!important}.free-room-card .free-room-members strong{font-size:25px!important;line-height:1!important;color:var(--text)!important}.free-room-card .free-room-members span{font-size:11px!important}.free-room-card .danger-glass{margin-top:6px!important}.room-card,.home-action-btn,.free-rooms-entry,.form-section,.profile-card,.contact-social-item,.contact-form-card{box-shadow:none!important;will-change:auto!important}.room-card:hover,.home-action-btn:hover,.free-rooms-entry:hover,.form-section:hover,.profile-card:hover,.contact-social-item:hover,.contact-form-card:hover{transform:none!important;box-shadow:none!important}.general-composer,.chat-input{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.nexmat-loading-overlay{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.room-card{border-radius:14px!important}.free-room-card{max-width:none!important;min-height:138px!important}.room-actions{width:100%;justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding:3px!important}.room-actions button{flex:0 0 auto!important}.danger-glass{min-height:30px!important;height:30px!important}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}<style id="nexmat-v17-2-general-stability">@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.content-body:has(.general-chat){flex:1 1 0!important;height:0!important;min-height:0!important;max-height:none!important;overflow:hidden!important;padding-top:0!important;padding-bottom:0!important;margin:0!important;box-sizing:border-box!important}.content-body:has(.general-chat)>.page.active{display:flex!important;flex:1 1 0!important;flex-direction:column!important;min-height:0!important;height:100%!important;max-height:100%!important;overflow:hidden!important;box-sizing:border-box!important}.content-body:has(.general-chat)>.page.active>.general-layout{flex:1 1 0!important;height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.content-body:has(.general-chat) .general-chat{flex:1 1 0!important;height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important}.content-body:has(.general-chat) .general-chat-top{flex:0 0 var(--n17-chat-header)!important}.content-body:has(.general-chat) .general-messages{flex:1 1 0!important;height:0!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important}.content-body:has(.general-chat) .general-composer{flex:0 0 auto!important;min-height:var(--n17-chat-min-composer)!important;height:auto!important;max-height:none!important;position:relative!important;transform:none!important}.content-body:has(.general-chat)::after{display:none!important;content:none!important}.content-body:has(.general-chat) .general-messages .chat-empty{flex:1 1 auto!important;min-height:100%!important}}.sidebar-title{display:flex;align-items:center;gap:0;letter-spacing:.2px;direction:ltr!important}.sidebar-title .logo-nex{order:1!important}.sidebar-title .logo-mat{order:2!important}.logo-nex{color:#fff}.logo-mat{color:#ef3f5f}html[data-theme="light"] .logo-nex{color:#111}html[data-theme="light"] .logo-mat{color:#e53935}.home-room-more-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 13px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:color-mix(in srgb,var(--surface) 72%,transparent)!important;color:var(--text)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 7px 20px rgba(0,0,0,.06);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.home-room-more-btn:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))!important;background:color-mix(in srgb,var(--surface-2) 80%,transparent)!important;box-shadow:0 10px 24px rgba(0,0,0,.10)}.home-room-more-btn i{font-size:12px;color:var(--accent)}.room-mobile-reset{display:none}@media(min-width:901px){.room-head{padding:16px 18px;border-radius:18px}.room-head-top{display:block}.room-head-info{display:block}.room-head-title{font-size:21px;line-height:1.35}.room-head-meta{font-size:14px;margin-top:3px}.room-quick-action{display:none}.room-game-banner{height:180px;margin-top:12px}.room-content{grid-template-columns:230px minmax(0,1fr)!important;gap:12px!important;align-items:stretch}.members-panel{grid-column:1!important;grid-row:1!important;border-radius:16px!important;overflow:auto}.room-chat{grid-column:2!important;grid-row:1!important;min-width:0;border-radius:16px!important}.chat-header{min-height:52px;height:auto;padding:7px 10px;gap:10px;flex-wrap:wrap}.chat-header-title{font-weight:900;white-space:nowrap}.room-desktop-actions{display:flex;align-items:center;justify-content:flex-start;gap:6px;flex-wrap:wrap;margin-right:auto}.room-desktop-actions button{min-height:34px;border:1px solid var(--line);border-radius:9px;padding:0 9px;background:var(--input);color:var(--text);font-size:13px;transition:transform .15s ease,filter .15s ease}.room-desktop-actions button:hover{transform:translateY(-1px);filter:brightness(1.05)}.room-desktop-actions .success{background:var(--green);color:#06230e;border-color:transparent}.room-desktop-actions .danger{background:var(--red);color:#fff;border-color:transparent}.room-mobile-details{display:none!important}}.room-status{top:7px!important;right:7px!important;padding:3px 6px!important;min-height:22px;border-radius:12px!important;font-size:12px!important;line-height:1.1;box-shadow:0 3px 10px rgba(0,0,0,.18);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.room-status i{width:5px!important;height:5px!important;margin-left:3px!important}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.room-chat .chat-header{height:45px!important;min-height:45px!important;flex:0 0 45px!important;padding:0 10px!important;font-size:12px!important;justify-content:space-between!important;gap:8px!important}.room-chat .chat-header-title{font-size:12px!important;font-weight:900!important;display:block!important;white-space:nowrap!important}.room-chat .room-desktop-actions{display:none!important}.room-chat .room-mobile-reset{display:inline-flex!important;align-items:center;justify-content:center;min-height:32px!important;height:32px!important;padding:5px 10px!important;font-size:12px!important;border-radius:9px!important;background:var(--danger)!important;color:#fff!important;border:0!important}.room-chat .chat-messages{padding:9px!important;gap:6px!important}.room-chat .chat-input{padding:8px!important;gap:6px!important;background:var(--surface)!important}.room-chat .chat-input textarea{min-height:38px!important;max-height:78px!important;font-size:15px!important;padding:8px 9px!important}.room-chat .chat-input .char-counter{display:none!important}.room-chat .chat-input .emoji-button,.room-chat .chat-input>button:last-child{width:42px!important;height:42px!important;min-width:42px!important}.room-chat .chat-input .emoji-popover{position:absolute!important;right:4px!important;bottom:calc(100%+8px)!important}.content-body:has(.general-chat) .general-chat{width:100%!important;max-width:100%!important;min-width:0!important;border-radius:16px!important;overflow:hidden!important}.content-body:has(.general-chat) .general-chat-top{min-height:54px!important;padding:8px 10px!important}.content-body:has(.general-chat) .general-chat-title strong{font-size:13px!important}.content-body:has(.general-chat) .general-chat-title small{font-size:10px!important}.content-body:has(.general-chat) .general-chat-icon{width:34px!important;height:34px!important}.content-body:has(.general-chat) .general-composer{padding:7px!important;gap:6px!important}.content-body:has(.general-chat) .composer-wrap{padding:5px 8px!important;border-radius:12px!important}.content-body:has(.general-chat) .composer-wrap textarea{min-height:38px!important;max-height:78px!important;font-size:15px!important;line-height:1.45!important}}@media (max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){:root{--n17-chat-header:54px;--n17-chat-min-composer:58px}.content-body:has(.general-chat),.content-body:has(.room-chat){padding:0!important;margin:0!important;overflow:hidden!important;min-height:0!important;box-sizing:border-box!important}.content-body:has(.general-chat) .general-layout,.content-body:has(.room-chat) .room-layout{width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;height:calc(100% - var(--mobile-nav-space))!important;max-height:calc(100% - var(--mobile-nav-space))!important;overflow:hidden!important;box-sizing:border-box!important}.content-body:has(.general-chat) .general-chat{width:100%!important;height:100%!important;max-height:none!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;background:var(--surface)!important}.content-body:has(.general-chat) .general-chat-top{flex:0 0 var(--n17-chat-header)!important;height:var(--n17-chat-header)!important;min-height:var(--n17-chat-header)!important;box-sizing:border-box!important;padding:8px 10px!important;overflow:hidden!important}.content-body:has(.general-chat) .general-messages{order:1!important;flex:1 1 auto!important;min-height:0!important;height:auto!important;width:100%!important;box-sizing:border-box!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-y:contain!important;padding:10px 8px 12px!important;margin:0!important;scroll-behavior:auto!important;scrollbar-gutter:stable!important}.content-body:has(.general-chat) .general-composer{order:2!important;position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;flex:0 0 auto!important;min-height:var(--n17-chat-min-composer)!important;height:auto!important;max-height:none!important;width:100%!important;box-sizing:border-box!important;margin:0!important;padding:7px 8px!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;background:var(--surface)!important;box-shadow:none!important;z-index:5!important;display:flex!important;align-items:flex-end!important;gap:6px!important}.content-body:has(.general-chat) .composer-wrap{flex:1 1 auto!important;min-width:0!important;width:auto!important;padding:5px 8px!important;border-radius:12px!important;box-sizing:border-box!important;background:var(--input)!important;border:1px solid var(--line)!important}.content-body:has(.general-chat) .composer-wrap textarea{display:block!important;width:100%!important;min-height:38px!important;max-height:76px!important;height:38px;overflow-y:auto!important;resize:none!important;font-size:15px!important;line-height:1.45!important}.content-body:has(.general-chat) .composer-meta{display:none!important}.content-body:has(.general-chat) .general-composer .emoji-button,.content-body:has(.general-chat) .general-composer .send-button{flex:0 0 42px!important;width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;border-radius:12px!important}.content-body:has(.room-chat) .room-layout{display:flex!important;flex-direction:column!important}.content-body:has(.room-chat) .room-head{flex:0 0 auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}.content-body:has(.room-chat) .room-content{flex:1 1 auto!important;min-height:0!important;height:auto!important;width:100%!important;display:flex!important;overflow:hidden!important;box-sizing:border-box!important}.content-body:has(.room-chat) .room-chat{width:100%!important;height:100%!important;min-height:0!important;border:0!important;border-radius:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;background:var(--surface)!important}.content-body:has(.room-chat) .chat-header{flex:0 0 45px!important;height:45px!important;min-height:45px!important;box-sizing:border-box!important;overflow:hidden!important;padding:0 10px!important}.content-body:has(.room-chat) .chat-messages{order:1!important;flex:1 1 auto!important;min-height:0!important;height:auto!important;width:100%!important;box-sizing:border-box!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-y:contain!important;padding:9px 8px 12px!important;margin:0!important;scroll-behavior:auto!important;scrollbar-gutter:stable!important}.content-body:has(.room-chat) .chat-input{order:2!important;position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;flex:0 0 auto!important;min-height:var(--n17-chat-min-composer)!important;height:auto!important;max-height:none!important;width:100%!important;box-sizing:border-box!important;margin:0!important;padding:7px 8px!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;background:var(--surface)!important;box-shadow:none!important;z-index:5!important;display:flex!important;align-items:flex-end!important;gap:6px!important}.content-body:has(.room-chat) .chat-input textarea{flex:1 1 auto!important;min-width:0!important;min-height:38px!important;max-height:76px!important;height:38px;overflow-y:auto!important;resize:none!important;font-size:15px!important;line-height:1.45!important;box-sizing:border-box!important}.content-body:has(.room-chat) .chat-input .emoji-button,.content-body:has(.room-chat) .chat-input>button:last-child{flex:0 0 42px!important;width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;border-radius:12px!important}.content-body:has(.general-chat) .general-chat>#replyPreview,.content-body:has(.room-chat) .room-chat>#replyPreview{order:1!important;flex:0 0 auto!important;width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box!important}.content-body:has(.general-chat) .general-chat>.general-composer,.content-body:has(.room-chat) .room-chat>.chat-input{order:2!important}.keyboard-open .content-body:has(.general-chat),.keyboard-open .content-body:has(.room-chat){height:auto!important;max-height:none!important}.keyboard-open .content-body:has(.general-chat) .general-chat,.keyboard-open .content-body:has(.room-chat) .room-layout{height:calc(var(--chat-vh,100dvh) - var(--mobile-nav-space))!important;max-height:calc(var(--chat-vh,100dvh) - var(--mobile-nav-space))!important}.keyboard-open .general-composer,.keyboard-open .chat-input{position:relative!important;bottom:auto!important;left:auto!important;right:auto!important}.keyboard-open .general-messages,.keyboard-open .chat-messages{padding-bottom:12px!important}}@media (max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.contact-social-clean{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:520px){.contact-social-clean{grid-template-columns:repeat(2,minmax(0,1fr))}}html[data-theme="light"] #app [data-nexmat-bg-target]{background-image:var(--nexmat-light-bg,none)!important}html[data-theme="dark"] #app [data-nexmat-bg-target]{background-image:var(--nexmat-dark-bg,none)!important}html[data-theme="light"] #app{color:var(--text)!important}html[data-theme="light"] #app .content-title,html[data-theme="light"] #app .hero-title,html[data-theme="light"] #app .room-name,html[data-theme="light"] #app .room-meta,html[data-theme="light"] #app .room-info,html[data-theme="light"] #app .form-title,html[data-theme="light"] #app .profile-info h2,html[data-theme="light"] #app .profile-info p,html[data-theme="light"] #app .form-field label,html[data-theme="light"] #app .home-action-btn,html[data-theme="light"] #app .nav-item,html[data-theme="light"] #app .sidebar-title,html[data-theme="light"] #app .contact-social-item strong{color:var(--text)!important}@media (max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.sidebar-title,.mobile-logo,.sidebar-title .logo-nex,.sidebar-title .logo-mat,.mobile-logo .logo-nex,.mobile-logo .logo-mat{direction:ltr!important}.sidebar-title .logo-nex,.mobile-logo .logo-nex{order:1!important;color:var(--text)!important}.sidebar-title .logo-mat,.mobile-logo .logo-mat{order:2!important;color:#e53935!important}.content-body:has(.general-chat),.content-body:has(.room-chat){flex:1 1 0!important;min-height:0!important;height:auto!important;max-height:none!important;overflow:hidden!important;padding:0!important;margin:0!important;box-sizing:border-box!important}.content-body:has(.general-chat)>.page.active,.content-body:has(.room-chat)>.page.active{display:flex!important;flex:1 1 0!important;flex-direction:column!important;min-height:0!important;height:100%!important;max-height:none!important;overflow:hidden!important;box-sizing:border-box!important}.content-body:has(.general-chat)>.page.active>.general-layout,.content-body:has(.room-chat)>.page.active>.room-layout{flex:1 1 0!important;min-height:0!important;height:calc(100% - var(--mobile-nav-space))!important;max-height:calc(100% - var(--mobile-nav-space))!important;overflow:hidden!important;box-sizing:border-box!important}.content-body:has(.general-chat) .general-layout{display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important}.content-body:has(.general-chat) .general-chat{display:flex!important;flex:1 1 0!important;flex-direction:column!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;overflow:hidden!important}.content-body:has(.general-chat) .general-chat-top{flex:0 0 54px!important;height:54px!important;min-height:54px!important;max-height:54px!important;box-sizing:border-box!important;overflow:hidden!important}.content-body:has(.general-chat) .general-messages{flex:1 1 0!important;height:0!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;box-sizing:border-box!important}.content-body:has(.general-chat) .general-composer{flex:0 0 auto!important;height:auto!important;min-height:58px!important;max-height:none!important;position:relative!important;inset:auto!important;transform:none!important;margin:0!important;box-sizing:border-box!important;z-index:20!important}.content-body:has(.room-chat) .room-layout{display:flex!important;flex-direction:column!important}.content-body:has(.room-chat) .room-head{flex:0 0 auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}.content-body:has(.room-chat) .room-content{display:flex!important;flex:1 1 0!important;min-height:0!important;height:0!important;width:100%!important;overflow:hidden!important}.content-body:has(.room-chat) .room-chat{display:flex!important;flex:1 1 0!important;flex-direction:column!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:hidden!important}.content-body:has(.room-chat) .chat-header{flex:0 0 45px!important;height:45px!important;min-height:45px!important;max-height:45px!important;box-sizing:border-box!important;overflow:hidden!important}.content-body:has(.room-chat) .chat-messages{flex:1 1 0!important;height:0!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;box-sizing:border-box!important}.content-body:has(.room-chat) .chat-input{flex:0 0 auto!important;height:auto!important;min-height:58px!important;max-height:none!important;position:relative!important;inset:auto!important;transform:none!important;margin:0!important;box-sizing:border-box!important;z-index:20!important}.content-body:has(.general-chat) .general-chat>#replyPreview,.content-body:has(.room-chat) .room-chat>#replyPreview{flex:0 0 auto!important;position:relative!important;inset:auto!important;max-height:90px!important;overflow:auto!important;order:1!important}.content-body:has(.general-chat) .general-messages,.content-body:has(.room-chat) .chat-messages{order:2!important}.content-body:has(.general-chat) .general-composer,.content-body:has(.room-chat) .chat-input{order:3!important}.keyboard-open .content-body:has(.general-chat),.keyboard-open .content-body:has(.room-chat){height:auto!important;max-height:none!important;padding:0!important;margin:0!important}.keyboard-open .content-body:has(.general-chat)>.page.active,.keyboard-open .content-body:has(.room-chat)>.page.active{height:100%!important;max-height:none!important}.keyboard-open .content-body:has(.general-chat)>.page.active>.general-layout,.keyboard-open .content-body:has(.room-chat)>.page.active>.room-layout{height:calc(var(--chat-vh,100dvh) - var(--mobile-nav-space))!important;max-height:calc(var(--chat-vh,100dvh) - var(--mobile-nav-space))!important}.keyboard-open .general-composer,.keyboard-open .chat-input{position:relative!important;inset:auto!important;bottom:auto!important;left:auto!important;right:auto!important;transform:none!important}}.nexmat-teamspeak-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:6px;min-width:34px;min-height:34px;padding:0 9px;border:1px solid var(--line)!important;border-radius:10px;background:var(--input)!important;color:var(--text)!important;text-decoration:none!important;cursor:pointer;touch-action:manipulation;box-sizing:border-box}.nexmat-teamspeak-btn:hover{background:var(--surface-2)!important;color:var(--text)!important}.nexmat-teamspeak-btn i{font-size:14px;line-height:1}.nexmat-teamspeak-home{min-height:48px;padding:0 14px}.nexmat-teamspeak-chat,.nexmat-teamspeak-room{width:34px;height:34px;padding:0;min-width:34px;min-height:34px}.nexmat-teamspeak-contact{min-height:44px;padding:0 14px}.contact-teamspeak-ban-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;margin:10px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--text);font-weight:900;text-decoration:none}.contact-teamspeak-ban-btn:hover{background:var(--input)}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.nexmat-teamspeak-home{min-height:56px}.nexmat-teamspeak-chat,.nexmat-teamspeak-room{width:32px;height:32px;min-width:32px;min-height:32px;padding:0}.nexmat-teamspeak-chat span,.nexmat-teamspeak-room span{display:none}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@media (max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.auth-container,.mobile-topbar,.content-header,.general-chat,.room-chat,.members-panel,.online-panel{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}button,input,select,textarea{font:inherit}img{max-width:100%;height:auto}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.modal-overlay[hidden]{display:none!important}.modal{max-height:min(90dvh,760px);overflow:auto;overscroll-behavior:contain}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}#mobileBottomNav[hidden]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}.mobile-bottomnav{padding-bottom:max(8px,env(safe-area-inset-bottom));box-sizing:border-box}.mobile-topbar{padding-top:env(safe-area-inset-top)}.profile-image{aspect-ratio:1/1}.room-cover{aspect-ratio:16/9;overflow:hidden}.room-cover img{width:100%;height:100%;object-fit:cover}.empty-state{overflow-wrap:anywhere}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){body{min-width:320px;overflow-x:hidden}.main-content,.content-body{min-width:0;width:100%}.more-btn,.modal-close{width:44px;height:44px;min-width:44px}.emoji-popover button{min-width:40px;min-height:40px}.auth-input,.form-field input,.form-field select,.form-field textarea{min-height:46px}}@media(max-width:520px){.rooms-grid{grid-template-columns:1fr}.home-quick-actions{grid-template-columns:1fr}.content-body{padding-inline:12px}.modal-overlay{padding:8px}.modal{width:100%;max-width:none}.captcha-box{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.nexmat-teamspeak-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:6px;min-width:34px;min-height:34px;padding:0 9px;border:1px solid var(--line)!important;border-radius:10px;background:var(--input)!important;color:var(--text)!important;text-decoration:none!important;cursor:pointer;touch-action:manipulation;box-sizing:border-box;visibility:visible!important;opacity:1!important;position:relative!important;z-index:20!important}.nexmat-teamspeak-btn:hover{background:var(--surface-2)!important;color:var(--text)!important}.nexmat-teamspeak-icon{display:inline-flex!important;align-items:center;justify-content:center;width:18px;height:18px;font-size:16px;line-height:1;flex:0 0 18px}.nexmat-teamspeak-home{min-height:48px;padding:0 14px}.nexmat-teamspeak-chat,.nexmat-teamspeak-room{width:34px;height:34px;padding:0;min-width:34px;min-height:34px}.nexmat-teamspeak-contact{min-height:44px;padding:0 14px}.contact-teamspeak-ban-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;margin:10px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--text);font-weight:900;text-decoration:none;visibility:visible!important}@media(max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){.nexmat-teamspeak-home{min-height:56px}.nexmat-teamspeak-chat,.nexmat-teamspeak-room{width:34px;height:34px;min-width:34px;min-height:34px;padding:0}.nexmat-teamspeak-chat span:last-child,.nexmat-teamspeak-room span:last-child{display:none}body.general-chat-fullscreen .mobile-bottomnav,body.general-chat-fullscreen .mobile-topbar,body.general-chat-fullscreen .content-header{display:none!important;visibility:hidden!important;pointer-events:none!important}body.general-chat-fullscreen .content-body:has(.general-chat){position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:100dvh!important;padding:0!important;margin:0!important;overflow:hidden!important;z-index:2147483646!important;box-sizing:border-box!important}body.general-chat-fullscreen .content-body:has(.general-chat)>.page.active{display:flex!important;flex-direction:column!important;width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;padding:0!important;margin:0!important;box-sizing:border-box!important}body.general-chat-fullscreen .content-body:has(.general-chat)>.page.active>.general-layout{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;margin:0!important;padding:0!important;box-sizing:border-box!important}body.general-chat-fullscreen .content-body:has(.general-chat) .general-chat{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;overflow:hidden!important;box-sizing:border-box!important}body.general-chat-fullscreen .content-body:has(.general-chat) .general-chat-top{position:relative!important;top:auto!important;flex:0 0 54px!important;height:54px!important;min-height:54px!important;max-height:54px!important;overflow:hidden!important;box-sizing:border-box!important}body.general-chat-fullscreen .content-body:has(.general-chat) .general-messages{flex:1 1 auto!important;height:0!important;min-height:0!important;max-height:none!important;width:100%!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;box-sizing:border-box!important}body.general-chat-fullscreen .content-body:has(.general-chat) .general-composer{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;flex:0 0 auto!important;width:100%!important;height:auto!important;min-height:58px!important;max-height:none!important;margin:0!important;padding:7px 8px!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;transform:none!important;box-sizing:border-box!important;z-index:10!important}body.general-chat-fullscreen .general-mobile-back:not([hidden]){display:inline-flex!important;align-items:center!important;justify-content:center!important;width:32px!important;height:32px!important;min-width:32px!important;margin-inline-start:2px!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--surface-2)!important;color:var(--text)!important;visibility:visible!important;opacity:1!important}body.general-chat-fullscreen .general-chat-top .nexmat-teamspeak-chat{order:30!important;flex:0 0 34px!important;visibility:visible!important}body.general-chat-fullscreen .general-chat-top #resetGeneral{order:31!important}body.general-chat-fullscreen .general-chat-top #generalMobileBackBtn{order:32!important}}
/* ========================= VM8 CHAT / MOBILE NAV FINAL LAYOUT =========================
   The chat pages stay inside the app's normal flex viewport. The fixed mobile
   navigation is outside document flow, while the chat viewport reserves its
   exact height. No fullscreen body mode is used. */
@media (max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){
  :root{
    --vm8-nav-space:calc(var(--nav-h) + env(safe-area-inset-bottom));
    --vm8-chat-composer:58px;
    --vm8-top:58px;
  }

  html,body,#app,.app,.main-content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:100dvh!important;
    max-height:100dvh!important;
    overflow:hidden!important;
  }

  .main-content{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
  }

  /* The real app already has the mobile topbar. Do not stack a second
     content header above chat. */
  .main-content:has(.general-chat) .content-header,
  .main-content:has(.room-chat) .content-header{
    display:none!important;
  }

  .main-content:has(.general-chat) .content-body,
  .main-content:has(.room-chat) .content-body{
    flex:1 1 auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    padding:0 0 var(--vm8-nav-space)!important;
    margin:0!important;
    box-sizing:border-box!important;
    overscroll-behavior:none!important;
    scrollbar-gutter:auto!important;
  }

  .main-content:has(.general-chat) .content-body>.page.active,
  .main-content:has(.room-chat) .content-body>.page.active{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  /* ---------- PUBLIC CHAT ---------- */
  .main-content:has(.general-chat) .general-layout{
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  .main-content:has(.general-chat) .general-chat{
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:var(--surface)!important;
    box-sizing:border-box!important;
  }

  .main-content:has(.general-chat) .general-chat-top{
    flex:0 0 54px!important;
    width:100%!important;
    height:54px!important;
    min-height:54px!important;
    max-height:54px!important;
    padding:7px 10px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
    position:relative!important;
    inset:auto!important;
    transform:none!important;
  }

  .main-content:has(.general-chat) .general-messages{
    flex:1 1 auto!important;
    width:100%!important;
    height:0!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:10px 8px!important;
    margin:0!important;
    box-sizing:border-box!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    scroll-behavior:auto!important;
  }

  .main-content:has(.general-chat) .general-composer{
    order:initial!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    inset:auto!important;
    transform:none!important;
    flex:0 0 var(--vm8-chat-composer)!important;
    width:100%!important;
    height:var(--vm8-chat-composer)!important;
    min-height:var(--vm8-chat-composer)!important;
    max-height:var(--vm8-chat-composer)!important;
    margin:0!important;
    padding:7px 8px!important;
    border:0!important;
    border-top:1px solid var(--line)!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:var(--surface)!important;
    box-sizing:border-box!important;
    z-index:5!important;
  }

  .main-content:has(.general-chat) .general-composer .composer-wrap{
    flex:1 1 auto!important;
    min-width:0!important;
  }
  .main-content:has(.general-chat) .general-composer textarea{
    width:100%!important;
    min-width:0!important;
    min-height:38px!important;
    height:38px!important;
    max-height:76px!important;
    resize:none!important;
    overflow-y:auto!important;
    box-sizing:border-box!important;
  }
  .main-content:has(.general-chat) .general-composer .emoji-button,
  .main-content:has(.general-chat) .general-composer .send-button{
    flex:0 0 42px!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    box-sizing:border-box!important;
  }

  /* ---------- ROOM CHAT ---------- */
  .main-content:has(.room-chat) .room-layout{
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  .main-content:has(.room-chat) .room-head{
    flex:0 0 auto!important;
    width:100%!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  .main-content:has(.room-chat) .room-content{
    display:flex!important;
    flex:1 1 auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  .main-content:has(.room-chat) .room-chat{
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:var(--surface)!important;
    box-sizing:border-box!important;
  }

  .main-content:has(.room-chat) .members-panel{
    display:none!important;
  }

  .main-content:has(.room-chat) .chat-header{
    flex:0 0 45px!important;
    width:100%!important;
    height:45px!important;
    min-height:45px!important;
    max-height:45px!important;
    padding:0 10px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  .main-content:has(.room-chat) .chat-messages{
    flex:1 1 auto!important;
    width:100%!important;
    height:0!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:9px 8px 12px!important;
    margin:0!important;
    box-sizing:border-box!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    scroll-behavior:auto!important;
  }

  .main-content:has(.room-chat) .chat-input{
    order:initial!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    inset:auto!important;
    transform:none!important;
    flex:0 0 var(--vm8-chat-composer)!important;
    width:100%!important;
    height:var(--vm8-chat-composer)!important;
    min-height:var(--vm8-chat-composer)!important;
    max-height:var(--vm8-chat-composer)!important;
    margin:0!important;
    padding:7px 8px!important;
    border:0!important;
    border-top:1px solid var(--line)!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:var(--surface)!important;
    box-sizing:border-box!important;
    z-index:5!important;
  }

  .main-content:has(.room-chat) .chat-input textarea{
    flex:1 1 auto!important;
    min-width:0!important;
    min-height:38px!important;
    height:38px!important;
    max-height:76px!important;
    resize:none!important;
    overflow-y:auto!important;
    box-sizing:border-box!important;
  }

  .main-content:has(.room-chat) .chat-input .emoji-button,
  .main-content:has(.room-chat) .chat-input>button:last-child{
    flex:0 0 42px!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    box-sizing:border-box!important;
  }

  /* Any stale fullscreen class from an older cached JS/CSS path must not be
     allowed to hide the app chrome. */
  body.general-chat-fullscreen .mobile-bottomnav,
  body.general-chat-fullscreen .mobile-topbar,
  body.general-chat-fullscreen .content-header{
    display:revert!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  body.general-chat-fullscreen .mobile-bottomnav{
    display:grid!important;
  }
  body.general-chat-fullscreen .content-body:has(.general-chat){
    position:static!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    padding:0 0 var(--vm8-nav-space)!important;
    margin:0!important;
    overflow:hidden!important;
  }
}

/* TeamSpeak: compact headset-only control on desktop so it never consumes
   the room action row width. It keeps the accessible title/aria-label. */
@media(min-width:901px){
  .nexmat-teamspeak-btn{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:36px!important;
    min-height:36px!important;
    padding:0!important;
    gap:0!important;
  }
  .nexmat-teamspeak-btn .nexmat-teamspeak-icon{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:18px!important;
    height:18px!important;
    font-size:15px!important;
  }
  .nexmat-teamspeak-btn>span:not(.nexmat-teamspeak-icon){
    display:none!important;
  }
  .nexmat-teamspeak-btn .nexmat-teamspeak-icon i{
    font-size:16px!important;
    line-height:1!important;
  }
}


/* ========================= NEXMAT VM8 MOBILE LAYOUT ========================= */
:root{--vm8-topbar:58px;--vm8-header:56px;--vm8-bottom:64px;--vm8-safe-top:env(safe-area-inset-top,0px);--vm8-safe-bottom:env(safe-area-inset-bottom,0px)}
html,body{width:100%;height:100%;min-width:320px;overflow:hidden}body.vm8-app{background:var(--bg)}
#app{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;overflow:hidden!important}
.app{width:100%;height:100dvh;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.main-content{min-width:0;min-height:0;flex:1 1 auto;height:auto;display:flex;flex-direction:column;background:var(--bg)}
.content-body{min-width:0;min-height:0;flex:1 1 auto;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.general-layout,.room-layout,.general-chat,.room-chat{min-width:0;min-height:0}.general-messages,.chat-messages{min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.general-composer,.chat-input{position:relative;inset:auto;transform:none;flex:0 0 auto;min-width:0}.general-composer textarea,.chat-input textarea{resize:none;min-width:0;max-width:100%}.message{min-width:0;overflow-wrap:anywhere}.msg-content{min-width:0;max-width:100%}.msg-text{overflow-wrap:anywhere;word-break:break-word}.mobile-topbar,.mobile-bottomnav{display:none}.back-btn{display:none}
@media (min-width:901px){.mobile-topbar,.mobile-bottomnav{display:none!important}.content-header{display:flex}.content-body{padding:20px}.general-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;height:100%}.general-chat{display:flex;flex-direction:column;height:100%;overflow:hidden}.general-messages{flex:1 1 auto;height:0}.general-composer{border-top:1px solid var(--line);padding:10px}.room-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;height:100%}.room-content{min-width:0;min-height:0;height:100%}.room-chat{display:flex;flex-direction:column;height:100%;overflow:hidden}.chat-messages{flex:1 1 auto;height:0}.chat-input{border-top:1px solid var(--line);padding:10px}}
@media (max-width:900px), (hover:none) and (pointer:coarse) and (max-width:1100px){
html,body{width:100%;height:100%;min-width:320px;overflow:hidden}#app,.app{width:100%;height:100dvh;min-height:0;max-height:none;overflow:hidden}.sidebar{display:none!important}
.mobile-topbar{display:flex!important;flex:0 0 auto;width:100%;height:calc(var(--vm8-topbar) + var(--vm8-safe-top));min-height:calc(var(--vm8-topbar) + var(--vm8-safe-top));padding:var(--vm8-safe-top) 12px 0;align-items:center;gap:10px;background:var(--surface);border-bottom:1px solid var(--line);z-index:2}
.main-content{flex:1 1 auto;width:100%;min-width:0;min-height:0;height:auto!important;overflow:hidden}.content-header{display:flex;flex:0 0 var(--vm8-header);width:100%;height:var(--vm8-header);min-height:var(--vm8-header);padding:6px 10px;border-bottom:1px solid var(--line);z-index:1}.content-header .back-btn{display:flex;width:42px;height:42px;flex:0 0 42px}
.content-body{flex:1 1 auto;width:100%;height:auto!important;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.mobile-bottomnav{display:grid!important;position:relative!important;inset:auto!important;width:100%;height:calc(var(--vm8-bottom) + var(--vm8-safe-bottom));min-height:calc(var(--vm8-bottom) + var(--vm8-safe-bottom));flex:0 0 calc(var(--vm8-bottom) + var(--vm8-safe-bottom));grid-template-columns:repeat(5,minmax(0,1fr));padding:4px 6px var(--vm8-safe-bottom);background:var(--surface);border-top:1px solid var(--line);box-sizing:border-box;z-index:2;backdrop-filter:none;-webkit-backdrop-filter:none}
.mobile-bnav{min-width:0;min-height:48px;height:100%;border:0;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--muted);position:relative;background:transparent;touch-action:manipulation}.mobile-bnav svg{width:21px;height:21px;flex:0 0 21px;pointer-events:none}.mobile-bnav span{font-size:10px;line-height:1.2;white-space:nowrap}.mobile-bnav.active{color:var(--accent);background:var(--surface-2)}.mobile-bnav em{position:absolute;top:4px;right:calc(50% - 19px);min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:var(--red);color:#fff;font-size:9px;font-style:normal;line-height:16px}
.main-content:has(.general-chat) .content-header,.main-content:has(.room-chat) .content-header{display:none}.main-content:has(.general-chat) .content-body,.main-content:has(.room-chat) .content-body{flex:1 1 auto;width:100%;height:auto!important;min-width:0;min-height:0;padding:0;overflow:hidden}
.content-body>.page.active:has(.general-chat),.content-body>.page.active:has(.room-chat){display:flex;flex-direction:column;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;padding:0;margin:0}.main-content:has(.general-chat) .general-layout,.main-content:has(.room-chat) .room-layout{display:flex;flex:1 1 auto;flex-direction:column;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;margin:0;padding:0}.main-content:has(.general-chat) .general-chat,.main-content:has(.room-chat) .room-chat{display:flex;flex:1 1 auto;flex-direction:column;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;border:0;border-radius:0}.main-content:has(.general-chat) .online-panel,.main-content:has(.room-chat) .members-panel{display:none}
.general-chat-top,.chat-header{display:flex;flex:0 0 54px;width:100%;height:54px;min-height:54px;max-height:54px;align-items:center;gap:6px;padding:6px 8px;overflow:hidden;border-bottom:1px solid var(--line)}.general-chat-title{min-width:0;flex:1}.general-chat-title strong,.general-chat-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.general-chat-title small{font-size:11px;color:var(--muted)}.general-chat-top .online-pill,.general-chat-top .chat-reset-mini{flex:0 0 auto;min-height:36px}
.main-content:has(.general-chat) .general-messages,.main-content:has(.room-chat) .chat-messages{flex:1 1 auto;width:100%;height:auto!important;min-width:0;min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden;padding:10px 9px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}
.main-content:has(.general-chat) .general-composer,.main-content:has(.room-chat) .chat-input{display:flex;flex:0 0 auto;width:100%;min-width:0;min-height:58px;height:auto;max-height:none;position:relative!important;inset:auto!important;transform:none!important;margin:0;padding:7px 8px;border:0;border-top:1px solid var(--line);border-radius:0;background:var(--surface);z-index:1}.general-composer .composer-wrap{min-width:0;flex:1}.general-composer textarea,.chat-input textarea{min-width:0;width:100%;font-size:16px;line-height:1.45;max-height:120px;min-height:42px}.general-composer .composer-meta{display:none}.general-composer .emoji-button,.general-composer .send-button,.chat-input .emoji-button,.chat-input>button:last-child{width:42px;height:42px;min-width:42px;min-height:42px}.emoji-popover{bottom:calc(100% + 8px);right:8px;max-height:240px}
.room-mobile-details{position:absolute;inset:0;z-index:10;background:var(--bg);display:none;overflow-y:auto;overflow-x:hidden;padding-bottom:12px;-webkit-overflow-scrolling:touch}.room-layout.room-info-open .room-mobile-details{display:block}.room-layout.room-info-open .room-content{display:none}.more-btn,.modal-close{width:44px;height:44px;min-width:44px}.rooms-grid{grid-template-columns:1fr}.content-body:not(:has(.general-chat)):not(:has(.room-chat)){padding-inline:12px}}
@media (max-width:350px){.mobile-bnav span{font-size:9px}.mobile-bnav svg{width:20px;height:20px}.mobile-bottomnav{padding-inline:3px}}
@media (max-width:520px){.auth-container{width:calc(100% - 20px);padding:18px}.content-body:not(:has(.general-chat)):not(:has(.room-chat)){padding-inline:10px}}
@media (orientation:landscape) and (max-width:900px){:root{--vm8-topbar:50px;--vm8-bottom:58px}.mobile-bnav span{display:none}.mobile-bnav svg{width:22px;height:22px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
/* VM8: no keyboard layout class; browser owns dynamic viewport. */

/* VM8: Android Chrome Desktop-site viewport bridge. The rules above intentionally reuse the existing mobile layout only for coarse touch devices. */


/* VM8 Desktop: fixed sidebar + independent content area.
   Mobile/tablet rules above remain untouched. */
@media (min-width:1101px){
  #app,
  .app{
    width:100%;
    height:100dvh;
    min-height:100dvh;
    overflow:hidden;
  }

  .app{
    display:block;
    position:relative;
  }

  .sidebar{
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    left:auto;
    width:292px;
    height:100dvh;
    min-height:100dvh;
    max-height:100dvh;
    flex:none;
    z-index:1000;
    overflow:hidden;
  }

  .main-content{
    position:relative;
    width:calc(100% - 292px);
    height:100dvh;
    min-height:100dvh;
    margin-right:292px;
    margin-left:0;
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }

  .content-body{
    min-width:0;
    min-height:0;
    overflow:auto;
  }
}

@media (min-width:1251px){
  .sidebar{
    width:320px;
  }
  .main-content{
    width:calc(100% - 320px);
    margin-right:320px;
  }
}

/* VM8 Desktop Mode: Chrome/Android/iOS "Desktop site" gets the real desktop shell. */
html.nexmat-desktop-mode,
html.nexmat-desktop-mode body,
html.nexmat-desktop-mode body.vm8-app{width:100%;height:100%;min-width:900px;overflow:hidden}
html.nexmat-desktop-mode #app,
html.nexmat-desktop-mode .app{position:relative!important;display:block!important;width:100%!important;height:100dvh!important;min-width:900px!important;min-height:100dvh!important;overflow:hidden!important}
html.nexmat-desktop-mode .sidebar{display:flex!important;position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;width:292px!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;z-index:1000!important;overflow:hidden!important}
html.nexmat-desktop-mode .main-content{display:flex!important;position:relative!important;width:calc(100% - 292px)!important;height:100dvh!important;min-width:0!important;min-height:100dvh!important;margin:0 292px 0 0!important;overflow:hidden!important;flex-direction:column!important}
html.nexmat-desktop-mode .mobile-topbar,html.nexmat-desktop-mode .mobile-bottomnav{display:none!important}
html.nexmat-desktop-mode .content-header{display:flex!important}
html.nexmat-desktop-mode .content-body{flex:1 1 auto!important;min-width:0!important;min-height:0!important;overflow:auto!important;padding:20px!important}
html.nexmat-desktop-mode .general-layout,html.nexmat-desktop-mode .room-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 280px!important;gap:14px!important;height:100%!important;min-width:0!important;min-height:0!important}
html.nexmat-desktop-mode .general-chat,html.nexmat-desktop-mode .room-chat{display:flex!important;flex-direction:column!important;height:100%!important;min-width:0!important;overflow:hidden!important}
html.nexmat-desktop-mode .general-messages,html.nexmat-desktop-mode .chat-messages{flex:1 1 auto!important;height:0!important;overflow-y:auto!important;overflow-x:hidden!important}
html.nexmat-desktop-mode .general-composer,html.nexmat-desktop-mode .chat-input{position:relative!important;inset:auto!important;transform:none!important;flex:0 0 auto!important}
html.nexmat-desktop-mode .online-panel,html.nexmat-desktop-mode .members-panel{display:block!important}
html.nexmat-desktop-mode .back-btn{display:none!important}
@media (min-width:1251px){html.nexmat-desktop-mode .sidebar{width:320px!important}html.nexmat-desktop-mode .main-content{width:calc(100% - 320px)!important;margin-right:320px!important}}


/* ================================================================
   NEXMAT FINAL — SINGLE DESKTOP ROOM LAYOUT LAYER
   Desktop only. Mobile CSS above remains untouched.
   ================================================================ */
@media (min-width:1101px){
  .main-content:has(.room-chat) .room-layout,
  html.nexmat-desktop-mode .main-content:has(.room-chat) .room-layout{
    display:grid!important;
    direction:ltr!important;
    grid-template-columns:minmax(205px,220px) minmax(0,1fr)!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    align-items:stretch!important;
  }

  .main-content:has(.room-chat) .room-head,
  html.nexmat-desktop-mode .main-content:has(.room-chat) .room-head{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    align-self:start!important;
    box-sizing:border-box!important;
    direction:rtl!important;
  }

  .main-content:has(.room-chat) .room-content,
  html.nexmat-desktop-mode .main-content:has(.room-chat) .room-content{
    display:contents!important;
  }

  .main-content:has(.room-chat) .members-panel,
  html.nexmat-desktop-mode .main-content:has(.room-chat) .members-panel{
    display:block!important;
    grid-column:1!important;
    grid-row:1 / 3!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    box-sizing:border-box!important;
    direction:rtl!important;
    overflow:auto!important;
    align-self:stretch!important;
  }

  .main-content:has(.room-chat) .room-chat,
  html.nexmat-desktop-mode .main-content:has(.room-chat) .room-chat{
    grid-column:2!important;
    grid-row:2!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    box-sizing:border-box!important;
    direction:rtl!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  .main-content:has(.room-chat) .chat-messages,
  html.nexmat-desktop-mode .main-content:has(.room-chat) .chat-messages{
    flex:1 1 auto!important;
    min-width:0!important;
    min-height:0!important;
    height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }

  .main-content:has(.room-chat) .chat-input,
  html.nexmat-desktop-mode .main-content:has(.room-chat) .chat-input{
    flex:0 0 auto!important;
    width:100%!important;
    min-width:0!important;
    position:relative!important;
    inset:auto!important;
    box-sizing:border-box!important;
  }

  .main-content:has(.room-chat) .room-mobile-details,
  html.nexmat-desktop-mode .main-content:has(.room-chat) .room-mobile-details{
    display:none!important;
  }
}

/* Desktop-site bridge: same single layer, without altering normal mobile UI. */
html.nexmat-desktop-mode .main-content:has(.room-chat) .room-layout{
  display:grid!important;
  direction:ltr!important;
  grid-template-columns:minmax(205px,220px) minmax(0,1fr)!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  gap:14px!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
}

/* Android/iOS Desktop-site bridge — exact same room geometry, scoped only to
   the explicit desktop-mode class. This does not execute in normal mobile UI. */
html.nexmat-desktop-mode .main-content:has(.room-chat) .room-head{
  grid-column:2!important;grid-row:1!important;width:100%!important;height:auto!important;
  min-height:0!important;margin:0!important;align-self:start!important;box-sizing:border-box!important;direction:rtl!important;
}
html.nexmat-desktop-mode .main-content:has(.room-chat) .room-content{display:contents!important}
html.nexmat-desktop-mode .main-content:has(.room-chat) .members-panel{
  display:block!important;grid-column:1!important;grid-row:1 / 3!important;width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;margin:0!important;box-sizing:border-box!important;direction:rtl!important;
  overflow:auto!important;align-self:stretch!important;
}
html.nexmat-desktop-mode .main-content:has(.room-chat) .room-chat{
  grid-column:2!important;grid-row:2!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
  margin:0!important;box-sizing:border-box!important;direction:rtl!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;
}
html.nexmat-desktop-mode .main-content:has(.room-chat) .chat-messages{
  flex:1 1 auto!important;min-width:0!important;min-height:0!important;height:0!important;overflow-y:auto!important;overflow-x:hidden!important;
}
html.nexmat-desktop-mode .main-content:has(.room-chat) .chat-input{
  flex:0 0 auto!important;width:100%!important;min-width:0!important;position:relative!important;inset:auto!important;box-sizing:border-box!important;
}
html.nexmat-desktop-mode .main-content:has(.room-chat) .room-mobile-details{display:none!important}
