:root{--bg: #0b0e14;--bg-deep: #090b10;--bg-elev: #171a21;--bg-elev-2: #1f242d;--border: #2a2f3a;--glass: rgba(255, 255, 255, .045);--glass-2: rgba(255, 255, 255, .07);--glass-border: rgba(255, 255, 255, .1);--glass-border-2: rgba(255, 255, 255, .16);--text: #e8ebf2;--text-muted: #9aa3b2;--accent: #4c8bf5;--accent-hover: #5b97ff;--danger: #e5534b;--success: #3fb950;--warning: #d29922;--radius: 12px;--radius-lg: 16px;--radius-sm: 9px;--shadow: 0 10px 30px rgba(0, 0, 0, .3);--shadow-sm: 0 4px 14px rgba(0, 0, 0, .22);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(680px 520px at 10% -10%,rgba(76,139,245,.2),transparent 60%),radial-gradient(620px 520px at 96% 12%,rgba(140,90,242,.16),transparent 60%),radial-gradient(680px 600px at 50% 112%,rgba(45,178,216,.13),transparent 62%),var(--bg-deep);background-attachment:fixed;color:var(--text);font-size:14px;line-height:1.45}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);padding:8px 14px;border-radius:var(--radius);transition:background .15s,border-color .15s}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover:not(:disabled){background:var(--accent-hover)}button.danger{border-color:var(--danger);color:var(--danger)}button.ghost{background:transparent}input,textarea,select{font:inherit;width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:9px 11px}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent)}textarea{resize:vertical;min-height:70px}label{display:block;font-size:12px;color:var(--text-muted);margin-bottom:4px}.field{margin-bottom:14px}.row{display:flex;gap:8px;align-items:center}.muted{color:var(--text-muted)}.error-text{color:var(--danger);font-size:13px;margin-top:8px}.small{font-size:12px}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.app-shell{display:flex;flex-direction:column;height:100%}.topbar{display:flex;align-items:center;gap:18px;padding:10px 18px;border-bottom:1px solid var(--border);background:var(--bg-elev)}.topbar .brand{font-weight:600;white-space:nowrap}.topbar nav{display:flex;gap:6px}.topbar nav a{padding:6px 12px;border-radius:var(--radius);color:var(--text-muted)}.topbar nav a.active{background:var(--bg-elev-2);color:var(--text)}.topbar .spacer{flex:1}.topbar .tenant-select{width:auto;min-width:160px}.topbar .user{font-size:13px;color:var(--text-muted);white-space:nowrap}.content{flex:1;overflow:auto;padding:18px}.auth-wrap{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:100%;max-width:380px}.auth-card h1{font-size:20px;margin:0 0 6px}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--border);margin-bottom:14px;flex-wrap:wrap}.tab{background:transparent;border:none;border-bottom:2px solid transparent;border-radius:0;color:var(--text-muted);padding:8px 12px}.tab.active{color:var(--text);border-bottom-color:var(--accent)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--border)}th{font-size:12px;color:var(--text-muted);font-weight:500}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--bg-elev)}.badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:11px;border:1px solid var(--border);color:var(--text-muted)}.badge.status-waiting_operator{border-color:var(--warning);color:var(--warning)}.badge.status-assigned{border-color:var(--accent);color:var(--accent)}.badge.status-resolved,.badge.status-closed{border-color:var(--success);color:var(--success)}.detail-grid{display:grid;grid-template-rows:auto 1fr auto;height:100%;gap:14px}.detail-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.detail-header .spacer{flex:1}.messages{overflow:auto;display:flex;flex-direction:column;gap:10px;padding:4px}.bubble{max-width:70%;padding:9px 12px;border-radius:12px;background:var(--bg-elev-2);border:1px solid var(--border)}.bubble .meta{font-size:11px;color:var(--text-muted);margin-bottom:3px;display:flex;gap:8px}.bubble .text{white-space:pre-wrap;word-break:break-word}.bubble.sender-user{align-self:flex-start}.bubble.sender-operator{align-self:flex-end;background:#1d3354;border-color:#295089}.bubble.sender-ai{align-self:flex-start;background:#1e2b22;border-color:#2f5238}.bubble.sender-system{align-self:center;background:transparent;font-size:12px;color:var(--text-muted)}.draft-box{border:1px dashed var(--accent);border-radius:var(--radius);padding:14px;background:var(--bg-elev)}.draft-box h3{margin:0 0 8px;font-size:14px}.composer{display:flex;flex-direction:column;gap:8px}.composer .actions{display:flex;gap:8px;flex-wrap:wrap}.escalation{background:#e5534b1f;border:1px solid var(--danger);border-radius:var(--radius);padding:8px 12px;color:var(--text)}.page-header{display:flex;align-items:center;margin-bottom:16px}.page-header h2{margin:0;font-size:18px}.page-header .spacer{flex:1}.split{display:grid;grid-template-columns:1fr 360px;gap:18px;align-items:start}@media (max-width: 880px){.split{grid-template-columns:1fr}}.recovery-codes{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:10px;white-space:pre-wrap;word-break:break-all}.center-note{text-align:center;padding:40px;color:var(--text-muted)}.otp-uri{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;word-break:break-all;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:8px}.avatar{position:relative;flex:0 0 auto;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;letter-spacing:.2px;-webkit-user-select:none;user-select:none}.avatar.lg{width:50px;height:50px;font-size:17px}.avatar .ch{position:absolute;right:-3px;bottom:-3px;min-width:18px;height:18px;padding:0 3px;border-radius:9px;background:var(--bg-elev);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--text-muted)}.avatar.c0{background:linear-gradient(135deg,#4c8bf5,#3666c9)}.avatar.c1{background:linear-gradient(135deg,#8b5cf6,#6d3fc0)}.avatar.c2{background:linear-gradient(135deg,#ec5a73,#c23f5a)}.avatar.c3{background:linear-gradient(135deg,#f0913a,#cf6f1f)}.avatar.c4{background:linear-gradient(135deg,#2bb3a3,#18897c)}.avatar.c5{background:linear-gradient(135deg,#56a93c,#3c8127)}.avatar.c6{background:linear-gradient(135deg,#b07a3c,#8a5c24)}.chip{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:99px;font-size:11px;line-height:1.6;background:var(--bg-elev-2);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap}.chip.accent{color:var(--accent);border-color:#4c8bf566;background:#4c8bf51f}.chip.warn{color:var(--warning);border-color:#d2992266;background:#d299221f}.chip.danger{color:var(--danger);border-color:#e5534b80;background:#e5534b1f}.badge.status-open{border-color:#2bb3a3;color:#2bb3a3}.conv-list{display:flex;flex-direction:column;gap:8px}.conv-card{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;background:var(--bg-elev);border:1px solid var(--border);border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s,transform .05s}.conv-card:hover{border-color:var(--accent);background:var(--bg-elev-2)}.conv-card:active{transform:scale(.997)}.conv-card .body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.conv-card .line{display:flex;align-items:baseline;gap:8px}.conv-card .name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-card .handle{color:var(--text-muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-card .time{margin-left:auto;color:var(--text-muted);font-size:12px;white-space:nowrap;flex:0 0 auto}.conv-card .sub{color:var(--text-muted);font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.conv-card .meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.conv-card .meta .grow{flex:1}.client-card{display:flex;gap:14px;align-items:flex-start}.client-card .info{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.client-card .name-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.client-card .name{font-size:16px;font-weight:600}.client-card .chips{display:flex;gap:6px;flex-wrap:wrap}.client-card .head-actions{display:flex;gap:8px;flex-wrap:wrap}.id-pill{display:inline-flex;align-items:center;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:5px 8px;width:fit-content}.id-pill .id-label{color:var(--text-muted)}.id-pill button{padding:2px 8px;font-size:11px}.bubble{max-width:72%;border-radius:14px}.bubble.sender-user{border-bottom-left-radius:4px}.bubble.sender-operator{border-bottom-right-radius:4px;background:var(--accent);border-color:var(--accent);color:#fff}.bubble.sender-operator .meta{color:#fffc}.bubble.sender-ai{border-bottom-left-radius:4px;background:#8b5cf624;border-color:#8b5cf666}.badge.ok{border-color:var(--success);color:var(--success);background:#3fb9501a}.badge.warn{border-color:var(--warning);color:var(--warning);background:#d299221a}.badge.info{border-color:var(--accent);color:var(--accent);background:#4c8bf51a}.badge.off{border-color:var(--border);color:var(--text-muted)}tbody tr:hover td{background:var(--bg-elev)}.cell-id{display:flex;align-items:center;gap:10px;min-width:0}.cell-id .cell-main{display:flex;flex-direction:column;line-height:1.3;min-width:0}.cell-id .cell-main>span:first-child{font-weight:500;overflow:hidden;text-overflow:ellipsis}.cell-id .cell-sub{color:var(--text-muted);font-size:12px}.saved-note{color:var(--success);font-size:12px;margin-top:8px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.kpi{background:var(--bg-elev);border:1px solid var(--border);border-radius:12px;padding:16px}.kpi-value{font-size:28px;font-weight:700;line-height:1.1}.kpi-label{color:var(--text-muted);font-size:13px;margin-top:4px}.bubble-media{display:block;max-width:min(280px,100%);max-height:340px;border-radius:10px;margin:2px 0 6px;cursor:pointer;object-fit:cover}.bubble .file-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:8px;background:var(--bg);border:1px solid var(--border);color:var(--text);margin:2px 0 6px}.card,.auth-card,.kpi,.conv-card,.draft-box{background:var(--glass);-webkit-backdrop-filter:blur(22px) saturate(150%);backdrop-filter:blur(22px) saturate(150%);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.draft-box{border-style:dashed;border-color:#4c8bf58c}.conv-card{box-shadow:var(--shadow-sm)}.topbar{position:sticky;top:0;z-index:20;background:#0d10168c;-webkit-backdrop-filter:blur(22px) saturate(150%);backdrop-filter:blur(22px) saturate(150%);border-bottom:1px solid var(--glass-border)}.topbar .brand{background:linear-gradient(135deg,#7fb0ff,#9a7cff);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:.2px}.topbar nav a{transition:background .15s,color .15s}.topbar nav a:hover{color:var(--text);background:#ffffff0d;text-decoration:none}.topbar nav a.active{background:#4c8bf52e;color:#cfe0ff}button{background:var(--glass-2);border:1px solid var(--glass-border);border-radius:var(--radius)}button:hover:not(:disabled){border-color:var(--glass-border-2);background:#ffffff1a}button.primary{background:linear-gradient(135deg,#4c8bf5,#3b6fe0);border-color:transparent;color:#fff;box-shadow:0 6px 18px #4c8bf552}button.primary:hover:not(:disabled){background:linear-gradient(135deg,#5b97ff,#4076e8)}button.ghost{background:transparent;border-color:transparent}button.ghost:hover:not(:disabled){background:#ffffff0f;border-color:transparent}button.danger{background:#e5534b1f;border-color:#e5534b73;color:var(--danger)}button.danger:hover:not(:disabled){background:var(--danger);color:#fff}input,textarea,select{background:#ffffff0a;border:1px solid var(--glass-border);border-radius:var(--radius)}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4c8bf52e}.conv-card:hover{border-color:#4c8bf580;background:var(--glass-2)}.bubble{border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:var(--glass-2);box-shadow:var(--shadow-sm)}.bubble.sender-user{border-bottom-left-radius:5px}.bubble.sender-operator{background:linear-gradient(135deg,#4c8bf5,#3768d6);border-color:transparent;border-bottom-right-radius:5px;color:#fff}.bubble.sender-ai{background:#8b5cf629;border-color:#8b5cf666;border-bottom-left-radius:5px}.bubble.sender-system{background:#ffffff0d;border-color:transparent;box-shadow:none}.bubble.sender-operator .file-chip{background:#ffffff29;border-color:#ffffff40;color:#fff}.id-pill,.recovery-codes,.otp-uri{background:#ffffff0a;border-color:var(--glass-border)}th,td{border-bottom-color:var(--glass-border)}tbody tr:hover td,tr.clickable:hover td{background:#ffffff0a}.escalation{border-radius:var(--radius)}.avatar{box-shadow:0 2px 10px #00000040}.avatar .ch{background:#141820eb;border-color:var(--glass-border)}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:8px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#ffffff47;background-clip:padding-box}
