
/* XORCHAT Messenger UI — MSN-inspired, original XORVANIQ visual system */
:root{
  --xm-blue:#176fc1;--xm-blue2:#6bb8ef;--xm-purple:#6f42c1;--xm-ink:#152538;
  --xm-line:#9fb7cf;--xm-panel:#f7fbff;--xm-soft:#eaf4ff;--xm-green:#32b768;
}
body:not(.auth-body){background:linear-gradient(135deg,#cfddea 0%,#eef5fb 44%,#e6def7 100%) fixed;color:var(--xm-ink)}
body:not(.auth-body)::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 12%,rgba(111,66,193,.16),transparent 30%),radial-gradient(circle at 15% 88%,rgba(23,111,193,.13),transparent 34%)}
.app-shell{position:relative;max-width:1500px;margin:18px auto;min-height:calc(100vh - 36px);border:1px solid #7899b8;border-radius:18px;overflow:hidden;box-shadow:0 28px 70px rgba(26,52,80,.22),0 2px 8px rgba(26,52,80,.25);background:#fff;grid-template-columns:minmax(260px,315px) minmax(0,1fr)}
.sidebar{background:linear-gradient(180deg,#eaf6ff 0,#d6eaff 38%,#eef4fa 100%);color:#17324d;border-right:1px solid var(--xm-line);padding:0}
.sidebar>.brand-link{min-height:82px;padding:16px 18px;margin:0;background:linear-gradient(180deg,#3895db,#176fc1);color:#fff;border-bottom:1px solid #0c5b9e;text-shadow:0 1px 0 rgba(0,0,0,.22);font-size:1.22rem}
.sidebar>.brand-link::after{content:" Messenger";font-weight:500;opacity:.88}
.brand-mark{background:radial-gradient(circle at 35% 30%,#fff 0 12%,#b5dcff 13% 34%,#6f42c1 35% 100%);border:2px solid rgba(255,255,255,.86);box-shadow:0 2px 8px rgba(0,0,0,.18);color:#fff}
.prod-chip{display:block;margin:10px 14px 2px;padding:6px 10px;border:1px solid #9fb7cf;border-radius:7px;background:rgba(255,255,255,.7);color:#34506a;text-align:center;font-size:.72rem;letter-spacing:.08em}
.sidebar nav{padding:8px 10px 16px}
.sidebar .nav-title{margin:14px 6px 5px;padding:5px 8px;color:#34506a;border-bottom:1px solid #bfd0df;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.sidebar nav a{min-height:42px;margin:2px 0;padding:9px 10px;border:1px solid transparent;border-radius:8px;color:#17324d;background:transparent}
.sidebar nav a:hover{background:#fff;border-color:#b8cee0}
.sidebar nav a.active{background:linear-gradient(180deg,#fff,#dbeeff);border-color:#8fb7d5;box-shadow:inset 0 1px 0 #fff}
.sidebar nav a.active::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--xm-green);box-shadow:0 0 0 2px #fff,0 0 0 3px #87a9c3;margin-right:4px}
.nav-icon{color:#176fc1;font-size:1.05rem}
.account{margin:0;border-top:1px solid #aac1d5;background:linear-gradient(180deg,#f8fcff,#dbeaf6);padding:14px 16px}
.account .presence{width:12px;height:12px;border-radius:50%;background:var(--xm-green);box-shadow:0 0 0 2px #fff,0 0 0 3px #829bb0}
.main-panel{background:linear-gradient(#f7fbff,#eef4fa);min-width:0}
.panel-header{background:linear-gradient(180deg,#4b9ee0 0,#1d72ba 56%,#165e9b 100%);color:#fff;margin:-1px -1px 0;padding:18px 22px;border-bottom:1px solid #0f4f83;text-shadow:0 1px rgba(0,0,0,.18)}
.panel-header h1{color:#fff;font-size:clamp(1.35rem,2.2vw,2rem);margin:0}
.panel-header p{color:#eaf6ff}
.header-actions .secondary,.panel-header .secondary{background:linear-gradient(#fff,#d9eaff);color:#17324d;border-color:#a7bfd4;text-shadow:none}
.storage-state{background:rgba(15,44,70,.34);border:1px solid rgba(255,255,255,.32);color:#fff;border-radius:999px;padding:7px 10px;font-weight:700}
.xc-connection{margin:10px 18px 0;padding:8px 11px;border:1px solid #b6ccdf;border-radius:7px;background:#fff;color:#34506a}
.message-list{margin:12px 18px;background:#fff;border:1px solid #9fb7cf;border-radius:9px;box-shadow:inset 0 1px 8px rgba(45,78,106,.08);min-height:48vh}
.message{border:1px solid #d5e2ed;border-radius:8px;background:#f7fbff;box-shadow:0 1px 1px rgba(25,55,80,.06)}
.message.mine{background:linear-gradient(180deg,#e9f5ff,#d9ecff);border-color:#a9c9e3}
.message-meta strong{color:#125c9a}
.composer{margin:12px 18px 18px;padding:12px;border:1px solid #9fb7cf;border-radius:10px;background:linear-gradient(180deg,#fff,#e9f2fa);box-shadow:0 3px 12px rgba(37,67,94,.1)}
.composer textarea{background:#fff;border-color:#8eacc6;border-radius:7px;min-height:76px;font-size:1rem}
button,.btn,.primary{border-radius:7px!important}
.composer>button,.call-launch button{background:linear-gradient(180deg,#8ecdf5,#2d88cf);border-color:#1d6ea9;color:#fff;font-weight:750}
.wink-bar{border-bottom:1px solid #c7d9e8;padding-bottom:8px;margin-bottom:8px}
.card{border-color:#b8ccdd;background:rgba(255,255,255,.88);box-shadow:0 4px 16px rgba(32,62,89,.08)}
.xcall-card{border:1px solid #7c9db9!important;background:#f6fbff!important;box-shadow:0 28px 80px rgba(0,0,0,.35)!important}
.xcall-card>header{background:linear-gradient(#4d9fe1,#176fc1)!important;color:#fff!important}
.xcall-status{font-weight:700;color:#21435f}
@media(max-width:900px){.app-shell{margin:0;min-height:100vh;border-radius:0;border-left:0;border-right:0;grid-template-columns:minmax(220px,280px) minmax(0,1fr)}}
@media(max-width:720px){.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--xm-line)}.sidebar nav{display:flex;overflow:auto;gap:5px}.sidebar .nav-title{display:none}.sidebar nav a{min-width:max-content}.account{display:none}.message-list,.composer{margin-left:10px;margin-right:10px}}

/* Motion layer */
@keyframes xm-window-in{from{opacity:0;transform:translateY(10px) scale(.992)}to{opacity:1;transform:none}}
@keyframes xm-message-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes xm-presence-pulse{0%,100%{box-shadow:0 0 0 2px #fff,0 0 0 3px #829bb0}50%{box-shadow:0 0 0 2px #fff,0 0 0 6px rgba(50,183,104,.16)}}
@keyframes xm-call-in{from{opacity:0;transform:translateY(14px) scale(.975)}to{opacity:1;transform:none}}
.app-shell{animation:xm-window-in .38s cubic-bezier(.2,.75,.2,1) both}
.message{animation:xm-message-in .22s ease-out both}
.account .presence,.sidebar nav a.active::before{animation:xm-presence-pulse 2.6s ease-in-out infinite}
.xcall-overlay:not([hidden]) .xcall-card{animation:xm-call-in .28s cubic-bezier(.2,.8,.2,1) both}
.sidebar nav a,.composer button,.call-launch button{transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.sidebar nav a:hover,.composer button:hover,.call-launch button:hover{transform:translateY(-1px)}
@media(prefers-reduced-motion:reduce){.app-shell,.message,.account .presence,.sidebar nav a.active::before,.xcall-overlay:not([hidden]) .xcall-card{animation:none!important}.sidebar nav a,.composer button,.call-launch button{transition:none!important}}

/* Dark XORVANIQ Messenger theme */
:root{--xm-blue:#6d28d9;--xm-blue2:#a855f7;--xm-purple:#8b5cf6;--xm-ink:#f4efff;--xm-line:#4c3666;--xm-panel:#171220;--xm-soft:#21172d;--xm-green:#47d487}
body:not(.auth-body){background:radial-gradient(circle at 12% 10%,rgba(123,63,190,.22),transparent 28%),radial-gradient(circle at 88% 82%,rgba(71,32,110,.24),transparent 32%),#09070d!important;color:#f4efff}
.app-shell{background:#100c16!important;border-color:#4b3562!important;box-shadow:0 28px 80px rgba(0,0,0,.58),0 0 0 1px rgba(168,85,247,.08)!important}
.sidebar{background:linear-gradient(180deg,#171021 0,#120d19 42%,#0d0a12 100%)!important;color:#f0e8ff!important;border-right-color:#39294c!important}
.sidebar>.brand-link{background:linear-gradient(180deg,#6d28d9,#3d176f)!important;border-bottom-color:#2f1158!important;color:#fff!important}
.prod-chip,.sidebar nav a,.sidebar .nav-title,.account{color:#e8dcff!important}
.prod-chip{background:#171020!important;border-color:#4c3666!important}
.sidebar .nav-title{border-bottom-color:#3b2a4e!important;color:#bfa8e5!important}
.sidebar nav a:hover{background:#24162f!important;border-color:#68468a!important}
.sidebar nav a.active{background:linear-gradient(180deg,#2d1b3c,#20152b)!important;border-color:#7e57a6!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important}
.nav-icon{color:#c084fc!important}.account{background:linear-gradient(180deg,#171020,#0f0b15)!important;border-top-color:#3b2a4e!important}
.main-panel{background:linear-gradient(180deg,#120e18,#0b0810)!important;color:#f5efff!important}
.panel-header{background:linear-gradient(180deg,#7c3aed 0,#5b21b6 58%,#3b176f 100%)!important;border-bottom-color:#2d1156!important}
.xc-connection{background:#15101d!important;border-color:#4a3562!important;color:#d8c8ef!important}
.xc-connection[data-state=connected]{color:#9ef0be!important;border-color:#2b6a46!important;background:#0f1914!important}
.message-list{background:#0f0b15!important;border-color:#4b3562!important;box-shadow:inset 0 1px 12px rgba(0,0,0,.35)!important}
.message{background:#17111f!important;border-color:#372847!important;color:#f4efff!important}
.message.mine{background:linear-gradient(180deg,#2a1738,#20122c)!important;border-color:#69448d!important}
.message-meta strong{color:#d6b3ff!important}.message time,.message small{color:#a99bb8!important}
.composer{background:linear-gradient(180deg,#171020,#100b16)!important;border-color:#4b3562!important}.composer textarea{background:#0b0810!important;color:#fff!important;border-color:#65468a!important}.composer textarea::placeholder{color:#8f819e!important}
.composer>button,.call-launch button,.voice-note-button{background:linear-gradient(180deg,#8b5cf6,#5b21b6)!important;border-color:#8d67b5!important;color:#fff!important;box-shadow:0 2px 8px rgba(93,33,182,.3)!important}
.wink-bar{border-bottom-color:#342540!important}.storage-state{background:rgba(15,8,25,.5)!important;border-color:rgba(216,180,254,.3)!important}
.xcall-card{background:#110c18!important;border-color:#6f4a92!important;color:#fff!important}.xcall-card>header{background:linear-gradient(180deg,#7c3aed,#4c1d95)!important}
.card{background:#15101d!important;border-color:#3d2b50!important;color:#f4efff!important}
.msn-contact-card{display:flex;align-items:center;gap:14px;padding:14px 18px;background:linear-gradient(180deg,#21152c,#140e1c);border-bottom:1px solid #4b3562}.msn-contact-avatar{width:58px;height:58px;border-radius:9px;display:grid;place-items:center;font-size:2rem;background:#0b0810;border:2px solid #8152aa;box-shadow:0 0 0 3px #21152c}.msn-contact-card strong{font-size:1.05rem}.msn-contact-card small{display:block;color:#b7a4c9;margin-top:4px}.msn-toolbar{display:flex;gap:8px;flex-wrap:wrap;padding:10px 14px;background:#120d19;border-bottom:1px solid #39294c}.msn-toolbar button{min-height:40px}.voice-note-status{font-size:.84rem;color:#c7b5d9;margin-left:4px}

/* Direct-message window closer to classic Messenger */
.msn-titlebar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 12px;background:linear-gradient(180deg,#7c3aed,#4c1d95);border-bottom:1px solid #2d1156;color:#fff;box-shadow:inset 0 1px rgba(255,255,255,.18)}
.msn-titlebar strong{font-size:.9rem}.msn-titlebar span:nth-child(2){font-size:.9rem;opacity:.95}.msn-window-controls{font-family:monospace;letter-spacing:.25em;opacity:.85}
.msn-contact-card{min-height:86px}.msn-toolbar{position:relative;align-items:center}.msn-toolbar .storage-state{margin-left:auto;font-size:.72rem}
.msn-dm-shell{display:grid;grid-template-columns:minmax(0,1fr) 128px;min-height:560px}.msn-dm-main{min-width:0;background:#0b0810}.msn-avatar-rail{border-left:1px solid #3d2b50;background:linear-gradient(180deg,#120d19,#0a0710);padding:14px 10px;display:flex;flex-direction:column;gap:16px;align-items:center}.msn-rail-avatar{width:100%;padding:8px;border:1px solid #4b3562;border-radius:10px;background:#171020;text-align:center}.msn-rail-avatar>span{width:88px;height:88px;margin:0 auto 6px;display:grid;place-items:center;border-radius:8px;background:#09070d;border:2px solid #7c4da6;font-size:2.6rem;box-shadow:0 0 0 2px #21152c}.msn-rail-avatar small{display:block;color:#cab7de;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msn-rail-badge{margin-top:auto;display:grid;place-items:center;gap:4px;color:#bfa8e5;font-size:.75rem}.msn-rail-badge b{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#24162f;border:1px solid #6f4a92;color:#d8b4fe;font-size:.65rem}
.msn-dm-main .xc-connection{margin:8px 12px 0}.msn-dm-main .message-list{margin:8px 12px;min-height:410px;max-height:58vh;overflow:auto}.msn-dm-main .composer{margin:8px 12px 12px}
.voice-note{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:10px;margin-top:8px;padding:9px 10px;border:1px solid #4b3562;border-radius:9px;background:#0d0a12}.voice-note strong{color:#d6b3ff}.voice-note audio{width:100%;min-width:180px;height:34px;filter:invert(.88) hue-rotate(220deg) saturate(.7)}.voice-note small{color:#a99bb8;white-space:nowrap}.voice-note-button.recording{background:linear-gradient(180deg,#b91c69,#7f1d5a)!important;animation:xm-record-pulse 1s ease-in-out infinite}.voice-note-status{min-width:125px}.message[data-message-id]{scroll-margin-bottom:18px}
@keyframes xm-record-pulse{0%,100%{box-shadow:0 0 0 0 rgba(244,63,94,0)}50%{box-shadow:0 0 0 6px rgba(244,63,94,.15)}}
@media(max-width:840px){.msn-dm-shell{grid-template-columns:minmax(0,1fr)}.msn-avatar-rail{display:none}.msn-toolbar .storage-state{width:100%;margin-left:0}.msn-contact-card{min-height:72px}.voice-note{grid-template-columns:1fr}.voice-note small{white-space:normal}}
@media(prefers-reduced-motion:reduce){.voice-note-button.recording{animation:none!important}}

/* Viewport-fit Messenger DM + working Nudge */
.dm-view{height:100dvh;overflow:hidden}
.dm-view .app-shell{width:calc(100vw - 12px);max-width:1440px;height:calc(100dvh - 12px);min-height:0;margin:6px auto;border-radius:12px}
.dm-view .sidebar{height:100%;overflow:auto;overscroll-behavior:contain}
.dm-view .sidebar>.brand-link{min-height:58px;padding:10px 12px}
.dm-view .prod-chip{margin:7px 10px 2px;padding:4px 8px}
.dm-view .sidebar nav{padding:5px 8px 8px}
.dm-view .sidebar .nav-title{margin:8px 4px 3px;padding:3px 6px}
.dm-view .sidebar nav a{min-height:34px;padding:6px 8px}
.dm-view .account{padding:8px 10px}
.dm-view .main-panel{height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column}
.dm-view .msn-titlebar,.dm-view .msn-contact-card,.dm-view .msn-toolbar{flex:0 0 auto}
.dm-view .msn-contact-card{min-height:66px;padding:9px 14px}
.dm-view .msn-contact-avatar{width:48px;height:48px;font-size:1.7rem}
.dm-view .msn-toolbar{padding:7px 10px;gap:6px}
.dm-view .msn-toolbar button{min-height:34px;padding:6px 10px}
.dm-view .msn-dm-shell{flex:1 1 auto;min-height:0;overflow:hidden}
.dm-view .msn-dm-main{min-height:0;overflow:hidden;display:flex;flex-direction:column}
.dm-view .xc-connection{flex:0 0 auto;margin:6px 10px 0;padding:5px 9px}
.dm-view .message-list{flex:1 1 auto;min-height:0;max-height:none!important;margin:6px 10px;overflow:auto}
.dm-view .composer{flex:0 0 auto;margin:6px 10px 8px;padding:8px 10px}
.dm-view .composer textarea{min-height:54px;max-height:88px}
.dm-view .typing-indicator,.dm-view .xc-send-status{flex:0 0 auto;margin:0 10px}
.dm-view .msn-avatar-rail{min-height:0;overflow:auto;padding:10px 8px;gap:10px}
.dm-view .msn-rail-avatar>span{width:72px;height:72px;font-size:2.1rem}
.nudge-button{background:linear-gradient(180deg,#a855f7,#6d28d9)!important;border-color:#9b6fc3!important;color:#fff!important}
.nudge-banner{position:fixed;z-index:12000;left:50%;top:18px;transform:translate(-50%,-18px);opacity:0;padding:10px 18px;border-radius:10px;border:1px solid #8d63b0;background:linear-gradient(180deg,#2b1839,#160d20);color:#fff;font-weight:800;box-shadow:0 16px 50px rgba(0,0,0,.5);pointer-events:none;transition:opacity .14s ease,transform .14s ease}
.nudge-banner.show{opacity:1;transform:translate(-50%,0)}
.nudge-banner[data-kind="sent"]{border-color:#4f8f68;background:linear-gradient(180deg,#163522,#0d2015)}
.nudge-banner[data-kind="error"]{border-color:#9f4760;background:linear-gradient(180deg,#3e1724,#210c13)}
.nudge-shake-strong{animation:xorNudgeStrong .09s linear 9!important}
@keyframes xorNudgeStrong{0%,100%{transform:translate(0,0) rotate(0)}20%{transform:translate(-10px,3px) rotate(-.25deg)}40%{transform:translate(9px,-4px) rotate(.2deg)}60%{transform:translate(-8px,-2px) rotate(-.18deg)}80%{transform:translate(10px,3px) rotate(.22deg)}}
@media(max-width:1100px){.dm-view .app-shell{grid-template-columns:205px minmax(0,1fr)}.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr) 100px}.dm-view .msn-rail-avatar>span{width:62px;height:62px}}
@media(max-width:760px){.dm-view .app-shell{display:block;width:100vw;height:100dvh;margin:0;border:0;border-radius:0}.dm-view .sidebar{display:none}.dm-view .main-panel{height:100dvh}.dm-view .msn-avatar-rail{display:none}.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr)}.dm-view .msn-toolbar .storage-state{display:none}}
@media(max-height:700px){.dm-view .msn-contact-card{min-height:54px;padding:6px 12px}.dm-view .msn-contact-avatar{width:42px;height:42px}.dm-view .msn-toolbar{padding:5px 8px}.dm-view .composer textarea{min-height:44px;max-height:70px}.dm-view .sidebar>.brand-link{min-height:50px}}
@media(prefers-reduced-motion:reduce){.nudge-shake-strong{animation:none!important}.nudge-banner{transition:none!important}}

.nudge-event{display:flex;align-items:center;justify-content:center;gap:10px;margin:8px auto;padding:7px 12px;width:max-content;max-width:90%;border:1px solid #5d3c79;border-radius:999px;background:#171020;color:#d8c7ea;font-size:.82rem;font-weight:750;box-shadow:0 4px 14px rgba(0,0,0,.18);animation:xm-message-in .22s ease-out both}
.nudge-event::before{content:"NUDGE";font-size:.66rem;letter-spacing:.08em;color:#c084fc;border:1px solid #704b91;border-radius:999px;padding:2px 5px}
.nudge-event[data-kind="sent"]{background:#1c1326;border-color:#704b91;color:#eee5f7}
.nudge-event time{font-size:.72rem;color:#9485a3;font-weight:500}
@media(prefers-reduced-motion:reduce){.nudge-event{animation:none!important}}

/* Full-browser DM fit v5 */
body.dm-view{height:100dvh!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;background:#09070d!important}
body.dm-view .app-shell{width:100vw!important;max-width:none!important;height:100dvh!important;min-height:0!important;margin:0!important;border:0!important;border-radius:0!important;grid-template-columns:220px minmax(0,1fr)!important}
body.dm-view footer,body.dm-view .xv-social-footer,body.dm-view .site-footer,body.dm-view .xv-social-only{display:none!important}
body.dm-view .sidebar{height:100%!important;min-height:0;display:flex;flex-direction:column;overflow:hidden!important}
body.dm-view .sidebar nav{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}
body.dm-view .account{flex:0 0 auto}
body.dm-view .main-panel{height:100dvh!important;min-height:0!important;overflow:hidden!important;display:flex;flex-direction:column}
body.dm-view .msn-titlebar{padding:6px 10px}
body.dm-view .msn-contact-card{min-height:58px!important;padding:7px 10px!important}
body.dm-view .msn-contact-avatar{width:44px!important;height:44px!important;font-size:1.55rem!important}
body.dm-view .msn-toolbar{padding:6px 8px!important;gap:5px!important}
body.dm-view .msn-toolbar button{min-height:32px!important;padding:5px 9px!important;font-size:.86rem}
body.dm-view .msn-toolbar .storage-state{margin-left:auto;max-width:245px;padding:5px 8px!important;font-size:.62rem!important;line-height:1.1;white-space:normal;text-align:right}
body.dm-view .msn-dm-shell{flex:1 1 auto;min-height:0!important;overflow:hidden!important;grid-template-columns:minmax(0,1fr) 92px!important}
body.dm-view .msn-dm-main{min-height:0!important;overflow:hidden!important;display:flex;flex-direction:column}
body.dm-view .xc-connection{margin:5px 8px 0!important;padding:4px 8px!important}
body.dm-view .message-list{flex:1 1 auto!important;min-height:0!important;max-height:none!important;margin:5px 8px!important;overflow:auto!important}
body.dm-view .composer{flex:0 0 auto!important;margin:5px 8px 7px!important;padding:7px 8px!important}
body.dm-view .composer textarea{min-height:46px!important;max-height:72px!important}
body.dm-view .msn-avatar-rail{width:92px;min-height:0;overflow:auto;padding:8px 6px!important;gap:8px!important}
body.dm-view .msn-rail-avatar{padding:6px!important}
body.dm-view .msn-rail-avatar>span{width:58px!important;height:58px!important;font-size:1.9rem!important}
body.dm-view .msn-rail-badge b{width:38px;height:38px}
@media(max-width:1150px){body.dm-view .app-shell{grid-template-columns:190px minmax(0,1fr)!important}body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr) 78px!important}body.dm-view .msn-avatar-rail{width:78px}body.dm-view .msn-rail-avatar>span{width:50px!important;height:50px!important}}
@media(max-width:900px){body.dm-view .msn-avatar-rail{display:none!important}body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr)!important}body.dm-view .msn-toolbar .storage-state{display:none!important}}
@media(max-width:720px){body.dm-view .app-shell{display:block!important}body.dm-view .sidebar{display:none!important}body.dm-view .main-panel{height:100dvh!important}}

/* Incoming call actions */
.xcall-controls [hidden]{display:none!important}
.xcall-controls .call-accept,.xcall-controls .call-decline{min-width:150px;min-height:46px;font-weight:850}
.xcall-controls .call-accept{background:linear-gradient(180deg,#3fd17a,#18894a)!important;border-color:#57db8d!important;color:#fff!important}
.xcall-controls .call-decline{background:linear-gradient(180deg,#e34b68,#9d233d)!important;border-color:#ef7187!important;color:#fff!important}
.xcall-controls .call-accept:disabled,.xcall-controls .call-decline:disabled{opacity:.55;cursor:wait;transform:none!important}

/* Profile picture + status */
.account-avatar,.avatar-emoji img,.msn-contact-avatar img,.msn-rail-avatar img,.profile-photo-preview img{object-fit:cover;display:block}
.account-avatar{width:36px;height:36px;border-radius:7px;border:1px solid #7a54a2;flex:0 0 auto}
.account-avatar-fallback{display:grid;place-items:center;background:#0a0710;font-size:1.25rem}
.avatar-emoji img{width:100%;height:100%;border-radius:inherit}
.msn-contact-avatar{overflow:hidden}
.msn-contact-avatar img{width:100%;height:100%;border-radius:7px}
.msn-rail-avatar>span{overflow:hidden}
.msn-rail-avatar>span img{width:100%;height:100%;border-radius:6px}
.profile-photo-settings{display:grid;grid-template-columns:104px minmax(0,1fr);gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid #3d2b50}
.profile-photo-preview{width:104px;height:104px;border-radius:14px;border:2px solid #75509b;background:#09070d;display:grid;place-items:center;overflow:hidden;font-size:3rem}
.profile-photo-preview img{width:100%;height:100%}
.profile-photo-settings form{margin-top:8px}
.profile-photo-settings input[type=file]{max-width:100%}
.custom-status{color:#c8b5dc!important;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:680px){.profile-photo-settings{grid-template-columns:1fr}.profile-photo-preview{width:86px;height:86px}}

/* Sidebar owns scrolling; calls never do */
body.dm-view .sidebar{overflow:hidden!important}
body.dm-view .sidebar nav{overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin;scrollbar-color:#7c3aed #120d19}
body.dm-view .sidebar nav::-webkit-scrollbar{width:8px}
body.dm-view .sidebar nav::-webkit-scrollbar-track{background:#120d19}
body.dm-view .sidebar nav::-webkit-scrollbar-thumb{background:#6d28d9;border-radius:999px;border:2px solid #120d19}

.xcall-overlay{overflow:hidden!important;padding:12px!important}
.xcall-card{box-sizing:border-box!important;width:min(920px,calc(100vw - 24px))!important;height:min(740px,calc(100dvh - 24px))!important;max-height:calc(100dvh - 24px)!important;min-height:0!important;overflow:hidden!important;display:grid!important;grid-template-rows:auto minmax(150px,1fr) auto auto auto!important;gap:6px!important;padding:14px!important}
.xcall-card>header{min-height:0}
.xcall-stage{min-height:0!important;height:100%!important;margin:6px 0!important}
.xcall-stage video[data-remote-video]{height:100%!important;min-height:0!important;max-height:none!important}
.xcall-stage video[data-local-video]{max-height:34%!important}
.xcall-status,.xcall-elapsed{margin:0!important;min-height:18px!important}
.xcall-devices{margin:4px 0!important;gap:8px!important}
.xcall-devices label{gap:3px!important}
.xcall-devices select{min-height:34px!important}
.xcall-controls{margin:2px 0 0!important;gap:8px!important}
.xcall-controls button{min-height:38px!important}
@media(max-height:760px){.xcall-card{height:calc(100dvh - 12px)!important;max-height:calc(100dvh - 12px)!important;padding:10px!important}.xcall-card>header strong{font-size:1.05rem!important}.xcall-card>header small{font-size:.72rem!important}.xcall-devices label{font-size:.75rem!important}.xcall-controls button{min-height:34px!important}.xcall-stage{margin:3px 0!important}}
@media(max-width:700px){.xcall-overlay{padding:0!important}.xcall-card{width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;border:0!important;grid-template-rows:auto minmax(120px,1fr) auto auto auto!important}.xcall-devices{grid-template-columns:1fr 1fr!important}.xcall-controls button{flex:1 1 auto!important}}

.xcall-card{grid-template-rows:auto minmax(140px,1fr) auto auto auto auto!important}
.xcall-avatar{width:96px;height:96px;display:grid;place-items:center;border-radius:18px;overflow:hidden}
.xcall-avatar img{width:100%;height:100%;object-fit:cover;border-radius:16px;border:2px solid #7c3aed}
@media(max-height:760px){.xcall-card{grid-template-rows:auto minmax(110px,1fr) auto auto auto auto!important}.xcall-avatar{width:78px;height:78px}}
@media(max-width:700px){.xcall-card{grid-template-rows:auto minmax(100px,1fr) auto auto auto auto!important}}
/* Zoom-resilient sidebar/navigation v7 */
body.dm-view .sidebar{
  display:flex!important;
  flex-direction:column!important;
  height:100dvh!important;
  min-height:0!important;
  overflow:hidden!important;
}
body.dm-view .sidebar>.brand-link,
body.dm-view .sidebar>.prod-chip,
body.dm-view .sidebar>.account{
  flex:0 0 auto!important;
}
body.dm-view .sidebar nav{
  display:block!important;
  flex:1 1 0!important;
  height:0!important;
  min-height:0!important;
  overflow-y:scroll!important;
  overflow-x:hidden!important;
  scrollbar-gutter:stable!important;
  overscroll-behavior:contain!important;
  touch-action:pan-y!important;
  padding-bottom:12px!important;
}
body.dm-view .sidebar nav a{
  display:flex!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.dm-view .sidebar .account{
  position:relative!important;
  bottom:auto!important;
  margin-top:0!important;
  z-index:2;
}
@media(max-height:820px){
  body.dm-view .sidebar>.brand-link{min-height:46px!important;padding:7px 10px!important}
  body.dm-view .prod-chip{margin:4px 8px 1px!important;padding:3px 6px!important}
  body.dm-view .sidebar .nav-title{margin:5px 3px 2px!important;padding:2px 5px!important;font-size:.68rem!important}
  body.dm-view .sidebar nav a{min-height:30px!important;padding:4px 7px!important;font-size:.84rem!important}
  body.dm-view .account{padding:6px 8px!important}
}
@media(max-height:620px){
  body.dm-view .sidebar>.brand-link{min-height:38px!important;font-size:.96rem!important}
  body.dm-view .prod-chip{display:none!important}
  body.dm-view .sidebar .nav-title{margin:3px 2px 1px!important}
  body.dm-view .sidebar nav a{min-height:27px!important;padding:3px 6px!important;font-size:.78rem!important}
  body.dm-view .account .custom-status{display:none!important}
}
@media(max-width:720px){
  body.dm-view .sidebar{display:none!important}
  body.dm-view .app-shell{grid-template-columns:minmax(0,1fr)!important}
}

.message-user-link{color:#d6b3ff;text-decoration:none;font-weight:850}
.message-user-link:hover{text-decoration:underline;color:#ead8ff}
.message-user-link:focus-visible{outline:2px solid #a855f7;outline-offset:2px;border-radius:4px}

/* Premium Messenger UX v9 */
body.dm-view .main-panel{background:linear-gradient(180deg,#0d0912,#09070d)!important}
body.dm-view .msn-titlebar{min-height:34px;padding:5px 9px!important;background:linear-gradient(180deg,#6f35bc,#472070)!important;border-bottom-color:#301148!important}
body.dm-view .msn-titlebar strong{font-size:.78rem!important;letter-spacing:.025em}
body.dm-view .msn-titlebar span:nth-child(2){font-size:.82rem!important;color:#f0e6fb}
body.dm-view .msn-window-controls{font-size:.8rem;opacity:.65;letter-spacing:.18em!important}
body.dm-view .msn-contact-card{background:linear-gradient(180deg,#17101f,#100b16)!important;border-bottom-color:#34223f!important}
body.dm-view .msn-contact-card strong{font-size:.96rem!important}
body.dm-view .msn-contact-card small{margin-top:2px!important;font-size:.76rem!important;color:#ad9abc!important}
body.dm-view .msn-toolbar{background:#0f0a15!important;border-bottom-color:#2f203a!important}
body.dm-view .msn-toolbar button{border-radius:9px!important;box-shadow:none!important;font-weight:750}
body.dm-view .msn-toolbar button:hover{box-shadow:0 4px 14px rgba(124,58,237,.18)!important}
body.dm-view .storage-state{display:inline-flex!important;align-items:center;justify-content:center;max-width:none!important;white-space:nowrap!important;border-radius:999px!important;padding:4px 8px!important;font-size:.65rem!important;letter-spacing:.03em;background:#191021!important;border-color:#5b3973!important;color:#d9c0f0!important}
body.dm-view .message-list{background:linear-gradient(180deg,#0d0a12,#0a0810)!important;border-color:#2c2135!important;border-radius:12px!important;padding:14px 18px!important;gap:10px!important;box-shadow:inset 0 1px 12px rgba(0,0,0,.28)!important}
body.dm-view .message{max-width:min(680px,72%)!important;padding:11px 13px!important;border-radius:13px!important;box-shadow:0 5px 18px rgba(0,0,0,.11)!important}
body.dm-view .message.mine{margin-left:auto!important;background:linear-gradient(145deg,#2e1a40,#241433)!important;border-color:#5d3b78!important}
body.dm-view .message:not(.mine){margin-right:auto!important;background:linear-gradient(145deg,#17111f,#120d18)!important;border-color:#33243f!important}
body.dm-view .message-meta{gap:7px!important}
body.dm-view .message-meta time{margin-left:auto!important;font-size:.68rem!important}
body.dm-view .reaction-row{opacity:.72;transition:opacity .15s ease}
body.dm-view .message:hover .reaction-row{opacity:1}
body.dm-view .reaction{min-width:32px!important;min-height:30px!important;padding:3px 7px!important;background:#120d18!important;border-color:#372847!important}
body.dm-view .composer{border-radius:12px!important;background:linear-gradient(180deg,#120c19,#0c0911)!important;border:1px solid #30213a!important;box-shadow:0 -8px 28px rgba(0,0,0,.16)!important}
body.dm-view .wink-bar{margin-bottom:5px!important;padding-bottom:5px!important;border-bottom-color:#2b1f33!important}
body.dm-view .wink-bar button{min-width:0!important;min-height:30px!important;padding:4px 8px!important;border-radius:8px!important}
body.dm-view .composer textarea{border-radius:10px!important;border-color:#432d54!important;background:#08060b!important;padding:10px 12px!important}
body.dm-view .composer>button{min-width:76px!important;min-height:40px!important;border-radius:10px!important}
body.dm-view .msn-avatar-rail{background:linear-gradient(180deg,#0f0a15,#09070d)!important;border-left-color:#2d2037!important}
body.dm-view .msn-rail-avatar{background:#120d18!important;border-color:#392849!important;border-radius:12px!important;box-shadow:0 6px 20px rgba(0,0,0,.12)}
body.dm-view .msn-rail-badge{opacity:.72}
body.dm-view .msn-app-footer{flex:0 0 30px;min-height:30px;display:flex;align-items:center;gap:12px;padding:0 10px;border-top:1px solid #2e2038;background:#0c0811;color:#9f90ad;font-size:.7rem}
body.dm-view .msn-app-footer>span:first-child{white-space:nowrap}
body.dm-view .msn-app-footer nav{display:flex;align-items:center;gap:11px;min-width:0;overflow:hidden}
body.dm-view .msn-app-footer nav a{color:#baa7cc;text-decoration:none;white-space:nowrap}
body.dm-view .msn-app-footer nav a:hover{color:#e7d8f5;text-decoration:underline}
body.dm-view .msn-footer-shield{margin-left:auto;color:#c49ae9;white-space:nowrap}
body.dm-view>.xv-social-only{display:none!important}
@media(max-width:900px){body.dm-view .msn-app-footer{font-size:.66rem}.msn-footer-shield{display:none!important}}
@media(max-width:760px){body.dm-view .msn-app-footer{justify-content:center}body.dm-view .msn-app-footer>span:first-child{display:none}body.dm-view .msn-app-footer nav{gap:9px}}
@media(max-height:620px){body.dm-view .msn-app-footer{min-height:25px;flex-basis:25px;font-size:.62rem}}

.account-copy{min-width:0;display:grid;gap:1px;flex:1 1 auto}
.quick-presence{margin-top:4px;min-height:27px;max-width:130px;padding:2px 24px 2px 7px;border-radius:7px;border:1px solid #4b3562;background:#0c0911;color:#e9ddf8;font-size:.72rem}
.quick-presence:focus{border-color:#8b5cf6;outline:2px solid rgba(139,92,246,.18)}
.quick-presence-status{min-height:12px;font-size:.62rem;color:#9fcfae}
.presence.online{background:#47d487!important}.presence.away{background:#e8ae45!important}.presence.busy{background:#df5570!important}.presence.invisible{background:#6f6878!important}
@media(max-height:650px){.quick-presence{min-height:24px;font-size:.67rem}.quick-presence-status{display:none}}
/* Final viewport/footer precedence fixes */
body.dm-view .msn-app-footer{display:flex!important}
body.dm-view>.xv-social-only{display:none!important}
body.dm-view .msn-app-footer nav{overflow:hidden;white-space:nowrap}
body.dm-view .msn-app-footer nav a{flex:0 0 auto}
@media(max-width:720px){
  body.dm-view .sidebar{display:none!important}
  body.dm-view .app-shell{grid-template-columns:minmax(0,1fr)!important}
}
/* High-zoom desktop resilience */
@media (min-width:521px) and (max-width:900px){
  body.dm-view .app-shell{display:grid!important;grid-template-columns:170px minmax(0,1fr)!important}
  body.dm-view .sidebar{display:flex!important}
  body.dm-view .sidebar>.brand-link{font-size:.88rem!important}
  body.dm-view .sidebar .nav-label{font-size:.76rem!important}
  body.dm-view .account{padding:5px 6px!important}
  body.dm-view .account-avatar{width:30px;height:30px}
  body.dm-view .quick-presence{max-width:108px;font-size:.65rem}
}
@media(max-width:520px){
  body.dm-view .sidebar{display:none!important}
  body.dm-view .app-shell{display:block!important;grid-template-columns:minmax(0,1fr)!important}
  body.dm-view .main-panel{width:100vw!important}
}

/* Unified room + DM viewport layout v10 */
body.chat-view{height:100dvh!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;background:#09070d!important}
body.chat-view .app-shell{width:100vw!important;max-width:none!important;height:100dvh!important;min-height:0!important;margin:0!important;border:0!important;border-radius:0!important;grid-template-columns:clamp(170px,14vw,250px) minmax(0,1fr)!important}
body.chat-view .sidebar{height:100dvh!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
body.chat-view .sidebar>.brand-link,body.chat-view .sidebar>.prod-chip,body.chat-view .sidebar>.account{flex:0 0 auto!important}
body.chat-view .sidebar nav{display:block!important;flex:1 1 0!important;height:0!important;min-height:0!important;overflow-y:scroll!important;overflow-x:hidden!important;scrollbar-gutter:stable!important;overscroll-behavior:contain!important;touch-action:pan-y!important}
body.chat-view .main-panel{height:100dvh!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
body.chat-view .panel-header,body.chat-view .msn-titlebar,body.chat-view .msn-contact-card,body.chat-view .msn-toolbar{flex:0 0 auto!important}
body.chat-view .panel-header{padding:10px 14px!important;min-height:66px!important}
body.chat-view .panel-header h1{font-size:clamp(1.35rem,2vw,2rem)!important}
body.chat-view .panel-header p{margin-top:3px!important;margin-bottom:0!important}
body.chat-view .xc-connection{flex:0 0 auto!important;margin:7px 10px 0!important;padding:6px 10px!important}
body.chat-view .message-list{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;margin:7px 10px!important;padding:14px 18px!important;scrollbar-gutter:stable!important}
body.chat-view .composer{flex:0 0 auto!important;margin:6px 10px!important;padding:8px 10px!important}
body.chat-view .composer textarea{min-height:46px!important;max-height:76px!important}
body.chat-view .typing-indicator,body.chat-view .xc-send-status{flex:0 0 auto!important;margin:0 10px!important}
body.chat-view .msn-app-footer{flex:0 0 30px!important;min-height:30px!important;display:flex!important}
body.chat-view>.xv-social-only{display:none!important}
body.chat-view .message{max-width:min(680px,76%)!important}
body.chat-view .message.mine{margin-left:auto!important}
body.chat-view .message:not(.mine){margin-right:auto!important}
body.chat-view .empty-state{margin:auto!important}

@media(max-height:760px){
  body.chat-view .panel-header{min-height:54px!important;padding:7px 11px!important}
  body.chat-view .panel-header h1{font-size:1.25rem!important}
  body.chat-view .sidebar>.brand-link{min-height:42px!important;padding:6px 8px!important;font-size:.9rem!important}
  body.chat-view .prod-chip{margin:4px 7px 1px!important;padding:3px 6px!important}
  body.chat-view .sidebar nav a{min-height:28px!important;padding:3px 6px!important;font-size:.78rem!important}
  body.chat-view .composer{padding:6px 8px!important}
  body.chat-view .composer textarea{min-height:40px!important;max-height:58px!important}
  body.chat-view .msn-app-footer{min-height:25px!important;flex-basis:25px!important;font-size:.62rem!important}
}
@media(max-width:760px){
  body.chat-view .app-shell{grid-template-columns:150px minmax(0,1fr)!important}
  body.chat-view .sidebar>.brand-link{font-size:.82rem!important}
  body.chat-view .sidebar>.brand-link::after{font-size:.72rem!important}
  body.chat-view .sidebar .nav-label{font-size:.74rem!important}
  body.chat-view .message{max-width:86%!important}
}
@media(max-width:520px){
  body.chat-view .app-shell{grid-template-columns:62px minmax(0,1fr)!important}
  body.chat-view .sidebar>.brand-link{justify-content:center!important;padding:6px!important}
  body.chat-view .sidebar>.brand-link span:not(.brand-mark),body.chat-view .sidebar>.brand-link::after,body.chat-view .prod-chip,body.chat-view .nav-title,body.chat-view .nav-label,body.chat-view .account>div,body.chat-view .account form{display:none!important}
  body.chat-view .sidebar nav a{justify-content:center!important;padding:5px!important}
  body.chat-view .account{justify-content:center!important;padding:5px!important}
  body.chat-view .message{max-width:92%!important}
  body.chat-view .msn-app-footer>span:first-child,body.chat-view .msn-footer-shield{display:none!important}
}

/* Unified authenticated app shell v13 */
:root{--xc-sidebar:clamp(215px,14vw,260px);--xc-footer-h:32px}
body.app-view{height:100dvh!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;background:#09070d!important}
body.app-view .app-shell{width:100vw!important;max-width:none!important;height:100dvh!important;min-height:0!important;margin:0!important;border:0!important;border-radius:0!important;grid-template-columns:var(--xc-sidebar) minmax(0,1fr)!important}
body.app-view .sidebar{height:100dvh!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
body.app-view .sidebar>.brand-link,body.app-view .sidebar>.prod-chip,body.app-view .sidebar>.account{flex:0 0 auto!important}
body.app-view .sidebar nav{display:block!important;flex:1 1 0!important;height:0!important;min-height:0!important;overflow-y:scroll!important;overflow-x:hidden!important;scrollbar-gutter:stable!important;overscroll-behavior:contain!important}
body.app-view .sidebar nav::-webkit-scrollbar{width:8px}
body.app-view .sidebar nav::-webkit-scrollbar-track{background:#100b16}
body.app-view .sidebar nav::-webkit-scrollbar-thumb{background:#5e2f9e;border-radius:999px;border:2px solid #100b16}
body.app-view .main-panel{height:100dvh!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;display:flex!important;flex-direction:column!important;padding-bottom:var(--xc-footer-h)!important;box-sizing:border-box!important;position:relative}
body.app-view .panel-header{position:sticky!important;top:0!important;z-index:90!important;flex:0 0 auto!important;box-shadow:0 8px 28px rgba(0,0,0,.18)!important}
body.app-view>.xv-social-only{display:none!important}
body.app-view .msn-app-footer{position:fixed!important;left:var(--xc-sidebar)!important;right:0!important;bottom:0!important;height:var(--xc-footer-h)!important;min-height:var(--xc-footer-h)!important;z-index:95!important;display:flex!important;align-items:center!important;gap:12px!important;padding:0 12px!important;border-top:1px solid #2e2038!important;background:rgba(10,7,14,.97)!important;backdrop-filter:blur(12px);color:#9f90ad!important;font-size:.7rem!important;box-sizing:border-box!important}
body.app-view .msn-app-footer nav{display:flex;gap:11px;align-items:center;min-width:0;overflow:hidden}
body.app-view .msn-app-footer nav a{color:#baa7cc;text-decoration:none;white-space:nowrap}
body.app-view .msn-app-footer nav a:hover{color:#f0e4fa;text-decoration:underline}
body.app-view .msn-footer-shield{margin-left:auto;color:#c49ae9;white-space:nowrap}

/* Chat rooms + DMs: only nav and message history scroll */
body.app-view.chat-view .main-panel{overflow:hidden!important}
body.app-view.chat-view .panel-header,body.app-view.chat-view .msn-titlebar,body.app-view.chat-view .msn-contact-card,body.app-view.chat-view .msn-toolbar{position:relative!important;top:auto!important;flex:0 0 auto!important}
body.app-view.chat-view .xc-connection{flex:0 0 auto!important;margin:6px 10px 0!important}
body.app-view.chat-view .message-list{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;margin:6px 10px!important;scrollbar-gutter:stable!important}
body.app-view.chat-view .composer{flex:0 0 auto!important;margin:6px 10px!important}
body.app-view.chat-view .typing-indicator,body.app-view.chat-view .xc-send-status{flex:0 0 auto!important;margin:0 10px!important}
body.app-view.chat-view .msn-dm-shell{flex:1 1 auto!important;min-height:0!important;overflow:hidden!important}
body.app-view.chat-view .msn-dm-main{min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}

/* Non-chat views: premium contained content */
body.app-view:not(.chat-view) .main-panel{padding-bottom:calc(var(--xc-footer-h) + 10px)!important}
body.app-view:not(.chat-view) .panel-header{margin:0!important;padding:14px 18px!important;border-radius:0!important}
body.app-view:not(.chat-view) .admin-grid,body.app-view:not(.chat-view) .people-grid,body.app-view:not(.chat-view) .main-panel>section.card{margin-left:18px!important;margin-right:18px!important}
body.app-view:not(.chat-view) .admin-grid{padding:16px 0 20px!important;gap:14px!important}
body.app-view:not(.chat-view) .card{border-radius:16px!important;background:linear-gradient(145deg,#15101d,#100c16)!important;border-color:#3b294b!important;box-shadow:0 10px 30px rgba(0,0,0,.13)!important}
body.app-view:not(.chat-view) .people-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important;gap:14px!important;padding:16px 0 22px!important}
body.app-view:not(.chat-view) .person-card{min-width:0!important;overflow:hidden!important;padding:15px!important;border-radius:16px!important;background:linear-gradient(145deg,#171225,#11101b)!important;border:1px solid #3a2a49!important;box-shadow:0 8px 24px rgba(0,0,0,.13)!important}
body.app-view:not(.chat-view) .person-card .person-main{align-items:center!important;gap:7px!important}
body.app-view:not(.chat-view) .person-card>.row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;width:100%!important}
body.app-view:not(.chat-view) .person-card>.row form{min-width:0!important;margin:0!important}
body.app-view:not(.chat-view) .person-card>.row button,body.app-view:not(.chat-view) .person-card>.row select{width:100%!important;min-width:0!important;max-width:100%!important;min-height:38px!important;padding:7px 8px!important}
body.app-view:not(.chat-view) .person-card>.row form:first-child{grid-column:span 2!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important}
body.app-view:not(.chat-view) .person-card>.row form:first-child button{width:auto!important}

/* Zoom/viewport resilience */
@media(max-height:820px){
  body.app-view .sidebar>.brand-link{min-height:46px!important;padding:7px 9px!important}
  body.app-view .prod-chip{margin:4px 8px 1px!important;padding:3px 6px!important}
  body.app-view .sidebar .nav-title{margin:5px 3px 2px!important;padding:2px 5px!important;font-size:.68rem!important}
  body.app-view .sidebar nav a{min-height:30px!important;padding:4px 7px!important;font-size:.82rem!important}
  body.app-view .account{padding:6px 8px!important}
  body.app-view .panel-header{padding:9px 13px!important}
  body.app-view .panel-header h1{font-size:1.35rem!important}
}
@media(max-height:650px){
  :root{--xc-footer-h:26px}
  body.app-view .sidebar>.brand-link{min-height:38px!important;font-size:.9rem!important}
  body.app-view .prod-chip{display:none!important}
  body.app-view .sidebar .nav-title{margin:3px 2px 1px!important}
  body.app-view .sidebar nav a{min-height:27px!important;padding:3px 6px!important;font-size:.76rem!important}
  body.app-view .account .custom-status{display:none!important}
  body.app-view .msn-app-footer{font-size:.62rem!important}
}
@media(max-width:900px){
  :root{--xc-sidebar:170px}
  body.app-view .msn-footer-shield{display:none!important}
}
@media(max-width:650px){
  :root{--xc-sidebar:62px}
  body.app-view .sidebar>.brand-link{justify-content:center!important;padding:6px!important}
  body.app-view .sidebar>.brand-link span:not(.brand-mark),body.app-view .sidebar>.brand-link::after,body.app-view .prod-chip,body.app-view .nav-title,body.app-view .nav-label,body.app-view .account>div,body.app-view .account form{display:none!important}
  body.app-view .sidebar nav a{justify-content:center!important;padding:5px!important}
  body.app-view .account{justify-content:center!important;padding:5px!important}
  body.app-view .msn-app-footer>span:first-child{display:none!important}
}
@media(max-width:430px){
  :root{--xc-sidebar:0px}
  body.app-view .sidebar{display:none!important}
  body.app-view .app-shell{grid-template-columns:minmax(0,1fr)!important}
}
/* Standalone Calls/Premium/Search shell v13 */
body.standalone-view{height:100dvh;overflow:hidden;margin:0;background:#09070d;color:#f4efff}
body.standalone-view>.xv-social-only{display:none!important}
.xc-standalone-header{position:fixed;inset:0 0 auto 0;height:52px;z-index:100;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:14px;padding:0 16px;background:linear-gradient(180deg,#6c34b7,#3c1b63);border-bottom:1px solid #2d143f;box-shadow:0 8px 24px rgba(0,0,0,.24)}
.xc-standalone-brand{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-weight:900;letter-spacing:.04em}
.xc-standalone-brand .brand-mark{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#1a1024;border:1px solid #9a6bc4}
.xc-standalone-header>strong{font-size:.95rem;color:#f3e9ff}
.xc-standalone-header nav{display:flex;justify-content:flex-end;gap:8px;min-width:0;overflow:hidden}
.xc-standalone-header nav a{color:#e5d8f2;text-decoration:none;padding:7px 10px;border-radius:8px;white-space:nowrap}
.xc-standalone-header nav a:hover{background:#5c2c94;color:#fff}
.standalone-main{position:fixed!important;inset:52px 0 32px 0!important;overflow-y:auto!important;overflow-x:hidden!important;width:auto!important;max-width:none!important;margin:0!important;padding:22px clamp(16px,4vw,52px)!important;box-sizing:border-box!important;background:radial-gradient(circle at 12% 0,rgba(124,58,237,.12),transparent 28%),#0a0710}
.standalone-main>.card,.standalone-main>.premium-grid,.standalone-main>article.card{max-width:1180px;margin-left:auto!important;margin-right:auto!important}
.xc-standalone-footer{position:fixed;inset:auto 0 0 0;height:32px;z-index:100;display:flex;align-items:center;gap:12px;padding:0 14px;background:rgba(10,7,14,.97);border-top:1px solid #2f2039;color:#9f90ad;font-size:.7rem;box-sizing:border-box}
.xc-standalone-footer nav{display:flex;gap:11px;align-items:center;overflow:hidden}
.xc-standalone-footer nav a{color:#baa7cc;text-decoration:none;white-space:nowrap}
.xc-standalone-footer nav a:hover{color:#fff;text-decoration:underline}
.xc-standalone-footer>span:last-child{margin-left:auto;color:#c49ae9}
@media(max-width:720px){.xc-standalone-header{grid-template-columns:auto 1fr;height:48px;padding:0 10px}.xc-standalone-header>strong{display:none}.xc-standalone-header nav{gap:3px}.xc-standalone-header nav a{padding:6px 7px;font-size:.72rem}.standalone-main{inset:48px 0 28px 0!important;padding:14px 10px!important}.xc-standalone-footer{height:28px;font-size:.62rem}.xc-standalone-footer>span:first-child,.xc-standalone-footer>span:last-child{display:none}}
/* Fixed shell for Calls / Premium / Search */
body.standalone-view{height:100dvh;min-height:0;margin:0;overflow:hidden;background:#09070d;color:#f5efff;display:grid;grid-template-rows:54px minmax(0,1fr) 32px}
body.standalone-view>.xv-social-only{display:none!important}
.xc-standalone-header{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:14px;padding:0 16px;background:linear-gradient(180deg,#6f35bc,#472070);border-bottom:1px solid #301148;box-shadow:0 8px 28px rgba(0,0,0,.18);z-index:20}
.xc-standalone-brand{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-weight:900;letter-spacing:.05em}
.xc-standalone-header>strong{color:#efe7ff;font-size:.95rem}
.xc-standalone-header nav{justify-self:end;display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}
.xc-standalone-header nav a{color:#eadffd;text-decoration:none;padding:6px 9px;border-radius:8px;white-space:nowrap;font-size:.8rem}
.xc-standalone-header nav a:hover{background:rgba(255,255,255,.1)}
.standalone-main{min-height:0;overflow-y:auto!important;overflow-x:hidden!important;box-sizing:border-box!important;width:min(1180px,100%)!important;max-width:1180px!important;margin:0 auto!important;padding:18px 22px 24px!important}
.standalone-main>.card,.standalone-main>.premium-grid,.standalone-main>.premium-card{max-width:100%}
.xc-standalone-footer{display:flex;align-items:center;gap:12px;padding:0 12px;background:#0c0811;border-top:1px solid #2e2038;color:#9f90ad;font-size:.7rem;z-index:20}
.xc-standalone-footer nav{display:flex;gap:11px;min-width:0;overflow:hidden}
.xc-standalone-footer a{color:#baa7cc;text-decoration:none;white-space:nowrap}
.xc-standalone-footer a:hover{color:#f0e4fa;text-decoration:underline}
.xc-standalone-footer>span:last-child{margin-left:auto;color:#c49ae9}

/* Final premium shell polish v15 */
body.app-view .sidebar>.brand-link{font-size:.92rem!important;gap:6px!important;padding-left:8px!important;padding-right:6px!important;white-space:nowrap!important;overflow:hidden!important}
body.app-view .sidebar>.brand-link::after{font-size:.70rem!important;margin-left:0!important;white-space:nowrap!important;flex:0 0 auto}
body.app-view .sidebar>.brand-link .brand-mark{flex:0 0 auto}
body.app-view .account{display:grid!important;grid-template-columns:auto auto minmax(0,1fr) auto!important;align-items:center!important;gap:6px!important}
body.app-view .account-avatar{grid-column:1;grid-row:1}
body.app-view .account>.presence{grid-column:2;grid-row:1}
body.app-view .account-copy{grid-column:3;grid-row:1;min-width:0!important;overflow:hidden}
body.app-view .account-copy strong,body.app-view .account-copy small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.app-view .account form{grid-column:4;grid-row:1;align-self:center;margin:0!important}
body.app-view .account .link-button{white-space:nowrap!important;font-size:.68rem!important;padding:4px 2px!important;min-width:0!important}
body.app-view .quick-presence{width:100%!important;max-width:120px!important;min-width:0!important;margin-top:3px!important}
body.app-view .panel-header .row{gap:6px!important}
body.app-view .panel-header .row a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 10px;border:1px solid #5c3a76;border-radius:999px;background:#17101f;color:#d9c4eb!important;text-decoration:none!important;font-size:.76rem;font-weight:750}
body.app-view .panel-header .row a.active{background:linear-gradient(180deg,#7c3aed,#5b21b6);border-color:#9369bd;color:#fff!important}
body.app-view:not(.chat-view) .main-panel>section.card>form.row{display:grid!important;grid-template-columns:minmax(220px,360px) auto!important;justify-content:start!important;align-items:end!important;gap:10px!important}
body.app-view:not(.chat-view) .main-panel>section.card>form.row label{min-width:0!important;margin:0!important}
body.app-view:not(.chat-view) .main-panel>section.card>form.row input{width:100%!important;box-sizing:border-box!important}
body.app-view:not(.chat-view) .main-panel>section.card>form.row button{width:auto!important;min-width:140px!important;min-height:42px!important}
body.app-view.chat-view .reaction-row{gap:4px!important;opacity:.76;transition:opacity .15s ease}
body.app-view.chat-view .message:hover .reaction-row{opacity:1}
body.app-view.chat-view .reaction{min-width:34px!important;min-height:32px!important;height:32px!important;padding:3px 7px!important;border-radius:8px!important;background:#120d18!important;border-color:#372847!important;font-size:.82rem!important}
body.app-view.chat-view .message-self-actions summary,body.app-view.chat-view .message>details:not(.message-self-actions)>summary{font-size:.74rem!important;color:#b9a7c9!important}
/* Final visual polish v16 */
:root{--xc-sidebar:clamp(224px,14vw,260px)!important}
body.app-view .sidebar>.brand-link{font-size:.94rem!important;letter-spacing:.075em!important;overflow:visible!important}
body.app-view .sidebar>.brand-link::after{font-size:.72rem!important;opacity:.9}
body.app-view .sidebar nav{scrollbar-width:thin!important;scrollbar-color:#5e2f9e #100b16!important}
body.app-view .sidebar nav::-webkit-scrollbar,
body.app-view .message-list::-webkit-scrollbar,
body.app-view .main-panel::-webkit-scrollbar{width:8px!important;height:8px!important}
body.app-view .sidebar nav::-webkit-scrollbar-track,
body.app-view .message-list::-webkit-scrollbar-track,
body.app-view .main-panel::-webkit-scrollbar-track{background:#0d0912!important}
body.app-view .sidebar nav::-webkit-scrollbar-thumb,
body.app-view .message-list::-webkit-scrollbar-thumb,
body.app-view .main-panel::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#7c3aed,#4c1d95)!important;border:2px solid #0d0912!important;border-radius:999px!important}

body.app-view.chat-view .message-list{
 padding:16px max(18px,calc((100% - 1040px)/2 + 18px))!important;
 gap:11px!important;
 background:radial-gradient(circle at 50% 0,rgba(108,52,183,.055),transparent 42%),#0b0810!important;
 border-radius:12px!important
}
body.app-view.chat-view .message{max-width:min(620px,68%)!important;padding:10px 13px!important;border-radius:14px!important}
body.app-view.chat-view .message.mine{border-bottom-right-radius:5px!important}
body.app-view.chat-view .message:not(.mine){border-bottom-left-radius:5px!important}
body.app-view.chat-view .message-meta{align-items:center!important;gap:7px!important}
body.app-view.chat-view .message-meta time{margin-left:auto!important}
body.app-view.chat-view .message p{margin:5px 0 3px!important;line-height:1.45}
body.app-view.chat-view .message-self-actions{margin-top:3px!important}
body.app-view.chat-view .message-self-actions summary,
body.app-view.chat-view .message>details:not(.message-self-actions)>summary{min-height:28px!important;padding:2px 3px!important;font-size:.7rem!important;opacity:.72}
body.app-view.chat-view .reaction-row{gap:4px!important;margin-top:5px!important}
body.app-view.chat-view .reaction{min-width:30px!important;min-height:29px!important;height:29px!important;padding:2px 7px!important;font-size:.78rem!important;border-radius:8px!important}

body.app-view.chat-view .composer{
 display:grid!important;
 grid-template-columns:auto minmax(0,1fr) auto!important;
 grid-template-areas:"tools input send"!important;
 align-items:center!important;
 gap:8px!important;
 padding:8px 10px!important;
 margin:5px 10px 6px!important;
 border:1px solid #382747!important;
 border-radius:13px!important;
 background:linear-gradient(180deg,#120d19,#0b0810)!important;
 box-shadow:0 -6px 24px rgba(0,0,0,.16)!important
}
body.app-view.chat-view .composer .wink-bar{grid-area:tools!important;display:flex!important;gap:4px!important;align-items:center!important;margin:0!important;padding:0 8px 0 0!important;border:0!important;border-right:1px solid #34233f!important;flex-wrap:nowrap!important}
body.app-view.chat-view .composer .wink-bar button{min-width:36px!important;width:auto!important;height:36px!important;min-height:36px!important;padding:4px 8px!important;border-radius:9px!important;font-size:.78rem!important}
body.app-view.chat-view .composer textarea{grid-area:input!important;min-height:44px!important;max-height:70px!important;padding:10px 12px!important;border-radius:10px!important}
body.app-view.chat-view .composer>button{grid-area:send!important;min-width:82px!important;min-height:42px!important;height:42px!important;padding:7px 14px!important;border-radius:10px!important}

body.app-view .msn-app-footer{gap:10px!important;padding:0 14px!important;font-size:.68rem!important}
body.app-view .msn-app-footer>span:first-child{padding-right:10px!important;border-right:1px solid #352541!important}
body.app-view .msn-app-footer nav{gap:0!important}
body.app-view .msn-app-footer nav a{display:inline-flex!important;align-items:center!important;height:24px!important;padding:0 9px!important;border-right:1px solid #2c1f36!important}
body.app-view .msn-app-footer nav a:first-child{padding-left:2px!important}
body.app-view .msn-footer-shield{padding-left:10px!important;border-left:1px solid #352541!important}

@media(max-width:900px){
 :root{--xc-sidebar:190px!important}
 body.app-view.chat-view .message-list{padding-inline:14px!important}
 body.app-view.chat-view .message{max-width:82%!important}
 body.app-view.chat-view .composer .wink-bar button{padding-inline:6px!important}
}
@media(max-width:700px){
 body.app-view.chat-view .composer{grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"tools tools" "input send"!important}
 body.app-view.chat-view .composer .wink-bar{border-right:0!important;border-bottom:1px solid #34233f!important;padding:0 0 6px!important}
}
/* XorChat visibly refreshed shell v17 */
:root{--xc-sidebar:clamp(248px,16vw,286px)!important;--xc-footer-h:36px!important}
body.app-view{background:#08060b!important}
body.app-view .app-shell{background:linear-gradient(180deg,#0b0811,#08060b)!important}
body.app-view .sidebar{background:linear-gradient(180deg,#171020 0,#0f0b15 58%,#0b0810 100%)!important;border-right:1px solid #3b2850!important;box-shadow:18px 0 42px rgba(0,0,0,.2)!important}
body.app-view .sidebar>.brand-link{min-height:64px!important;padding:10px 14px!important;font-size:1.02rem!important;letter-spacing:.09em!important;background:linear-gradient(180deg,#6d28d9,#451875)!important;border-bottom:1px solid #2d104f!important;border-radius:0!important;overflow:visible!important}
body.app-view .sidebar>.brand-link::after{font-size:.8rem!important;color:#eadcff!important;opacity:.92}
body.app-view .sidebar>.prod-chip{margin:10px 12px 4px!important}
body.app-view .sidebar nav{padding:6px 9px 14px!important}
body.app-view .sidebar nav a{min-height:40px!important;border-radius:10px!important;padding:7px 10px!important}
body.app-view .sidebar nav a.active{background:linear-gradient(135deg,#2c1a3d,#201429)!important;border:1px solid #6d4790!important;box-shadow:inset 3px 0 #a855f7!important}
body.app-view .panel-header{min-height:76px!important;padding:12px 18px!important;background:linear-gradient(180deg,#6d28d9,#4c1d95)!important;border-bottom:1px solid #31145b!important;box-shadow:0 10px 28px rgba(0,0,0,.18)!important}
body.app-view .panel-header h1{font-size:1.55rem!important;color:#fff!important}
body.app-view .panel-header p{color:#e7d9f5!important}
body.app-view.chat-view .main-panel{background:#09070d!important}
body.app-view.chat-view .xc-connection{max-width:1060px!important;width:calc(100% - 24px)!important;align-self:center!important;margin:8px auto 0!important;border-radius:10px!important;background:#0e1b13!important;border-color:#2c7549!important}
body.app-view.chat-view .message-list{width:calc(100% - 24px)!important;max-width:1060px!important;align-self:center!important;margin:8px auto!important;padding:20px 24px!important;border:1px solid #34243f!important;border-radius:16px!important;background:radial-gradient(circle at 50% 0,rgba(124,58,237,.09),transparent 40%),#0c0911!important}
body.app-view.chat-view .message{max-width:min(660px,70%)!important;padding:11px 14px!important}
body.app-view.chat-view .message.mine{background:linear-gradient(145deg,#342047,#251631)!important;border-color:#704993!important}
body.app-view.chat-view .message:not(.mine){background:linear-gradient(145deg,#19131f,#120e18)!important;border-color:#3a2948!important}
body.app-view.chat-view .composer{width:calc(100% - 24px)!important;max-width:1060px!important;align-self:center!important;margin:0 auto 8px!important;padding:8px 10px!important;border:1px solid #4a315d!important;border-radius:14px!important;background:linear-gradient(180deg,#17101f,#0f0b15)!important;box-shadow:0 -8px 28px rgba(0,0,0,.16)!important}
body.app-view.chat-view .composer textarea{min-height:42px!important;max-height:64px!important;background:#08060b!important;border-color:#533768!important}
body.app-view.chat-view .composer .wink-bar{background:#110c18!important;border-radius:10px!important;padding:3px 8px 3px 3px!important}
body.app-view.chat-view .composer .wink-bar button{height:34px!important;min-height:34px!important;background:#21152c!important;border:1px solid #4f3762!important;box-shadow:none!important}
body.app-view.chat-view .composer>button{min-height:42px!important;height:42px!important;background:linear-gradient(180deg,#8b5cf6,#5b21b6)!important}
body.app-view.chat-view .reaction-row{opacity:.62!important}
body.app-view.chat-view .message:hover .reaction-row{opacity:1!important}
body.app-view.chat-view .reaction{min-width:28px!important;min-height:28px!important;height:28px!important;padding:2px 6px!important;background:#17101f!important;border-color:#4a315d!important}
body.app-view .msn-app-footer{height:var(--xc-footer-h)!important;min-height:var(--xc-footer-h)!important;background:#0a0710!important;border-top:1px solid #3b2850!important;color:#b9a9c9!important;font-size:.72rem!important;padding:0 16px!important}
body.app-view .msn-app-footer>span:first-child{font-weight:700!important;color:#e4d8ee!important}
body.app-view .msn-app-footer nav a{padding:0 12px!important;color:#cdbadd!important}
body.app-view .msn-footer-shield{color:#d2aef2!important;font-weight:800!important}
body.app-view:not(.chat-view) .main-panel{background:#0a0710!important}
body.app-view:not(.chat-view) .people-grid{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))!important;max-width:1180px!important;width:calc(100% - 36px)!important;margin:0 auto!important;padding:18px 0 26px!important;gap:16px!important}
body.app-view:not(.chat-view) .person-card{padding:16px!important;border-radius:16px!important;background:linear-gradient(145deg,#181220,#110d17)!important;border-color:#452f57!important}
body.app-view:not(.chat-view) .person-card>.row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
body.app-view:not(.chat-view) .main-panel>section.card,body.app-view:not(.chat-view) .admin-grid{max-width:1180px!important;width:calc(100% - 36px)!important;margin-left:auto!important;margin-right:auto!important}
@media(max-width:980px){:root{--xc-sidebar:210px!important}body.app-view.chat-view .message-list,body.app-view.chat-view .composer,body.app-view.chat-view .xc-connection{width:calc(100% - 16px)!important}body.app-view:not(.chat-view) .people-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))!important}}
@media(max-width:760px){:root{--xc-sidebar:72px!important}body.app-view .sidebar>.brand-link{justify-content:center!important;padding:8px!important}body.app-view .sidebar>.brand-link::after,body.app-view .sidebar>.brand-link span:not(.brand-mark),body.app-view .prod-chip,body.app-view .nav-title,body.app-view .nav-label,body.app-view .account>div,body.app-view .account form{display:none!important}body.app-view .sidebar nav a{justify-content:center!important}body.app-view .panel-header{min-height:62px!important;padding:9px 12px!important}body.app-view .panel-header h1{font-size:1.25rem!important}body.app-view.chat-view .message{max-width:86%!important}body.app-view .msn-app-footer nav a{padding:0 7px!important}}
/* XorChat UX refinement v18 */
body.app-view .xc-connection{width:max-content!important;max-width:none!important;min-width:96px!important;padding:5px 11px!important;border-radius:999px!important;font-size:.72rem!important;font-weight:800!important;letter-spacing:.01em!important;align-self:flex-start!important}
body.app-view .xc-connection::before{content:"●";margin-right:6px;color:#57e39b;font-size:.65rem}
body.app-view.chat-view .xc-connection{margin-left:max(12px,calc((100% - 1060px)/2 + 12px))!important}
body.app-view .msn-toolbar{gap:6px!important;padding:6px 10px!important;background:#0f0b15!important;border-bottom:1px solid #352541!important}
body.app-view .msn-toolbar button{min-height:34px!important;padding:6px 10px!important;border-radius:9px!important;background:#1b1224!important;border:1px solid #4b3560!important;box-shadow:none!important;font-size:.78rem!important;font-weight:750!important}
body.app-view .msn-toolbar button:hover{background:#251633!important;border-color:#765297!important}
body.app-view .msn-toolbar [data-call-mode="audio"]::before{content:"☎ ";opacity:.85}
body.app-view .msn-toolbar [data-call-mode="video"]::before{content:"▣ ";opacity:.85}
body.app-view .msn-toolbar [data-voice-message]::before{content:"◉ ";opacity:.85}
body.app-view .msn-toolbar [data-nudge]::before{content:"⚡ ";opacity:.9}

.people-toolbar{max-width:1180px;width:calc(100% - 36px);margin:14px auto 0;display:flex;align-items:end;justify-content:space-between;gap:14px}
.contact-search{display:grid;grid-template-columns:auto minmax(240px,420px);align-items:center;gap:10px;margin:0!important;color:#cdbadd!important;font-size:.78rem}
.contact-search input{min-height:40px!important;padding:8px 11px!important;border-radius:10px!important;background:#0b0810!important;border-color:#4a315d!important}
.people-count{color:#9d8eaa;font-size:.74rem;white-space:nowrap}
body.app-view:not(.chat-view) .person-card{display:flex!important;flex-direction:column!important;gap:12px!important;min-height:250px!important}
body.app-view:not(.chat-view) .person-main{display:grid!important;grid-template-columns:auto auto minmax(0,1fr)!important;grid-template-areas:"avatar presence name" "avatar . meta" "avatar . status"!important;column-gap:8px!important;row-gap:2px!important;align-items:center!important}
body.app-view:not(.chat-view) .person-main .avatar-emoji{grid-area:avatar;width:46px!important;height:46px!important;margin:0!important;font-size:1.45rem!important}
body.app-view:not(.chat-view) .person-main>.presence{grid-area:presence!important}
body.app-view:not(.chat-view) .person-main>strong{grid-area:name!important;font-size:.96rem!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.app-view:not(.chat-view) .person-main>small:first-of-type{grid-area:meta!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.app-view:not(.chat-view) .person-main .custom-status{grid-area:status!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.app-view:not(.chat-view) .person-group-row{margin-top:2px}
body.app-view:not(.chat-view) .person-group-form{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important;margin:0!important}
body.app-view:not(.chat-view) .person-group-form select{min-width:0!important;width:100%!important;min-height:36px!important}
body.app-view:not(.chat-view) .person-group-form button{width:auto!important;min-width:88px!important;min-height:36px!important;padding:6px 9px!important}
body.app-view:not(.chat-view) .person-actions-primary{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;margin-top:auto!important}
body.app-view:not(.chat-view) .person-actions-primary form{margin:0!important}
body.app-view:not(.chat-view) .person-actions-primary button{width:100%!important;min-height:40px!important}
body.app-view:not(.chat-view) .person-more{margin:0!important}
body.app-view:not(.chat-view) .person-more>summary{list-style:none;cursor:pointer;min-height:36px;display:flex;align-items:center;justify-content:center;border:1px solid #3f2b4f;border-radius:9px;background:#110d17;color:#bba8cb;font-size:.76rem;font-weight:750}
body.app-view:not(.chat-view) .person-more>summary::-webkit-details-marker{display:none}
body.app-view:not(.chat-view) .person-more[open]>summary{background:#1b1224;color:#e7d9f5;border-color:#654984}
body.app-view:not(.chat-view) .person-more-menu{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin-top:7px!important;padding:8px!important;border:1px solid #382747!important;border-radius:10px!important;background:#0d0a12!important}
body.app-view:not(.chat-view) .person-more-menu form{margin:0!important}
body.app-view:not(.chat-view) .person-more-menu button{width:100%!important;min-height:36px!important;padding:6px 8px!important;font-size:.75rem!important}
body.app-view:not(.chat-view) .favorite-contact{box-shadow:0 0 0 1px rgba(168,85,247,.25),0 12px 30px rgba(0,0,0,.12)!important}
body.app-view:not(.chat-view) .favorite-contact::before{content:"★ Favorite";align-self:flex-start;padding:3px 7px;border-radius:999px;background:#251633;border:1px solid #68488a;color:#dcbcf7;font-size:.62rem;font-weight:800}

body.app-view:not(.chat-view) .admin-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))!important}
body.app-view:not(.chat-view) .card{padding:20px!important}
body.app-view:not(.chat-view) .card h2{font-size:1.05rem!important;margin-bottom:6px!important}
body.app-view:not(.chat-view) .card p{margin-top:4px}
@media(max-width:760px){.people-toolbar{width:calc(100% - 20px);align-items:stretch;flex-direction:column}.contact-search{grid-template-columns:1fr}.people-count{align-self:flex-end}.person-more-menu{grid-template-columns:1fr!important}}
/* v18 compact connection override */
body.app-view.chat-view .xc-connection{
 width:max-content!important;
 max-width:none!important;
 min-width:96px!important;
 align-self:flex-start!important;
 margin:8px 0 0 max(12px,calc((100% - 1060px)/2 + 12px))!important;
 padding:5px 11px!important;
 border-radius:999px!important;
}
/* XorChat UX refinement v19 */
.people-search-wrap{display:flex;align-items:end;gap:12px;flex-wrap:wrap;min-width:0}
.contact-filter-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.contact-filter-chips button{min-height:34px!important;padding:5px 10px!important;border-radius:999px!important;background:#17101f!important;border:1px solid #463156!important;color:#bca9cc!important;font-size:.72rem!important;box-shadow:none!important}
.contact-filter-chips button:hover{background:#21152c!important;border-color:#68488a!important;color:#fff!important}
.contact-filter-chips button.active{background:linear-gradient(180deg,#7c3aed,#5b21b6)!important;border-color:#966ce0!important;color:#fff!important}
.people-count{padding:5px 9px;border:1px solid #392748;border-radius:999px;background:#100c16;color:#a997b5!important}
.person-card[hidden]{display:none!important}
.chat-jump-latest{position:absolute;right:24px;bottom:92px;z-index:25;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 11px;border:1px solid #6d4a89;border-radius:999px;background:rgba(26,16,35,.96);color:#eadcf7;font-size:.72rem;font-weight:800;box-shadow:0 10px 28px rgba(0,0,0,.28);backdrop-filter:blur(8px)}
.chat-jump-latest[hidden]{display:none!important}
.chat-jump-latest:hover{background:#2a1738}
.composer-char-count{position:absolute;right:104px;bottom:12px;color:#766b80;font-size:.66rem;pointer-events:none}
.composer-char-count.warn{color:#efb366}
.composer-char-count.danger{color:#ff7c98}
body.app-view.chat-view .composer{position:relative!important;padding-right:10px!important}
@media(max-width:760px){.people-search-wrap{align-items:stretch;flex-direction:column}.contact-filter-chips{width:100%}.contact-filter-chips button{flex:1 1 auto}.chat-jump-latest{right:14px;bottom:126px}.composer-char-count{right:88px;bottom:11px}}
/* Messenger-style live contact list v20 */
.sidebar-contacts-title{display:flex!important;align-items:center;justify-content:space-between;gap:8px}
.sidebar-contacts-title small{font-size:.62rem!important;text-transform:none!important;letter-spacing:0!important;color:#9f8bb5!important;white-space:nowrap}
.sidebar-contact-list{display:grid;gap:4px;margin:3px 0 8px}
body.app-view .sidebar nav a.sidebar-contact{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;align-items:center!important;gap:8px!important;min-height:58px!important;margin:2px 0!important;padding:6px 8px!important;border:1px solid transparent!important;border-radius:11px!important;background:transparent!important;color:#e9def6!important;text-decoration:none!important;transform:none!important}
body.app-view .sidebar nav a.sidebar-contact:hover{background:#1b1224!important;border-color:#49315c!important}
body.app-view .sidebar nav a.sidebar-contact.active{background:linear-gradient(135deg,#2c1a3d,#201429)!important;border-color:#704f8e!important;box-shadow:inset 3px 0 #a855f7!important}
.sidebar-contact-avatar{position:relative;width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#0b0810;border:1px solid #513768;overflow:visible;font-size:1.3rem}
.sidebar-contact-avatar>img{width:100%;height:100%;display:block;object-fit:cover;border-radius:9px}
.sidebar-contact-avatar>.presence{position:absolute;right:-2px;bottom:-2px;width:11px!important;height:11px!important;border-radius:50%;border:2px solid #110c18;box-shadow:none!important;background:#5ee29a}
.sidebar-contact-avatar>.presence.away{background:#f1bc50!important}
.sidebar-contact-avatar>.presence.busy{background:#ef667a!important}
.sidebar-contact-avatar>.presence.offline{background:#71717f!important}
.sidebar-contact-copy{min-width:0;display:grid;gap:1px}
.sidebar-contact-copy strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;line-height:1.2;color:#f5ecff}
.sidebar-contact-copy small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;line-height:1.22;color:#81758e}
.sidebar-contact-copy .sidebar-contact-status{font-size:.68rem;color:#bba8cc;font-style:italic}
.sidebar-contact>.count{align-self:start;margin-top:2px;min-width:20px;height:20px;display:grid;place-items:center;font-size:.62rem}
body.app-view .sidebar nav a.sidebar-contact.active .sidebar-contact-copy strong{color:#fff}
body.app-view .sidebar nav a.sidebar-contact.active .sidebar-contact-status{color:#dfc7f3}
@media(max-height:760px){
 body.app-view .sidebar nav a.sidebar-contact{min-height:50px!important;padding:5px 6px!important;grid-template-columns:34px minmax(0,1fr) auto!important}
 .sidebar-contact-avatar{width:34px;height:34px}
 .sidebar-contact-copy small:first-of-type{display:none}
}
@media(max-width:760px){
 .sidebar-contacts-title{display:none!important}
 .sidebar-contact-list{gap:3px;margin-top:6px}
 body.app-view .sidebar nav a.sidebar-contact{grid-template-columns:1fr!important;justify-items:center!important;min-height:46px!important;padding:4px!important}
 .sidebar-contact-avatar{width:36px;height:36px}
 .sidebar-contact-copy,.sidebar-contact>.count{display:none!important}
}
/* Premium XorChat call experience v21 */
.xcall-overlay{background:radial-gradient(circle at 50% 20%,rgba(124,58,237,.18),transparent 38%),rgba(4,3,7,.92)!important;backdrop-filter:blur(18px)!important;padding:16px!important}
.xcall-card{position:relative!important;width:min(940px,calc(100vw - 32px))!important;height:min(720px,calc(100dvh - 32px))!important;max-height:calc(100dvh - 32px)!important;padding:0!important;gap:0!important;overflow:hidden!important;border:1px solid #5a3b70!important;border-radius:24px!important;background:linear-gradient(180deg,#15101d,#0b0810)!important;box-shadow:0 34px 100px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.025)!important;grid-template-rows:auto minmax(0,1fr) auto auto auto!important}
.xcall-header{min-height:64px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:10px 14px 10px 16px!important;background:linear-gradient(180deg,rgba(63,31,91,.98),rgba(33,18,46,.98))!important;border-bottom:1px solid #4a305b!important;color:#fff!important}
.xcall-heading{display:flex;align-items:center;gap:11px;min-width:0}
.xcall-brand-mark{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:linear-gradient(145deg,#8b5cf6,#5b21b6);border:1px solid #a77bf2;box-shadow:0 8px 24px rgba(91,33,182,.3);font-weight:950}
.xcall-heading>div{min-width:0}
.xcall-heading strong{display:block!important;font-size:1.05rem!important;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xcall-heading small{display:flex!important;align-items:center;gap:5px!important;margin-top:3px!important;color:#cdbddd!important;font-size:.7rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xcall-lock{font-size:.72rem}
.xcall-close{width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;border:1px solid #684c7d!important;background:#24162f!important;color:#e7d9f5!important;font-size:1.25rem!important;box-shadow:none!important}
.xcall-close:hover{background:#342043!important}
.xcall-stage{position:relative!important;min-height:0!important;height:100%!important;margin:0!important;border-radius:0!important;overflow:hidden!important;background:radial-gradient(circle at 50% 38%,#2b1740 0,#130d1c 42%,#09070d 78%)!important;display:grid!important;place-items:center!important}
.xcall-stage video[data-remote-video]{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;background:#07060a!important;border:0!important}
.xcall-stage video[data-local-video]{position:absolute!important;z-index:5!important;right:18px!important;top:18px!important;bottom:auto!important;width:min(28%,210px)!important;height:auto!important;aspect-ratio:16/10!important;object-fit:cover!important;border-radius:14px!important;border:2px solid #a178d1!important;background:#08060b!important;box-shadow:0 14px 36px rgba(0,0,0,.45)!important}
.xcall-video-shade{position:absolute;z-index:2;inset:auto 0 0;height:38%;pointer-events:none;background:linear-gradient(transparent,rgba(5,3,8,.68))}
.xcall-voice-focus{position:relative;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;text-align:center;padding:24px}
.xcall-avatar-ring{position:relative;width:166px;height:166px;display:grid;place-items:center}
.xcall-avatar{position:relative!important;z-index:4!important;width:126px!important;height:126px!important;display:grid!important;place-items:center!important;border-radius:32px!important;overflow:hidden!important;background:linear-gradient(145deg,#281736,#130d1b)!important;border:2px solid #8c5eaa!important;box-shadow:0 18px 52px rgba(0,0,0,.42),0 0 0 8px rgba(124,58,237,.07)!important;font-size:4rem!important;filter:none!important}
.xcall-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;border:0!important;border-radius:29px!important}
.xcall-ring{position:absolute;inset:13px;border:1px solid rgba(168,85,247,.55);border-radius:50%;opacity:0;pointer-events:none}
.xcall-ring.ring-b{inset:-2px;border-color:rgba(196,181,253,.26)}
.xcall-voice-copy{display:grid;gap:5px}
.xcall-voice-copy strong{font-size:1.45rem;color:#f7efff;letter-spacing:-.02em}
.xcall-voice-copy small{color:#a996b8;font-size:.82rem}
.xcall-card[data-call-state="incoming"] .xcall-ring,.xcall-card[data-call-state="ringing"] .xcall-ring,.xcall-card[data-call-state="reconnecting"] .xcall-ring{opacity:1;animation:xcall-pulse-ring 1.8s ease-out infinite}
.xcall-card[data-call-state="incoming"] .ring-b,.xcall-card[data-call-state="ringing"] .ring-b{animation-delay:.55s}
@keyframes xcall-pulse-ring{0%{transform:scale(.8);opacity:.7}75%,100%{transform:scale(1.28);opacity:0}}
.xcall-card[data-call-state="connected"] .xcall-avatar{border-color:#5ee29a!important;box-shadow:0 18px 52px rgba(0,0,0,.42),0 0 0 7px rgba(94,226,154,.08)!important}
.xcall-card[data-call-state="reconnecting"] .xcall-avatar{border-color:#f1bc50!important}
.xcall-card[data-call-state="ended"] .xcall-avatar{filter:grayscale(.5)!important;opacity:.75}
.xcall-card[data-call-mode="audio"] .xcall-stage video{display:none!important}
.xcall-card[data-call-mode="audio"] .xcall-video-shade{display:none!important}
.xcall-card[data-call-mode="video"] .xcall-voice-focus{position:absolute;inset:0}
.xcall-card[data-call-mode="video"] .xcall-stage.has-remote .xcall-voice-focus{display:none!important}
.xcall-card[data-call-mode="video"] .xcall-stage:not(.has-remote) video[data-remote-video]{opacity:.18}
.xcall-card[data-call-mode="video"][data-call-state="incoming"] video[data-local-video],.xcall-card[data-call-mode="video"][data-call-state="ringing"] video[data-local-video]{opacity:0}
.xcall-call-info{display:flex;align-items:center;justify-content:center;gap:12px;min-height:42px;padding:5px 16px;border-top:1px solid #2f2039;background:#0e0a13}
.xcall-status,.xcall-elapsed{margin:0!important;min-height:0!important;font-size:.78rem!important}
.xcall-status{color:#d7c7e5!important;font-weight:750!important}
.xcall-elapsed{color:#8f809d!important}
.xcall-elapsed:not(:empty)::before{content:"•";margin-right:12px;color:#574563}
.xcall-settings{margin:0!important;padding:0 14px;background:#0e0a13;border-top:1px solid #24192c}
.xcall-settings>summary{width:max-content;margin:0 auto;min-height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#9e8dac;font-size:.7rem;font-weight:700;list-style:none}
.xcall-settings>summary::-webkit-details-marker{display:none}
.xcall-settings>summary::before{content:"⚙";margin-right:6px;color:#a77bd0}
.xcall-settings[open]>summary{color:#e0d2eb}
.xcall-devices{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:0 auto 10px!important;width:min(660px,100%)!important;padding:10px!important;border:1px solid #34233f;border-radius:12px;background:#0a0710}
.xcall-devices label{margin:0!important;gap:4px!important;color:#a99ab7!important;font-size:.7rem!important}
.xcall-devices select{min-height:36px!important;background:#110c18!important;border-color:#4a315d!important;color:#eee5f6!important}
.xcall-controls{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;min-height:78px!important;margin:0!important;padding:10px 16px 14px!important;background:#0a0710!important;border-top:1px solid #2c1e35!important}
.xcall-controls button{display:grid!important;grid-template-columns:auto auto!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-width:112px!important;min-height:48px!important;padding:8px 14px!important;border-radius:999px!important;border:1px solid #4c365d!important;background:#1b1224!important;color:#f2e9f8!important;font-size:.76rem!important;font-weight:800!important;box-shadow:0 8px 20px rgba(0,0,0,.16)!important}
.xcall-control-icon{font-size:1rem;line-height:1}
.xcall-controls button:hover{background:#281733!important;border-color:#765297!important;transform:translateY(-1px)}
.xcall-controls button.is-off{background:#352337!important;border-color:#8d667e!important;color:#f4ced9!important}
.xcall-controls .danger{min-width:122px!important;background:linear-gradient(180deg,#d94762,#a2203c)!important;border-color:#ec6a80!important;color:#fff!important}
.xcall-controls .call-accept,.xcall-controls .call-decline{min-width:158px!important;min-height:52px!important;font-size:.82rem!important}
.xcall-controls .call-accept{background:linear-gradient(180deg,#42d57d,#168a49)!important;border-color:#67e29a!important}
.xcall-controls .call-decline{background:linear-gradient(180deg,#e14a66,#9d233d)!important;border-color:#ef7187!important}
@media(max-height:720px){
 .xcall-card{height:calc(100dvh - 12px)!important;max-height:calc(100dvh - 12px)!important}
 .xcall-header{min-height:54px!important;padding-block:7px!important}
 .xcall-heading small{font-size:.64rem!important}
 .xcall-avatar-ring{width:134px;height:134px}
 .xcall-avatar{width:102px!important;height:102px!important;border-radius:26px!important;font-size:3.2rem!important}
 .xcall-avatar img{border-radius:24px!important}
 .xcall-voice-focus{gap:12px!important;padding:12px!important}
 .xcall-voice-copy strong{font-size:1.2rem}
 .xcall-controls{min-height:64px!important;padding:7px 12px 9px!important}
 .xcall-controls button{min-height:42px!important}
 .xcall-settings>summary{min-height:28px!important}
 .xcall-call-info{min-height:34px!important}
}
@media(max-width:700px){
 .xcall-overlay{padding:0!important}
 .xcall-card{width:100vw!important;height:100dvh!important;max-height:100dvh!important;border:0!important;border-radius:0!important}
 .xcall-heading small{max-width:66vw}
 .xcall-stage video[data-local-video]{right:10px!important;top:10px!important;width:32%!important;border-radius:10px!important}
 .xcall-controls{gap:7px!important;padding-inline:8px!important;flex-wrap:wrap!important}
 .xcall-controls button{min-width:0!important;flex:1 1 29%!important;padding-inline:9px!important}
 .xcall-controls .call-accept,.xcall-controls .call-decline{flex:1 1 42%!important}
 .xcall-devices{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){.xcall-ring{animation:none!important}}
/* XorChat Personal message + call polish v22 */
.personal-message-help{margin-top:-4px!important;margin-bottom:10px!important;color:#9c8cab!important}
.msn-personal-message{display:block;margin-top:3px;max-width:min(620px,72vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c9b1dd;font-size:.75rem;font-style:italic}
.sidebar-contact-status::before{content:"“";opacity:.5}
.sidebar-contact-status::after{content:"”";opacity:.5}
.xcall-personal-message{display:block;max-width:min(520px,72vw);margin:1px auto 0;color:#d7c2e7!important;font-size:.84rem!important;font-style:italic;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.xcall-personal-message[hidden]{display:none!important}
.xcall-personal-message::before{content:"“";opacity:.55}
.xcall-personal-message::after{content:"”";opacity:.55}
.xcall-participant-chip{position:absolute;z-index:6;left:18px;bottom:18px;max-width:min(58%,520px);display:none;grid-template-columns:1fr;gap:2px;padding:9px 12px;border:1px solid rgba(196,181,253,.28);border-radius:12px;background:rgba(10,7,16,.68);backdrop-filter:blur(12px);box-shadow:0 10px 28px rgba(0,0,0,.3);pointer-events:none}
.xcall-participant-chip strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:.86rem}
.xcall-participant-chip small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d3c0e2;font-size:.72rem;font-style:italic}
.xcall-participant-chip small[hidden]{display:none!important}
.xcall-card[data-call-mode="video"] .xcall-stage.has-remote .xcall-participant-chip{display:grid}
.xcall-card[data-call-mode="video"] .xcall-stage:fullscreen .xcall-participant-chip{left:24px;bottom:24px;font-size:1.05rem}
.xcall-card[data-call-mode="video"] .xcall-stage:fullscreen{width:100vw;height:100vh;background:#050307}
.xcall-card[data-call-mode="video"] .xcall-stage:fullscreen video[data-remote-video]{width:100vw!important;height:100vh!important}
.xcall-card[data-call-mode="video"] .xcall-stage:fullscreen video[data-local-video]{right:24px!important;top:24px!important;width:min(24vw,320px)!important}
.xcall-card[data-call-mode="video"] .xcall-stage:fullscreen .xcall-video-shade{height:26%}
.xcall-controls [data-fullscreen]{min-width:132px!important}
@media(max-width:700px){
 .xcall-personal-message{max-width:82vw;font-size:.76rem!important}
 .xcall-participant-chip{left:10px;bottom:10px;max-width:72%;padding:7px 9px}
 .xcall-participant-chip strong{font-size:.76rem}
 .xcall-participant-chip small{font-size:.66rem}
 .xcall-controls [data-fullscreen]{display:none!important}
 .msn-personal-message{max-width:62vw}
}
/* XorChat timeline/contact/call-quality polish v23 */
.timeline-divider,.unread-divider{display:flex;align-items:center;gap:10px;margin:12px 0;color:#8e7da0;font-size:.68rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.timeline-divider::before,.timeline-divider::after,.unread-divider::before,.unread-divider::after{content:"";height:1px;flex:1 1 auto;background:linear-gradient(90deg,transparent,#392748)}
.timeline-divider::after,.unread-divider::after{background:linear-gradient(90deg,#392748,transparent)}
.timeline-divider span,.unread-divider span{padding:3px 8px;border:1px solid #352442;border-radius:999px;background:#0f0b15}
.unread-divider{color:#d9bff1}
.unread-divider::before,.unread-divider::after{background:#6d3f91!important}
.unread-divider span{background:#251633;border-color:#744c94;color:#e5cff7}
.sidebar-contact.favorite .sidebar-contact-copy strong::before{content:"★ ";color:#d9a7ff}
.sidebar-contact.favorite{border-color:rgba(168,85,247,.2)!important}
.xcall-quality{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid #3f3049;border-radius:999px;background:#15101c;color:#c7b6d3;font-size:.68rem;font-weight:800}
.xcall-quality[hidden]{display:none!important}
.xcall-quality i{width:8px;height:8px;border-radius:50%;background:#6f6a74}
.xcall-quality[data-level="good"]{border-color:#2f6d4a;color:#b8eccc}.xcall-quality[data-level="good"] i{background:#57d58a}
.xcall-quality[data-level="fair"]{border-color:#806634;color:#ecd9a5}.xcall-quality[data-level="fair"] i{background:#e6b84f}
.xcall-quality[data-level="poor"]{border-color:#81414d;color:#f2bac4}.xcall-quality[data-level="poor"] i{background:#e15b70}
@media(max-width:700px){.timeline-divider,.unread-divider{margin:9px 0;font-size:.62rem}.xcall-quality{margin-left:0}}
/* XorChat chat-flow polish v24 */
.chat-search-panel{width:calc(100% - 24px);max-width:1060px;align-self:center;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:10px;margin:8px auto 0;padding:9px 11px;border:1px solid #4a315d;border-radius:13px;background:linear-gradient(180deg,#17101f,#0f0b15);box-shadow:0 10px 26px rgba(0,0,0,.16)}
.chat-search-panel[hidden]{display:none!important}
.chat-search-panel label{display:grid;grid-template-columns:auto minmax(220px,1fr);align-items:center;gap:9px;margin:0!important;color:#c8b6d7;font-size:.72rem;font-weight:750}
.chat-search-panel input{min-height:38px!important;padding:7px 10px!important;border-radius:9px!important;background:#09070d!important;border-color:#523766!important;color:#f4edfa!important}
.chat-search-count{min-width:76px;text-align:center;color:#9f90ad;font-size:.7rem;white-space:nowrap}
.chat-search-actions{display:flex;align-items:center;gap:5px}
.chat-search-actions button{min-width:38px!important;min-height:36px!important;padding:5px 9px!important;border-radius:9px!important}
.chat-search-button{white-space:nowrap}

body.app-view.chat-view .message-continuation{margin-top:-5px!important;border-top-color:#2a1d33!important}
body.app-view.chat-view .message-continuation .message-meta{justify-content:flex-end!important;min-height:12px!important}
body.app-view.chat-view .message-continuation .message-meta strong,
body.app-view.chat-view .message-continuation .message-meta .role-badge,
body.app-view.chat-view .message-continuation .message-meta .premium-badge,
body.app-view.chat-view .message-continuation .message-meta .profile-flair{display:none!important}
body.app-view.chat-view .message-continuation .message-meta time{opacity:.58!important;font-size:.62rem!important}
body.app-view.chat-view .message-continuation p{margin-top:1px!important}

.chat-search-active .message{transition:opacity .14s ease,filter .14s ease,box-shadow .14s ease,border-color .14s ease}
.chat-search-active .message:not(.search-match){opacity:.24!important;filter:saturate(.45)}
.chat-search-active .message.search-match{opacity:1!important;border-color:#6d4a8a!important}
.chat-search-active .message.search-current{border-color:#a66ee0!important;box-shadow:0 0 0 2px rgba(168,85,247,.2),0 10px 28px rgba(0,0,0,.18)!important}

.typing-indicator{min-height:28px!important;display:flex;align-items:center}
.typing-indicator[hidden]{display:none!important}
.typing-pill{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:5px 9px;border:1px solid #34243f;border-radius:999px;background:#100c16;color:#9e8daa;font-size:.68rem}
.typing-pill>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.typing-dots{display:inline-flex;align-items:center;gap:3px}
.typing-dots i{width:4px;height:4px;border-radius:50%;background:#c191eb;animation:xchat-typing-dot 1.15s ease-in-out infinite}
.typing-dots i:nth-child(2){animation-delay:.16s}
.typing-dots i:nth-child(3){animation-delay:.32s}
@keyframes xchat-typing-dot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-3px);opacity:1}}

.chat-jump-latest{max-width:min(260px,calc(100vw - 32px));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(max-width:760px){
 .chat-search-panel{width:calc(100% - 16px);grid-template-columns:1fr auto;margin-top:6px;padding:7px 8px}
 .chat-search-panel label{grid-column:1/-1;grid-template-columns:1fr;gap:4px}
 .chat-search-count{justify-self:start}
 .chat-search-actions{justify-self:end}
 body.app-view.chat-view .message-continuation{margin-top:-3px!important}
}
@media(prefers-reduced-motion:reduce){.typing-dots i{animation:none!important}}
/* XorChat contact/actions/accessibility polish v25 */
.sidebar-contact-search{display:block;margin:5px 8px 7px!important}
.sidebar-contact-search input{width:100%;min-height:34px!important;padding:6px 9px!important;border-radius:9px!important;background:#0b0810!important;border:1px solid #3f2b4f!important;color:#eee5f6!important;font-size:.72rem!important}
.sidebar-contact-search input::placeholder{color:#756982}
.sidebar-contact-section{margin:7px 4px 2px;padding:2px 5px;color:#857492;font-size:.6rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.sidebar-contact-section:first-child{margin-top:2px}
.sidebar-contact[hidden]{display:none!important}

body.app-view.chat-view .message{position:relative!important}
.message-quick-actions{position:absolute;right:8px;top:-11px;z-index:4;display:flex;opacity:0;transform:translateY(3px);pointer-events:none;transition:opacity .14s ease,transform .14s ease}
.message:hover .message-quick-actions,.message:focus-within .message-quick-actions{opacity:1;transform:none;pointer-events:auto}
.message-copy-action{min-height:26px!important;padding:3px 8px!important;border:1px solid #49325a!important;border-radius:999px!important;background:#17101f!important;color:#cdbbdd!important;font-size:.62rem!important;font-weight:800!important;box-shadow:0 5px 16px rgba(0,0,0,.22)!important}
.message-copy-action:hover{background:#281834!important;color:#fff!important}
.seen[hidden]{display:none!important}

:where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid #b778f0!important;outline-offset:2px!important;box-shadow:0 0 0 4px rgba(168,85,247,.16)!important}
.sidebar-contact:focus-visible{border-color:#9b6bc2!important}
.reaction:focus-visible,.message-copy-action:focus-visible{position:relative;z-index:6}

.xcall-stage.video-fit video[data-remote-video]{object-fit:contain!important;background:#050307!important}
.xcall-stage.video-fit .xcall-video-shade{opacity:.55}
.xcall-controls [data-video-fit]{min-width:118px!important}

@media(max-height:760px){
 .sidebar-contact-search{margin:3px 6px 5px!important}
 .sidebar-contact-search input{min-height:30px!important;padding:4px 7px!important}
 .sidebar-contact-section{margin-top:5px}
}
@media(max-width:760px){
 .sidebar-contact-search,.sidebar-contact-section{display:none!important}
 .message-quick-actions{right:5px;top:-9px}
}
@media(max-width:700px){
 .xcall-controls [data-video-fit]{display:none!important}
}
@media(prefers-reduced-motion:reduce){
 .message-quick-actions{transition:none!important}
}
/* XorChat workflow polish v26 */
body.app-view.chat-view .composer textarea{max-height:140px!important;resize:none!important;overflow-y:auto!important;padding-bottom:20px!important}
.composer-draft-status{position:absolute;left:126px;bottom:10px;max-width:44%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8f7ca0;font-size:.62rem;font-weight:700;pointer-events:none}
.composer-draft-status[hidden]{display:none!important}

.sidebar-contact-section{width:calc(100% - 8px);margin:7px 4px 2px!important;padding:3px 5px!important;display:flex!important;align-items:center;justify-content:space-between;gap:8px;border:0!important;background:transparent!important;color:#857492!important;font-size:.6rem!important;font-weight:850!important;letter-spacing:.08em;text-transform:uppercase;text-align:left;box-shadow:none!important;border-radius:7px!important}
.sidebar-contact-section::before{content:"▾";font-size:.65rem;color:#a986c5;transform-origin:center;transition:transform .14s ease}
.sidebar-contact-section[aria-expanded="false"]::before{transform:rotate(-90deg)}
.sidebar-contact-section small{margin-left:auto;color:#6f617b;font-size:.58rem;letter-spacing:0}
.sidebar-contact-section:hover{background:#17101f!important;color:#bca8cd!important}
.sidebar-contact-section:focus-visible{outline-offset:1px!important}

body.app-view:not(.chat-view) .person-call-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.app-view:not(.chat-view) .person-call-actions button{width:100%!important;min-height:36px!important;padding:6px 9px!important;border-radius:9px!important;font-size:.74rem!important;background:#15101d!important;border:1px solid #443055!important;color:#cebade!important}
body.app-view:not(.chat-view) .person-call-actions button:hover{background:#21152c!important;border-color:#765297!important;color:#fff!important}

.xcall-devices{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:820px!important;width:min(820px,100%)!important}
.xcall-devices [data-speaker-wrap][hidden]{display:none!important}

@media(max-width:900px){
 .xcall-devices{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .composer-draft-status{left:112px;max-width:38%}
}
@media(max-width:700px){
 body.app-view.chat-view .composer textarea{max-height:110px!important}
 .composer-draft-status{left:10px;right:94px;bottom:8px;max-width:none}
 .person-call-actions{grid-template-columns:1fr!important}
 .xcall-devices{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){.sidebar-contact-section::before{transition:none!important}}
/* XorChat interactive messenger polish v27 */
.message-reply-preview{display:grid;gap:2px;margin:4px 0 7px;padding:7px 9px;border-left:3px solid #8b5cf6;border-radius:7px;background:#110d17;cursor:pointer;max-width:100%}
.message-reply-preview small{color:#b992dd;font-size:.62rem;font-weight:800}
.message-reply-preview span{color:#c8bad3;font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reply-target-flash{animation:xor-reply-flash 1s ease}
@keyframes xor-reply-flash{0%,100%{box-shadow:inherit}35%{box-shadow:0 0 0 3px rgba(168,85,247,.4),0 0 28px rgba(168,85,247,.28)}}
.composer-reply{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px;border:1px solid #513767;border-radius:9px;background:#120d19}
.composer-reply[hidden]{display:none!important}
.composer-reply>span{min-width:0;display:grid;gap:1px}
.composer-reply small{color:#a991ba;font-size:.61rem}
.composer-reply strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dbc9e8;font-size:.7rem}
.composer-reply button{min-width:30px!important;width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;border-radius:50%!important}
.message-reply-action{min-height:26px!important;padding:3px 8px!important;border:1px solid #49325a!important;border-radius:999px!important;background:#17101f!important;color:#cdbbdd!important;font-size:.62rem!important;font-weight:800!important;box-shadow:0 5px 16px rgba(0,0,0,.22)!important}
.message-reply-action:hover{background:#281834!important;color:#fff!important}
.sidebar-draft-badge{display:inline-flex;width:max-content;margin-top:2px;padding:1px 5px;border:1px solid #5c3f72;border-radius:999px;background:#21152b;color:#d3b1ee;font-size:.56rem!important;font-style:normal!important;font-weight:800}
.xorwink-picker,.xorgame-picker{position:relative;margin:0!important}
.xorwink-picker>summary,.xorgame-picker>summary{list-style:none;display:flex;align-items:center;justify-content:center;height:34px;min-height:34px;padding:4px 9px;border:1px solid #4f3762;border-radius:9px;background:#21152c;color:#e4d8ef;font-size:.72rem;font-weight:800;cursor:pointer;white-space:nowrap}
.xorwink-picker>summary::-webkit-details-marker,.xorgame-picker>summary::-webkit-details-marker{display:none}
.xorwink-picker[open]>summary,.xorgame-picker[open]>summary{background:#342043;border-color:#805da2;color:#fff}
.xorwink-menu,.xorgame-menu{position:absolute;z-index:60;left:0;bottom:calc(100% + 8px);min-width:190px;display:grid;gap:5px;padding:8px;border:1px solid #5a3c6f;border-radius:12px;background:#0e0a14;box-shadow:0 18px 48px rgba(0,0,0,.42)}
.xorwink-menu button,.xorgame-menu button{width:100%!important;min-height:34px!important;justify-content:flex-start!important;padding:6px 9px!important;border-radius:8px!important;background:#181120!important;border:1px solid #3f2c4d!important;color:#e6d9ef!important;font-size:.71rem!important;text-align:left}
.xorwink-menu button:hover,.xorgame-menu button:hover{background:#291936!important;border-color:#775095!important}
.xorwink-stage{position:absolute;z-index:90;inset:76px 12px 45px;overflow:hidden;display:grid;place-items:center;border:1px solid rgba(159,93,214,.5);border-radius:18px;background:radial-gradient(circle at center,rgba(83,38,118,.7),rgba(7,5,10,.86) 62%);pointer-events:none;box-shadow:0 24px 80px rgba(0,0,0,.5)}
.xorwink-label{position:absolute;z-index:9;left:50%;bottom:16px;transform:translateX(-50%);max-width:80%;padding:6px 11px;border-radius:999px;background:rgba(13,9,18,.8);border:1px solid rgba(179,121,224,.35);color:#e4d4ef;font-size:.68rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xorwink-reduced{inset:auto 24px 78px;height:auto;min-height:62px;display:flex;align-items:center;justify-content:center;background:#181020}
.xorwink-reduced .xorwink-label{position:static;transform:none;max-width:none}
.xorwink-core{position:relative;z-index:4;display:grid;place-items:center;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,#b272e9,#6b21a8 48%,#2b0b48 70%);color:#fff;font-size:1.25rem;font-weight:950;letter-spacing:.1em;animation:xorwink-core-pop 2.2s ease both;box-shadow:0 0 60px rgba(168,85,247,.7)}
.xorwink-ring,.xorwink-shock-ring{position:absolute;width:130px;height:130px;border:2px solid rgba(200,148,240,.62);border-radius:50%;animation:xorwink-ring 1.6s ease-out infinite;animation-delay:calc(var(--i)*.25s)}
.xorwink-spark{position:absolute;left:50%;top:50%;font-size:1.2rem;color:#e6c6ff;--a:calc(var(--i)*20deg);animation:xorwink-spark 1.9s ease-out both;animation-delay:calc(var(--i)*.035s)}
.xorwink-heart{position:absolute;top:-12%;left:calc((var(--i)*37)%92*1%);font-size:clamp(1rem,3vw,2rem);animation:xorwink-fall 2.2s ease-in both;animation-delay:calc((var(--i)%7)*.12s)}
.xorwink-confetti{position:absolute;left:50%;top:50%;color:#dfb6ff;font-size:1.05rem;--a:calc(var(--i)*17deg);animation:xorwink-confetti 2.1s ease-out both}
.xorwink-party{position:relative;z-index:4;padding:14px 20px;border:2px solid #a855f7;border-radius:18px;background:#251139;color:#fff;font-size:1.35rem;font-weight:950;animation:xorwink-party 1.4s ease-in-out infinite alternate}
.xorwink-shock-core{position:relative;z-index:4;font-size:5rem;filter:drop-shadow(0 0 20px #c084fc);animation:xorwink-shock .65s ease-out 2}
.xorwink-shock-ring{width:90px;height:90px;animation:xorwink-shock-ring 1.2s ease-out both;animation-delay:calc(var(--i)*.13s)}
.xorwink-shock-host{animation:xorwink-host-shock .1s linear 6}
.xorwink-robot{display:grid;place-items:center;gap:4px;padding:18px}.xorwink-robot>span{font-size:5rem;animation:xorwink-robot-bob .8s ease-in-out infinite alternate}.xorwink-robot>b{position:absolute;margin:0 0 40px 100px;font-size:2.4rem;animation:xorwink-wave .35s ease-in-out infinite alternate;transform-origin:bottom left}.xorwink-robot small{color:#d7bee9;font-weight:900;letter-spacing:.1em}
@keyframes xorwink-core-pop{0%{transform:scale(.15) rotate(-15deg);opacity:0}25%{transform:scale(1.2) rotate(4deg);opacity:1}75%{transform:scale(1)}100%{transform:scale(.8);opacity:0}}
@keyframes xorwink-ring{0%{transform:scale(.4);opacity:.8}100%{transform:scale(4.4);opacity:0}}
@keyframes xorwink-spark{0%{transform:translate(-50%,-50%) rotate(var(--a)) translateX(0);opacity:1}100%{transform:translate(-50%,-50%) rotate(var(--a)) translateX(280px);opacity:0}}
@keyframes xorwink-fall{0%{transform:translateY(-10px) rotate(-12deg);opacity:0}15%{opacity:1}100%{transform:translateY(110vh) rotate(35deg);opacity:.2}}
@keyframes xorwink-confetti{0%{transform:translate(-50%,-50%) rotate(var(--a)) translateX(0) scale(.4);opacity:1}100%{transform:translate(-50%,-50%) rotate(var(--a)) translateX(320px) scale(1.4);opacity:0}}
@keyframes xorwink-party{from{transform:scale(.95) rotate(-2deg)}to{transform:scale(1.08) rotate(2deg);box-shadow:0 0 30px rgba(168,85,247,.6)}}
@keyframes xorwink-shock{0%{transform:scale(.5)}60%{transform:scale(1.5)}100%{transform:scale(1)}}
@keyframes xorwink-shock-ring{0%{transform:scale(.3);opacity:.9}100%{transform:scale(5);opacity:0}}
@keyframes xorwink-host-shock{0%,100%{transform:translate(0)}25%{transform:translate(-5px,2px)}75%{transform:translate(5px,-2px)}}
@keyframes xorwink-robot-bob{from{transform:translateY(-4px)}to{transform:translateY(6px)}}
@keyframes xorwink-wave{from{transform:rotate(-20deg)}to{transform:rotate(22deg)}}
.xorgame-panel{width:calc(100% - 24px);max-width:1060px;align-self:center;margin:8px auto 0;padding:10px 12px;border:1px solid #503566;border-radius:14px;background:linear-gradient(180deg,#17101f,#0e0a14);box-shadow:0 12px 32px rgba(0,0,0,.18)}
.xorgame-panel[hidden]{display:none!important}
.xorgame-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.xorgame-panel>header>div{display:grid;gap:2px;min-width:0}
.xorgame-panel>header strong{color:#f3e9fa;font-size:.85rem}.xorgame-panel>header small{color:#aa97b8;font-size:.68rem}
.xorgame-panel>header button{min-height:32px!important;padding:5px 9px!important;border-radius:8px!important;font-size:.68rem!important}
.xorgame-ttt{width:min(260px,80vw);aspect-ratio:1;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:0 auto}
.xorgame-cell{min-width:0!important;width:100%!important;height:auto!important;aspect-ratio:1;padding:0!important;border-radius:12px!important;background:#0c0911!important;border:1px solid #53386a!important;color:#e7c8ff!important;font-size:clamp(1.8rem,5vw,3rem)!important;font-weight:950!important}
.xorgame-cell:not(:disabled):hover{background:#281636!important;border-color:#9569bb!important}
.xorgame-cell:disabled{opacity:1!important}
.xorgame-legend{display:block;margin-top:7px;text-align:center;color:#887994;font-size:.62rem}
.xorgame-rps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:600px;margin:0 auto}
.xorgame-rps button{min-height:48px!important;border-radius:12px!important;background:#17101f!important;border:1px solid #52376a!important;color:#eadcf5!important}
.xorgame-rps-reveal{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:9px;color:#c8b1da;font-size:.7rem}
.xcall-controls [data-pip]{min-width:150px!important}
@media(max-width:760px){
 .xorwink-stage{inset:62px 8px 58px;border-radius:12px}
 .xorwink-menu,.xorgame-menu{left:auto;right:0;min-width:180px}
 .xorgame-panel{width:calc(100% - 16px);padding:8px}
 .xorgame-rps{grid-template-columns:1fr}
 .xorgame-rps button{min-height:40px!important}
 .message-reply-preview span{max-width:70vw}
}
@media(max-width:700px){.xcall-controls [data-pip]{display:none!important}}
@media(prefers-reduced-motion:reduce){
 .xorwink-stage *{animation:none!important}
 .xorwink-stage:not(.xorwink-reduced){display:none!important}
 .reply-target-flash{animation:none!important;box-shadow:0 0 0 2px rgba(168,85,247,.35)!important}
}
/* XorChat playful messaging + games polish v27 */
.message-reply-preview{display:grid;gap:2px;margin:2px 0 7px;padding:7px 9px;border-left:3px solid #8b5cf6;border-radius:8px;background:#120d19;color:#bda8ce;cursor:pointer}
.message-reply-preview small{font-size:.62rem;font-weight:800;color:#9e83b6}
.message-reply-preview span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;color:#d6c4e4}
.reply-target-flash{animation:xor-reply-flash .95s ease}
@keyframes xor-reply-flash{0%,100%{box-shadow:inherit}35%{box-shadow:0 0 0 3px rgba(168,85,247,.45),0 0 28px rgba(168,85,247,.3)}}

.composer-reply{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;border:1px solid #4d3560;border-left:3px solid #9b6bc2;border-radius:9px;background:#100b16}
.composer-reply[hidden]{display:none!important}
.composer-reply>span{min-width:0;display:grid;gap:1px}
.composer-reply small{font-size:.62rem;color:#9f8dac}
.composer-reply strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;color:#e7d7f2}
.composer-reply button{min-width:30px!important;width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;border-radius:50%!important}

.message-reply-action{min-height:26px!important;padding:3px 8px!important;border:1px solid #49325a!important;border-radius:999px!important;background:#17101f!important;color:#cdbbdd!important;font-size:.62rem!important;font-weight:800!important;box-shadow:0 5px 16px rgba(0,0,0,.22)!important}
.message-reply-action:hover{background:#281834!important;color:#fff!important}

.xorwink-picker,.xorgame-picker{position:relative;margin:0}
.xorwink-picker>summary,.xorgame-picker>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;min-height:34px;padding:5px 9px;border:1px solid #4b3560;border-radius:9px;background:#1b1224;color:#efe4f8;font-size:.74rem;font-weight:800}
.xorwink-picker>summary::-webkit-details-marker,.xorgame-picker>summary::-webkit-details-marker{display:none}
.xorwink-menu,.xorgame-menu{position:absolute;z-index:70;bottom:calc(100% + 7px);left:0;min-width:190px;display:grid;gap:5px;padding:8px;border:1px solid #55396a;border-radius:12px;background:#100b16;box-shadow:0 16px 38px rgba(0,0,0,.45)}
.xorwink-menu button,.xorgame-menu button{width:100%;min-height:34px;padding:6px 9px;border:1px solid #3e2a4d;border-radius:8px;background:#181020;color:#eadff2;text-align:left;font-size:.72rem}
.xorwink-menu button:hover,.xorgame-menu button:hover{background:#281735;border-color:#7b55a0}

.xorwink-stage{position:absolute;z-index:120;inset:0;display:grid;place-items:center;overflow:hidden;pointer-events:none;background:radial-gradient(circle at center,rgba(87,38,119,.26),rgba(4,3,7,.12) 48%,transparent 72%)}
.xorwink-stage>*{position:absolute}
.xorwink-label{left:50%;bottom:12%;transform:translateX(-50%);z-index:9;padding:6px 11px;border:1px solid rgba(208,179,237,.38);border-radius:999px;background:rgba(13,8,18,.72);backdrop-filter:blur(7px);color:#eee2f7;font-size:.72rem;font-weight:850;white-space:nowrap}
.xorwink-core{z-index:4;font-size:clamp(2.4rem,7vw,5.8rem);font-weight:950;letter-spacing:.08em;color:#efd5ff;text-shadow:0 0 18px #8b5cf6,0 0 46px #6d28d9;animation:xorwink-core-pop 2.1s cubic-bezier(.18,.9,.28,1)}
.xorwink-ring{width:120px;height:120px;border:3px solid rgba(193,125,255,.8);border-radius:50%;animation:xorwink-ring 1.65s ease-out infinite;}
.xorwink-spark{font-size:1.35rem;color:#dc9bff;animation:xorwink-spark 1.8s ease-out infinite;transform:rotate(var(--angle)) translateY(-26px)}
.xorwink-heart{top:-12%;font-size:clamp(1.1rem,3vw,2rem);animation-name:xorwink-fall;animation-timing-function:linear;animation-iteration-count:infinite}
.xorwink-confetti{top:50%;left:50%;font-size:1.25rem;animation:xorwink-confetti 1.75s ease-out infinite}
.xorwink-party{z-index:5;font-size:clamp(1.8rem,5vw,4rem);font-weight:950;color:#fff0b0;text-shadow:0 0 22px #f59e0b;animation:xorwink-party 1.2s ease-in-out infinite alternate}
.xorwink-shock-core{z-index:5;font-size:clamp(3rem,9vw,7rem);filter:drop-shadow(0 0 18px #fbbf24);animation:xorwink-shock-core .55s ease-out 2}
.xorwink-shock-ring{width:90px;height:90px;border:3px solid rgba(251,191,36,.8);border-radius:50%;animation:xorwink-shock-ring 1.15s ease-out infinite}
.xorwink-robot{display:grid;place-items:center;gap:3px;animation:xorwink-robot 1.8s cubic-bezier(.2,.9,.3,1)}
.xorwink-robot span{position:static;font-size:clamp(4rem,10vw,8rem)}.xorwink-robot b{position:absolute;right:-30%;top:15%;font-size:2.8rem;animation:xorwink-wave .34s ease-in-out infinite alternate}.xorwink-robot small{position:static;padding:5px 9px;border-radius:7px;background:#17101f;color:#d8c6e7;font-weight:900;letter-spacing:.08em}
.xorwink-reduced{inset:12px;place-items:end center;background:transparent}.xorwink-reduced .xorwink-label{position:static;transform:none;margin-bottom:12px}
.xorwink-shock-host{animation:xorwink-host-shake .11s linear 6}
@keyframes xorwink-core-pop{0%{transform:scale(.15) rotate(-16deg);opacity:0}25%{transform:scale(1.14) rotate(3deg);opacity:1}70%{transform:scale(1)}100%{transform:scale(.92);opacity:0}}
@keyframes xorwink-ring{0%{transform:scale(.25);opacity:.85}100%{transform:scale(6.5);opacity:0}}
@keyframes xorwink-spark{0%{opacity:0;transform:rotate(var(--angle)) translateY(-20px) scale(.4)}30%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateY(-270px) scale(1.2)}}
@keyframes xorwink-fall{0%{transform:translateY(-10vh) rotate(-12deg);opacity:0}10%{opacity:1}100%{transform:translateY(110vh) rotate(28deg);opacity:.1}}
@keyframes xorwink-confetti{0%{transform:translate(-50%,-50%) rotate(0) scale(.3);opacity:1}100%{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(560deg) scale(1);opacity:0}}
@keyframes xorwink-party{from{transform:scale(.92) rotate(-2deg)}to{transform:scale(1.08) rotate(2deg)}}
@keyframes xorwink-shock-core{0%{transform:scale(.4);opacity:.2}45%{transform:scale(1.35);opacity:1}100%{transform:scale(1);opacity:.8}}
@keyframes xorwink-shock-ring{0%{transform:scale(.2);opacity:.85}100%{transform:scale(7.5);opacity:0}}
@keyframes xorwink-host-shake{0%,100%{transform:translate(0)}25%{transform:translate(-4px,2px)}75%{transform:translate(4px,-2px)}}
@keyframes xorwink-robot{0%{transform:translateY(80vh) scale(.4)}35%{transform:translateY(0) scale(1.05)}80%{transform:translateY(0) scale(1)}100%{transform:translateY(-85vh) scale(.7)}}
@keyframes xorwink-wave{from{transform:rotate(-22deg)}to{transform:rotate(24deg)}}

.xorgame-panel{width:calc(100% - 24px);max-width:1060px;align-self:center;margin:8px auto 0;padding:10px 12px;border:1px solid #49315d;border-radius:14px;background:linear-gradient(180deg,#15101d,#0e0a14);box-shadow:0 12px 30px rgba(0,0,0,.16)}
.xorgame-panel[hidden]{display:none!important}
.xorgame-panel header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.xorgame-panel header>div{min-width:0;display:grid;gap:2px}.xorgame-panel header strong{font-size:.9rem;color:#f2e8f8}.xorgame-panel header small{color:#a994b8;font-size:.7rem}
.xorgame-panel header button{min-height:32px!important;padding:5px 9px!important}
.xorgame-ttt{display:grid;grid-template-columns:repeat(3,56px);gap:6px;justify-content:center}
.xorgame-cell{width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;padding:0!important;border:1px solid #5d4172!important;border-radius:11px!important;background:#0b0810!important;color:#e8d6f5!important;font-size:1.5rem!important;font-weight:950!important}
.xorgame-cell:not(:disabled):hover{background:#261532!important;border-color:#9a68c2!important}
.xorgame-legend{display:block;margin-top:7px;text-align:center;color:#8e7da0;font-size:.64rem}
.xorgame-rps{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.xorgame-rps button{min-width:120px!important;min-height:42px!important;border-radius:999px!important}
.xorgame-rps-reveal{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:8px;color:#cdbbdd;font-size:.72rem}

.sidebar-draft-badge{display:inline-flex!important;width:max-content;margin-top:2px;padding:1px 5px;border:1px solid #69438a;border-radius:999px;background:#251633;color:#dcbcf7;font-size:.55rem;font-style:normal;font-weight:850;letter-spacing:.03em}

.xcall-controls [data-pip]{min-width:150px!important}

@media(max-width:760px){
 .xorwink-menu,.xorgame-menu{left:auto;right:0;min-width:180px}
 .xorgame-panel{width:calc(100% - 16px)}
 .xorgame-ttt{grid-template-columns:repeat(3,50px)}.xorgame-cell{width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important}
 .xorgame-rps button{min-width:96px!important}
}
@media(max-width:700px){.xcall-controls [data-pip]{display:none!important}}
@media(prefers-reduced-motion:reduce){
 .xorwink-stage:not(.xorwink-reduced){display:none!important}
 .reply-target-flash{animation:none!important;outline:2px solid #a66ee0}
}
/* XorWinks expansion v27b */
.xorwink-menu{grid-template-columns:repeat(2,minmax(0,1fr));min-width:340px;max-height:min(62vh,430px);overflow:auto;scrollbar-width:thin}
.xorwink-menu button{min-width:0}
.xorwink-kiss,.xorwink-star,.xorwink-snow,.xorwink-ghost,.xorwink-firework{position:absolute;z-index:4;will-change:transform,opacity}
.xorwink-kiss{font-size:clamp(1.4rem,3.5vw,2.4rem);filter:drop-shadow(0 0 8px rgba(244,114,182,.65))}
.xorwink-star{font-size:clamp(1rem,2.7vw,2rem);color:#fde68a;text-shadow:0 0 10px #facc15}
.xorwink-firework{font-size:1.55rem;text-shadow:0 0 12px currentColor}
.xorwink-rainbow{z-index:5;font-size:clamp(5rem,16vw,11rem);filter:drop-shadow(0 0 28px rgba(96,165,250,.55))}
.xorwink-snow{font-size:clamp(.9rem,2.8vw,1.8rem);color:#e0f2fe;filter:drop-shadow(0 0 7px rgba(186,230,253,.7))}
.xorwink-ghost{font-size:clamp(2rem,5vw,3.6rem);filter:drop-shadow(0 0 12px rgba(216,180,254,.5))}
.xorwink-heart{will-change:transform,opacity}
@media(max-width:760px){
 .xorwink-menu{grid-template-columns:1fr;min-width:210px;max-width:min(78vw,260px);max-height:54vh}
}
/* XorGames end-session controls */
.xorgame-header-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.xorgame-header-actions button{min-height:32px!important;padding:5px 9px!important;border-radius:8px!important;font-size:.68rem!important}
.xorgame-end{border-color:#70404b!important;background:#271219!important;color:#f3bdc7!important}
.xorgame-end:hover{background:#3a1822!important;border-color:#a25161!important;color:#fff!important}
.xorgame-panel[data-game-status="ended"]{border-color:#4c384d!important}
.xorgame-panel[data-game-status="ended"] .xorgame-cell,
.xorgame-panel[data-game-status="ended"] .xorgame-rps button{filter:saturate(.45);opacity:.72}
@media(max-width:760px){.xorgame-header-actions{width:100%;justify-content:stretch}.xorgame-header-actions button{flex:1 1 auto}}
/* XorGames arcade picker v27 */
.xorgame-menu{width:min(520px,calc(100vw - 32px))!important;min-width:0!important;max-height:min(620px,72vh);overflow:auto!important;display:block!important;padding:10px!important;border:1px solid #684582!important;border-radius:16px!important;background:linear-gradient(180deg,#17101f,#0b0810)!important;box-shadow:0 24px 64px rgba(0,0,0,.52)!important}
.xorgame-menu-head{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:4px 4px 10px;border-bottom:1px solid #34243e;margin-bottom:10px}
.xorgame-menu-head strong{font-size:.9rem;color:#f6edfc}.xorgame-menu-head small{font-size:.64rem;color:#9d89ad}
.xorgame-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.xorgame-card-grid>button{position:relative!important;display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;min-height:64px!important;padding:9px 10px!important;border-radius:12px!important;background:linear-gradient(180deg,#1b1224,#120d18)!important;border:1px solid #453054!important;color:#efe5f7!important;text-align:left!important;box-shadow:none!important}
.xorgame-card-grid>button:hover{background:linear-gradient(180deg,#281735,#1a1024)!important;border-color:#8a5bae!important;transform:translateY(-1px)}
.xorgame-card-grid>button>span:not(.xorgame-icon){min-width:0;display:grid;gap:2px}
.xorgame-card-grid>button b{font-size:.76rem;line-height:1.15;color:#f7effc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.xorgame-card-grid>button small{font-size:.61rem;color:#9887a6;line-height:1.2}
.xorgame-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#0b0810;border:1px solid #4d3560;font-size:1.4rem}
.xorgame-card-grid>button.xorgame-competitive::after{content:"RACE";position:absolute;right:8px;top:7px;padding:2px 5px;border-radius:999px;background:#2e173f;border:1px solid #704a91;color:#dcbcf6;font-size:.49rem;font-weight:900;letter-spacing:.06em}
.xorgame-card-grid>button:last-child{grid-column:1/-1}
.xorgame-picker[open]>summary{background:linear-gradient(180deg,#382047,#281635)!important;border-color:#8e61af!important;box-shadow:0 0 0 2px rgba(168,85,247,.1)}
.xorgame-panel{transition:opacity .18s ease,transform .18s ease}
.xorgame-panel.xorgame-closing{opacity:0;transform:translateY(-6px)}
@media(max-width:760px){
 .xorgame-menu{left:auto!important;right:0!important;width:min(360px,calc(100vw - 20px))!important;max-height:66vh}
 .xorgame-card-grid{grid-template-columns:1fr}
 .xorgame-card-grid>button:last-child{grid-column:auto}
 .xorgame-card-grid>button{min-height:58px!important;grid-template-columns:38px minmax(0,1fr)!important;padding:7px 8px!important}
 .xorgame-icon{width:38px;height:38px;font-size:1.2rem}
}
/* v27 closed picker precedence */
.xorwink-picker:not([open])>.xorwink-menu,
.xorgame-picker:not([open])>.xorgame-menu{display:none!important}
/* XorChat Fun hub + DM density polish v27 */
body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr) 66px!important}
body.dm-view .msn-avatar-rail{width:66px!important;padding:8px 5px!important;gap:8px!important;overflow:hidden!important}
body.dm-view .msn-rail-avatar{padding:5px!important;border-radius:10px!important}
body.dm-view .msn-rail-avatar>span{width:44px!important;height:44px!important;margin-bottom:0!important;font-size:1.35rem!important}
body.dm-view .msn-rail-avatar small{display:none!important}
body.dm-view .msn-rail-badge{margin-top:auto!important;transform:scale(.84);transform-origin:center bottom}
body.dm-view .msn-dm-main .message-list,
body.dm-view .msn-dm-main .composer,
body.dm-view .msn-dm-main .xc-connection,
body.dm-view .msn-dm-main .chat-search-panel,
body.dm-view .msn-dm-main .xorgame-panel{max-width:none!important;width:calc(100% - 16px)!important}
body.dm-view .message-list{margin:6px 8px!important;padding:16px 18px!important}
body.dm-view .message-list .empty-state{min-height:180px;display:grid;place-content:center;justify-items:center;text-align:center;gap:5px;color:#8f809d}
body.dm-view .message-list .empty-state strong{color:#d9c9e6;font-size:.92rem}
body.dm-view .message-list .empty-state span{max-width:460px;font-size:.75rem}
body.dm-view .composer{margin:5px 8px 7px!important}

.msn-toolbar{position:relative}
.xorfun-picker{position:relative;display:inline-block}
.xorfun-picker>summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 10px;border:1px solid #4b3560;border-radius:9px;background:#1b1224;color:#f0e6f8;font-size:.78rem;font-weight:780;cursor:pointer;user-select:none}
.xorfun-picker>summary::-webkit-details-marker{display:none}
.xorfun-picker[open]>summary{background:#2a1838;border-color:#8c62ad;color:#fff}
.xorfun-menu{position:absolute;z-index:80;top:calc(100% + 8px);right:0;width:min(760px,calc(100vw - 300px));max-height:min(620px,72vh);overflow:auto;display:grid;grid-template-columns:1fr 1.25fr 1.45fr;gap:10px;padding:12px;border:1px solid #5a3d6e;border-radius:16px;background:linear-gradient(180deg,#17101f,#0c0911);box-shadow:0 24px 70px rgba(0,0,0,.48)}
.xorfun-section{min-width:0;padding:10px;border:1px solid #34233f;border-radius:12px;background:#100b16}
.xorfun-section>header{display:grid;gap:2px;margin-bottom:8px}
.xorfun-section>header strong{font-size:.82rem;color:#f3e9fb}
.xorfun-section>header small{font-size:.65rem;color:#8f7f9e}
.xorfun-grid{display:grid;grid-template-columns:1fr;gap:6px}
.xorfun-grid button,.xorfun-gif-button{display:flex!important;align-items:center;justify-content:flex-start;gap:7px;width:100%!important;min-height:36px!important;padding:6px 9px!important;border:1px solid #443055!important;border-radius:9px!important;background:#181020!important;color:#ddccea!important;font-size:.72rem!important;font-weight:720!important;text-align:left;cursor:pointer}
.xorfun-grid button:hover,.xorfun-gif-button:hover{background:#281735!important;border-color:#795397!important;color:#fff!important}
.xorfun-gif-button span{display:block;width:100%}
.xorfun-menu .xorgame-menu button{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important}
.xorfun-menu .xorgame-icon{font-size:1.15rem}
.xorfun-menu .xorgame-menu button>span:last-child{display:grid;gap:1px}
.xorfun-menu .xorgame-menu b{font-size:.72rem}
.xorfun-menu .xorgame-menu small{font-size:.6rem;color:#8f809d}

.gif-message{margin:5px 0 0;display:grid;gap:4px}
.gif-message img{display:block;max-width:min(420px,100%);max-height:320px;object-fit:contain;border-radius:12px;border:1px solid #4a315d;background:#08060b}
.gif-message figcaption{font-size:.62rem;color:#7f718a}
.gif-upload-button.sending{opacity:.6;pointer-events:none}

.message-reply-preview{display:grid;gap:2px;margin:3px 0 6px;padding:6px 8px;border-left:3px solid #8d5caf;border-radius:7px;background:#100b16;cursor:pointer}
.message-reply-preview small{font-size:.6rem;color:#9e8bad}
.message-reply-preview span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d7c8e3;font-size:.7rem}
.reply-target-flash{animation:xor-reply-flash .95s ease}
@keyframes xor-reply-flash{0%,100%{box-shadow:inherit}40%{box-shadow:0 0 0 3px rgba(192,132,252,.45),0 0 30px rgba(168,85,247,.28)}}

.sidebar-draft-badge{display:inline-flex;align-items:center;width:max-content;margin-top:2px;padding:1px 5px;border-radius:999px;background:#2a1837;border:1px solid #62417a;color:#d9b8ef;font-size:.56rem;font-weight:800;font-style:normal}

.xorgame-panel{align-self:center;margin:7px auto 0;padding:10px 12px;border:1px solid #4a315d;border-radius:13px;background:linear-gradient(180deg,#15101c,#0e0a14);box-shadow:0 10px 28px rgba(0,0,0,.16)}
.xorgame-panel[hidden]{display:none!important}
.xorgame-panel>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.xorgame-panel>header>div:first-child{display:grid;gap:2px}
.xorgame-panel>header strong{font-size:.86rem;color:#eee4f6}
.xorgame-panel>header small{font-size:.66rem;color:#9d8aaa}

.xorwink-stage{position:absolute;z-index:120;inset:0;overflow:hidden;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle at 50% 45%,rgba(91,33,182,.20),rgba(4,3,7,.08) 50%,rgba(4,3,7,.20));border-radius:inherit}
.xorwink-label{position:absolute;top:18px;left:50%;transform:translateX(-50%);max-width:80%;padding:6px 10px;border:1px solid rgba(192,132,252,.38);border-radius:999px;background:rgba(12,8,18,.76);backdrop-filter:blur(8px);color:#eadcf7;font-size:.72rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xorwink-core{position:relative;z-index:3;font-size:3rem;font-weight:950;color:#ead1ff;text-shadow:0 0 28px #a855f7}
.xorwink-ring,.xorwink-shock-ring{position:absolute;width:110px;height:110px;border:2px solid #a855f7;border-radius:50%;animation:xor-wink-ring 1.25s ease-out forwards}
.xorwink-spark{position:absolute;font-size:1.2rem;color:#d8b4fe;animation:xor-wink-spark 1.45s ease-out forwards;transform:rotate(var(--angle)) translateX(0)}
.xorwink-party,.xorwink-shock-core,.xorwink-rainbow{font-size:2.6rem;font-weight:900;text-shadow:0 0 28px currentColor}
.xorwink-heart,.xorwink-kiss,.xorwink-star,.xorwink-snow,.xorwink-ghost,.xorwink-firework{position:absolute;font-size:1.45rem}
.xorwink-robot{display:grid;grid-template-columns:auto auto;align-items:center;gap:4px;font-size:4rem}
.xorwink-robot small{grid-column:1/-1;text-align:center;font-size:.78rem;color:#d8b4fe;font-weight:900}
.xorwink-shock-host{animation:xor-wink-shake .11s linear 6}
.xorwink-reduced{background:rgba(10,7,15,.82)}
.xorwink-reduced>*:not(.xorwink-label){display:none!important}
@keyframes xor-wink-ring{0%{transform:scale(.15);opacity:.95}100%{transform:scale(4.8);opacity:0}}
@keyframes xor-wink-spark{0%{transform:rotate(var(--angle)) translateX(0) scale(.2);opacity:0}15%{opacity:1}100%{transform:rotate(var(--angle)) translateX(250px) scale(1.2);opacity:0}}
@keyframes xor-wink-shake{0%,100%{transform:none}25%{transform:translate(-5px,2px)}75%{transform:translate(5px,-2px)}}

@media(max-width:1150px){
 body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr)!important}
 body.dm-view .msn-avatar-rail{display:none!important}
 .xorfun-menu{width:min(680px,calc(100vw - 230px));grid-template-columns:1fr 1fr}
 .xorfun-section.xorfun-gif{grid-column:1/-1}
}
@media(max-width:760px){
 .xorfun-menu{position:fixed;left:8px;right:8px;top:auto;bottom:64px;width:auto;max-height:68vh;grid-template-columns:1fr;padding:9px}
 .xorfun-section.xorfun-gif{grid-column:auto}
 .gif-message img{max-width:100%;max-height:240px}
 .xorwink-label{top:10px;max-width:92%}
}
@media(prefers-reduced-motion:reduce){
 .reply-target-flash,.xorwink-stage *{animation:none!important;transition:none!important}
 .xorwink-stage:not(.xorwink-reduced){background:rgba(10,7,15,.82)}
}
/* v27 geometry corrections */
body.dm-view .msn-avatar-rail{width:66px!important;box-sizing:border-box!important}
body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr) 66px!important}
.xorfun-menu{position:fixed!important;left:50%!important;right:auto!important;top:118px!important;transform:translateX(-50%)!important;width:min(760px,calc(100vw - 32px))!important;max-width:calc(100vw - 32px)!important}
@media(max-width:1150px){
 .xorfun-menu{width:min(700px,calc(100vw - 24px))!important;max-width:calc(100vw - 24px)!important}
}
@media(max-width:760px){
 .xorfun-menu{left:8px!important;right:8px!important;top:auto!important;bottom:64px!important;transform:none!important;width:auto!important;max-width:none!important}
}
/* v27 mobile Fun menu containment fix */
@media(max-width:760px){
  .msn-toolbar{position:relative!important}
  .xorfun-picker{position:static!important}
  .xorfun-picker[open] .xorfun-menu{
    position:absolute!important;
    left:8px!important;
    right:8px!important;
    top:calc(100% + 6px)!important;
    bottom:auto!important;
    width:auto!important;
    max-height:calc(100dvh - 150px)!important;
    overflow:auto!important;
  }
}
/* v27 mobile Messenger toolbar + Fun containment */
@media(max-width:760px){
  body.dm-view .panel-header.msn-messenger-bar{position:relative!important;overflow:visible!important}
  body.dm-view .msn-toolbar{
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:flex!important;
    flex-wrap:wrap!important;
    gap:5px!important;
  }
  body.dm-view .msn-toolbar>button,
  body.dm-view .xorfun-picker>summary{
    min-height:30px!important;
    padding:4px 7px!important;
    font-size:.7rem!important;
  }
  .xorfun-picker{position:static!important}
  .xorfun-picker[open] .xorfun-menu{
    position:absolute!important;
    left:8px!important;
    right:8px!important;
    top:calc(100% + 6px)!important;
    bottom:auto!important;
    width:auto!important;
    max-height:calc(100dvh - 170px)!important;
    overflow:auto!important;
  }
}
/* XorChat Fun/game layout repair v28 */
body.dm-view .msn-toolbar{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  min-height:46px!important;
  padding:6px 10px!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  scrollbar-width:thin;
}
body.dm-view .msn-toolbar>button,
body.dm-view .msn-toolbar>.xorfun-picker>summary{
  flex:0 0 auto!important;
  min-height:34px!important;
  padding:6px 10px!important;
  white-space:nowrap!important;
}
body.dm-view .msn-toolbar .voice-note-status{flex:0 0 auto!important}
body.dm-view .msn-toolbar .storage-state{margin-left:auto!important;flex:0 0 auto!important;white-space:nowrap!important;max-width:none!important}

/* Fun is one controlled popover, not a collection of nested absolute menus. */
body.dm-view .xorfun-picker{position:static!important;flex:0 0 auto!important}
body.dm-view .xorfun-picker[open]>.xorfun-menu{
  position:fixed!important;
  z-index:500!important;
  left:50%!important;
  right:auto!important;
  top:146px!important;
  bottom:auto!important;
  transform:translateX(-50%)!important;
  width:min(760px,calc(100vw - 40px))!important;
  max-width:760px!important;
  max-height:min(620px,calc(100dvh - 190px))!important;
  overflow:auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.08fr) minmax(0,1.3fr)!important;
  gap:10px!important;
  padding:12px!important;
  border:1px solid #694782!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#17101f,#0c0911)!important;
  box-shadow:0 28px 90px rgba(0,0,0,.62)!important;
}

/* Critical: neutralize the old standalone Wink/Game popup rules when nested inside Fun. */
body.dm-view .xorfun-menu .xorwink-menu,
body.dm-view .xorfun-menu .xorgame-menu{
  position:static!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  max-height:none!important;
  overflow:visible!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.dm-view .xorfun-menu .xorwink-menu{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:6px!important;
}
body.dm-view .xorfun-menu .xorgame-menu{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
}
body.dm-view .xorfun-section{
  min-width:0!important;
  padding:10px!important;
  border:1px solid #34243f!important;
  border-radius:12px!important;
  background:#100b16!important;
}
body.dm-view .xorfun-section>header{margin:0 0 9px!important}
body.dm-view .xorfun-section>header strong{display:block!important;font-size:.82rem!important;line-height:1.15!important}
body.dm-view .xorfun-section>header small{display:block!important;margin-top:2px!important;font-size:.64rem!important;line-height:1.25!important;color:#9683a6!important}
body.dm-view .xorfun-grid button,
body.dm-view .xorfun-gif-button{
  min-width:0!important;
  width:100%!important;
  min-height:36px!important;
  padding:6px 8px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:normal!important;
  line-height:1.15!important;
}
body.dm-view .xorfun-menu .xorgame-menu button{
  grid-template-columns:34px minmax(0,1fr)!important;
  min-height:48px!important;
  padding:7px 8px!important;
}
body.dm-view .xorfun-menu .xorgame-icon{width:34px!important;height:34px!important;font-size:1.05rem!important}
body.dm-view .xorfun-menu .xorgame-menu b{font-size:.7rem!important}
body.dm-view .xorfun-menu .xorgame-menu small{font-size:.58rem!important;line-height:1.15!important}

/* Keep active games useful without pushing chat off-screen. */
body.dm-view .msn-dm-main .xorgame-panel{
  width:calc(100% - 16px)!important;
  max-width:none!important;
  max-height:min(230px,30dvh)!important;
  overflow:auto!important;
  margin:7px auto 0!important;
  padding:9px 11px!important;
}
body.dm-view .xorgame-panel>header{
  position:sticky!important;
  top:-9px!important;
  z-index:5!important;
  margin:-9px -11px 8px!important;
  padding:8px 11px!important;
  background:rgba(17,11,23,.96)!important;
  backdrop-filter:blur(8px)!important;
  border-bottom:1px solid #352541!important;
}
body.dm-view .xorgame-panel>header strong{font-size:.82rem!important}
body.dm-view .xorgame-panel>header small{font-size:.62rem!important}
body.dm-view .xorgame-race-stats{margin:4px 0 7px!important}
body.dm-view .xorgame-block-controls{gap:5px!important}
body.dm-view .xorgame-block-controls button{min-height:34px!important;padding:5px 9px!important}
body.dm-view .xorgame-block-hint{font-size:.6rem!important;margin-top:5px!important}

/* Right rail: compact, but not crushed. */
body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr) 78px!important}
body.dm-view .msn-avatar-rail{width:78px!important;padding:8px 6px!important;gap:8px!important;overflow:hidden!important}
body.dm-view .msn-rail-avatar{padding:6px!important}
body.dm-view .msn-rail-avatar>span{width:58px!important;height:58px!important;font-size:1.7rem!important}
body.dm-view .msn-rail-avatar small{font-size:.62rem!important}
body.dm-view .msn-rail-badge{font-size:.58rem!important}
body.dm-view .msn-rail-badge b{width:38px!important;height:38px!important;font-size:.54rem!important}

@media(max-width:1180px){
 body.dm-view .msn-avatar-rail{display:none!important}
 body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr)!important}
 body.dm-view .xorfun-picker[open]>.xorfun-menu{
   top:132px!important;
   width:min(700px,calc(100vw - 28px))!important;
   grid-template-columns:1fr 1fr!important;
 }
 body.dm-view .xorfun-section.xorfun-gif{grid-column:1/-1!important}
}
@media(max-width:760px){
 body.dm-view .msn-toolbar{overflow-x:auto!important}
 body.dm-view .xorfun-picker[open]>.xorfun-menu{
   left:8px!important;right:8px!important;top:auto!important;bottom:62px!important;
   transform:none!important;width:auto!important;max-width:none!important;
   max-height:68dvh!important;grid-template-columns:1fr!important;padding:9px!important
 }
 body.dm-view .xorfun-section.xorfun-gif{grid-column:auto!important}
 body.dm-view .xorfun-menu .xorwink-menu{grid-template-columns:1fr!important}
 body.dm-view .msn-dm-main .xorgame-panel{max-height:32dvh!important}
}
/* v28 popup/backdrop + game minimize */
body.dm-view .xorfun-picker[open]::before{
  content:"";
  position:fixed;
  z-index:480;
  inset:0;
  background:rgba(4,3,7,.46);
  backdrop-filter:blur(2px);
  pointer-events:none;
}
body.dm-view .xorfun-picker[open]>summary{position:relative;z-index:510!important}

body.dm-view .xorgame-panel.xorgame-minimized{
  max-height:none!important;
  overflow:hidden!important;
  padding-bottom:0!important;
}
body.dm-view .xorgame-panel.xorgame-minimized>header{
  margin-bottom:0!important;
  border-bottom:0!important;
}
body.dm-view .xorgame-panel.xorgame-minimized> :not(header){
  display:none!important;
}
body.dm-view .xorgame-minimize{
  background:#17101f!important;
  border-color:#4d3560!important;
  color:#d9c4e9!important;
}

/* The screenshot viewport is wide enough for a single clean toolbar row. */
@media(min-width:1181px){
 body.dm-view .msn-toolbar{height:46px!important;min-height:46px!important}
 body.dm-view .msn-toolbar>button,
 body.dm-view .msn-toolbar>.xorfun-picker>summary{height:34px!important}
 body.dm-view .msn-toolbar .storage-state{font-size:.6rem!important}
}

/* Never let nested legacy popup rules escape the Fun container. */
body.dm-view .xorfun-menu .xorwink-menu *,
body.dm-view .xorfun-menu .xorgame-menu *{
  position:relative;
}
body.dm-view .xorfun-menu .xorgame-menu button::after{
  position:absolute!important;
}
/* v28 compact minimized game header */
body.dm-view .xorgame-panel.xorgame-minimized{
  padding:0!important;
  border-radius:11px!important;
}
body.dm-view .xorgame-panel.xorgame-minimized>header{
  position:static!important;
  min-height:46px!important;
  margin:0!important;
  padding:7px 9px!important;
  align-items:center!important;
  border:0!important;
}
body.dm-view .xorgame-panel.xorgame-minimized>header>div:first-child{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
body.dm-view .xorgame-panel.xorgame-minimized>header small{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  max-width:52vw!important;
}
body.dm-view .xorgame-panel.xorgame-minimized .xorgame-header-actions>button:not(.xorgame-minimize){
  display:none!important;
}
body.dm-view .xorgame-panel.xorgame-minimized .xorgame-minimize{
  min-height:30px!important;
  padding:4px 8px!important;
}
/* XorChat Fun/game layout repair v28 */
body.dm-view .msn-toolbar{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  min-height:46px!important;
  padding:6px 10px!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  scrollbar-width:thin;
}
body.dm-view .msn-toolbar>button,
body.dm-view .msn-toolbar>.xorfun-picker>summary{
  flex:0 0 auto!important;
  min-height:34px!important;
  padding:6px 10px!important;
  white-space:nowrap!important;
}
body.dm-view .msn-toolbar .voice-note-status{flex:0 0 auto!important}
body.dm-view .msn-toolbar .storage-state{margin-left:auto!important;flex:0 0 auto!important;white-space:nowrap!important;max-width:none!important}

/* Fun is one controlled popover, not a collection of nested absolute menus. */
body.dm-view .xorfun-picker{position:static!important;flex:0 0 auto!important}
body.dm-view .xorfun-picker[open]>.xorfun-menu{
  position:fixed!important;
  z-index:500!important;
  left:50%!important;
  right:auto!important;
  top:146px!important;
  bottom:auto!important;
  transform:translateX(-50%)!important;
  width:min(760px,calc(100vw - 40px))!important;
  max-width:760px!important;
  max-height:min(620px,calc(100dvh - 190px))!important;
  overflow:auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.08fr) minmax(0,1.3fr)!important;
  gap:10px!important;
  padding:12px!important;
  border:1px solid #694782!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#17101f,#0c0911)!important;
  box-shadow:0 28px 90px rgba(0,0,0,.62)!important;
}

/* Critical: neutralize the old standalone Wink/Game popup rules when nested inside Fun. */
body.dm-view .xorfun-menu .xorwink-menu,
body.dm-view .xorfun-menu .xorgame-menu{
  position:static!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  max-height:none!important;
  overflow:visible!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.dm-view .xorfun-menu .xorwink-menu{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:6px!important;
}
body.dm-view .xorfun-menu .xorgame-menu{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
}
body.dm-view .xorfun-section{
  min-width:0!important;
  padding:10px!important;
  border:1px solid #34243f!important;
  border-radius:12px!important;
  background:#100b16!important;
}
body.dm-view .xorfun-section>header{margin:0 0 9px!important}
body.dm-view .xorfun-section>header strong{display:block!important;font-size:.82rem!important;line-height:1.15!important}
body.dm-view .xorfun-section>header small{display:block!important;margin-top:2px!important;font-size:.64rem!important;line-height:1.25!important;color:#9683a6!important}
body.dm-view .xorfun-grid button,
body.dm-view .xorfun-gif-button{
  min-width:0!important;
  width:100%!important;
  min-height:36px!important;
  padding:6px 8px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:normal!important;
  line-height:1.15!important;
}
body.dm-view .xorfun-menu .xorgame-menu button{
  grid-template-columns:34px minmax(0,1fr)!important;
  min-height:48px!important;
  padding:7px 8px!important;
}
body.dm-view .xorfun-menu .xorgame-icon{width:34px!important;height:34px!important;font-size:1.05rem!important}
body.dm-view .xorfun-menu .xorgame-menu b{font-size:.7rem!important}
body.dm-view .xorfun-menu .xorgame-menu small{font-size:.58rem!important;line-height:1.15!important}

/* Keep active games useful without pushing chat off-screen. */
body.dm-view .msn-dm-main .xorgame-panel{
  width:calc(100% - 16px)!important;
  max-width:none!important;
  max-height:min(230px,30dvh)!important;
  overflow:auto!important;
  margin:7px auto 0!important;
  padding:9px 11px!important;
}
body.dm-view .xorgame-panel>header{
  position:sticky!important;
  top:-9px!important;
  z-index:5!important;
  margin:-9px -11px 8px!important;
  padding:8px 11px!important;
  background:rgba(17,11,23,.96)!important;
  backdrop-filter:blur(8px)!important;
  border-bottom:1px solid #352541!important;
}
body.dm-view .xorgame-panel>header strong{font-size:.82rem!important}
body.dm-view .xorgame-panel>header small{font-size:.62rem!important}
body.dm-view .xorgame-race-stats{margin:4px 0 7px!important}
body.dm-view .xorgame-block-controls{gap:5px!important}
body.dm-view .xorgame-block-controls button{min-height:34px!important;padding:5px 9px!important}
body.dm-view .xorgame-block-hint{font-size:.6rem!important;margin-top:5px!important}

/* Right rail: compact, but not crushed. */
body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr) 78px!important}
body.dm-view .msn-avatar-rail{width:78px!important;padding:8px 6px!important;gap:8px!important;overflow:hidden!important}
body.dm-view .msn-rail-avatar{padding:6px!important}
body.dm-view .msn-rail-avatar>span{width:58px!important;height:58px!important;font-size:1.7rem!important}
body.dm-view .msn-rail-avatar small{font-size:.62rem!important}
body.dm-view .msn-rail-badge{font-size:.58rem!important}
body.dm-view .msn-rail-badge b{width:38px!important;height:38px!important;font-size:.54rem!important}

@media(max-width:1180px){
 body.dm-view .msn-avatar-rail{display:none!important}
 body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr)!important}
 body.dm-view .xorfun-picker[open]>.xorfun-menu{
   top:132px!important;
   width:min(700px,calc(100vw - 28px))!important;
   grid-template-columns:1fr 1fr!important;
 }
 body.dm-view .xorfun-section.xorfun-gif{grid-column:1/-1!important}
}
@media(max-width:760px){
 body.dm-view .msn-toolbar{overflow-x:auto!important}
 body.dm-view .xorfun-picker[open]>.xorfun-menu{
   left:8px!important;right:8px!important;top:auto!important;bottom:62px!important;
   transform:none!important;width:auto!important;max-width:none!important;
   max-height:68dvh!important;grid-template-columns:1fr!important;padding:9px!important
 }
 body.dm-view .xorfun-section.xorfun-gif{grid-column:auto!important}
 body.dm-view .xorfun-menu .xorwink-menu{grid-template-columns:1fr!important}
 body.dm-view .msn-dm-main .xorgame-panel{max-height:32dvh!important}
}
/* v28 mobile Fun panel hard bound */
@media(max-width:760px){
 .xorfun-picker[open]>.xorfun-menu{
   position:fixed!important;
   left:8px!important;right:8px!important;
   top:72px!important;bottom:56px!important;
   width:auto!important;max-width:none!important;
   height:auto!important;max-height:none!important;
   overflow-y:auto!important;overflow-x:hidden!important;
   overscroll-behavior:contain;
   grid-template-columns:1fr!important;
   transform:none!important;
 }
}
/* XorChat structural conversation polish v30 */
:root{--xc-footer-h:30px!important}
body.app-view.chat-view .msn-titlebar{
 min-height:28px!important;padding:5px 10px!important;
 background:linear-gradient(180deg,#6426b7,#41146f)!important;
 border-bottom-color:#2d104f!important
}
body.app-view.chat-view .msn-titlebar strong{font-size:.75rem!important}
body.app-view.chat-view .msn-titlebar span:nth-child(2){font-size:.73rem!important;color:#e8dcf3!important}
body.app-view.chat-view .msn-window-controls{font-size:.7rem!important;opacity:.65!important}
body.app-view.chat-view .msn-contact-card{
 min-height:60px!important;padding:7px 12px!important;gap:10px!important;
 background:linear-gradient(180deg,#17101f,#100b16)!important
}
body.app-view.chat-view .msn-contact-avatar{
 width:42px!important;height:42px!important;font-size:1.35rem!important;
 border-radius:11px!important;border-width:1px!important;box-shadow:0 0 0 2px #21152c!important
}
body.app-view.chat-view .msn-contact-card strong{font-size:.94rem!important}
body.app-view.chat-view .msn-contact-card small{margin-top:1px!important;font-size:.66rem!important}
body.app-view.chat-view .msn-personal-message{margin-top:2px!important;font-size:.67rem!important}
body.dm-view .msn-toolbar{
 min-height:42px!important;height:42px!important;padding:5px 9px!important;
 gap:5px!important;overflow-x:auto!important;overflow-y:hidden!important;
 background:#0d0912!important
}
body.dm-view .msn-toolbar>button,
body.dm-view .msn-toolbar>.xorfun-picker>summary{
 min-height:31px!important;height:31px!important;padding:5px 9px!important;
 border-radius:8px!important;font-size:.72rem!important
}
body.dm-view .msn-toolbar .xc-connection{
 margin:0 0 0 auto!important;padding:4px 9px!important;min-width:0!important;
 width:auto!important;max-width:none!important;align-self:center!important;
 border-radius:999px!important;font-size:.64rem!important;white-space:nowrap!important;
 background:#0d1912!important;border:1px solid #286743!important;color:#8ce5ad!important
}
body.dm-view .msn-toolbar .xc-connection::before{font-size:.55rem!important;margin-right:5px!important}
body.dm-view .msn-toolbar .storage-state{
 margin-left:0!important;padding:4px 8px!important;border:1px solid #463057!important;
 border-radius:999px!important;background:#120d18!important;font-size:.58rem!important
}
body.dm-view .msn-dm-main{
 background:radial-gradient(circle at 50% -20%,rgba(103,45,155,.08),transparent 42%),#09070d!important
}
body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr) 70px!important}
body.dm-view .msn-avatar-rail{
 width:70px!important;padding:8px 5px!important;gap:8px!important;
 background:linear-gradient(180deg,#100b16,#09070d)!important;border-left-color:#30213b!important
}
body.dm-view .msn-rail-avatar{padding:5px!important;border-radius:12px!important;background:#120d18!important}
body.dm-view .msn-rail-avatar>span{
 width:48px!important;height:48px!important;font-size:1.35rem!important;border-radius:10px!important
}
body.dm-view .msn-rail-avatar small{display:none!important}
body.dm-view .msn-rail-badge{margin-top:auto!important;font-size:.52rem!important;opacity:.8!important}
body.dm-view .msn-rail-badge b{width:34px!important;height:34px!important;font-size:.47rem!important}

body.dm-view .msn-dm-main .xorgame-panel{
 flex:0 0 auto!important;width:min(720px,calc(100% - 28px))!important;
 max-width:720px!important;max-height:none!important;overflow:visible!important;
 margin:9px auto 4px!important;padding:0 12px 12px!important;
 border:1px solid #49315d!important;border-radius:16px!important;
 background:linear-gradient(160deg,#15101c,#0d0912)!important;
 box-shadow:0 12px 34px rgba(0,0,0,.2)!important
}
body.dm-view .xorgame-panel>header{
 position:static!important;margin:0 -12px 10px!important;padding:8px 11px!important;
 border-bottom:1px solid #34243f!important;border-radius:16px 16px 0 0!important;
 background:rgba(20,14,27,.96)!important;backdrop-filter:none!important
}
body.dm-view .xorgame-panel>header>div:first-child{gap:1px!important}
body.dm-view .xorgame-panel>header strong{font-size:.8rem!important}
body.dm-view .xorgame-panel>header small{font-size:.59rem!important}
body.dm-view .xorgame-header-actions{display:flex!important;align-items:center!important;gap:5px!important}
body.dm-view .xorgame-header-actions button{
 min-height:28px!important;height:28px!important;padding:4px 8px!important;
 border-radius:8px!important;font-size:.61rem!important
}
body.dm-view .xorgame-panel[data-game-type="tic-tac-toe"]{max-width:560px!important}
body.dm-view .xorgame-panel[data-game-type="tic-tac-toe"] .xorgame-ttt{
 width:min(170px,25dvh)!important;gap:5px!important
}
body.dm-view .xorgame-panel[data-game-type="tic-tac-toe"] .xorgame-cell{
 border-radius:9px!important;font-size:clamp(1.35rem,3vw,2.05rem)!important
}
body.dm-view .xorgame-panel[data-game-type="rps"],
body.dm-view .xorgame-panel[data-game-type="race-21"]{max-width:560px!important}
body.dm-view .xorgame-panel[data-game-type="memory"],
body.dm-view .xorgame-panel[data-game-type="connect-four"]{max-width:640px!important}
body.dm-view .xorgame-panel[data-game-type="solitaire-race"],
body.dm-view .xorgame-panel[data-game-type="tetris-duel"]{
 width:min(820px,calc(100% - 28px))!important;max-width:820px!important;
 max-height:min(360px,42dvh)!important;overflow:auto!important
}
body.dm-view .xorgame-panel.xorgame-minimized{
 width:min(540px,calc(100% - 28px))!important;padding:0!important;overflow:hidden!important
}
body.dm-view .xorgame-panel.xorgame-minimized>header{
 margin:0!important;border:0!important;border-radius:15px!important
}
body.dm-view .msn-dm-main .message-list{
 flex:1 1 auto!important;width:min(1120px,calc(100% - 24px))!important;
 max-width:1120px!important;min-height:160px!important;margin:5px auto!important;
 padding:15px clamp(16px,3vw,34px)!important;border-radius:18px!important;
 border:1px solid #33223f!important;
 background:radial-gradient(circle at 50% 0,rgba(107,47,158,.07),transparent 36%),#0b0810!important;
 box-shadow:inset 0 1px 18px rgba(0,0,0,.2)!important
}
body.app-view.chat-view .message{max-width:min(580px,64%)!important;padding:9px 12px!important}
body.app-view.chat-view .message.mine{
 background:linear-gradient(145deg,#30203e,#23152e)!important;border-color:#674486!important
}
body.app-view.chat-view .message:not(.mine){
 background:linear-gradient(145deg,#18121e,#110d17)!important;border-color:#352542!important
}
body.app-view.chat-view .message-meta{gap:6px!important}
body.app-view.chat-view .message-meta time{font-size:.61rem!important;opacity:.72!important}
body.app-view.chat-view .reaction-row{margin-top:4px!important}
body.app-view.chat-view .reaction{
 min-width:27px!important;min-height:27px!important;height:27px!important;
 padding:2px 6px!important;font-size:.72rem!important
}
body.dm-view .msn-dm-main .composer{
 flex:0 0 auto!important;width:min(1120px,calc(100% - 24px))!important;
 max-width:1120px!important;margin:4px auto 6px!important;padding:7px 8px!important;
 gap:7px!important;border-radius:15px!important;border-color:#412c50!important;
 background:linear-gradient(180deg,#15101d,#0d0912)!important
}
body.app-view.chat-view .composer .wink-bar{
 padding:0 7px 0 0!important;gap:4px!important;background:transparent!important
}
body.app-view.chat-view .composer .wink-bar button{
 min-width:34px!important;width:34px!important;height:34px!important;min-height:34px!important;
 padding:0!important;border-radius:9px!important
}
body.app-view.chat-view .composer textarea{
 min-height:40px!important;max-height:82px!important;padding:9px 11px!important;
 border-radius:10px!important;background:#08060b!important
}
body.app-view.chat-view .composer>button{
 min-width:80px!important;height:40px!important;min-height:40px!important;
 border-radius:10px!important;padding:6px 12px!important
}
body.app-view.chat-view .composer-char-count{right:99px!important;bottom:9px!important;font-size:.58rem!important}
body.app-view .msn-app-footer{height:30px!important;min-height:30px!important;font-size:.64rem!important}
body.app-view .msn-app-footer nav a{height:22px!important;padding:0 8px!important}
@media(max-width:1180px){
 body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr)!important}
 body.dm-view .msn-avatar-rail{display:none!important}
 body.dm-view .msn-dm-main .message-list,
 body.dm-view .msn-dm-main .composer{width:calc(100% - 16px)!important}
 body.dm-view .msn-dm-main .xorgame-panel{width:min(680px,calc(100% - 16px))!important}
}
@media(max-width:820px){
 body.app-view.chat-view .msn-contact-card{min-height:54px!important;padding:6px 9px!important}
 body.app-view.chat-view .msn-contact-avatar{width:38px!important;height:38px!important}
 body.dm-view .msn-toolbar{height:40px!important;min-height:40px!important}
 body.dm-view .msn-toolbar .storage-state{display:none!important}
 body.dm-view .msn-dm-main .xorgame-panel{max-width:calc(100% - 14px)!important}
 body.app-view.chat-view .message{max-width:82%!important}
}
@media(max-width:700px){
 body.dm-view .msn-toolbar{overflow-x:auto!important}
 body.dm-view .msn-toolbar .xc-connection{margin-left:4px!important}
 body.dm-view .msn-dm-main .message-list{width:calc(100% - 10px)!important;padding:12px 10px!important;border-radius:13px!important}
 body.dm-view .msn-dm-main .composer{width:calc(100% - 10px)!important;margin-bottom:5px!important}
 body.dm-view .xorgame-panel[data-game-type="tic-tac-toe"] .xorgame-ttt{width:min(160px,36vw)!important}
}
@media(max-height:760px) and (min-width:701px){
 body.app-view.chat-view .msn-contact-card{min-height:52px!important;padding-block:5px!important}
 body.app-view.chat-view .msn-contact-avatar{width:36px!important;height:36px!important}
 body.dm-view .msn-dm-main .xorgame-panel{margin-top:6px!important}
 body.dm-view .xorgame-panel[data-game-type="tic-tac-toe"] .xorgame-ttt{width:145px!important}
 body.dm-view .msn-dm-main .message-list{padding-block:11px!important}
}
/* XorChat Remote Assist v31 */
body.app-view .msn-toolbar [data-remote-assist]::before{content:"🖥 ";opacity:.92}
.xassist-overlay{position:fixed;z-index:12000;inset:0;display:grid;place-items:center;padding:18px;background:rgba(4,3,8,.78);backdrop-filter:blur(10px)}
.xassist-overlay[hidden]{display:none!important}
.xassist-card{width:min(940px,96vw);max-height:94dvh;overflow:auto;padding:0;border:1px solid #684681;border-radius:20px;background:linear-gradient(155deg,#17101f,#0b0810);box-shadow:0 30px 100px rgba(0,0,0,.7);color:#f3eaf9}
.xassist-header{position:sticky;top:0;z-index:4;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid #3d294c;background:rgba(18,12,25,.97);backdrop-filter:blur(10px)}
.xassist-header>div{display:grid;gap:3px}.xassist-header strong{font-size:1.05rem}.xassist-header small{color:#aa97b8;font-size:.72rem}
.xassist-header .icon-button{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;padding:0!important;border-radius:50%!important}
.xassist-start,.xassist-incoming,.xassist-session{padding:18px}
.xassist-start[hidden],.xassist-incoming[hidden],.xassist-session[hidden]{display:none!important}
.xassist-hero{display:flex;align-items:center;gap:13px;padding:14px;border:1px solid #3c294a;border-radius:14px;background:#100c16}
.xassist-hero>span{font-size:2.1rem}.xassist-hero>div{display:grid;gap:3px}.xassist-hero strong{font-size:1rem}.xassist-hero small{color:#9f8cad;font-size:.74rem}
.xassist-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.xassist-choice-grid button{min-height:94px!important;display:grid!important;align-content:center!important;justify-items:start!important;gap:5px!important;padding:14px!important;border:1px solid #503667!important;border-radius:14px!important;background:linear-gradient(145deg,#1a1223,#100b16)!important;color:#eee3f6!important;text-align:left!important;box-shadow:none!important}
.xassist-choice-grid button:hover{border-color:#8a5cad!important;background:linear-gradient(145deg,#291938,#171020)!important}
.xassist-choice-grid b{font-size:.88rem}.xassist-choice-grid span{font-size:.7rem;color:#a896b7;line-height:1.35}
.xassist-note{margin:13px 2px 0;color:#94849f;font-size:.68rem;line-height:1.45}
.xassist-incoming{text-align:center;display:grid;justify-items:center;gap:9px}
.xassist-avatar{width:82px;height:82px;display:grid;place-items:center;border:1px solid #654583;border-radius:20px;background:#110c18;font-size:2.3rem;overflow:hidden}
.xassist-avatar img{width:100%;height:100%;object-fit:cover}
.xassist-incoming>strong{font-size:1.05rem}.xassist-incoming p{max-width:560px;margin:0;color:#d9cbe4}.xassist-incoming>small{color:#9584a3;font-size:.7rem}
.xassist-actions{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:8px}
.xassist-actions button{min-height:38px!important;padding:7px 12px!important;border-radius:10px!important}
.xassist-session-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.xassist-session-bar>div{display:grid;gap:2px}.xassist-session-bar strong{font-size:.92rem}.xassist-session-bar small{color:#a18ead;font-size:.68rem}
.xassist-timer{display:inline-flex;align-items:center;justify-content:center;min-width:68px;padding:5px 9px;border:1px solid #4d3560;border-radius:999px;background:#120d18;color:#d6c2e8;font:800 .72rem ui-monospace,monospace}
.xassist-stage{position:relative;display:grid;place-items:center;min-height:320px;max-height:62dvh;overflow:hidden;border:1px solid #3b2949;border-radius:16px;background:#07050a}
.xassist-stage video{display:block;width:100%;height:min(56vw,560px);min-height:320px;object-fit:contain;background:#050307}
.xassist-stage video[hidden]{display:none!important}
.xassist-stage-empty{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;color:#877894}
.xassist-stage-empty[hidden]{display:none!important}.xassist-stage-empty span{font-size:3.2rem}.xassist-stage-empty strong{font-size:.82rem}
.xassist-status{min-height:22px;margin:10px 0 0;text-align:center;color:#d5c4e2;font-size:.74rem;font-weight:750}
.xassist-control-state{margin:7px auto 0;max-width:700px;padding:8px 10px;border:1px solid #372643;border-radius:10px;background:#100c16;color:#9f8dad;font-size:.68rem;text-align:center;line-height:1.4}
@media(max-width:760px){
 .xassist-overlay{padding:0}
 .xassist-card{width:100vw;max-height:100dvh;min-height:100dvh;border:0;border-radius:0}
 .xassist-choice-grid{grid-template-columns:1fr}
 .xassist-start,.xassist-incoming,.xassist-session{padding:14px}
 .xassist-stage{min-height:260px;max-height:58dvh;border-radius:12px}
 .xassist-stage video{min-height:260px;height:48dvh}
 .xassist-header{padding:11px 12px}
}
@media(prefers-reduced-motion:reduce){.xassist-overlay{backdrop-filter:none}}

/* XorChat discoverability + Remote Assist controls v31 */
.dm-more-picker{position:relative;flex:0 0 auto}
.dm-more-picker>summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;min-height:31px;height:31px;padding:5px 9px;border:1px solid #4b3560;border-radius:8px;background:#1b1224;color:#f0e6f8;font-size:.72rem;font-weight:750;cursor:pointer;white-space:nowrap}
.dm-more-picker>summary::-webkit-details-marker{display:none}
.dm-more-picker[open]>summary{background:#2a1838;border-color:#8c62ad;color:#fff}
.dm-more-menu{position:fixed;z-index:520;top:132px;right:20px;width:min(260px,calc(100vw - 28px));display:grid;gap:6px;padding:10px;border:1px solid #5a3d6e;border-radius:14px;background:#0e0a14;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.dm-more-picker:not([open])>.dm-more-menu{display:none!important}
.dm-more-menu form{margin:0!important}
.dm-more-menu button,.dm-more-menu a{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;min-height:34px!important;padding:6px 9px!important;border:1px solid #3f2c4d!important;border-radius:8px!important;background:#181120!important;color:#e6d9ef!important;font-size:.7rem!important;text-decoration:none!important;box-sizing:border-box!important}
.dm-more-menu button:hover,.dm-more-menu a:hover{background:#291936!important;border-color:#775095!important;color:#fff!important}
.xassist-stage.control-enabled video{cursor:crosshair}
.xassist-stage.control-enabled{box-shadow:0 0 0 2px rgba(104,215,161,.2),0 18px 50px rgba(0,0,0,.38)}
.xassist-control-state{min-height:36px}
@media(max-width:760px){.dm-more-menu{left:8px;right:8px;top:auto;bottom:64px;width:auto}}

/* XorChat messenger visual hierarchy v32 */
:root{--xc-sidebar:252px!important;--xc-footer-h:28px!important}

body.app-view.chat-view{
 background:
   radial-gradient(circle at 72% -18%,rgba(119,54,170,.12),transparent 35%),
   linear-gradient(180deg,#08060b,#060509)!important
}
body.app-view.chat-view .main-panel{
 background:#08060b!important;
 border-left:1px solid #251b2d!important
}
body.app-view.chat-view .msn-titlebar{
 min-height:32px!important;height:32px!important;
 padding:0 12px!important;
 grid-template-columns:auto minmax(0,1fr) auto!important;
 background:linear-gradient(90deg,#4d196f,#6d2ca0 52%,#4a186a)!important;
 box-shadow:inset 0 -1px rgba(255,255,255,.05),0 5px 18px rgba(0,0,0,.22)!important
}
body.app-view.chat-view .msn-titlebar strong{
 font-size:.72rem!important;letter-spacing:.07em;text-transform:uppercase
}
body.app-view.chat-view .msn-titlebar span:nth-child(2){
 justify-self:center!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
 font-size:.68rem!important;opacity:.78!important
}
body.app-view.chat-view .msn-window-controls{opacity:.48!important}

body.app-view.chat-view .msn-contact-card{
 min-height:64px!important;
 padding:8px 14px!important;
 gap:11px!important;
 border-bottom:0!important;
 background:linear-gradient(180deg,#120d18,#0d0a12)!important
}
body.app-view.chat-view .msn-contact-avatar{
 width:44px!important;height:44px!important;border-radius:13px!important;
 border:1px solid #724b90!important;box-shadow:0 0 0 3px rgba(125,78,153,.12)!important
}
body.app-view.chat-view .msn-contact-card>div{
 min-width:0!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;
 grid-template-areas:"name personal" "meta personal"!important;
 align-items:center!important;column-gap:14px!important
}
body.app-view.chat-view .msn-contact-card strong{grid-area:name!important;font-size:.92rem!important}
body.app-view.chat-view .msn-contact-card small{grid-area:meta!important;font-size:.62rem!important;color:#9485a1!important}
body.app-view.chat-view .msn-personal-message{
 grid-area:personal!important;justify-self:end!important;
 max-width:min(520px,46vw)!important;margin:0!important;padding:5px 9px!important;
 overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
 border:1px solid #382745!important;border-radius:999px!important;background:#0b0810!important;
 color:#b7a3c6!important;font-size:.65rem!important;font-style:italic!important
}

body.dm-view .msn-toolbar{
 height:44px!important;min-height:44px!important;
 padding:6px 10px!important;gap:5px!important;
 border-top:1px solid #241a2d!important;border-bottom:1px solid #342340!important;
 background:linear-gradient(180deg,#0f0b15,#0b0810)!important;
 box-shadow:0 6px 20px rgba(0,0,0,.16)!important
}
body.dm-view .msn-toolbar>button,
body.dm-view .msn-toolbar>.xorfun-picker>summary,
body.dm-view .msn-toolbar>.dm-more-picker>summary{
 min-height:32px!important;height:32px!important;
 padding:5px 10px!important;
 border:1px solid #3e2b4d!important;border-radius:9px!important;
 background:#17101f!important;color:#d8c9e4!important;
 font-size:.68rem!important;font-weight:760!important
}
body.dm-view .msn-toolbar>button:hover,
body.dm-view .msn-toolbar>.xorfun-picker>summary:hover,
body.dm-view .msn-toolbar>.dm-more-picker>summary:hover{
 background:#251631!important;border-color:#704d8a!important;color:#fff!important
}
body.dm-view .msn-toolbar>[data-call-mode="audio"]::before{content:"☎ ";opacity:.8}
body.dm-view .msn-toolbar>[data-call-mode="video"]::before{content:"▣ ";opacity:.8}
body.dm-view .msn-toolbar>[data-voice-message]::before{content:"◉ ";opacity:.8}
body.dm-view .msn-toolbar>[data-nudge]::before{content:"⚡ ";opacity:.8}
body.dm-view .msn-toolbar>[data-chat-search-toggle]::before{content:"⌕ ";opacity:.8}
body.dm-view .msn-toolbar .voice-note-status{font-size:.62rem!important;color:#a28faf!important;min-width:0!important}
body.dm-view .msn-toolbar .xc-connection{
 margin-left:auto!important;padding:4px 8px!important;
 border-color:#255b3c!important;background:#0c1710!important;color:#84d8a4!important
}
body.dm-view .msn-toolbar .storage-state{
 padding:4px 8px!important;border-radius:999px!important;background:#100c16!important;
 border:1px solid #392746!important;color:#9d8aaa!important
}

body.dm-view .msn-dm-shell{
 grid-template-columns:minmax(0,1fr) 62px!important;
 background:#08060b!important
}
body.dm-view .msn-avatar-rail{
 width:62px!important;padding:8px 5px!important;gap:8px!important;
 border-left:1px solid #2a1e33!important;
 background:linear-gradient(180deg,#0d0912,#08060b)!important
}
body.dm-view .msn-rail-avatar{
 padding:4px!important;border:0!important;background:transparent!important
}
body.dm-view .msn-rail-avatar>span{width:44px!important;height:44px!important;border-radius:12px!important}
body.dm-view .msn-rail-avatar small{display:none!important}
body.dm-view .msn-rail-badge{opacity:.62!important}

body.dm-view .msn-dm-main{
 min-height:0!important;
 padding:0!important;
 background:
   radial-gradient(circle at 50% 0,rgba(112,58,150,.055),transparent 34%),
   #08060b!important
}
body.dm-view .msn-dm-main .message-list{
 width:min(980px,calc(100% - 34px))!important;max-width:980px!important;
 margin:10px auto 6px!important;
 padding:18px 22px!important;
 border:1px solid #2f2139!important;border-radius:18px!important;
 background:linear-gradient(180deg,rgba(16,11,22,.95),rgba(10,8,14,.97))!important;
 box-shadow:0 10px 36px rgba(0,0,0,.13),inset 0 1px rgba(255,255,255,.018)!important
}
body.app-view.chat-view .message{
 max-width:min(560px,70%)!important;
 padding:9px 12px!important;border-radius:15px!important
}
body.app-view.chat-view .message.mine{
 margin-left:auto!important;
 border-color:#5e3d76!important;
 background:linear-gradient(145deg,#2b1a38,#21142c)!important
}
body.app-view.chat-view .message:not(.mine){
 margin-right:auto!important;
 border-color:#2d2235!important;
 background:linear-gradient(145deg,#151019,#100c15)!important
}
body.app-view.chat-view .message-meta strong{font-size:.69rem!important}
body.app-view.chat-view .message p{font-size:.78rem!important;line-height:1.48!important}
body.app-view.chat-view .reaction-row{opacity:.68;transition:opacity .15s ease}
body.app-view.chat-view .message:hover .reaction-row,
body.app-view.chat-view .message:focus-within .reaction-row{opacity:1}
body.app-view.chat-view .reaction{
 min-width:25px!important;min-height:25px!important;height:25px!important;
 padding:1px 5px!important;border-radius:999px!important
}

body.dm-view .msn-dm-main .composer{
 width:min(980px,calc(100% - 34px))!important;max-width:980px!important;
 margin:6px auto 8px!important;padding:7px 8px!important;
 border:1px solid #3b2947!important;border-radius:16px!important;
 background:linear-gradient(180deg,#15101c,#0c0911)!important;
 box-shadow:0 10px 28px rgba(0,0,0,.18)!important
}
body.app-view.chat-view .composer .wink-bar{
 padding-right:7px!important;border-right:1px solid #33233f!important
}
body.app-view.chat-view .composer .wink-bar button{
 width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;
 border-radius:8px!important;background:#100c15!important
}
body.app-view.chat-view .composer textarea{
 min-height:42px!important;max-height:120px!important;
 padding:10px 12px 18px!important;
 border:1px solid #302139!important;border-radius:11px!important;
 background:#08060b!important
}
body.app-view.chat-view .composer>button{
 min-width:78px!important;height:42px!important;min-height:42px!important;
 border-radius:11px!important;
 background:linear-gradient(180deg,#7434a1,#5b2380)!important;
 box-shadow:inset 0 1px rgba(255,255,255,.08)!important
}

body.dm-view .msn-dm-main .xorgame-panel{
 width:min(620px,calc(100% - 34px))!important;max-width:620px!important;
 margin:10px auto 4px!important;
 border-color:#433050!important;
 box-shadow:0 12px 34px rgba(0,0,0,.18)!important
}
body.dm-view .xorgame-panel[data-game-type="solitaire-race"],
body.dm-view .xorgame-panel[data-game-type="tetris-duel"]{
 width:min(820px,calc(100% - 34px))!important;max-width:820px!important
}

.dm-more-menu{
 top:138px!important;right:18px!important;
 width:min(280px,calc(100vw - 28px))!important;
 gap:5px!important;padding:9px!important;
 border-color:#4c355c!important;
 background:linear-gradient(180deg,#120d18,#0b0810)!important
}
.dm-more-menu button,.dm-more-menu a{
 min-height:36px!important;border:0!important;border-radius:9px!important;
 background:transparent!important
}
.dm-more-menu button:hover,.dm-more-menu a:hover{
 background:#20142a!important;border:0!important
}

.xassist-card{
 width:min(900px,94vw)!important;
 border-color:#5a3e6c!important;
 border-radius:22px!important;
 background:linear-gradient(155deg,#14101b,#09070d)!important
}
.xassist-header{
 padding:13px 15px!important;
 background:rgba(15,11,20,.97)!important
}
.xassist-start,.xassist-incoming,.xassist-session{padding:16px!important}
.xassist-hero{
 padding:12px!important;
 border-color:#352641!important;background:#0e0b13!important
}
.xassist-choice-grid{gap:10px!important;margin-top:11px!important}
.xassist-choice-grid button{
 min-height:84px!important;
 border-color:#42304f!important;
 background:linear-gradient(145deg,#17111e,#100c16)!important
}
.xassist-stage{
 min-height:300px!important;
 border-color:#33243e!important;
 background:#050407!important
}
.xassist-control-state{
 border-color:#30213a!important;
 background:#0e0a13!important
}

body.app-view .msn-app-footer{
 height:28px!important;min-height:28px!important;
 border-top:1px solid #251a2e!important;
 background:#09070d!important;color:#786c84!important
}

@media(max-width:1180px){
 :root{--xc-sidebar:222px!important}
 body.dm-view .msn-avatar-rail{display:none!important}
 body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr)!important}
 body.app-view.chat-view .msn-personal-message{max-width:38vw!important}
}
@media(max-width:820px){
 body.app-view.chat-view .msn-contact-card>div{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"name" "meta"!important}
 body.app-view.chat-view .msn-personal-message{display:none!important}
 body.dm-view .msn-toolbar{overflow-x:auto!important;scrollbar-width:thin!important}
 body.dm-view .msn-dm-main .message-list,
 body.dm-view .msn-dm-main .composer{width:calc(100% - 14px)!important}
 body.app-view.chat-view .message{max-width:84%!important}
}
@media(max-width:700px){
 body.app-view.chat-view .msn-titlebar span:nth-child(2){display:none!important}
 body.app-view.chat-view .msn-contact-card{min-height:54px!important;padding:6px 9px!important}
 body.dm-view .msn-dm-main .message-list{margin-top:6px!important;padding:13px 10px!important;border-radius:13px!important}
 body.dm-view .msn-dm-main .composer{margin-bottom:5px!important}
 .dm-more-menu{left:8px!important;right:8px!important;top:auto!important;bottom:64px!important;width:auto!important}
 .xassist-card{width:100vw!important;max-height:100dvh!important;min-height:100dvh!important;border-radius:0!important;border:0!important}
}

/* XorChat v33 — conversation-first messenger */
body.dm-view .msn-toolbar>[data-voice-message],
body.dm-view .msn-toolbar>[data-nudge]{display:none!important}

/* Give the conversation the width back; participant details live under More. */
body.dm-view .msn-avatar-rail{display:none!important}
body.dm-view .msn-dm-shell{grid-template-columns:minmax(0,1fr)!important}
body.dm-view .msn-dm-main{position:relative!important;overflow:hidden!important}

/* Reduce desktop-window chrome. */
body.app-view.chat-view .msn-titlebar{
 height:28px!important;min-height:28px!important;
 padding:0 11px!important;
 background:linear-gradient(90deg,#572079,#67258f 58%,#501d70)!important
}
body.app-view.chat-view .msn-titlebar strong{font-size:.67rem!important}
body.app-view.chat-view .msn-titlebar span:nth-child(2){font-size:.62rem!important;opacity:.62!important}
body.app-view.chat-view .msn-window-controls{font-size:.61rem!important;opacity:.32!important}

/* Contact header now reads like a messenger header, not a card. */
body.app-view.chat-view .msn-contact-card{
 min-height:58px!important;
 padding:7px 14px!important;
 border-bottom:1px solid #261b2e!important;
 background:#0d0a11!important
}
body.app-view.chat-view .msn-contact-avatar{
 width:40px!important;height:40px!important;border-radius:50%!important;
 box-shadow:none!important;border:1px solid #64447c!important
}
body.app-view.chat-view .msn-contact-card>div{
 display:grid!important;
 grid-template-columns:auto minmax(0,1fr)!important;
 grid-template-areas:"name personal" "meta personal"!important;
 align-items:center!important;column-gap:14px!important
}
body.app-view.chat-view .msn-contact-card strong{font-size:.9rem!important}
body.app-view.chat-view .msn-contact-card small{font-size:.59rem!important}
body.app-view.chat-view .msn-personal-message{
 max-width:420px!important;
 padding:0!important;border:0!important;background:transparent!important;
 color:#9b8aa7!important;font-size:.62rem!important
}

/* Primary action row: quieter and more intentional. */
body.dm-view .msn-toolbar{
 height:40px!important;min-height:40px!important;
 padding:4px 10px!important;gap:5px!important;
 background:#0b080f!important;border-bottom:1px solid #281c30!important;
 box-shadow:none!important
}
body.dm-view .msn-toolbar>button,
body.dm-view .msn-toolbar>.xorfun-picker>summary,
body.dm-view .msn-toolbar>.dm-more-picker>summary{
 height:30px!important;min-height:30px!important;
 padding:4px 9px!important;
 border-color:#372642!important;
 background:transparent!important;
 color:#c7b8d3!important;
 font-size:.65rem!important
}
body.dm-view .msn-toolbar>button:hover,
body.dm-view .msn-toolbar>.xorfun-picker>summary:hover,
body.dm-view .msn-toolbar>.dm-more-picker>summary:hover{
 background:#1d1326!important;border-color:#65427e!important;color:#fff!important
}
body.dm-view .msn-toolbar .xc-connection{
 margin-left:auto!important;
 background:transparent!important;border-color:#28553b!important;
 color:#7fd5a0!important
}
body.dm-view .msn-toolbar .storage-state{
 background:transparent!important;border-color:#34243f!important;color:#8e7c9b!important
}

/* Conversation canvas: remove the giant framed box. */
body.dm-view .msn-dm-main .message-list{
 width:min(860px,calc(100% - 38px))!important;max-width:860px!important;
 margin:0 auto!important;
 padding:20px 8px 28px!important;
 border:0!important;border-radius:0!important;
 background:transparent!important;
 box-shadow:none!important
}
body.dm-view .message-list .empty-state{min-height:42vh!important}
body.app-view.chat-view .message{
 max-width:min(600px,74%)!important;
 padding:9px 12px!important;
 border-radius:16px!important;
 box-shadow:none!important
}
body.app-view.chat-view .message.mine{
 border-color:#59386f!important;
 background:linear-gradient(145deg,#2a1937,#20142a)!important
}
body.app-view.chat-view .message:not(.mine){
 border-color:#2a1f31!important;
 background:#141018!important
}
body.app-view.chat-view .message p{font-size:.79rem!important;line-height:1.5!important}
body.app-view.chat-view .message-meta{opacity:.78!important}
body.app-view.chat-view .message-self-actions>summary,
body.app-view.chat-view .message>details>summary{
 opacity:.55!important;font-size:.61rem!important
}

/* Composer becomes part of the conversation surface. */
body.dm-view .msn-dm-main .composer{
 width:min(860px,calc(100% - 38px))!important;max-width:860px!important;
 margin:0 auto 9px!important;
 padding:6px!important;
 gap:6px!important;
 border:1px solid #34243f!important;border-radius:14px!important;
 background:#100c15!important;
 box-shadow:0 8px 24px rgba(0,0,0,.16)!important
}
body.app-view.chat-view .composer .wink-bar{
 border-right:0!important;padding-right:2px!important;gap:3px!important
}
body.app-view.chat-view .composer .wink-bar button{
 width:30px!important;min-width:30px!important;height:30px!important;min-height:30px!important;
 border:0!important;background:transparent!important
}
body.app-view.chat-view .composer .wink-bar button:hover{background:#21162a!important}
body.app-view.chat-view .composer textarea{
 min-height:40px!important;
 border:0!important;border-radius:9px!important;
 background:#09070d!important;
 box-shadow:inset 0 0 0 1px #271c30!important
}
body.app-view.chat-view .composer>button{
 min-width:70px!important;
 height:40px!important;min-height:40px!important;
 border-radius:10px!important
}
body.app-view.chat-view .composer-char-count{bottom:8px!important}
body.app-view.chat-view .typing-indicator,
body.app-view.chat-view .xc-send-status{
 width:min(860px,calc(100% - 38px))!important;max-width:860px!important;margin-inline:auto!important
}

/* Games become an activity drawer that floats over the chat instead of pushing it down. */
body.dm-view .msn-dm-main .xorgame-panel{
 position:absolute!important;
 z-index:90!important;
 top:12px!important;right:14px!important;
 width:min(390px,calc(100% - 28px))!important;max-width:390px!important;
 margin:0!important;
 max-height:calc(100% - 24px)!important;
 overflow:auto!important;
 border:1px solid #4b335a!important;border-radius:16px!important;
 background:linear-gradient(160deg,#17101e,#0d0a12)!important;
 box-shadow:0 18px 54px rgba(0,0,0,.48)!important;
 backdrop-filter:blur(12px)!important
}
body.dm-view .xorgame-panel.xorgame-minimized{
 width:300px!important;max-width:calc(100% - 28px)!important;
 max-height:52px!important;overflow:hidden!important
}
body.dm-view .xorgame-panel[data-game-type="solitaire-race"],
body.dm-view .xorgame-panel[data-game-type="tetris-duel"]{
 width:min(560px,calc(100% - 28px))!important;max-width:560px!important
}

/* More menu: grouped and less like an admin form. */
.dm-more-menu{
 top:126px!important;
 width:min(300px,calc(100vw - 24px))!important;
 padding:8px!important;
 border-radius:14px!important
}
.dm-more-section{
 display:grid;grid-template-columns:1fr 1fr;gap:5px;
 padding-bottom:7px;margin-bottom:2px;border-bottom:1px solid #2d2036
}
.dm-more-section small{
 grid-column:1/-1;padding:1px 5px 4px;
 color:#776884;font-size:.56rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase
}
.dm-more-section button{min-height:34px!important}

/* Fun remains available, but visually secondary. */
body.dm-view .xorfun-picker>summary{color:#c9b5d8!important}
body.dm-view .xorfun-menu{z-index:540!important}

/* Voice notes look like messages, not embedded browser controls. */
body.app-view.chat-view .voice-note{
 gap:7px!important;padding:8px 9px!important;border-radius:11px!important;
 background:#0b0910!important;border:1px solid #32243d!important
}
body.app-view.chat-view .voice-note strong{font-size:.75rem!important}
body.app-view.chat-view .voice-note audio{height:30px!important;max-width:100%!important}
body.app-view.chat-view .voice-note small{font-size:.58rem!important;color:#8a7a96!important}

/* Sidebar hierarchy: calmer, less dashboard-like. */
body.app-view .sidebar{background:#0f0b15!important}
body.app-view .sidebar .nav-title{
 margin-top:10px!important;
 color:#7d6d89!important;font-size:.56rem!important;letter-spacing:.11em!important
}
body.app-view .sidebar nav>a:not(.sidebar-contact){
 min-height:34px!important;border-radius:8px!important;font-size:.75rem!important
}
body.app-view .sidebar nav>a:not(.sidebar-contact).active{
 background:#21162a!important;box-shadow:inset 2px 0 #a457d2!important
}
body.app-view .sidebar nav a.sidebar-contact{
 min-height:52px!important;
 background:transparent!important;border-radius:9px!important
}
body.app-view .sidebar nav a.sidebar-contact.active{
 background:#1d1425!important;
 box-shadow:inset 2px 0 #a457d2!important
}

/* Tiny footer, no competition with the composer. */
body.app-view .msn-app-footer{
 height:24px!important;min-height:24px!important;
 font-size:.58rem!important;opacity:.78!important
}
body.app-view .msn-app-footer nav a{height:18px!important;padding:0 6px!important}

/* Remote Assist now resembles a focused call/share sheet. */
.xassist-card{width:min(820px,92vw)!important;border-radius:18px!important}
.xassist-header{padding:11px 13px!important}
.xassist-header strong{font-size:.92rem!important}
.xassist-header small{font-size:.63rem!important}
.xassist-start,.xassist-incoming,.xassist-session{padding:14px!important}
.xassist-choice-grid button{min-height:76px!important}
.xassist-stage{min-height:280px!important;max-height:56dvh!important;border-radius:13px!important}
.xassist-stage video{min-height:280px!important;height:min(50vw,500px)!important}

/* Narrow screens stay usable. */
@media(max-width:900px){
 body.app-view.chat-view .msn-personal-message{display:none!important}
 body.dm-view .msn-dm-main .xorgame-panel{
   position:fixed!important;left:10px!important;right:10px!important;top:auto!important;bottom:66px!important;
   width:auto!important;max-width:none!important;max-height:52dvh!important
 }
}
@media(max-width:700px){
 body.dm-view .msn-toolbar{overflow-x:auto!important}
 body.dm-view .msn-dm-main .message-list,
 body.dm-view .msn-dm-main .composer,
 body.app-view.chat-view .typing-indicator,
 body.app-view.chat-view .xc-send-status{width:calc(100% - 12px)!important}
 body.app-view.chat-view .message{max-width:88%!important}
 body.app-view.chat-view .msn-titlebar{display:none!important}
 body.app-view.chat-view .msn-contact-card{min-height:52px!important}
 .dm-more-menu{left:7px!important;right:7px!important;top:auto!important;bottom:58px!important;width:auto!important}
}
