/* ===== Call Logs Filter Dropdown ===== */
/* Saved views, listed in the filter menu with the filters they are made of.
   The current one is marked, so opening the menu answers "which view am I
   on" as well as the chip does. */
.cl-fm-sec-hd{display:flex;align-items:center;gap:6px;padding:6px 10px 4px;font:600 11px/1.3 'Inter',sans-serif;color:#71717A;letter-spacing:.04em;text-transform:uppercase}
.cl-fm-item.is-sv{padding-right:6px}
.cl-fm-item.is-sv.is-cur{font-weight:500}
.cl-fm-item.is-sv .cl-fm-sv-del{width:20px;height:20px;display:inline-grid;place-items:center;border-radius:4px;color:#A1A1AA;flex:0 0 20px;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease;cursor:pointer}
.cl-fm-item.is-sv .cl-fm-sv-del svg{width:13px;height:13px;display:block}
.cl-fm-item.is-sv:hover .cl-fm-sv-del{opacity:1}
/* Neutral: this opens the edit dialog. It was red while it was a trash. */
.cl-fm-item.is-sv .cl-fm-sv-del:hover{background:#F4F4F5;color:#3F3F46}
body.theme-dark .cl-fm-sec-hd{color:#9CA3AF}
body.theme-dark .cl-fm-item.is-sv .cl-fm-sv-del{color:#71717A}
body.theme-dark .cl-fm-item.is-sv .cl-fm-sv-del:hover{background:#3A3F47;color:#F4F4F5}

/* ── The view chip ──
   Which saved view the table is showing, and the way to change it — beside
   the Filters button, because that is what it governs. Applying a view used
   to change the pills and say nothing about why.

   It reads the all-records label when no view is applied, so there is always
   somewhere to switch from; Edited says the filters have moved away from the
   view the chip names. */
/* Sized to the pills it sits with — same 28px, same 12px type, same 7px
   corner — and toned against them. The pills are a grey fill behind an almost
   invisible stroke; the chip is its view's own colour, softly, behind a
   stroke you can see. It names the set, they are what is in it, and at a
   glance the row now says which is which. */
.cl-vw{
  display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;
  height:28px;padding:0 6px 0 8px;box-sizing:border-box;
  border:1px solid var(--vw-line,#D0D5DD);border-radius:7px;
  background:var(--vw-soft,#F9FAFB);cursor:pointer;
  font:600 12px/1 'Inter',sans-serif;color:var(--vw-ink,#18181B);white-space:nowrap;
  transition:border-color .14s ease,background .14s ease,color .14s ease;
}
/* A rule between the view and the filters it produced. The chip names the
   set; the pills are what is in it. */
.cl-vw + .cl-fp{margin-left:6px}
.cl-vw + .cl-fp::before{
  content:'';position:absolute;left:-7px;top:4px;bottom:4px;width:1px;background:#E4E4E7;
}
.cl-fp{position:relative}
.cl-vw[hidden]{display:none}
.cl-vw:hover{filter:brightness(.975)}
.cl-vw-b{display:inline-grid;place-items:center;flex:0 0 auto}
.cl-vw-b svg{display:block;width:13px;height:13px}
.cl-vw-t{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.45}
.cl-vw-c{color:#A1A1AA;flex:0 0 auto;width:11px;height:11px}

/* ── The view colours ──
   Taken in turn when a view is saved rather than picked in the dialog. One
   hue per view is what lets you find yours in a list of them; asking for it
   was the part that did not earn its place. */
/* Three values per hue: the ground, the stroke and the ink. Soft enough that
   a name still reads as a name, not as a status. */
.cl-vw[data-c="blue"]  {--vw-soft:#EFF6FF;--vw-line:#B2CCFF;--vw-ink:#1544A3}
.cl-vw[data-c="green"] {--vw-soft:#ECFDF3;--vw-line:#A6F4C5;--vw-ink:#05603A}
.cl-vw[data-c="orange"]{--vw-soft:#FFFAEB;--vw-line:#FEDF89;--vw-ink:#B54708}
.cl-vw[data-c="red"]   {--vw-soft:#FEF3F2;--vw-line:#FECDCA;--vw-ink:#B42318}
.cl-vw[data-c="purple"]{--vw-soft:#F4F3FF;--vw-line:#D9D6FE;--vw-ink:#5925DC}
.cl-vw[data-c="pink"]  {--vw-soft:#FDF2FA;--vw-line:#FCCEEE;--vw-ink:#C11574}
.cl-vw .cl-vw-b,.cl-vw .cl-vw-c{color:currentColor;opacity:.75}
.cl-fm-item.is-sv[data-c="blue"] .cl-fm-ic{color:#196AFF}
.cl-fm-item.is-sv[data-c="green"] .cl-fm-ic{color:#12B76A}
.cl-fm-item.is-sv[data-c="orange"] .cl-fm-ic{color:#F79009}
.cl-fm-item.is-sv[data-c="red"] .cl-fm-ic{color:#F04438}
.cl-fm-item.is-sv[data-c="purple"] .cl-fm-ic{color:#8B5CF6}
.cl-fm-item.is-sv[data-c="pink"] .cl-fm-ic{color:#EE46BC}
.cl-vw-dot{flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:#D0D5DD}
.cl-vw-i[data-c="blue"] .cl-vw-dot{background:#196AFF}
.cl-vw-i[data-c="green"] .cl-vw-dot{background:#12B76A}
.cl-vw-i[data-c="orange"] .cl-vw-dot{background:#F79009}
.cl-vw-i[data-c="red"] .cl-vw-dot{background:#F04438}
.cl-vw-i[data-c="purple"] .cl-vw-dot{background:#8B5CF6}
.cl-vw-i[data-c="pink"] .cl-vw-dot{background:#EE46BC}

.cl-vw-pop{
  position:fixed;z-index:9001;width:260px;
  background:#FFFFFF;border:1px solid #E4E4E7;border-radius:10px;
  box-shadow:0 16px 40px rgba(16,24,40,.16),0 4px 12px rgba(16,24,40,.06);
  font-family:'Inter',sans-serif;overflow:hidden;
}
.cl-vw-pop[hidden]{display:none}
.cl-vw-list{padding:6px;max-height:min(50vh,360px);overflow-y:auto}
.cl-vw-hd{padding:8px 8px 4px;font:600 11px/1.3 'Inter',sans-serif;color:#71717A;letter-spacing:.04em;text-transform:uppercase}
.cl-vw-i{
  width:100%;display:flex;align-items:center;gap:8px;
  padding:7px 8px;border:0;border-radius:7px;background:transparent;cursor:pointer;
  font:400 13px/1.4 'Inter',sans-serif;color:#101828;text-align:left;
}
.cl-vw-i:hover{background:#F4F4F5}
.cl-vw-i.is-cur{font-weight:500}
.cl-vw-k{flex:0 0 14px;width:14px;height:14px;display:inline-grid;place-items:center;color:var(--brand-blue,#004CE6)}
.cl-vw-k svg{width:12px;height:12px;display:block}
.cl-vw-n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cl-vw-x{
  flex:0 0 20px;width:20px;height:20px;display:inline-grid;place-items:center;
  border-radius:5px;color:#A1A1AA;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease;
}
.cl-vw-i:hover .cl-vw-x{opacity:1}
.cl-vw-x:hover{background:#F4F4F5;color:#3F3F46}
.cl-vw-x svg{width:13px;height:13px;display:block}
.cl-vw-foot{border-top:1px solid #F0F0F0;padding:6px}
.cl-vw-new{
  width:100%;display:flex;align-items:center;gap:8px;
  padding:7px 8px;border:0;border-radius:7px;background:transparent;cursor:pointer;
  font:500 13px/1.4 'Inter',sans-serif;color:#475467;text-align:left;
}
.cl-vw-new svg{width:14px;height:14px;flex:0 0 14px;display:block}
.cl-vw-new:hover{background:#F4F4F5;color:#101828}

/* theme-customiser.css paints a blanket dark border-color on every element,
   which outranks a single class — so each of these restates it. */
/* The same three values, restated dark — theme-customiser.css paints a
   blanket border-color on every element, which outranks a single class. */
body.theme-dark .cl-vw[data-c="blue"]  {--vw-soft:rgba(25,106,255,.16);--vw-line:rgba(25,106,255,.42);--vw-ink:#B2CCFF}
body.theme-dark .cl-vw[data-c="green"] {--vw-soft:rgba(18,183,106,.16);--vw-line:rgba(18,183,106,.42);--vw-ink:#6CE9A6}
body.theme-dark .cl-vw[data-c="orange"]{--vw-soft:rgba(247,144,9,.16);--vw-line:rgba(247,144,9,.42);--vw-ink:#FDB022}
body.theme-dark .cl-vw[data-c="red"]   {--vw-soft:rgba(240,68,56,.16);--vw-line:rgba(240,68,56,.42);--vw-ink:#FDA29B}
body.theme-dark .cl-vw[data-c="purple"]{--vw-soft:rgba(139,92,246,.16);--vw-line:rgba(139,92,246,.42);--vw-ink:#D9D6FE}
body.theme-dark .cl-vw[data-c="pink"]  {--vw-soft:rgba(238,70,188,.16);--vw-line:rgba(238,70,188,.42);--vw-ink:#FCCEEE}
body.theme-dark .cl-vw{border-color:var(--vw-line);color:var(--vw-ink)}
body.theme-dark .cl-vw:hover{filter:brightness(1.12)}
body.theme-dark .cl-vw + .cl-fp::before{background:#3A3E45}
body.theme-dark .cl-vw-pop{background:#1F2228;border-color:#2A2D33}
body.theme-dark .cl-vw-i{color:#E5E7EB}
body.theme-dark .cl-vw-i:hover,body.theme-dark .cl-vw-new:hover{background:rgba(255,255,255,.06)}
body.theme-dark .cl-vw-hd{color:#9CA3AF}
body.theme-dark .cl-vw-new{color:#9BA1AC}
body.theme-dark .cl-vw-x{color:#71717A}
body.theme-dark .cl-vw-x:hover{background:#3A3F47;color:#F4F4F5}
body.theme-dark .cl-vw-foot{border-top-color:#2A2D33}
/* AI filter subtle highlight */
.cl-fm-item.is-ai{background:transparent;gap:6px}
.cl-fm-item.is-ai .cl-fm-ic{color:#A855F7;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px}
.cl-fm-item.is-ai .cl-fm-ic svg{width:22px;height:22px}
.cl-fm-item.is-ai .cl-fm-lbl{display:inline-flex;align-items:center;line-height:1}
.cl-fm-item.is-ai{align-items:center}
.cl-fm-item.is-ai:hover{background:rgba(0,0,0,0.04)}
body.theme-dark .cl-fm-item.is-ai{background:transparent}
body.theme-dark .cl-fm-item.is-ai:hover{background:rgba(255,255,255,0.05)}
.cl-fm{position:fixed;z-index:9000;width:260px;background:#FFFFFF;border:1px solid #E4E4E7;border-radius:10px;box-shadow:0 16px 40px rgba(16,24,40,0.16),0 4px 12px rgba(16,24,40,0.06);padding:6px;display:none;font-family:'Inter',sans-serif}
.cl-fm.open{display:block}
.cl-fm-search{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid #F0F0F0;margin-bottom:4px}
.cl-fm-search input{border:0;outline:0;background:transparent;font:400 13px/1.3 'Inter',sans-serif;color:#1A1A1A;width:100%}
.cl-fm-search input::placeholder{color:#A1A1AA}
.cl-fm-sep{height:1px;background:#F0F0F0;margin:6px -6px}
.cl-fm-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:6px;cursor:pointer;font:500 13px/1.3 'Inter',sans-serif;color:#1A1A1A;position:relative}
.cl-fm-item:hover,.cl-fm-item.active{background:#F4F4F5}
.cl-fm-item .cl-fm-ic{width:16px;height:16px;display:inline-grid;place-items:center;color:#52525B;flex:0 0 16px}
.cl-fm-item .cl-fm-lbl{flex:1;min-width:0}
.cl-fm-item .cl-fm-chev{width:12px;height:12px;color:#A1A1AA;flex:0 0 12px}
.cl-fm-empty{padding:10px 12px;font:400 12px/1.3 'Inter',sans-serif;color:#71717A}

.cl-fm-sub{position:fixed;z-index:9001;width:248px;max-height:340px;overflow:auto;background:#FFFFFF;border:1px solid #E4E4E7;border-radius:10px;box-shadow:0 16px 40px rgba(16,24,40,0.16),0 4px 12px rgba(16,24,40,0.06);padding:6px;display:none;font-family:'Inter',sans-serif}
.cl-fm-sub.open{display:block}
.cl-fm-sub-search{display:flex;align-items:center;padding:8px 10px;border-bottom:1px solid #F0F0F0;margin:-6px -6px 4px}
.cl-fm-sub-search input{border:0;outline:0;background:transparent;font:400 13px/1.3 'Inter',sans-serif;color:#1A1A1A;width:100%}
.cl-fm-sub-search input::placeholder{color:#A1A1AA}
.cl-fm-opt{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:6px;cursor:pointer;font:500 13px/1.3 'Inter',sans-serif;color:#1A1A1A}
.cl-fm-opt:hover{background:#F4F4F5}
.cl-fm-opt-cb{width:14px;height:14px;border:1.5px solid #D4D4D8;border-radius:3px;flex:0 0 14px;display:inline-grid;place-items:center;color:transparent}
.cl-fm-opt.checked .cl-fm-opt-cb{background:var(--brand-blue,#004CE6);border-color:var(--brand-blue,#004CE6);color:#fff}
.cl-fm-opt-cb svg{width:10px;height:10px}
.cl-fm-opt-ic{width:16px;height:16px;display:inline-grid;place-items:center;color:#52525B;flex:0 0 16px}
.cl-fm-opt-lbl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cl-fm-opt-count{color:#A1A1AA;font-weight:400;font-size:12px}

/* Dark mode */
body.theme-dark .cl-fm,
body.theme-dark .cl-fm-sub{background:#23262C;border-color:#2F333A;box-shadow:0 16px 40px rgba(0,0,0,0.55),0 4px 12px rgba(0,0,0,0.3)}
body.theme-dark .cl-fm-search,
body.theme-dark .cl-fm-sub-search{border-bottom-color:#2A2D33}
body.theme-dark .cl-fm-search input,
body.theme-dark .cl-fm-sub-search input{color:#E5E7EB}
body.theme-dark .cl-fm-search input::placeholder,
body.theme-dark .cl-fm-sub-search input::placeholder{color:#71717A}
body.theme-dark .cl-fm-item,
body.theme-dark .cl-fm-opt{color:#E5E7EB}
body.theme-dark .cl-fm-item:hover,
body.theme-dark .cl-fm-item.active,
body.theme-dark .cl-fm-opt:hover{background:#2F333A}
body.theme-dark .cl-fm-item .cl-fm-ic,
body.theme-dark .cl-fm-opt-ic{color:#9CA3AF}
body.theme-dark .cl-fm-item .cl-fm-chev{color:#71717A}
body.theme-dark .cl-fm-sep{background:#2A2D33}
body.theme-dark .cl-fm-opt-cb{border-color:#4B5563;background:transparent;color:transparent}
body.theme-dark .cl-fm-opt-cb svg{display:none}
body.theme-dark .cl-fm-opt.checked .cl-fm-opt-cb{background:#196AFF !important;border-color:#196AFF !important;color:#FFFFFF !important}
body.theme-dark .cl-fm-opt.checked .cl-fm-opt-cb svg{display:block;color:#FFFFFF;stroke:#FFFFFF}

/* ===== Filter Pills Row ===== */
.cl-fp-row{display:none;align-items:flex-start;gap:12px;padding:11px 24px 12px;margin-bottom:0;border-top:1px solid #F0F0F0}
.cl-fp-row.has{display:flex;animation:clFpRowIn .42s cubic-bezier(.22,.7,.2,1)}
@keyframes clFpRowIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.cl-fp-left{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:1 1 auto;min-width:0}
.cl-fp-right{display:flex;align-items:center;gap:6px;flex:0 0 auto;margin-left:auto;padding-top:0}
body.theme-dark .cl-fp-row{border-top-color:#23262C;border-bottom-color:transparent}
.cl-fp{display:inline-flex;align-items:stretch;border:1px solid #EFEFF1;border-radius:7px;overflow:hidden;font:500 12px/1 'Inter',sans-serif;color:#18181B;background:#F9FAFB;height:28px;box-sizing:border-box;white-space:nowrap;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}
.cl-fp:hover{background:#F4F4F5;border-color:#E4E4E7;box-shadow:0 1px 2px rgba(16,24,40,0.04)}
.cl-fp-part{display:inline-flex;align-items:center;gap:4px;padding:0 8px;transition:background .12s ease}
.cl-fp-part + .cl-fp-part{border-left:1px solid #EFEFF1}
.cl-fp-part.cl-fp-clickable{cursor:pointer}
.cl-fp-part.cl-fp-clickable:hover{background:rgba(0,0,0,0.045)}
.cl-fp-part .cl-fp-ic{width:10px;height:10px;display:inline-grid;place-items:center;color:#7D879C;flex:0 0 10px}
.cl-fp-part[data-part="prop"]{gap:6px}
.cl-fp-part[data-part="prop"] .cl-fp-ic{width:14px;height:14px;flex:0 0 14px;color:#667085}
.cl-fp-part .cl-fp-ic svg{width:100%;height:100%;display:block}
.cl-fp-op{color:#71717A;font-weight:400}
.cl-fp-x{display:inline-flex;align-items:center;justify-content:center;width:26px;color:#A1A1AA;cursor:pointer;border:0;background:transparent;border-left:1px solid #EFEFF1;padding:0;transition:background .12s ease,color .12s ease}
.cl-fp-x:hover{background:rgba(0,0,0,0.05);color:#18181B}
.cl-fp-clear{display:inline-flex;align-items:center;gap:5px;font:500 12px/1 'Inter',sans-serif;color:#71717A;background:transparent;border:0;padding:0 10px;cursor:pointer;height:28px;border-radius:7px;transition:background .12s ease,color .12s ease}
.cl-fp-clear:hover{color:#18181B;background:#F4F4F5}
.cl-fp-add{display:inline-flex;align-items:center;justify-content:center;gap:0;font:500 12px/1 'Inter',sans-serif;color:#475467;background:#FFFFFF;border:1px solid #EAECF0;padding:0;width:28px;cursor:pointer;height:28px;box-sizing:border-box;border-radius:7px;transition:background .12s ease,color .12s ease,border-color .12s ease}
.cl-fp-add:hover{color:#101828;background:#F9FAFB;border-color:#D0D5DD}
.cl-fp-add svg{width:12px;height:12px}
.cl-fp-stack{display:inline-flex;align-items:center;gap:0}
.cl-fp-parallel{display:inline-flex;align-items:center;gap:0;padding-right:0}
.cl-fp-parallel .cl-fp-pic{width:10px;height:10px;display:inline-grid;place-items:center;color:#52525B;flex:0 0 10px;margin-right:-3px;border:1.5px solid #FAFAFB;border-radius:50%;background:#FAFAFB;box-sizing:content-box}
.cl-fp-parallel .cl-fp-pic:last-child{margin-right:0}
.cl-fp-parallel .cl-fp-pic svg{width:10px;height:10px;display:block}
.cl-fp:hover .cl-fp-parallel .cl-fp-pic{border-color:#F4F4F5;background:#F4F4F5}
body.theme-dark .cl-fp-parallel .cl-fp-pic{border-color:#2A2D33;background:#2A2D33}
body.theme-dark .cl-fp:hover .cl-fp-parallel .cl-fp-pic{border-color:#34373E;background:#34373E}
body.theme-dark .cl-fp-parallel .cl-fp-pic{color:#D4D4D8}
.cl-fp-more{display:none}
.cl-fp-stack .cl-fp-ic{margin-right:-4px;border:1.5px solid #FAFAFB;border-radius:50%;background:#FAFAFB;width:10px;height:10px;box-sizing:content-box}
.cl-fp:hover .cl-fp-stack .cl-fp-ic{border-color:#F4F4F5;background:#F4F4F5}
body.theme-dark .cl-fp-stack .cl-fp-ic{border-color:#2A2D33;background:#2A2D33}
body.theme-dark .cl-fp:hover .cl-fp-stack .cl-fp-ic{border-color:#34373E;background:#34373E}

.cl-fp-save{display:inline-flex;align-items:center;gap:5px;font:600 12px/1 'Inter',sans-serif;color:var(--brand-blue);background:transparent;border:0;padding:0 10px;cursor:pointer;height:28px;border-radius:7px;white-space:nowrap}
.cl-fp-save:hover{color:var(--brand-blue-strong);background:transparent}
body.theme-dark .cl-fp-save{color:var(--brand-blue);background:transparent}
body.theme-dark .cl-fp-save:hover{color:var(--brand-blue-strong);background:transparent}
/* With a view applied and changed, Save has two answers — so it grows a
   chevron and nothing else. It is the same blue text button either way:
   the number of answers behind it is not a reason to change what it is. */
.cl-fp-save.has-menu{padding:0 8px 0 10px}
.cl-fp-save.has-menu svg{width:11px;height:11px;color:currentColor;opacity:.8}
.cl-sv-pop{width:212px}
.cl-sv-pop .cl-vw-k{color:#71717A}
.cl-sv-pop .cl-vw-k svg{width:14px;height:14px}
body.theme-dark .cl-sv-pop .cl-vw-k{color:#9BA1AC}
@keyframes clFpIn{from{opacity:0;transform:translateX(-6px) scale(.94)}to{opacity:1;transform:none}}
@keyframes clFpOut{from{opacity:1;transform:none;max-width:300px;margin-right:6px}to{opacity:0;transform:translateX(-4px) scale(.94);max-width:0;margin-right:0;padding:0;border-width:0}}
.cl-fp.entering{animation:clFpIn .22s cubic-bezier(.2,.7,.2,1)}
.cl-fp.leaving{animation:clFpOut .22s ease-in forwards;overflow:hidden}

body.theme-dark .cl-fp{background:#2A2D33;border-color:#34373E;color:#E5E7EB}
body.theme-dark .cl-fp:hover{background:#34373E;border-color:#3F434B;box-shadow:0 1px 2px rgba(0,0,0,0.3)}
body.theme-dark .cl-fp-part + .cl-fp-part{border-left-color:#34373E}
body.theme-dark .cl-fp-part.cl-fp-clickable:hover{background:rgba(255,255,255,0.04)}
body.theme-dark .cl-fp-op{color:#9CA3AF}
body.theme-dark .cl-fp-part .cl-fp-ic{color:#98A2B3}
body.theme-dark .cl-fp-part[data-part="prop"] .cl-fp-ic{color:#A8B0BE}
body.theme-dark .cl-fp-x{color:#9CA3AF;border-left-color:#34373E}
body.theme-dark .cl-fp-x:hover{background:rgba(255,255,255,0.06);color:#F4F4F5}
body.theme-dark .cl-fp-clear{color:#9CA3AF}
body.theme-dark .cl-fp-clear:hover{color:#E5E7EB;background:#2A2D33}
body.theme-dark .cl-fp-add{color:#9CA3AF;background:transparent;border-color:#3A3F47}
body.theme-dark .cl-fp-add:hover{color:#E5E7EB;background:#2A2D33;border-color:#52525B}

/* Nested dropdown — flush against parent */
.cl-fm-sub{margin-left:-1px}
/* Operator part clickable */
.cl-fp-part.cl-fp-op{cursor:pointer}
.cl-fp-part.cl-fp-op:hover{background:rgba(0,0,0,0.045)}
body.theme-dark .cl-fp-part.cl-fp-op:hover{background:rgba(255,255,255,0.04)}
/* Op submenu (compact) */
.cl-fm-op-menu{position:fixed;z-index:9002;min-width:140px;background:#FFFFFF;border:1px solid #E4E4E7;border-radius:10px;box-shadow:0 16px 40px rgba(16,24,40,0.16),0 4px 12px rgba(16,24,40,0.06);padding:6px;display:none;font:500 13px/1.4 'Inter',sans-serif;color:#18181B}
.cl-fm-op-menu.open{display:block}
.cl-fm-op-menu .cl-fm-op-item{padding:9px 12px;border-radius:7px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px}
.cl-fm-op-menu .cl-fm-op-item:hover{background:#F4F4F5}
.cl-fm-op-menu .cl-fm-op-item.checked{color:var(--brand-blue);font-weight:600}
body.theme-dark .cl-fm-op-menu{background:#23262C;border-color:#2F333A;color:#E5E7EB;box-shadow:0 16px 40px rgba(0,0,0,0.55),0 4px 12px rgba(0,0,0,0.3)}
body.theme-dark .cl-fm-op-menu .cl-fm-op-item:hover{background:#2A2D33}
/* Table loading flash on filter change */
#cvClTbody.cl-filter-flash{opacity:.55;transition:opacity .25s ease}
/* ===== AI Filter Panel ===== */
.cl-aip{position:fixed;z-index:9100;width:280px;background:#FFFFFF;border:1px solid #EAECF0;border-radius:10px;box-shadow:0 12px 32px rgba(16,24,40,0.12),0 3px 10px rgba(16,24,40,0.05);padding:8px 10px 10px;opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:opacity .18s ease,transform .22s cubic-bezier(.16,1,.3,1)}
.cl-aip.open{opacity:1;transform:none;pointer-events:auto}
.cl-aip-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.cl-aip-title{display:inline-flex;align-items:center;gap:6px;font:600 12px/1.2 'Inter',sans-serif;color:#101828}
.cl-aip-spark{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px}
.cl-aip-spark svg{width:16px;height:16px}
.cl-aip-back{appearance:none;background:transparent;border:0;padding:2px;margin-right:2px;border-radius:6px;color:#667085;cursor:pointer;display:inline-grid;place-items:center;transition:background .15s ease,color .15s ease}
.cl-aip-back:hover{background:#F2F4F7;color:#101828}
body.theme-dark .cl-aip-back{color:#9CA3AF}
body.theme-dark .cl-aip-back:hover{background:#2A2D33;color:#F4F4F5}
.cl-aip-close{appearance:none;background:transparent;border:0;padding:4px;border-radius:6px;color:#667085;cursor:pointer;display:inline-grid;place-items:center;transition:background .15s ease,color .15s ease}
.cl-aip-close:hover{background:#F2F4F7;color:#101828}
.cl-aip-input{width:100%;min-height:54px;resize:none;padding:8px 10px;border:1px solid #E4E7EC;border-radius:8px;font:400 12.5px/1.4 'Inter',sans-serif;color:#101828;background:#FFFFFF;outline:none;transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}
.cl-aip-input::placeholder{color:#98A2B3}
.cl-aip-input:focus{border-color:#7C5CFF;box-shadow:0 0 0 3px rgba(124,92,255,.16)}
.cl-aip-sug-head{margin:10px 0 4px;font:500 10px/1 'Inter',sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#98A2B3;display:flex;align-items:center;gap:6px}
.cl-aip-sug{display:flex;flex-direction:column;gap:4px}
.cl-aip-chip{appearance:none;background:transparent;border:0;text-align:left;display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:7px;font:500 12px/1.3 'Inter',sans-serif;color:#475467;cursor:pointer;transition:background .15s ease,color .15s ease;opacity:0;animation:cl-aip-chip-in .35s cubic-bezier(.16,1,.3,1) forwards}
@keyframes cl-aip-chip-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.cl-aip-chip:hover{background:#FAF5FF;color:#5B2DC2}
.cl-aip-chip-spark{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;flex:0 0 13px}
.cl-aip-chip-spark svg{width:13px;height:13px}
.cl-aip-foot{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:10px}
.cl-aip-cancel{appearance:none;background:transparent;border:0;padding:0 10px;height:28px;border-radius:7px;font:500 12px/1 'Inter',sans-serif;color:#475467;cursor:pointer;transition:background .15s ease,color .15s ease}
.cl-aip-cancel:hover{background:#F2F4F7;color:#101828}
.cl-aip-go{appearance:none;border:0;height:28px;padding:0 12px;border-radius:7px;background:linear-gradient(135deg,#7F56D9,#6941C6);color:#FFFFFF;font:600 12px/1 'Inter',sans-serif;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:filter .15s ease,transform .12s ease,opacity .15s ease;box-shadow:0 1px 2px rgba(105,65,198,.18)}
.cl-aip-go:hover{filter:brightness(1.08)}
.cl-aip-go:active{transform:translateY(.5px)}
.cl-aip-go-spark{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex:0 0 14px;color:#fff}
.cl-aip-go-spark svg{width:14px;height:14px}
.cl-aip-go-spark svg path{fill:#fff !important}
.cl-aip-go-spin{display:none;width:13px;height:13px;border:1.6px solid rgba(255,255,255,.4);border-top-color:#FFFFFF;border-radius:50%;animation:cl-aip-spin .8s linear infinite}
@keyframes cl-aip-spin{to{transform:rotate(360deg)}}
/* Loading state */
.cl-aip-loading{display:none;flex-direction:column;gap:8px;padding:6px 0 2px}
.cl-aip.is-loading .cl-aip-input,.cl-aip.is-loading .cl-aip-sug,.cl-aip.is-loading .cl-aip-sug-head{display:none}
.cl-aip.is-loading .cl-aip-loading{display:flex}
.cl-aip.is-loading .cl-aip-go-spin{display:inline-block}
.cl-aip.is-loading .cl-aip-go-spark,.cl-aip.is-loading .cl-aip-go-label{display:none}
.cl-aip.is-loading .cl-aip-go{pointer-events:none;background:linear-gradient(135deg,#9E77ED,#7F56D9)}
.cl-aip-loading-head{display:inline-flex;align-items:center;gap:8px;color:#6941C6;font:500 12.5px/1.2 'Inter',sans-serif}
.cl-aip-shimmer{height:10px;border-radius:6px;background:linear-gradient(90deg,#F4EBFF 0%,#E9D7FE 30%,#D6BBFB 50%,#E9D7FE 70%,#F4EBFF 100%);background-size:220% 100%;animation:cl-aip-shimmer 1.4s linear infinite}
@keyframes cl-aip-shimmer{0%{background-position:120% 0}100%{background-position:-120% 0}}
/* Dark mode */
body.theme-dark .cl-aip{background:#23262C;border-color:#2F333A;box-shadow:0 24px 60px rgba(0,0,0,.55),0 6px 16px rgba(0,0,0,.3)}
body.theme-dark .cl-aip-title{color:#F4F4F5}
body.theme-dark .cl-aip-close{color:#9CA3AF}
body.theme-dark .cl-aip-close:hover{background:#2A2D33;color:#F4F4F5}
body.theme-dark .cl-aip-input{background:#1B1D22;border-color:#34373E;color:#F4F4F5}
body.theme-dark .cl-aip-input::placeholder{color:#6B7280}
body.theme-dark .cl-aip-sug-head{color:#6B7280}
body.theme-dark .cl-aip-chip{background:transparent;color:#D4D4D8}
body.theme-dark .cl-aip-chip:hover{background:#2A2031;color:#E9D7FE}
body.theme-dark .cl-aip-cancel{color:#9CA3AF}
body.theme-dark .cl-aip-cancel:hover{background:#2A2D33;color:#F4F4F5}

/* Dropdown enter animation */
.cl-fm,.cl-fm-sub{transform-origin:top left;transition:opacity .12s ease, transform .12s ease}
.cl-fm:not(.open),.cl-fm-sub:not(.open){opacity:0;transform:translateY(-4px) scale(.98);pointer-events:none}
.cl-fm.open,.cl-fm-sub.open{opacity:1;transform:none}
