@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-vietnamese-wght-normal-XAtsl5Q_.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-latin-ext-wght-normal-C4zznr8T.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-latin-wght-normal-E0tuGl4L.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,d09GMgABAAAAAAaEABMAAAAADFgAAAYdAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJpBmA/U1RBVIE4AFwvbBEICoJ8gkMLFAAwhCoBNgIkAyIEIAWGUAdiDAcbvgpRVHJOI/viwCYyfSFrJjFIG8raYpYj9+IeSF0s6zD+Lk/4OGrZHhHV+wvt2ffuWPwlA51lIICIosSVmyOKEs5Uzlx3NKeXIgn1ssCydUybDV0IHga+SszIyfrQe9bLTFNxjayzgs76hNsDoSYtRe32fiJ4gxBjrP8L+w//zzHjv7Yqyr9o2vOBDXhCo2jMtr4uwAK/gV1U0PxAq/EAD+yW9EoKOL1KLw8rHrFgCSgRTQRzBzpeXVhweEDlyfY8gIoOa2CQJzrTAHIIoitTMVV2dyFwpJ2iAEQTpSkhPitxD3YwuZHEagTcAhyKAcBmUyPdhTovJThOw6HYiaF2M/J7erdi2OUutor6ES6Ac88AvfZvKpb6fJoArohb524042j6Jij36NI7P8Pb7s721naN9gcTtcjXQP4l+8BKEzFVGMxxoHqlq8Ul4LGneFJBDFaOdKpLPcg8P14YSDwIcn75hdlyJLTBlZ4voL6tT46yC/njunXqpJ0/bSvmrH1o3kRlwZ+j0DBogkF3KbDRVBlbOc+fY5HVXwPoT9hfekPnyZMaEmenYLMSg5npqegFOsgXsBv1IoF9aIVfSCNHkk6+gIzILsiYuhWQCfUtZEpbkRntQxBZgw7MwFbMcRvwJrAnBlDqs7isLtL7pO84Xru1i7ah7tckH1Wreqq6K9u0amxU1bcff/s2Y1ni3rh2I8zHzqkm3PGvv3mzC6NDBz/UcOBIg+nm88rxN8MbdtypvHUL5o1c2zG0urYpRmW+VHZdiba6GXN/3v0B3i3nt4RBsbfAu8ftLqRcTIlZ4VYheFTAS5nXLS65VZrbuW3daF2Ze1ChyGXWZN6u9nUuH1LfyTERifZXEpIueMe28vF8FOoTnsONzw+1djo9P71lZGx1vM8mH/BhvSa2HDsRZ1+Ul+RmpnPOIaEuwWnZZdkgQWAAyCDDZ1wk+0sh7wseAAwA6UlHxbftCgYAAwKAgwIAEA7ACfHIRbV7J6dwF/ZzcRRmAjXUYKAGWAlDCCFmKnH+LJEQfHKEmVrfmKwSEab36AcubXQBoDYJV/aRV+funFD8wAXLSLYbwr9+DR+h/qZIKCfeqRG5ghHpdY0zcV2nuz5iJMhAFjaTDwOcoyKGG9JHrCfdp4cC+kCvUrxc7+bliIMiHj95sPIbUeWZEP/HLnN2tlr9EBeRiktHuWvErx98fRz1MuEvHO3FDRgtsSzL/P0hsDLK2n5/uHMOjvTst0HD6t+80ZN798j7j//kjqHxIOZDFPR/FxurFD6/HxGbB799RPHLx5F89MoBOub9jVuOWtmPH3o9H3r26DIuff+LqPLwff/xryDRmiAYmjxiK0GwS9XU+k8QpUrHsCTs4qH89Fv44ubWbQmOE51M7J8Pt8+h+NKt3zZpa2L9zZqcRlyEc4MaNGdfjQCxgIygn78ne4yAzcLWA3zAJ6RRGbijvHr1W+XN8ywrG0EoZSySb0/A9KsllI7Q/Pq8hLu76tfTy5cF4X8bQxTtYp2vr6/+1oI4AhgAlNYFryt62VaX9ktO6VsAeDLeWx6fff4vdV1ts7N6+gw9GCsQnqPB0QUttB9nEc7Aaf4XM0NQ90VJ+HV1rG04znGCmXcpPCA9+nxdMPgPlT7Dz83NMfZuMJaNeRqbc+tjd2QER/b0B44d7nv5Rif7VC8svYkx9SKWwb3YzN2M3cY8jSNLl+PYZqfjxNTxOLXVCmfmduDc0ty1kLbjeiGfIrDFJXWPTTMD5TKupR8cpZgJeXTofId8NoUj6E8XfAc2k4WPdbCberDYAp8Q7L5dUo8wE8cs9QINZYvwXKzvBS4v/n+fQZkGrrFysKEIuFBgjQpxiHH1XA+ZBI+C+oAoxhYKECc42rGOc8L4mYhsiThGfFjOcKmFubPpDgwnY1918Fwo8ouenDJxvGP96HFWJ28hiOy251oKjkcbGz2POMme8CTMThx6wqOPsFtPI6j6HhDyDTxFQYnL88FcXGAGHl3ZuueRbEuxbK6Hc84ZDvRrREtLzyjj8Xkd/uShR1b0sYd8Nh8/c8znxCnadxQcf2nFVWIyw1g+4StXav9j75s+CQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-vietnamese-wght-normal-CHiFlh_0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box;margin:0;padding:0}:root{--navy:#002343;--navy-900:#001627;--navy-800:#052e54;--navy-700:#0a3d6b;--navy-600:#135286;--navy-glow:#2b8eff26;--paper:#fff;--paper-soft:#eaf1f8;--paper-line:#d8e3ef;--ink:#002343;--ink-soft:#345067;--ink-muted:#7089a0;--on-navy:#fff;--on-navy-soft:#aebfd1;--on-navy-muted:#6b81a0;--navy-divider:#ffffff17;--accent:#2f8bff;--accent-soft:#2f8bff24;--green:#16a34a;--green-bright:#22c55e;--red:#e5484d;--amber:#f59e0b;--font-display:"Archivo Variable", "Segoe UI", sans-serif;--font-body:"Hanken Grotesk Variable", "Segoe UI", sans-serif;--shadow-sm:0 1px 2px #00234314;--shadow-md:0 4px 16px #0023431f;--shadow-lg:0 18px 50px #000c1c73}body{font-family:var(--font-body);background:var(--navy);color:var(--ink);overscroll-behavior:none;-webkit-font-smoothing:antialiased;height:100dvh;overflow:hidden}select option{color:#0f2942;background:#fff}input,textarea,select,button{font-family:inherit}.loading-screen{height:100vh;color:var(--on-navy-soft);background:var(--navy);letter-spacing:.3px;justify-content:center;align-items:center;font-size:14px;display:flex}.login-container{background:radial-gradient(900px 500px at 80% -10%, var(--navy-700), transparent 60%), radial-gradient(700px 600px at 10% 110%, var(--navy-800), transparent 55%), var(--navy);justify-content:center;align-items:center;height:100vh;display:flex;position:relative}.login-container:before{content:"";pointer-events:none;background-image:radial-gradient(#ffffff0d 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0}.login-box{border:1px solid var(--navy-divider);width:400px;box-shadow:var(--shadow-lg);background:#ffffff0f;border-radius:20px;padding:44px 40px;position:relative}.login-logo{text-align:center;margin-bottom:34px}.login-logo-img{object-fit:contain;width:auto;max-width:240px;height:96px;margin-bottom:14px}.login-logo h1{font-family:var(--font-display);letter-spacing:-.5px;color:var(--on-navy);margin:14px 0 6px;font-size:30px;font-weight:800}.login-logo p{color:var(--on-navy-soft);font-size:13.5px}.login-form{flex-direction:column;gap:18px;display:flex}.login-form .field label{color:var(--on-navy-soft)}.login-form .field input{border-color:var(--navy-divider);color:var(--on-navy);background:#ffffff0f}.login-form .field input::placeholder{color:var(--on-navy-muted)}.login-form .field input:focus{border-color:var(--accent);background:#ffffff17}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.7px;font-size:11px;font-weight:700}.field input,.field textarea,.field select{background:var(--paper);border:1.5px solid var(--paper-line);color:var(--ink);border-radius:10px;outline:none;padding:11px 13px;font-size:14px;transition:border-color .15s,box-shadow .15s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field-row{grid-template-columns:1fr 1fr;gap:12px;min-width:0;display:grid}.field-row .field{min-width:0}.field textarea{resize:vertical}.field select{cursor:pointer}.btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:700;transition:transform 80ms,background .15s,box-shadow .15s;display:inline-flex;box-shadow:0 4px 14px #2f8bff4d}.btn-primary:hover{background:#1d7af0}.btn-primary:active{transform:translateY(1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-secondary{color:var(--ink-soft);border:1.5px solid var(--paper-line);cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.btn-secondary:hover{border-color:var(--ink-muted);color:var(--ink)}.error-msg{color:var(--red);font-size:13px;font-weight:500}.app-wrapper{background:var(--navy);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.main-layout{flex:1;display:flex;overflow:hidden}.main-content{background:var(--paper);flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.mobile-bottom-nav,.chat-back-btn{display:none}.titlebar{background:var(--navy-900);-webkit-app-region:drag;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--navy-divider);flex-shrink:0;justify-content:space-between;align-items:center;height:36px;padding:0 6px 0 14px;display:flex}.titlebar-drag{font-family:var(--font-display);letter-spacing:.3px;color:var(--on-navy-soft);pointer-events:none;align-items:center;gap:8px;font-size:12.5px;font-weight:700;display:flex}.titlebar-logo{object-fit:contain;width:24px;height:24px}.titlebar-buttons{-webkit-app-region:no-drag;gap:2px;display:flex}.tb-btn{width:30px;height:24px;color:var(--on-navy-soft);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.tb-btn:hover{color:#fff;background:#ffffff1a}.tb-close:hover{background:var(--red);color:#fff}.update-bar{background:linear-gradient(90deg, var(--accent), #1d7af0);color:#fff;flex-shrink:0;align-items:center;gap:14px;padding:11px 20px;font-size:13.5px;font-weight:600;display:flex;position:relative;overflow:hidden}.update-bar.ready{background:linear-gradient(90deg, var(--green), #15914a)}.update-bar.deferred{background:linear-gradient(90deg, #0a3d6b, var(--navy))}.update-bar .ub-close{border-radius:8px;padding:6px 10px;font-size:12.5px;font-weight:700}.update-bar .ub-close:hover{background:#ffffff26}.update-bar .ub-icon{flex-shrink:0}.update-bar .ub-text{flex:1;min-width:0}.update-bar .ub-btn{color:var(--accent);cursor:pointer;background:#fff;border:none;border-radius:9px;flex-shrink:0;align-items:center;gap:6px;padding:7px 15px;font-size:13px;font-weight:700;transition:background .15s;display:flex}.update-bar .ub-btn.green{color:var(--green)}.update-bar .ub-btn:hover{background:#eef3f8}.update-bar .ub-close{color:#fff;cursor:pointer;opacity:.85;background:0 0;border:none;flex-shrink:0;padding:4px}.update-bar .ub-close:hover{opacity:1}.update-bar .ub-progress{background:#fffffff2;height:3px;transition:width .25s;position:absolute;bottom:0;left:0}.conv-menu{z-index:2600;background:var(--navy-800);border:1px solid #ffffff1f;border-radius:12px;flex-direction:column;gap:2px;min-width:178px;padding:5px;animation:.12s navDdIn;display:flex;position:fixed;box-shadow:0 14px 36px #00000080}.conv-menu button{text-align:left;color:var(--on-navy-soft);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:9px 12px;font-size:13px;font-weight:500;display:flex}.conv-menu button:hover{color:var(--on-navy);background:#ffffff12}.archived-toggle{width:100%;color:var(--on-navy-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:9px;margin-top:4px;padding:10px 12px;font-size:12.5px;font-weight:600;transition:background .15s,color .15s;display:flex}.archived-toggle:hover{color:var(--on-navy-soft);background:#ffffff0d}.archived-toggle span:first-of-type{text-align:left;flex:1}.archived-count{color:var(--on-navy-soft);background:#ffffff1a;border-radius:10px;justify-content:center;align-items:center;min-width:19px;height:19px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.archived-caret{transition:transform .16s}.archived-caret.open{transform:rotate(180deg)}.conv-time .muted-mark{vertical-align:-1px;color:var(--on-navy-muted);margin-right:4px}.conv-time .pinned-mark{vertical-align:-1px;color:var(--accent);margin-right:4px}.unread-badge.muted{background:#5a6f88}.qs-overlay{z-index:2500;background:#000c188c;justify-content:center;align-items:flex-start;padding-top:min(14vh,120px);display:flex;position:fixed;inset:0}.quick-switcher{background:var(--navy-800);border:1px solid #ffffff1f;border-radius:16px;width:min(520px,100vw - 32px);animation:.16s qsIn;overflow:hidden;box-shadow:0 24px 64px #0000008c}@keyframes qsIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.qs-input-row{color:var(--on-navy-muted);border-bottom:1px solid #ffffff17;align-items:center;gap:10px;padding:13px 16px;display:flex}.qs-input-row input{color:var(--on-navy);background:0 0;border:none;outline:none;flex:1;font-size:15px}.qs-input-row input::placeholder{color:var(--on-navy-muted)}.qs-input-row kbd{color:var(--on-navy-muted);border:1px solid #ffffff29;border-radius:5px;padding:2px 6px;font-family:inherit;font-size:10.5px}.qs-list{max-height:380px;padding:6px;overflow-y:auto}.qs-empty{color:var(--on-navy-muted);text-align:center;padding:18px 14px;font-size:13px}.qs-item{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:11px;width:100%;padding:8px 10px;display:flex}.qs-item.active{background:#2f8bff29}.qs-item-info{flex-direction:column;min-width:0;line-height:1.3;display:flex}.qs-item-name{color:var(--on-navy);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.qs-item-sub{color:var(--on-navy-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.signup-toast{top:calc(env(safe-area-inset-top,0px) + 14px);z-index:3000;color:#fff;background:#0a2a4d;border:1px solid #2f8bff80;border-radius:14px;align-items:center;gap:12px;max-width:min(440px,100vw - 28px);padding:10px 10px 10px 14px;animation:.22s signupToastIn;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #00000073}@keyframes signupToastIn{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.signup-toast-ico{background:var(--accent);color:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.signup-toast-body{cursor:pointer;flex-direction:column;min-width:0;line-height:1.25;display:flex}.signup-toast-body strong{font-size:13.5px;font-weight:700}.signup-toast-body span{color:#aebfd1;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.signup-toast-view{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:9px;flex-shrink:0;padding:7px 14px;font-size:12.5px;font-weight:700;transition:background .15s}.signup-toast-view:hover{background:#4a9bff}.signup-toast-x{color:var(--on-navy-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:4px;transition:background .15s,color .15s;display:flex}.signup-toast-x:hover{color:#fff;background:#ffffff14}.sidebar{background:var(--navy);border-right:1px solid var(--navy-divider);flex-direction:column;flex-shrink:0;width:280px;display:flex;overflow:hidden}.sidebar-header{justify-content:flex-start;align-items:center;gap:10px;padding:15px 18px 9px;display:flex}.sidebar-logo{object-fit:contain;width:auto;height:78px}.sidebar-brand-icon{object-fit:contain;border-radius:8px;width:27px;height:27px}.sidebar-brand-name{font-family:var(--font-display);color:#fff;letter-spacing:.2px;font-size:15.5px;font-weight:700}.sidebar-title{font-family:var(--font-display);letter-spacing:-.3px;color:var(--on-navy);font-size:19px;font-weight:800}.sidebar-nav{flex-direction:column;gap:2px;padding:4px 12px 10px;display:flex;position:relative}.nav-btn{width:100%;color:var(--on-navy-soft);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;justify-content:flex-start;align-items:center;gap:11px;padding:9px 12px;font-size:13.5px;font-weight:500;transition:background .15s,color .15s;display:flex}.nav-btn:hover{color:var(--on-navy);background:#ffffff0f}.nav-btn.active{color:#cfe3ff;background:#2f8bff29}.nav-badge{color:#fff;background:#e54848;border-radius:10px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:10.5px;font-weight:800;display:inline-flex}.nav-btn.active .nav-badge{color:#fff;background:#e54848}.nav-badge.missed{background:#e54848}.nav-dd-trigger{border:1px solid var(--navy-divider);width:100%;color:var(--on-navy);cursor:pointer;white-space:nowrap;background:#ffffff0d;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:flex}.nav-dd-trigger:hover{background:#ffffff14}.nav-dd-trigger.open{color:#cfe3ff;background:#2f8bff29;border-color:#2f8bff66}.nav-dd-current{text-align:left;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.nav-dd-caret{color:var(--on-navy-muted);flex-shrink:0;transition:transform .18s,color .15s}.nav-dd-trigger.open .nav-dd-caret{color:#cfe3ff;transform:rotate(180deg)}.nav-dd-trigger .nav-badge{margin-left:0}.nav-dd-menu{z-index:40;background:var(--navy-800);border:1px solid var(--navy-divider);border-radius:12px;flex-direction:column;gap:2px;padding:6px;animation:.14s navDdIn;display:flex;position:absolute;top:calc(100% - 6px);left:12px;right:12px;box-shadow:0 14px 32px #00000080}@keyframes navDdIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nav-dd-item{width:100%;color:var(--on-navy-soft);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:9px;align-items:center;gap:11px;padding:9px 12px;font-size:13.5px;font-weight:500;transition:background .15s,color .15s;display:flex}.nav-dd-item>span{text-align:left;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.nav-dd-item .nav-badge{margin-left:0}.nav-dd-item:hover{color:var(--on-navy);background:#ffffff0f}.nav-dd-item.active{color:#cfe3ff;background:#2f8bff29}.sidebar-search{border:1px solid var(--navy-divider);color:var(--on-navy-muted);background:#ffffff0d;border-radius:10px;align-items:center;gap:9px;margin:0 14px 10px;padding:10px 13px;display:flex}.sidebar-search input{color:var(--on-navy);background:0 0;border:none;outline:none;flex:1;font-size:13px}.sidebar-search input::placeholder{color:var(--on-navy-muted)}.contacts-list{flex:1;padding:4px 10px;overflow-y:auto}.contacts-list::-webkit-scrollbar{width:6px}.contacts-list::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.contact-item{cursor:pointer;content-visibility:auto;contain-intrinsic-size:auto 62px;border-radius:12px;align-items:center;gap:12px;padding:9px 11px;transition:background .12s;display:flex;position:relative}.contact-item:hover{background:#ffffff0f}.contact-item.active{background:#2f8bff29}.contact-avatar{background:linear-gradient(135deg, var(--navy-600), var(--navy-700));width:40px;height:40px;font-family:var(--font-display);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex;position:relative;box-shadow:inset 0 0 0 1px #ffffff14}.contact-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.contact-avatar.small{width:32px;height:32px;font-size:12px}.contact-avatar.group{background:linear-gradient(135deg, var(--accent), #1d7af0);color:#fff;border-radius:13px}.contact-avatar.group img{border-radius:13px}.list-section-head{letter-spacing:.2px;color:var(--on-navy-muted);justify-content:space-between;align-items:center;padding:14px 12px 6px;font-size:12px;font-weight:500;display:flex}.section-add{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;transition:transform .12s,box-shadow .15s,background .15s;display:flex;box-shadow:0 2px 10px #2f8bff73}.section-add:hover{background:#4a9bff;transform:translateY(-1px);box-shadow:0 4px 16px #2f8bff9e}.section-add:active{transform:translateY(0)scale(.95)}.list-empty{color:var(--on-navy-muted);padding:4px 12px 8px;font-size:12px}.status-dot{border:2.5px solid var(--navy);border-radius:50%;width:13px;height:13px;position:absolute;bottom:-2px;right:-2px}.status-dot.online{background:var(--green-bright);box-shadow:0 0 0 2px #22c55e40}.status-dot.offline{background:#4b6075}.contact-info{flex:1;min-width:0}.contact-name{color:var(--on-navy);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;display:block;overflow:hidden}.contact-dept{color:var(--on-navy-muted);font-size:12px;display:block}.contact-ext{color:var(--on-navy-muted);background:#ffffff0f;border-radius:6px;flex-shrink:0;padding:2px 7px;font-size:11px}.unread-badge{background:var(--accent);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:800;display:flex;box-shadow:0 2px 8px #2f8bff73}.conv-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.conv-row+.conv-row{margin-top:2px}.conv-time{color:var(--on-navy-muted);flex-shrink:0;font-size:11px}.contact-preview{min-width:0;color:var(--on-navy-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12.5px;overflow:hidden}.contact-item.has-unread .contact-preview{color:var(--on-navy);font-weight:700}.contact-item.has-unread .contact-name{font-weight:800}.contact-item.has-unread .conv-time{color:var(--accent);font-weight:700}.contacts-modal-overlay{z-index:200;background:#060e1a8c;animation:.12s floatIn;display:flex;position:fixed;inset:0}.contacts-modal{background:var(--navy);flex-direction:column;width:min(420px,100%);height:100%;display:flex;box-shadow:6px 0 30px #00000059}.contacts-modal-head{padding:16px 16px 10px;padding-top:calc(16px + env(safe-area-inset-top));font-family:var(--font-display);color:var(--on-navy);justify-content:space-between;align-items:center;font-size:17px;font-weight:700;display:flex}.contacts-modal-close{color:var(--on-navy-soft);cursor:pointer;background:#ffffff14;border:none;border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;transition:background .15s;display:flex}.contacts-modal-close:hover{color:#fff;background:#ffffff29}.contacts-newgroup{cursor:pointer;color:var(--on-navy);text-align:left;background:#ffffff0a;border:none;border-radius:12px;align-items:center;gap:12px;width:calc(100% - 24px);margin:4px 12px 6px;padding:11px 12px;font-size:14px;font-weight:600;display:flex}.contacts-newgroup:hover{background:#ffffff14}.cng-icon{background:linear-gradient(135deg, var(--accent), #1d7af0);color:#fff;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.cng-plus{color:var(--on-navy-muted);margin-left:auto}.contacts-modal-list{flex:1;padding:4px 10px;overflow-y:auto}.sidebar-footer{border-top:1px solid var(--navy-divider);align-items:center;gap:6px;padding:12px 14px;display:flex}.user-info{flex:1;min-width:0}.user-name{font-family:var(--font-display);color:var(--on-navy);font-size:13.5px;font-weight:700;display:block}.user-dept{color:var(--on-navy-muted);font-size:11.5px}.logout-btn{color:var(--on-navy-soft);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:8px;transition:all .15s}.logout-btn:hover{color:#fff;background:#ffffff14}.group-search{background:var(--paper-soft);border:1.5px solid var(--paper-line);color:var(--ink-muted);border-radius:10px;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;display:flex}.group-search input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:13px}.group-member-picker{border:1px solid var(--paper-line);border-radius:10px;flex-direction:column;gap:2px;max-height:280px;padding:6px;display:flex;overflow-y:auto}.gm-pick{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:7px 8px;transition:background .12s;display:flex}.gm-pick:hover{background:var(--paper-soft)}.gm-pick.on{background:var(--accent-soft)}.gm-pick .contact-avatar.small{background:linear-gradient(135deg, var(--navy-600), var(--navy-700))}.gm-check{border:2px solid var(--paper-line);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.gm-check.on{background:var(--accent);border-color:var(--accent)}.msg-sender{color:var(--accent);margin-bottom:2px;padding-left:2px;font-size:11.5px;font-weight:700}.chat-view{background:#f5f8fb;flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.chat-empty{color:var(--ink-muted);background:radial-gradient(circle at center, var(--paper-soft), var(--paper));flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.chat-empty-icon{background:linear-gradient(135deg, var(--navy), var(--navy-700));width:88px;height:88px;box-shadow:var(--shadow-md);border-radius:28px;justify-content:center;align-items:center;display:flex}.chat-empty p{font-size:14.5px}.chat-header{background:0 0;border-bottom:1px solid #0b223814;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 22px;display:flex}.chat-header-info{align-items:center;gap:12px;display:flex}.chat-header-info strong{font-family:var(--font-display);color:var(--ink);font-size:15.5px;font-weight:700;display:block}.chat-header .status-dot{border-color:#fff}.chat-presence{color:var(--ink-muted);align-items:center;gap:6px;font-size:12px;display:flex}.chat-presence .dot{border-radius:50%;width:7px;height:7px}.chat-presence .dot.on{background:var(--green-bright)}.chat-presence .dot.off{background:#c3d0dd}.call-btn{background:var(--green);color:#fff;cursor:pointer;border:none;border-radius:11px;align-items:center;gap:8px;padding:9px 18px;font-size:13.5px;font-weight:700;transition:background .15s,transform 80ms;display:inline-flex;box-shadow:0 4px 14px #16a34a52}.call-btn:hover{background:#15914a}.call-btn:active{transform:translateY(1px)}.messages-list{background:0 0;flex-direction:column;flex:1;gap:3px;padding:22px 22px 10px;display:flex;overflow-y:auto}.messages-list::-webkit-scrollbar{width:8px}.contacts-list::-webkit-scrollbar{width:8px}.calls-list::-webkit-scrollbar{width:8px}.forward-list::-webkit-scrollbar{width:8px}.mention-popup::-webkit-scrollbar{width:8px}.messages-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--navy-700), var(--navy-900));background-clip:padding-box;border:2px solid #0000;border-radius:4px}.contacts-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--navy-700), var(--navy-900));background-clip:padding-box;border:2px solid #0000;border-radius:4px}.calls-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--navy-700), var(--navy-900));background-clip:padding-box;border:2px solid #0000;border-radius:4px}.forward-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--navy-700), var(--navy-900));background-clip:padding-box;border:2px solid #0000;border-radius:4px}.mention-popup::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--navy-700), var(--navy-900));background-clip:padding-box;border:2px solid #0000;border-radius:4px}.messages-list::-webkit-scrollbar-thumb:hover{background:var(--accent);background-clip:padding-box;border:2px solid #0000}.contacts-list::-webkit-scrollbar-thumb:hover{background:var(--accent);background-clip:padding-box;border:2px solid #0000}.messages-list::-webkit-scrollbar-track{background:0 0}.contacts-list::-webkit-scrollbar-track{background:0 0}.calls-list::-webkit-scrollbar-track{background:0 0}.forward-list::-webkit-scrollbar-track{background:0 0}.mention-popup::-webkit-scrollbar-track{background:0 0}*{scrollbar-width:thin;scrollbar-color:var(--navy-700) transparent}.page-loading{color:var(--ink-muted);flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}.load-more-indicator{justify-content:center;padding:8px 0;display:flex}.load-more-indicator button{background:var(--paper);border:1px solid var(--paper-line);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:12px;transition:background .12s,color .12s}.load-more-indicator button:hover{color:var(--accent);background:#fff}.chat-no-messages{text-align:center;color:var(--ink-muted);background:var(--paper);border:1px solid var(--paper-line);box-shadow:var(--shadow-sm);border-radius:14px;margin:auto;padding:14px 22px;font-size:14px}.unread-sep{align-self:stretch;align-items:center;gap:10px;margin:12px 0 6px;display:flex}.unread-sep:before,.unread-sep:after{content:"";background:#2f8bff59;flex:1;height:1px}.unread-sep span{color:var(--accent);white-space:nowrap;background:#2f8bff1a;border:1px solid #2f8bff40;border-radius:12px;padding:3px 12px;font-size:11.5px;font-weight:700}.msg-act-btn.starred{color:#e8a723}.msg-meta .star-mark{color:#e8a723;vertical-align:-1px;margin-right:3px}.msg-row.sent .msg-meta .star-mark{color:#ffd977}.saved-overlay{z-index:40;background:#000c1866;justify-content:flex-end;align-items:flex-start;padding:58px 14px 14px;display:flex;position:absolute;inset:0}.saved-panel{background:var(--paper);border:1px solid var(--paper-line);border-radius:14px;flex-direction:column;width:min(360px,100% - 20px);max-height:min(480px,80%);animation:.15s qsIn;display:flex;overflow:hidden;box-shadow:0 18px 48px #0000004d}.saved-head{border-bottom:1px solid var(--paper-line);color:var(--ink);justify-content:space-between;align-items:center;padding:12px 14px;font-size:13.5px;font-weight:700;display:flex}.saved-head span{align-items:center;gap:7px;min-width:0;display:inline-flex}.saved-head button{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;padding:4px;display:flex}.saved-list{flex-direction:column;gap:2px;padding:6px;display:flex;overflow-y:auto}.saved-empty{color:var(--ink-muted);text-align:center;padding:20px 14px;font-size:13px;line-height:1.5}.saved-item{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;flex-direction:column;gap:2px;padding:9px 11px;display:flex}.saved-item:hover{background:#2f8bff14}.saved-item-text{color:var(--ink);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;display:-webkit-box;overflow:hidden}.saved-item-meta{color:var(--ink-muted);font-size:11.5px}.msg-row.jump-flash .bubble{animation:1.8s jumpFlash}@keyframes jumpFlash{0%,55%{box-shadow:0 0 0 3px #2f8bff8c}to{box-shadow:0 0 0 3px #2f8bff00}}.jump-bottom{z-index:30;background:var(--paper);width:42px;height:42px;color:var(--accent);border:1px solid var(--paper-line);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:transform .12s,box-shadow .15s;display:flex;position:absolute;bottom:92px;right:18px;box-shadow:0 4px 14px #0000002e}.jump-bottom:hover{transform:translateY(-2px);box-shadow:0 6px 18px #0000003d}.jump-count{background:var(--accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:19px;height:19px;padding:0 5px;font-size:11px;font-weight:800;display:inline-flex;position:absolute;top:-7px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #2f8bff66}.msgs-skeleton{flex-direction:column;gap:10px;padding:8px 2px;display:flex}.skel-bubble{background:linear-gradient(100deg, var(--paper) 40%, var(--paper-line) 50%, var(--paper) 60%);background-size:200% 100%;border-radius:16px;height:40px}.skel-bubble.r{align-self:flex-start}.skel-bubble.s{background:linear-gradient(100deg,#2f8bff24 40%,#2f8bff3d 50%,#2f8bff24 60%) 0 0/200% 100%;align-self:flex-end}.skel-card{background:var(--paper);border:1px solid var(--paper-line);width:min(560px,86%);box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;gap:14px;padding:26px;display:flex}.skel-line{background:linear-gradient(100deg, var(--paper-line) 40%, #0000001a 50%, var(--paper-line) 60%);background-size:200% 100%;border-radius:7px;height:13px}@media (prefers-reduced-motion:no-preference){.skel-bubble,.skel-line{animation:1.3s ease-in-out infinite skelShimmer}@keyframes skelShimmer{0%{background-position:180% 0}to{background-position:-20% 0}}.msg-row.msg-in{animation:.18s both msgIn}@keyframes msgIn{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.msg-reactions>*{animation:.16s cubic-bezier(.3,1.4,.6,1) both reactPop}@keyframes reactPop{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:none}}}.date-sep{z-index:5;pointer-events:none;justify-content:center;align-items:center;margin:16px 0 12px;display:flex;position:sticky;top:0}.date-sep span{pointer-events:auto;color:var(--ink-muted);background:var(--paper);border:1px solid #0b22380f;border-radius:20px;padding:4px 13px;font-size:11px;font-weight:600}.msg-group{flex-direction:column;display:flex}.msg-row{align-items:flex-end;gap:9px;max-width:72%;margin-top:2px;display:flex;position:relative}.msg-row.sent{flex-direction:row-reverse;align-self:flex-end}.msg-row.received{align-self:flex-start}.msg-row.grouped{margin-top:1px}.msg-row.next-same .msg-meta{display:none}.msg-row.grouped .bubble{border-top-left-radius:6px}.msg-row.sent.grouped .bubble{border-top-left-radius:14px;border-top-right-radius:6px}.msg-mini-avatar{background:linear-gradient(135deg, var(--navy-600), var(--navy-700));width:28px;height:28px;font-family:var(--font-display);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.msg-mini-avatar.hidden{visibility:hidden}.bubble{word-break:break-word;border-radius:16px;padding:9px 14px;font-size:14px;line-height:1.45;position:relative}.msg-row.received .bubble{color:var(--ink);background:#e7edf4;border:none;border-bottom-left-radius:5px}.msg-row.sent .bubble{background:var(--accent);color:#fff;border-bottom-right-radius:5px}.msg-row.sender-colored .msg-mini-avatar{background:var(--sender-color)}.msg-row.sender-colored .msg-sender{color:var(--sender-color)}.msg-row.sender-colored .bubble:not(.bubble-deleted):not(.bubble-image){border-left:3px solid var(--sender-color)}.msg-row.sender-colored .bubble-image{box-shadow:-3px 0 0 0 var(--sender-color), var(--shadow-sm)}.msg-meta{color:var(--ink-muted);justify-content:flex-end;align-items:center;gap:4px;margin-top:3px;font-size:10.5px;display:flex}.msg-row.received .msg-meta{justify-content:flex-start}.read-check{color:var(--ink-muted)}.read-check.read{color:var(--accent)}.msg-mini-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.msg-content{flex-direction:column;min-width:0;display:flex}.msg-row.sent .msg-content{align-items:flex-end}.msg-reply-btn{opacity:0;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;align-self:center;padding:6px;transition:opacity .15s,background .15s,color .15s}.msg-row:hover .msg-reply-btn{opacity:1}.msg-reply-btn:hover{background:var(--paper);color:var(--accent)}.msg-caret-btn{display:none}.msg-actions{opacity:0;flex-shrink:0;align-self:center;gap:2px;transition:opacity .15s;display:flex;position:relative}.msg-row:hover .msg-actions{opacity:1}.msg-act-btn{background:var(--paper);border:1px solid var(--paper-line);color:var(--ink-muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:background .12s,color .12s,transform .12s;display:flex}.msg-act-btn:hover{color:var(--accent);background:#fff;transform:scale(1.08)}.msg-act-btn.danger:hover{color:#e54848}.msg-row.sent .msg-actions{order:-1}.reaction-picker{border:1px solid var(--paper-line);z-index:50;white-space:nowrap;background:#fff;border-radius:999px;gap:2px;margin-bottom:4px;padding:6px 8px;animation:.14s floatIn;display:flex;position:absolute;bottom:100%;box-shadow:0 8px 22px #00000024}.reaction-picker.received{left:48px}.reaction-picker.sent{right:48px}.reaction-picker button{cursor:pointer;background:0 0;border:none;border-radius:8px;padding:2px 6px;font-size:20px;transition:background .1s,transform .1s}.reaction-picker button:hover{background:var(--paper);transform:scale(1.2)}.msg-reactions{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.reaction-pill{background:var(--paper);border:1px solid var(--paper-line);color:var(--ink-soft);cursor:pointer;border-radius:999px;align-items:center;gap:3px;padding:2px 8px;font-size:12px;transition:background .12s,border-color .12s;display:inline-flex}.reaction-pill:hover{background:#fff}.reaction-pill.mine{border-color:var(--accent);color:var(--accent);background:#2f8bff24;font-weight:600}.reaction-count{font-size:11px}.bubble-deleted{font-style:italic;border:1px dashed var(--paper-line)!important;color:var(--ink-muted)!important;box-shadow:none!important;background:0 0!important}.bubble-deleted em{color:var(--ink-muted);font-style:italic}.bubble-editing{background:var(--paper);min-width:260px;padding:8px}.edit-input{border:1px solid var(--paper-line);background:#fff;border-radius:8px;outline:none;width:100%;padding:6px 10px;font-size:14px}.edit-input:focus{border-color:var(--accent)}.edit-actions{justify-content:flex-end;gap:6px;margin-top:6px;display:flex}.edit-actions button{border:1px solid var(--paper-line);cursor:pointer;color:var(--ink-soft);background:0 0;border-radius:7px;padding:4px 10px;font-size:12px}.edit-actions button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.edited-tag{opacity:.7;font-size:10px;font-style:italic}.mention{color:var(--accent);background:#2f8bff2e;border-radius:4px;padding:0 4px;font-weight:600}.mention.me{color:#b07700;background:#ffc40047}.msg-row.mentions-me .bubble{box-shadow:inset 0 0 0 2px #ffc4008c}.mention-popup{border:1px solid var(--paper-line);z-index:200;background:#fff;border-radius:12px;max-height:220px;animation:.14s floatIn;position:absolute;bottom:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #00000029}.mention-item{cursor:pointer;text-align:left;width:100%;color:var(--ink);background:0 0;border:none;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:flex}.mention-item.active,.mention-item:hover{background:var(--paper)}.mention-avatar{background:var(--navy-700);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:600;display:flex;overflow:hidden}.mention-avatar img{object-fit:cover;width:100%;height:100%}.pinned-banner{border-bottom:1px solid var(--paper-line);cursor:pointer;background:#2f8bff14;align-items:center;gap:10px;padding:8px 16px;transition:background .12s;display:flex}.pinned-banner:hover{background:#2f8bff24}.pinned-banner>svg:first-child{color:var(--accent);flex-shrink:0}.pinned-content{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.pinned-from{color:var(--accent);font-size:11px;font-weight:600}.pinned-text{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.pinned-close{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px}.pinned-close:hover{background:var(--paper);color:var(--ink)}.msg-act-btn.pinned{color:var(--accent);background:#2f8bff1f}.header-icon-btn{background:var(--paper);color:var(--ink-muted);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .12s;display:flex}.header-icon-btn:hover{background:var(--paper-line)}.header-icon-btn.call-icon{color:#fff;background:#1aa56b}.header-icon-btn.call-icon:hover{background:#168f5c}.search-bar{background:var(--paper-soft);border-bottom:1px solid var(--paper-line);align-items:center;gap:6px;padding:8px 16px;display:flex}.search-bar>svg:first-child{color:var(--ink-muted);flex-shrink:0}.search-bar input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:13px}.search-count{color:var(--ink-muted);padding:0 4px;font-size:11px}.search-bar button{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;display:flex}.search-bar button:hover:not(:disabled){background:var(--paper);color:var(--accent)}.search-bar button:disabled{opacity:.4;cursor:default}.msg-row.search-hit .bubble{box-shadow:0 0 0 2px var(--accent) inset}.bubble-pdf{cursor:pointer;background:var(--paper);border-left:4px solid #d93025;border-radius:12px;align-items:center;gap:12px;min-width:240px;max-width:320px;padding:12px;display:flex}.bubble-pdf:hover{background:#fff}.pdf-thumb{border:1px solid var(--paper-line);color:#d93025;background:#fff;border-radius:6px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:2px;width:48px;height:56px;display:flex}.pdf-thumb span{font-size:10px;font-weight:700}.chat-header-info .contact-avatar.clickable{cursor:pointer;transition:transform .12s}.chat-header-info .contact-avatar.clickable:hover{transform:scale(1.06)}.lightbox{z-index:9000;background:#000000db;justify-content:center;align-items:center;animation:.14s floatIn;display:flex;position:fixed;inset:0}.lightbox-content{justify-content:center;align-items:center;max-width:92vw;max-height:92vh;display:flex}.lightbox-content img{object-fit:contain;border-radius:8px;max-width:92vw;max-height:92vh}.lightbox-content iframe{background:#fff;border:none;border-radius:8px;width:88vw;height:88vh}.lightbox-close,.lightbox-download{top:calc(env(safe-area-inset-top,0px) + 14px);z-index:3;color:#fff;cursor:pointer;background:#ffffff29;border:none;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;text-decoration:none;display:flex;position:absolute}.lightbox-close{right:16px}.lightbox-download{right:66px}.lightbox-close:hover,.lightbox-download:hover{background:#ffffff3d}.lightbox-content{overflow:hidden}.lightbox-nav{z-index:2;color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{background:#ffffff42}.lightbox-nav.prev{left:16px}.lightbox-nav.next{right:16px}.lightbox-pdf-card{text-align:center;background:#fff;border-radius:18px;flex-direction:column;align-items:center;gap:12px;width:min(320px,84vw);padding:28px 22px;display:flex}.lb-pdf-ico{color:#e24b4a;background:#e24b4a1f;border-radius:18px;justify-content:center;align-items:center;width:66px;height:66px;display:flex}.lb-pdf-name{color:var(--ink);word-break:break-word;font-size:14px;font-weight:600;line-height:1.4}.lb-pdf-btn{width:100%;color:var(--ink);background:#0b22380f;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:14px;font-weight:700;text-decoration:none;display:flex}.lb-pdf-btn.primary{background:var(--accent);color:#fff}@media (width<=768px){.lightbox-nav{width:42px;height:42px}.lightbox-nav.prev{left:8px}.lightbox-nav.next{right:8px}}.forward-overlay{z-index:8000;background:#00000080;justify-content:center;align-items:center;animation:.14s floatIn;display:flex;position:fixed;inset:0}.forward-modal{background:#fff;border-radius:14px;flex-direction:column;width:420px;max-width:92vw;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 24px 56px #0000004d}.forward-head{border-bottom:1px solid var(--paper-line);color:var(--navy-900);align-items:center;gap:8px;padding:14px 16px;display:flex}.forward-head strong{flex:1}.forward-close{cursor:pointer;color:var(--ink-muted);background:0 0;border:none;border-radius:6px;padding:4px}.forward-close:hover{background:var(--paper)}.forward-search{border-bottom:1px solid var(--paper-line);background:var(--paper-soft);align-items:center;gap:8px;padding:8px 14px;display:flex}.forward-search svg{color:var(--ink-muted)}.forward-search input{background:0 0;border:none;outline:none;flex:1;font-size:13px}.forward-list{padding:6px 0;overflow-y:auto}.forward-sec{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);padding:8px 16px 4px;font-size:11px;font-weight:700}.forward-item{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:8px 16px;display:flex}.forward-item:hover{background:var(--paper)}.forward-meta{flex-direction:column;gap:1px;display:flex}.forward-name{color:var(--ink);font-size:13px}.forward-dept{color:var(--ink-muted);font-size:11px}.forward-empty{text-align:center;color:var(--ink-muted);padding:20px;font-size:13px}.calls-page{background:#f5f8fc;flex-direction:column;height:100%;display:flex}.calls-header{background:var(--navy-900);color:#fff;align-items:center;gap:12px;padding:16px 24px;display:flex}.calls-back{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.calls-back:hover{background:#ffffff38}.calls-header h2{margin:0;font-size:18px;font-weight:600}.calls-list{flex:1;padding:12px 0;overflow-y:auto}.calls-empty{text-align:center;color:var(--ink-muted);padding:40px}.call-row{border-bottom:1px solid var(--paper-line);align-items:center;gap:12px;padding:10px 24px;display:flex}.call-row:hover{background:var(--paper-soft)}.call-avatar{background:var(--navy-700);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-weight:600;display:flex;overflow:hidden}.call-avatar img{object-fit:cover;width:100%;height:100%}.call-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.call-name{color:var(--ink);font-size:14px;font-weight:600}.call-row.missed .call-name{color:#d93025}.call-meta{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:5px;font-size:12px;display:flex}.call-meta .ic.out{color:#1aa56b}.call-meta .ic.in{color:var(--accent)}.call-meta .ic.missed{color:#d93025}.call-redial{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.call-redial:hover{filter:brightness(1.1)}.reply-quote{border-left:3px solid var(--accent);background:#2f8bff1a;border-radius:7px;flex-direction:column;gap:1px;max-width:280px;margin-bottom:3px;padding:5px 10px;display:flex}.reply-quote-from{color:var(--accent);font-size:11px;font-weight:700}.reply-quote-text{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.reply-bar{background:var(--paper);border-top:1px solid var(--paper-line);justify-content:space-between;align-items:center;gap:12px;padding:10px 20px;display:flex}.reply-bar-content{align-items:center;gap:12px;min-width:0;display:flex}.reply-bar-icon{color:var(--accent);flex-shrink:0}.reply-bar-text-wrap{border-left:3px solid var(--accent);flex-direction:column;min-width:0;padding-left:10px;display:flex}.reply-bar-from{color:var(--accent);font-size:12px;font-weight:700}.reply-bar-text{color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;max-width:55vw;font-size:12.5px;overflow:hidden}.reply-bar-close{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;padding:6px}.reply-bar-close:hover{background:var(--paper-soft);color:var(--red)}.bubble-audio{padding:8px 10px}.contact-item{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}@media (width<=768px){.messages-list .msg-row{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.messages-list .msg-row input,.messages-list .msg-row textarea{-webkit-user-select:text;user-select:text}}.app-wrapper.embed{height:100dvh}.app-wrapper.embed .sidebar-header{padding:11px 14px 7px}.app-wrapper.embed .sidebar-brand-icon{width:24px;height:24px}.app-wrapper.embed .sidebar-brand-name{font-size:14px}.view-anim{flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.chat-anim{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.chat-anim .messages-list{flex:1}@media (prefers-reduced-motion:no-preference){.app-enter{animation:.32s both appEnter}@keyframes appEnter{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}.view-anim{animation:.18s both viewIn}@keyframes viewIn{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.chat-anim{animation:.16s both convIn}@keyframes convIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:none}}.login-box{animation:.34s both appEnter}}.contact-preview.typing-live{color:var(--green-bright);font-style:italic;font-weight:600}.bubble-video{flex-direction:column;gap:4px;padding:5px;display:flex}.bubble-video video{background:#000;border-radius:12px;max-width:min(320px,62vw);max-height:340px;display:block}.video-caption{color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;max-width:min(320px,62vw);padding:0 6px 3px;font-size:11px;text-decoration:none;overflow:hidden}.video-caption:hover{text-decoration:underline}.msg-row.sent .bubble-video{background:var(--accent)}.msg-row.sent .video-caption{color:#ffffffd9}.profile-overlay{z-index:45;background:#000c1873;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.profile-card{background:var(--paper);border:1px solid var(--paper-line);text-align:center;border-radius:18px;flex-direction:column;align-items:center;gap:4px;width:min(300px,100% - 24px);padding:26px 20px 20px;animation:.15s qsIn;display:flex;position:relative;box-shadow:0 20px 52px #00000052}.profile-close{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:5px;display:flex;position:absolute;top:10px;right:10px}.profile-close:hover{background:#0000000f}.profile-avatar{background:linear-gradient(135deg, var(--navy-600), var(--navy-700));width:84px;height:84px;font-family:var(--font-display);color:#fff;border-radius:26px;justify-content:center;align-items:center;margin-bottom:8px;font-size:30px;font-weight:800;display:flex;position:relative}.profile-avatar img{object-fit:cover;border-radius:26px;width:100%;height:100%}.profile-avatar .status-dot.big{border-color:var(--paper);width:18px;height:18px;bottom:-2px;right:-2px}.profile-name{color:var(--ink);font-size:17px;font-weight:800}.profile-dept{color:var(--ink-muted);font-size:13px}.profile-status{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;background:#2f8bff1a;border-radius:10px;max-width:100%;margin-top:3px;padding:3px 12px;font-size:12.5px;overflow:hidden}.profile-seen{color:var(--ink-muted);margin-top:2px;font-size:12px}.profile-actions{gap:8px;width:100%;margin-top:14px;display:flex}.profile-act{color:var(--accent);cursor:pointer;background:#2f8bff1a;border:none;border-radius:11px;flex:1;justify-content:center;align-items:center;gap:7px;padding:10px 8px;font-size:13px;font-weight:700;transition:background .15s;display:flex}.profile-act:hover{background:#2f8bff2e}.profile-act.call{color:var(--green);background:#16a34a1f}.profile-act.call:hover{background:#16a34a33}.header-status{color:var(--accent);font-weight:600}.chat-header-info.clickable-info{cursor:pointer;border-radius:10px;margin:-4px -8px;padding:4px 8px;transition:background .12s}.chat-header-info.clickable-info:hover{background:#0b22380a}.profile-panel-overlay{z-index:46;background:#000c1866;justify-content:flex-end;display:flex;position:absolute;inset:0}.profile-panel{background:#f5f8fb;flex-direction:column;width:min(380px,100%);height:100%;animation:.22s cubic-bezier(.2,.8,.2,1) ppSlide;display:flex;overflow:hidden;box-shadow:-8px 0 32px #0000002e}@keyframes ppSlide{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}.pp-head{font-size:14.5px;font-weight:700;font-family:var(--font-display);color:var(--ink);border-bottom:1px solid #0b223814;flex-shrink:0;align-items:center;gap:14px;padding:14px 18px;display:flex}.pp-close{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px;display:flex}.pp-close:hover{background:#0b22380f}.pp-scroll{flex-direction:column;flex:1;gap:14px;padding:18px 16px 28px;display:flex;overflow-y:auto}.pp-hero{text-align:center;flex-direction:column;align-items:center;gap:5px;padding:8px 0 4px;display:flex}.pp-avatar{background:linear-gradient(135deg, var(--navy-600), var(--navy-700));width:116px;height:116px;font-family:var(--font-display);color:#fff;border-radius:50%;justify-content:center;align-items:center;margin-bottom:6px;font-size:44px;font-weight:800;display:flex;overflow:hidden}.pp-avatar img{object-fit:cover;width:100%;height:100%}.pp-name{font-family:var(--font-display);color:var(--ink);font-size:20px;font-weight:800}.pp-seen{color:var(--ink-muted);font-size:12.5px}.pp-seen.on{color:var(--green);font-weight:600}.pp-actions{gap:10px;margin-top:12px;display:flex}.pp-actions button{color:var(--accent);cursor:pointer;background:#2f8bff1a;border:none;border-radius:13px;flex-direction:column;align-items:center;gap:4px;padding:11px 22px;font-size:12px;font-weight:700;transition:background .15s;display:flex}.pp-actions button:hover{background:#2f8bff2e}.pp-actions button.call{color:var(--green);background:#16a34a1f}.pp-actions button.call:hover{background:#16a34a33}.pp-card{background:#fff;border:1px solid #0b223812;border-radius:15px;padding:6px 4px}.pp-row{align-items:flex-start;gap:13px;padding:11px 14px;display:flex}.pp-row+.pp-row{border-top:1px solid #0b22380d}.pp-row-ico{color:var(--accent);flex-shrink:0;margin-top:1px}.pp-row-txt{flex-direction:column;gap:1px;min-width:0;display:flex}.pp-row-label{color:var(--ink-muted);font-size:11px;font-weight:600}.pp-row-value{color:var(--ink);word-break:break-word;font-size:14px}.pp-row-value.link{color:var(--accent);text-decoration:none}.pp-row-value.link:hover{text-decoration:underline}.pp-media-card{padding:12px}.pp-media-tabs{gap:6px;margin-bottom:12px;display:flex}.pp-media-tabs button{color:var(--ink-muted);cursor:pointer;background:#0b22380d;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:12.5px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.pp-media-tabs button.on{background:var(--accent);color:#fff}.pp-media-tabs button b{opacity:.85;font-size:11px}.pp-media-empty{text-align:center;color:var(--ink-muted);padding:22px 8px;font-size:12.5px}.pp-media-grid{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.pp-media-thumb{aspect-ratio:1;cursor:pointer;background:var(--paper-soft);border:none;border-radius:9px;padding:0;position:relative;overflow:hidden}.pp-media-thumb img,.pp-media-thumb video{object-fit:cover;width:100%;height:100%;display:block}.pp-play{color:#fff;background:#00000047;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pp-files{flex-direction:column;gap:3px;display:flex}.pp-file{border-radius:10px;align-items:center;gap:11px;padding:9px 8px;text-decoration:none;display:flex}.pp-file:hover{background:#0b22380a}.pp-file-ico{width:36px;height:36px;color:var(--accent);background:#2f8bff1a;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pp-file-txt{flex-direction:column;min-width:0;display:flex}.pp-file-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.pp-file-meta{color:var(--ink-muted);font-size:11px}.bday-banner{color:var(--on-navy);background:linear-gradient(135deg,#ffc40029,#2f8bff1f);border:1px solid #ffc40059;border-radius:11px;align-items:center;gap:8px;margin:2px 2px 8px;padding:9px 12px;font-size:12.5px;line-height:1.35;display:flex}.bday-banner span{flex:1;min-width:0}.bday-banner button{color:var(--on-navy-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:3px;display:flex}.bday-banner button:hover{color:var(--on-navy)}.msg-row.pending-out .bubble{opacity:.72}.pending-meta{align-items:center;gap:4px;font-style:italic;display:inline-flex}.msg-link{color:var(--accent);word-break:break-all;text-decoration:underline}.msg-row.sent .msg-link{color:#dceaff}.link-preview{background:#0b22380d;border:1px solid #0b22381a;border-radius:11px;flex-direction:column;max-width:330px;margin-top:8px;text-decoration:none;display:flex;overflow:hidden}.link-preview:hover{background:#0b223817}.link-preview img{object-fit:cover;width:100%;max-height:150px;display:block}.link-preview .lp-txt{flex-direction:column;gap:2px;min-width:0;padding:9px 11px;display:flex}.link-preview .lp-title{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.link-preview .lp-desc{color:var(--ink-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.link-preview .lp-site{color:var(--ink-muted);opacity:.8;font-size:11px}.msg-row.sent .link-preview{background:#ffffff24;border-color:#ffffff38}.msg-row.sent .link-preview:hover{background:#fff3}.msg-row.sent .link-preview .lp-title{color:#fff}.msg-row.sent .link-preview .lp-desc,.msg-row.sent .link-preview .lp-site{color:#fffc}.emoji-search{color:var(--ink-muted);background:#0b22380f;border-radius:9px;align-items:center;gap:7px;margin:8px 8px 4px;padding:7px 10px;display:flex}.emoji-search input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:12.5px}.emoji-none{color:var(--ink-muted);text-align:center;grid-column:1/-1;padding:14px 8px;font-size:12px}.audio-msg{align-items:center;gap:9px;width:min(272px,62vw);display:flex}.audio-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.audio-btn:active{transform:scale(.94)}.audio-wave{cursor:pointer;flex:1;align-items:center;gap:2px;height:30px;padding:2px 0;display:flex}.aw-bar{background:#0b223840;border-radius:2px;flex:1;min-width:2px;transition:background .12s}.aw-bar.done{background:var(--accent)}.audio-time{color:var(--ink-muted);text-align:right;font-variant-numeric:tabular-nums;min-width:32px;font-size:11.5px}.audio-rate{color:var(--ink-muted);cursor:pointer;background:#0b223814;border:none;border-radius:8px;flex-shrink:0;padding:4px 7px;font-size:11px;font-weight:700}.audio-rate:hover{background:#0b223824}.msg-row.sent .bubble-audio{background:var(--accent)}.msg-row.sent .audio-btn{color:var(--accent);background:#fff}.msg-row.sent .aw-bar{background:#ffffff59}.msg-row.sent .aw-bar.done{background:#fff}.msg-row.sent .audio-time{color:#ffffffd9}.msg-row.sent .audio-rate{color:#fff;background:#fff3}.msg-row.sent .audio-rate:hover{background:#ffffff4d}.mic-btn{background:var(--paper-soft);border:1.5px solid var(--paper-line);color:var(--ink-soft);cursor:pointer;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;transition:all .15s;display:flex}.mic-btn:hover{border-color:var(--accent);color:var(--accent)}.emoji-btn{background:var(--paper-soft);border:1.5px solid var(--paper-line);color:var(--ink-soft);cursor:pointer;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;transition:all .15s;display:flex}.emoji-btn:hover{border-color:var(--accent);color:var(--accent)}.improve-btn{background:var(--paper-soft);border:1.5px solid var(--paper-line);color:#7c5cff;cursor:pointer;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;transition:all .15s;display:flex}.improve-btn:hover:not(:disabled){background:#7c5cff14;border-color:#7c5cff}.improve-btn:disabled{opacity:.6;cursor:default}.improve-notice{color:var(--ink-soft);background:var(--paper);border:1px solid var(--paper-line);border-radius:999px;align-self:center;margin-bottom:6px;padding:4px 14px;font-size:12px;font-weight:600;animation:.15s floatIn}.upload-error{color:#b3261e;text-align:center;background:#fdecea;border:1px solid #f5c6c0;border-radius:999px;align-self:center;max-width:90%;margin-bottom:6px;padding:6px 16px;font-size:12.5px;font-weight:600;animation:.15s floatIn}.chat-input-wrap{position:relative}.emoji-picker{border:1px solid var(--paper-line);z-index:200;background:#fff;border-radius:14px;flex-direction:column;width:min(320px,100% - 24px);height:min(280px,46vh);animation:.18s floatIn;display:flex;position:absolute;bottom:calc(100% - 4px);right:14px;overflow:hidden;box-shadow:0 12px 32px #0000002e}.emoji-tabs{border-bottom:1px solid var(--paper-line);background:var(--paper-soft);gap:2px;padding:6px 8px;display:flex}.emoji-tab{cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:6px;font-size:18px;transition:background .12s}.emoji-tab:hover{background:var(--paper-line)}.emoji-tab.active{background:#2f8bff26}.emoji-grid{flex:1;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px;display:grid;overflow-y:auto}.emoji-item{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:4px;font-size:20px;transition:background .1s;display:flex}.emoji-item:hover{background:var(--paper-line)}.typing-indicator{align-items:center;gap:8px;padding:6px 12px 4px;animation:.2s floatIn;display:flex}.typing-bubble{background:var(--paper-soft);border:1px solid var(--paper-line);border-radius:18px 18px 18px 4px;align-items:center;gap:4px;padding:8px 12px;display:flex}.typing-dot{background:var(--ink-soft);opacity:.5;border-radius:50%;width:6px;height:6px;animation:1.2s infinite typingBlink}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBlink{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.typing-text{color:var(--ink-soft);font-size:12px;font-style:italic}.typing-avatars{display:flex}.typing-avatar{border:2px solid var(--paper-soft);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-right:-7px;font-size:10px;font-weight:700;display:flex;overflow:hidden}.typing-avatars .typing-avatar:last-child{margin-right:8px}.typing-avatar img{object-fit:cover;width:100%;height:100%}.chat-input.recording{gap:14px}.rec-cancel{color:var(--red);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:8px;transition:background .15s;display:flex}.rec-cancel:hover{background:#fef2f2}.rec-indicator{color:var(--ink-soft);background:var(--paper-soft);border:1.5px solid var(--paper-line);border-radius:14px;flex:1;align-items:center;gap:10px;padding:11px 16px;font-size:14px;display:flex}.rec-dot{background:var(--red);border-radius:50%;width:11px;height:11px;animation:1s infinite rec-blink}@keyframes rec-blink{0%,to{opacity:1}50%{opacity:.25}}.bubble-image{padding:4px}.bubble-image img{cursor:pointer;border-radius:12px;max-width:260px;max-height:280px;display:block}.bubble-file{cursor:pointer;align-items:center;gap:12px;min-width:200px;padding:12px 14px;display:flex}.file-icon{border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.msg-row.received .file-icon{background:var(--accent-soft);color:var(--accent)}.msg-row.sent .file-icon{color:#fff;background:#ffffff26}.file-meta{min-width:0}.file-name{white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:13px;font-weight:600;overflow:hidden}.file-size{opacity:.7;font-size:11px}.chat-input{background:0 0;border-top:none;flex-shrink:0;align-items:center;gap:9px;padding:10px 16px 16px;display:flex;position:relative}.chat-input-wrap{background:#fff;border:1px solid #0b223814;border-radius:24px;flex:1;align-items:center;min-width:0;padding:4px 4px 4px 10px;transition:border-color .15s,box-shadow .15s;display:flex;box-shadow:0 1px 4px #0b22380f}.chat-input-wrap:focus-within{box-shadow:0 0 0 3px var(--accent-soft);border-color:#2f8bff80}.chat-input-wrap input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;padding:9px 8px;font-size:14px}.chat-input-wrap input::placeholder{color:var(--ink-muted)}.attach-btn{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:8px;transition:all .15s;display:flex}.attach-btn:hover{color:var(--accent);background:var(--accent-soft)}.send-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:all .15s;display:flex}.send-btn:active{transform:scale(.93)}.send-btn:hover:not(:disabled){background:#1d7af0}.send-btn:disabled{box-shadow:none;cursor:not-allowed;background:#c3d3e3}.upload-chip{color:var(--accent);align-items:center;gap:8px;padding:0 6px;font-size:12px;display:flex}.attach-btn:disabled{cursor:wait}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.call-overlay{z-index:200;background:radial-gradient(#2f8bff2e,#0000 60%),#000816e0;justify-content:center;align-items:center;padding:24px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.call-card{border:1px solid var(--navy-divider);text-align:center;background:#0a1f38;border-radius:28px;flex-direction:column;align-items:center;width:min(440px,92vw);padding:44px 36px 36px;animation:.3s cubic-bezier(.2,.8,.2,1) callCardIn;display:flex;position:relative;box-shadow:0 32px 80px #0000008c,0 0 0 1px #ffffff0a}@keyframes callCardIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.call-card .call-tag{letter-spacing:.3px;background:#2f8bff29;border-radius:999px;align-items:center;gap:7px;margin-bottom:26px;padding:5px 12px;font-size:12px;display:inline-flex}.call-card .call-avatar-xl{border-radius:40px;width:138px;height:138px;font-size:54px}.call-card .call-avatar-xl.ringing:before,.call-card .call-avatar-xl.ringing:after{border-width:3px;border-radius:40px}.call-card .call-name-xl{margin:28px 0 8px;font-size:26px}.call-card .call-status-xl{font-size:15px}.call-card .call-controls{gap:38px;margin-top:38px}.call-card .cc-btn{width:68px;height:68px}.call-card .cc-hangup,.call-card .cc-accept{width:76px;height:76px}.call-card .cc-accept{animation:2s ease-in-out infinite pulseAccept}@keyframes pulseAccept{0%,to{box-shadow:0 8px 24px #22c55e73}50%{box-shadow:0 8px 28px #22c55ed9,0 0 0 8px #22c55e2e}}@media (width<=480px){.call-card{border-radius:22px;padding:32px 22px 26px}.call-card .call-avatar-xl{width:108px;height:108px;font-size:42px}.call-card .call-name-xl{font-size:22px}.call-card .call-controls{gap:24px;margin-top:28px}.call-card .cc-btn{width:58px;height:58px}.call-card .cc-hangup,.call-card .cc-accept{width:64px;height:64px}}.call-tag{letter-spacing:.3px;color:var(--accent);margin-bottom:22px;font-size:12px;font-weight:500}.call-avatar-xl{background:linear-gradient(135deg, var(--navy-600), var(--navy-700));width:116px;height:116px;font-family:var(--font-display);color:#fff;border-radius:36px;justify-content:center;align-items:center;font-size:46px;font-weight:800;display:flex;position:relative;box-shadow:inset 0 0 0 1px #ffffff1a,0 0 0 4px #2f8bff24,0 16px 40px #0006}.call-avatar-xl img,.call-avatar-sm img,.call-mini-avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.call-avatar-xl.ringing:before,.call-avatar-xl.ringing:after{content:"";border:2.5px solid #22c55e;border-radius:36px;animation:1.9s ease-out infinite ring-pulse;position:absolute;inset:0}.call-avatar-xl.ringing:after{animation-delay:.95s}@keyframes ring-pulse{0%{opacity:.7;transform:scale(.9)}70%{opacity:.12}to{opacity:0;transform:scale(1.55)}}.call-name-xl{font-family:var(--font-display);color:var(--on-navy);margin:22px 0 6px;font-size:23px;font-weight:600}.call-status-xl{color:var(--on-navy-soft);font-size:14px}.call-status-xl.connected{color:var(--green-bright)}.call-timer-xl{color:var(--on-navy-soft);font-variant-numeric:tabular-nums;letter-spacing:1px;margin-top:4px;font-size:15px}.call-controls{justify-content:center;align-items:center;gap:18px;margin-top:32px;display:flex}.cc-btn{cursor:pointer;color:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;transition:transform .1s,background .15s;display:flex}.cc-btn:active{transform:scale(.92)}.cc-mute{background:#ffffff1f}.cc-mute:hover{background:#fff3}.cc-mute.active{color:var(--navy);background:#fff}.cc-hangup{background:var(--red);width:64px;height:64px;box-shadow:0 8px 24px #e5484d73}.cc-hangup:hover{background:#d33b40}.cc-accept{background:var(--green-bright);width:64px;height:64px;box-shadow:0 8px 24px #22c55e73}.cc-accept:hover{background:#1aa84a}.cc-label{color:var(--on-navy-muted);margin-top:8px;font-size:11px}.cc-group{flex-direction:column;align-items:center;display:flex}.cc-cfg{background:#ffffff1f}.cc-cfg:hover{background:#fff3}.cc-cfg.active{color:var(--navy);background:#fff}.call-overlay-active{z-index:9998}.call-float{z-index:9999;border:1px solid var(--navy-divider);width:320px;box-shadow:var(--shadow-lg);text-align:center;background:#0a1f38;border-radius:22px;flex-direction:column;align-items:center;max-height:calc(100vh - 68px);padding:14px 20px 24px;animation:.25s cubic-bezier(.2,.8,.2,1) floatIn;display:flex;position:fixed;top:52px;right:22px;overflow:hidden auto}.call-float.staged{border-radius:28px;width:min(440px,92vw);max-height:90vh;padding:28px 32px;position:relative;top:auto;right:auto}.call-float.staged .call-avatar-xl{border-radius:32px;width:120px;height:120px;font-size:48px}.call-float.staged .call-name-xl{margin:22px 0 6px;font-size:24px}.call-float.staged .call-controls{gap:16px;margin-top:26px}.call-float.staged .cc-btn{width:56px;height:56px}.call-float.staged .cc-hangup{width:62px;height:62px}.call-float.staged.video-mode{width:min(720px,92vw);padding:18px 22px 24px}.call-float.staged.video-mode .call-video-area{width:100%;max-height:60vh}@media (width>=769px){.call-float.staged.video-mode .call-video-area{aspect-ratio:var(--remote-ar,16 / 9)}.call-float.staged.video-mode .call-video-area[data-orient=portrait]{width:auto;max-width:100%;height:58vh;max-height:58vh;margin:6px auto}}.call-float.staged.sharing{width:min(1500px,96vw);max-height:94vh}.call-float.staged.sharing .call-video-area{max-height:80vh}.call-float.group.sharing{width:min(1500px,96vw)}.call-float.group.sharing .gc-tiles{max-height:78vh}@media (width<=600px){.call-float.staged{border-radius:22px;width:94vw;padding:22px 20px}.call-float.staged .call-avatar-xl{width:96px;height:96px;font-size:38px}.call-float.staged .call-name-xl{font-size:19px}.call-float.staged .cc-btn{width:50px;height:50px}.call-float.staged .cc-hangup{width:56px;height:56px}}.call-float::-webkit-scrollbar{width:8px}.call-float::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:8px}@keyframes floatIn{0%{opacity:0;transform:translateY(-12px)scale(.96)}to{opacity:1;transform:none}}.call-float-head{justify-content:space-between;align-items:center;width:100%;margin-bottom:8px;display:flex}.call-head-actions{align-items:center;gap:6px;display:flex}.call-float-min{color:var(--on-navy-soft);cursor:pointer;background:#ffffff1a;border:none;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.call-float-min:hover{color:#fff;background:#fff3}.call-float .call-avatar-xl{border-radius:28px;width:92px;height:92px;font-size:38px}.call-float .call-name-xl{margin:16px 0 4px;font-size:20px}.call-float .call-controls{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px}.call-float .cc-btn{width:46px;height:46px}.call-float .cc-hangup{width:50px;height:50px}.call-controls-wrap{row-gap:12px}.call-float.video-mode .call-controls{flex-wrap:nowrap;gap:16px;margin-top:14px}.call-float.video-mode .cc-btn{width:52px;height:52px}.call-float.video-mode .cc-hangup{width:58px;height:58px}@media (width>=769px){.call-float .call-controls,.call-card .call-controls{background:#ffffff0d;border:.5px solid #ffffff12;border-radius:24px;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;padding:8px 14px}.call-card .call-controls{gap:18px}}.call-audio-cfg{border-top:1px solid var(--navy-divider);text-align:left;flex-direction:column;gap:6px;width:100%;margin-top:18px;padding-top:16px;display:flex}.call-cfg-head{color:var(--on-navy);justify-content:space-between;align-items:center;margin-bottom:6px;font-size:14px;font-weight:700;display:flex}.call-audio-cfg label{color:var(--on-navy-soft);align-items:center;gap:5px;margin-top:4px;font-size:11px;font-weight:700;display:flex}.call-audio-cfg select{border:1px solid var(--navy-divider);color:var(--on-navy);cursor:pointer;background:#ffffff0f;border-radius:8px;outline:none;padding:8px 10px;font-size:12.5px}.cc-invite{background:#ffffff1f}.cc-invite:hover{background:#fff3}.cc-invite.active{color:#63b3ed;background:#63b3ed40}.call-float.invite-open{width:320px}.call-invite-panel{border-top:1px solid var(--navy-divider);flex-direction:column;gap:8px;width:100%;margin-top:16px;padding-top:14px;display:flex}.call-invite-header{color:var(--on-navy-soft);text-transform:uppercase;letter-spacing:.5px;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;display:flex}.call-invite-close{color:var(--on-navy-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.call-invite-close:hover{color:var(--on-navy);background:#ffffff1a}.call-invite-search{border:1px solid var(--navy-divider);color:var(--on-navy);background:#ffffff12;border-radius:9px;outline:none;width:100%;padding:8px 12px;font-size:12.5px}.call-invite-search::placeholder{color:var(--on-navy-muted)}.call-invite-search:focus{background:#ffffff17;border-color:#63b3ed66}.call-invite-list{flex-direction:column;gap:2px;max-height:160px;display:flex;overflow-y:auto}.call-invite-list::-webkit-scrollbar{width:4px}.call-invite-list::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.call-invite-item{cursor:pointer;text-align:left;width:100%;color:var(--on-navy-soft);background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:7px 8px;transition:background .12s;display:flex}.call-invite-item:hover{color:var(--on-navy);background:#ffffff12}.call-invite-item.selected{color:#fff;background:#63b3ed26}.call-invite-avatar{background:var(--navy-700);color:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:flex}.call-invite-item.selected .call-invite-avatar{background:#63b3ed4d}.call-invite-name{flex:1;font-size:13px;font-weight:500}.call-invite-check{color:#63b3ed;flex-shrink:0}.call-invite-empty{color:var(--on-navy-muted);text-align:center;padding:8px 0;font-size:12px}.call-invite-confirm{cursor:pointer;color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:11px;width:100%;margin-top:2px;padding:10px 14px;font-size:13px;font-weight:700;transition:opacity .15s}.call-invite-confirm:hover{opacity:.88}.call-invite-confirm:disabled{opacity:.5;cursor:not-allowed}.cc-camera{background:#ffffff1f}.cc-camera:hover{background:#fff3}.cc-camera.active{color:var(--green-bright);background:#22c55e40}.cc-speaker{background:#ffffff1f}.cc-speaker:hover{background:#fff3}.cc-speaker.active{color:var(--navy);background:#fff}.cc-screen{background:#ffffff1f}.cc-screen:hover{background:#fff3}.cc-screen.active{background:var(--accent-soft);color:var(--accent)}.cc-screen:disabled{opacity:.4;cursor:not-allowed}.call-remote-video.screen,.call-local-pip.screen,.gc-tile-video.screen{object-fit:contain;background:#000;transform:none}.call-screen-badge{z-index:3;color:#fff;background:#2f8bffeb;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;top:12px;left:12px;box-shadow:0 2px 8px #0000004d}.gc-tile.screen{outline:2px solid var(--accent);outline-offset:-2px;grid-column:span 2}.gc-tile-screen{z-index:3;color:#fff;background:#2f8bffeb;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex;position:absolute;top:8px;right:8px}.ssp-overlay{z-index:10000;background:#0009;justify-content:center;align-items:center;animation:.14s floatIn;display:flex;position:fixed;inset:0}.ssp-modal{background:var(--navy-800);border:1px solid var(--navy-divider);width:min(720px,92vw);max-height:80vh;box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.ssp-head{border-bottom:1px solid var(--navy-divider);color:#fff;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.ssp-close{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.ssp-close:hover{background:#fff3}.ssp-tabs{gap:8px;padding:12px 18px 0;display:flex}.ssp-tab{color:var(--on-navy-soft);cursor:pointer;background:#ffffff14;border:none;border-radius:9px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.ssp-tab:hover{background:#ffffff24}.ssp-tab.active{background:var(--accent);color:#fff}.ssp-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;padding:16px 18px;display:grid;overflow-y:auto}.ssp-empty{color:var(--on-navy-muted);text-align:center;grid-column:1/-1;padding:30px 0}.ssp-item{border:1px solid var(--navy-divider);cursor:pointer;background:#ffffff0d;border-radius:10px;flex-direction:column;gap:6px;padding:8px;transition:border-color .12s,transform .12s;display:flex}.ssp-item:hover{border-color:var(--accent);transform:translateY(-2px)}.ssp-item img{aspect-ratio:16/9;object-fit:cover;background:#000;border-radius:6px;width:100%}.ssp-item-name{color:var(--on-navy-soft);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.call-float.video-mode{width:840px;padding:14px 18px 22px}.call-float.video-mode .call-float-head{margin-bottom:6px}.call-video-area{background:var(--navy-900);aspect-ratio:16/9;border-radius:16px;width:100%;margin:6px 0;position:relative;overflow:hidden}.call-video-area.collapsed{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}.call-cam-notice{text-align:center;width:100%;color:var(--green-bright);background:#22c55e1f;border:1px solid #22c55e4d;border-radius:10px;margin:2px 0 8px;padding:7px 10px;font-size:13px;font-weight:600;animation:.25s floatIn}.call-media-warn,.call-reconnecting{text-align:center;color:#fbbf24;background:#fbbf241f;border:1px solid #fbbf244d;border-radius:10px;justify-content:center;align-items:center;gap:7px;width:100%;margin:2px 0 8px;padding:7px 10px;font-size:12.5px;font-weight:600;display:flex}.call-avatar-area{justify-content:center;align-items:center;padding:10px 0 6px;display:flex}.call-remote-video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.call-remote-avatar-overlay{background:linear-gradient(135deg, var(--navy-800), var(--navy-900));flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.call-avatar-sm{background:linear-gradient(135deg, var(--navy-600), var(--navy-700));width:96px;height:96px;font-family:var(--font-display);color:#fff;border-radius:30px;justify-content:center;align-items:center;font-size:40px;font-weight:700;display:flex;position:relative;box-shadow:0 8px 24px #00000059}.call-remote-avatar-overlay span{color:#fff;font-size:15px;font-weight:600}.call-cam-off-badge{color:var(--on-navy-soft);background:#ffffff14;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:500;display:inline-flex}.call-overlay-badges{flex-direction:column;align-items:center;gap:6px;display:flex}.call-remote-mic-badge{z-index:3;color:#fff;background:#d93025eb;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;bottom:12px;left:12px;box-shadow:0 2px 8px #0000004d}.call-name-sm .name-mic-off{color:#e54848;vertical-align:-2px;margin-right:5px}.gc-tile-mic{z-index:3;color:#fff;background:#d93025eb;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:flex;position:absolute;top:8px;left:8px;box-shadow:0 2px 8px #0000004d}.call-local-pip{object-fit:cover;background:var(--navy-800);opacity:0;pointer-events:none;border:2px solid #ffffff40;border-radius:12px;width:200px;height:112px;transition:opacity .25s;position:absolute;bottom:14px;right:14px;transform:scaleX(-1);box-shadow:0 4px 16px #0006}.call-local-pip.visible{opacity:1;pointer-events:auto}.call-info-row{justify-content:space-between;align-items:center;margin:4px 0;padding:0 2px;display:flex}.call-name-sm{color:var(--on-navy);font-size:13px;font-weight:600}.call-timer-sm{color:var(--on-navy-soft);font-variant-numeric:tabular-nums;font-size:13px}.call-float.group{width:840px}.gc-title{font-family:var(--font-display);color:var(--on-navy);justify-content:center;align-items:center;gap:8px;margin:4px 0 12px;font-size:18px;font-weight:800;display:flex}.gc-tiles{grid-template-columns:repeat(2,1fr);gap:10px;width:100%;display:grid}.gc-tiles.count-1{grid-template-columns:1fr}.gc-tiles.count-2,.gc-tiles.count-3,.gc-tiles.count-4{grid-template-columns:repeat(2,1fr)}.gc-tiles.count-5,.gc-tiles.count-6{grid-template-columns:repeat(3,1fr)}.gc-tile{background:var(--navy-900);aspect-ratio:16/9;border-radius:14px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.gc-tile-video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.gc-tile-avatar{background:linear-gradient(135deg, var(--navy-700), var(--navy-900));font-family:var(--font-display);color:#fff;justify-content:center;align-items:center;font-size:34px;font-weight:700;display:flex;position:absolute;inset:0}.gc-tile.has-video .gc-tile-avatar{display:none}.gc-tile-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;background:linear-gradient(#0000,#0009);padding:6px 10px;font-size:13px;font-weight:600;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.gc-status{color:var(--on-navy-muted);text-align:center;margin:8px 0 0;font-size:12px}@media (prefers-reduced-motion:no-preference){.gc-tile{animation:.28s cubic-bezier(.2,.8,.2,1) both gcTileIn}@keyframes gcTileIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}}.gc-toast{color:#fff;white-space:nowrap;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:6;background:#0000008c;border-radius:999px;padding:7px 15px;font-size:12.5px;font-weight:600;animation:3.2s forwards gcToast;position:absolute;bottom:96px;left:50%;transform:translate(-50%)}@keyframes gcToast{0%{opacity:0;transform:translate(-50%,8px)}10%,82%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-6px)}}.call-ended-overlay{z-index:200;background:radial-gradient(700px 500px at 50% 40%,#0a1f38b8,#000c18d1);justify-content:center;align-items:center;animation:1.9s forwards ceoFade;display:flex;position:fixed;inset:0}.call-ended-card{text-align:center;flex-direction:column;align-items:center;gap:6px;animation:1.9s cubic-bezier(.2,.8,.2,1) forwards ceoCard;display:flex}.call-ended-ico{color:#ff6b6a;background:#e24b4a29;border-radius:50%;justify-content:center;align-items:center;width:74px;height:74px;margin-bottom:8px;animation:1.9s cubic-bezier(.2,.8,.2,1) forwards ceoIco;display:flex}.call-ended-title{font-family:var(--font-display);color:#fff;font-size:18px;font-weight:800}.call-ended-name{color:var(--on-navy-soft);font-size:13.5px}.call-ended-dur{color:var(--on-navy-muted);font-variant-numeric:tabular-nums;margin-top:2px;font-size:13px}@keyframes ceoFade{0%{opacity:0}12%{opacity:1}80%{opacity:1}to{opacity:0}}@keyframes ceoCard{0%{opacity:0;transform:scale(.86)}14%{opacity:1;transform:scale(1)}82%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@keyframes ceoIco{0%{transform:scale(.5)rotate(-12deg)}16%{transform:scale(1.12)rotate(0)}26%{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.call-ended-card,.call-ended-ico{animation:none}}.call-float.pip{width:100vw;height:100vh;max-height:none;box-shadow:none;background:var(--navy-900);-webkit-app-region:drag;border:none;border-radius:0;flex-direction:column;align-items:stretch;margin:0;padding:0;animation:none;display:flex;position:fixed;inset:0;overflow:hidden}.call-float.pip button,.call-float.pip select,.call-float.pip input,.call-float.pip video{-webkit-app-region:no-drag}.call-float.pip .call-float-head{flex:none;margin:0;padding:5px 10px}.call-float.pip .call-tag{letter-spacing:.5px;font-size:10px}.call-float.pip .call-cam-notice,.call-float.pip .call-media-warn{display:none}.call-float.pip .call-video-area{aspect-ratio:auto;border-radius:0;flex:auto;min-height:0;margin:0}.call-float.pip .call-local-pip{width:96px;height:54px;bottom:8px;right:8px}.call-float.pip .call-avatar-area{flex-direction:column;flex:auto;gap:8px;padding:0}.call-float.pip .call-avatar-area .call-avatar-xl{border-radius:22px;width:72px;height:72px;font-size:30px}.call-float.pip .call-info-row{margin:0;padding:2px 10px}.call-float.pip .call-name-sm,.call-float.pip .call-timer-sm{font-size:11px}.call-float.group.pip .gc-tiles{flex:auto;align-content:start;gap:4px;min-height:0;margin:0;padding:4px 6px;overflow:auto}.call-float.group.pip .gc-tile{border-radius:8px}.call-float.group.pip .gc-tile-avatar{font-size:20px}.call-float.group.pip .gc-tile-name{padding:2px 5px;font-size:9px}.call-float.group.pip .gc-status{margin:2px 0;font-size:10px}.pip-resize-handle{cursor:nwse-resize;z-index:20;-webkit-app-region:no-drag;touch-action:none;width:30px;height:30px;position:absolute;top:0;left:0}.pip-resize-handle:before{content:"";border-top:2.5px solid #fff9;border-left:2.5px solid #fff9;border-radius:4px 0 0;width:11px;height:11px;position:absolute;top:6px;left:6px}.pip-resize-handle:hover:before{border-color:#fff}.pip-resize-handle:hover{background:linear-gradient(135deg,#ffffff1f,#0000 70%);border-radius:12px 0 0}.call-float.pip .call-controls{background:#00000047;flex-wrap:nowrap;flex:none;justify-content:center;gap:8px;margin:0;padding:7px 8px}.call-float.pip .cc-label{display:none}.call-float.pip .cc-btn{width:38px;height:38px}.call-float.pip .cc-hangup{width:42px;height:42px}.call-mini{z-index:200;background:linear-gradient(135deg, var(--navy-800), var(--navy));border:1px solid var(--navy-divider);box-shadow:var(--shadow-lg);border-radius:16px;align-items:center;gap:10px;padding:8px 10px 8px 12px;animation:.2s floatIn;display:flex;position:fixed;top:52px;right:22px}.call-mini-avatar{background:linear-gradient(135deg, var(--navy-600), var(--navy-700));width:36px;height:36px;font-family:var(--font-display);color:#fff;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex}.call-mini-info{flex-direction:column;min-width:96px;display:flex}.call-mini-name{color:var(--on-navy);white-space:nowrap;text-overflow:ellipsis;max-width:130px;font-size:13px;font-weight:700;overflow:hidden}.call-mini-status{color:var(--green-bright);font-variant-numeric:tabular-nums;font-size:11.5px}.call-mini-btn{cursor:pointer;width:34px;height:34px;color:var(--on-navy);background:#ffffff1a;border:none;border-radius:10px;justify-content:center;align-items:center;transition:background .15s;display:flex}.call-mini-btn:hover{background:#fff3}.call-mini-btn.muted{color:var(--red)}.call-mini-btn.hang{background:var(--red);color:#fff}.call-mini-btn.hang:hover{background:#d33b40}.embed-view{background:#fff;flex:1;height:100%;overflow:hidden}.embed-frame{border:none;width:100%;height:100%;display:block}.meet-view{background:var(--paper);flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.meet-head{border-bottom:1px solid var(--paper-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.meet-tabs{background:var(--paper-soft);border-radius:11px;gap:4px;padding:4px;display:flex}.meet-tab{cursor:pointer;color:var(--ink-muted);background:0 0;border:none;border-radius:8px;align-items:center;gap:7px;padding:8px 14px;font-size:13.5px;font-weight:600;display:flex}.meet-tab.active{background:var(--paper);color:var(--ink);box-shadow:0 1px 4px #00000014}.meet-new-btn{cursor:pointer;background:var(--accent);color:#fff;border:none;border-radius:10px;align-items:center;gap:7px;padding:9px 15px;font-size:13.5px;font-weight:700;display:flex;box-shadow:0 3px 10px #2f8bff59}.meet-new-btn:hover{background:#1d7af0}.meet-body{flex-direction:column;flex:1;gap:16px;min-height:0;padding:16px;display:flex;overflow-y:auto}.meet-cal{background:var(--paper);border:1px solid var(--paper-line);border-radius:16px;max-width:460px;padding:14px}.meet-cal-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.meet-cal-head button{background:var(--paper-soft);cursor:pointer;width:30px;height:30px;color:var(--ink);border:none;border-radius:8px;justify-content:center;align-items:center;display:flex}.meet-cal-head button:hover{background:var(--paper-line)}.meet-cal-month{color:var(--ink);text-transform:capitalize;font-size:14.5px;font-weight:700}.meet-cal-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.meet-cal-wd{text-align:center;color:var(--ink-muted);padding:4px 0;font-size:11px;font-weight:700}.meet-cal-day{aspect-ratio:1;cursor:pointer;color:var(--ink);background:0 0;border:none;border-radius:9px;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex;position:relative}.meet-cal-day:hover{background:var(--paper-soft)}.meet-cal-day.out{color:var(--ink-faint,#b9c2cc)}.meet-cal-day.today{color:var(--accent);font-weight:800}.meet-cal-day.selected{background:var(--accent);color:#fff}.meet-cal-dot{background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;bottom:5px}.meet-cal-day.selected .meet-cal-dot{background:#fff}.meet-cal-clear{background:var(--paper-soft);cursor:pointer;width:100%;color:var(--accent);border:none;border-radius:9px;margin-top:10px;padding:8px;font-size:12.5px;font-weight:600}.meet-list{flex:1}.meet-list-title{color:var(--ink-muted);text-transform:capitalize;align-items:center;gap:7px;margin-bottom:10px;font-size:13px;font-weight:700;display:flex}.meet-empty{color:var(--ink-muted);background:var(--paper-soft);text-align:center;border-radius:12px;padding:16px;font-size:13.5px}.meet-card{background:var(--paper);border:1px solid var(--paper-line);border-radius:13px;align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}.meet-card-icon{background:var(--accent-soft,#2f8bff1f);width:40px;height:40px;color:var(--accent);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.meet-card-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.meet-card-title{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;font-weight:700;overflow:hidden}.meet-card-meta{color:var(--ink-muted);align-items:center;gap:5px;font-size:12px;display:flex}.meet-card-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.meet-join{cursor:pointer;background:var(--green-bright);color:#fff;border:none;border-radius:9px;align-items:center;gap:6px;padding:8px 13px;font-size:13px;font-weight:700;display:flex}.meet-join:hover{background:#1aa84a}.meet-icon-btn{cursor:pointer;background:var(--paper-soft);width:34px;height:34px;color:var(--ink-muted);border:none;border-radius:9px;justify-content:center;align-items:center;display:flex}.meet-icon-btn:hover{background:var(--paper-line);color:var(--ink)}.meet-icon-btn.danger:hover{color:var(--red);background:#e5484d24}.meet-room-wrap{background:#0b1320;flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.meet-room-bar{color:#fff;background:#0b1320;align-items:center;gap:12px;padding:8px 12px;display:flex}.meet-room-back,.meet-room-copy{cursor:pointer;color:#fff;background:#ffffff1f;border:none;border-radius:9px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.meet-room-back:hover,.meet-room-copy:hover{background:#ffffff38}.meet-room-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:700;overflow:hidden}.jitsi-room{flex:1;min-height:0}.jitsi-room iframe{border:0;display:block;width:100%!important;height:100%!important}.meet-mode{gap:8px;display:flex}.meet-mode button{cursor:pointer;border:1.5px solid var(--paper-line);background:var(--paper);color:var(--ink-muted);border-radius:11px;flex:1;justify-content:center;align-items:center;gap:7px;padding:11px;font-size:13px;font-weight:600;display:flex}.meet-mode button.active{border-color:var(--accent);background:var(--accent-soft,#2f8bff1a);color:var(--accent)}.meet-link-box{gap:8px;margin:6px 0 4px;display:flex}.meet-link-box input{border:1px solid var(--paper-line);background:var(--paper-soft);min-width:0;color:var(--ink);border-radius:10px;flex:1;padding:10px 12px;font-size:13px}.meet-link-box .btn-primary{white-space:nowrap;align-items:center;gap:6px;display:flex}.ticket-view{background:var(--paper-soft);flex-direction:column;height:100%;display:flex;overflow:hidden}.ticket-header{background:var(--navy);flex-direction:column;gap:14px;padding:18px 24px;display:flex}.ticket-header h2{font-family:var(--font-display);color:var(--on-navy);font-size:20px;font-weight:800}.ticket-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.filter-tabs{background:#ffffff0d;border-radius:11px;gap:4px;padding:4px;display:flex}.filter-tab{color:var(--on-navy-soft);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;transition:all .15s}.filter-tab:hover{color:var(--on-navy)}.filter-tab.active{background:var(--accent);color:#fff}.tickets-list{flex-direction:column;flex:1;gap:11px;padding:16px 24px;display:flex;overflow-y:auto}.tickets-list::-webkit-scrollbar{width:7px}.tickets-list::-webkit-scrollbar-thumb{background:#c3d3e3;border-radius:4px}.ticket-card{background:var(--paper);border:1px solid var(--paper-line);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:14px;padding:16px 18px;transition:all .15s}.ticket-card:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.ticket-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:9px;display:flex}.ticket-title{font-family:var(--font-display);color:var(--ink);font-size:15px;font-weight:700}.ticket-badges{flex-shrink:0;gap:6px;display:flex}.badge{border-radius:20px;padding:4px 10px;font-size:11px;font-weight:700}.ticket-meta{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:8px;font-size:12px;display:flex}.ticket-meta strong{color:var(--ink-soft);font-weight:600}.ticket-date{margin-left:auto}.ticket-desc{color:var(--ink-soft);margin-bottom:12px;font-size:13px;line-height:1.5}.ticket-actions{flex-wrap:wrap;gap:6px;display:flex}.status-btn{background:var(--paper-soft);border:1px solid var(--paper-line);cursor:pointer;border-radius:8px;padding:5px 12px;font-size:12px;font-weight:600;transition:all .15s}.status-btn:hover{border-color:currentColor}.empty-state{text-align:center;color:var(--ink-muted);padding:50px;font-size:14px}.modal-overlay{z-index:100;background:#000c1cb3;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--paper);width:500px;max-width:95vw;box-shadow:var(--shadow-lg);border-radius:18px;flex-direction:column;gap:18px;padding:28px;display:flex}.modal h3{font-family:var(--font-display);color:var(--ink);font-size:19px;font-weight:800}.modal form{flex-direction:column;gap:16px;display:flex}.modal-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.settings-view{background:#f5f8fb;flex-direction:column;height:100%;display:flex;overflow:hidden}.settings-header{background:0 0;border-bottom:1px solid #0b223814;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.settings-header h2{font-family:var(--font-display);color:var(--ink);font-size:17px;font-weight:700}.settings-body{flex:1;width:100%;max-width:680px;margin:0 auto;padding:22px 24px 30px;overflow:hidden auto}.settings-section{background:#fff;border:1px solid #0b223812;border-radius:16px;flex-direction:column;gap:15px;margin-bottom:14px;padding:20px 22px;display:flex}.settings-section h3{font-family:var(--font-display);color:var(--ink);align-items:center;gap:10px;font-size:14.5px;font-weight:700;display:flex}.sec-ico{width:28px;height:28px;color:var(--accent);background:#2f8bff1c;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.settings-hint{color:var(--ink-muted);margin-top:-6px;font-size:12.5px;line-height:1.55}.settings-warn{color:var(--amber);font-size:12.5px;font-weight:600}.avatar-edit{align-items:center;gap:18px;display:flex}.avatar-preview{background:linear-gradient(135deg, var(--navy-600), var(--navy-700));width:88px;height:88px;font-family:var(--font-display);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:34px;font-weight:800;display:flex;position:relative;overflow:visible}.avatar-preview img{object-fit:cover;border-radius:50%;width:100%;height:100%}.avatar-preview:disabled{cursor:wait;opacity:.8}.avatar-cam{background:var(--accent);color:#fff;border:2.5px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;bottom:0;right:0}.avatar-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.avatar-meta strong{font-family:var(--font-display);color:var(--ink);font-size:16px;font-weight:700}.avatar-meta>span{color:var(--ink-muted);font-size:13px}.admin-view{background:var(--paper-soft);flex-direction:column;height:100%;display:flex;overflow:hidden}.admin-header{background:var(--navy);flex-direction:column;gap:14px;padding:18px 24px;display:flex}.admin-title{align-items:center;gap:9px;display:flex}.admin-title h2{font-family:var(--font-display);color:var(--on-navy);font-size:20px;font-weight:800}.admin-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-search{border:1px solid var(--navy-divider);min-width:220px;color:var(--on-navy-muted);background:#ffffff0f;border-radius:10px;flex:1;align-items:center;gap:9px;padding:9px 13px;display:flex}.admin-search input{color:var(--on-navy);background:0 0;border:none;outline:none;flex:1;font-size:13px}.admin-search input::placeholder{color:var(--on-navy-muted)}.admin-header .btn-secondary{color:var(--on-navy-soft);border-color:var(--navy-divider)}.admin-header .btn-secondary:hover{color:#fff;border-color:#ffffff4d}.admin-msg{border-radius:12px;justify-content:space-between;align-items:center;margin:14px 24px 0;padding:12px 18px;font-size:13px;font-weight:500;display:flex}.admin-msg.ok{color:#15803d;background:#dcfce7}.admin-msg.err{color:#b91c1c;background:#fee2e2}.admin-msg button{color:inherit;cursor:pointer;background:0 0;border:none}.admin-table-wrap{flex:1;padding:18px 24px;overflow-y:auto}.admin-table-wrap::-webkit-scrollbar{width:7px}.admin-table-wrap::-webkit-scrollbar-thumb{background:#c3d3e3;border-radius:4px}.admin-table{border-collapse:separate;border-spacing:0;background:var(--paper);width:100%;box-shadow:var(--shadow-sm);border-radius:14px;font-size:13.5px;overflow:hidden}.admin-table th{text-align:left;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.6px;background:var(--paper-soft);border-bottom:1px solid var(--paper-line);padding:13px 16px;font-size:11px;font-weight:700}.admin-table td{border-bottom:1px solid var(--paper-line);vertical-align:middle;color:var(--ink);padding:12px 16px}.admin-table tr:last-child td{border-bottom:none}.admin-table tbody tr:hover td{background:var(--paper-soft)}.inactive-row td{opacity:.5}.user-cell{align-items:center;gap:10px;font-weight:600;display:flex}.role-badge{border-radius:20px;padding:4px 10px;font-size:11px;font-weight:700}.role-badge.admin{background:var(--accent-soft);color:var(--accent)}.role-badge.user{color:var(--ink-muted);background:#eef2f6}.status-badge{border-radius:20px;padding:4px 10px;font-size:11px;font-weight:700}.status-badge.active{color:#15803d;background:#dcfce7}.status-badge.inactive{color:#94a3b8;background:#f1f5f9}.action-btns{gap:5px;display:flex}.icon-btn{background:var(--paper);border:1.5px solid var(--paper-line);color:var(--ink-muted);cursor:pointer;border-radius:9px;align-items:center;padding:7px;transition:all .15s;display:flex}.icon-btn:hover{border-color:var(--ink-muted);color:var(--ink)}.icon-btn.danger:hover{border-color:var(--red);color:var(--red);background:#fef2f2}.icon-btn.success:hover{border-color:var(--green);color:var(--green);background:#f0fdf4}.icon-btn:disabled{opacity:.5;cursor:wait}.admin-tabs{background:var(--navy);border-bottom:1px solid var(--navy-divider);gap:0;padding:0 24px;display:flex}.admin-tab{cursor:pointer;color:var(--on-navy-muted);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:13px 20px;font-size:13px;font-weight:600;transition:color .15s,border-color .15s;display:flex;position:relative}.admin-tab:hover{color:var(--on-navy-soft)}.admin-tab.active{color:#fff;border-bottom-color:#2f8bff}.pending-badge{color:#fff;text-align:center;background:#ef4444;border-radius:999px;min-width:18px;padding:1px 6px;font-size:10px;font-weight:800}.pending-avatar{background:linear-gradient(135deg,#f59e0b,#d97706)!important}.pending-empty{color:var(--ink-muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:60px 24px;display:flex}.pending-empty p{font-size:14px}.login-divider{background:var(--navy-divider);width:100%;height:1px;margin:10px 0 14px}.login-register-cta{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.login-register-cta span{color:var(--on-navy-muted);font-size:13px}.btn-register-cta{border:1.5px solid var(--navy-divider);color:var(--on-navy-soft);cursor:pointer;background:#ffffff12;border-radius:12px;width:100%;padding:11px 28px;font-size:13.5px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.btn-register-cta:hover{color:#fff;background:#ffffff1f;border-color:#ffffff40}.btn-forgot{color:var(--on-navy-muted);cursor:pointer;background:0 0;border:none;align-self:center;padding:2px 0;font-size:13px;font-weight:500;transition:color .15s}.btn-forgot:hover{color:var(--accent);text-decoration:underline}.reset-hint{color:var(--on-navy-muted);font-size:12.5px;line-height:1.5}.reset-done{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.reset-done-icon{color:var(--accent)}.reset-done h2{color:#fff;font-size:19px;font-weight:700}.reset-done p{color:var(--on-navy-soft);font-size:13.5px;line-height:1.55}.reset-done .btn-primary{margin-top:6px}.reset-done .btn-register-cta{margin-top:2px}.register-back-link{color:var(--on-navy-muted);cursor:pointer;text-align:center;background:0 0;border:none;padding:4px 0;font-size:13px;transition:color .15s}.register-back-link:hover{color:var(--on-navy-soft)}.register-success-box{text-align:center;align-items:center;gap:6px;padding:40px 36px}.register-success-title{font-family:var(--font-display);color:var(--on-navy);margin-top:8px;font-size:22px;font-weight:800}.register-success-text{color:var(--on-navy-soft);margin-bottom:6px;font-size:13.5px;line-height:1.7}.register-success-text strong{color:#fff}.rec-date{border:1px solid var(--navy-divider);color:var(--on-navy-muted);background:#ffffff0f;border-radius:10px;align-items:center;gap:7px;padding:7px 11px;display:flex}.rec-date input[type=date]{color:var(--on-navy);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:0 0;border:none;outline:none;font-family:inherit;font-size:12.5px}.rec-date span{color:var(--on-navy-muted);font-size:12px}.rec-stats{background:var(--paper);border-bottom:1px solid var(--paper-line);color:var(--ink-muted);gap:20px;padding:12px 24px;font-size:13px;display:flex}.rec-stats strong{color:var(--ink);font-family:var(--font-display)}.rec-stats span{align-items:center;gap:6px;display:flex}.rec-parts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rec-caller,.rec-callee{color:var(--ink);font-weight:700}.rec-arrow{color:var(--ink-muted);font-size:11px;font-weight:500}.rec-player-row td{background:var(--paper-soft)!important}.rec-player{align-items:center;gap:12px;padding:6px 2px;display:flex}.rec-player audio{height:40px}@media (width<=768px){.titlebar{display:none!important}.sidebar{border-right:none;width:100%}.sidebar-nav,.footer-settings{display:none}.app-wrapper{padding-top:env(safe-area-inset-top)}.sidebar-header{padding:12px 16px}.sidebar-logo{height:73px}.main-layout.mobile-detail .sidebar,.main-layout.mobile-list .main-content{display:none}.mobile-bottom-nav{background:var(--navy-900);border-top:1px solid var(--navy-divider);padding:6px 2px calc(6px + env(safe-area-inset-bottom));flex-shrink:0;justify-content:space-around;display:flex}.app-wrapper.chat-open .mobile-bottom-nav{display:none}.mbn-btn{color:var(--on-navy-muted);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:3px;padding:5px 0;font-size:11px;font-weight:600;display:flex;position:relative}.mbn-btn.active{color:var(--accent)}.mbn-badge{color:#fff;background:#e54848;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:6px;padding:0 4px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-2px;left:50%}.chat-back-btn{color:var(--ink);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-right:2px;padding:4px;display:flex}.chat-header{padding:10px 12px}.chat-header-info{flex:1;min-width:0}.chat-input{padding:10px 10px calc(10px + env(safe-area-inset-bottom));gap:6px}.send-btn{width:40px;height:40px}.chat-input-wrap input{font-size:16px}.msg-actions,.msg-reply-btn{display:none!important}.msg-row{max-width:86%}.msg-caret-btn{width:26px;height:26px;color:var(--ink-muted);-webkit-tap-highlight-color:transparent;background:#0b22380f;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-self:flex-end;align-items:center;margin-bottom:15px;display:flex}.msg-caret-btn:active{background:#0b223824}.msg-row.sent .msg-caret-btn{order:-1}.msg-row,.msg-content,.bubble{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.bubble-editing,.edit-input,.msg-row input,.msg-row textarea{-webkit-user-select:text;user-select:text}.msg-sheet-overlay{z-index:9000;background:#0006;align-items:flex-end;animation:.12s floatIn;display:flex;position:fixed;inset:0}.msg-sheet{background:var(--paper);width:100%;padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;box-shadow:0 -8px 30px #00000040}.msg-sheet-emojis{justify-content:space-around;padding:8px 4px 12px;display:flex}.msg-sheet-emojis button{cursor:pointer;background:0 0;border:none;padding:4px;font-size:28px}.msg-sheet-actions{flex-direction:column;display:flex}.msg-sheet-btn{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;border-radius:12px;align-items:center;gap:14px;padding:14px 16px;font-size:15px;font-weight:600;display:flex}.msg-sheet-btn:active{background:var(--paper-soft)}.msg-sheet-btn.danger{color:#e54848}.admin-table-wrap{overflow-x:visible}.admin-table thead{display:none}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{width:100%;display:block}.admin-table tr{background:var(--paper);border:1px solid var(--paper-line);border-radius:12px;margin-bottom:10px;padding:6px 12px}.admin-table td{text-align:right;border:none;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;display:flex}.admin-table td:before{content:attr(data-label);color:var(--ink-muted);text-align:left;flex-shrink:0;font-size:12px;font-weight:700}.admin-table td .user-cell,.admin-table td .action-btns{justify-content:flex-end}.admin-controls{flex-wrap:wrap}.call-overlay-active{align-items:stretch;padding:0}.call-float.staged,.call-float.staged.video-mode,.call-float.staged.sharing{background:var(--navy-900);border:none;border-radius:0;justify-content:center;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0;overflow:hidden}.call-float.staged .call-float-head{z-index:6;padding:calc(12px + env(safe-area-inset-top)) 16px 16px;background:linear-gradient(#0000008c,#0000);margin:0;position:absolute;top:0;left:0;right:0}.call-float.staged .call-video-area:not(.collapsed){aspect-ratio:auto;border-radius:0;width:100%;height:100%;max-height:none;margin:0;position:absolute;inset:0}.call-float.staged .call-avatar-area{background:linear-gradient(160deg, var(--navy-700), var(--navy-900));flex-direction:column;gap:16px;padding:0;position:absolute;inset:0}.call-float.staged .call-avatar-area .call-avatar-xl{width:132px;height:132px;font-size:52px}.call-float.staged .call-local-pip{width:104px;height:150px;top:calc(70px + env(safe-area-inset-top));border-radius:14px;bottom:auto;right:12px}.call-float.staged .call-info-row{z-index:6;justify-content:center;gap:10px;margin:0;padding:0;position:absolute;bottom:132px;left:0;right:0}.call-float.staged .call-name-sm,.call-float.staged .call-timer-sm{color:#fff;text-shadow:0 1px 4px #0009;font-size:15px}.call-float.staged .call-controls{z-index:6;padding:16px 10px calc(20px + env(safe-area-inset-bottom));background:linear-gradient(#0000,#0009);flex-wrap:nowrap;gap:8px;margin:0;position:absolute;bottom:0;left:0;right:0}.call-float.staged .cc-btn{width:46px;height:46px}.call-float.staged .cc-hangup{width:52px;height:52px}.call-float.staged .cc-label{display:none}.call-float.staged .call-name-xl{color:#fff}.call-float.staged .call-status-xl{color:#fffc}.call-float.staged .call-audio-cfg,.call-float.staged .call-invite-panel{z-index:7;width:100%;padding:14px 16px calc(16px + env(safe-area-inset-bottom));background:var(--navy-800);border-radius:18px 18px 0 0;max-height:70vh;margin:0;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.call-float.group,.call-float.group.video-mode,.call-float.group.sharing{background:var(--navy-900);border:none;border-radius:0;max-width:none;max-height:none;padding:0;overflow:hidden;width:100vw!important;height:100dvh!important;position:fixed!important;inset:0!important;transform:none!important}.call-float.group .call-float-head{z-index:6;padding:calc(12px + env(safe-area-inset-top)) 16px 14px;background:linear-gradient(#0000008c,#0000);margin:0;position:absolute;top:0;left:0;right:0}.call-float.group .gc-title{display:none}.call-float.group .gc-tiles{padding:calc(60px + env(safe-area-inset-top)) 8px calc(108px + env(safe-area-inset-bottom));align-content:start;max-height:none;position:absolute;inset:0;overflow-y:auto}.call-float.group .gc-status{z-index:2;position:absolute;top:50%;left:0;right:0}.call-float.group .call-controls{z-index:6;padding:16px 10px calc(20px + env(safe-area-inset-bottom));background:linear-gradient(#0000,#0009);flex-wrap:nowrap;gap:8px;margin:0;position:absolute;bottom:0;left:0;right:0}.call-float.group .cc-btn{width:46px;height:46px}.call-float.group .cc-hangup{width:52px;height:52px}.call-float.group .cc-label{display:none}.call-float.group .call-audio-cfg,.call-float.group .call-invite-panel{z-index:7;width:100%;padding:14px 16px calc(16px + env(safe-area-inset-bottom));background:var(--navy-800);border-radius:18px 18px 0 0;max-height:70vh;margin:0;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.call-float.staged .call-local-pip{touch-action:none;z-index:5}.call-float.staged .call-remote-mic-badge{bottom:auto;top:calc(70px + env(safe-area-inset-top));left:12px}.meet-head{padding:10px 12px}.meet-tabs{flex:1}.meet-tab{flex:1;justify-content:center;padding:8px 6px;font-size:12.5px}.meet-new-btn{justify-content:center;width:100%}.meet-body{padding:12px}.meet-cal{max-width:none}.meet-card{flex-wrap:wrap}.meet-card-info{flex-basis:calc(100% - 52px)}.meet-card-actions{justify-content:flex-end;width:100%;margin-top:6px}.meet-join{flex:1;justify-content:center}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
