:root{--bg: #08090b;--sidebar: #090a0c;--panel: #0d0f12;--surface: rgba(255, 255, 255, .03);--surface-2: rgba(255, 255, 255, .05);--surface-hover: rgba(255, 255, 255, .065);--border: rgba(255, 255, 255, .07);--border-strong: rgba(255, 255, 255, .12);--text: #f0eeff;--text-2: rgba(240, 238, 255, .74);--muted: rgba(240, 238, 255, .5);--faint: rgba(240, 238, 255, .3);--accent: #f27127;--accent-2: #c44b0a;--accent-soft: rgba(242, 113, 39, .12);--accent-line: rgba(242, 113, 39, .32);--success: #10b981;--success-soft: rgba(16, 185, 129, .12);--danger: #ef4444;--danger-text: #f87171;--danger-soft: rgba(239, 68, 68, .1);--warning: #fbbf24;--warning-soft: rgba(251, 191, 36, .1);--purple: #a78bfa;--purple-soft: rgba(167, 139, 250, .12);--blue: #60a5fa;--blue-soft: rgba(96, 165, 250, .12);--wa: #25d366;--tg: #2aabee;--conv-bg: #0b1218;--conv-head: rgba(15, 22, 29, .9);--bubble-in: #1b2530;--bubble-in-border: rgba(255, 255, 255, .055);--bubble-out: #26211c;--bubble-out-border: rgba(242, 113, 39, .14);--radius: 12px;--radius-lg: 18px;--font: "Outfit", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: "DM Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 var(--font);-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}::selection{background:#f2712759}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#ffffff24}::-webkit-scrollbar-track{background:transparent}:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.faint{color:var(--faint)}.nowrap{white-space:nowrap}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row{display:flex;align-items:center;gap:8px}.row-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.spacer{flex:1}.stack{display:flex;flex-direction:column;gap:12px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (max-width: 640px){.grid-2{grid-template-columns:1fr}}.app{display:flex;height:100dvh;overflow:hidden}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:64px;flex-shrink:0;display:flex;align-items:center;gap:12px;padding:0 22px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#101115f0,#090a0ce0);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:relative;z-index:20}.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;pointer-events:none;background:linear-gradient(90deg,rgba(242,113,39,.5),rgba(242,113,39,.12) 35%,transparent 70%)}.topbar-title{display:flex;align-items:center;gap:12px;min-width:0}.topbar-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;font-size:1rem;color:var(--accent);background:linear-gradient(135deg,#f271273d,#f271270f);border:1px solid rgba(242,113,39,.28);box-shadow:0 0 20px #f271271f,inset 0 1px #ffffff0f}.topbar h1{margin:0;font-size:1.02rem;font-weight:700;letter-spacing:-.2px;line-height:1.2}.topbar .sub{color:var(--faint);font-size:.74rem}.tr-clock{display:flex;align-items:center;gap:10px;height:42px;padding:0 7px 0 12px;border-radius:13px;flex-shrink:0;background:linear-gradient(180deg,#ffffff0d,#ffffff05);border:1px solid var(--border);box-shadow:inset 0 1px #ffffff0a}.tr-clock-icon{display:grid;place-items:center;color:var(--accent);font-size:.92rem}.tr-clock-body{display:flex;flex-direction:column;line-height:1.15}.tr-clock-time{font-family:var(--mono);font-size:.95rem;font-weight:500;color:var(--text);letter-spacing:.6px;font-variant-numeric:tabular-nums}.tr-clock-date{font-size:.62rem;color:var(--faint);white-space:nowrap}.tr-clock-zone{align-self:center;padding:3px 7px;border-radius:8px;font-size:.6rem;font-weight:800;letter-spacing:1.2px;color:var(--accent);background:var(--accent-soft);border:1px solid rgba(242,113,39,.25)}.live-pill{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border-radius:999px;flex-shrink:0;font-size:.72rem;font-weight:600;color:#34d399;background:var(--success-soft);border:1px solid rgba(16,185,129,.25)}.live-pill svg{font-size:.8rem}.live-pill.offline{color:var(--warning);background:var(--warning-soft);border-color:#fbbf2440}.live-pill.offline svg{animation:pulse 1.4s ease-in-out infinite}@media (max-width: 860px){.topbar{padding:0 14px}.topbar .sub,.tr-clock-date,.live-pill span{display:none}.live-pill{padding:0 9px}}@media (max-width: 520px){.topbar-icon,.tr-clock-zone,.tr-clock-icon{display:none}}.page{flex:1;min-height:0;overflow:auto;padding:24px}.page-flush{flex:1;min-height:0;display:flex;overflow:hidden}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.page-head h2{margin:0;font-size:1.25rem;font-weight:800;letter-spacing:-.3px}.page-head p{margin:4px 0 0;color:var(--muted);font-size:.85rem}.sidebar{width:248px;flex-shrink:0;display:flex;flex-direction:column;background:var(--sidebar);box-shadow:inset -1px 0 #ffffff0f;z-index:30;position:relative;transition:width .2s ease}.sidebar-toggle{position:absolute;top:25px;right:-12px;z-index:31;width:24px;height:24px;padding:0;border-radius:50%;display:grid;place-items:center;font-size:.78rem;cursor:pointer;color:var(--muted);background:#16181c;border:1px solid var(--border-strong);box-shadow:0 2px 10px #00000073;transition:color .15s,background .15s,border-color .15s,box-shadow .15s}.sidebar-toggle:hover{color:#fff;background:var(--accent);border-color:var(--accent);box-shadow:0 0 14px #f2712780}.nav-section span,.nav-label,.brand-text,.profile-meta,.logout-label{white-space:nowrap}.sidebar .brand,.sidebar .side-foot{overflow:hidden}.brand{display:flex;align-items:center;gap:12px;padding:18px 16px 16px;border-bottom:1px solid rgba(255,255,255,.05)}.brand-logo{width:38px;height:38px;border-radius:12px;flex-shrink:0;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#f27127,#d4560f,#b83e00);box-shadow:0 0 0 1px #f2712780,0 4px 20px #f2712759}.brand-name{font-weight:800;font-size:.95rem;letter-spacing:-.3px;line-height:1}.brand-sub{color:#f2712799;font-size:.62rem;font-weight:500;margin-top:4px;letter-spacing:.3px}.nav{flex:1;overflow-y:auto;padding:12px 8px;scrollbar-width:none}.nav::-webkit-scrollbar{width:0}.nav-section{padding:12px 14px 6px;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:1.7px;color:#ffffff29}.nav-link{position:relative;display:flex;align-items:center;gap:11px;padding:9px 12px;margin-bottom:2px;border-radius:12px;color:#ffffff6b;font-size:.85rem;font-weight:500;transition:background .15s,color .15s,transform .12s}.nav-link:hover{color:#ffffffbf;text-decoration:none;transform:translate(2px)}.nav-link .nav-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:#ffffff0d;border:1px solid rgba(255,255,255,.06);font-size:.82rem;transition:all .15s}.nav-link.active{color:#fff;font-weight:600;background:linear-gradient(90deg,#f271272e,#f271270d)}.nav-link.active:before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:3px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,#ff8c42,#f27127);box-shadow:0 0 10px #f27127cc}.nav-link.active .nav-icon{background:#f2712733;border-color:#f271274d;color:var(--accent)}.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;display:grid;place-items:center;background:var(--accent);color:#fff;font-size:.66rem;font-weight:700;box-shadow:0 0 12px #f2712773}.side-foot{padding:10px;border-top:1px solid rgba(255,255,255,.05)}.profile-card{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:12px;margin-bottom:8px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);color:inherit}.profile-card:hover{text-decoration:none;background:#ffffff0d}.logout-btn{width:100%;padding:9px 14px;border-radius:10px;border:1px solid rgba(239,68,68,.12);background:#ef44440a;color:#ef444480;font-size:.78rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all .15s}.logout-btn:hover{background:#ef444426;color:var(--danger);border-color:#ef444459}.sidebar.collapsed{width:72px}.sidebar.collapsed :is(.brand-text,.nav-section span,.nav-label,.profile-meta,.logout-label){display:none}.sidebar.collapsed .nav-section{padding:10px 0 6px}.sidebar.collapsed .nav-section:after{content:"";display:block;height:1px;margin:0 16px;background:#ffffff12}.sidebar.collapsed .brand{justify-content:center;padding:16px 0}.sidebar.collapsed .nav-link{justify-content:center;padding:8px}.sidebar.collapsed .nav-link:hover{transform:none}.sidebar.collapsed .nav-badge{position:absolute;top:2px;right:6px;min-width:18px;height:18px;font-size:.6rem}.sidebar.collapsed .profile-card{justify-content:center;padding:8px}@media (max-width: 1100px){.sidebar{width:72px}.sidebar-toggle{display:none}:is(.brand-text,.nav-section span,.nav-label,.profile-meta,.logout-label){display:none}.nav-section{padding:10px 0 6px}.nav-section:after{content:"";display:block;height:1px;margin:0 16px;background:#ffffff12}.brand{justify-content:center;padding:16px 0}.nav-link{justify-content:center;padding:8px}.nav-link:hover{transform:none}.nav-badge{position:absolute;top:2px;right:6px;min-width:18px;height:18px;font-size:.6rem}.profile-card{justify-content:center;padding:8px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 14px;border-radius:10px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);font-size:.83rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,opacity .15s}.btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{border-color:transparent;color:#fff;background:linear-gradient(135deg,#f27127,#c44b0a);box-shadow:0 4px 18px #f2712747}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#ff8236,#d4560f);color:#fff}.btn-danger{border-color:#ef444440;background:var(--danger-soft);color:var(--danger-text)}.btn-danger:hover:not(:disabled){background:#ef44442e;color:#fca5a5}.btn-success{border-color:#10b9814d;background:var(--success-soft);color:#34d399}.btn-success:hover:not(:disabled){background:#10b98133;color:#6ee7b7}.btn-ghost{border-color:transparent;background:transparent;color:var(--muted)}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}.btn-sm{height:30px;padding:0 10px;font-size:.76rem;border-radius:8px}.btn-icon{width:36px;padding:0}.btn-icon.btn-sm{width:30px}.field{display:flex;flex-direction:column;gap:6px}.field>label,.label{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:1.3px;color:#f0eeff61}.field .hint{font-size:.72rem;color:var(--faint)}.input,.select,.textarea{width:100%;min-height:38px;padding:8px 12px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--text);font-size:.86rem;outline:none;transition:border-color .15s,background .15s}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent-line);background:#ffffff0e}.input::placeholder,.textarea::placeholder{color:#f0eeff40}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:32px;background-image:linear-gradient(45deg,transparent 50%,rgba(240,238,255,.4) 50%),linear-gradient(135deg,rgba(240,238,255,.4) 50%,transparent 50%);background-position:calc(100% - 16px) 16px,calc(100% - 11px) 16px;background-size:5px 5px;background-repeat:no-repeat}.select option{background:#14161a}.textarea{resize:none;line-height:1.45}input:-webkit-autofill{-webkit-box-shadow:0 0 0 100px #111215 inset!important;-webkit-text-fill-color:#f0eeff!important}.input-icon{position:relative}.input-icon>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#ffffff40;font-size:.8rem;pointer-events:none}.input-icon>.input{padding-left:34px}.check{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border-radius:10px;cursor:pointer;transition:background .12s}.check:hover{background:var(--surface)}.check input{margin-top:2px;accent-color:var(--accent);width:15px;height:15px;flex-shrink:0}.check.disabled{opacity:.55;cursor:default}.switch{position:relative;width:38px;height:22px;flex-shrink:0}.switch input{opacity:0;width:0;height:0;position:absolute}.switch span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:22px;background:#ffffff1a;transition:background .2s;cursor:pointer}.switch span:after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:after{transform:translate(16px)}.switch input:focus-visible+span{outline:2px solid var(--accent-line);outline-offset:2px}.seg{display:inline-flex;padding:3px;gap:2px;border-radius:10px;background:#ffffff0a;border:1px solid var(--border)}.seg button{border:0;background:transparent;color:var(--muted);padding:5px 10px;border-radius:7px;font-size:.76rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.seg button:hover{color:var(--text)}.seg button.active{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px #f2712740}.seg .count{font-size:.64rem;padding:0 5px;border-radius:6px;background:#ffffff14;color:var(--text-2)}.seg button.active .count{background:#f2712740;color:#fff}.seg-full{display:flex}.seg-full button{flex:1;justify-content:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:inset 0 1px #ffffff0a}.card-pad{padding:18px}.card-head{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--border)}.card-head h3{margin:0;font-size:.95rem;font-weight:700}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:7px;font-size:.68rem;font-weight:600;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:var(--text-2);white-space:nowrap}.badge-accent{background:var(--accent-soft);border-color:#f2712740;color:var(--accent)}.badge-success{background:var(--success-soft);border-color:#10b98140;color:#34d399}.badge-danger{background:var(--danger-soft);border-color:#ef444440;color:var(--danger-text)}.badge-warning{background:var(--warning-soft);border-color:#fbbf2440;color:var(--warning)}.badge-purple{background:var(--purple-soft);border-color:#a78bfa40;color:var(--purple)}.badge-blue{background:var(--blue-soft);border-color:#60a5fa40;color:var(--blue)}.badge-neutral{color:var(--muted)}.dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}.dot-pulse{animation:pulse 1.6s ease-in-out infinite}.avatar{flex-shrink:0;display:grid;place-items:center;border-radius:11px;font-weight:700;letter-spacing:.2px;color:var(--accent);background:linear-gradient(135deg,#f271274d,#f2712714);border:1px solid rgba(242,113,39,.25);position:relative}.platform-mark{position:absolute;right:-4px;bottom:-4px;width:17px;height:17px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:9px;box-shadow:0 0 0 2px var(--panel)}.contact-avatar{position:relative;flex-shrink:0;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:700;letter-spacing:.3px;text-shadow:0 1px 2px rgba(0,0,0,.25);box-shadow:inset 0 0 0 1px #ffffff24;-webkit-user-select:none;user-select:none}.contact-avatar img{width:100%;height:100%;display:block;border-radius:50%;object-fit:cover;background:#1b2530}.contact-avatar .platform-mark{right:-2px;bottom:-2px}.presence-dot{display:inline-block;flex-shrink:0;border-radius:50%;background:#f0eeff47}.presence-dot.online{background:#22c55e}.presence-dot.idle{background:var(--warning)}.avatar-presence{position:absolute;right:-3px;bottom:-3px;display:flex}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:40px 20px;color:var(--muted)}.empty>svg{font-size:2rem;color:#f2712773}.empty h4{margin:0;color:var(--text-2);font-size:.95rem}.empty p{margin:0;font-size:.82rem;max-width:340px}.alert{padding:10px 14px;border-radius:12px;font-size:.8rem;display:flex;gap:9px;align-items:flex-start}.alert-danger{background:#ef444414;border:1px solid rgba(239,68,68,.2);color:#fca5a5}.alert-info{background:var(--blue-soft);border:1px solid rgba(96,165,250,.2);color:#bfdbfe}.alert-warning{background:var(--warning-soft);border:1px solid rgba(251,191,36,.2);color:#fde68a}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.2);border-top-color:currentColor;animation:spin .7s linear infinite;flex-shrink:0}.spinner-lg{width:26px;height:26px;border-width:3px;color:var(--accent)}.center-fill{flex:1;display:grid;place-items:center;min-height:200px}.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:8px;font-size:.72rem;background:#ffffff0d;border:1px solid var(--border);color:var(--text-2)}.divider{height:1px;background:var(--border);margin:4px 0}.kbd{font-family:var(--mono);font-size:.68rem;padding:1px 5px;border-radius:5px;border:1px solid var(--border-strong);color:var(--muted)}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.83rem}.table th{text-align:left;padding:10px 14px;font-size:.62rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#f0eeff59;border-bottom:1px solid var(--border);white-space:nowrap;background:#ffffff04}.table td{padding:11px 14px;border-bottom:1px solid rgba(255,255,255,.045);vertical-align:middle}.table tbody tr{transition:background .12s}.table tbody tr:hover{background:#ffffff06}.table tbody tr.clickable{cursor:pointer}.table .actions{text-align:right;white-space:nowrap}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px;background:#0000009e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade .15s ease}.modal{width:100%;max-width:520px;max-height:calc(100dvh - 40px);display:flex;flex-direction:column;background:#0f1114;border:1px solid var(--border-strong);border-radius:20px;overflow:hidden;box-shadow:0 32px 80px #0009,inset 0 1px #ffffff0f;animation:rise .2s ease}.modal-lg{max-width:720px}.modal-xl{max-width:980px}.modal:before{content:"";height:2px;flex-shrink:0;background:linear-gradient(90deg,transparent,rgba(242,113,39,.6),transparent)}.modal-head{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-head h3{margin:0;font-size:1rem;font-weight:700;flex:1}.modal-body{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border);background:#ffffff04}.popover{position:absolute;right:0;top:calc(100% + 8px);z-index:60;width:380px;max-width:calc(100vw - 24px);background:#101216;border:1px solid var(--border-strong);border-radius:16px;overflow:hidden;box-shadow:0 24px 60px #0000008c;animation:rise .15s ease}.bell-btn{position:relative}.bell-count{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;display:grid;place-items:center;background:var(--accent);color:#fff;font-size:.62rem;font-weight:700;box-shadow:0 0 0 2px var(--bg)}.notif-list{max-height:420px;overflow-y:auto}.notif{display:flex;gap:11px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.04);cursor:pointer;transition:background .12s}.notif:hover{background:#ffffff08}.notif.unread{background:#f271270b}.notif-title{font-size:.82rem;font-weight:600}.notif-body{font-size:.78rem;color:var(--muted);margin-top:2px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.notif-time{font-size:.68rem;color:var(--faint);margin-top:4px}.notif-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;background:var(--accent-soft);color:var(--accent);font-size:.8rem}.notif-icon.warn{background:var(--warning-soft);color:var(--warning)}.toast-card{display:flex;gap:11px;align-items:flex-start;width:340px;max-width:calc(100vw - 32px);padding:12px 14px;border-radius:14px;cursor:pointer;background:#121418;border:1px solid rgba(242,113,39,.3);box-shadow:0 16px 40px #00000080,0 0 0 1px #f2712714}.toast-card.warn{border-color:#fbbf2466}.ctx-menu{position:fixed;z-index:200;min-width:224px;max-width:300px;padding:6px;border-radius:13px;background:#15181d;border:1px solid var(--border-strong);box-shadow:0 20px 50px #0009,inset 0 1px #ffffff0d;animation:ctx-in .1s ease-out}.ctx-heading{padding:5px 10px 8px;margin-bottom:4px;border-bottom:1px solid var(--border);font-size:.72rem;font-weight:700;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctx-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--text-2);font-size:.82rem;text-align:left;cursor:pointer}.ctx-item:hover:not(:disabled),.ctx-item:focus-visible{background:var(--surface-hover);color:var(--text);outline:none}.ctx-item:disabled{opacity:.4;cursor:not-allowed}.ctx-icon{width:16px;flex-shrink:0;font-size:.9rem;color:var(--muted);transition:color .1s}.ctx-item:hover:not(:disabled) .ctx-icon,.ctx-item:focus-visible .ctx-icon{color:var(--accent)}.ctx-label{flex:1;min-width:0}.ctx-shortcut{font-family:var(--mono);font-size:.66rem;color:var(--faint)}.ctx-item.danger,.ctx-item.danger .ctx-icon{color:var(--danger-text)}.ctx-item.danger:hover:not(:disabled),.ctx-item.danger:focus-visible{background:var(--danger-soft);color:#fca5a5}.ctx-item.danger:hover:not(:disabled) .ctx-icon{color:#fca5a5}.ctx-divider{height:1px;margin:5px 6px;background:var(--border)}.ctx-reactions{display:flex;justify-content:space-between;gap:2px;padding:2px 2px 3px}.ctx-reactions button{width:34px;height:34px;border:0;border-radius:50%;display:grid;place-items:center;background:transparent;font-size:1.15rem;cursor:pointer;transition:background .1s,transform .1s}.ctx-reactions button:hover,.ctx-reactions button:focus-visible{background:var(--surface-hover);transform:scale(1.14);outline:none}.ctx-reactions button.active{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line)}@keyframes ctx-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}.pick-list{display:flex;flex-direction:column;gap:5px;max-height:340px;overflow-y:auto}.pick-item{display:flex;align-items:center;gap:12px;padding:9px 11px;border-radius:12px;border:1px solid transparent;background:#ffffff06;color:var(--text);cursor:pointer;transition:background .12s,border-color .12s}.pick-item:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-line)}.pick-item:disabled{opacity:.55;cursor:default}.delete-preview{padding:10px 12px;border-radius:10px;border-left:3px solid var(--border-strong);background:#ffffff0a;font-size:.84rem;color:var(--text-2);white-space:pre-wrap;overflow-wrap:anywhere}.delete-options{display:flex;flex-direction:column;gap:8px}.delete-option{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:12px 14px;border-radius:12px;text-align:left;border:1px solid var(--border);background:#ffffff06;color:var(--text);cursor:pointer;transition:background .12s,border-color .12s}.delete-option:hover:not(:disabled){border-color:var(--border-strong);background:#ffffff0d}.delete-option.danger .delete-option-title{color:var(--danger-text)}.delete-option.danger:hover:not(:disabled){border-color:#ef444466;background:var(--danger-soft)}.delete-option:disabled{opacity:.5;cursor:not-allowed}.delete-option-title{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;font-weight:700}.delete-option-text{font-size:.74rem;color:var(--muted)}.chatlist{width:360px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--panel);min-height:0}.chatlist-head{padding:10px 10px 8px;display:flex;align-items:center;gap:6px;flex-shrink:0}.chatlist-head .search-box{flex:1;min-width:0}.pill-count{min-width:18px;height:18px;padding:0 6px;border-radius:9px;display:inline-grid;place-items:center;flex-shrink:0;background:var(--accent);color:#fff;font-size:.62rem;font-weight:700;line-height:1}.status-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}.status-dot.on{background:#22c55e;box-shadow:0 0 6px #22c55e99}.status-dot.off{background:#f0eeff40}.account-picker{position:relative;flex-shrink:0}.account-trigger{position:relative;height:38px;display:flex;align-items:center;gap:3px;padding:0 6px 0 4px;border-radius:11px;cursor:pointer;color:var(--text);border:1px solid var(--border);background:linear-gradient(180deg,#ffffff0d,#ffffff05);box-shadow:inset 0 1px #ffffff0a;transition:border-color .15s,background .15s}.account-trigger:hover,.account-trigger.open{border-color:var(--accent-line);background:linear-gradient(180deg,#f271271a,#f2712708)}.account-mark{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;font-size:.85rem;color:#fff;background:linear-gradient(135deg,#f27127,#b8430b);box-shadow:0 3px 10px #0000004d,inset 0 1px #fff3}.account-mark.small{width:26px;height:26px;border-radius:8px;font-size:.76rem;box-shadow:none}.account-chevron{flex-shrink:0;font-size:.8rem;color:var(--muted);transition:transform .15s}.account-chevron.open{transform:rotate(180deg)}.account-alert{position:absolute;top:-3px;right:-3px;width:10px;height:10px;border-radius:50%;background:var(--accent);border:2px solid var(--panel);box-shadow:0 0 6px #f27127b3}.account-menu{position:absolute;left:0;top:calc(100% + 6px);z-index:50;width:300px;max-width:calc(100vw - 24px);max-height:380px;overflow-y:auto;padding:6px;background:#15181d;border:1px solid var(--border-strong);border-radius:14px;box-shadow:0 20px 48px #0009;animation:rise .12s ease}.account-group{display:flex;align-items:center;gap:6px;padding:10px 10px 4px;font-size:.6rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--faint)}.account-option{width:100%;display:flex;align-items:center;gap:10px;padding:7px 8px;border:0;border-radius:9px;background:transparent;color:var(--text-2);font-size:.82rem;text-align:left;cursor:pointer}.account-option:hover{background:var(--surface-hover);color:var(--text)}.account-option.selected{background:var(--accent-soft);color:var(--text)}.account-option-name{flex:1;min-width:0}.account-check{flex-shrink:0;color:var(--accent);visibility:hidden}.account-option.selected .account-check{visibility:visible}.search-box .input{height:38px;border-radius:11px;padding-right:36px;text-overflow:ellipsis}.filter-bar{display:flex;align-items:stretch;gap:8px;padding:0 10px 0 4px;flex-shrink:0;box-shadow:inset 0 -1px 0 var(--border)}.view-tabs{flex:1;min-width:0;display:flex;overflow-x:auto;scrollbar-width:none}.view-tabs::-webkit-scrollbar{display:none}.view-tab{position:relative;display:inline-flex;align-items:center;gap:5px;padding:8px 8px 9px;border:0;background:transparent;flex-shrink:0;color:var(--muted);font-size:.78rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:color .15s}.view-tab:hover,.view-tab.active{color:var(--text)}.view-tab.active:after{content:"";position:absolute;left:6px;right:6px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:linear-gradient(90deg,#ff8c42,#f27127);box-shadow:0 0 10px #f2712799}.tab-count{padding:1px 5px;border-radius:7px;font-size:.6rem;font-weight:700;background:#ffffff12;color:var(--text-2)}.view-tab.active .tab-count{background:var(--accent-soft);color:var(--accent)}.read-toggle{align-self:center;flex-shrink:0;display:flex;gap:2px;padding:2px;border-radius:9px;background:#ffffff09;border:1px solid var(--border)}.read-toggle button{height:24px;min-width:28px;padding:0 7px;border:0;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:5px;background:transparent;color:var(--muted);font-size:.7rem;font-weight:700;cursor:pointer;transition:background .15s,color .15s}.read-toggle button:hover{color:var(--text);background:#ffffff0d}.read-toggle button.active{color:#fff;background:linear-gradient(135deg,#f271274d,#f271271f);box-shadow:inset 0 0 0 1px #f2712766}.read-toggle svg{font-size:.92rem}.read-count{color:#fdba74}.read-toggle button.active .read-count{color:#fff}.unread-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--accent);box-shadow:0 0 6px #f27127b3}.chatlist-body{flex:1;overflow-y:auto}.chat-item{display:flex;gap:11px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.035);cursor:pointer;position:relative;transition:background .12s}.chat-item:hover,.chat-item.menu-open{background:#ffffff08}.chat-item-more{position:absolute;right:10px;bottom:9px;width:26px;height:26px;padding:0;border-radius:8px;display:grid;place-items:center;border:1px solid var(--border);background:#171a1f;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .12s,color .12s,background .12s}.chat-item:hover .chat-item-more,.chat-item:focus-within .chat-item-more,.chat-item.menu-open .chat-item-more{opacity:1}.chat-item-more:hover{color:var(--text);background:#1e2229}@media (hover: none){.chat-item-more{opacity:.8}}.chat-item.active{background:linear-gradient(90deg,#f2712724,#f2712708)}.chat-item.active:before{content:"";position:absolute;left:0;top:12%;bottom:12%;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}.chat-item .name{font-weight:600;font-size:.86rem}.chat-item.unread .name{color:#fff}.chat-item .preview{font-size:.78rem;color:var(--muted);margin-top:2px}.chat-item.unread .preview{color:var(--text-2)}.chat-item .time{font-size:.68rem;color:var(--faint);white-space:nowrap}.chat-item.unread .time{color:var(--accent);font-weight:600}.unread-count{min-width:19px;height:19px;padding:0 6px;border-radius:10px;display:grid;place-items:center;background:var(--accent);color:#fff;font-size:.64rem;font-weight:700}.chat-meta{display:flex;align-items:center;gap:6px;margin-top:6px;flex-wrap:wrap}.mini-tag{font-size:.64rem;padding:1px 6px;border-radius:5px;background:#ffffff0d;color:var(--muted);display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.mini-tag.mine{background:var(--accent-soft);color:var(--accent)}.mini-tag.free{background:var(--success-soft);color:#34d399}.team-presence{flex-shrink:0;border-top:1px solid var(--border);background:#ffffff04}.team-bar{width:100%;display:flex;align-items:center;gap:10px;padding:9px 14px;border:0;background:transparent;color:var(--text-2);font-size:.78rem;text-align:left;cursor:pointer;transition:background .12s}.team-bar:hover{background:#ffffff08}.avatar-stack{display:flex;align-items:center;flex-shrink:0}.avatar-stack-item{position:relative;display:flex;margin-left:-6px;border-radius:8px;box-shadow:0 0 0 2px #0f1114}.avatar-stack-item:first-child{margin-left:0}.avatar-stack-more{margin-left:4px;font-size:.66rem;font-weight:700;color:var(--muted)}.team-summary{flex:1;min-width:0}.team-summary strong{color:#34d399}.team-chevron{flex-shrink:0;color:var(--muted);transition:transform .15s}.team-chevron.open{transform:rotate(180deg)}.team-list{max-height:260px;overflow-y:auto;padding:6px;border-bottom:1px solid var(--border);animation:rise .12s ease}.team-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:10px}.team-row:hover{background:#ffffff08}.team-status.online{color:#34d399}.team-status.idle{color:var(--warning)}.team-load{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:7px;font-size:.7rem;color:var(--muted);background:#ffffff0d}.conversation{flex:1;min-width:0;display:flex;flex-direction:column;background:radial-gradient(circle at 20% 0%,rgba(242,113,39,.02),transparent 45%),var(--conv-bg)}.conv-head{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--border);background:var(--conv-head);min-height:64px}.conv-head .title{font-weight:700;font-size:.95rem}.conv-head .title-edit{display:inline-flex;align-items:center;gap:6px}.conv-head .title-edit button{opacity:0;color:var(--faint);transition:opacity .12s,color .12s}.conv-head .title-edit:hover button{opacity:1}.conv-head .title-edit button:hover{color:var(--accent)}.conv-head .subtitle{font-size:.74rem;color:var(--muted);margin-top:2px}.conv-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.conv-actions .btn.active{background:var(--surface-2);color:var(--text)}@media (max-width: 1280px){.conv-actions .btn-label{display:none}.conv-actions .btn-sm{width:30px;padding:0}}.conv-banner{display:flex;align-items:center;gap:8px;padding:8px 18px;font-size:.76rem;color:#fde68a;background:var(--warning-soft);border-bottom:1px solid rgba(251,191,36,.2)}.conv-banner svg{flex-shrink:0}.messages{flex:1;overflow-y:auto;padding:18px 22px;display:flex;flex-direction:column;gap:4px}.day-sep{align-self:center;margin:12px 0 8px;padding:3px 12px;border-radius:8px;font-size:.68rem;font-weight:600;color:var(--muted);background:#ffffff0d}.bubble-row{display:flex;position:relative}.bubble-row.out{justify-content:flex-end}.bubble-group{display:flex;align-items:flex-end;gap:4px;max-width:min(72%,620px)}.bubble-row.out .bubble-group{flex-direction:row-reverse}.bubble{position:relative;min-width:0;padding:8px 11px 6px;border-radius:14px;background:var(--bubble-in);border:1px solid var(--bubble-in-border);overflow-wrap:anywhere;white-space:pre-wrap;font-size:.86rem;box-shadow:0 1px 2px #0000002e}.bubble-row.out .bubble{background:var(--bubble-out);border-color:var(--bubble-out-border)}.bubble-row.in+.bubble-row.in .bubble,.bubble-row.out+.bubble-row.out .bubble{margin-top:-1px}.bubble .who{font-size:.68rem;font-weight:700;color:var(--accent);margin-bottom:3px}.bubble .who.device{color:var(--blue)}.bubble .meta{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:3px;font-size:.64rem;color:var(--faint)}.bubble .meta .read{color:var(--blue)}.bubble .meta .failed{color:var(--danger-text)}.bubble.deleted{font-style:italic;color:var(--faint)}.bubble .deleted-text{display:inline-flex;align-items:center;gap:6px}.bubble.menu-open{box-shadow:0 0 0 2px var(--accent-line)}.bubble.reply-target{box-shadow:0 0 0 2px #8b5cf68c}.bubble-row.email .bubble-group{max-width:min(86%,780px)}.bubble-row.email .bubble{padding:10px 13px 7px}.email-content{display:flex;flex-direction:column;gap:8px;white-space:normal}.email-head{padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.07)}.email-subject{font-weight:700;font-size:.9rem;color:var(--text);overflow-wrap:anywhere}.email-people{margin-top:2px;font-size:.72rem;color:var(--text-2);overflow-wrap:anywhere}.email-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.86rem;line-height:1.55}.email-warning{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border-radius:9px;font-size:.76rem;line-height:1.45;color:#fecaca;background:#ef44441a;border:1px solid rgba(239,68,68,.28)}.email-warning svg{flex-shrink:0;margin-top:2px}.email-warning.soft{color:#fde68a;background:var(--warning-soft);border-color:#fbbf2440}.email-quote-toggle{align-self:flex-start;padding:2px 9px;border-radius:7px;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);font-size:.72rem;cursor:pointer}.email-quote-toggle:hover{color:var(--text);background:#ffffff12}.email-quoted{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.78rem;color:var(--muted);padding:6px 0 6px 10px;border-left:2px solid rgba(255,255,255,.14);max-height:360px;overflow-y:auto}.email-images{display:flex;flex-wrap:wrap;gap:6px}.email-images img{display:block;max-width:220px;max-height:160px;border-radius:8px;object-fit:cover;background:#fff}.email-actions{display:flex;flex-wrap:wrap;gap:6px;padding-top:2px}.email-action{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 9px;border-radius:7px;cursor:pointer;border:1px solid var(--border);background:#ffffff0a;color:var(--text-2);font-size:.72rem;font-weight:600}.email-action:hover{background:#ffffff14;color:var(--text)}.email-action.active{color:#c4b5fd;border-color:#8b5cf673;background:#8b5cf61f}.composer-wrap{border-top:1px solid var(--border);background:var(--conv-head)}.composer-wrap .composer{border-top:0}.reply-bar{display:flex;align-items:center;gap:8px;padding:8px 18px 0;font-size:.76rem;color:var(--text-2);min-width:0}.reply-bar-icon{color:#a78bfa;flex-shrink:0}.reply-bar strong{color:var(--text);font-weight:600}.composer-wrap.email .textarea{min-height:78px}.email-viewer-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.8rem}.email-frame{width:100%;height:min(68vh,720px);border:1px solid var(--border-strong);border-radius:12px;background:#fff}.bubble.failed{border-color:#ef444459}.bubble .quote{padding:5px 8px;margin-bottom:5px;border-left:3px solid var(--accent);background:#ffffff0a;border-radius:6px;font-size:.76rem;color:var(--muted);white-space:normal}.bubble .media-img{display:block;max-width:100%;max-height:320px;border-radius:10px;margin:2px 0 4px;cursor:zoom-in}.bubble .media-sticker{display:block;width:140px;height:140px;object-fit:contain}.bubble video{display:block;max-width:100%;max-height:320px;border-radius:10px;margin:2px 0 4px}.bubble audio{display:block;width:260px;max-width:100%;margin:2px 0 4px}.file-card{display:flex;align-items:center;gap:10px;padding:8px 10px;margin:2px 0 4px;border-radius:10px;background:#ffffff0d;color:var(--text);white-space:normal}.file-card:hover{text-decoration:none;background:#ffffff14}.file-card .file-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.media-missing{font-size:.74rem;color:var(--faint);font-style:italic}.bubble-reactions{display:flex;gap:3px;position:absolute;bottom:-11px;left:8px}.reaction-pill{display:flex;align-items:center;gap:3px;padding:1px 6px;border-radius:10px;font-size:.78rem;line-height:1.5;background:#20262d;border:1px solid var(--border-strong);box-shadow:0 1px 2px #0000004d;cursor:default}.reaction-pill.mine{background:var(--accent-soft);border-color:var(--accent-line);cursor:pointer}.reaction-pill .count{font-size:.62rem;color:var(--faint)}.bubble-tools{display:flex;gap:3px;flex-shrink:0;align-self:center;opacity:0;transition:opacity .12s}.bubble-row:hover .bubble-tools,.bubble-tools:focus-within,.bubble-tools.open{opacity:1}.bubble-tool{width:26px;height:26px;padding:0;border-radius:50%;display:grid;place-items:center;cursor:pointer;font-size:.8rem;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);transition:background .12s,color .12s}.bubble-tool:hover,.bubble-tool.active{background:var(--surface-hover);color:var(--text)}@media (hover: none){.bubble-tools{opacity:.75}}.reaction-picker{position:absolute;bottom:calc(100% + 6px);left:0;z-index:40;display:flex;gap:2px;padding:5px;border-radius:20px;background:#171c22;border:1px solid var(--border-strong);box-shadow:0 12px 30px #00000073;animation:rise .12s ease}.bubble-row.out .reaction-picker{left:auto;right:0}.reaction-picker button{width:32px;height:32px;font-size:1.1rem;border-radius:50%;display:grid;place-items:center;background:transparent;border:0;cursor:pointer;transition:background .1s,transform .1s}.reaction-picker button:hover{background:var(--surface-hover);transform:scale(1.15)}.reaction-picker button.active{background:var(--accent-soft)}.composer{position:relative;display:flex;align-items:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border);background:var(--conv-head)}.composer .textarea{min-height:42px;max-height:160px;border-radius:12px}.composer-note{padding:14px 18px;border-top:1px solid var(--border);background:var(--conv-head);color:var(--muted);font-size:.8rem;display:flex;align-items:center;gap:10px}.composer-cta{width:100%;display:flex;align-items:center;gap:14px;padding:12px 18px;border:0;border-top:1px solid var(--accent-line);background:linear-gradient(90deg,rgba(242,113,39,.14),rgba(242,113,39,.05) 55%,var(--conv-head));color:var(--text);text-align:left;cursor:pointer;transition:background .15s}.composer-cta:hover:not(:disabled){background:linear-gradient(90deg,#f2712738,#f2712717 55%,#f271270a)}.composer-cta:focus-visible{outline:2px solid var(--accent-line);outline-offset:-3px}.composer-cta:disabled{cursor:progress;opacity:.85}.composer-cta.takeover{border-top-color:#fbbf244d;background:linear-gradient(90deg,rgba(251,191,36,.1),rgba(242,113,39,.05) 55%,var(--conv-head))}.composer-cta.takeover:hover:not(:disabled){background:linear-gradient(90deg,#fbbf2429,#f271271a 55%,#f271270a)}.cta-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;color:#34d399;background:var(--success-soft);border:1px solid rgba(16,185,129,.25)}.cta-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cta-text strong{font-size:.87rem;font-weight:600}.cta-text span{font-size:.72rem;color:var(--muted)}.cta-action{height:38px;padding:0 16px;border-radius:11px;display:inline-flex;align-items:center;gap:8px;flex-shrink:0;font-size:.84rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#f27127,#c44b0a);box-shadow:0 4px 18px #f271274d;transition:transform .12s,box-shadow .12s}.composer-cta:hover:not(:disabled) .cta-action{transform:translateY(-1px);box-shadow:0 6px 24px #f2712773}@media (max-width: 560px){.composer-cta{gap:10px;padding:10px 12px}.cta-text span{display:none}.cta-action{padding:0 12px}}.emoji-picker{position:absolute;bottom:calc(100% + 8px);z-index:50;width:300px;max-width:calc(100vw - 32px);overflow:hidden;background:#14181d;border:1px solid var(--border-strong);border-radius:16px;box-shadow:0 18px 44px #00000080;animation:rise .13s ease}.emoji-tabs{display:flex;border-bottom:1px solid var(--border);padding:4px;gap:2px}.emoji-tabs button{flex:1;padding:6px 0;border-radius:9px;background:transparent;border:0;font-size:1.05rem;cursor:pointer;opacity:.55}.emoji-tabs button:hover{background:var(--surface-2);opacity:.85}.emoji-tabs button.active{background:var(--accent-soft);opacity:1}.emoji-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:8px;max-height:220px;overflow-y:auto}.emoji-cell{font-size:1.25rem;line-height:1;padding:6px 0;border-radius:8px;background:transparent;border:0;cursor:pointer}.emoji-cell:hover{background:var(--surface-2)}.load-older{align-self:center;margin-bottom:8px}.back-btn{display:none}@media (max-width: 860px){.chatlist{width:100%;border-right:0}.inbox.has-chat .chatlist{display:none}.inbox:not(.has-chat) .conversation{display:none}.back-btn{display:inline-flex}.bubble-group{max-width:88%}}.filter-card{padding:14px 16px;margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.filter-card-head{display:flex;align-items:center;gap:8px;font-size:.64rem;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--faint)}.filter-card-head svg{color:var(--accent);font-size:.8rem}.filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}.log-table tbody tr:focus-visible{outline:2px solid var(--accent-line);outline-offset:-2px}.log-contact{display:flex;align-items:center;gap:11px;min-width:210px}.log-contact-name{max-width:240px;font-size:.86rem;font-weight:600}.log-contact-sub{display:flex;align-items:center;gap:6px;min-width:0;margin-top:3px;font-size:.7rem;color:var(--faint)}.code-tag{display:inline-block;padding:1px 6px;border-radius:6px;font-family:var(--mono);font-size:.66rem;letter-spacing:.4px;white-space:nowrap;color:var(--text-2);background:#ffffff0d;border:1px solid var(--border)}.log-counts{display:flex;align-items:center;gap:9px}.log-counts strong{min-width:22px;font-size:.92rem}.log-counts span{display:inline-flex;align-items:center;gap:2px;font-family:var(--mono);font-size:.72rem}.log-counts .in,.log-last .in{color:var(--blue)}.log-counts .out,.log-last .out{color:var(--accent)}.log-counts .del{color:var(--danger-text)}.log-last{color:var(--text-2)}.log-last svg{margin-right:5px;vertical-align:-2px}.agent-chips{display:inline-flex;flex-wrap:wrap;gap:4px}.agent-chip{padding:2px 7px;border-radius:6px;font-size:.68rem;white-space:nowrap;color:#c4b5fd;background:var(--purple-soft)}.agent-chip.more{color:var(--muted);background:#ffffff0f}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;justify-content:flex-end;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade .15s ease}.drawer{width:min(700px,100vw);height:100%;display:flex;flex-direction:column;background:#0d1116;border-left:1px solid var(--border-strong);box-shadow:-24px 0 60px #00000080;animation:slide-in .2s ease}.drawer:before{content:"";height:2px;flex-shrink:0;background:linear-gradient(90deg,rgba(242,113,39,.7),transparent)}.drawer-head{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border)}.drawer-head h3{margin:0;font-size:1rem;font-weight:700}.drawer-sub{display:flex;align-items:center;gap:6px;min-width:0;margin-top:4px;font-size:.74rem;color:var(--muted)}.drawer-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 18px;border-bottom:1px solid var(--border);background:#ffffff04}.drawer-stats>div{display:flex;flex-direction:column;gap:3px;min-width:0;padding:8px 10px;border-radius:10px;background:#ffffff08;border:1px solid var(--border)}.drawer-stats>div.wide{grid-column:span 2}.drawer-stats>div>span:first-child{font-size:.58rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--faint)}.drawer-stats strong{font-size:1.02rem}.drawer-stats strong.mono{font-size:.72rem;font-weight:500}.drawer-stats strong.in{color:var(--blue)}.drawer-stats strong.out{color:var(--accent)}.drawer-stats strong.del{color:var(--danger-text)}.drawer-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 18px;border-bottom:1px solid var(--border)}.drawer-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:12px 18px 22px;background:var(--conv-bg)}.log-entry{display:flex;gap:10px;padding:10px 12px;border-radius:12px;background:#ffffff06;border:1px solid var(--border)}.log-entry.out{background:#f271270b;border-color:#f2712721}.log-entry.deleted{border-style:dashed;border-color:#ef444452}.log-entry.deleted .log-entry-text{color:var(--muted);text-decoration:line-through;text-decoration-color:#f871718c}.log-dir{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;font-size:.85rem}.log-dir.in{color:var(--blue);background:var(--blue-soft)}.log-dir.out{color:var(--accent);background:var(--accent-soft)}.log-entry-main{flex:1;min-width:0}.log-entry-head{display:flex;align-items:center;gap:6px;min-width:0;font-size:.76rem}.log-entry-head strong{font-weight:600;color:var(--text)}.log-entry-subject{margin-top:3px;font-size:.8rem;font-weight:700;color:var(--text);overflow-wrap:anywhere}.log-entry-text{margin-top:3px;font-size:.84rem;white-space:pre-wrap;overflow-wrap:anywhere}.log-entry-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.log-entry-tags:empty{display:none}.log-edits{margin-top:6px;font-size:.74rem}.log-edits summary{cursor:pointer;color:var(--warning)}.log-edit{display:flex;gap:8px;padding:4px 0 0 4px;color:var(--text-2)}@keyframes slide-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}@media (max-width: 640px){.drawer-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-head,.drawer-toolbar,.drawer-stats,.drawer-body{padding-left:12px;padding-right:12px}}.channel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;align-items:start}.channel-card{display:flex;flex-direction:column;overflow:hidden}.channel-card .top{display:flex;gap:12px;align-items:center;padding:16px 18px}.platform-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-size:1.15rem;color:#fff;flex-shrink:0}.channel-card .body{padding:0 18px 14px;display:flex;flex-direction:column;gap:10px}.channel-card .foot{display:flex;flex-wrap:wrap;gap:6px;padding:12px 18px;border-top:1px solid var(--border);background:#ffffff04;margin-top:auto}.channel-card .foot .icon-actions{display:flex;gap:2px;margin-left:auto}.qr-box{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px;border-radius:14px;background:#ffffff08;border:1px dashed rgba(242,113,39,.35);text-align:center}.qr-box img{width:220px;height:220px;border-radius:12px;background:#fff;padding:8px}.type-option{display:flex;gap:14px;align-items:center;padding:14px;border-radius:14px;border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;width:100%;transition:border-color .15s,background .15s}.type-option:hover{border-color:var(--accent-line);background:var(--accent-soft)}.type-option h4{margin:0;font-size:.9rem}.type-option p{margin:3px 0 0;font-size:.76rem;color:var(--muted)}.form-section{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-top:4px;padding-bottom:6px;border-bottom:1px solid var(--border);font-size:.66rem;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted)}.server-row{display:grid;grid-template-columns:minmax(0,1fr) 90px 104px;gap:10px;align-items:end}.ssl-toggle{display:flex;align-items:center;gap:8px;height:38px;font-size:.74rem}.check-hint{display:block;margin-top:2px;font-size:.74rem;color:var(--muted);font-weight:400}.check strong{font-size:.84rem;font-weight:600}.advanced-toggle{align-self:flex-start}.advanced-toggle svg{transition:transform .15s}.advanced-toggle svg.open{transform:rotate(180deg)}.test-box{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:12px;border:1px dashed var(--border-strong);background:#ffffff05}.test-box>.btn{align-self:flex-start}.test-line{display:flex;gap:8px;align-items:flex-start;font-size:.8rem;line-height:1.45}.test-line svg{flex-shrink:0;margin-top:3px}.test-line.ok{color:#6ee7b7}.test-line.fail{color:#fca5a5}@media (max-width: 640px){.server-row{grid-template-columns:minmax(0,1fr) 80px}.server-row>:last-child{grid-column:span 2}}.swatches{display:flex;gap:8px;flex-wrap:wrap}.swatch{width:26px;height:26px;border-radius:8px;border:2px solid transparent;cursor:pointer}.swatch.active{border-color:#fff;box-shadow:0 0 0 2px #ffffff26}.role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.perm-group{border:1px solid var(--border);border-radius:14px;overflow:hidden}.perm-group-head{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#ffffff06;font-size:.72rem;font-weight:700;color:var(--text-2)}.perm-list{display:flex;flex-direction:column;gap:6px}.perm-line{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--text-2)}.perm-line.off{color:var(--faint);text-decoration:line-through;text-decoration-color:#ffffff26}.login-page{min-height:100dvh;display:grid;place-items:center;position:relative;overflow:hidden;background:#08090b;padding:20px}.login-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.login-bg .glow1{position:absolute;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(242,113,39,.08) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-60%)}.login-bg .glow2{position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(167,139,250,.05) 0%,transparent 70%);bottom:-10%;right:-5%}.login-bg .grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:60px 60px}.login-bg .orb{position:absolute;border-radius:50%}.login-card-wrap{width:100%;max-width:420px;position:relative;z-index:1}.login-logo{width:64px;height:64px;border-radius:20px;margin:0 auto 16px;display:grid;place-items:center;color:#fff;font-size:1.6rem;background:linear-gradient(135deg,#f27127,#a83300);box-shadow:0 0 0 1px #f271274d,0 0 40px #f2712740,0 16px 40px #0006}.login-card{background:#ffffff08;border-radius:24px;border:1px solid rgba(255,255,255,.07);box-shadow:0 32px 80px #0009,inset 0 1px #ffffff0f;overflow:hidden}.login-card:before{content:"";display:block;height:2px;background:linear-gradient(90deg,transparent,rgba(242,113,39,.6),transparent)}.login-submit{width:100%;height:46px;border-radius:14px;font-size:.9rem}.shake{animation:shake .4s ease}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes floatA{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes floatB{0%,to{transform:translateY(0)}50%{transform:translateY(15px)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
