:root{--bg:#F5F5F7;--panel:#FFFFFF;--sidebar:#FFFFFF;--ink:#1D1D1F;--ink-2:#3A3A3C;--muted:#6E6E73;--faint:#8E8E93;--line:#E7E7EC;--line-2:#F0F0F3;--chip:#F0F0F3;--accent:#0071E3;--accent-hover:#0062C4;--accent-ink:#0064CC;--accent-soft:#EAF2FD;--good:#248A3D;--good-bg:#E9F7EC;--warn:#9A5B00;--warn-bg:#FBF1E1;--crit:#D33A2E;--track:#D2D2D7;--r:18px;--r-sm:12px;--sh:0 1px 2px rgba(0,0,0,.04),0 4px 14px rgba(0,0,0,.04);--sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;letter-spacing:-.006em}a{color:inherit}::selection{background:#0071e3;color:#fff}.tnum{font-variant-numeric:tabular-nums}.app{min-height:100vh;display:grid;grid-template-columns:238px 1fr}.side{background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:2px;padding:18px 14px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:6px 8px 22px}.brand .mk{width:26px;height:26px;border-radius:8px;background:var(--accent);display:grid;place-items:center;color:#fff;font-weight:700;font-size:14px;flex:none}.brand b{font-size:16px;letter-spacing:-.03em;font-weight:650}.nav{display:flex;flex-direction:column;gap:2px}.nav a{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:var(--r-sm);color:var(--muted);text-decoration:none;font-weight:500;font-size:13.5px;transition:.12s;cursor:pointer}.nav a svg{width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:1.6}.nav a:hover{background:var(--line-2);color:var(--ink-2)}.nav a.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.nav a.on svg{stroke:var(--accent)}.nav .grp{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);font-weight:700;padding:18px 10px 6px}.side .foot{margin-top:auto;padding:12px 10px 4px;border-top:1px solid var(--line)}.side .foot .row{display:flex;justify-content:space-between;align-items:baseline;font-size:12px}.side .foot b{font-size:12.5px}.side .foot .cap{color:var(--muted)}.side .foot .bar{height:5px;border-radius:5px;background:var(--line);margin:9px 0 5px;overflow:hidden}.side .foot .bar i{display:block;height:100%;background:var(--accent);border-radius:5px}.side .foot small{color:var(--faint);font-size:11px}.main{padding:28px 32px 64px;min-width:0;max-width:1160px}.top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:26px}.top h1{font-size:23px;margin:0;letter-spacing:-.035em;font-weight:640}.top .sub{color:var(--muted);font-size:13.5px;margin-top:4px}.top .actions{display:flex;gap:9px}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:8px 13px;font-size:13px;font-weight:500;color:var(--ink-2);cursor:pointer}.pill svg{width:15px;height:15px;stroke:var(--muted);fill:none;stroke-width:1.7}.btn{border:0;border-radius:10px;background:var(--accent);color:#fff;font-weight:600;font-size:13px;padding:9px 16px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:background .12s}.btn:hover{background:var(--accent-hover)}.btn:disabled{opacity:.55;cursor:default}.btn svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:1.9}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh)}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}.kpi{padding:18px 20px}.kpi .lbl{color:var(--muted);font-size:13px;font-weight:520;display:flex;align-items:center;gap:8px}.kpi .lbl .ic{width:16px;height:16px;stroke:var(--accent);fill:none;stroke-width:1.7}.kpi .val{font-size:32px;font-weight:660;letter-spacing:-.04em;margin:14px 0 6px}.kpi .val small{font-size:16px;font-weight:600;color:var(--faint);letter-spacing:0}.kpi .delta{font-size:12.5px;font-weight:560;color:var(--muted)}.kpi .delta b{font-weight:600}.kpi .delta .up{color:var(--good)}.kpi .delta .down{color:var(--crit)}.grid2{display:grid;grid-template-columns:1.6fr 1fr;gap:16px}.pad{padding:20px 22px}.hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.hd h2{font-size:15px;margin:0;letter-spacing:-.02em;font-weight:620}.hd .lnk{color:var(--accent);font-weight:550;font-size:13px;text-decoration:none;cursor:pointer}.hd .lnk:hover{color:var(--accent-hover)}.legend{display:flex;gap:18px;margin:14px 0 6px;font-size:12px;color:var(--muted)}.legend i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px;vertical-align:-1px}.chartwrap{position:relative;height:230px;margin-top:6px}.chartwrap canvas{width:100%;height:100%;display:block}.conv{display:flex;align-items:center;gap:13px;padding:13px 0;border-top:1px solid var(--line-2)}.conv:first-of-type{border-top:0;padding-top:6px}.conv .av{width:36px;height:36px;border-radius:10px;flex:none;display:grid;place-items:center;font-weight:600;font-size:12.5px;background:var(--accent-soft);color:var(--accent-ink)}.conv .who{flex:1;min-width:0}.conv .who b{font-size:13.5px;font-weight:560;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv .who span{color:var(--muted);font-size:12px}.conv .meta{text-align:right;flex:none}.conv .meta .t{color:var(--faint);font-size:11.5px;margin-top:3px}.tag{font-size:11px;font-weight:550;padding:3px 10px;border-radius:999px;white-space:nowrap}.tag.ai{background:var(--accent-soft);color:var(--accent-ink)}.tag.cb{background:var(--good-bg);color:var(--good)}.tag.miss{background:var(--warn-bg);color:var(--warn)}.asst .row1{display:flex;align-items:center;gap:10px;margin:6px 0 2px}.dotlive{width:8px;height:8px;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px var(--good-bg)}.asst p{color:var(--muted);margin:12px 0 16px;font-size:13px}.ms{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ms .box{border:1px solid var(--line);border-radius:12px;padding:12px 14px}.ms .k{color:var(--muted);font-size:12px}.ms b{font-size:19px;letter-spacing:-.03em;font-weight:640}.arow{display:flex;gap:10px;margin-top:16px}.arow .btn{flex:1;justify-content:center}.arow .ghost{flex:1;justify-content:center;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-weight:550;border-radius:10px;font-size:13px;padding:9px 16px;cursor:pointer}.arow .ghost:hover{background:var(--line-2)}.empty{color:var(--faint);font-size:13px;padding:14px 0}.skel{background:linear-gradient(90deg,#eee,#f5f5f7,#eee);background-size:200% 100%;animation:sk 1.2s infinite;border-radius:8px}@keyframes sk{0%{background-position:200% 0}to{background-position:-200% 0}}.auth{min-height:100vh;display:grid;place-items:center;padding:24px}.auth .box{width:100%;max-width:380px}.auth .brand{justify-content:center;padding-bottom:18px}.auth .card{padding:26px 24px}.auth h1{font-size:20px;margin:0 0 4px;letter-spacing:-.03em;font-weight:640}.auth .sub{color:var(--muted);font-size:13.5px;margin:0 0 18px}.field label{display:block;font-size:12px;font-weight:560;color:var(--muted);margin-bottom:6px}.field input,.field textarea,.field select{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:10px;padding:11px 13px;font-size:14px;background:var(--panel);color:var(--ink);font-family:inherit}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}.field textarea{resize:vertical}.field{margin-bottom:12px}pre code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.rowbtwn{display:flex;align-items:center;justify-content:space-between;gap:10px}.mut{color:var(--muted);font-size:13px}.auth .btn{width:100%;justify-content:center;padding:11px}.err{color:var(--crit);font-size:13px;margin:2px 0 12px}.ph{padding:48px 22px;text-align:center;color:var(--muted)}.ph h2{color:var(--ink);font-size:17px;margin:0 0 6px;letter-spacing:-.02em}.mnav{display:none}@media (max-width:920px){.app{grid-template-columns:1fr}.side{display:none}.main{padding:18px 16px 92px;max-width:none}.kpis{grid-template-columns:1fr 1fr;gap:12px}.grid2{grid-template-columns:1fr}.widget-grid{grid-template-columns:1fr!important}.top h1{font-size:20px}.kpi .val{font-size:28px;margin:10px 0 5px}.btn .txt{display:none}.mnav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#ffffffe6;-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-top:1px solid var(--line);padding:8px 6px calc(8px + env(safe-area-inset-bottom));justify-content:space-around;z-index:20}.mnav a,.mnav button{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--faint);text-decoration:none;font-size:10.5px;font-weight:550;padding:3px 8px;border-radius:9px;cursor:pointer;border:0;background:none;font-family:inherit}.mnav a svg,.mnav button svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7}.mnav button svg circle{fill:currentColor;stroke:none}.mnav a.on,.mnav button.on{color:var(--accent)}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:30;display:flex;align-items:flex-end;animation:fade .15s ease}.sheet{width:100%;background:var(--panel);border-radius:20px 20px 0 0;padding:8px 12px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px #0000001f;animation:slideup .2s ease}.sheet-grip{width:38px;height:4px;border-radius:3px;background:var(--track);margin:8px auto 12px}.sheet-item{display:flex;align-items:center;gap:13px;padding:13px 12px;border-radius:12px;color:var(--ink);text-decoration:none;font-size:15px;font-weight:520}.sheet-item svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;flex:none}.sheet-item:active{background:var(--line-2)}.sheet-item.on{color:var(--accent-ink);background:var(--accent-soft)}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes slideup{0%{transform:translateY(100%)}to{transform:translateY(0)}}}
