:root{
--bg:#070817;--panel:#0d1024;--panel2:#11152c;--text:#f7f7ff;--muted:#9aa1bd;
--purple:#7c3cff;--pink:#ef3f9d;--blue:#3587ff;--border:rgba(255,255,255,.08);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}
body{background:radial-gradient(circle at 15% 10%,rgba(124,60,255,.18),transparent 35%),radial-gradient(circle at 90% 0,rgba(239,63,157,.12),transparent 30%),#070817}
a{color:inherit;text-decoration:none}.brand{display:flex;align-items:center;gap:14px;font-size:34px;font-weight:900}.brand.small{font-size:20px}.logo{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,var(--pink),var(--purple),var(--blue));box-shadow:0 0 30px rgba(124,60,255,.45)}.brand.small .logo{width:38px;height:38px;border-radius:13px}
.landing{overflow-x:hidden}.hero{max-width:1180px;margin:auto;min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:70px;padding:40px}
.hero-copy h1{font-size:64px;line-height:1.03;margin:38px 0 20px}.hero-copy h1 span{background:linear-gradient(90deg,#b789ff,#ff73b8);-webkit-background-clip:text;color:transparent}.hero-copy p{font-size:20px;color:var(--muted);max-width:660px;line-height:1.7}.hero-actions{display:flex;gap:14px;margin:32px 0}.btn{border:0;border-radius:14px;padding:15px 22px;font-weight:800;font-size:16px;cursor:pointer;display:inline-flex;justify-content:center}.btn.primary{background:linear-gradient(135deg,var(--purple),#9a43ff);box-shadow:0 12px 30px rgba(124,60,255,.35)}.btn.ghost{background:rgba(255,255,255,.06);border:1px solid var(--border)}.btn.full{width:100%}.feature-row{display:flex;gap:12px;flex-wrap:wrap}.feature-row div{padding:11px 14px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.035);color:#d9dcf0}
.phone-card{background:linear-gradient(180deg,#10132a,#0b0d1d);border:1px solid rgba(165,112,255,.25);border-radius:34px;padding:26px;box-shadow:0 35px 100px rgba(0,0,0,.4)}.phone-top{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.phone-card h3{font-size:25px}.choice{padding:16px;border-radius:14px;margin:11px 0;font-weight:800}.purple{background:#241451}.pink{background:#42142e}.blue{background:#102b52}.orange{background:#402717}.mini-chat{margin-top:24px;display:grid;gap:12px}.mini-chat div{background:#151a35;padding:14px;border-radius:15px}.mini-chat span{display:block;color:var(--muted);margin-top:5px}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(430px,100%);background:rgba(14,17,38,.95);padding:32px;border-radius:24px;border:1px solid var(--border);box-shadow:0 30px 90px rgba(0,0,0,.45)}.auth-card h1{margin:28px 0 7px}.auth-card>p{color:var(--muted);margin:0 0 24px}.auth-card label{display:block;color:#dfe2f5;font-weight:700;margin:16px 0 7px}.auth-card input{display:block;width:100%;margin-top:8px;background:#0a0d1e;border:1px solid var(--border);border-radius:13px;color:#fff;padding:14px;font-size:16px;outline:none}.auth-card input:focus{border-color:#7c3cff}.auth-link{display:block;text-align:center;color:#b794ff;margin-top:18px}.alert{padding:12px;border-radius:12px;background:#45182b;color:#ffb0cf;margin-bottom:15px}
.app-page{height:100vh;overflow:hidden}.app-shell{height:100vh;display:grid;grid-template-columns:300px 1fr 280px;max-width:1600px;margin:auto;background:rgba(4,5,15,.65)}
.sidebar,.online-panel{background:rgba(10,12,28,.96);border-right:1px solid var(--border);padding:20px;display:flex;flex-direction:column}.rooms{display:grid;gap:7px;margin-top:28px;overflow:auto}.rooms a{display:flex;gap:12px;padding:13px;border-radius:14px;color:#d5d9ee}.rooms a:hover,.rooms a.active{background:linear-gradient(90deg,rgba(124,60,255,.2),rgba(124,60,255,.06));color:#fff}.room-icon{font-size:22px}.rooms b,.rooms small{display:block}.rooms small{color:var(--muted);font-size:11px;margin-top:3px}.profile-mini{margin-top:auto;border-top:1px solid var(--border);padding-top:17px;display:flex;align-items:center;gap:10px}.profile-mini div{min-width:0;flex:1}.profile-mini small{display:block;color:var(--muted)}
.avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#22284e;font-size:20px}.chat-panel{display:flex;flex-direction:column;min-width:0}.chat-header{height:82px;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 22px;background:rgba(10,12,28,.72);backdrop-filter:blur(18px)}.chat-header h2{font-size:18px;margin:0}.chat-header p{font-size:12px;color:#6ce7a4;margin:5px 0 0}.icon-btn,.mobile-menu{margin-left:auto;background:#171b38;color:#fff;border:1px solid var(--border);border-radius:12px;width:42px;height:42px;cursor:pointer}.mobile-menu{display:none;margin-left:0;margin-right:12px}.messages{flex:1;overflow-y:auto;padding:26px;scroll-behavior:smooth}.message{display:flex;gap:10px;margin:0 0 18px;max-width:78%}.message.mine{margin-left:auto;flex-direction:row-reverse}.msg-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#22284e;flex:0 0 auto}.bubble{background:#141936;border:1px solid var(--border);padding:11px 14px;border-radius:8px 18px 18px 18px;min-width:120px}.mine .bubble{background:linear-gradient(135deg,#6b2fe4,#8538ed);border-radius:18px 8px 18px 18px}.msg-meta{display:flex;gap:15px;justify-content:space-between;font-size:12px}.msg-meta span{color:#9ba1bc}.msg-body{margin-top:7px;line-height:1.45;word-break:break-word}.composer{display:flex;align-items:flex-end;gap:10px;border-top:1px solid var(--border);padding:15px 20px;background:#0b0e20}.composer textarea{resize:none;flex:1;max-height:120px;background:#151a35;color:#fff;border:1px solid var(--border);border-radius:16px;padding:13px 15px;font:inherit;outline:none}.composer textarea:focus{border-color:#7240d9}.send-btn,.emoji-btn{width:46px;height:46px;border-radius:14px;border:0;color:#fff;cursor:pointer}.send-btn{background:linear-gradient(135deg,var(--purple),#9b45ff);font-size:19px}.emoji-btn{background:#171b38;font-size:20px}.online-panel{border-right:0;border-left:1px solid var(--border)}.online-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.online-title button{display:none;background:none;color:white;border:0;font-size:26px}.online-user{display:flex;align-items:center;gap:10px;padding:10px 0}.online-user div{flex:1}.online-user small{display:block;color:var(--muted)}.online-user i{width:9px;height:9px;background:#42df8c;border-radius:50%;box-shadow:0 0 10px #42df8c}
@media(max-width:980px){.app-shell{grid-template-columns:260px 1fr}.online-panel{position:fixed;right:-310px;top:0;bottom:0;width:280px;z-index:10;transition:.25s}.online-panel.open{right:0}.online-title button{display:block}}
@media(max-width:760px){.hero{grid-template-columns:1fr;padding:24px}.phone-card{display:none}.hero-copy h1{font-size:45px}.feature-row{display:grid}.app-shell{display:block}.sidebar{position:fixed;left:-290px;top:0;bottom:0;width:280px;z-index:20;transition:.25s}.sidebar.open{left:0}.mobile-menu{display:block}.chat-panel{height:100vh}.messages{padding:17px 12px}.message{max-width:92%}.chat-header{height:70px;padding:0 12px}.composer{padding:10px}.emoji-btn{display:none}}
/* v3 social hub */
.hub-page{min-height:100vh;padding-bottom:86px}.hub-shell{width:min(1120px,100%);margin:auto;padding:22px}.hub-shell.narrow{width:min(760px,100%)}.hub-head{height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px}.hub-head>a{color:#c7cbe2}.hub-avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#20264d;font-size:22px}.welcome-card{margin-top:18px;padding:30px;border-radius:28px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#171a3b,#241346 60%,#421536);border:1px solid rgba(255,255,255,.09);box-shadow:0 20px 70px rgba(0,0,0,.28)}.eyebrow{color:#be98ff;font-weight:800}.welcome-card h1{font-size:34px;margin:8px 0}.welcome-card p{color:var(--muted);margin:0;max-width:600px}.welcome-badge{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;align-content:center;background:rgba(124,60,255,.18);border:1px solid rgba(185,135,255,.25)}.welcome-badge b{font-size:34px}.welcome-badge span{color:#66e9a0}.section-title{font-size:21px;margin:30px 0 14px}.section-row{display:flex;justify-content:space-between;align-items:center}.section-row span{color:var(--muted);font-size:13px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.quick-card{min-height:150px;border-radius:22px;padding:20px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--border);transition:.2s}.quick-card:hover{transform:translateY(-3px)}.quick-card>span{font-size:34px;margin-bottom:auto}.quick-card b{font-size:18px}.quick-card small{color:#c9cce0;margin-top:5px}.violet{background:linear-gradient(145deg,#26175c,#171a36)}.pinkish{background:linear-gradient(145deg,#4a1636,#21152f)}.blueish{background:linear-gradient(145deg,#123e62,#151d38)}.amber{background:linear-gradient(145deg,#4b2d18,#211a2f)}.room-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.room-cards a,.menu-list a{display:flex;align-items:center;gap:14px;padding:17px;border-radius:17px;background:#11152c;border:1px solid var(--border)}.room-cards a>span{font-size:24px}.room-cards div,.menu-list a{flex:1}.room-cards b,.room-cards small{display:block}.room-cards small{color:var(--muted);margin-top:4px}.room-cards i,.menu-list i{margin-left:auto;font-size:25px;color:#7d84a5}.profile-card{text-align:center;background:linear-gradient(180deg,#151a39,#0f1228);padding:30px;border:1px solid var(--border);border-radius:26px}.profile-avatar-big{width:100px;height:100px;margin:auto;border-radius:50%;display:grid;place-items:center;background:#242b58;font-size:48px;border:4px solid #7d42ff}.profile-card h1{margin:14px 0 5px}.online-label{color:#5ce598}.xp-bar{height:8px;background:#262b49;border-radius:10px;overflow:hidden;margin:18px auto 7px;max-width:420px}.xp-bar i{display:block;height:100%;background:linear-gradient(90deg,#7c3cff,#ef3f9d)}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px}.profile-stats div{padding:14px;background:#171b36;border-radius:16px}.profile-stats b,.profile-stats span{display:block}.profile-stats span{font-size:12px;color:var(--muted);margin-top:5px}.menu-list{display:grid;gap:10px;margin-top:18px}.page-title{font-size:32px;margin:25px 0 5px}.page-sub{color:var(--muted);margin:0 0 20px}.people-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.people-grid article{text-align:center;background:#11152c;border:1px solid var(--border);border-radius:20px;padding:20px}.person-avatar{position:relative;width:72px;height:72px;margin:auto;border-radius:50%;display:grid;place-items:center;background:#242a53;font-size:35px}.person-avatar i{position:absolute;right:3px;bottom:3px;width:14px;height:14px;border-radius:50%;background:#43df8c;border:3px solid #11152c}.people-grid b,.people-grid small{display:block}.people-grid b{margin-top:10px}.people-grid small{color:var(--muted);margin:5px}.people-grid a{display:block;margin-top:12px;padding:10px;background:#6d32dc;border-radius:12px}.empty-card{grid-column:1/-1;padding:30px;text-align:center;background:#11152c;border-radius:20px}.game-list{display:grid;gap:12px}.game-list button{width:100%;display:flex;align-items:center;gap:15px;text-align:left;padding:18px;border:1px solid var(--border);background:#11152c;color:#fff;border-radius:18px}.game-list button>span{font-size:30px}.game-list div{flex:1}.game-list b,.game-list small{display:block}.game-list small{color:var(--muted);margin-top:4px}.game-list i{font-size:28px}.game-modal{position:fixed;inset:0;background:rgba(0,0,0,.68);display:none;place-items:center;padding:20px;z-index:50}.game-modal.open{display:grid}.game-modal>div{position:relative;width:min(420px,100%);text-align:center;background:#14182f;border:1px solid var(--border);padding:30px;border-radius:25px}.game-modal>div>button:first-child{position:absolute;right:15px;top:10px;background:none;border:0;color:#fff;font-size:28px}.game-modal span{font-size:55px}.game-modal p{font-size:20px;line-height:1.5;min-height:60px}.mobile-bottom-nav{display:none}
@media(max-width:760px){.hub-shell{padding:14px}.welcome-card{padding:22px}.welcome-card h1{font-size:27px}.welcome-badge{width:82px;height:82px}.welcome-badge b{font-size:25px}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-card{min-height:135px;padding:16px}.room-cards{grid-template-columns:1fr}.people-grid{grid-template-columns:1fr 1fr}.mobile-bottom-nav{position:fixed;z-index:30;left:0;right:0;bottom:0;height:72px;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(11,14,32,.97);border-top:1px solid var(--border);backdrop-filter:blur(15px)}.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#aeb4ce}.mobile-bottom-nav span{font-size:20px}.mobile-bottom-nav small{font-size:10px}.app-page .mobile-bottom-nav{display:grid}.app-page .composer{bottom:72px}.app-page .chat-panel{height:calc(100vh - 72px)}}
@media(max-width:430px){.welcome-card{align-items:flex-start}.welcome-badge{width:70px;height:70px;flex:0 0 auto}.welcome-badge span{font-size:11px}.quick-card b{font-size:16px}.people-grid{grid-template-columns:1fr}.profile-stats b{font-size:14px}}


/* v4: принудительное исправление главной страницы на телефонах */
@media screen and (max-width: 1000px) {
  html, body { width:100% !important; max-width:100% !important; overflow-x:hidden !important; }
  body.landing { min-height:100dvh !important; }
  .landing .hero {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-height:auto !important;
    margin:0 !important;
    padding:24px 18px 40px !important;
  }
  .landing .hero-copy { width:100% !important; max-width:620px !important; margin:0 auto !important; }
  .landing .phone-card { display:none !important; width:0 !important; height:0 !important; overflow:hidden !important; }
  .landing .brand { font-size:27px !important; gap:10px !important; }
  .landing .brand .logo { width:44px !important; height:44px !important; border-radius:15px !important; }
  .landing .hero-copy h1 {
    font-size:clamp(40px, 11vw, 58px) !important;
    line-height:1.05 !important;
    margin:34px 0 18px !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }
  .landing .hero-copy p { font-size:18px !important; line-height:1.55 !important; max-width:none !important; }
  .landing .hero-actions { display:grid !important; grid-template-columns:1fr !important; gap:12px !important; margin:28px 0 22px !important; }
  .landing .hero-actions .btn { width:100% !important; min-height:56px !important; align-items:center !important; }
  .landing .feature-row { display:grid !important; grid-template-columns:1fr !important; gap:10px !important; }
  .landing .feature-row div { width:100% !important; }
}

@media screen and (max-width: 420px) {
  .landing .hero { padding-left:16px !important; padding-right:16px !important; }
  .landing .hero-copy h1 { font-size:39px !important; }
  .landing .hero-copy p { font-size:17px !important; }
}

/* v5 exact neon mobile app look */
.app-modern{background:radial-gradient(circle at 80% 0,rgba(109,36,210,.16),transparent 28%),#070916;color:#f7f7ff}.modern-shell{padding-top:10px}.topbar-modern{height:68px;display:flex;align-items:center;justify-content:space-between}.top-actions{display:flex;align-items:center;gap:10px}.coin-pill{display:inline-flex;align-items:center;gap:5px;padding:8px 11px;border-radius:14px;background:#151a32;border:1px solid rgba(255,255,255,.07);font-size:13px}.hub-avatar{position:relative}.hub-avatar i{position:absolute;right:0;bottom:0;width:11px;height:11px;border-radius:50%;background:#42df8c;border:2px solid #0b0e20}.hero-dashboard{display:grid;grid-template-columns:1fr 190px;gap:24px;align-items:center;padding:28px;border:1px solid rgba(173,107,255,.18);border-radius:30px;background:linear-gradient(135deg,#131832 0%,#1b1640 55%,#32152f 100%);box-shadow:0 24px 80px rgba(0,0,0,.3)}.hero-dashboard h1{font-size:34px;margin:8px 0 8px}.hero-dashboard p{color:#b9bfd3;line-height:1.55;margin:0}.hero-stats{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.hero-stats span{padding:9px 11px;border-radius:12px;background:rgba(255,255,255,.055);font-size:12px;color:#b9bfd3}.hero-stats b{color:#fff}.level-orb{height:155px;border-radius:26px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(124,60,255,.12);border:1px solid rgba(255,255,255,.07)}.level-orb>span{font-size:42px}.level-orb b{margin-top:7px}.level-orb small{color:#9da4bd;margin:4px}.level-orb>i{width:75%;height:6px;background:#272d4a;border-radius:10px;overflow:hidden}.level-orb em{display:block;height:100%;background:linear-gradient(90deg,#7d3fff,#f13f9e)}.modern-title{margin:27px 0 13px}.action-grid-modern{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.action-modern{position:relative;min-height:108px;padding:17px;border-radius:22px;border:1px solid rgba(255,255,255,.075);display:flex;align-items:center;gap:15px;overflow:hidden}.action-modern>span{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;font-size:25px;background:rgba(255,255,255,.08)}.action-modern div{min-width:0}.action-modern b,.action-modern small{display:block}.action-modern b{font-size:17px}.action-modern small{color:#c1c5d6;margin-top:5px}.action-modern>i{margin-left:auto;font-size:27px;color:#d4c7f8}.purple-card{background:linear-gradient(145deg,#29165f,#14182e)}.pink-card{background:linear-gradient(145deg,#4a1734,#1d1428)}.blue-card{background:linear-gradient(145deg,#123c5e,#131a31)}.night-card{background:linear-gradient(145deg,#3e2918,#1a172a)}.section-row>a{color:#ae83ff;font-size:13px}.rooms-modern{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.rooms-modern>a{display:flex;align-items:center;gap:12px;padding:15px;border-radius:18px;background:#10142a;border:1px solid rgba(255,255,255,.07)}.room-round{width:43px;height:43px;border-radius:14px;display:grid;place-items:center;background:#20264a;font-size:21px}.rooms-modern div{flex:1;min-width:0}.rooms-modern b,.rooms-modern small{display:block}.rooms-modern small{color:#8f96b0;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rooms-modern i{font-size:24px;color:#7f86a7}.live-dot{width:8px;height:8px;border-radius:50%;background:#42df8c}.daily-card{margin-top:18px;padding:20px;border-radius:22px;display:flex;align-items:center;gap:16px;justify-content:space-between;background:linear-gradient(135deg,#181437,#2d1743);border:1px solid rgba(185,113,255,.17)}.daily-card span{font-size:11px;color:#b58cff;font-weight:800}.daily-card h3{margin:7px 0 4px}.daily-card p{color:#9ea5bc;margin:0}.daily-card>a{padding:12px 15px;border-radius:13px;background:linear-gradient(135deg,#7b3cff,#a044ff);font-weight:800;white-space:nowrap}.daily-progress{width:210px;max-width:100%;height:6px;background:#292c47;border-radius:10px;overflow:hidden;margin-top:12px}.daily-progress i{display:block;height:100%;background:linear-gradient(90deg,#7b3cff,#ef3f9d)}.page-head-modern{height:62px;display:grid;grid-template-columns:45px 1fr 45px;align-items:center;text-align:center}.page-head-modern>a,.page-head-modern>span{font-size:23px;color:#d8dbed}.page-head-modern>b{font-size:17px}.profile-modern{text-align:center;padding:28px 24px;border-radius:28px;background:linear-gradient(180deg,#151a37,#0e1125);border:1px solid rgba(255,255,255,.07)}.profile-avatar-ring{position:relative;width:106px;height:106px;margin:auto;border-radius:50%;padding:4px;background:linear-gradient(135deg,#7c3cff,#ef3f9d)}.profile-avatar-ring span{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;background:#20264b;font-size:50px}.profile-avatar-ring i{position:absolute;right:5px;bottom:8px;width:17px;height:17px;border-radius:50%;background:#626a80;border:4px solid #151a37;box-shadow:none}.profile-avatar-ring i.is-online{background:#43df8c;box-shadow:0 0 12px rgba(67,223,140,.8)}.profile-modern h1{margin:13px 0 4px}.profile-modern>p{color:#5ee79a;margin:0 0 20px}.level-line{display:flex;justify-content:space-between;font-size:12px;color:#9ca3bb}.xp-bar.modern{max-width:none;margin:8px 0 0}.profile-stats.modern{margin-top:22px}.settings-list{display:grid;gap:10px}.settings-list>a{display:flex;align-items:center;gap:13px;padding:15px;border-radius:18px;background:#10142a;border:1px solid rgba(255,255,255,.07)}.settings-list>a>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#20264a;font-size:20px}.settings-list div{flex:1;text-align:left}.settings-list b,.settings-list small{display:block}.settings-list small{color:#9098b0;margin-top:3px}.settings-list i{font-size:24px;color:#7e85a6}.search-box{display:flex;align-items:center;gap:10px;padding:13px 15px;background:#11152c;border:1px solid rgba(255,255,255,.07);border-radius:16px}.search-box input{flex:1;background:none;border:0;outline:0;color:#fff;font-size:15px}.filter-pills{display:flex;gap:8px;overflow:auto;margin:15px 0}.filter-pills button{border:0;color:#aab1c9;background:#14182f;padding:9px 14px;border-radius:12px;white-space:nowrap}.filter-pills button.active{background:#6f32df;color:#fff}.modern-page-title{margin-top:22px}.people-modern{display:grid;gap:11px}.people-modern article{display:flex;align-items:center;gap:13px;padding:15px;border-radius:19px;background:#10142a;border:1px solid rgba(255,255,255,.07)}.person-photo{position:relative;width:58px;height:58px;flex:0 0 auto;border-radius:18px;display:grid;place-items:center;background:#242a51;font-size:31px}.person-photo i{position:absolute;right:2px;bottom:2px;width:13px;height:13px;border-radius:50%;background:#43df8c;border:3px solid #10142a}.people-modern article>div:nth-child(2){flex:1;min-width:0}.people-modern b,.people-modern small{display:block}.people-modern small{color:#939bb2;margin-top:3px}.people-modern p{margin:7px 0 0;color:#c5cad9;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.people-modern article>a{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#6f32df}.games-hero{display:flex;align-items:center;gap:17px;padding:22px;border-radius:23px;background:linear-gradient(135deg,#1b1642,#351644);border:1px solid rgba(255,255,255,.07)}.games-hero>span{width:70px;height:70px;border-radius:21px;display:grid;place-items:center;background:rgba(124,60,255,.18);font-size:34px}.games-hero h1{margin:0 0 6px}.games-hero p{margin:0;color:#b2b8cd}.games-modern{display:grid;gap:11px}.games-modern button{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:15px;border-radius:19px;border:1px solid rgba(255,255,255,.07);background:#10142a;color:#fff}.game-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font-size:27px}.game-icon.g1{background:#4a1740}.game-icon.g2{background:#13385c}.game-icon.g3{background:#47341b}.games-modern div{flex:1}.games-modern b,.games-modern small,.games-modern em{display:block}.games-modern small{color:#a4abc1;margin-top:3px}.games-modern em{font-size:11px;color:#7f87a2;margin-top:7px;font-style:normal}.games-modern i{font-size:26px;color:#7e85a7}.game-daily>b{color:#b58cff}.mobile-bottom-nav a.active{color:#9b62ff}.mobile-bottom-nav a.active span{filter:drop-shadow(0 0 10px rgba(139,80,255,.75))}.mobile-bottom-nav .nav-game{width:40px;height:40px;margin-top:-18px;border-radius:14px;background:linear-gradient(135deg,#7c3cff,#ef3f9d);display:grid;place-items:center;color:white;box-shadow:0 8px 24px rgba(124,60,255,.45)}
@media(max-width:760px){.modern-shell{padding:8px 14px 92px}.hero-dashboard{display:block;padding:21px;border-radius:24px}.hero-dashboard h1{font-size:28px}.level-orb{height:auto;margin-top:17px;padding:15px;display:grid;grid-template-columns:48px 1fr;column-gap:12px;text-align:left}.level-orb>span{grid-row:1/4;font-size:36px}.level-orb b,.level-orb small{margin:0}.level-orb>i{width:100%;margin-top:7px}.action-grid-modern{grid-template-columns:1fr 1fr}.action-modern{min-height:125px;display:block;padding:15px}.action-modern>span{margin-bottom:15px}.action-modern>i{position:absolute;right:14px;bottom:13px}.rooms-modern{grid-template-columns:1fr}.daily-card{align-items:flex-end}.daily-card>a{font-size:13px}.topbar-modern .brand.small{font-size:19px}.topbar-modern .brand.small .logo{width:36px;height:36px}.profile-stats.modern{grid-template-columns:repeat(3,1fr)}.mobile-bottom-nav{padding-bottom:env(safe-area-inset-bottom);height:calc(72px + env(safe-area-inset-bottom))}}
@media(max-width:390px){.action-grid-modern{grid-template-columns:1fr}.hero-stats span{font-size:11px}.daily-card{display:block}.daily-card>a{display:block;text-align:center;margin-top:15px}.profile-stats.modern div{padding:10px 5px}}
.dating-stack{display:grid;gap:18px;padding-bottom:95px}.dating-card{background:linear-gradient(180deg,#151832,#0f1227);border:1px solid var(--border);border-radius:24px;padding:22px;text-align:center}.dating-avatar{width:108px;height:108px;margin:auto;border-radius:32px;display:grid;place-items:center;font-size:58px;background:linear-gradient(135deg,#262c58,#151932);position:relative}.dating-avatar i{position:absolute;right:5px;bottom:5px;width:16px;height:16px;background:#43e58c;border:3px solid #151832;border-radius:50%}.dating-info h2{margin:14px 0 3px}.dating-info span,.dating-info p{color:var(--muted)}.dating-info p{line-height:1.5}.dating-actions{display:flex;justify-content:center;gap:16px;margin-top:18px}.dating-actions button,.dating-actions a{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--border);background:#1a1f40;color:white;font-size:24px}.dating-actions .like-btn{background:linear-gradient(135deg,#8a2fff,#f13f9f)}.dating-actions .like-btn.liked{box-shadow:0 0 24px rgba(239,63,157,.55)}.dialogs-list{display:grid;gap:8px;padding-bottom:95px}.dialogs-list>a{position:relative;display:flex;align-items:center;gap:12px;padding:14px;background:#12162f;border:1px solid var(--border);border-radius:16px}.dialogs-list div{min-width:0;flex:1}.dialogs-list b,.dialogs-list small{display:block}.dialogs-list small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.dialogs-list time{font-size:11px;color:var(--muted)}.dialogs-list i{position:absolute;right:12px;bottom:10px;background:#823cff;border-radius:20px;padding:2px 7px;font-style:normal;font-size:11px}.private-shell{height:100vh;max-width:850px;margin:auto;display:flex;flex-direction:column;background:rgba(5,7,18,.85)}.private-head{height:72px;display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border);background:#0c0f22}.private-head>a{font-size:32px}.private-head div{display:flex;flex-direction:column}.private-head small{color:#55dc93;margin-top:3px}.private-messages{padding-bottom:18px}

/* v7 — polished dating cards and reliable like feedback */
.dating-page{background:radial-gradient(circle at 50% -10%,rgba(124,60,255,.22),transparent 34%),#070817}
.dating-shell{max-width:720px;padding-top:8px}.dating-head{position:sticky;top:0;z-index:8;background:rgba(7,8,23,.84);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.05)}
.dating-intro{text-align:center;padding:22px 16px 18px}.dating-kicker{font-size:11px;letter-spacing:.16em;color:#b38cff;font-weight:900}.dating-intro h1{margin:8px 0;font-size:34px;line-height:1.08;background:linear-gradient(90deg,#fff,#d9c7ff 55%,#ffb4dc);-webkit-background-clip:text;color:transparent}.dating-intro p{max-width:520px;margin:0 auto;color:#9ea5bd;line-height:1.55}
.dating-stack{gap:22px;padding:0 0 105px}.dating-card{padding:0;text-align:left;overflow:hidden;border-radius:28px;background:linear-gradient(180deg,#151936,#0e1126);border:1px solid rgba(255,255,255,.09);box-shadow:0 24px 70px rgba(0,0,0,.32);transition:transform .22s,opacity .22s}.dating-card:hover{transform:translateY(-2px)}.dating-card.leaving{transform:translateX(-35px) rotate(-2deg);opacity:0}.dating-card.matched{box-shadow:0 0 0 1px rgba(242,63,159,.45),0 24px 80px rgba(124,60,255,.3)}
.dating-cover{height:214px;position:relative;display:grid;place-items:center;overflow:hidden}.cover-1{background:radial-gradient(circle at 25% 20%,#934cff,transparent 35%),linear-gradient(135deg,#371b6d,#171c42 60%,#18365d)}.cover-2{background:radial-gradient(circle at 75% 20%,#ff4ea8,transparent 34%),linear-gradient(135deg,#4b183c,#1a193b 56%,#3a1b61)}.cover-3{background:radial-gradient(circle at 20% 80%,#33a9ff,transparent 35%),linear-gradient(135deg,#123d61,#171a3e 58%,#3c1d64)}.cover-4{background:radial-gradient(circle at 78% 22%,#ff9a3d,transparent 34%),linear-gradient(135deg,#4b2b16,#211a38 58%,#511f4c)}.dating-cover:before,.dating-cover:after{content:"";position:absolute;border-radius:50%;filter:blur(1px);background:rgba(255,255,255,.08)}.dating-cover:before{width:190px;height:190px;left:-65px;bottom:-90px}.dating-cover:after{width:150px;height:150px;right:-60px;top:-60px}.cover-spark{position:absolute;color:rgba(255,255,255,.65);font-size:24px}.spark-one{left:16%;top:25%}.spark-two{right:18%;bottom:23%;font-size:18px}
.dating-cover .dating-avatar{width:122px;height:122px;margin:0;border-radius:38px;font-size:66px;background:rgba(17,20,46,.7);border:3px solid rgba(255,255,255,.24);box-shadow:0 18px 50px rgba(0,0,0,.34);backdrop-filter:blur(8px);z-index:2}.dating-cover .dating-avatar i{right:7px;bottom:7px;width:18px;height:18px;border-width:4px}.status-pill{position:absolute;right:16px;top:16px;display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:rgba(8,10,25,.62);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);font-size:11px;color:#dfe4f5}.status-pill i{width:8px;height:8px;border-radius:50%}.status-pill.online i{background:#43df8c;box-shadow:0 0 12px #43df8c}.status-pill.recent i{background:#9aa2be}
.dating-content{padding:21px}.dating-name-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dating-name-row h2{margin:0;font-size:25px}.dating-name-row>div>span{display:block;color:#9ba2ba;font-size:12px;margin-top:4px}.verified-badge{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#7b3cff,#b753ff);font-weight:900;box-shadow:0 8px 20px rgba(124,60,255,.35)}.dating-bio{color:#c3c8d9!important;margin:15px 0 14px!important;line-height:1.55!important}.interest-chips{display:flex;flex-wrap:wrap;gap:8px}.interest-chips span{padding:7px 10px;border-radius:999px;background:#1b2042;border:1px solid rgba(255,255,255,.07);color:#cbd0e2;font-size:12px}
.dating-actions{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:10px;margin-top:20px}.dating-actions button,.dating-actions a{width:auto;height:58px;border-radius:17px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.08);font-size:20px}.dating-actions small{font-size:12px;font-weight:800}.dating-actions .skip-btn{background:#181c37;color:#c7ccdd}.dating-actions .like-btn{background:linear-gradient(135deg,#732ee3,#ec3d9a);box-shadow:0 10px 28px rgba(124,60,255,.28)}.dating-actions .like-btn.liked{background:linear-gradient(135deg,#ef3f9d,#ff6caf);box-shadow:0 0 26px rgba(239,63,157,.48)}.dating-actions .like-btn.loading{opacity:.65;pointer-events:none}.dating-actions .message-btn{background:#182b4c;color:#e5f0ff}.dating-empty{display:grid;place-items:center;gap:8px;padding:48px 24px}.dating-empty>span{font-size:50px}.dating-empty>b{font-size:20px}.dating-empty p{margin:0;color:#999fb6}
.social-toast{position:fixed;z-index:100;left:50%;bottom:94px;transform:translate(-50%,18px);max-width:calc(100% - 28px);padding:12px 17px;border-radius:14px;background:#1a203f;border:1px solid rgba(255,255,255,.1);box-shadow:0 16px 45px rgba(0,0,0,.4);opacity:0;pointer-events:none;transition:.22s;color:#fff;font-weight:800;text-align:center}.social-toast.show{opacity:1;transform:translate(-50%,0)}.social-toast.match{background:linear-gradient(135deg,#6f2fdb,#d93692)}.social-toast.error{background:#4d1a2d;color:#ffc3d7}
@media(max-width:760px){.dating-shell{padding:0 12px 96px}.dating-intro{padding:18px 10px 16px}.dating-intro h1{font-size:29px}.dating-intro p{font-size:14px}.dating-cover{height:195px}.dating-cover .dating-avatar{width:112px;height:112px;font-size:60px}.dating-content{padding:18px 16px}.dating-actions{grid-template-columns:1fr 1.15fr 1fr;gap:8px}.dating-actions button,.dating-actions a{height:54px;border-radius:15px;gap:5px}.dating-actions small{font-size:10px}.dating-card{border-radius:24px}}
@media(max-width:370px){.dating-actions small{display:none}.dating-actions{grid-template-columns:repeat(3,1fr)}.dating-actions button,.dating-actions a{font-size:23px}.dating-intro h1{font-size:26px}}
.private-error{margin:0 12px 8px;padding:10px 12px;border-radius:12px;background:rgba(239,63,157,.16);border:1px solid rgba(239,63,157,.35);color:#ffd1e6;font-size:13px;text-align:center}.private-error[hidden]{display:none}.composer button:disabled,.composer textarea:disabled{opacity:.55}
.nav-icon-wrap{position:relative;display:inline-grid!important}.nav-unread{position:absolute;right:-11px;top:-7px;min-width:18px;height:18px;padding:0 5px;border-radius:10px;background:#ff3e89;color:#fff;font:800 10px/18px system-ui;font-style:normal;box-shadow:0 0 0 2px #0b0d1c}.sound-toggle{position:fixed;right:16px;bottom:92px;z-index:40;width:44px;height:44px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(18,21,43,.94);color:#fff;font-size:19px;box-shadow:0 12px 35px rgba(0,0,0,.38);cursor:pointer}.sound-toggle.in-chat{position:static;margin-left:auto;flex:0 0 auto}.profile-edit-card{margin:18px 0 110px;padding:20px;border:1px solid var(--border);border-radius:24px;background:linear-gradient(180deg,#11152d,#0d1023)}.profile-edit-card>label{display:block;margin:17px 0 7px;font-weight:800}.profile-edit-card input,.profile-edit-card textarea{width:100%;margin-top:8px;padding:14px;border:1px solid var(--border);border-radius:14px;background:#090c1c;color:#fff;font:inherit;outline:none}.profile-edit-card input:focus,.profile-edit-card textarea:focus{border-color:#7c3cff}.avatar-picker{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:12px}.avatar-picker label{cursor:pointer}.avatar-picker input{position:absolute;opacity:0;pointer-events:none}.avatar-picker span{display:grid;place-items:center;aspect-ratio:1;border-radius:16px;background:#171b38;border:2px solid transparent;font-size:25px}.avatar-picker input:checked+span{border-color:#a461ff;background:#26204f;box-shadow:0 0 20px rgba(124,60,255,.35)}.edit-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:12px}.edit-grid label{font-weight:800}.profile-about{max-width:520px;margin:10px auto 18px;color:#cdd2e8;line-height:1.55}.saved-banner{margin:14px 0;padding:12px 15px;border-radius:14px;background:rgba(54,211,137,.12);color:#78e7ae;border:1px solid rgba(54,211,137,.22)}
@media(max-width:480px){.avatar-picker{grid-template-columns:repeat(4,1fr)}.edit-grid{grid-template-columns:1fr}.sound-toggle{bottom:88px}}

/* v10 — presence, read receipts and typing */
.private-user-avatar{position:relative;overflow:visible}.online-dot{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border-radius:50%;background:#666d84;border:3px solid #0c0f22;transition:.2s}.online-dot.is-online{background:#43df8c;box-shadow:0 0 12px rgba(67,223,140,.8)}.private-user-info{min-width:0}.private-user-info small{color:#9ba2ba}.private-user-info small:first-of-type:not([hidden]){display:block}.typing-text{font-size:12px;color:#b88cff;margin-top:3px;animation:typingPulse 1.2s infinite}@keyframes typingPulse{0%,100%{opacity:.55}50%{opacity:1}}
.message-receipt{margin-top:6px;text-align:right;font-size:10px;color:rgba(255,255,255,.62);font-weight:700}.message-receipt.read{color:#76ddff}.mine .bubble{padding-bottom:8px}
.dialog-avatar{position:relative;overflow:visible}.dialog-online{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;background:#596078;border:3px solid #12162f}.dialog-online.is-online{background:#43df8c;box-shadow:0 0 9px rgba(67,223,140,.75)}.online-label{display:inline-block;margin-left:6px;font-size:9px;padding:2px 6px;border-radius:999px;background:rgba(67,223,140,.12);color:#69e3a2;vertical-align:2px}.dialog-check{color:#9aa1bd;font-weight:900}.dialog-check.read{color:#65d8ff}
@media(max-width:480px){.private-head{height:68px;padding:8px 10px}.private-head .avatar{width:38px;height:38px}.private-head>a{font-size:29px}.message-receipt{font-size:9px}}

/* v11 — fixed composer, mobile keyboard support and cleaner dialog */
.private-chat-page{height:100%;overflow:hidden;background:#060714}
.private-shell{height:var(--chat-vh,100dvh);min-height:0;position:relative;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:radial-gradient(circle at 50% 0,rgba(124,60,255,.08),transparent 32%),#070817}
.private-head{position:relative;z-index:12;height:auto;min-height:72px;flex-shrink:0;box-shadow:0 5px 24px rgba(0,0,0,.2)}
.private-messages{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 18px 22px;scrollbar-width:thin;scrollbar-color:#34385d transparent}
.private-composer{position:relative;z-index:15;flex-shrink:0;padding:10px max(12px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:rgba(10,12,28,.96);backdrop-filter:blur(18px);box-shadow:0 -8px 28px rgba(0,0,0,.28)}
.private-composer textarea{min-height:46px;line-height:1.35;padding:12px 14px;border-radius:17px;background:#151a35}
.private-composer .send-btn,.private-composer .private-emoji{flex:0 0 46px}
.private-emoji{display:grid!important}
.date-separator{position:sticky;top:4px;z-index:3;width:max-content;margin:4px auto 18px;padding:6px 11px;border-radius:999px;background:rgba(24,28,55,.88);border:1px solid rgba(255,255,255,.07);color:#aeb5ce;font-size:11px;font-weight:800;backdrop-filter:blur(10px)}
.scroll-bottom{position:absolute;right:16px;bottom:82px;z-index:18;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:#171b38;color:#fff;font-size:21px;box-shadow:0 12px 30px rgba(0,0,0,.4);cursor:pointer}
.scroll-bottom[hidden]{display:none}.scroll-bottom span{position:absolute;right:-5px;top:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:#ef3f9d;color:#fff;font:800 10px/19px system-ui}
.private-messages .message{max-width:86%;margin-bottom:13px}.private-messages .bubble{box-shadow:0 8px 22px rgba(0,0,0,.14)}
@media(max-width:760px){
  .private-chat-page{position:fixed;inset:0;width:100%;height:100%;overflow:hidden}
  .private-shell{width:100%;max-width:none;height:var(--chat-vh,100dvh)}
  .private-head{min-height:68px;padding-top:max(8px,env(safe-area-inset-top))}
  .private-messages{padding:16px 12px 18px}
  .private-messages .message{max-width:94%}
  .private-composer{bottom:auto!important}
  .scroll-bottom{right:12px;bottom:78px}
}
@media(max-width:390px){.private-composer{gap:7px;padding-left:8px;padding-right:8px}.private-composer .send-btn,.private-composer .private-emoji{width:42px;height:42px;flex-basis:42px}.private-composer textarea{min-height:42px;padding:10px 12px}}


/* v12 — emoji picker and reply to message */
.emoji-picker{position:absolute;left:12px;bottom:74px;z-index:30;width:min(360px,calc(100% - 24px));padding:10px;border:1px solid rgba(255,255,255,.11);border-radius:20px;background:rgba(16,19,40,.98);box-shadow:0 20px 60px rgba(0,0,0,.48);backdrop-filter:blur(20px)}
.emoji-picker[hidden]{display:none}.emoji-tabs{display:flex;gap:5px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.07)}
.emoji-tabs button{flex:1;height:36px;border:0;border-radius:10px;background:transparent;color:#fff;font-size:18px}.emoji-tabs button.active{background:#292050}
.emoji-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;max-height:220px;overflow:auto;padding-top:9px}
.emoji-grid button{height:40px;border:0;border-radius:10px;background:transparent;font-size:23px;cursor:pointer}.emoji-grid button:hover,.emoji-grid button:active{background:#252a4d}
.reply-preview{position:relative;z-index:16;display:flex;align-items:center;gap:10px;padding:9px 14px;background:#10142c;border-top:1px solid rgba(255,255,255,.08);border-left:3px solid #9b52ff}
.reply-preview[hidden]{display:none}.reply-preview>div{min-width:0;flex:1}.reply-preview small,.reply-preview b,.reply-preview span{display:block}
.reply-preview small{color:#9a72e9;font-size:10px;font-weight:800}.reply-preview b{font-size:12px;margin:2px 0}.reply-preview span{color:#aeb4c9;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reply-preview button{width:34px;height:34px;border:0;border-radius:50%;background:#202541;color:#fff;font-size:22px}
.reply-message-btn{position:absolute;right:8px;top:8px;width:28px;height:28px;border:0;border-radius:9px;background:rgba(255,255,255,.07);color:#cfd3e4;opacity:0;transition:.18s}
.bubble{position:relative}.message:hover .reply-message-btn,.message:focus-within .reply-message-btn{opacity:1}
.quoted-message{margin:-2px 24px 8px 0;padding:7px 9px;border-left:3px solid #a45cff;border-radius:8px;background:rgba(3,5,16,.22);overflow:hidden}
.quoted-message b,.quoted-message span{display:block}.quoted-message b{font-size:10px;color:#c8aaff}.quoted-message span{font-size:11px;color:#d3d6e5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){.reply-message-btn{opacity:.72}.emoji-picker{bottom:70px}.emoji-grid{grid-template-columns:repeat(7,1fr)}}
@media(max-width:390px){.emoji-grid{grid-template-columns:repeat(6,1fr)}.emoji-grid button{height:38px}.emoji-picker{left:8px;width:calc(100% - 16px)}}


/* v13 — voice messages and message actions */
.voice-btn{width:46px;height:46px;border:0;border-radius:14px;background:#171b38;color:#fff;font-size:20px;flex:0 0 auto}
.voice-panel{position:relative;z-index:18;display:flex;align-items:center;gap:10px;padding:10px 14px;background:#10142c;border-top:1px solid rgba(255,255,255,.08)}
.voice-panel[hidden]{display:none}.voice-cancel{width:34px;height:34px;border:0;border-radius:50%;background:#292e4e;color:#fff;font-size:22px}
.voice-recording-info{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.voice-recording-info span{width:10px;height:10px;border-radius:50%;background:#ff477e;box-shadow:0 0 12px #ff477e;animation:voicePulse 1s infinite}
.voice-recording-info b{font-size:12px;white-space:nowrap}.voice-recording-info time{margin-left:auto;color:#b8bdd2;font-variant-numeric:tabular-nums}
.voice-panel audio{height:36px;max-width:210px}.voice-send{border:0;border-radius:12px;padding:10px 13px;background:linear-gradient(135deg,#7b3cff,#a33cff);color:#fff;font-weight:800}
@keyframes voicePulse{50%{opacity:.35;transform:scale(.75)}}
.voice-message{display:flex;align-items:center;gap:9px;min-width:220px;margin-top:8px}.voice-play{width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.16);color:#fff}
.voice-wave{display:flex;align-items:center;gap:3px;flex:1;height:30px}.voice-wave i{display:block;width:3px;border-radius:3px;background:currentColor;opacity:.7}.voice-wave i:nth-child(1),.voice-wave i:nth-child(8){height:8px}.voice-wave i:nth-child(2),.voice-wave i:nth-child(6){height:17px}.voice-wave i:nth-child(3),.voice-wave i:nth-child(7){height:24px}.voice-wave i:nth-child(4){height:13px}.voice-wave i:nth-child(5){height:27px}
.voice-message time{font-size:11px;color:#c5cada}
.message-menu-btn{position:absolute;right:8px;top:7px;width:28px;height:28px;border:0;border-radius:9px;background:rgba(255,255,255,.07);color:#d3d6e7;font-size:18px}
.message-actions{position:absolute;right:8px;top:38px;z-index:25;width:174px;padding:6px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#151931;box-shadow:0 15px 40px rgba(0,0,0,.4)}
.message-actions[hidden]{display:none}.message-actions button{display:block;width:100%;padding:10px;border:0;border-radius:9px;background:transparent;color:#fff;text-align:left}.message-actions button:active{background:#292e50}
.msg-meta{padding-right:30px}
@media(max-width:760px){.voice-panel{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}.voice-panel audio{max-width:150px}.voice-message{min-width:190px}.private-composer .send-btn{display:none}.private-composer textarea:not(:placeholder-shown)~.send-btn{display:block}.private-composer textarea:not(:placeholder-shown)~.voice-btn{display:none}}


/* v14 — polished voice UI and reactions */
.private-error.success{background:rgba(67,223,140,.12);color:#85efb4;border-color:rgba(67,223,140,.25)}
.voice-sheet{position:relative;z-index:18;padding:10px 12px;background:rgba(12,15,33,.96);border-top:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px)}
.voice-sheet[hidden]{display:none}
.voice-state{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:18px;background:linear-gradient(180deg,#141a38,#10142b);border:1px solid rgba(255,255,255,.07);box-shadow:0 12px 30px rgba(0,0,0,.22)}
.voice-state[hidden]{display:none}
.voice-cancel,.voice-stop{width:38px;height:38px;border:0;border-radius:14px;background:#24294a;color:#fff;flex:0 0 auto;font-size:20px}
.voice-stop{background:linear-gradient(135deg,#7c3cff,#b24cff)}
.voice-state-body{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.voice-led{width:10px;height:10px;border-radius:50%;background:#ff4d80;box-shadow:0 0 16px rgba(255,77,128,.95);animation:voicePulse 1s infinite}
.voice-state-body b{display:block;font-size:13px}.voice-state-body small{display:block;color:#aeb5ce;font-size:11px;margin-top:2px}
.voice-livewave,.voice-preview-player .voice-wave{display:flex;align-items:center;gap:3px;flex:1;min-width:72px;height:26px}
.voice-livewave i,.voice-preview-player .voice-wave i,.voice-message .voice-wave i{display:block;width:4px;border-radius:999px;background:currentColor;opacity:.84}
.voice-livewave i:nth-child(1),.voice-preview-player .voice-wave i:nth-child(1),.voice-message .voice-wave i:nth-child(1){height:8px}
.voice-livewave i:nth-child(2),.voice-preview-player .voice-wave i:nth-child(2),.voice-message .voice-wave i:nth-child(2){height:16px}
.voice-livewave i:nth-child(3),.voice-preview-player .voice-wave i:nth-child(3),.voice-message .voice-wave i:nth-child(3){height:24px}
.voice-livewave i:nth-child(4),.voice-preview-player .voice-wave i:nth-child(4),.voice-message .voice-wave i:nth-child(4){height:13px}
.voice-livewave i:nth-child(5),.voice-preview-player .voice-wave i:nth-child(5),.voice-message .voice-wave i:nth-child(5){height:26px}
.voice-livewave i:nth-child(6),.voice-preview-player .voice-wave i:nth-child(6),.voice-message .voice-wave i:nth-child(6){height:19px}
.voice-livewave i:nth-child(7),.voice-preview-player .voice-wave i:nth-child(7),.voice-message .voice-wave i:nth-child(7){height:12px}
.voice-livewave i:nth-child(8),.voice-preview-player .voice-wave i:nth-child(8),.voice-message .voice-wave i:nth-child(8){height:21px}
.voice-state time,.voice-message time,.voice-preview-duration{font-variant-numeric:tabular-nums;color:#d0d4e6;font-size:12px;font-weight:700}
.voice-preview-player{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.voice-play.big{width:42px;height:42px;flex:0 0 auto}
.voice-send{border:0;border-radius:14px;padding:12px 14px;background:linear-gradient(135deg,#7c3cff,#ef3f9d);color:#fff;font-weight:800;white-space:nowrap}
.voice-btn{background:linear-gradient(135deg,#1b2040,#22274e);border:1px solid rgba(255,255,255,.06)}
.voice-message{display:flex;align-items:center;gap:10px;min-width:210px;margin-top:8px;padding:8px 10px;border-radius:16px;background:rgba(8,11,24,.18)}
.mine .voice-message{background:rgba(255,255,255,.10)}
.voice-play{width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;flex:0 0 auto}
.voice-wave{display:flex;align-items:center;gap:3px;flex:1;height:26px;color:#d7dcf1}
.message-actions{width:190px;padding:8px;border-radius:16px;background:#151932;box-shadow:0 18px 40px rgba(0,0,0,.42)}
.quick-reactions{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding-bottom:8px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.07)}
.quick-reactions button{height:34px;border:0;border-radius:10px;background:#202546;font-size:17px}
.quick-reactions button:active{transform:scale(.96);background:#2d3460}
.message-reactions{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.message-reactions[hidden]{display:none}
.reaction-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.06);color:#fff;font-size:12px}
.reaction-chip.mine{background:rgba(124,60,255,.26);border-color:rgba(181,123,255,.42)}
.reaction-chip b{font-size:11px;color:#cfd4e7}
@media(max-width:760px){
  .voice-sheet{padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px))}
  .voice-state{padding:9px 10px;gap:8px}
  .voice-state-body small{font-size:10px}
  .voice-message{min-width:185px}
  .quick-reactions{grid-template-columns:repeat(6,1fr)}
}
@media(max-width:420px){
  .voice-send{padding:11px 12px;font-size:13px}
  .voice-state time,.voice-message time{font-size:11px}
  .message-actions{width:182px;right:0}
}


/* v15 — image messages */
.image-btn{width:46px;height:46px;border:1px solid rgba(255,255,255,.06);border-radius:14px;background:linear-gradient(135deg,#1b2040,#22274e);color:#fff;font-size:19px;flex:0 0 auto}
.image-preview-panel{position:relative;z-index:18;display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;background:rgba(12,15,33,.97);border-top:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px)}
.image-preview-panel[hidden]{display:none}
.image-preview-panel>img{width:56px;height:56px;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.08)}
.image-preview-info{min-width:0}.image-preview-info b,.image-preview-info small{display:block}.image-preview-info b{font-size:13px}.image-preview-info small{margin-top:3px;color:#aeb5ce;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.image-preview-cancel{width:36px;height:36px;border:0;border-radius:13px;background:#24294a;color:#fff;font-size:22px}
.image-preview-send{border:0;border-radius:14px;padding:11px 14px;background:linear-gradient(135deg,#7c3cff,#ef3f9d);color:#fff;font-weight:800}
.chat-image-button{display:block;width:min(290px,68vw);max-width:100%;margin-top:8px;padding:0;border:0;border-radius:16px;overflow:hidden;background:#10142b;cursor:pointer}
.chat-image-button img{display:block;width:100%;max-height:360px;object-fit:cover}
.mine .chat-image-button{box-shadow:0 8px 22px rgba(0,0,0,.16)}
.image-lightbox{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:18px;background:rgba(2,3,10,.94);backdrop-filter:blur(14px)}
.image-lightbox[hidden]{display:none}
.image-lightbox img{display:block;max-width:100%;max-height:92vh;border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.55)}
.image-lightbox button{position:fixed;right:18px;top:max(18px,env(safe-area-inset-top));width:44px;height:44px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(24,28,55,.9);color:#fff;font-size:27px}
body.lightbox-open{overflow:hidden}
@media(max-width:760px){
  .image-preview-panel{grid-template-columns:50px minmax(0,1fr) auto;padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px))}
  .image-preview-panel>img{width:50px;height:50px}
  .image-preview-cancel{grid-column:3;grid-row:1}
  .image-preview-send{grid-column:1/-1;width:100%;padding:10px}
  .chat-image-button{width:min(270px,72vw)}
}
@media(max-width:420px){
  .private-composer{gap:6px}
  .private-composer .image-btn,.private-composer .voice-btn,.private-composer .private-emoji{width:40px;height:40px;flex-basis:40px;font-size:18px}
  .chat-image-button{width:min(250px,74vw)}
}


/* v16 — blocking and reports */
.chat-safety-button{margin-left:auto;width:42px;height:42px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#171b38;color:#fff;font-size:22px}
.private-head .sound-toggle.in-chat{margin-left:8px}
.safety-menu{position:absolute;right:62px;top:62px;z-index:50;width:210px;padding:7px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#151932;box-shadow:0 20px 55px rgba(0,0,0,.45)}
.safety-menu[hidden]{display:none}.safety-menu button{display:block;width:100%;padding:12px;border:0;border-radius:10px;background:transparent;color:#fff;text-align:left;font-weight:700}.safety-menu button:active{background:#282e52}.safety-menu button.danger{color:#ff83a8}
.report-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px;background:rgba(2,3,10,.78);backdrop-filter:blur(10px)}
.report-modal[hidden]{display:none}
.report-card{position:relative;width:min(430px,100%);max-height:88vh;overflow:auto;padding:24px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:linear-gradient(180deg,#151932,#0f1228);box-shadow:0 30px 90px rgba(0,0,0,.55)}
.report-card h3{margin:0 0 7px;font-size:23px}.report-card>p{margin:0 0 18px;color:#aeb5ce}
.report-close{position:absolute;right:14px;top:14px;width:36px;height:36px;border:0;border-radius:50%;background:#252a4a;color:#fff;font-size:23px}
.report-reasons{display:grid;gap:8px}.report-reasons label{display:block}.report-reasons input{position:absolute;opacity:0}.report-reasons span{display:block;padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:#171b38;color:#dfe3f4}.report-reasons input:checked+span{border-color:#955cff;background:rgba(124,60,255,.18);color:#fff}
.report-card textarea{width:100%;min-height:95px;margin-top:14px;resize:vertical;padding:13px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#0b0e20;color:#fff;font:inherit}
.report-send{width:100%;margin-top:14px;padding:13px;border:0;border-radius:14px;background:linear-gradient(135deg,#7c3cff,#ef3f9d);color:#fff;font-weight:900}
.composer-disabled{opacity:.58}.composer-disabled textarea{cursor:not-allowed}
@media(max-width:760px){.safety-menu{right:54px;top:58px}.chat-safety-button{width:38px;height:38px}.private-head .sound-toggle.in-chat{width:38px;height:38px}}


/* v17 — room chat notification button no longer overlaps composer */
.room-chat-page .chat-header .sound-toggle.in-chat{position:static;right:auto;bottom:auto;z-index:auto;width:42px;height:42px;border-radius:12px;margin-left:auto;flex:0 0 auto;background:#171b38;box-shadow:none}
.room-chat-page .chat-header .icon-btn{margin-left:8px;flex:0 0 auto}
.room-chat-page .chat-header .sound-toggle.in-chat + .icon-btn{margin-left:8px}
@media(max-width:760px){
  .room-chat-page .chat-header .sound-toggle.in-chat{width:38px;height:38px}
  .room-chat-page .composer{padding-right:max(10px,env(safe-area-inset-right));}
}


/* v18 — fixed mobile room composer and new-messages button */
.room-chat-page .room-messages{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:24px;scrollbar-width:thin;scrollbar-color:#34385d transparent}
.room-chat-page .room-composer{position:relative;z-index:15;flex-shrink:0;padding:10px 20px;background:rgba(10,12,28,.96);backdrop-filter:blur(18px);box-shadow:0 -8px 28px rgba(0,0,0,.28)}
.room-chat-page .room-composer textarea{min-height:46px;line-height:1.35;padding:12px 14px;border-radius:17px;background:#151a35}
.room-chat-page .room-scroll-bottom{right:16px;bottom:88px}
@media(max-width:760px){
  .room-chat-page{position:fixed;inset:0;width:100%;height:100%;overflow:hidden}
  .room-chat-page .app-shell{height:var(--room-vh,100dvh)}
  .room-chat-page .chat-panel{position:relative;height:var(--room-vh,100dvh);padding-bottom:0}
  .room-chat-page .chat-header{min-height:70px;padding-top:max(0px,env(safe-area-inset-top))}
  .room-chat-page .room-messages{padding:16px 12px calc(118px + env(safe-area-inset-bottom))}
  .room-chat-page .room-composer{position:fixed;left:0;right:0;bottom:72px;padding:10px max(10px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border-top:1px solid rgba(255,255,255,.08)}
  .room-chat-page .room-scroll-bottom{right:12px;bottom:146px;z-index:28}
}
@media(max-width:390px){
  .room-chat-page .room-composer{gap:7px;padding-left:8px;padding-right:8px}
  .room-chat-page .room-composer .send-btn,.room-chat-page .room-composer .emoji-btn{width:42px;height:42px;flex-basis:42px}
  .room-chat-page .room-composer textarea{min-height:42px;padding:10px 12px}
}


/* v19 — moderation admin panel */
.banned-card{text-align:center}.ban-icon{width:78px;height:78px;margin:0 auto 18px;display:grid;place-items:center;border-radius:24px;background:rgba(239,63,157,.14);font-size:38px}
.admin-shell{max-width:1050px;padding-bottom:50px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.admin-stats div{padding:18px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(180deg,#141831,#0f1228)}.admin-stats b,.admin-stats span{display:block}.admin-stats b{font-size:25px}.admin-stats span{margin-top:5px;color:#aeb5ce;font-size:12px}
.admin-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:8px;margin:14px 0}.admin-tabs a{padding:10px 14px;border-radius:12px;background:#151932;color:#b9bfd4;white-space:nowrap}.admin-tabs a.active{background:linear-gradient(135deg,#6d34db,#913df1);color:#fff}
.admin-reports{display:grid;gap:12px}.admin-report-card{padding:18px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(180deg,#141831,#0e1125)}.admin-report-head{display:flex;align-items:center;gap:11px}.admin-report-head>div{min-width:0;flex:1}.admin-report-head b,.admin-report-head small{display:block}.admin-report-head small{margin-top:4px;color:#9fa6bf}.report-status{padding:5px 8px;border-radius:999px;font-size:10px;text-transform:uppercase;background:#252a49}.report-status.new{background:rgba(239,63,157,.16);color:#ff92bd}.report-status.resolved{background:rgba(67,223,140,.15);color:#79e8ad}.report-status.dismissed{color:#adb3c8}
.admin-report-card>p{color:#cdd2e4}.report-details{padding:12px;border-radius:13px;background:#0a0d1e;color:#e5e7f2;line-height:1.5}.ban-note{margin-top:10px;padding:10px;border-radius:12px;background:rgba(239,63,157,.1);color:#ff9cbe}
.admin-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.admin-actions button,.admin-banned-list button{padding:9px 12px;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:#202543;color:#fff;font-weight:700}.admin-actions button.danger{background:rgba(239,63,157,.15);color:#ff9abd}
.admin-banned-list{display:grid;gap:9px}.admin-banned-list>div{display:flex;align-items:center;gap:11px;padding:13px;border:1px solid var(--border);border-radius:16px;background:#12162d}.admin-banned-list section{min-width:0;flex:1}.admin-banned-list b,.admin-banned-list small{display:block}.admin-banned-list small{margin-top:3px;color:#9ea5bd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-report-card{padding:14px}.admin-actions button{flex:1}.admin-report-head{align-items:flex-start}.report-status{margin-left:auto}.admin-banned-list button{font-size:11px}}


/* v20 — admin visibility and settings */
.admin-home-card{display:flex;align-items:center;gap:12px;margin:18px 0 100px;padding:16px;border:1px solid rgba(164,97,255,.28);border-radius:18px;background:linear-gradient(135deg,rgba(124,60,255,.18),rgba(239,63,157,.10));box-shadow:0 12px 35px rgba(0,0,0,.18)}
.admin-home-card>span{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:#24204a;font-size:23px}.admin-home-card>div{min-width:0;flex:1}.admin-home-card b,.admin-home-card small{display:block}.admin-home-card small{margin-top:4px;color:#b3b8ce}.admin-home-card i{font-style:normal;font-size:24px;color:#b98cff}
.settings-shell{padding-bottom:105px}.settings-card-modern{margin:16px 0;padding:18px;border:1px solid var(--border);border-radius:21px;background:linear-gradient(180deg,#141831,#0f1228)}.settings-card-modern h2{margin:0 0 10px;font-size:18px}
.setting-toggle-row{position:relative;display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}.setting-toggle-row:last-of-type{border-bottom:0}.setting-toggle-row>div{min-width:0;flex:1}.setting-toggle-row b,.setting-toggle-row small{display:block}.setting-toggle-row small{margin-top:4px;color:#9fa6bd}.setting-toggle-row input{position:absolute;opacity:0;pointer-events:none}
.toggle-ui{position:relative;width:50px;height:29px;flex:0 0 auto;border-radius:999px;background:#292e4d;transition:.2s}.toggle-ui:after{content:"";position:absolute;left:4px;top:4px;width:21px;height:21px;border-radius:50%;background:#fff;transition:.2s}.setting-toggle-row input:checked+.toggle-ui{background:linear-gradient(135deg,#7c3cff,#ef3f9d)}.setting-toggle-row input:checked+.toggle-ui:after{transform:translateX(21px)}
.settings-action-button{width:100%;margin-top:14px;padding:12px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:#202543;color:#fff;font-weight:800}


/* v21 — fully server-side admin controls */
.admin-flash{margin:14px 0;padding:13px 15px;border-radius:14px;border:1px solid rgba(67,223,140,.25);background:rgba(67,223,140,.12);color:#8af0b8;font-weight:800}.admin-flash.error{border-color:rgba(239,63,157,.3);background:rgba(239,63,157,.13);color:#ff9dc1}
.admin-main-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.admin-main-tabs a{padding:12px 8px;text-align:center;border-radius:13px;background:#151932;color:#b9bfd4;font-weight:800}.admin-main-tabs a.active{background:linear-gradient(135deg,#7135df,#a03ef1);color:#fff}
.server-actions form{display:flex;gap:7px;align-items:center;margin:0}.server-actions .ban-form{flex:1;min-width:240px}.server-actions input,.admin-search input,.mini-ban input{min-width:0;padding:9px 11px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:#0a0d1e;color:#fff}.danger-ghost{color:#ff92b8!important;background:rgba(239,63,157,.08)!important}
.admin-search{display:flex;gap:8px;margin:14px 0}.admin-search input{flex:1;padding:12px}.admin-search button{padding:0 16px;border:0;border-radius:12px;background:#7537e4;color:#fff;font-weight:800}
.admin-users-list{display:grid;gap:9px}.admin-users-list>article{display:flex;align-items:center;gap:11px;padding:14px;border:1px solid var(--border);border-radius:17px;background:#12162d}.admin-user-info{min-width:0;flex:1}.admin-user-info b,.admin-user-info small,.admin-user-info span{display:block}.admin-user-info small{margin-top:4px;color:#9ea5bd}.admin-user-info span{margin-top:5px;color:#ff96bb}.admin-user-info em{margin-left:7px;padding:2px 6px;border-radius:7px;background:#6e35dc;color:#fff;font-size:9px;font-style:normal}.admin-user-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.admin-user-actions form{display:flex;gap:5px}.admin-user-actions button{padding:8px 10px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#202543;color:#fff;font-size:11px}.mini-ban input{width:105px;font-size:11px}
@media(max-width:760px){.admin-main-tabs{grid-template-columns:1fr}.server-actions,.admin-user-actions{display:grid;grid-template-columns:1fr;width:100%}.server-actions form,.server-actions .ban-form,.admin-user-actions form{width:100%;min-width:0}.server-actions button,.server-actions input,.admin-user-actions button,.admin-user-actions input{width:100%}.admin-users-list>article{align-items:flex-start;flex-wrap:wrap}.admin-user-info{width:calc(100% - 55px)}.admin-user-actions{flex-basis:100%}.admin-report-card .admin-actions{display:grid;grid-template-columns:1fr}.admin-search{position:sticky;top:0;z-index:4;padding:8px 0;background:#070817}}


/* v22 — room replies, reactions and message actions */
.room-reply-preview{position:relative;z-index:16}
.room-chat-page .message-menu-btn{opacity:.72}
.room-chat-page .message:hover .message-menu-btn{opacity:1}
.room-chat-page .message-actions{right:8px;top:38px}
.room-chat-page .quoted-message{margin-right:24px}
.room-chat-page .message-reactions{margin-top:8px}
@media(max-width:760px){
  .room-chat-page .room-reply-preview{position:fixed;left:0;right:0;bottom:138px;z-index:29}
  .room-chat-page .room-reply-preview:not([hidden]) + .room-composer{bottom:72px}
  .room-chat-page .room-reply-preview:not([hidden]) ~ .room-scroll-bottom{bottom:195px}
}


/* v23 — reliable room actions and public profiles */
.msg-profile-link{color:inherit;text-decoration:none;cursor:pointer}.msg-author-link{color:#fff;font-weight:800;text-decoration:none}.msg-author-link:active{opacity:.75}
.room-message-actions-inline{display:flex;align-items:center;gap:6px;margin-top:9px;padding-top:7px;border-top:1px solid rgba(255,255,255,.07)}
.room-message-actions-inline button{padding:5px 8px;border:0;border-radius:9px;background:rgba(255,255,255,.07);color:#dce0ef;font-size:10px;font-weight:700}
.room-message-actions-inline button.danger{margin-left:auto;color:#ff9cba;background:rgba(239,63,157,.12)}
.public-profile-shell{padding-bottom:100px}.profile-avatar-ring i.is-online{background:#43df8c;box-shadow:0 0 12px rgba(67,223,140,.8)}
.profile-interests{margin:15px auto;padding:12px 14px;max-width:520px;border-radius:15px;background:#141831;text-align:left}.profile-interests b,.profile-interests span{display:block}.profile-interests span{margin-top:5px;color:#aeb5ce}
.public-profile-actions{display:flex;justify-content:center;gap:10px;margin-top:18px}.public-profile-actions .btn{min-width:135px}
@media(max-width:760px){.room-message-actions-inline{opacity:1}.room-message-actions-inline button{padding:6px 8px}.public-profile-actions{display:grid}.public-profile-actions .btn{width:100%}}


/* v24 — multiple reactions and editing */
.msg-edited{margin-left:auto;color:#aab0c5;font-size:9px;font-weight:600}
.room-chat-page .room-message-actions-inline button[data-inline-action="edit"]{color:#cbb4ff}


/* v26 — chat statuses and people ready to talk */
.status-select{width:100%;margin-top:7px;padding:13px 14px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#0d1024;color:#fff;font:inherit}.field-hint{display:block;margin-top:6px;color:#9299b3;font-size:11px;line-height:1.4}
.profile-chat-status{display:inline-flex;align-items:center;margin:8px auto 2px;padding:7px 11px;border-radius:999px;background:#202542;color:#dce0f1;font-size:12px;font-weight:800}.profile-chat-status.ready,.status-text.ready{background:rgba(67,223,140,.14);color:#7ee9b0}.profile-chat-status.company,.status-text.company{background:rgba(124,60,255,.16);color:#c3a5ff}.profile-chat-status.bored,.status-text.bored{background:rgba(239,63,157,.13);color:#ff9bc3}.profile-chat-status.dnd,.status-text.dnd{background:rgba(150,157,184,.13);color:#adb4c9}
.ready-people-row{display:flex;gap:10px;overflow-x:auto;padding:4px 1px 12px;scrollbar-width:none}.ready-people-row::-webkit-scrollbar{display:none}.ready-person-card{flex:0 0 122px;padding:14px 10px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(180deg,#151932,#101329);text-align:center}.ready-avatar{position:relative;width:56px;height:56px;margin:0 auto 9px;display:grid;place-items:center;border-radius:18px;background:#24294a;font-size:29px}.ready-avatar i,.ready-list-avatar i{position:absolute;right:-2px;bottom:-2px;width:14px;height:14px;border:3px solid #12152d;border-radius:50%;background:#43df8c;box-shadow:0 0 10px rgba(67,223,140,.6)}.ready-person-card b,.ready-person-card small,.ready-person-card em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ready-person-card b{font-size:13px}.ready-person-card small{margin-top:5px;color:#b8bfd5;font-size:9px}.ready-person-card em{margin-top:4px;color:#777f9d;font-size:9px;font-style:normal}.ready-empty{min-width:100%;display:flex;align-items:center;gap:12px;padding:15px;border:1px dashed rgba(255,255,255,.12);border-radius:18px;background:#101329}.ready-empty>span{font-size:28px}.ready-empty>div{min-width:0;flex:1}.ready-empty b,.ready-empty small{display:block}.ready-empty small{margin-top:4px;color:#9ea5bd}.ready-empty>a{padding:8px 10px;border-radius:10px;background:#7137df;color:#fff;font-size:10px;font-weight:800}
.ready-page{padding-bottom:105px}.ready-intro{margin:16px 0 18px;padding:20px;border:1px solid rgba(124,60,255,.2);border-radius:22px;background:radial-gradient(circle at top right,rgba(239,63,157,.16),transparent 42%),linear-gradient(145deg,#171a37,#0e1127)}.ready-intro>span{color:#b78cff;font-size:10px;font-weight:900;letter-spacing:.14em}.ready-intro h1{margin:7px 0 6px;font-size:27px}.ready-intro p{margin:0;color:#aeb5ca;line-height:1.5}.ready-list{display:grid;gap:10px}.ready-list article{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--border);border-radius:18px;background:#12162d}.ready-list-profile{display:flex;align-items:center;gap:11px;min-width:0;flex:1}.ready-list-avatar{position:relative;width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;border-radius:16px;background:#24294a;font-size:27px}.ready-list-profile>div{min-width:0}.ready-list-profile b,.ready-list-profile small{display:block}.ready-list-profile small{margin-top:3px;font-size:10px;font-weight:800}.ready-list-profile p{margin:5px 0 0;color:#aeb5c9;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ready-write{padding:9px 11px;border-radius:11px;background:linear-gradient(135deg,#7137df,#e6429a);color:#fff;font-size:11px;font-weight:900}
.mobile-bottom-nav{grid-template-columns:repeat(4,1fr)}
@media(max-width:420px){.ready-person-card{flex-basis:112px}.ready-list article{align-items:flex-start;flex-wrap:wrap}.ready-list-profile{width:100%}.ready-write{width:100%;text-align:center}}


/* v27: понятная навигация без выездной панели */
.mobile-room-tabs{display:none}
@media(max-width:760px){
  .sidebar{display:none!important}
  .app-shell{display:block}
  .chat-panel{width:100%;height:calc(100vh - 72px);padding-top:0}
  .chat-header{position:sticky;top:0;z-index:12;background:rgba(9,12,28,.98)}
  .mobile-room-tabs{display:flex;gap:8px;overflow-x:auto;padding:9px 10px;background:#0b0e20;border-bottom:1px solid var(--border);scrollbar-width:none}
  .mobile-room-tabs::-webkit-scrollbar{display:none}
  .mobile-room-tabs a{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding:9px 12px;border-radius:12px;background:#151a34;color:#aeb4ce;font-size:12px;white-space:nowrap;border:1px solid rgba(255,255,255,.06)}
  .mobile-room-tabs a.active{background:linear-gradient(135deg,#6e34df,#9e45ef);color:#fff}
  .room-messages{padding-top:12px}
  .mobile-bottom-nav{grid-template-columns:repeat(5,1fr)!important}
  .mobile-bottom-nav small{font-size:9px}
}

.user-avatar-img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}.user-avatar-emoji{display:grid;place-items:center;width:100%;height:100%}.hub-avatar,.avatar,.msg-avatar,.profile-avatar-ring>span,.dating-avatar,.ready-avatar,.ready-list-avatar,.level-orb>span{overflow:hidden}.avatar-upload-box{display:flex;align-items:center;gap:14px;margin:10px 0 18px;padding:14px;border:1px solid var(--border);border-radius:18px;background:#0d1125}.avatar-upload-preview{width:76px;height:76px;flex:0 0 76px;border-radius:22px;display:grid;place-items:center;background:#24294a;font-size:38px;overflow:hidden}.avatar-upload-box input[type=file]{margin:0;padding:10px}.action-grid-modern:has(>a:nth-child(3):last-child){grid-template-columns:repeat(3,1fr)}@media(max-width:760px){.action-grid-modern:has(>a:nth-child(3):last-child){grid-template-columns:1fr}.avatar-upload-box{align-items:flex-start;flex-direction:column}}
/* v34 — современная мобильная админка */
.admin-v34{background:#070817;color:#f7f7ff;min-height:100vh}.admin34-shell{width:min(1120px,100%);margin:auto;padding:18px 18px 60px}.admin34-head{display:flex;align-items:center;gap:15px;padding:14px 4px 20px}.admin34-head>a,.admin34-head>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#11152c}.admin34-head div{flex:1}.admin34-head small{display:block;color:#9aa1bd}.admin34-head b{font-size:21px}.admin34-flash{padding:14px 16px;border-radius:14px;margin-bottom:14px;background:#153425}.admin34-flash.error{background:#42172a}.admin34-nav{display:flex;gap:8px;overflow:auto;padding-bottom:12px}.admin34-nav a{white-space:nowrap;padding:11px 14px;border-radius:12px;background:#11152c;color:#aeb4cb}.admin34-nav a.active{background:linear-gradient(135deg,#7c3cff,#ef3f9d);color:white}.admin34-hero{padding:28px;border:1px solid rgba(124,60,255,.35);border-radius:26px;background:linear-gradient(135deg,rgba(124,60,255,.22),rgba(239,63,157,.12));margin:12px 0 18px}.admin34-hero small{color:#c091ff;font-weight:900;letter-spacing:.12em}.admin34-hero h1{font-size:34px;margin:12px 0 8px}.admin34-hero p{color:#aeb4cb;margin:0}.admin34-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.admin34-stats article{background:#11152c;border:1px solid rgba(255,255,255,.07);border-radius:18px;padding:18px;display:grid;gap:5px}.admin34-stats span{font-size:22px}.admin34-stats b{font-size:28px}.admin34-stats small{color:#9aa1bd}.admin34-title{font-size:19px;margin:24px 0 12px}.admin34-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.admin34-person{display:flex;align-items:center;gap:12px;background:#11152c;padding:14px;border-radius:16px}.admin34-person .avatar,.admin34-users .avatar{width:46px;height:46px;border-radius:15px;overflow:hidden;display:grid;place-items:center;background:#202543}.admin34-person small,.admin34-users small{display:block;color:#949bb7;margin-top:3px}.admin34-search{display:grid;grid-template-columns:1fr 180px auto;gap:10px;margin:15px 0}.admin34-search input,.admin34-search select,.admin34-search button,.admin34-edit input,.admin34-edit select,.admin34-edit textarea,.admin34-edit button,.admin34-roomnew input,.admin34-roomnew button,.admin34-clean input,.admin34-clean button{background:#11152c;border:1px solid rgba(255,255,255,.09);color:#fff;padding:13px;border-radius:12px}.admin34-search button,.admin34-edit button,.admin34-roomnew button{background:#7439e8;font-weight:800}.admin34-users{display:grid;gap:10px}.admin34-users details{background:#0f1329;border:1px solid rgba(255,255,255,.07);border-radius:18px;overflow:hidden}.admin34-users summary{display:flex;align-items:center;gap:12px;padding:14px;cursor:pointer;list-style:none}.admin34-users summary div{flex:1}.admin34-users summary i{font-style:normal}.admin34-userbody{padding:0 14px 15px;border-top:1px solid rgba(255,255,255,.06)}.admin34-edit{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding-top:14px}.admin34-edit label{font-size:12px;color:#9aa1bd}.admin34-edit input,.admin34-edit select,.admin34-edit textarea{width:100%;display:block;margin-top:5px}.admin34-edit .wide{grid-column:span 4}.admin34-edit button{grid-column:span 4}.admin34-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.admin34-actions form{display:flex;gap:6px}.admin34-actions button,.admin34-actions a{border:0;border-radius:10px;background:#202543;color:#fff;padding:10px 12px;font-size:12px}.admin34-actions .danger{background:#6b2033}.admin34-actions .banline{flex:1}.admin34-actions .banline input{min-width:100px;flex:1;background:#11152c;border:1px solid rgba(255,255,255,.08);color:#fff;border-radius:10px;padding:10px}.roomicon{width:46px;height:46px;border-radius:15px;background:#202543;display:grid;place-items:center;font-size:24px}.admin34-roomnew,.admin34-clean{background:#0f1329;padding:18px;border-radius:20px;margin:15px 0}.admin34-roomnew form{display:grid;grid-template-columns:2fr 1fr 80px 2fr 100px auto;gap:8px}.admin34-log{display:grid;gap:9px;margin-top:15px}.admin34-log article{background:#11152c;padding:14px;border-radius:14px}.admin34-log p{color:#aeb4cb;margin:6px 0}.admin34-log small{color:#727a99}.admin34-clean form{display:flex;align-items:center;gap:10px;padding:13px 0;border-top:1px solid rgba(255,255,255,.06)}.admin34-clean form b{flex:1}
@media(max-width:760px){.admin34-shell{padding:10px 12px 40px}.admin34-stats{grid-template-columns:repeat(2,1fr)}.admin34-grid{grid-template-columns:1fr}.admin34-search{grid-template-columns:1fr}.admin34-edit{grid-template-columns:1fr 1fr}.admin34-edit .wide,.admin34-edit button{grid-column:span 2}.admin34-roomnew form{grid-template-columns:1fr 1fr}.admin34-roomnew form input:nth-of-type(4){grid-column:span 2}.admin34-actions,.admin34-actions form{width:100%}.admin34-actions button,.admin34-actions a{flex:1;text-align:center}.admin34-actions .banline{display:grid;grid-template-columns:1fr 1fr auto}.admin34-clean form{flex-wrap:wrap}.admin34-hero h1{font-size:28px}}
/* v35: кликабельная статистика и просмотр сообщений */
.admin34-stats a{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;background:#12172d;border:1px solid rgba(255,255,255,.09);border-radius:28px;padding:28px 22px;min-height:178px;box-sizing:border-box;transition:transform .15s ease,border-color .15s ease,background .15s ease}
.admin34-stats a:active{transform:scale(.98)}
.admin34-stats a:hover{border-color:rgba(160,92,255,.55);background:#171d38}
.admin34-stats a span{font-size:34px}.admin34-stats a b{font-size:48px;line-height:1}.admin34-stats a small{font-size:20px;color:#9aa1bb}.admin34-stats a em{margin-top:auto;font-size:13px;font-style:normal;color:#a96cff}
.admin34-msgintro{background:linear-gradient(135deg,#21133f,#10152d);border:1px solid rgba(151,77,255,.35);border-radius:28px;padding:24px;margin:18px 0}.admin34-msgintro h2{margin:0 0 8px}.admin34-msgintro p{margin:0;color:#aeb4cc}.admin34-messages article p{white-space:pre-wrap;word-break:break-word}.admin34-messages article b a{color:#b47cff;text-decoration:none}


/* v36 — clickable progress and compact mobile admin */
.level-orb-link{color:inherit;text-decoration:none;position:relative;cursor:pointer;transition:transform .16s ease,border-color .16s ease}
.level-orb-link:active{transform:scale(.985)}
.level-orb-link strong{margin-top:9px;font-size:11px;color:#bd92ff;font-weight:800}
.simple-head{height:66px;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px}.simple-head>a,.simple-head>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#11152c;color:#fff;font-size:28px}.simple-head div{text-align:center}.simple-head b,.simple-head small{display:block}.simple-head small{color:#969db7;margin-top:2px;font-size:12px}
.progress-page{padding-bottom:110px}.progress-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:24px;border-radius:26px;background:linear-gradient(135deg,#211545,#35183e);border:1px solid rgba(169,96,255,.28)}.progress-avatar{width:78px;height:78px;border-radius:24px;overflow:hidden;display:grid;place-items:center;background:#24294e;font-size:38px}.progress-hero small{color:#bd8cff;font-weight:900;letter-spacing:.08em}.progress-hero h1{margin:5px 0;font-size:30px}.progress-hero p{margin:0;color:#b6bbcf}.progress-ring{--p:0;width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#9b49ff calc(var(--p)*1%),#222740 0);position:relative}.progress-ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:#14172e}.progress-ring b{position:relative;font-size:15px}.progress-bar-card{margin-top:14px;padding:18px;border-radius:20px;background:#11152c;border:1px solid rgba(255,255,255,.07)}.progress-bar-card>div{display:flex;justify-content:space-between;gap:10px}.progress-bar-card span{color:#949bb4}.progress-bar-card>i{display:block;height:8px;background:#262b49;border-radius:20px;overflow:hidden;margin-top:13px}.progress-bar-card em{display:block;height:100%;background:linear-gradient(90deg,#7c3cff,#ef3f9d)}.xp-actions,.level-rewards{display:grid;gap:10px}.xp-actions a,.level-rewards article{display:flex;align-items:center;gap:13px;padding:15px;border-radius:17px;background:#11152c;border:1px solid rgba(255,255,255,.07)}.xp-actions a>span,.level-rewards article>span{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:#202543;font-size:23px}.xp-actions div,.level-rewards div{min-width:0;flex:1}.xp-actions b,.xp-actions small,.level-rewards b,.level-rewards small{display:block}.xp-actions small,.level-rewards small{color:#979eb7;margin-top:3px}.xp-actions i{font-size:25px;color:#8f96b4}.level-rewards em{font-style:normal;font-size:11px;color:#8d94ad}.level-rewards article.done{border-color:rgba(69,223,142,.27)}.level-rewards article.done em{color:#56e399}
@media(max-width:760px){
 .admin34-shell{padding:8px 10px 110px}
 .admin34-head{padding:8px 2px 12px}.admin34-head b{font-size:18px}
 .admin34-nav{gap:6px;margin:0 -2px}.admin34-nav a{padding:9px 11px;font-size:12px}
 .admin34-hero{padding:18px;border-radius:20px;margin:8px 0 12px}.admin34-hero h1{font-size:23px;margin:8px 0 5px}.admin34-hero p{font-size:13px;line-height:1.4}
 .admin34-stats{grid-template-columns:1fr!important;gap:8px}
 .admin34-stats a{min-height:0!important;padding:13px 14px!important;border-radius:17px!important;display:grid!important;grid-template-columns:48px 64px 1fr auto;align-items:center;gap:9px}
 .admin34-stats a span{font-size:27px!important;width:42px;height:42px;display:grid;place-items:center}
 .admin34-stats a b{font-size:29px!important;line-height:1!important}
 .admin34-stats a small{font-size:15px!important;line-height:1.2!important}
 .admin34-stats a em{margin:0!important;font-size:0!important}.admin34-stats a em:after{content:"Открыть ›";font-size:11px;color:#ad79ff;white-space:nowrap}
 .admin34-title{font-size:18px;margin:18px 0 9px}
 .admin34-grid{gap:8px}.admin34-person{padding:11px;border-radius:14px}
 .admin34-search{position:static!important;padding:0!important;background:transparent!important;gap:7px}.admin34-search input,.admin34-search select,.admin34-search button{padding:11px;font-size:14px}
 .admin34-users summary{padding:11px}.admin34-userbody{padding:0 10px 12px}
 .admin34-edit{grid-template-columns:1fr!important;gap:8px}.admin34-edit .wide,.admin34-edit button{grid-column:auto!important}
 .admin34-actions .banline{grid-template-columns:1fr!important}.admin34-actions,.admin34-actions form{gap:6px}
 .admin34-roomnew,.admin34-clean{padding:13px;border-radius:16px}.admin34-roomnew form{grid-template-columns:1fr!important}.admin34-roomnew form input:nth-of-type(4){grid-column:auto!important}
 .admin34-log article{padding:12px}.admin34-clean form{display:grid;grid-template-columns:1fr 80px auto;gap:7px}
 .progress-hero{grid-template-columns:62px 1fr;padding:18px}.progress-avatar{width:62px;height:62px;border-radius:20px}.progress-ring{grid-column:1/-1;width:100%;height:10px;border-radius:20px;background:#242944;display:block}.progress-ring:before{display:none}.progress-ring:after{content:"";display:block;width:calc(var(--p)*1%);height:100%;border-radius:20px;background:linear-gradient(90deg,#7c3cff,#ef3f9d)}.progress-ring b{display:none}.progress-hero h1{font-size:25px}
}

.wallet-page{padding-bottom:70px}.wallet-balance{padding:25px;border-radius:26px;background:linear-gradient(135deg,#21164a,#3b163d);border:1px solid rgba(190,115,255,.22)}.wallet-balance small{color:#bf8cff;font-weight:800}.wallet-balance strong{display:block;font-size:42px;margin:10px 0}.wallet-balance p{color:#b8bdd0;margin:0}.wallet-section{margin-top:22px}.pay-details,.wallet-empty{padding:17px;border-radius:18px;background:#11152c;border:1px solid rgba(255,255,255,.08)}.pay-details>*{display:block}.pay-details strong{font-size:20px;margin:8px 0;word-break:break-all}.pay-details span,.pay-details p{color:#aeb4c8}.wallet-form{display:grid;gap:13px;margin-top:13px}.wallet-form label{display:grid;gap:7px;color:#b8bdd0}.wallet-form input{width:100%;box-sizing:border-box;padding:13px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#11152c;color:#fff}.package-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.package-grid label input{position:absolute;opacity:0}.package-grid label span{display:flex;align-items:center;justify-content:space-between;padding:15px;border-radius:17px;background:#11152c;border:1px solid rgba(255,255,255,.08)}.package-grid label input:checked+span{border-color:#9c5cff;background:#20184a}.package-grid b,.package-grid small{display:block}.primary-btn{padding:14px;border:0;border-radius:15px;background:linear-gradient(135deg,#7c3cff,#ef3f9d);color:#fff;font-weight:800}.wallet-order,.wallet-tx{margin-top:9px;padding:14px;border-radius:16px;background:#11152c;border:1px solid rgba(255,255,255,.07)}.wallet-order{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wallet-order>div{flex:1}.wallet-order small,.wallet-tx small{display:block;color:#8f96ac;margin-top:4px}.wallet-order>span{padding:7px 9px;border-radius:10px;font-size:12px}.status-pending{background:#3b3214;color:#ffd86b}.status-approved{background:#143728;color:#66e7a0}.status-rejected{background:#431b28;color:#ff879f}.wallet-order p{width:100%;margin:4px 0;color:#b5bbcc}.wallet-tx{display:flex;gap:12px;align-items:center}.wallet-tx>b{font-size:18px}.wallet-tx .plus{color:#5ee79a}.wallet-tx .minus{color:#ff7d93}.form-error,.form-success{padding:13px;margin-top:12px;border-radius:13px}.form-error{background:#421b29;color:#ff9bad}.form-success{background:#15392b;color:#6aeba6}.payment-review{display:grid;gap:10px;margin-top:12px}.payment-review form{display:grid;grid-template-columns:1fr auto;gap:8px}.payment-review input{min-width:0;padding:11px;border-radius:11px;border:1px solid rgba(255,255,255,.1);background:#0d1125;color:#fff}.receipt-link{display:inline-block;padding:10px 12px;border-radius:12px;background:#6f32df;margin:6px 0}@media(max-width:600px){.package-grid{grid-template-columns:1fr 1fr}.pay-details strong{font-size:17px}.payment-review form{grid-template-columns:1fr}.wallet-balance strong{font-size:36px}}


/* v38 wallet/payment reliability and mobile polish */
.wallet-page{width:min(720px,100%);margin:0 auto;padding:14px 16px 120px!important;color:#f7f7ff}
.wallet-page .page-head-modern{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;min-height:58px;margin-bottom:14px}
.wallet-page .page-head-modern>a{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#11152c;font-size:30px}
.wallet-page .page-head-modern>b{text-align:center;font-size:21px}
.wallet-section h2{font-size:23px;margin:0 0 12px}.wallet-empty{color:#c0c5d5;line-height:1.45}
.wallet-admin-link,.admin-payment-setup{display:flex;align-items:center;gap:13px;padding:16px;border-radius:19px;background:linear-gradient(135deg,rgba(124,60,255,.24),rgba(239,63,157,.13));border:1px solid rgba(166,92,255,.38);margin:18px 0;color:#fff}
.wallet-admin-link>span,.admin-payment-setup>span{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:#202543;font-size:24px}.wallet-admin-link>div,.admin-payment-setup>div{flex:1}.wallet-admin-link b,.admin-payment-setup b{display:block}.wallet-admin-link small,.admin-payment-setup small{display:block;color:#b7bdd1;margin-top:4px}.wallet-admin-link i,.admin-payment-setup i{font-style:normal;font-size:26px;color:#bd87ff}
.payment-settings-card{border:1px solid rgba(145,83,255,.3)}.payment-state{display:inline-flex;padding:9px 12px;border-radius:12px;margin:10px 0 4px;font-weight:800}.payment-state.on{background:#153b2c;color:#68e7a2}.payment-state.off{background:#43202c;color:#ff8ca2}
.payment-settings-card .admin34-edit label.wide:first-of-type{padding:13px;border-radius:14px;background:#171b35;color:#fff;font-size:15px;display:flex;align-items:center;gap:10px}.payment-settings-card input[type=checkbox]{width:22px;height:22px;margin:0}
.admin34-nav{position:sticky;top:0;z-index:30;background:rgba(7,8,23,.96);backdrop-filter:blur(12px);padding-top:6px}
@media(max-width:600px){.wallet-page{padding-left:12px!important;padding-right:12px!important}.wallet-balance{padding:20px;border-radius:22px}.wallet-balance strong{font-size:34px}.wallet-balance p{font-size:15px}.wallet-section h2{font-size:21px}.package-grid{grid-template-columns:1fr}.admin-payment-setup{margin:10px 0 14px}.payment-settings-card .admin34-edit{grid-template-columns:1fr!important}.payment-settings-card .admin34-edit .wide,.payment-settings-card .admin34-edit button{grid-column:auto!important}.admin34-nav a[href="?tab=payment_settings"]{background:#2a1e4c;color:#d7b8ff}}


/* v39 */
.supporter-name{font-weight:900!important;background:linear-gradient(90deg,#ffd45e,#ff79d7,#8b7cff,#ffd45e);background-size:260% auto;color:transparent!important;-webkit-background-clip:text;background-clip:text;animation:supporterGlow 2.4s linear infinite;text-shadow:0 0 18px rgba(255,112,210,.32)}
@keyframes supporterGlow{to{background-position:260% center}}
.supporter-message .bubble{border:1px solid rgba(255,190,80,.48);background:linear-gradient(145deg,rgba(62,36,91,.96),rgba(23,31,57,.96));box-shadow:0 0 24px rgba(255,122,210,.12)}
.supporter-message .msg-body{font-weight:600;letter-spacing:.01em;color:#fff6dc}.gift-btn{background:linear-gradient(135deg,#ff5cc8,#7d5cff)!important;color:#fff!important}
.profile-gifts{margin-top:20px}.profile-gifts h2{margin:0 0 12px}.profile-gifts>div{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.profile-gifts article{background:#12182e;border:1px solid #272f50;border-radius:16px;padding:10px 5px;text-align:center}.profile-gifts article span{font-size:30px;display:block}.profile-gifts article small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#aeb5cc}
.gifts-page{padding-bottom:110px}.gift-recipient{display:flex;gap:12px;align-items:center;background:#12182e;border:1px solid #283050;border-radius:20px;padding:14px;margin:14px 0}.gift-recipient .avatar{width:54px;height:54px}.gift-recipient b,.gift-recipient small{display:block}.gift-recipient small{color:#aeb5cc;margin-top:4px}.gift-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gift-grid input{position:absolute;opacity:0}.gift-card{height:100%;display:flex;flex-direction:column;align-items:center;text-align:center;background:#12182e;border:2px solid transparent;border-radius:22px;padding:16px 10px;gap:6px}.gift-grid input:checked+.gift-card{border-color:#a85cff;background:linear-gradient(145deg,#251544,#141a33);box-shadow:0 0 22px rgba(168,92,255,.24)}.gift-card i{font-style:normal;font-size:48px}.gift-card b{font-size:17px}.gift-card small{color:#aeb5cc;min-height:36px}.gift-card strong{color:#ffd45e}.gift-message{display:block;margin:16px 0}.gift-message textarea{width:100%;min-height:90px}.coin-adjust-form{display:grid;gap:10px}.coin-adjust-form label{display:grid;gap:6px}.coin-adjust-form input{width:100%}@media(min-width:600px){.gift-grid{grid-template-columns:repeat(4,1fr)}}

/* v40: заметное управление монетами в админке */
.admin-coin-shortcut{max-width:1100px;margin:12px auto;padding:0 16px}.admin-coin-shortcut a{display:block;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,#7c3aed,#db2777);color:#fff;text-decoration:none;font-weight:800;text-align:center;box-shadow:0 10px 30px rgba(124,58,237,.25)}
.user-inline-coins{margin:14px 0;padding:14px;border:1px solid rgba(168,85,247,.35);border-radius:16px;background:rgba(124,58,237,.08);display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.user-inline-coins label{display:grid;gap:6px}.user-inline-coins input{width:100%}.user-inline-coins button{white-space:nowrap}
@media(max-width:700px){.admin-coin-shortcut{padding:0 12px}.user-inline-coins{grid-template-columns:1fr}.user-inline-coins button{width:100%}}


/* v41: package VIP bonuses */
.wallet-vip-promo{margin:14px 0;padding:16px;border-radius:18px;background:linear-gradient(135deg,rgba(255,196,0,.18),rgba(184,90,255,.18));border:1px solid rgba(255,215,92,.35);box-shadow:0 10px 28px rgba(0,0,0,.16)}
.wallet-vip-promo strong{display:block;font-size:18px;margin-bottom:5px}.wallet-vip-promo p{margin:0;line-height:1.45;opacity:.86}
.package-grid label span em{display:block;margin-top:7px;font-size:12px;font-style:normal;font-weight:800;color:#ffd86b}
.wallet-order em{display:block;margin-top:3px;font-size:12px;font-style:normal;color:#ffd86b}

/* v42: единое отображение присутствия */
.profile-modern>p.presence-status.online{color:#5ee79a}.profile-modern>p.presence-status.offline{color:#9299ad}.profile-avatar-ring i:not(.is-online){background:#626a80;box-shadow:none}
/* v48: единый набор интерфейсных SVG-иконок */
.ui-icon{width:1.15em;height:1.15em;display:inline-block;vertical-align:-.18em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.logo-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;box-shadow:0 8px 22px rgba(139,92,246,.26)}
.logo-mark .ui-icon{width:19px;height:19px}
.feature-row div,.choice,.action-modern>span,.admin-home-card>span{display:flex;align-items:center;gap:9px}
.mobile-bottom-nav a>span{display:grid;place-items:center}.mobile-bottom-nav .ui-icon{width:22px;height:22px}
.coin-pill{display:inline-flex!important;align-items:center;gap:6px;white-space:nowrap}
.icon-btn,.sound-toggle,.emoji-btn,.send-btn{display:grid;place-items:center}.icon-btn .ui-icon,.sound-toggle .ui-icon,.send-btn .ui-icon{width:21px;height:21px}
.sound-toggle.sound-off{opacity:.55}.sound-toggle.sound-off::after{content:"";position:absolute;width:24px;height:2px;background:currentColor;transform:rotate(-45deg);border-radius:2px}

/* v50: stable neutral avatar placeholder and chat notices */
.avatar-fallback{display:inline-block;width:100%;height:100%;min-width:32px;min-height:32px;border-radius:inherit;background:linear-gradient(145deg,rgba(125,98,255,.42),rgba(42,196,199,.22));position:relative;overflow:hidden}
.avatar-fallback::before{content:"";position:absolute;width:34%;height:34%;border-radius:50%;background:rgba(255,255,255,.78);left:33%;top:18%}
.avatar-fallback::after{content:"";position:absolute;width:62%;height:38%;border-radius:50% 50% 22% 22%;background:rgba(255,255,255,.72);left:19%;bottom:8%}
#chatNotice{z-index:10000}
