@import url('https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,400;14..32,500;14..32,600;14..32,700;14..32,800&display=swap');

:root{
  --adm-font-sans:"Inter","Plus Jakarta Sans","Segoe UI",system-ui,sans-serif;
  --primary:#2563eb;
  --primary-rgb:37,99,235;
  --premium:#1e3a8a;
  --premium-rgb:30,58,138;
  --support:#dbeafe;
  --support-rgb:219,234,254;
  --aqua:#10b981;
  --aqua-rgb:16,185,129;
  --offwhite:#f8fafc;
  --warm:#fef9ee;
  --bg:#f1f5f9;
  --text:#0f172a;
  --muted:#64748b;
  --border:#e2e8f0;
  --border-soft:#f1f5f9;
  --shadow:0 1px 3px rgba(15,23,42,.06),0 4px 16px rgba(15,23,42,.06);
  --radius:10px;
  --body-bg:var(--bg);
  --surface:#ffffff;
  --surface-strong:#ffffff;
  --surface-side:#0d1b2e;
  --field-bg:#f8fafc;
  --field-bg-2:#eef2f7;
  --hover:#f1f5f9;
  --nav-accent:#60a5fa;
  --nav-accent-soft:rgba(96,165,250,.14);
  --nav-accent-border:rgba(96,165,250,.28);
  --nav-ink:#94a3b8;
  --nav-title:#e2e8f0;
  --nav-surface:rgba(255,255,255,.04);
  --nav-surface-strong:rgba(255,255,255,.09);
  --nav-group-border:rgba(255,255,255,.09);
  --nav-shadow:0 4px 24px rgba(0,0,0,.22);
}

html[data-theme="dark"]{
  --bg:#0f172a;
  --text:#e2e8f0;
  --muted:#94a3b8;
  --border:#1e293b;
  --border-soft:#1e293b;
  --shadow:0 1px 3px rgba(0,0,0,.22),0 4px 16px rgba(0,0,0,.18);
  --body-bg:var(--bg);
  --surface:#1e293b;
  --surface-strong:#263354;
  --surface-side:#020c1b;
  --field-bg:rgba(255,255,255,.04);
  --field-bg-2:rgba(255,255,255,.07);
  --hover:rgba(255,255,255,.05);
  --nav-accent:#60a5fa;
  --nav-accent-soft:rgba(96,165,250,.14);
  --nav-accent-border:rgba(96,165,250,.25);
  --nav-ink:#94a3b8;
  --nav-title:#f1f5f9;
  --nav-surface:rgba(255,255,255,.04);
  --nav-surface-strong:rgba(255,255,255,.08);
  --nav-group-border:rgba(255,255,255,.08);
  --nav-shadow:0 4px 24px rgba(0,0,0,.32);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:var(--adm-font-sans);
  font-size:13.5px;
  line-height:1.45;
  background:var(--body-bg);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.adm input,.adm select,.adm textarea,.adm button{font-family:var(--adm-font-sans)}
a{color:inherit;text-decoration:none}
.adm-muted{color:var(--muted);font-size:12px}
.adm-right{text-align:right}

/* ============================================================ LOGIN */
.adm-login{
  display:flex;align-items:center;justify-content:center;
  min-height:100vh;padding:18px;
  background:linear-gradient(135deg,#0d1b2e 0%,#1e3a8a 60%,#0d1b2e 100%);
}
.adm-login-card{
  width:min(420px,100%);
  background:#ffffff;
  border:1px solid #e2e8f0;
  border-radius:16px;
  box-shadow:0 24px 64px rgba(0,0,0,.22);
  padding:32px 28px;
}
.adm-login-logo{height:32px;margin-bottom:16px}
.adm-login h1{margin:0 0 6px;font-size:22px;font-weight:700;letter-spacing:-.025em;color:#0f172a}
.adm-login label{display:block;margin:14px 0 6px;font-size:12px;font-weight:600;color:#64748b}
.adm-login input,.adm-login select{
  width:100%;border-radius:8px;border:1.5px solid #e2e8f0;
  background:#f8fafc;color:#0f172a;padding:11px 12px;outline:none;font-size:14px;
  transition:border-color .15s,box-shadow .15s;
}
.adm-login input:focus,.adm-login select:focus{
  border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12);background:#fff;
}
.adm-login button{
  width:100%;margin-top:18px;border:0;
  background:linear-gradient(135deg,#2563eb,#1d4ed8);
  color:#fff;padding:12px;border-radius:8px;font-weight:700;font-size:14px;
  cursor:pointer;letter-spacing:.01em;
  box-shadow:0 4px 14px rgba(37,99,235,.32);
  transition:filter .15s,transform .1s;
}
.adm-login button:hover{filter:brightness(.94)}
.adm-hint{margin-top:16px;border-top:1px solid #e2e8f0;padding-top:14px;font-size:12px;color:#64748b}

/* ============================================================ LAYOUT */
.adm,body[data-route]{min-height:100vh}
.adm-layout{
  display:block;
  min-height:100vh;width:100%;
}
.adm-side{
  position:fixed;left:0;top:0;height:100vh;width:264px;
  background:var(--surface-side);
  border-right:1px solid rgba(255,255,255,.055);
  padding:16px 12px 12px;display:flex;flex-direction:column;z-index:100;
  overflow:hidden;
}
.adm-brand{
  display:flex;align-items:center;gap:10px;
  padding:6px 8px 16px;
  border-bottom:1px solid rgba(255,255,255,.08);
  margin-bottom:12px;
}
.adm-brand img{height:32px;width:auto}

/* NAV */
.adm-nav{
  display:flex;flex-direction:column;gap:2px;
  flex:1;min-height:0;overflow-y:auto;
  padding-right:0;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.12) transparent;
}
.adm-nav::-webkit-scrollbar{width:3px}
.adm-nav::-webkit-scrollbar-track{background:transparent}
.adm-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.13);border-radius:999px}
.adm-nav::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.22)}
.adm-side{
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.12) transparent;
}
.adm-side::-webkit-scrollbar{width:3px}
.adm-side::-webkit-scrollbar-track{background:transparent}
.adm-side::-webkit-scrollbar-thumb{background:rgba(255,255,255,.13);border-radius:999px}

