:root{--bg:#f6f7f9;--surface:#fff;--surface-2:#f2f4f7;--surface-3:#e9edf2;--border:#dfe4ea;--border-strong:#c8d0da;--text:#101828;--text-2:#5a6572;--text-3:#8b95a3;--accent:#3b5bdb;--accent-weak:#e8ecfd;--accent-text:#fff;--positive:#0f9d58;--positive-weak:#e3f5ea;--warning:#b7791f;--warning-weak:#fdf3e0;--negative:#d1373a;--negative-weak:#fdeaea;--info:#1570cd;--info-weak:#e5f0fc;--radius:10px;--radius-sm:7px;--shadow:0 1px 2px #1018280f, 0 1px 3px #1018280a;--shadow-lg:0 8px 24px #1018281a;--sidebar-width:232px}@media (prefers-color-scheme:dark){:root{--bg:#0e1116;--surface:#161b22;--surface-2:#1c232c;--surface-3:#252e39;--border:#2a323d;--border-strong:#3a4450;--text:#e7ecf2;--text-2:#9aa5b3;--text-3:#6e7987;--accent:#7289f5;--accent-weak:#1e2540;--accent-text:#0e1116;--positive:#46c479;--positive-weak:#14291d;--warning:#e0a642;--warning-weak:#2b2213;--negative:#f0716f;--negative-weak:#2e1818;--info:#5ba8f0;--info-weak:#12222f;--shadow:0 1px 2px #0006;--shadow-lg:0 10px 30px #00000073}}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:600}h1{font-size:22px}h2{font-size:17px}h3{font-size:15px}p{margin:0}.shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0}.sidebar-brand{letter-spacing:-.02em;align-items:center;gap:9px;padding:18px 16px 14px;font-size:15px;font-weight:650;display:flex}.sidebar-mark{color:#fff;background:linear-gradient(135deg,#3b5bdb,#7289f5);border-radius:7px;place-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:grid}.sidebar-nav{flex-direction:column;flex:1;gap:1px;padding:6px 8px;display:flex;overflow-y:auto}.sidebar-section{letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);padding:14px 8px 5px;font-size:10.5px;font-weight:650}.nav-item{border-radius:var(--radius-sm);color:var(--text-2);justify-content:space-between;align-items:center;gap:9px;padding:7px 9px;font-weight:500;transition:background .12s,color .12s;display:flex}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item[data-active=true]{background:var(--accent-weak);color:var(--accent);font-weight:600}.nav-count{font-variant-numeric:tabular-nums;background:var(--surface-3);color:var(--text-2);border-radius:20px;padding:1px 7px;font-size:11px}.sidebar-footer{border-top:1px solid var(--border);align-items:center;gap:9px;padding:10px 12px;display:flex}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--surface);z-index:5;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0}.topbar-title{flex-direction:column;gap:2px;min-width:0;display:flex}.topbar-subtitle{color:var(--text-2);font-size:12.5px}.content{flex:1;min-height:0;padding:20px 24px 40px}.content-flush{flex:1;min-height:0;padding:0;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;display:flex}.card-body{padding:16px}.grid{gap:14px;display:grid}.grid-kpi{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.stack{flex-direction:column;gap:14px;display:flex}.row{align-items:center;gap:8px;display:flex}.row-between{justify-content:space-between;align-items:center;gap:12px;display:flex}.wrap{flex-wrap:wrap}.muted{color:var(--text-2)}.dim{color:var(--text-3)}.small{font-size:12.5px}.mono{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:12px}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.spacer{flex:1}.btn{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:7px 13px;font-family:inherit;font-size:13px;font-weight:550;transition:background .12s,border-color .12s,opacity .12s;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn-primary:hover:not(:disabled){filter:brightness(1.08);background:var(--accent)}.btn-danger{color:var(--negative);border-color:var(--border-strong)}.btn-danger:hover:not(:disabled){background:var(--negative-weak)}.btn-ghost{color:var(--text-2);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn-sm{padding:4px 9px;font-size:12px}.field{flex-direction:column;gap:5px;display:flex}.label{color:var(--text-2);font-size:12.5px;font-weight:600}.hint{color:var(--text-3);font-size:12px}.input,.select,.textarea{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);width:100%;color:var(--text);padding:8px 11px;font-family:inherit;font-size:13.5px;transition:border-color .12s,box-shadow .12s}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak);outline:none}.textarea{resize:vertical;min-height:88px;line-height:1.55}.select{cursor:pointer}.badge{background:var(--surface-3);color:var(--text-2);white-space:nowrap;border-radius:20px;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.badge[data-tone=positive]{background:var(--positive-weak);color:var(--positive)}.badge[data-tone=negative]{background:var(--negative-weak);color:var(--negative)}.badge[data-tone=warning]{background:var(--warning-weak);color:var(--warning)}.badge[data-tone=info]{background:var(--info-weak);color:var(--info)}.badge[data-tone=accent]{background:var(--accent-weak);color:var(--accent)}.tag{background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-size:11.5px;display:inline-flex}.tag[data-auto=true]{border-style:dashed}.channel-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.avatar{background:var(--surface-3);width:32px;height:32px;color:var(--text-2);border-radius:50%;flex-shrink:0;place-items:center;font-size:11.5px;font-weight:650;display:grid}.avatar-lg{width:46px;height:46px;font-size:15px}.table{border-collapse:collapse;width:100%;font-size:13.5px}.table th{text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--border);background:var(--surface-2);padding:9px 14px;font-size:11.5px;font-weight:650;position:sticky;top:0}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:11px 14px}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--surface-2)}.table-wrap{overflow-x:auto}.kpi{padding:14px 16px}.kpi-label{color:var(--text-2);font-size:12px;font-weight:550}.kpi-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:3px;font-size:26px;font-weight:660}.kpi-sub{color:var(--text-3);margin-top:2px;font-size:12px}.bar-row{grid-template-columns:128px 1fr 44px;align-items:center;gap:10px;font-size:12.5px;display:grid}.bar-track{background:var(--surface-3);border-radius:20px;height:7px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:20px;height:100%;transition:width .3s}.bar-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-2)}.crm-board{grid-template-columns:repeat(4,minmax(260px,1fr));align-items:start;gap:14px;padding-bottom:16px;display:grid;overflow-x:auto}.crm-column{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);min-width:260px;min-height:360px}.crm-column-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:11px 12px;font-weight:650;display:flex}.crm-column-cards{flex-direction:column;gap:10px;padding:10px;display:flex}.crm-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);flex-direction:column;gap:10px;padding:12px;display:flex}.crm-card[draggable=true]{cursor:grab}.crm-card[draggable=true]:active{cursor:grabbing}.crm-drag{color:var(--text-3);letter-spacing:-2px}.crm-last-message{color:var(--text-2);background:var(--surface-2);-webkit-line-clamp:2;border-radius:6px;-webkit-box-orient:vertical;padding:7px 8px;font-size:12.5px;display:-webkit-box;overflow:hidden}.crm-actions{flex-direction:column;gap:6px;display:flex}.crm-action{align-items:flex-start;gap:7px;font-size:12.5px;display:flex}.crm-action span[data-complete=true]{color:var(--text-3);text-decoration:line-through}.crm-action small{color:var(--text-3)}.crm-missing-details{margin-top:2px;line-height:1.35;display:block}.crm-add-action{grid-template-columns:minmax(0,1fr) 115px 30px;gap:5px;display:grid}.crm-add-action .input{padding:5px 7px;font-size:12px}.crm-status-select{padding:5px 8px;font-size:12px}.crm-drop-hint{color:var(--text-3);text-align:center;padding:24px 8px;font-size:12px}.detail-popup{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-weak);flex-direction:column;gap:7px;padding:9px;display:flex}.detail-suggestion{justify-content:space-between;align-items:center;gap:8px;display:flex}.detected-details{margin:5px 0 0 7px;display:inline-block;position:relative}.detail-icon{background:var(--accent);color:var(--accent-text);font:inherit;cursor:pointer;border:0;border-radius:20px;padding:2px 7px;font-size:11px;font-weight:700}.detail-overlay{z-index:10;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:300px;box-shadow:var(--shadow-lg);color:var(--text);flex-direction:column;gap:8px;padding:10px;font-size:12px;display:flex;position:absolute;bottom:28px;left:0}@media (max-width:900px){.crm-board{grid-template-columns:repeat(4,280px)}}.inbox{flex:1;grid-template-columns:320px minmax(0,1fr) 300px;height:calc(100vh - 65px);min-height:0;display:grid}.inbox-list{border-right:1px solid var(--border);background:var(--surface);overflow-y:auto}.inbox-thread{background:var(--bg);flex-direction:column;min-width:0;display:flex}.inbox-aside{border-left:1px solid var(--border);background:var(--surface);padding:16px;overflow-y:auto}.conv-item{text-align:left;border-bottom:1px solid var(--border);cursor:pointer;width:100%;color:inherit;background:0 0;border-left:2px solid #0000;padding:11px 14px;font-family:inherit;display:block}.conv-item:hover{background:var(--surface-2)}.conv-item[data-active=true]{background:var(--accent-weak);border-left-color:var(--accent)}.messages{flex-direction:column;flex:1;gap:10px;padding:18px 22px;display:flex;overflow-y:auto}.bubble{border:1px solid var(--border);background:var(--surface);max-width:min(560px,78%);box-shadow:var(--shadow);white-space:pre-wrap;word-break:break-word;border-radius:12px;padding:9px 12px}.bubble-row{flex-direction:column;gap:3px;display:flex}.bubble-row[data-direction=OUTBOUND]{align-items:flex-end}.bubble[data-direction=OUTBOUND]{background:var(--accent-weak);border-color:#0000}.bubble-meta{color:var(--text-3);align-items:center;gap:6px;font-size:11px;display:flex}.composer{border-top:1px solid var(--border);background:var(--surface);flex-direction:column;gap:8px;padding:12px 16px;display:flex}.notice{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);padding:9px 12px;font-size:12.5px}.notice[data-tone=warning]{background:var(--warning-weak);color:var(--warning);border-color:#0000}.notice[data-tone=negative]{background:var(--negative-weak);color:var(--negative);border-color:#0000}.notice[data-tone=info]{background:var(--info-weak);color:var(--info);border-color:#0000}.filter-group{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:12px}.filter-group[data-depth="1"]{background:var(--surface)}.filter-row{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:7px;padding:7px;display:flex}.filter-group[data-depth="1"] .filter-row{background:var(--surface-2)}.op-toggle{border:1px solid var(--border-strong);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.op-toggle button{background:var(--surface);color:var(--text-2);cursor:pointer;border:none;padding:3px 11px;font-family:inherit;font-size:12px;font-weight:600}.op-toggle button[data-active=true]{background:var(--accent);color:var(--accent-text)}.auth{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{width:100%;max-width:400px}.empty{text-align:center;color:var(--text-3);padding:44px 20px}.skeleton{background:linear-gradient(90deg, var(--surface-2), var(--surface-3), var(--surface-2));background-size:200% 100%;border-radius:5px;height:14px;animation:1.4s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.divider{background:var(--border);height:1px;margin:4px 0}.kv{grid-template-columns:108px 1fr;gap:6px 12px;font-size:13px;display:grid}.kv dt{color:var(--text-3)}.kv dd{word-break:break-word;margin:0}.timeline-item{border-bottom:1px solid var(--border);gap:10px;padding:9px 0;display:flex}.timeline-dot{background:var(--border-strong);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:6px}.tabs{border-bottom:1px solid var(--border);gap:2px;display:flex}.tab{color:var(--text-2);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 13px;font-family:inherit;font-size:13px;font-weight:550}.tab[data-active=true]{color:var(--accent);border-bottom-color:var(--accent)}@media (max-width:1100px){.inbox{grid-template-columns:280px minmax(0,1fr)}.inbox-aside{display:none}}@media (max-width:820px){.sidebar{display:none}.inbox{grid-template-columns:1fr}.content{padding:16px}}
