:root{--bg-primary: #1e1e1e;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--bg-control: #2d2d2d;--bg-separator: #404040;--text-primary: #f0f0f0;--text-secondary: #b0b0b0;--text-tertiary: #808080;--accent-blue: #0a84ff;--accent-blue-dark: #0066cc;--accent-blue-light: rgba(10, 132, 255, .15);--accent-blue-border: rgba(10, 132, 255, .4);--accent-red: #ff453a;--accent-red-light: rgba(255, 69, 58, .15);--accent-red-border: rgba(255, 69, 58, .4);--accent-green: #30d158;--accent-orange: #ff9f0a;--accent-yellow: #ffd60a;--border-color: #404040;--shadow-color: rgba(0, 0, 0, .3);--shadow-strong: rgba(0, 0, 0, .5);--input-bg: #2d2d2d;--input-border: #404040;--input-focus-border: #0a84ff;--gradient-bg-start: #1e1e1e;--gradient-bg-end: rgba(30, 30, 30, .95);--avatar-gradient-start: rgba(10, 132, 255, .8);--avatar-gradient-end: rgba(10, 132, 255, .6);--button-gradient-start: #0a84ff;--button-gradient-end: rgba(10, 132, 255, .8);--bg-hover: rgba(255, 255, 255, .05);--accent-blue-alpha: rgba(10, 132, 255, .4);--shadow-blue: rgba(10, 132, 255, .5);--shadow-light: rgba(0, 0, 0, .4);--shadow-menu: rgba(0, 0, 0, .3);--shadow-dialog: rgba(0, 0, 0, .5);--scrollbar-thumb: rgba(255, 255, 255, .2);--scrollbar-thumb-hover: rgba(255, 255, 255, .3);--gradient-button: linear-gradient(180deg, #0a84ff 0%, rgba(10, 132, 255, .8) 100%);--gradient-button-hover: linear-gradient(180deg, #0066cc 0%, rgba(0, 102, 204, .8) 100%)}[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #fafafa;--bg-tertiary: #f8f8f8;--bg-control: #f8f8f8;--bg-separator: #e0e0e0;--text-primary: #1a1a1a;--text-secondary: #666666;--text-tertiary: #999999;--accent-blue: #007bff;--accent-blue-dark: #0056b3;--accent-blue-light: rgba(0, 123, 255, .1);--accent-blue-border: rgba(0, 123, 255, .3);--accent-red: #ff3b30;--accent-red-light: rgba(255, 59, 48, .1);--accent-red-border: rgba(255, 59, 48, .3);--accent-green: #28a745;--accent-orange: #ff9500;--accent-yellow: #ffd700;--border-color: #d0d0d0;--shadow-color: rgba(0, 0, 0, .1);--shadow-strong: rgba(0, 0, 0, .2);--input-bg: rgba(248, 248, 248, 1);--input-border: #d0d0d0;--input-focus-border: #007bff;--gradient-bg-start: #ffffff;--gradient-bg-end: rgba(255, 255, 255, .95);--avatar-gradient-start: rgba(0, 123, 255, .8);--avatar-gradient-end: rgba(0, 123, 255, .6);--button-gradient-start: #007bff;--button-gradient-end: rgba(0, 123, 255, .8);--bg-hover: rgba(0, 0, 0, .05);--accent-blue-alpha: rgba(0, 123, 255, .3);--shadow-blue: rgba(0, 123, 255, .4);--shadow-light: rgba(0, 0, 0, .2);--shadow-menu: rgba(0, 0, 0, .15);--shadow-dialog: rgba(0, 0, 0, .3);--scrollbar-thumb: rgba(0, 0, 0, .2);--scrollbar-thumb-hover: rgba(0, 0, 0, .3);--gradient-button: linear-gradient(180deg, #007bff 0%, rgba(0, 123, 255, .8) 100%);--gradient-button-hover: linear-gradient(180deg, #0069d9 0%, rgba(0, 105, 217, .8) 100%)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--bg-primary);color:var(--text-primary)}#chat-app{height:100%;width:100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.flex{display:flex}.flex-col{flex-direction:column}.flex-1{flex:1}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.m-0{margin:0}.w-full{width:100%}.h-full{height:100%}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.text-center{text-align:center}.text-sm{font-size:12px}.text-xs{font-size:11px}.font-medium{font-weight:500}.font-semibold{font-weight:600}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relative{position:relative}.absolute{position:absolute}.cursor-pointer{cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary{background:var(--gradient-button);color:#fff}.btn-primary:hover{background:var(--gradient-button-hover)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-hover)}.btn-danger{background:var(--accent-red);color:#fff}.btn-danger:hover{background:var(--accent-red-border)}.btn:disabled{opacity:.5;cursor:not-allowed}.input{width:100%;padding:10px 12px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;color:var(--text-primary);font-size:14px;outline:none;transition:border-color .2s ease}.input:focus{border-color:var(--input-focus-border)}.input::placeholder{color:var(--text-tertiary)}.card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px}.status-online{color:var(--accent-green)}.status-away{color:var(--accent-orange)}.status-busy{color:var(--accent-red)}.status-offline{color:var(--text-tertiary)}@media (max-width: 768px){.hide-mobile{display:none!important}.btn,button{min-height:44px}.input{min-height:44px;font-size:16px}}@media (min-width: 769px){.hide-desktop{display:none!important}}.mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:99;opacity:0;visibility:hidden;transition:all .2s ease}.mobile-overlay.visible{opacity:1;visibility:visible}.mobile-panel{position:fixed;top:0;bottom:0;width:85%;max-width:320px;background:var(--bg-secondary);z-index:100;transform:translate(-100%);transition:transform .3s ease;overflow-y:auto}.mobile-panel.right{left:auto;right:0;transform:translate(100%)}.mobile-panel.open{transform:translate(0)}.mobile-fab{position:fixed;bottom:20px;right:20px;width:56px;height:56px;border-radius:50%;background:var(--accent-blue);color:#fff;border:none;box-shadow:0 4px 12px #0000004d;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:50;transition:all .2s ease}.mobile-fab:active{transform:scale(.95)}@supports (padding: env(safe-area-inset-bottom)){.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}.safe-area-top{padding-top:env(safe-area-inset-top)}}