.adm-link{
  display:flex;width:100%;align-items:center;justify-content:flex-start;gap:9px;
  border:1px solid transparent;background:transparent;color:var(--nav-ink);
  padding:7px 9px;border-radius:8px;cursor:pointer;text-align:left;
  font-size:12.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  min-height:34px;line-height:1.2;
  transition:background-color .14s,color .14s,border-color .14s;
}
/* Sub-itens dentro de grupos: indentação + marcador de ponto */
.adm-group-links .adm-link{
  padding:5px 8px 5px 14px;font-size:12px;min-height:30px;border-radius:7px;
}
.adm-group-links .adm-link::before{
  content:"";width:4px;height:4px;border-radius:999px;
  background:rgba(148,163,184,.32);flex:0 0 auto;margin-left:6px;
}
.adm-group-links .adm-link.is-active::before{background:var(--nav-accent)}
.adm-link.adm-link-sub{
  padding:6px 8px 6px 22px;font-size:12px;font-weight:500;
  min-height:30px;border-radius:7px;color:var(--nav-ink);
}
.adm-link.adm-link-sub::before{
  content:"";width:5px;height:5px;border-radius:999px;
  background:rgba(148,163,184,.40);flex:0 0 auto;
}
.adm-side .adm-link .adm-badge{margin-left:auto;font-size:10px;padding:2px 7px;border-radius:999px}
.adm-link:hover{background:rgba(255,255,255,.07);color:var(--nav-title)}
.adm-link.is-active{
  background:var(--nav-accent-soft);border-color:var(--nav-accent-border);
  color:var(--nav-accent);font-weight:600;
}
.adm-link.adm-link-sub.is-active{
  background:var(--nav-accent-soft);border-color:var(--nav-accent-border);color:var(--nav-accent);
}
.adm-link.adm-link-sub.is-active::before{background:var(--nav-accent)}
.adm-link.is-parent-active{background:rgba(255,255,255,.05);color:var(--nav-title);font-weight:600}
.adm-link-home{
  margin-bottom:10px;padding:9px 10px;font-size:13px;font-weight:700;border-radius:8px;
  background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.10);color:var(--nav-title);
}
/* Grupos: mais respiro entre seções */
.adm-group{margin-top:14px;padding-top:10px;border-top:1px solid var(--nav-group-border);position:relative}
.adm-group-toggle{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:3px 8px 7px;border:0;background:transparent;cursor:pointer;text-align:left;
  border-radius:6px;transition:background .12s;
}
.adm-group-toggle:hover{background:rgba(255,255,255,.05)}
.adm-group-toggle:hover .adm-group-title{color:#94a3b8}
.adm-group-toggle:hover .adm-group-caret{border-color:rgba(148,163,184,.70)}
.adm-group-title{
  font-size:9.5px;color:#64748b;letter-spacing:.10em;
  text-transform:uppercase;font-weight:700;flex:1;
  transition:color .14s;
}
.adm-group-caret{
  width:6px;height:6px;
  border-right:1.5px solid rgba(100,116,139,.45);
  border-bottom:1.5px solid rgba(100,116,139,.45);
  transform:rotate(-45deg);
  transition:transform .18s,border-color .14s;flex:0 0 auto;margin-right:2px;
}
.adm-group-links{
  display:flex;flex-direction:column;gap:1px;padding:0 0 4px;
  max-height:0;overflow:hidden;opacity:0;
  transition:max-height .24s ease,opacity .18s ease;
}
/* ── Submenu: abre apenas no clique (is-open via JS) ── */
.adm-group.is-open .adm-group-links{max-height:600px;opacity:1;transition-delay:0s}
.adm-group.is-open .adm-group-caret{transform:rotate(45deg);border-color:rgba(148,163,184,.70)}
.adm-group.is-open .adm-group-title,.adm-group.is-active .adm-group-title{color:#94a3b8}
/* Mobile: mesma lógica, caret padrão para baixo */
@media(max-width:820px){
  .adm-group-caret{transform:rotate(45deg)}
  .adm-group.is-open .adm-group-caret{transform:rotate(225deg);margin-top:4px}
}

/* ── Ícones de navegação ── */
.adm-nav-icon{
  width:16px;height:16px;flex-shrink:0;
  stroke:currentColor;fill:none;
  stroke-width:2;stroke-linecap:round;stroke-linejoin:round;
  opacity:.72;transition:opacity .14s;
}
.adm-link:hover .adm-nav-icon,
.adm-link.is-active .adm-nav-icon,
.adm-group-toggle:hover .adm-nav-icon,
.adm-group:hover .adm-group-toggle .adm-nav-icon{opacity:1}
.adm-nav-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ── Botão de colapso ── */
.adm-collapse-btn{
  position:fixed;top:14px;left:228px;z-index:200;
  width:26px;height:26px;border-radius:6px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  color:#94a3b8;
  display:none; /* mostrado apenas no desktop via media query abaixo */
  align-items:center;justify-content:center;
  cursor:pointer;padding:0;
  transition:background .14s,color .14s,border-color .14s,left .24s cubic-bezier(.4,0,.2,1);
}
.adm-collapse-btn svg{transition:transform .22s ease}
.adm-collapse-btn:hover{background:rgba(255,255,255,.18);color:#e2e8f0;border-color:rgba(255,255,255,.30)}

/* ── Sidebar compacto (desktop ≥821px) ── */
@media(min-width:821px){
  .adm-collapse-btn{display:flex}
  .adm-side{transition:width .24s cubic-bezier(.4,0,.2,1)}
  .adm-main{transition:margin-left .24s cubic-bezier(.4,0,.2,1)}
  .adm-side.is-compact{width:58px}
  .adm-main.is-compact{margin-left:58px}

  .adm-side.is-compact{padding:16px 8px 12px}
  .adm-layout.is-compact .adm-collapse-btn{left:16px}
  .adm-side.is-compact .adm-brand{
    padding:44px 0 16px;justify-content:center;overflow:hidden;
  }
  .adm-side.is-compact .adm-brand img{
    max-width:none;width:30px;height:30px;object-fit:contain;
  }
  .adm-side.is-compact .adm-group-title,
  .adm-side.is-compact .adm-group-caret,
  .adm-side.is-compact .adm-nav-label,
  .adm-side.is-compact .adm-weemobi-footer{display:none}
  .adm-side.is-compact .adm-link{padding:8px;justify-content:center;min-height:38px}
  .adm-side.is-compact .adm-link-home{padding:9px;margin-bottom:4px}
  .adm-side.is-compact .adm-group-toggle{padding:8px;justify-content:center;min-height:38px}
  /* No compact mode: inline submenus escondidos — flyout JS cuida */
  .adm-side.is-compact .adm-group-links,
  .adm-side.is-compact .adm-group.is-open .adm-group-links{
    max-height:0!important;opacity:0!important;
    pointer-events:none;transition-delay:0s!important;
  }

  /* ── Flyout panel (modo compacto) — flat e próximo ── */
  .adm-nav-flyout{
    position:fixed;z-index:600;
    background:var(--surface-side);
    border:1px solid rgba(255,255,255,.10);
    border-radius:8px;
    box-shadow:0 4px 24px rgba(0,0,0,.45);
    padding:4px;min-width:180px;
    opacity:0;pointer-events:none;
    transform:translateX(-6px);
    transition:opacity .14s ease,transform .14s ease;
    margin-left:2px;
  }
  .adm-nav-flyout.is-visible{opacity:1;pointer-events:auto;transform:translateX(0)}
  .adm-nav-flyout-title{
    font-size:10px;font-weight:700;letter-spacing:.1em;
    text-transform:uppercase;color:rgba(148,163,184,.45);
    padding:5px 9px 5px;
  }
  .adm-nav-flyout .adm-link{
    font-size:12.5px;padding:6px 10px;border-radius:6px;
    color:var(--nav-ink);display:block;white-space:nowrap;
  }
  .adm-nav-flyout .adm-link:hover{background:rgba(255,255,255,.07);color:var(--nav-title)}
  .adm-nav-flyout .adm-link.is-active{
    background:var(--nav-accent-soft);border:1px solid var(--nav-accent-border);
    color:var(--nav-accent);font-weight:600;
  }

  /* ── Tooltip para links individuais (Dashboard, Sair) ── */
  .adm-nav-tooltip{
    position:fixed;z-index:600;
    background:var(--surface-side);color:#e2e8f0;
    border:1px solid rgba(255,255,255,.10);
    border-radius:6px;padding:4px 10px;
    font-size:12.5px;font-weight:500;
    box-shadow:0 4px 16px rgba(0,0,0,.4);
    opacity:0;pointer-events:none;
    transform:translateX(-4px);
    transition:opacity .12s ease,transform .12s ease;
    white-space:nowrap;
    margin-left:2px;
  }
  .adm-nav-tooltip.is-visible{opacity:1;transform:translateX(0)}
}

.adm-spacer{flex:1}
.adm-logout{
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);color:var(--nav-ink);
  margin-top:8px;
  transition:background .14s,border-color .14s,color .14s;
}
.adm-logout:hover{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.22);color:#fca5a5}

/* ============================================================ MAIN */
.adm-main{padding:10px 16px 28px;min-width:0;position:relative;z-index:1;margin-left:264px}
.adm-top{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--surface);border:1px solid var(--border);
  border-radius:10px;padding:10px 14px;
  box-shadow:0 1px 2px rgba(15,23,42,.04),0 4px 12px rgba(15,23,42,.04);
}
.adm-top-right{display:flex;align-items:center;gap:8px}
.adm-icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;display:block}
.adm-icon-fallback{display:inline-block;font-size:16px;line-height:1}
html.wh-adm-js .adm-icon-fallback{display:none}
html:not(.wh-adm-js) .adm-icon{display:none}
.adm-page-title{font-weight:700;letter-spacing:-.02em;font-size:14px}
.adm-visit{
  border:1.5px solid var(--border);background:var(--field-bg);
  padding:7px 11px;border-radius:8px;color:var(--text);font-weight:600;font-size:12px;
  transition:background .14s,border-color .14s;
}
.adm-visit:hover{background:var(--field-bg-2);border-color:#cbd5e1}

.adm-content{margin-top:10px;display:flex;flex-direction:column;gap:12px}
.adm-content>*{margin-top:0!important}
.adm-content>.adm-card{margin:0!important}

/* ============================================================ CARDS */
.adm-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:10px;padding:14px 16px;box-shadow:var(--shadow);
}
.adm-card-title{font-weight:700;letter-spacing:-.015em;margin-bottom:6px;font-size:13.5px}
.adm-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.adm-toolbar{display:flex;gap:8px;align-items:center;margin-top:10px}
.adm-toolbar input{
  flex:1;border-radius:8px;border:1.5px solid var(--border);
  background:var(--surface);color:var(--text);
  padding:8px 11px;outline:none;font-size:12.5px;
  transition:border-color .14s,box-shadow .14s;
}
.adm-toolbar input:focus{
  border-color:rgba(var(--primary-rgb),.45);
  box-shadow:0 0 0 3px rgba(var(--primary-rgb),.10);
  background:var(--surface);
}
.adm-actions{
  display:flex;gap:8px;flex-wrap:nowrap;
  overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;
  white-space:nowrap;margin-top:10px;
}
.adm-card-head .adm-actions{margin-top:0}
.adm-actions>*{flex:0 0 auto}

