/* NOXER V13 — subtle Liquid Glass motion, icon rail, profile and chat polish. */
#nx12{--nx13-tint:rgba(22,24,31,.77);--nx13-border:rgba(228,238,255,.13);--nx13-reflection:rgba(255,255,255,.22)}
#nx12 .nx13-icon,.app-rail .nx13-icon,.nx13-chat-info .nx13-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
#nx12 .nx12-rail{background:linear-gradient(160deg,rgba(24,26,34,.76),rgba(8,9,12,.8));border-right:1px solid rgba(235,240,255,.12);box-shadow:inset -1px 0 0 rgba(255,255,255,.035);backdrop-filter:blur(22px) saturate(1.32);-webkit-backdrop-filter:blur(22px) saturate(1.32)}
#nx12 .nx12-rail button:not(.nx12-miniavatar){font-size:16px;transition:background .2s ease,color .2s ease,transform .2s ease}#nx12 .nx12-rail button:hover{transform:translateY(-1px)}
#nx12 .nx12-rail button.active{background:linear-gradient(140deg,rgba(155,167,211,.25),rgba(255,255,255,.055))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 0 16px rgba(104,120,185,.1)}
#nx12 .nx12-logo .nx13-icon{width:27px;height:27px}
/* page arrival from the right, no huge blur on integrated GPUs */
#nx12:not([hidden]) .nx12-main-settings>.nx12-settings-page,#nx12:not([hidden]) .nx12-main-settings>.nx12-settings-page~*{animation:nx13-entrance-right .48s cubic-bezier(.18,.84,.25,1) both}
#nx12:not([hidden]) .nx12-main-profile>.nx12-profile-page{animation:nx13-entrance-right .45s cubic-bezier(.2,.8,.22,1) both}
#nx12.nx13-closing>.nx12-shell{animation:nx13-exit-right .29s cubic-bezier(.4,0,.85,.55) both}
@keyframes nx13-entrance-right{from{opacity:.25;transform:translateX(clamp(25px,8vw,100px))}to{opacity:1;transform:translateX(0)}}
@keyframes nx13-exit-right{to{opacity:0;transform:translateX(70px)}}
#nx12 .nx12-main{background:radial-gradient(ellipse at 76% 4%,rgba(83,99,143,.075),transparent 37%),#09090b}
/* Glass settings cards */
#nx12 .nx12-setting-list,#nx12 .nx12-user-row,#nx12 .nx12-settings-card{
 background:linear-gradient(144deg,rgba(42,44,53,.76),rgba(20,21,26,.79) 55%,rgba(13,14,18,.82));
 border:1px solid var(--nx13-border);backdrop-filter:blur(17px) saturate(1.3);-webkit-backdrop-filter:blur(17px) saturate(1.3);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 16px 30px rgba(0,0,0,.10);
}
#nx12 .nx12-setting-list>button{transition:background .22s ease,transform .22s ease}
#nx12 .nx12-setting-list>button:hover{background:rgba(255,255,255,.065);transform:translateX(2px)}
#nx12 .nx13-setting-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 29px!important;height:30px;color:#d4d9e4}
#nx12 .nx13-setting-icon .nx13-icon{width:21px;height:21px}
#nx12 .nx12-language-row{overflow:visible!important;position:relative}
#nx12 .nx13-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#nx12 .nx13-language-wrap{position:relative;margin-left:auto;min-width:150px}
#nx12 .nx13-language-button{width:100%;display:flex;align-items:center;gap:9px;justify-content:space-between;min-height:39px;padding:8px 12px;background:linear-gradient(135deg,rgba(41,44,57,.92),rgba(12,13,18,.96));border:1px solid rgba(191,216,255,.3);box-shadow:inset 0 1px 0 rgba(255,255,255,.14);color:#fff;border-radius:13px;text-align:left;font-size:12px;font-weight:700}
#nx12 .nx13-language-button .nx13-icon{width:16px;height:16px}
#nx12 .nx13-caret{margin-left:auto;opacity:.7}
#nx12 .nx13-language-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:20;width:100%;min-width:170px;padding:6px;border:1px solid rgba(227,238,255,.19);border-radius:16px;background:linear-gradient(150deg,rgba(49,53,65,.94),rgba(14,16,22,.98));box-shadow:0 22px 40px rgba(0,0,0,.43),inset 0 1px 0 rgba(255,255,255,.13);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);animation:nx13-pop .2s ease both}
#nx12 .nx13-language-menu button{width:100%;text-align:left;padding:10px 11px;background:transparent;border:0;border-radius:10px;color:#f3f5f9;font-size:13px}
#nx12 .nx13-language-menu button:hover{background:rgba(177,190,238,.18)}
@keyframes nx13-pop{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
/* Profile cover and personal data */
#nx12 .nx12-profile-page{max-width:600px}
#nx12 .nx12-profile-hero{min-height:215px;margin:5px 0 9px;border-radius:23px;isolation:isolate}
#nx12 .nx12-profile-backdrop{inset:0!important;border-radius:23px;opacity:.94;box-shadow:inset 0 1px 0 rgba(255,255,255,.1),inset 0 -25px 25px rgba(8,9,12,.46);background-color:#14161d!important}
#nx12 .nx12-profile-hero>.nx12-avatar{position:relative;margin-top:8px;width:126px;height:126px;box-shadow:0 0 0 4px rgba(5,6,10,.73),0 20px 45px #0007}
#nx12 .nx12-status-dot{top:calc(50% + 48px)}
#nx12 .nx12-avatar-add{top:calc(50% - 70px)}
#nx12 .nx13-profile-name{font-size:26px;margin-top:12px}
#nx12 .nx12-profile-handle{margin-bottom:19px}
#nx12 .nx12-profile-actions button{border-radius:17px;background:linear-gradient(140deg,rgba(41,42,49,.94),rgba(22,22,28,.95));border:1px solid rgba(255,255,255,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.09);transition:transform .18s ease,background .18s ease}
#nx12 .nx12-profile-actions button:hover{transform:translateY(-2px);background:linear-gradient(140deg,rgba(72,75,91,.86),rgba(25,27,33,.96))}
#nx12 .nx13-action-icon{display:grid;place-items:center}
#nx12 .nx13-action-icon .nx13-icon{width:20px;height:20px}
#nx12 .nx12-profile-actions button>span:last-child{font-size:12px}
#nx12 .nx12-profile-facts>div{padding:12px 3px}
#nx12 .nx13-user-identity{display:grid;padding:0!important}
#nx12 .nx13-identity-row{padding:13px 3px;border-bottom:1px solid rgba(255,255,255,.08);display:grid;gap:4px}
#nx12 .nx13-identity-row strong{font-weight:650}
#nx12 .nx13-identity-row small{color:#8e95a6}
#nx12 .nx13-alias-link{color:#a4beff;text-decoration:none}
#nx12 .nx13-alias-link:hover{text-decoration:underline}
#nx12 .nx13-alias-label{color:#aab0bf;font-weight:400}
#nx12 .nx13-more-menu{display:grid;gap:4px;margin:-11px 0 16px auto;width:min(250px,100%);padding:8px;border-radius:16px;background:linear-gradient(140deg,rgba(45,48,58,.94),rgba(17,19,25,.96));border:1px solid rgba(255,255,255,.13);box-shadow:0 20px 40px #0008;backdrop-filter:blur(18px)}
#nx12 .nx13-more-menu[hidden]{display:none!important}
#nx12 .nx13-more-menu button{display:flex;gap:9px;align-items:center;text-align:left;background:transparent;border:0;border-radius:9px;padding:10px;color:#eee;font-weight:650}
#nx12 .nx13-more-menu button:hover{background:rgba(255,255,255,.08)}
#nx12 .nx12-rating-chip{display:inline-flex;gap:5px;align-items:center;padding:4px 11px;border-radius:99px;color:#c4d6ff;border:1px solid rgba(162,185,249,.19);background:linear-gradient(130deg,rgba(40,60,96,.87),rgba(24,27,44,.86));font-size:12px;font-weight:800}
#nx12 .nx12-rating-chip .nx13-icon{width:14px;height:14px}
#nx12 .nx12-rating-sheet{border:1px solid rgba(255,255,255,.14);box-shadow:0 26px 80px #000b,inset 0 1px rgba(255,255,255,.13)}
#nx12 .nx12-rating-sheet.open{animation:nx13-rating-up .43s cubic-bezier(.2,.8,.2,1) both}
#nx12 .nx12-rating-sheet.closing{animation:nx13-rating-down .39s cubic-bezier(.4,0,.83,.5) both}
@keyframes nx13-rating-up{from{opacity:0;transform:translateY(85px)}to{opacity:1;transform:translateY(0)}}
@keyframes nx13-rating-down{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(90px)}}
/* QR always uses a legible square symbol, never a text glyph */
#nx12 .nx12-round .nx13-icon{width:19px;height:19px}
/* Chat list and conversation polish */
.messenger-shell{transition:background .25s ease}
.messenger-shell .chat-list-panel{background:linear-gradient(162deg,rgba(20,21,26,.98),rgba(11,12,16,.98));box-shadow:inset -1px 0 0 rgba(255,255,255,.04)}
.messenger-shell .chat-row{border-radius:14px;transition:transform .2s ease,background .2s ease}
.messenger-shell .chat-row:hover{transform:translateX(2px)}
.messenger-shell .chat-row.active{background:linear-gradient(135deg,rgba(101,75,189,.8),rgba(77,62,159,.78));border-color:rgba(171,151,244,.26)}
.messenger-shell .active-chat:not(.hidden){animation:nx13-chat-open .3s cubic-bezier(.22,.8,.2,1) both}
@keyframes nx13-chat-open{from{opacity:.2;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
.messenger-shell .message-list .message-item{animation:nx13-message-in .2s ease both}
@keyframes nx13-message-in{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}
/* right-side chat details */
.messenger-shell{position:relative}
.nx13-chat-info{position:absolute;right:0;top:0;bottom:0;width:min(330px,42vw);z-index:15;overflow:auto;background:linear-gradient(155deg,rgba(31,33,42,.96),rgba(14,16,22,.97));border-left:1px solid rgba(255,255,255,.12);box-shadow:-24px 0 55px #0006;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);animation:nx13-info-in .32s ease both}
.nx13-chat-info[hidden]{display:none}
@keyframes nx13-info-in{from{opacity:0;transform:translateX(45px)}to{opacity:1;transform:translateX(0)}}
.nx13-info-top{display:flex;align-items:center;gap:14px;padding:20px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.nx13-info-top button{background:none;border:0;color:#c1c8d7;width:28px;height:28px}
.nx13-info-top h3{font-size:16px;color:white;margin:0}
.nx13-info-profile{display:flex;align-items:center;flex-direction:column;gap:8px;padding:32px 12px;border-bottom:1px solid rgba(255,255,255,.08)}
.nx13-info-profile img,.nx13-info-letter{width:100px;height:100px;object-fit:cover;border-radius:50%;background:#343956;display:grid;place-items:center;font-size:35px;color:#fff}
.nx13-info-profile h2{margin:5px 0 0;color:#fff}
.nx13-info-profile small{color:#a2aaba}
.nx13-info-actions{display:grid;padding:14px;gap:8px}
.nx13-info-actions button{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.045);color:#fff;padding:13px;text-align:left}
.nx13-info-tabs{display:grid;grid-template-columns:1fr 1fr;margin-top:8px;border-bottom:1px solid rgba(255,255,255,.09);text-align:center;color:#a3a9ba}
.nx13-info-tabs span{padding:13px;font-size:12px;font-weight:700}.nx13-info-tabs span.active{color:#a793ff;border-bottom:2px solid #9a84fa}
.nx13-info-empty{padding:36px 15px;text-align:center;font-size:12px;color:#8f96a5}
.app-rail .rail-btn .nx13-icon{width:19px;height:19px}
@media (max-width:760px){
 #nx12 .nx12-profile-hero{min-height:190px}
 #nx12 .nx12-profile-actions button{min-height:61px;padding:8px 2px;border-radius:13px}
 #nx12 .nx12-profile-page{max-width:100%}
 #nx12 .nx13-language-wrap{min-width:135px}
 #nx12 .nx12-rail{backdrop-filter:none;-webkit-backdrop-filter:none}
 .nx13-chat-info{position:fixed;inset:0;width:100%;z-index:900}
 .messenger-shell .message-list .message-item{animation:none}
}
@media(prefers-reduced-motion:reduce){#nx12 .nx12-settings-page,#nx12 .nx12-profile-page,#nx12.nx13-closing>.nx12-shell,.messenger-shell .active-chat,.messenger-shell .message-list .message-item{animation:none!important}}
/* Subtle original chat wallpaper (SVG source shipped with the patch). */
.messenger-page .conversation-panel:not(.wall-grid):not(.wall-nebula):not(.wall-aurora){background-image:linear-gradient(155deg,rgba(11,9,20,.72),rgba(9,9,15,.67)),url('/static/nx13-wallpaper.svg');background-size:auto,240px 240px;background-repeat:repeat}
.messenger-page .conversation-panel:not(.wall-grid):not(.wall-nebula):not(.wall-aurora) .active-chat{background:transparent}
@media(max-width:760px){.messenger-page .conversation-panel:not(.wall-grid):not(.wall-nebula):not(.wall-aurora){background-size:auto,180px 180px}}