/* ============================================================ BUTTONS */
.adm-btn{
  border:0;background:var(--primary);color:#fff;
  padding:8px 14px;border-radius:8px;font-weight:600;cursor:pointer;font-size:12.5px;
  transition:filter .14s,transform .1s;letter-spacing:.01em;
}
.adm-btn:hover{filter:brightness(.92)}
.adm-btn:active{transform:translateY(1px)}
.adm-btn-ghost{
  background:var(--surface);border:1.5px solid var(--border);color:var(--text);
  transition:background .14s,border-color .14s;
}
.adm-btn-ghost:hover{background:var(--field-bg-2);border-color:#cbd5e1}

.adm-mini{
  border:1.5px solid var(--border);background:var(--surface);
  color:var(--text);padding:5px 9px;border-radius:7px;
  cursor:pointer;font-size:11.5px;font-weight:600;
  transition:background .14s,border-color .14s;
}
.adm-mini:hover{background:var(--field-bg-2);border-color:#cbd5e1}
.adm-table td .adm-mini+.adm-mini{margin-left:5px}
.adm-mini-danger{
  border-color:rgba(239,68,68,.30);color:rgba(220,38,38,.88);background:rgba(239,68,68,.04);
}
.adm-mini-danger:hover{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.50)}
html[data-theme="dark"] .adm-mini-danger{color:#fca5a5;background:transparent}

/* ============================================================ TABLES */
.adm-table-wrap{overflow:auto;margin-top:10px}
.adm-table{width:100%;border-collapse:separate;border-spacing:0 5px}
.adm-table th{
  text-align:left;font-size:11px;color:var(--muted);font-weight:700;
  padding:0 10px 6px;letter-spacing:.04em;text-transform:uppercase;
}
.adm-table td{
  background:var(--field-bg);
  border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  padding:10px;font-size:13px;
}
.adm-table tr td:first-child{
  border-left:1px solid var(--border);
  border-top-left-radius:8px;border-bottom-left-radius:8px;
}
.adm-table tr td:last-child{
  border-right:1px solid var(--border);
  border-top-right-radius:8px;border-bottom-right-radius:8px;
}
.adm-table tr.adm-row-click td{cursor:pointer}
.adm-table tr.adm-row-click:hover td{background:var(--hover);border-color:#cbd5e1}
.adm-table tr.is-muted td{opacity:.50}
.adm-table tr.is-overdue td{background:rgba(239,68,68,.04)}
.adm-table tr.is-overdue td:first-child{box-shadow:inset 3px 0 0 rgba(239,68,68,.40)}
html[data-theme="dark"] .adm-table tr.is-overdue td{background:rgba(239,68,68,.08)}
html[data-theme="dark"] .adm-table tr.is-overdue td:first-child{box-shadow:inset 3px 0 0 rgba(239,68,68,.45)}

/* ============================================================ GRIDS */
.adm-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.adm-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}

/* ============================================================ BADGES */
.adm-badge{
  display:inline-flex;align-items:center;gap:5px;
  font-size:11px;font-weight:600;
  padding:3px 8px;border-radius:999px;
  border:1px solid var(--border);background:var(--field-bg);color:var(--muted);
}
.adm-badge.hot{border-color:rgba(239,68,68,.28);background:rgba(239,68,68,.07);color:rgba(185,28,28,.90)}
.adm-badge.warn{border-color:rgba(245,158,11,.28);background:rgba(245,158,11,.08);color:rgba(146,64,14,.90)}
.adm-badge.ok{border-color:rgba(16,185,129,.28);background:rgba(16,185,129,.07);color:rgba(4,120,87,.90)}
html[data-theme="dark"] .adm-badge.hot{color:#fca5a5}
html[data-theme="dark"] .adm-badge.warn{color:#fcd34d}
html[data-theme="dark"] .adm-badge.ok{color:#6ee7b7}

/* ============================================================ LIST / ITEMS */
.adm-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.adm-item{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:10px 12px;border-radius:9px;
  border:1px solid var(--border);background:var(--surface);
  transition:border-color .14s,box-shadow .14s;
}
.adm-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px rgba(15,23,42,.05)}
.adm-item-title{font-weight:700;font-size:13px}
.adm-item-sub{font-size:12px;color:var(--muted);margin-top:3px}
.adm-item-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.adm-card-kpi{font-size:26px;font-weight:800;letter-spacing:-.03em;margin-bottom:6px}
.adm-card .adm-card-title{margin-bottom:6px}

/* ============================================================ META KPI */
.meta-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.meta-kpi-card{padding:14px 16px;min-height:88px;display:flex;flex-direction:column;justify-content:space-between}
.meta-kpi-label{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.meta-kpi-value{font-size:30px;font-weight:800;letter-spacing:-.04em;line-height:1}
.meta-integration-list,.meta-event-list,.meta-failure-list{display:flex;flex-direction:column;gap:10px}
.meta-integration-card,.meta-event-card,.meta-failure-card{
  border:1px solid var(--border);background:var(--field-bg);border-radius:10px;padding:12px 14px;
}
.meta-integration-card{background:var(--surface)}
.meta-integration-head,.meta-event-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.meta-integration-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.meta-integration-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.meta-integration-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}
.meta-integration-field{
  display:flex;flex-direction:column;gap:4px;padding:10px 12px;
  border:1px solid var(--border);background:var(--field-bg);border-radius:8px;min-width:0;
}
.meta-integration-label{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.meta-error-box{
  margin-top:12px;border:1px solid rgba(239,68,68,.18);
  background:rgba(239,68,68,.04);border-radius:8px;padding:0 12px 12px;
}
.meta-error-box summary{cursor:pointer;list-style:none;font-size:12px;font-weight:700;color:var(--text);padding:12px 0 0}
.meta-error-box summary::-webkit-details-marker{display:none}
.meta-error-text{margin-top:10px;font-size:12px;color:var(--muted);line-height:1.5;word-break:break-word}
.meta-event-card,.meta-failure-card{padding:12px}
.meta-event-meta{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px 14px;font-size:12px;color:var(--muted)}

/* ============================================================ FORMS */
.adm-form label{display:block;margin:10px 0 5px;font-size:11.5px;color:var(--muted);font-weight:600;letter-spacing:.01em}
.adm-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.adm-label-row .adm-mini{margin:0;padding:3px 9px;border-radius:999px;font-size:11px;line-height:1}
.adm-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.adm-form-grid.is-filter{grid-template-columns:repeat(8,minmax(90px,1fr));align-items:end;gap:8px}
.adm-form-grid.is-filter label{margin:0 0 5px}
.adm-form-grid.is-filter input,.adm-form-grid.is-filter select{padding:7px 9px;border-radius:7px}
.adm-form-grid.is-filter.is-compact{gap:7px}
.adm-form-grid.is-filter.is-compact label{font-size:11px;margin:0 0 4px}
.adm-form-grid.is-filter.is-compact input,.adm-form-grid.is-filter.is-compact select{padding:6px 9px;border-radius:6px}
@media(max-width:1100px){
  .adm-form-grid.is-filter{grid-template-columns:repeat(3,1fr)}
  .meta-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .meta-integration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .adm-form-grid.is-filter{grid-template-columns:repeat(2,1fr)}
  .meta-kpi-grid{grid-template-columns:1fr}
  .meta-integration-head,.meta-event-top{flex-direction:column;align-items:flex-start}
  .meta-integration-actions{justify-content:flex-start}
  .meta-integration-grid{grid-template-columns:1fr}
}
.adm-details-summary{cursor:pointer;font-weight:700;list-style:none}
.adm-details-summary::-webkit-details-marker{display:none}
.adm-details-summary:before{content:'▸';display:inline-block;margin-right:8px;opacity:.55}
details[open]>.adm-details-summary:before{content:'▾'}
.adm-col-2{grid-column:1/-1}
.adm-form-grid input,.adm-form-grid select,.adm-form-grid textarea{
  width:100%;border-radius:8px;border:1.5px solid var(--border);
  background:var(--surface);color:var(--text);
  padding:8px 10px;outline:none;font-size:12.5px;font-weight:500;line-height:1.4;
  transition:border-color .14s,box-shadow .14s,background .14s;
}
.adm-form-grid textarea{min-height:88px;resize:vertical;line-height:1.5}
.adm-checks{display:flex;gap:12px;flex-wrap:wrap}
.adm-checks label{margin:0;font-weight:600;color:var(--muted)}
.adm-row{display:flex;align-items:center;gap:10px;margin-top:8px}
.adm-segment{display:flex;gap:7px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.adm-segment .adm-mini{margin:0;flex:0 0 auto}
.adm-segment .adm-mini.is-active{background:var(--support);color:var(--premium);border-color:rgba(var(--primary-rgb),.25)}
.adm-inline-panel{margin-top:10px;padding:10px 12px;border:1px dashed var(--border);border-radius:9px;background:var(--surface)}
.adm-pre{
  margin:0;white-space:pre-wrap;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Courier New",monospace;
  font-size:12px;line-height:1.45;padding:12px;border-radius:8px;
  border:1px solid var(--border);background:var(--field-bg);color:var(--text);
}
.adm-icon-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  min-width:38px;border:1.5px solid var(--border);
  background:var(--surface);color:var(--text);
  padding:7px 9px;border-radius:8px;cursor:pointer;
  transition:background .14s,border-color .14s;
}
.adm-icon-btn:hover{background:var(--field-bg-2);border-color:#cbd5e1}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Courier New",monospace;font-size:12px}

/* ============================================================ MODAL */
.adm-modal{position:fixed;top:52px;left:0;right:0;bottom:0;display:none;z-index:1000}
.adm-modal[aria-hidden="true"]{display:none!important}
.adm-modal.is-open,.adm-modal[aria-hidden="false"]{display:block!important}
.adm-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.60)}
.adm-modal-card{
  position:relative;
  width:min(1040px,calc(100% - 24px));
  max-height:calc(100% - 24px);
  margin:12px auto;overflow:auto;
  background:var(--surface-strong);
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:0 24px 64px rgba(0,0,0,.18);
}
.adm-modal-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:14px 16px;border-bottom:1px solid var(--border);
  position:sticky;top:0;background:var(--surface-strong);
  backdrop-filter:saturate(180%) blur(10px);
}
.adm-modal-title{font-weight:700;font-size:14px;letter-spacing:-.015em}
.adm-modal-body{padding:14px 16px}
.adm-modal-body label{display:block;margin:10px 0 5px;font-size:11.5px;color:var(--muted);font-weight:600}
.adm-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.adm-modal-body textarea{
  width:100%;border-radius:8px;border:1.5px solid var(--border);
  background:var(--surface);color:var(--text);
  padding:12px 14px;outline:none;min-height:120px;resize:vertical;
  font-size:13px;font-weight:500;line-height:1.5;
  transition:border-color .14s,box-shadow .14s;
}
.adm-modal-body textarea::placeholder{color:rgba(100,116,139,.65)}
html[data-theme="dark"] .adm-modal-body textarea::placeholder{color:rgba(148,163,184,.55)}

/* ============================================================ KANBAN */
.adm-kanban{
  display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);
  gap:10px;overflow:auto;padding:4px 2px;margin-top:10px;
}
.adm-col{
  background:var(--field-bg);border:1px solid var(--border);
  border-radius:10px;min-height:440px;display:flex;flex-direction:column;
}
.adm-col-head{
  padding:10px 12px;border-bottom:1px solid var(--border);
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  background:var(--surface);border-radius:10px 10px 0 0;
}
.adm-col-title{font-weight:700;font-size:13px}
.adm-col-body{padding:10px;display:flex;flex-direction:column;gap:8px;flex:1}

.adm-card-mini{
  border:1px solid var(--border);background:var(--surface);
  border-radius:8px;padding:10px 32px 10px 12px;
  cursor:grab;box-shadow:0 1px 3px rgba(15,23,42,.05);
  border-left:3px solid transparent;position:relative;
  transition:transform .12s,box-shadow .12s;
}
.adm-card-mini:hover{box-shadow:0 4px 14px rgba(15,23,42,.10)}
.adm-card-mini-title{font-weight:700;margin-bottom:6px;font-size:13px}
.adm-card-mini-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.adm-card-mini-head .adm-card-mini-title{margin-bottom:0;line-height:1.25}
.adm-card-mini-head .adm-badge{flex-shrink:0}
.adm-card-mini-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.adm-kanban .adm-card-mini .adm-item-sub{line-height:1.35}
.adm-card-mini.c-ok{border-left-color:rgba(16,185,129,.70)}
.adm-card-mini.c-warn{border-left-color:rgba(245,158,11,.80)}
.adm-card-mini.c-hot{border-left-color:rgba(239,68,68,.80)}

.adm-kanban .adm-col{border-color:var(--border)}
html[data-theme="dark"] .adm-kanban .adm-col{background:rgba(255,255,255,.02)}
html[data-theme="dark"] .adm-kanban .adm-col-head{background:rgba(255,255,255,.03)}
.adm-kanban .adm-card-mini{border-left-width:3px}
.adm-kanban .adm-badge{
  font-weight:600;border-color:var(--border);font-size:11px;padding:3px 7px;
  background:var(--field-bg);color:var(--muted);
}
html[data-theme="dark"] .adm-kanban .adm-badge{background:rgba(255,255,255,.04)}
.adm-kanban .adm-badge.ok{border-color:rgba(16,185,129,.22);background:rgba(16,185,129,.07);color:rgba(4,120,87,.90)}
.adm-kanban .adm-badge.warn{border-color:rgba(245,158,11,.22);background:rgba(245,158,11,.07);color:rgba(146,64,14,.90)}
.adm-kanban .adm-badge.hot{border-color:rgba(239,68,68,.22);background:rgba(239,68,68,.07);color:rgba(185,28,28,.90)}
html[data-theme="dark"] .adm-kanban .adm-badge.ok{color:#6ee7b7}
html[data-theme="dark"] .adm-kanban .adm-badge.warn{color:#fcd34d}
html[data-theme="dark"] .adm-kanban .adm-badge.hot{color:#fca5a5}

.adm-kanban{transition:opacity 140ms ease,filter 140ms ease}
.adm-kanban.is-syncing{opacity:.98;filter:saturate(.98)}
.adm-kanban .adm-card-mini{transition:transform 140ms ease,box-shadow 140ms ease,opacity 120ms ease}
.adm-kanban .adm-card-mini.is-dragging{
  opacity:.80;transform:translateY(-2px) scale(1.01);
  box-shadow:0 12px 28px rgba(15,23,42,.14);cursor:grabbing;will-change:transform;
}
.adm-kanban .adm-card-mini.is-dropped-local{opacity:.90;pointer-events:none}
.adm-kanban .adm-card-mini.is-drop-in{animation:admDropInSoft 140ms ease-out}
.adm-card-open{
  position:absolute;top:7px;right:7px;
  width:20px;height:20px;border-radius:5px;
  border:1px solid transparent;background:transparent;
  display:flex;align-items:center;justify-content:center;padding:0;
  color:var(--muted);opacity:.55;cursor:pointer;transition:opacity .12s,background .12s;
}
.adm-card-mini:hover .adm-card-open{opacity:1}
.adm-card-open:hover{background:var(--field-bg-2);border-color:var(--border);color:var(--text)}
html[data-theme="dark"] .adm-card-open:hover{background:rgba(255,255,255,.07)}
.adm-card-open svg{width:12px;height:12px;display:block}
@keyframes admDropInSoft{from{opacity:.90;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
.adm-kanban .adm-col-body{position:relative}
.adm-kanban .adm-col-body.is-drop-target{
  background:rgba(var(--support-rgb),.22);
  box-shadow:inset 0 0 0 1.5px rgba(var(--primary-rgb),.18);border-radius:8px;
}

/* ============================================================ TABS */
.adm-tabs{
  display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;
  scrollbar-width:thin;white-space:nowrap;
  padding:6px;border:1px solid var(--border);border-radius:10px;
  background:var(--field-bg);margin-top:10px;
}
.adm-tabs .adm-tab{flex:0 0 auto}
.adm-tab{
  border:1px solid transparent;background:transparent;color:var(--muted);
  padding:6px 10px;border-radius:7px;cursor:pointer;font-weight:600;font-size:12px;
  transition:background .14s,color .14s,border-color .14s;
}
.adm-tab:hover{background:var(--surface);color:var(--text);border-color:var(--border)}
.adm-tab.is-active{
  background:var(--surface);border-color:var(--border);
  color:var(--primary);box-shadow:0 1px 3px rgba(15,23,42,.07);
}
.adm-tabpane{display:none}
.adm-tabpane.is-active{display:block}

/* ============================================================ SPLIT / PANEL */
.adm-split{display:grid;grid-template-columns:340px 1fr;gap:12px}
.adm-panel{border:1px solid var(--border);background:var(--field-bg);border-radius:10px;padding:14px}
.adm-panel h3{margin:0 0 10px;font-size:13px;font-weight:700}
.adm-panel label{display:block;margin:10px 0 5px;font-size:11.5px;color:var(--muted)}
.adm-panel input,.adm-panel select,.adm-panel textarea{
  width:100%;border-radius:8px;border:1.5px solid var(--border);
  background:var(--surface);color:var(--text);padding:9px 11px;outline:none;
  transition:border-color .14s,box-shadow .14s;
}
.adm-panel textarea{resize:vertical}

.adm-inline{display:flex;gap:8px;align-items:center}
.adm-inline select{flex:1}
.adm-inline-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:8px;flex:0 0 auto}
.adm-inline-icon .adm-icon{display:block}
.adm-chips{display:flex;flex-wrap:wrap;gap:7px}
.adm-chip{
  display:inline-flex;align-items:center;gap:7px;
  padding:5px 10px;border-radius:999px;
  border:1px solid var(--border);background:var(--surface);
  font-size:12px;font-weight:600;cursor:pointer;user-select:none;
}
.adm-chip input{margin:0}
.adm-chip-x{border:0;background:transparent;color:var(--muted);cursor:pointer;font-weight:700;padding:0 2px;line-height:1}
.adm-chip-x:hover{color:var(--text)}
.adm-next{
  border:1.5px dashed rgba(var(--primary-rgb),.24);
  background:rgba(var(--support-rgb),.35);
  border-radius:9px;padding:10px 12px;
}
.adm-next-title{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.adm-next-text{margin-top:4px;font-weight:700;font-size:12px}
.adm-quickbar{display:flex;gap:6px;flex-wrap:wrap;align-items:center}

/* ============================================================ TIMELINE */
.adm-timeline{display:flex;flex-direction:column;gap:8px}
.adm-tl-item{
  border:1px solid var(--border);background:var(--surface);
  border-radius:9px;padding:12px;display:flex;gap:12px;
  transition:border-color .14s;
}
.adm-tl-item:hover{border-color:#cbd5e1}
.adm-tl-ico{
  width:36px;height:36px;border-radius:9px;
  border:1px solid var(--border);background:var(--field-bg);
  display:flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--text);
}
.adm-tl-main{flex:1}
.adm-tl-title{font-weight:700;margin-bottom:4px;font-size:13px}
.adm-tl-sub{color:var(--muted);font-size:12px;display:flex;flex-wrap:wrap;gap:8px}

/* ============================================================ CALENDAR */
.adm-calendar{margin-top:10px;border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:hidden}
.adm-cal-head{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:12px 14px;border-bottom:1px solid var(--border);background:var(--surface);
}
.adm-cal-title{font-weight:700;letter-spacing:-.02em}
.adm-cal-actions{display:flex;gap:8px;flex-wrap:wrap}
.adm-cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.adm-cal-dow{
  padding:9px 8px;font-size:11px;color:var(--muted);
  text-transform:uppercase;letter-spacing:.06em;font-weight:600;
  border-bottom:1px solid var(--border);background:var(--field-bg);
}
.adm-cal-cell{
  min-height:88px;padding:9px 9px 10px;
  border-right:1px solid var(--border);border-bottom:1px solid var(--border);
  cursor:pointer;position:relative;transition:background .12s;
}
.adm-cal-cell:nth-child(7n){border-right:0}
.adm-cal-cell:hover{background:var(--hover)}
.adm-cal-cell.is-out{opacity:.38}
.adm-cal-daynum{font-weight:700;font-size:12px}
.adm-cal-dots{position:absolute;left:9px;bottom:9px;display:flex;gap:5px}
.adm-dot{width:7px;height:7px;border-radius:999px;background:rgba(var(--primary-rgb),.65)}
.adm-dot.atv{background:rgba(var(--aqua-rgb),.75)}
.adm-dot.vis{background:rgba(var(--primary-rgb),.65)}
.adm-cal-count{position:absolute;right:9px;bottom:8px;font-size:11px;color:var(--muted);font-weight:700}
.adm-daypanel{margin-top:12px}
.adm-daypanel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.adm-daypanel-title{font-weight:700}
.adm-daypanel .adm-item{margin-bottom:8px}

/* ============================================================ CRM FUNIL CONFIG */
.adm-funil-rows{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.adm-funil-row{
  display:grid;grid-template-columns:40px 1.4fr 140px 170px 180px;gap:10px;align-items:end;
  padding:12px;border:1px solid var(--border);border-radius:9px;background:var(--surface);
}
.adm-funil-row label{display:block;font-size:11.5px;color:var(--muted);margin:0 0 5px}
.adm-funil-row input,.adm-funil-row select{width:100%}
.adm-funil-drag{
  width:40px;height:40px;border-radius:8px;background:var(--support);
  display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--primary);
}
.adm-funil-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center}
@media(max-width:900px){.adm-funil-row{grid-template-columns:40px 1fr}.adm-funil-actions{justify-content:flex-start}}

/* ============================================================ UNITS */
.adm-units{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.adm-unit{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:14px}
.adm-unit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.adm-unit-title{font-weight:700;letter-spacing:-.015em}
.adm-unit-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.adm-unit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.adm-unit-grid .adm-field label{display:block;font-size:11.5px;color:var(--muted);margin:0 0 5px}
.adm-unit-media{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border)}
.adm-unit-media-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.adm-thumbs{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.adm-thumb{width:96px;height:64px;border-radius:8px;border:1px solid var(--border);overflow:hidden;position:relative;background:var(--field-bg)}
.adm-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.adm-thumb.is-cover{outline:2px solid rgba(var(--primary-rgb),.60)}
.adm-thumb-actions{position:absolute;top:5px;right:5px;display:flex;gap:5px}
.adm-thumb-btn{width:22px;height:22px;border-radius:6px;border:1px solid rgba(0,0,0,.10);background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;line-height:1}
html[data-theme="dark"] .adm-thumb-btn{background:rgba(20,23,30,.85);border-color:rgba(255,255,255,.12)}
.adm-unit-msg{margin-top:8px}
.adm-variacoes{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border)}
.adm-variacoes-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.adm-variacoes-title{font-weight:700}
.adm-variacoes-sub{font-size:12px;color:var(--muted)}
.adm-variacoes-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:10px;overflow:hidden;border:1px solid var(--border);border-radius:9px;background:var(--surface)}
.adm-variacoes-table th,.adm-variacoes-table td{padding:10px;border-bottom:1px solid var(--border);font-size:12px;vertical-align:top}
.adm-variacoes-table th{color:var(--muted);font-weight:700;background:var(--field-bg)}
.adm-variacoes-table tr:last-child td{border-bottom:0}
.adm-variacoes-table input,.adm-variacoes-table select{width:100%;min-width:90px}
.adm-var-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.adm-pill{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:12px;color:var(--muted)}

/* ============================================================ RESPONSIVE MAIN */
@media(max-width:820px){
  .adm-split{grid-template-columns:1fr}
  .adm,body[data-route]{display:block}
  .adm-layout{grid-template-columns:1fr}
  .adm-layout::before{display:none}
  .adm-side{
    position:relative;top:0;height:auto;
    background:var(--surface-side);
    border-bottom:1px solid rgba(255,255,255,.07);padding:12px;
  }
  .adm-main{padding:8px 10px 24px}
  .adm-grid-3{grid-template-columns:1fr}
  .adm-grid-2{grid-template-columns:1fr}
  .adm-form-grid{grid-template-columns:1fr}
  .adm-unit-grid{grid-template-columns:1fr 1fr}
  .adm-group{padding:8px 6px 6px}
}

/* ============================================================ UNIT GROUPS + MEDIA */
.adm-unit-group{margin:12px 0;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
.adm-unit-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.adm-unit-group-title{font-weight:700}
.adm-unit-group-body{display:flex;flex-direction:column;gap:12px}
.adm-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
@media(max-width:960px){.adm-media-grid{grid-template-columns:1fr}}
.adm-media-block{padding:10px;border:1px dashed var(--border);border-radius:9px;background:var(--surface)}
.adm-video-row{display:flex;gap:8px;align-items:center;margin-top:10px}
.adm-video-row .adm-video-url{flex:1}
.adm-video-list{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.adm-video-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}
.adm-video-label{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px}
.adm-video-actions{display:flex;gap:8px}

/* ============================================================ CHECKLIST */
.adm-checklist{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-top:8px}
.adm-check{display:flex;gap:10px;align-items:center;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}
.adm-check input{margin:0}
.adm-section{border:1px solid var(--border);border-radius:10px;padding:14px;background:var(--surface);margin-top:12px}
.adm-section h3{margin:0 0 8px;font-size:14px;font-weight:700}
.adm-mini.is-active{background:var(--support);color:var(--premium);border-color:rgba(var(--primary-rgb),.28)}

/* ============================================================ STANDALONE INPUT */
.adm-input{
  border-radius:8px;border:1.5px solid var(--border);
  background:var(--surface);color:var(--text);
  padding:8px 10px;outline:none;font-size:12.5px;
  transition:border-color .14s,box-shadow .14s;
}

/* ============================================================ MULTI-SELECT */
.adm-mselect{position:relative}
.adm-mselect.is-open{z-index:3500}
.adm-mselect-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;cursor:pointer;text-align:left;appearance:none}
.adm-mselect-btn:after{content:'▾';opacity:.55;font-size:11px}
.adm-mselect.is-open .adm-mselect-btn:after{transform:rotate(180deg)}
.adm-mselect-menu{
  position:absolute;top:calc(100% + 5px);left:0;right:0;
  min-width:240px;max-height:280px;overflow:auto;
  border:1px solid var(--border);background:var(--surface);
  border-radius:9px;box-shadow:0 8px 32px rgba(0,0,0,.10);
  padding:5px;display:none;z-index:3501;
}
html[data-theme="dark"] .adm-mselect-menu{background:var(--surface-strong)}
.adm-mselect.is-open .adm-mselect-menu{display:block;animation:admFadeIn .12s ease-out}
.adm-mselect-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:7px;cursor:pointer;user-select:none;font-size:13px;color:var(--text)}
.adm-mselect-item:hover{background:var(--hover)}
html[data-theme="dark"] .adm-mselect-item:hover{background:rgba(255,255,255,.05)}
.adm-mselect-item input{margin:0}
.adm-mselect-sep{height:1px;background:var(--border);margin:5px 4px}
@keyframes admFadeIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

/* ============================================================ TYPOGRAPHY PASS */
.adm-page-title,.adm-card-title,.adm-item-title,.adm-modal-title,
.adm-col-title,.adm-card-mini-title,.adm-cal-title,.adm-daypanel-title{
  font-weight:700;letter-spacing:-.015em;
}
.adm-btn,.adm-mini,.adm-tab,.adm-visit,.adm-label-row .adm-mini,.adm-details-summary{font-weight:600}
.adm-badge,.adm-link.is-active{font-weight:600}
.adm-card-kpi{font-size:26px;font-weight:800;letter-spacing:-.03em}

/* ============================================================ UPLOAD */
.adm-upload-row{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap}
.adm-upload-preview{
  width:200px;height:110px;border-radius:9px;
  border:1px solid var(--border);background:var(--field-bg);
  overflow:hidden;display:flex;align-items:center;justify-content:center;
}
.adm-upload-preview img{width:100%;height:100%;object-fit:cover;display:block}
.adm-upload-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* ============================================================ EDITOR */
.adm-editor-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0}
.adm-wys-toolbar{border:1px solid var(--border);background:var(--field-bg);padding:10px;border-radius:9px}
.adm-wys-editor{
  min-height:260px;border:1.5px solid var(--border);
  background:var(--surface);color:var(--text);
  border-radius:9px;padding:12px 14px;outline:none;overflow:auto;
  line-height:1.6;font-size:13.5px;
  transition:border-color .14s,box-shadow .14s;
}
.adm-wys-editor:empty:before{content:attr(data-placeholder);color:rgba(100,116,139,.60)}
.adm-wys-editor p{margin:0 0 10px}
.adm-wys-editor h2{margin:14px 0 10px;letter-spacing:-.015em}
.adm-wys-editor ul,.adm-wys-editor ol{margin:0 0 12px 18px}
.adm-wys-editor a{color:var(--primary);text-decoration:underline}

/* ============================================================ FUNIL TABS */
.adm-funnels-tabs-wrap{position:relative}
.adm-funnels-tabs{display:flex;gap:7px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding:4px 2px;scrollbar-width:thin}
.adm-funnels-tabs::-webkit-scrollbar{height:5px}
.adm-funnels-tabs::-webkit-scrollbar-thumb{background:rgba(0,0,0,.12);border-radius:999px}
.adm-funnel-tab{
  display:inline-flex;align-items:center;gap:7px;padding:6px 10px;
  border:1px solid var(--border);background:var(--surface);
  border-radius:8px;font-size:13px;cursor:pointer;user-select:none;
  transition:background .14s,border-color .14s;
}
.adm-funnel-tab:hover{background:var(--field-bg-2);border-color:#cbd5e1}
.adm-funnel-tab.is-active{border-color:rgba(var(--primary-rgb),.35);background:rgba(var(--support-rgb),.50);color:var(--premium)}
.adm-funnels-tabs-wrap--config .adm-funnel-tab{position:relative}
.adm-funnels-tabs-wrap--config .adm-funnel-tab.is-active{
  border-color:rgba(var(--primary-rgb),.35);background:rgba(var(--support-rgb),.50);
  box-shadow:0 1px 0 rgba(var(--primary-rgb),.14);
}
.adm-funnels-tabs-wrap--config .adm-funnel-tab.is-active:after{
  content:'';position:absolute;left:10px;right:10px;bottom:-5px;
  height:2px;border-radius:999px;background:rgba(var(--primary-rgb),.55);
}
.adm-funnel-tab-badge{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:20px;height:17px;padding:0 5px;border-radius:999px;
  border:1px solid rgba(0,0,0,.10);background:rgba(0,0,0,.03);
  font-size:11px;line-height:17px;font-variant-numeric:tabular-nums;opacity:.70;
}
.adm-funnel-tab.is-active .adm-funnel-tab-badge{opacity:.90;border-color:rgba(0,0,0,.16);background:rgba(0,0,0,.04)}

.adm-lead-fc-list{display:flex;flex-direction:column;gap:7px}
.adm-lead-fc-item{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px 12px;border:1px solid var(--border);border-radius:9px;
  text-decoration:none;color:inherit;background:var(--surface);
  transition:border-color .14s,box-shadow .14s;
}
.adm-lead-fc-item:hover{border-color:rgba(var(--primary-rgb),.28);box-shadow:0 2px 10px rgba(var(--primary-rgb),.07)}
.adm-lead-fc-title{font-weight:700}
.adm-lead-fc-meta{font-size:12px;opacity:.68;margin-top:2px}
.adm-lead-fc-right{display:flex;align-items:center;gap:6px;white-space:nowrap}

/* ============================================================ TOAST */
.adm-toast{position:fixed;top:14px;right:14px;z-index:9999;display:flex;flex-direction:column;gap:7px;pointer-events:none}
.adm-toast-item{
  pointer-events:auto;max-width:340px;
  border:1px solid var(--border);background:var(--surface);
  border-radius:10px;padding:10px 14px;
  box-shadow:0 8px 28px rgba(0,0,0,.12);font-size:13px;
  opacity:0;transform:translateY(-6px);
  transition:opacity .18s ease,transform .18s ease;
}
.adm-toast-item.is-show{opacity:1;transform:translateY(0)}
.adm-toast-item.is-err{border-color:rgba(220,38,38,.28);background:#fff1f1}

/* Fade edges on funnel tabs */
.adm-funnels-tabs-wrap:before,.adm-funnels-tabs-wrap:after{
  content:'';position:absolute;top:0;bottom:0;width:24px;pointer-events:none;opacity:0;transition:opacity .15s;
}
.adm-funnels-tabs-wrap:before{left:0;background:linear-gradient(to right,var(--surface),rgba(255,255,255,0))}
.adm-funnels-tabs-wrap:after{right:0;background:linear-gradient(to left,var(--surface),rgba(255,255,255,0))}
.adm-funnels-tabs-wrap.has-left-fade:before{opacity:1}
.adm-funnels-tabs-wrap.has-right-fade:after{opacity:1}

/* ============================================================ LEAD PICKER */
.adm-lead-picker{max-height:360px;overflow:auto;border:1px solid var(--border);border-radius:9px;padding:5px;background:var(--surface)}
.adm-lead-picker-item{
  width:100%;text-align:left;border:1px solid var(--border);border-radius:8px;
  padding:10px 12px;background:var(--surface);cursor:pointer;margin:5px 0;
  transition:transform .08s,box-shadow .08s,border-color .1s;
}
.adm-lead-picker-item:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(15,23,42,.09);border-color:#cbd5e1}
.adm-lead-picker-item.is-disabled{opacity:.50;cursor:not-allowed}
.adm-lead-picker-item.is-disabled:hover{transform:none;box-shadow:none}
.adm-lead-picker-row{display:flex;gap:10px;align-items:center;justify-content:space-between}
.adm-lead-picker-badge{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--border);background:var(--field-bg);color:var(--muted)}
.adm-lead-picker-name{font-weight:700}
.adm-lead-picker-meta{font-size:12px;color:var(--muted);margin-top:3px}

/* CRM config helpers */
.adm-chip-row{display:flex;gap:8px;flex-wrap:wrap}
.adm-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
@media(max-width:980px){.adm-check-grid{grid-template-columns:1fr}}

/* ============================================================ FILTER BREAKPOINTS */
@media(max-width:1400px){.adm-form-grid.is-filter{grid-template-columns:repeat(6,minmax(100px,1fr))}}
@media(max-width:1180px){
  .adm-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .adm-form-grid.is-filter{grid-template-columns:repeat(4,minmax(100px,1fr))}
}
@media(max-width:820px){
  .adm-main{padding:6px 10px 24px}
  .adm-form-grid,.adm-form-grid.is-filter{grid-template-columns:1fr}
}

/* ============================================================ FOCUS STATES */
.adm-form-grid input:focus-visible,
.adm-form-grid select:focus-visible,
.adm-form-grid textarea:focus-visible,
.adm-modal-body input:focus-visible,
.adm-modal-body select:focus-visible,
.adm-modal-body textarea:focus-visible,
.adm-panel input:focus-visible,
.adm-panel select:focus-visible,
.adm-panel textarea:focus-visible,
.adm-login input:focus-visible,
.adm-login select:focus-visible,
.adm-toolbar input:focus-visible{
  border-color:rgba(var(--primary-rgb),.55);
  box-shadow:0 0 0 3px rgba(var(--primary-rgb),.12);
  background:var(--surface);outline:none;
}
html[data-theme="dark"] .adm-form-grid input:focus-visible,
html[data-theme="dark"] .adm-form-grid select:focus-visible,
html[data-theme="dark"] .adm-form-grid textarea:focus-visible,
html[data-theme="dark"] .adm-modal-body input:focus-visible,
html[data-theme="dark"] .adm-modal-body select:focus-visible,
html[data-theme="dark"] .adm-modal-body textarea:focus-visible{
  border-color:rgba(var(--aqua-rgb),.55);
  box-shadow:0 0 0 3px rgba(var(--aqua-rgb),.12);
}
.adm-btn:focus-visible,
.adm-btn-ghost:focus-visible,
.adm-mini:focus-visible,
.adm-tab:focus-visible,
.adm-link:focus-visible,
.adm-icon-btn:focus-visible{
  outline:2px solid rgba(var(--primary-rgb),.55);
  outline-offset:2px;
}

/* ============================================================ FORM VALIDATION */
.adm-form-grid input.is-error,
.adm-form-grid select.is-error,
.adm-form-grid textarea.is-error,
.adm-modal-body input.is-error,
.adm-modal-body select.is-error,
.adm-modal-body textarea.is-error{
  border-color:rgba(239,68,68,.55);background:rgba(239,68,68,.04);
  box-shadow:0 0 0 3px rgba(239,68,68,.09);
}
.adm-form-grid input.is-valid,
.adm-form-grid select.is-valid,
.adm-form-grid textarea.is-valid{border-color:rgba(16,185,129,.45);background:rgba(16,185,129,.03)}
.adm-field-error{font-size:11px;color:rgba(220,38,38,.90);margin-top:4px;font-weight:600;display:block}
html[data-theme="dark"] .adm-field-error{color:rgba(252,165,165,.90)}

/* ============================================================ EMPTY STATE */
.adm-empty{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:56px 24px;text-align:center;gap:12px;color:var(--muted);
}
.adm-empty-icon{width:44px;height:44px;opacity:.22;flex:0 0 auto}
.adm-empty-title{font-size:14px;font-weight:700;color:var(--text);opacity:.48;margin:0}
.adm-empty-sub{font-size:12px;opacity:.68;margin:0;max-width:300px;line-height:1.55}
.adm-empty .adm-btn{margin-top:4px;opacity:.80}

/* ============================================================ DARK MODE OVERRIDES */
html[data-theme="dark"] .adm-lead-picker{background:var(--surface-strong);border-color:var(--border)}
html[data-theme="dark"] .adm-lead-picker-item{background:var(--surface);border-color:var(--border);color:var(--text)}
html[data-theme="dark"] .adm-lead-picker-item:hover{background:var(--hover);transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.20)}
html[data-theme="dark"] .adm-lead-picker-badge{border-color:var(--border);background:var(--field-bg);color:var(--muted)}
html[data-theme="dark"] .adm-lead-picker-meta{color:var(--muted)}
html[data-theme="dark"] .adm-lead-fc-item{background:var(--surface);border-color:var(--border);color:var(--text)}
html[data-theme="dark"] .adm-lead-fc-item:hover{border-color:rgba(var(--primary-rgb),.32);box-shadow:0 2px 10px rgba(0,0,0,.20)}
html[data-theme="dark"] .adm-funnel-tab{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.09);color:var(--text)}
html[data-theme="dark"] .adm-funnel-tab:hover{background:rgba(255,255,255,.08)}
html[data-theme="dark"] .adm-funnel-tab.is-active{background:rgba(var(--primary-rgb),.20);border-color:rgba(var(--primary-rgb),.35)}
html[data-theme="dark"] .adm-toast-item{background:var(--surface-strong);border-color:var(--border);color:var(--text);box-shadow:0 8px 28px rgba(0,0,0,.28)}
html[data-theme="dark"] .adm-toast-item.is-err{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.08)}
html[data-theme="dark"] .adm-chip{border-color:var(--border);background:var(--field-bg);color:var(--text)}
html[data-theme="dark"] .adm-check{border-color:var(--border);background:var(--field-bg);color:var(--text)}
html[data-theme="dark"] .adm-funnels-tabs-wrap:before{background:linear-gradient(to right,var(--surface),rgba(30,41,59,0))}
html[data-theme="dark"] .adm-funnels-tabs-wrap:after{background:linear-gradient(to left,var(--surface),rgba(30,41,59,0))}

/* CRM modal badge overrides */
.adm-modal--crm .adm-badge{font-weight:600;border-color:var(--border);background:var(--field-bg);color:var(--muted)}
html[data-theme="dark"] .adm-modal--crm .adm-badge{border-color:rgba(255,255,255,.10);background:rgba(255,255,255,.03);color:rgba(255,255,255,.72)}
.adm-modal--crm .adm-badge.ok{border-color:rgba(16,185,129,.22);background:rgba(16,185,129,.07);color:rgba(4,120,87,.90)}
.adm-modal--crm .adm-badge.warn{border-color:rgba(245,158,11,.22);background:rgba(245,158,11,.07);color:rgba(146,64,14,.90)}
.adm-modal--crm .adm-badge.hot{border-color:rgba(239,68,68,.22);background:rgba(239,68,68,.07);color:rgba(185,28,28,.90)}
html[data-theme="dark"] .adm-modal--crm .adm-badge.ok{color:#6ee7b7}
html[data-theme="dark"] .adm-modal--crm .adm-badge.warn{color:#fcd34d}
html[data-theme="dark"] .adm-modal--crm .adm-badge.hot{color:#fca5a5}
