/* ============================================================
   FUNNELFLOW CSS — Premium Light Theme
   Paleta: #F7B72C (ouro), #3FA9F5 (azul), #000, #fff
   ============================================================ */
:root {
  --gold:#F7B72C; --gold-d:#D4940A; --gold-l:#FDD87A;
  --blue:#3FA9F5; --blue-d:#1A7DD6; --blue-l:#82CAFF;
  --success:#10B981; --danger:#EF4444; --warning:#F59E0B; --purple:#8B5CF6;
  --bg-page:#F5F4F0; --bg-card:#FFFFFF; --bg-sidebar:#FFFFFF;
  --bg-topbar:rgba(255,255,255,0.92); --bg-input:#F9F8F5;
  --text-1:#1A1A1A; --text-2:#64748B; --text-m:#94A3B8;
  --border:#E8E6E0; --border-h:#D1CFC8;
  --sh-sm:0 1px 3px rgba(0,0,0,.06); --sh-md:0 4px 12px rgba(0,0,0,.08);
  --sh-lg:0 8px 32px rgba(0,0,0,.12); --sh-xl:0 20px 60px rgba(0,0,0,.18);
  --sh-gold:0 4px 20px rgba(247,183,44,.28); --sh-blue:0 4px 20px rgba(63,169,245,.25);
  --sidebar-w:240px; --sidebar-col:68px; --topbar-h:66px;
  --r-sm:8px; --r-md:12px; --r-lg:16px; --r-xl:20px;
  --tr:all .2s cubic-bezier(.4,0,.2,1); --tr-s:all .35s cubic-bezier(.4,0,.2,1);
}
[data-theme="dark"] {
  --bg-page:#0F1117; --bg-card:#1A1D27; --bg-sidebar:#13151F;
  --bg-topbar:rgba(26,29,39,.92); --bg-input:#21253A;
  --text-1:#F1F5F9; --text-2:#94A3B8; --text-m:#475569;
  --border:#2D3148; --border-h:#3D4268;
  --sh-sm:0 1px 3px rgba(0,0,0,.3); --sh-md:0 4px 12px rgba(0,0,0,.4);
  --sh-lg:0 8px 32px rgba(0,0,0,.5);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',-apple-system,sans-serif;background:var(--bg-page);color:var(--text-1);overflow:hidden}
a{color:var(--blue)} button{font-family:inherit;cursor:pointer}
input,select,textarea{font-family:inherit;color:var(--text-1)}

/* LOGIN */
.login-screen{position:fixed;inset:0;background:linear-gradient(135deg,#F5F4F0 0%,#E8F4FF 50%,#FFF8E6 100%);display:flex;align-items:center;justify-content:center;z-index:9000;padding:20px}
[data-theme="dark"] .login-screen{background:linear-gradient(135deg,#0F1117 0%,#13151F 100%)}
.login-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-xl);padding:40px;width:100%;max-width:440px;box-shadow:var(--sh-xl)}
.login-logo{display:flex;align-items:center;gap:14px;margin-bottom:28px}
.login-logo-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--gold),var(--gold-d));border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;color:#000;font-size:1.2rem;box-shadow:var(--sh-gold)}
.login-logo-name{font-size:1.2rem;font-weight:800;display:block}
.login-logo-sub{font-size:.75rem;color:var(--text-m)}
.login-title{font-size:1.4rem;font-weight:800;margin-bottom:6px}
.login-subtitle{font-size:.88rem;color:var(--text-2);margin-bottom:24px}
.form-group{margin-bottom:14px}
.form-group label{display:block;font-size:.78rem;font-weight:700;color:var(--text-2);margin-bottom:5px}
.input-icon-wrap{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-input);transition:var(--tr);padding:0 12px;gap:10px}
.input-icon-wrap:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(247,183,44,.12)}
.input-icon-wrap>i:first-child{color:var(--text-m);font-size:.85rem;flex-shrink:0;pointer-events:none}
.input-icon-wrap input{flex:1;min-width:0;padding:11px 0;border:none;background:transparent;font-size:.88rem;outline:none;color:var(--text-1)}
.input-icon-wrap input:focus{border:none;box-shadow:none}
.toggle-pw{background:none;border:none;color:var(--text-m);font-size:.85rem;padding:4px;flex-shrink:0;cursor:pointer}
.toggle-pw:hover{color:var(--text-1)}
.login-btn{width:100%;margin-top:8px;padding:13px;background:linear-gradient(135deg,var(--gold),var(--gold-d));color:#000;border:none;border-radius:var(--r-md);font-size:.95rem;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:var(--sh-gold);transition:var(--tr)}
.login-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(247,183,44,.4)}
.login-error{color:var(--danger);font-size:.82rem;margin-top:10px;text-align:center;min-height:18px}

/* APP */
.app-shell{display:flex;min-height:100vh}
.hidden{display:none!important}

/* SIDEBAR */
.sidebar{width:var(--sidebar-w);background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;inset-block:0;left:0;z-index:100;transition:var(--tr-s);box-shadow:var(--sh-md)}
.sidebar.collapsed{width:var(--sidebar-col)}
.sidebar.collapsed .logo-text,.sidebar.collapsed .sidebar-meta,.sidebar.collapsed .user-info,.sidebar.collapsed .nav-item span,.sidebar.collapsed .nav-badge{display:none}
.sidebar.collapsed .nav-item{justify-content:center;padding:10px}
.sidebar-logo{display:flex;align-items:center;gap:10px;padding:18px 14px;border-bottom:1px solid var(--border);position:relative}
.logo-icon{width:38px;height:38px;background:linear-gradient(135deg,var(--gold),var(--gold-d));border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;color:#000;font-size:.95rem;flex-shrink:0;box-shadow:var(--sh-gold)}
.logo-name{font-size:.95rem;font-weight:800;display:block}
.logo-sub{font-size:.68rem;color:var(--text-m)}
.sidebar-toggle-btn{position:absolute;right:-12px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.62rem;color:var(--text-2);transition:var(--tr)}
.sidebar-toggle-btn:hover{background:var(--gold);color:#000;border-color:var(--gold)}
.sidebar.collapsed .sidebar-toggle-btn i{transform:rotate(180deg)}
.sidebar-meta{padding:14px 16px;border-bottom:1px solid var(--border)}
.meta-label{font-size:.72rem;font-weight:700;color:var(--text-m);text-transform:uppercase;letter-spacing:.5px;margin-bottom:7px}
.meta-progress-bar{height:6px;background:var(--border);border-radius:999px;overflow:hidden;margin-bottom:5px}
.meta-progress-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-d));border-radius:999px;transition:width .8s cubic-bezier(.4,0,.2,1)}
.meta-values{display:flex;justify-content:space-between;font-size:.72rem;color:var(--text-2)}
.meta-values span:first-child{color:var(--gold-d);font-weight:700}
.sidebar-nav{flex:1;padding:10px 8px;overflow-y:auto;scrollbar-width:none}
.sidebar-nav::-webkit-scrollbar{display:none}
.nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:var(--r-md);border:none;background:none;width:100%;text-align:left;font-size:.86rem;font-weight:500;color:var(--text-2);transition:var(--tr);margin-bottom:2px;cursor:pointer;position:relative}
.nav-item i{width:18px;text-align:center;font-size:.88rem;flex-shrink:0}
.nav-item:hover{background:var(--bg-page);color:var(--text-1)}
.nav-item.active{background:linear-gradient(135deg,var(--gold),var(--gold-d));color:#000;font-weight:700;box-shadow:var(--sh-gold)}
.nav-badge{font-size:.58rem;font-weight:800;padding:2px 6px;border-radius:999px;background:rgba(239,68,68,.15);color:var(--danger);margin-left:auto}
.nav-item.active .nav-badge{background:rgba(0,0,0,.15);color:#000}
.nav-divider{height:1px;background:var(--border);margin:8px 4px}

/* SIDEBAR USER */
.sidebar-user{border-top:1px solid var(--border);padding:12px 10px;position:relative}
.user-avatar-btn{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px;border-radius:var(--r-md);transition:var(--tr);border:none;background:none;width:100%}
.user-avatar-btn:hover{background:var(--bg-page)}
.user-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:800;color:#fff;flex-shrink:0}
.user-name{font-size:.84rem;font-weight:700;display:block;text-align:left}
.user-role-badge{font-size:.64rem;font-weight:800;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.4px;display:inline-block;margin-top:2px}
.user-role-badge.admin,.popup-role-badge.admin{background:rgba(247,183,44,.2);color:var(--gold-d)}
.user-role-badge.gestor,.popup-role-badge.gestor{background:rgba(63,169,245,.15);color:var(--blue-d)}
.user-role-badge.comercial,.popup-role-badge.comercial{background:rgba(16,185,129,.15);color:#059669}
.user-role-badge.tecnico,.popup-role-badge.tecnico{background:rgba(245,158,11,.15);color:#d97706}
.user-role-badge.viewer,.popup-role-badge.viewer{background:rgba(139,92,246,.15);color:#7c3aed}

/* USER POPUP */
.user-popup{position:absolute;bottom:calc(100% + 6px);left:8px;right:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-xl);z-index:500;display:none;overflow:hidden;animation:popupIn .2s ease}
.user-popup.open{display:block}
@keyframes popupIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.user-popup-header{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-page);border-bottom:1px solid var(--border)}
.popup-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:800;color:#fff;flex-shrink:0}
.popup-name{font-size:.9rem;font-weight:700}
.popup-email{font-size:.72rem;color:var(--text-m);margin-bottom:4px}
.user-popup-menu{padding:8px}
.user-popup-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:none;border-radius:var(--r-md);font-size:.84rem;color:var(--text-2);transition:var(--tr);cursor:pointer}
.user-popup-item:hover{background:var(--bg-page);color:var(--text-1)}
.user-popup-item.danger{color:var(--danger)}
.user-popup-item.danger:hover{background:rgba(239,68,68,.08)}
.user-popup-item i{width:16px;text-align:center}
.popup-divider{height:1px;background:var(--border);margin:6px 0}

/* TOPBAR */
.main-content{margin-left:var(--sidebar-w);flex:1;display:flex;flex-direction:column;min-height:100vh;transition:var(--tr-s);overflow:hidden}
body.sidebar-collapsed .main-content{margin-left:var(--sidebar-col)}
.topbar{height:var(--topbar-h);background:var(--bg-topbar);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px;padding:0 20px;position:sticky;top:0;z-index:50}
.topbar-left{display:flex;align-items:center;gap:10px}
.mobile-menu-btn{display:none;background:none;border:none;font-size:1.2rem;color:var(--text-2)}
.topbar-title{font-size:.98rem;font-weight:700;white-space:nowrap}
.topbar-center{flex:1;max-width:380px;margin:0 auto}
.search-bar{display:flex;align-items:center;gap:8px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--r-md);padding:8px 13px;transition:var(--tr)}
.search-bar:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(247,183,44,.1)}
.search-bar i{color:var(--text-m);font-size:.82rem}
.search-bar input{flex:1;border:none;background:none;outline:none;font-size:.85rem}
.search-bar input::placeholder{color:var(--text-m)}
.topbar-right{display:flex;align-items:center;gap:8px;margin-left:auto}
.topbar-btn{background:none;border:1px solid var(--border);border-radius:var(--r-md);padding:8px 11px;color:var(--text-2);font-size:.88rem;display:flex;align-items:center;gap:6px;transition:var(--tr)}
.topbar-btn:hover{background:var(--bg-page);border-color:var(--border-h)}
.primary-btn{background:linear-gradient(135deg,var(--gold),var(--gold-d));color:#000;border:none;border-radius:var(--r-md);padding:9px 16px;font-size:.86rem;font-weight:700;display:flex;align-items:center;gap:7px;box-shadow:var(--sh-gold);transition:var(--tr);cursor:pointer}
.primary-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(247,183,44,.38)}
.primary-btn-small{background:linear-gradient(135deg,var(--gold),var(--gold-d));color:#000;border:none;border-radius:var(--r-md);padding:8px 14px;font-size:.8rem;font-weight:700;display:flex;align-items:center;gap:6px;box-shadow:var(--sh-gold);transition:var(--tr);cursor:pointer}
.primary-btn-small:hover{transform:translateY(-1px)}
.secondary-btn{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:9px 14px;font-size:.84rem;color:var(--text-2);display:flex;align-items:center;gap:7px;transition:var(--tr);cursor:pointer;text-decoration:none}
.secondary-btn:hover{border-color:var(--blue);color:var(--blue)}
.topbar-user-btn{background:none;border:none;padding:2px;border-radius:50%;cursor:pointer;transition:var(--tr)}
.topbar-user-btn:hover{transform:scale(1.08)}
.topbar-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.76rem;font-weight:800;color:#fff;border:2px solid var(--border)}

/* NOTIFICATIONS */
.notif-wrapper{position:relative}
.notif-btn{position:relative}
.notif-badge{position:absolute;top:-5px;right:-5px;background:var(--danger);color:#fff;font-size:.58rem;font-weight:800;border-radius:999px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;padding:0 3px;border:2px solid var(--bg-topbar)}
.notif-panel{position:absolute;top:calc(100% + 10px);right:0;width:360px;max-height:500px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-xl);z-index:600;display:none;flex-direction:column;overflow:hidden}
.notif-panel.open{display:flex;animation:popupIn .2s ease}
.notif-panel-header{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid var(--border);flex-shrink:0}
.notif-panel-title{font-size:.9rem;font-weight:800}
.notif-mark-all{background:none;border:none;font-size:.74rem;color:var(--blue);cursor:pointer;font-weight:700}
.notif-list{flex:1;overflow-y:auto;padding:6px}
.notif-item{display:flex;gap:10px;padding:11px 10px;border-radius:var(--r-md);cursor:pointer;transition:var(--tr);position:relative;margin-bottom:3px}
.notif-item:hover{background:var(--bg-page)}
.notif-item.unread{background:rgba(247,183,44,.05);border:1px solid rgba(247,183,44,.12)}
.notif-item.unread::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:55%;background:var(--gold);border-radius:0 3px 3px 0}
.notif-icon{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;flex-shrink:0}
.notif-icon.urgente{background:rgba(239,68,68,.12);color:var(--danger)}
.notif-icon.instalacao{background:rgba(63,169,245,.12);color:var(--blue)}
.notif-icon.lead_novo{background:rgba(16,185,129,.12);color:var(--success)}
.notif-icon.pagamento{background:rgba(247,183,44,.15);color:var(--gold-d)}
.notif-icon.sistema{background:rgba(139,92,246,.12);color:var(--purple)}
.notif-icon.mensagem{background:rgba(6,182,212,.12);color:#0891b2}
.notif-content{flex:1;min-width:0}
.notif-title{font-size:.82rem;font-weight:800;margin-bottom:2px}
.notif-msg{font-size:.74rem;color:var(--text-2);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.notif-time{font-size:.68rem;color:var(--text-m);margin-top:3px}
.notif-loading{display:flex;align-items:center;justify-content:center;padding:22px;color:var(--text-m)}
.notif-panel-footer{padding:9px 14px;border-top:1px solid var(--border);flex-shrink:0}
.notif-view-all{width:100%;background:none;border:1px solid var(--border);border-radius:var(--r-md);padding:8px;font-size:.8rem;color:var(--text-2);cursor:pointer;transition:var(--tr)}
.notif-view-all:hover{border-color:var(--gold);color:var(--gold-d)}
.notif-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:26px;color:var(--text-m);font-size:.82rem}
.notif-empty i{font-size:1.5rem}

/* VIEWS */
.view{display:none;padding:24px;overflow-y:auto;max-height:calc(100vh - var(--topbar-h));animation:fadeIn .25s ease}
.view.active{display:block}
@keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.view-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;flex-wrap:wrap;gap:10px}
.view-header h1{font-size:1.4rem;font-weight:800}
.view-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.select-filter,.search-input{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:8px 11px;font-size:.82rem;color:var(--text-1);outline:none;transition:var(--tr)}
.select-filter:focus,.search-input:focus{border-color:var(--gold)}
.pipeline-val{font-size:.82rem;color:var(--text-2);background:var(--bg-card);border:1px solid var(--border);padding:8px 11px;border-radius:var(--r-md)}
.pipeline-val strong{color:var(--gold-d);font-size:.94rem}

/* DASHBOARD */
.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}
/* Grid admin (6 KPIs em 3 colunas) */
.kpi-admin-grid{grid-template-columns:repeat(3,1fr)}
/* Grid restrito (6 KPIs em 3 colunas) */
.kpi-restrito-grid{grid-template-columns:repeat(3,1fr)}

.kpi-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;display:flex;gap:14px;align-items:center;box-shadow:var(--sh-sm);transition:var(--tr);transform-style:preserve-3d;position:relative;overflow:hidden}
.kpi-card:hover{transform:translateY(-4px) rotateX(2deg);box-shadow:var(--sh-lg)}

/* KPI destacado — fundo levemente dourado (valores financeiros) */
.kpi-destacado{border-color:rgba(247,183,44,.25);background:linear-gradient(135deg,var(--bg-card) 80%,rgba(247,183,44,.04))}
.kpi-destacado::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-d));border-radius:0 0 var(--r-lg) var(--r-lg)}

/* Ícone de cadeado/coroa — indica "só Admin" */
.kpi-lock-icon{position:absolute;top:10px;right:12px;font-size:.65rem;color:var(--gold-d);opacity:.6}

.kpi-icon{width:48px;height:48px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.kpi-icon.yellow{background:rgba(247,183,44,.13);color:var(--gold-d)}
.kpi-icon.blue{background:rgba(63,169,245,.13);color:var(--blue-d)}
.kpi-icon.green{background:rgba(16,185,129,.13);color:var(--success)}
.kpi-icon.purple{background:rgba(139,92,246,.13);color:var(--purple)}
.kpi-content{flex:1;min-width:0}
.kpi-label{font-size:.74rem;color:var(--text-m);font-weight:600;margin-bottom:2px}
.kpi-value{font-size:1.45rem;font-weight:800;line-height:1.1}
.kpi-change{font-size:.7rem;color:var(--text-m);margin-top:2px}
.kpi-change.pos{color:var(--success)} .kpi-change.neg{color:var(--danger)}

/* Banner de aviso de visão restrita */
.visao-restrita-banner{display:flex;align-items:center;gap:10px;background:rgba(63,169,245,.07);border:1px solid rgba(63,169,245,.2);border-radius:var(--r-md);padding:10px 16px;margin-bottom:18px;font-size:.8rem;color:var(--blue-d)}
.visao-restrita-banner i{font-size:1rem;flex-shrink:0;color:var(--blue)}
.visao-restrita-banner strong{font-weight:800}

/* Mini lista items do dashboard */
.mini-empty{display:flex;align-items:center;gap:8px;padding:12px;font-size:.78rem;color:var(--text-m)}
.mini-empty i{font-size:.9rem;opacity:.5}
.mini-valor{font-size:.78rem;font-weight:800;color:var(--gold-d);flex-shrink:0}

.charts-row{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-bottom:20px}
.chart-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--sh-sm)}
.chart-header{margin-bottom:14px} .chart-header h3{font-size:.94rem;font-weight:700}
.dashboard-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.dashboard-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px;box-shadow:var(--sh-sm)}
.dashboard-card h3{font-size:.84rem;font-weight:700;display:flex;align-items:center;gap:7px;margin-bottom:11px}
.red-icon{color:var(--danger)} .blue-icon{color:var(--blue)} .green-icon{color:var(--success)}
.mini-list{display:flex;flex-direction:column;gap:6px}
.mini-item{display:flex;align-items:center;gap:9px;padding:9px;border-radius:var(--r-md);cursor:pointer;transition:var(--tr);font-size:.8rem}
.mini-item:hover{background:var(--bg-page)}
.mini-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}

/* KANBAN */
.kanban-board{display:flex;gap:13px;overflow-x:auto;padding-bottom:10px;min-height:calc(100vh - 210px)}
.kanban-board::-webkit-scrollbar{height:5px}
.kanban-board::-webkit-scrollbar-thumb{background:var(--gold);border-radius:999px}
.kanban-col{min-width:268px;max-width:284px;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-lg);display:flex;flex-direction:column;flex-shrink:0;max-height:calc(100vh - 225px)}
.kanban-col-hdr{padding:12px 13px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}
.col-title-row{display:flex;align-items:center;gap:7px}
.col-dot{width:8px;height:8px;border-radius:50%}
.col-title{font-size:.82rem;font-weight:700}
.col-count{background:var(--border);color:var(--text-m);font-size:.66rem;font-weight:800;padding:2px 6px;border-radius:999px}
.col-val{font-size:.7rem;font-weight:700;color:var(--text-2)}
.kanban-col-body{flex:1;padding:8px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;scrollbar-width:thin}
.kanban-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:12px;cursor:grab;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:var(--sh-sm);position:relative;transform-style:preserve-3d}
.kanban-card:hover{transform:translateY(-3px) rotateX(3deg) rotateY(-1deg);box-shadow:var(--sh-lg);z-index:10}
.kanban-card:active{cursor:grabbing}
.kanban-card.sortable-ghost{opacity:.3}
.kanban-card.sortable-chosen{transform:scale(1.03) rotate(1deg);box-shadow:var(--sh-xl)}
.card-urgency{position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--r-md) var(--r-md) 0 0}
.card-urgency.warn{background:var(--warning)}
.card-urgency.danger{background:var(--danger);animation:pulse-bar 1.5s ease-in-out infinite}
@keyframes pulse-bar{0%,100%{opacity:1}50%{opacity:.4}}
.card-hdr{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:5px}
.card-nome{font-size:.86rem;font-weight:700}
.card-prio{font-size:.6rem;font-weight:800;padding:2px 6px;border-radius:999px;text-transform:uppercase;flex-shrink:0}
.card-prio.alta{background:rgba(239,68,68,.12);color:#dc2626}
.card-prio.media{background:rgba(245,158,11,.12);color:#d97706}
.card-prio.baixa{background:rgba(16,185,129,.12);color:#059669}
.card-produto{font-size:.75rem;color:var(--text-2);margin-bottom:6px}
.card-valor{font-size:.96rem;font-weight:800;color:var(--gold-d);margin-bottom:8px}
.card-ftr{display:flex;align-items:center;justify-content:space-between}
.card-origem{font-size:.66rem;background:rgba(63,169,245,.1);color:var(--blue-d);padding:2px 6px;border-radius:999px;font-weight:700}
.card-time{font-size:.66rem;color:var(--text-m);display:flex;align-items:center;gap:3px}
.card-time.warn{color:var(--warning)} .card-time.danger{color:var(--danger);font-weight:700}
.kanban-add-btn{width:100%;padding:6px;border:1px dashed var(--border);border-radius:var(--r-md);background:none;color:var(--text-m);font-size:.76rem;display:flex;align-items:center;justify-content:center;gap:5px;transition:var(--tr);cursor:pointer;margin-top:2px}
.kanban-add-btn:hover{border-color:var(--gold);color:var(--gold-d);background:rgba(247,183,44,.05)}
.col-novo{border-top:3px solid var(--blue)} .col-contactado{border-top:3px solid #06b6d4}
.col-orcamento{border-top:3px solid var(--purple)} .col-negociacao{border-top:3px solid var(--warning)}
.col-fatura_enviada{border-top:3px solid var(--gold)} .col-aguardar_pagamento{border-top:3px solid #f97316}
.col-concluido{border-top:3px solid var(--success)} .col-perdido{border-top:3px solid var(--danger)}

/* TABLE */
.table-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm)}
.data-table{width:100%;border-collapse:collapse}
.data-table th{background:var(--bg-page);padding:10px 14px;text-align:left;font-size:.72rem;font-weight:800;color:var(--text-m);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border)}
.data-table td{padding:12px 14px;border-bottom:1px solid var(--border);font-size:.82rem;vertical-align:middle}
.data-table tr:last-child td{border-bottom:none}
.data-table tr:hover td{background:var(--bg-page);cursor:pointer}
.badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;font-size:.67rem;font-weight:800;text-transform:capitalize}
.badge-novo{background:rgba(63,169,245,.1);color:var(--blue-d)}
.badge-contactado{background:rgba(6,182,212,.1);color:#0891b2}
.badge-orcamento{background:rgba(139,92,246,.1);color:#7c3aed}
.badge-negociacao{background:rgba(245,158,11,.1);color:#d97706}
.badge-fatura_enviada{background:rgba(247,183,44,.14);color:var(--gold-d)}
.badge-aguardar_pagamento{background:rgba(249,115,22,.1);color:#ea580c}
.badge-concluido{background:rgba(16,185,129,.1);color:#059669}
.badge-perdido{background:rgba(239,68,68,.1);color:#dc2626}
.badge-agendada{background:rgba(63,169,245,.1);color:var(--blue-d)}
.badge-em_curso{background:rgba(245,158,11,.1);color:#d97706}
.badge-concluida{background:rgba(16,185,129,.1);color:#059669}
.badge-cancelada{background:rgba(239,68,68,.1);color:#dc2626}
.tbl-actions{display:flex;gap:4px}
.tbl-btn{background:none;border:1px solid var(--border);border-radius:var(--r-sm);padding:4px 7px;font-size:.73rem;color:var(--text-m);cursor:pointer;transition:var(--tr)}
.tbl-btn:hover{background:var(--gold);border-color:var(--gold);color:#000}
.table-actions{display:flex;gap:4px}
.table-action-btn{background:none;border:1px solid var(--border);border-radius:var(--r-sm);padding:5px 8px;font-size:.73rem;color:var(--text-m);cursor:pointer;transition:var(--tr)}
.table-action-btn:hover{background:var(--gold);border-color:var(--gold);color:#000}
/* Visão restrita: ocultar col-valor */
body.visao-restrita .col-valor{display:none!important}
.pagination{display:flex;align-items:center;justify-content:center;gap:5px;padding:12px;border-top:1px solid var(--border)}
.pg-btn{width:28px;height:28px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg-card);color:var(--text-2);cursor:pointer;font-size:.78rem;display:flex;align-items:center;justify-content:center;transition:var(--tr)}
.pg-btn:hover,.pg-btn.active{background:var(--gold);border-color:var(--gold);color:#000;font-weight:800}

/* CALENDAR */
.cal-container,#calContainer{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);min-height:460px}
.cal-nav{display:flex;align-items:center;gap:6px}
.btn-nav{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);padding:7px 10px;color:var(--text-2);font-size:.8rem;cursor:pointer;transition:var(--tr)}
.btn-nav:hover{background:var(--gold);border-color:var(--gold);color:#000}
#calPeriod{font-size:.96rem;font-weight:700;min-width:160px;text-align:center;color:var(--text-1)}
.today-btn{padding:7px 12px;font-size:.78rem}
.cal-views-btns{display:flex;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}
.cal-view-btn{padding:7px 12px;font-size:.76rem;font-weight:600;border:none;background:none;color:var(--text-2);cursor:pointer;transition:var(--tr)}
.cal-view-btn.active{background:var(--gold);color:#000;font-weight:800}
.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--bg-page);border-bottom:1px solid var(--border)}
.cal-weekday{padding:9px;text-align:center;font-size:.7rem;font-weight:800;color:var(--text-m);text-transform:uppercase}
.cal-days-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.cal-day{min-height:92px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:7px;cursor:pointer;transition:var(--tr)}
.cal-day:hover{background:rgba(247,183,44,.05)}
.cal-day:nth-child(7n){border-right:none}
.cal-day.other-month{opacity:.36}
.cal-day.today{background:rgba(247,183,44,.07)}
.cal-day-num{font-size:.78rem;font-weight:700;color:var(--text-2);margin-bottom:3px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}
.cal-day.today .cal-day-num{background:var(--gold);color:#000;border-radius:50%}
.cal-ev{font-size:.66rem;padding:2px 5px;border-radius:4px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.cal-week-wrap{display:flex;overflow-x:auto}
.cal-time-col{width:54px;flex-shrink:0;padding-top:46px}
.cal-ts{height:60px;font-size:.66rem;color:var(--text-m);text-align:right;padding-right:7px;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;padding-top:2px}
.cal-day-col{flex:1;min-width:100px;border-left:1px solid var(--border);position:relative}
.cal-day-col-hdr{text-align:center;padding:8px 4px;font-size:.76rem;font-weight:700;border-bottom:2px solid var(--border)}
.cal-day-col-hdr.today{color:var(--gold-d);border-bottom-color:var(--gold)}
.cal-hr{height:60px;border-bottom:1px solid var(--border)}
.cal-hr:hover{background:rgba(247,183,44,.04)}
.cal-ev-block{position:absolute;left:3px;right:3px;border-radius:6px;padding:3px 6px;font-size:.68rem;font-weight:700;color:#fff;overflow:hidden;cursor:pointer;z-index:5;transition:var(--tr)}
.cal-ev-block:hover{transform:scale(1.02);box-shadow:var(--sh-md)}
.cal-agenda-wrap{padding:16px}
.agenda-day-hdr{font-size:.83rem;font-weight:800;color:var(--text-2);margin-bottom:7px;padding-bottom:7px;border-bottom:1px solid var(--border);margin-top:16px}
.agenda-day-hdr:first-child{margin-top:0}
.agenda-item{display:flex;align-items:center;gap:10px;padding:10px;background:var(--bg-page);border-radius:var(--r-md);margin-bottom:5px;cursor:pointer;transition:var(--tr)}
.agenda-item:hover{transform:translateX(4px)}
.agenda-time{font-size:.74rem;font-weight:800;color:var(--text-2);min-width:88px}
.agenda-col-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.agenda-title{font-size:.84rem;font-weight:700}
.agenda-sub{font-size:.71rem;color:var(--text-m)}

/* MAP */
.map-layout{display:grid;grid-template-columns:272px 1fr;gap:16px;height:calc(100vh - 195px)}
.map-side{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px;overflow-y:auto;box-shadow:var(--sh-sm)}
.map-side h3{font-size:.94rem;font-weight:700;margin-bottom:11px}
.map-list{display:flex;flex-direction:column;gap:6px}
.map-item{padding:10px;background:var(--bg-page);border-radius:var(--r-md);cursor:pointer;transition:var(--tr);border-left:4px solid transparent}
.map-item:hover{border-left-color:var(--gold);background:rgba(247,183,44,.06)}
.map-item-title{font-size:.78rem;font-weight:700;margin-bottom:2px}
.map-item-sub{font-size:.68rem;color:var(--text-m)}
.map-main-area{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-md)}
.map-stats-box{margin-top:13px;padding-top:13px;border-top:1px solid var(--border)}
.map-stat{display:flex;justify-content:space-between;font-size:.78rem;padding:3px 0;color:var(--text-2)}

/* TECHNICIANS */
.technicians-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(264px,1fr));gap:16px}
.tech-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--sh-sm);transition:var(--tr);transform-style:preserve-3d}
.tech-card:hover{transform:translateY(-5px) rotateX(2deg);box-shadow:var(--sh-lg)}
.tech-card-hdr{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.tech-avatar-lg{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.05rem;font-weight:800;color:#fff;flex-shrink:0}
.tech-name-el{font-size:.94rem;font-weight:700}
.tech-spec{font-size:.73rem;color:var(--text-m)}
.tech-zona{font-size:.7rem;color:var(--blue);font-weight:600;margin-top:2px}
.tech-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:13px}
.tech-stat{background:var(--bg-page);border-radius:var(--r-md);padding:10px;text-align:center}
.tech-stat-v{font-size:1.2rem;font-weight:800}
.tech-stat-l{font-size:.64rem;color:var(--text-m);margin-top:2px}
.tech-rating{display:flex;align-items:center;gap:5px;font-size:.82rem}
.stars{color:var(--gold)}
.tech-btns{display:flex;gap:6px;margin-top:13px}
.tech-btn{flex:1;padding:7px;border-radius:var(--r-md);border:1px solid var(--border);background:none;font-size:.74rem;color:var(--text-2);cursor:pointer;transition:var(--tr)}
.tech-btn:hover{background:var(--gold);border-color:var(--gold);color:#000}

/* LEADS HUB */
.hub-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.hub-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--sh-sm)}
.hub-card.full-w{grid-column:1/-1}
.hub-card-hdr{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}
.hub-card-hdr h3{font-size:.94rem;font-weight:700;margin-bottom:3px}
.hub-card-hdr p{font-size:.78rem;color:var(--text-2)}
.hub-icon{width:40px;height:40px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:.96rem;flex-shrink:0}
.hub-icon.yellow{background:rgba(247,183,44,.13);color:var(--gold-d)}
.hub-icon.blue{background:rgba(63,169,245,.13);color:var(--blue-d)}
.hub-icon.green{background:rgba(16,185,129,.13);color:var(--success)}
.quick-paste-ta{width:100%;min-height:126px;border:1px solid var(--border);border-radius:var(--r-md);padding:10px;font-family:inherit;font-size:.82rem;background:var(--bg-input);color:var(--text-1);resize:vertical;outline:none;margin-bottom:9px;transition:var(--tr)}
.quick-paste-ta:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(247,183,44,.1)}
.parse-preview-box{background:rgba(16,185,129,.07);border:1px solid rgba(16,185,129,.22);border-radius:var(--r-md);padding:12px}
.parse-row{display:flex;justify-content:space-between;font-size:.78rem;padding:4px 0;border-bottom:1px solid rgba(16,185,129,.11)}
.parse-row:last-child{border-bottom:none}
.parse-lbl{color:var(--text-m)} .parse-val{font-weight:700}
.olx-status-box .status-dot{display:flex;align-items:center;gap:7px;font-size:.82rem;font-weight:700;margin-bottom:11px}
.status-dot.offline{color:var(--danger)} .status-dot.online{color:var(--success)}
.status-dot i{font-size:.44rem}
/* HUB TEMPLATES CARD */
.hub-templates-card{padding:20px}
.hub-templates-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.tmpl-count-badge{font-size:.72rem;font-weight:800;padding:4px 12px;border-radius:999px;background:rgba(16,185,129,.1);color:#059669;border:1px solid rgba(16,185,129,.2);flex-shrink:0}

/* TEMPLATES GRID */
.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}

.tmpl-card{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:10px;
  transition:var(--tr);
  box-shadow:var(--sh-sm);
  position:relative;
  overflow:hidden;
}
.tmpl-card::before{
  content:'';
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,var(--gold),var(--gold-d));
  opacity:0;
  transition:var(--tr);
}
.tmpl-card:hover{transform:translateY(-3px);box-shadow:var(--sh-md);border-color:var(--border-h)}
.tmpl-card:hover::before{opacity:1}

/* Top row: icon + meta */
.tmpl-top{display:flex;align-items:flex-start;gap:10px}
.tmpl-icon-wrap{
  width:38px;height:38px;border-radius:var(--r-md);
  display:flex;align-items:center;justify-content:center;
  font-size:.9rem;flex-shrink:0;
}
.tmpl-meta{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}
.tmpl-cat-badge{
  display:inline-flex;align-items:center;
  font-size:.62rem;font-weight:800;
  padding:2px 8px;border-radius:999px;
  letter-spacing:.3px;text-transform:uppercase;
  width:fit-content;
}
.tmpl-usage{font-size:.66rem;color:var(--text-m);font-weight:500}

/* Title & subtitle */
.tmpl-title{font-size:.88rem;font-weight:800;color:var(--text-1);line-height:1.2;margin:0}
.tmpl-subtitle{font-size:.72rem;color:var(--text-2);line-height:1.4;margin:0}

/* Preview text — clamped */
.tmpl-preview{
  font-size:.74rem;color:var(--text-m);
  line-height:1.6;
  background:var(--bg-page);
  border-radius:var(--r-sm);
  padding:10px 12px;
  border:1px solid var(--border);
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  flex:1;
}

/* Footer actions */
.tmpl-footer{display:flex;align-items:center;gap:8px;margin-top:2px}
.tmpl-expand-btn{
  flex:1;
  padding:7px 10px;
  border:1px solid var(--border);
  border-radius:var(--r-md);
  background:none;
  font-size:.74rem;
  font-weight:600;
  color:var(--text-2);
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:5px;
  transition:var(--tr);
}
.tmpl-expand-btn:hover{border-color:var(--blue);color:var(--blue);background:rgba(63,169,245,.06)}
.tmpl-copy-btn{
  flex:1;
  padding:7px 10px;
  border:none;
  border-radius:var(--r-md);
  background:linear-gradient(135deg,var(--gold),var(--gold-d));
  font-size:.74rem;
  font-weight:700;
  color:#000;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:5px;
  transition:var(--tr);
  box-shadow:0 2px 8px rgba(247,183,44,.25);
}
.tmpl-copy-btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(247,183,44,.38)}
.tmpl-copy-btn.copied{background:linear-gradient(135deg,var(--success),#059669);box-shadow:0 2px 8px rgba(16,185,129,.3);color:#fff}

/* TEMPLATE MODAL */
.tmpl-modal-overlay{
  position:fixed;inset:0;
  background:rgba(0,0,0,.5);
  backdrop-filter:blur(6px);
  z-index:8000;
  display:flex;align-items:center;justify-content:center;
  padding:20px;
  opacity:0;pointer-events:none;
  transition:opacity .22s ease;
}
.tmpl-modal-overlay.active{opacity:1;pointer-events:all}
.tmpl-modal-box{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  width:100%;max-width:560px;
  max-height:88vh;
  display:flex;flex-direction:column;
  box-shadow:var(--sh-xl);
  overflow:hidden;
  transform:scale(.96);
  transition:transform .22s cubic-bezier(.34,1.56,.64,1);
}
.tmpl-modal-overlay.active .tmpl-modal-box{transform:scale(1)}
.tmpl-modal-header{
  display:flex;align-items:center;gap:14px;
  padding:18px 20px;
  border-bottom:1px solid var(--border);
  flex-shrink:0;
}
.tmpl-modal-icon{
  width:42px;height:42px;border-radius:var(--r-md);
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;flex-shrink:0;
}
.tmpl-modal-title{font-size:1rem;font-weight:800;color:var(--text-1);margin-bottom:2px}
.tmpl-modal-sub{font-size:.74rem;color:var(--text-m)}
.tmpl-modal-close{
  margin-left:auto;width:32px;height:32px;
  border-radius:var(--r-sm);border:1px solid var(--border);
  background:none;color:var(--text-m);
  display:flex;align-items:center;justify-content:center;
  font-size:.78rem;cursor:pointer;transition:var(--tr);flex-shrink:0;
}
.tmpl-modal-close:hover{background:rgba(239,68,68,.07);border-color:var(--danger);color:var(--danger)}
.tmpl-modal-body{flex:1;overflow-y:auto;padding:20px;scrollbar-width:thin}
.tmpl-modal-text{
  font-family:'Inter',sans-serif;
  font-size:.84rem;
  line-height:1.8;
  color:var(--text-1);
  white-space:pre-wrap;
  background:var(--bg-page);
  border:1px solid var(--border);
  border-radius:var(--r-md);
  padding:16px;
  margin:0;
}
.tmpl-modal-footer{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 20px;
  border-top:1px solid var(--border);
  flex-shrink:0;
  flex-wrap:wrap;
}
.tmpl-modal-hint{font-size:.72rem;color:var(--text-m);display:flex;align-items:center;gap:5px;flex:1}
.tmpl-modal-hint i{color:var(--blue);font-size:.76rem}
.tmpl-modal-copy-btn{
  padding:9px 18px;
  border:none;border-radius:var(--r-md);
  background:linear-gradient(135deg,var(--gold),var(--gold-d));
  color:#000;font-size:.82rem;font-weight:700;
  cursor:pointer;
  display:flex;align-items:center;gap:7px;
  box-shadow:var(--sh-gold);transition:var(--tr);
  flex-shrink:0;
}
.tmpl-modal-copy-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(247,183,44,.4)}

/* USERS */
.users-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.hierarchy-card,.users-list-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--sh-sm)}
.hierarchy-card h3,.users-list-card h3{font-size:.94rem;font-weight:800;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.hierarchy-tree{display:flex;flex-direction:column;align-items:center;gap:0;margin-bottom:20px}
.hier-node{display:flex;align-items:flex-start;gap:11px;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-md);padding:11px 14px;width:100%;max-width:320px}
.hier-badge{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.94rem;flex-shrink:0}
.hier-badge.admin{background:rgba(247,183,44,.2)}
.hier-badge.gestor{background:rgba(63,169,245,.15)}
.hier-badge.comercial{background:rgba(16,185,129,.15)}
.hier-badge.tecnico{background:rgba(245,158,11,.15)}
.hier-badge.viewer{background:rgba(139,92,246,.15)}
.hier-node strong{font-size:.84rem;display:block;margin-bottom:2px}
.hier-desc{font-size:.72rem;color:var(--text-2);line-height:1.5}
.hier-arrow{color:var(--text-m);font-size:.78rem;margin:5px 0}
.hier-split{display:grid;grid-template-columns:1fr 1fr;gap:9px;width:100%;max-width:360px}
.hier-split .hier-node{max-width:100%}
.permissions-table-wrap{overflow-x:auto;margin-top:2px}
.perm-table{width:100%;border-collapse:collapse;font-size:.76rem}
.perm-table th{background:var(--bg-page);padding:7px 9px;text-align:left;font-weight:800;color:var(--text-m);font-size:.68rem;text-transform:uppercase;border-bottom:1px solid var(--border)}
.perm-table td{padding:6px 9px;border-bottom:1px solid var(--border)}
.perm-table tr:last-child td{border-bottom:none}
.perm-table td.y{text-align:center} .perm-table td.n{text-align:center;opacity:.35}
.users-list{display:flex;flex-direction:column;gap:9px}
.user-row{display:flex;align-items:center;gap:11px;padding:12px;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-md);transition:var(--tr)}
.user-row:hover{border-color:var(--border-h);box-shadow:var(--sh-sm)}
.user-row-avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.84rem;font-weight:800;color:#fff;flex-shrink:0}
.user-row-name{font-size:.86rem;font-weight:700}
.user-row-email{font-size:.72rem;color:var(--text-m)}
.user-row-actions{display:flex;gap:4px;margin-left:auto;flex-shrink:0}
.user-action-btn{background:none;border:1px solid var(--border);border-radius:var(--r-sm);padding:4px 7px;font-size:.72rem;color:var(--text-m);cursor:pointer;transition:var(--tr)}
.user-action-btn:hover{background:var(--gold);border-color:var(--gold);color:#000}
.user-action-btn.danger:hover{background:var(--danger);border-color:var(--danger);color:#fff}
.inactive-badge{font-size:.64rem;padding:2px 7px;border-radius:999px;background:rgba(239,68,68,.1);color:var(--danger);font-weight:700}

/* USER CARD (nova versão) */
.user-card{display:flex;align-items:center;gap:12px;padding:13px 14px;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-md);transition:var(--tr);position:relative}
.user-card:hover{border-color:var(--border-h);box-shadow:var(--sh-sm)}
.user-card.inactive{opacity:.55}
.user-card-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.88rem;font-weight:800;color:#fff;flex-shrink:0}
.user-card-info{flex:1;min-width:0}
.user-card-name{font-size:.86rem;font-weight:700;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.user-card-email{font-size:.72rem;color:var(--text-m);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-card-status{font-size:.66rem;font-weight:700;display:flex;align-items:center;gap:4px;flex-shrink:0}
.user-card-status.active{color:var(--success)}
.user-card-status.inactive{color:var(--danger)}
.user-card-status i{font-size:.4rem}
.user-card-actions{display:flex;gap:4px;flex-shrink:0;margin-left:8px}
.icon-btn{width:30px;height:30px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg-card);display:flex;align-items:center;justify-content:center;font-size:.72rem;color:var(--text-2);cursor:pointer;transition:var(--tr)}
.icon-btn:hover{border-color:var(--gold);color:var(--gold-d);background:rgba(247,183,44,.07)}
.icon-btn.warn:hover{border-color:var(--warning);color:var(--warning);background:rgba(245,158,11,.07)}
.icon-btn.danger:hover{border-color:var(--danger);color:var(--danger);background:rgba(239,68,68,.07)}
.icon-btn.ok:hover{border-color:var(--success);color:var(--success);background:rgba(16,185,129,.07)}
.tag-me{font-size:.6rem;font-weight:800;padding:2px 6px;border-radius:999px;background:rgba(247,183,44,.2);color:var(--gold-d)}
.tag-demo{font-size:.6rem;font-weight:800;padding:2px 6px;border-radius:999px;background:rgba(139,92,246,.15);color:#7c3aed}
.users-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px;color:var(--text-m);font-size:.84rem}
.users-empty i{font-size:1.8rem;opacity:.4}

/* NOTIFICATION UNREAD DOT */
.notif-unread-dot{width:8px;height:8px;border-radius:50%;background:var(--gold);flex-shrink:0;align-self:flex-start;margin-top:4px}

/* PROFILE MODAL */
.profile-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border)}
.profile-avatar-lg{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:800;color:#fff;flex-shrink:0;box-shadow:var(--sh-md)}
.profile-info h3{font-size:1.1rem;font-weight:800;margin-bottom:4px}
.profile-email{font-size:.8rem;color:var(--text-m);display:flex;align-items:center;gap:6px;margin-bottom:8px}
.profile-perms{margin-bottom:16px}
.profile-perms h4{font-size:.8rem;font-weight:800;color:var(--text-2);margin-bottom:10px;display:flex;align-items:center;gap:7px}
.perm-chips{display:flex;flex-wrap:wrap;gap:7px}
.perm-chip{font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:999px;background:rgba(63,169,245,.1);color:var(--blue-d);display:flex;align-items:center;gap:5px}
.perm-chip.green{background:rgba(16,185,129,.1);color:var(--success)}
.perm-chip.blue{background:rgba(63,169,245,.12);color:var(--blue-d)}
.perm-chip.danger{background:rgba(239,68,68,.1);color:var(--danger)}
.perm-chip.gold{background:rgba(247,183,44,.15);color:var(--gold-d)}

/* NUTZERWAHL PWGroup */
#nuPwGroup{transition:var(--tr)}

/* DB STAT ITEM (fix rename) */
.db-stat-item{display:flex;align-items:center;gap:9px;font-size:.82rem;color:var(--text-2);background:var(--bg-page);padding:9px 11px;border-radius:var(--r-md)}
.db-stat-item i{width:18px;text-align:center;color:var(--gold-d)}

/* LOGIN SHAKE ANIMATION */
@keyframes shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}

/* SETTINGS */
.settings-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.settings-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--sh-sm)}
.settings-card h3{font-size:.94rem;font-weight:800;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.settings-form{display:flex;flex-direction:column;gap:8px}
.settings-form label{font-size:.76rem;font-weight:700;color:var(--text-2);margin-top:4px}
.settings-form input{padding:9px 11px;border:1px solid var(--border);border-radius:var(--r-md);font-size:.83rem;background:var(--bg-input);color:var(--text-1);outline:none;transition:var(--tr)}
.settings-form input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(247,183,44,.1)}
.db-stats-box{display:flex;flex-direction:column;gap:8px}
.db-stat-row{display:flex;align-items:center;gap:9px;font-size:.82rem;color:var(--text-2);background:var(--bg-page);padding:9px 11px;border-radius:var(--r-md)}
.db-stat-row i{width:18px;text-align:center;color:var(--gold-d)}

/* DRAWER */
.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);backdrop-filter:blur(3px);z-index:200;opacity:0;pointer-events:none;transition:var(--tr)}
.drawer-overlay.active{opacity:1;pointer-events:all}
.customer-drawer{position:fixed;top:0;right:0;bottom:0;width:460px;max-width:95vw;background:var(--bg-card);z-index:201;transform:translateX(100%);transition:transform .32s cubic-bezier(.4,0,.2,1);box-shadow:var(--sh-xl);display:flex;flex-direction:column}
.customer-drawer.open{transform:translateX(0)}
.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--border)}
.drawer-title{font-size:1.05rem;font-weight:800}
.drawer-hdr-actions{display:flex;gap:6px}
.drawer-btn,.drawer-close{width:33px;height:33px;border-radius:var(--r-md);border:1px solid var(--border);background:none;display:flex;align-items:center;justify-content:center;font-size:.86rem;color:var(--text-2);cursor:pointer;transition:var(--tr)}
.drawer-btn:hover{color:var(--blue);background:rgba(63,169,245,.07)}
.drawer-close:hover{color:var(--danger);background:rgba(239,68,68,.07)}
#drawerWA:hover{color:#25D366;background:rgba(37,211,102,.07)}
.drawer-body{flex:1;overflow-y:auto;padding:20px;scrollbar-width:thin}
.drawer-section{margin-bottom:20px}
.drawer-sec-title{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--text-m);margin-bottom:9px}
.drawer-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.dinfo-item{background:var(--bg-page);border-radius:var(--r-md);padding:10px}
.dinfo-label{font-size:.66rem;color:var(--text-m);font-weight:600;margin-bottom:2px}
.dinfo-val{font-size:.84rem;font-weight:700}
.qa-row{display:flex;flex-wrap:wrap;gap:6px}
.qa-btn{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-page);font-size:.74rem;font-weight:700;color:var(--text-2);cursor:pointer;transition:var(--tr);display:flex;align-items:center;gap:5px}
.qa-btn:hover{background:var(--gold);border-color:var(--gold);color:#000}
.qa-btn.wa:hover{background:#25D366;border-color:#25D366;color:#fff}
.qa-btn.green:hover{background:var(--success);border-color:var(--success);color:#fff}
.etapa-sel{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:var(--r-md);font-size:.83rem;background:var(--bg-input);color:var(--text-1);outline:none}
.etapa-sel:focus{border-color:var(--gold)}
.timeline{display:flex;flex-direction:column}
.tl-item{display:flex;gap:10px;padding-bottom:13px;position:relative}
.tl-item::before{content:'';position:absolute;left:12px;top:25px;bottom:0;width:2px;background:var(--border)}
.tl-item:last-child::before{display:none}
.tl-icon{width:25px;height:25px;border-radius:50%;background:rgba(63,169,245,.11);color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:.62rem;flex-shrink:0;z-index:1}
.tl-icon.gold{background:rgba(247,183,44,.13);color:var(--gold-d)}
.tl-icon.green{background:rgba(16,185,129,.13);color:var(--success)}
.tl-icon.red{background:rgba(239,68,68,.11);color:var(--danger)}
.tl-desc{font-size:.78rem;line-height:1.5}
.tl-time{font-size:.66rem;color:var(--text-m);margin-top:2px}
.tl-input-row{display:flex;gap:6px;margin-top:9px}
.tl-input{flex:1;border:1px solid var(--border);border-radius:var(--r-md);padding:7px 10px;font-size:.78rem;background:var(--bg-input);color:var(--text-1);outline:none}
.tl-input:focus{border-color:var(--gold)}
.tl-add-btn{padding:7px 12px;border:none;border-radius:var(--r-md);background:var(--gold);color:#000;font-weight:800;font-size:.76rem;cursor:pointer}

/* MODALS */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);z-index:400;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:var(--tr);padding:16px}
.modal-overlay.active{opacity:1;pointer-events:all}
.modal{background:var(--bg-card);border-radius:var(--r-xl);width:100%;max-width:530px;max-height:92vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--sh-xl);animation:modalIn .25s cubic-bezier(.4,0,.2,1)}
.modal.modal-lg{max-width:680px}
@keyframes modalIn{from{opacity:0;transform:scale(.94) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--border)}
.modal-header h2{font-size:1.02rem;font-weight:800;display:flex;align-items:center;gap:9px}
.modal-close{background:none;border:none;font-size:.92rem;color:var(--text-m);cursor:pointer;padding:4px;border-radius:var(--r-sm);transition:var(--tr)}
.modal-close:hover{color:var(--danger)}
.modal-body{flex:1;overflow-y:auto;padding:20px}
.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:13px 20px;border-top:1px solid var(--border)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.form-group{display:flex;flex-direction:column;gap:5px}
.form-group.full-w{grid-column:1/-1}
.form-group label{font-size:.74rem;font-weight:700;color:var(--text-2)}
.form-group input,.form-group select,.form-group textarea{padding:9px 10px;border:1px solid var(--border);border-radius:var(--r-md);font-size:.83rem;background:var(--bg-input);color:var(--text-1);outline:none;transition:var(--tr);font-family:inherit}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(247,183,44,.1)}
.form-group textarea{min-height:72px;resize:vertical}
.checklist{display:flex;flex-direction:column;gap:6px}
.chk-item{display:flex;align-items:center;gap:8px;padding:8px;background:var(--bg-page);border-radius:var(--r-md);font-size:.81rem;cursor:pointer}
.chk-item input[type=checkbox]{width:15px;height:15px;accent-color:var(--gold)}
.star-row{display:flex;gap:3px}
.star-b{background:none;border:none;font-size:1.25rem;color:var(--border);cursor:pointer;transition:var(--tr)}
.star-b.active,.star-b:hover{color:var(--gold)}

/* TOASTS */
.toast-container{position:fixed;bottom:20px;right:20px;z-index:9000;display:flex;flex-direction:column;gap:8px}
.toast{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 15px;display:flex;align-items:center;gap:9px;box-shadow:var(--sh-lg);font-size:.84rem;min-width:260px;max-width:360px;animation:toastIn .26s ease}
@keyframes toastIn{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}
@keyframes toastOut{to{opacity:0;transform:translateX(16px)}}
.toast-icon{font-size:.94rem}
.toast.success{border-left:4px solid var(--success)} .toast.success .toast-icon{color:var(--success)}
.toast.error{border-left:4px solid var(--danger)} .toast.error .toast-icon{color:var(--danger)}
.toast.warning{border-left:4px solid var(--warning)} .toast.warning .toast-icon{color:var(--warning)}
.toast.info{border-left:4px solid var(--blue)} .toast.info .toast-icon{color:var(--blue)}

/* CELEBRATION */
.celeb-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:9990;pointer-events:all}
.celeb-box{background:var(--bg-card);border:2px solid var(--gold);border-radius:var(--r-xl);padding:42px 56px;text-align:center;box-shadow:var(--sh-xl);animation:celebIn .42s cubic-bezier(.34,1.56,.64,1)}
@keyframes celebIn{from{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}
.celeb-emoji{font-size:3.6rem;margin-bottom:9px}
.celeb-title{font-size:1.4rem;font-weight:800;color:var(--gold-d)}
.celeb-sub{font-size:.86rem;color:var(--text-2);margin-top:6px}
.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;text-align:center;color:var(--text-m);gap:9px}
.empty-state i{font-size:1.7rem;opacity:.42}
.empty-state p{font-size:.84rem}

/* RESPONSIVE */
@media(max-width:1200px){.kpi-grid,.kpi-admin-grid,.kpi-restrito-grid{grid-template-columns:repeat(2,1fr)}.charts-row{grid-template-columns:1fr}.dashboard-bottom{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.sidebar{transform:translateX(-100%)}.sidebar.mobile-open{transform:translateX(0)}.main-content{margin-left:0!important}.mobile-menu-btn{display:flex}.kpi-grid{grid-template-columns:1fr 1fr}.hub-layout,.settings-layout,.users-layout{grid-template-columns:1fr}.map-layout{grid-template-columns:1fr}.hier-split{grid-template-columns:1fr}}
@media(max-width:600px){.view{padding:13px}.topbar{padding:0 13px}.topbar-center{display:none}.kpi-grid,.kpi-admin-grid,.kpi-restrito-grid{grid-template-columns:1fr}.customer-drawer{width:100%}.modal{max-width:100%;border-radius:var(--r-lg) var(--r-lg) 0 0;max-height:95vh}.modal-overlay{align-items:flex-end;padding:0}.form-grid{grid-template-columns:1fr}.notif-panel{width:calc(100vw - 16px);right:-8px}.dashboard-bottom{grid-template-columns:1fr}}
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}
::-webkit-scrollbar-thumb:hover{background:var(--gold)}
.leaflet-container{font-family:'Inter',sans-serif}
.leaflet-popup-content-wrapper{border-radius:var(--r-md)!important;box-shadow:var(--sh-lg)!important}

/* ============================================================
   FUNNEL AI — Painel de Inteligência + Cards AI
   ============================================================ */

/* Layout do Kanban com sidebar de IA */
.kanban-ai-layout{display:flex;gap:14px;align-items:flex-start;min-height:calc(100vh - 200px)}
.funnel-intel-sidebar{width:264px;flex-shrink:0;position:sticky;top:0;max-height:calc(100vh - 200px);overflow-y:auto;scrollbar-width:thin}
.kanban-board-wrap{flex:1;min-width:0;overflow-x:auto}
.kanban-board-wrap .kanban-board{min-height:calc(100vh - 215px)}

/* Intel Panel */
.intel-panel-inner{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-md);overflow:hidden}
.intel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:linear-gradient(135deg,rgba(247,183,44,.08),rgba(63,169,245,.08));border-bottom:1px solid var(--border)}
.intel-header-title{display:flex;align-items:center;gap:7px;font-size:.8rem;font-weight:800;color:var(--text-1)}
.intel-header-title i{color:var(--gold)}
.intel-version{font-size:.62rem;background:rgba(247,183,44,.15);color:var(--gold-d);padding:1px 6px;border-radius:999px;font-weight:700}
.intel-toggle-btn{background:none;border:none;color:var(--text-m);font-size:.78rem;padding:3px 6px;border-radius:var(--r-sm);transition:var(--tr)}
.intel-toggle-btn:hover{background:var(--bg-page);color:var(--text-1)}
.intel-body{padding:12px}
.intel-loading{display:flex;align-items:center;gap:8px;padding:20px;color:var(--text-m);font-size:.8rem}
.intel-loading i{color:var(--gold)}

/* KPIs do painel */
.intel-kpis{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:12px}
.intel-kpi{background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-md);padding:9px 10px;text-align:center}
.intel-kpi.danger-kpi{background:rgba(239,68,68,.06);border-color:rgba(239,68,68,.2)}
.intel-kpi-val{font-size:.92rem;font-weight:800;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.intel-kpi-label{font-size:.62rem;color:var(--text-m);font-weight:600;margin-top:2px}

/* Secções do painel */
.intel-section{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.intel-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}
.intel-section-title{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:800;color:var(--text-2);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}
.intel-section-title i{color:var(--gold)}
.intel-collapsible{cursor:pointer;user-select:none}
.intel-collapsible:hover{color:var(--text-1)}

/* Perfis psicográficos */
.intel-profiles{display:flex;flex-direction:column;gap:6px}
.intel-profile-bar{display:flex;flex-direction:column;gap:3px}
.intel-profile-label{display:flex;justify-content:space-between;align-items:center;font-size:.7rem}
.intel-profile-count{font-weight:700;color:var(--text-2)}
.intel-bar-track{height:4px;background:var(--border);border-radius:999px;overflow:hidden}
.intel-bar-fill{height:100%;border-radius:999px;transition:width .5s cubic-bezier(.4,0,.2,1)}

/* "Contactar agora" */
.intel-next-best{display:flex;align-items:center;gap:9px;padding:9px;background:linear-gradient(135deg,rgba(247,183,44,.06),rgba(63,169,245,.06));border:1px solid rgba(247,183,44,.2);border-radius:var(--r-md);transition:var(--tr)}
.intel-next-best:hover{background:rgba(247,183,44,.1);border-color:var(--gold)}
.intel-score-bubble{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:800;color:#fff;flex-shrink:0}
.intel-next-name{font-size:.78rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.intel-next-meta{font-size:.67rem;color:var(--text-m)}
.intel-wa-btn{background:rgba(37,211,102,.12);border:1px solid rgba(37,211,102,.25);color:#25D366;border-radius:var(--r-sm);padding:6px 8px;font-size:.82rem;transition:var(--tr)}
.intel-wa-btn:hover{background:#25D366;color:#fff}

/* Em risco */
.intel-risk-list{display:flex;flex-direction:column;gap:5px}
.intel-risk-item{display:flex;align-items:center;gap:8px;padding:7px 9px;background:rgba(239,68,68,.04);border:1px solid rgba(239,68,68,.1);border-radius:var(--r-md);transition:var(--tr)}
.intel-risk-item:hover{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.2)}
.intel-risk-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.intel-risk-dot.high{background:var(--danger)}
.intel-risk-dot.medium{background:var(--warning)}
.intel-risk-name{font-size:.76rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.intel-risk-reason{font-size:.63rem;color:var(--text-m)}
.intel-risk-score{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:800;color:#fff;flex-shrink:0}

/* Métricas por etapa */
.intel-stage-metrics{display:flex;flex-direction:column;gap:4px;margin-top:6px}
.intel-stage-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--border)}
.intel-stage-row:last-child{border-bottom:none}
.intel-stage-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.intel-stage-name{font-size:.72rem;font-weight:600;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.intel-stage-stats{display:flex;align-items:center;gap:6px;flex-shrink:0}
.intel-stage-count{font-size:.7rem;font-weight:800;color:var(--text-1);background:var(--border);padding:1px 5px;border-radius:999px}
.intel-stage-days{font-size:.65rem;color:var(--text-m)}
.intel-stage-risk{font-size:.65rem;color:var(--warning)}

/* ===== CARDS KANBAN MELHORADOS ===== */

/* Layout geral dos cards */
.kanban-column{min-width:260px;max-width:278px;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-lg);display:flex;flex-direction:column;flex-shrink:0;max-height:calc(100vh - 225px)}
.kanban-column-header{padding:10px 12px;border-bottom:1px solid var(--border);background:var(--bg-card);border-radius:var(--r-lg) var(--r-lg) 0 0;border-left:3px solid var(--col-accent,var(--border))}
.col-stats{display:flex;align-items:center;gap:7px;margin-top:4px}
.col-valor{font-size:.72rem;font-weight:800;color:var(--gold-d)}
.col-score-avg{font-size:.68rem;font-weight:700}
.col-risk-badge{font-size:.66rem;background:rgba(245,158,11,.12);color:#d97706;padding:1px 5px;border-radius:999px;font-weight:700}
.kanban-column-body{flex:1;padding:8px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;scrollbar-width:thin}

/* Card urgência */
.card-urgency-bar{height:3px;border-radius:3px 3px 0 0;position:absolute;top:0;left:0;right:0}
.card-urgency-bar-ok{background:transparent}
.card-urgency-bar-warning{background:var(--warning)}
.card-urgency-bar-danger{background:var(--danger);animation:pulse-bar 1.5s ease-in-out infinite}

/* Card hover melhorado */
.kanban-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:10px 11px;cursor:grab;transition:all .18s cubic-bezier(.4,0,.2,1);box-shadow:var(--sh-sm);position:relative;overflow:hidden}
.kanban-card:hover{transform:translateY(-2px);box-shadow:var(--sh-md);border-color:var(--border-h);z-index:5}
.kanban-card.urgency-danger{border-left:2px solid var(--danger)}
.kanban-card.urgency-warning{border-left:2px solid var(--warning)}
.kanban-card:active{cursor:grabbing}
.kanban-card.sortable-ghost{opacity:.25}
.kanban-card.sortable-chosen{transform:scale(1.02) rotate(.5deg);box-shadow:var(--sh-lg)}

/* Card header */
.card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:4px}
.card-nome-wrap{display:flex;align-items:center;gap:5px;min-width:0}
.card-nome{font-size:.84rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-score-mini{font-size:.6rem;font-weight:800;color:#fff;padding:1px 4px;border-radius:4px;flex-shrink:0}
.card-prioridade{font-size:.78rem;flex-shrink:0}
.prio-alta{} .prio-media{} .prio-baixa{}
.card-produto{font-size:.74rem;color:var(--text-2);margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-valor-tag{font-size:.86rem;font-weight:800;color:var(--gold-d);margin-bottom:5px}

/* AI section no card */
.card-ai-section{border-top:1px dashed var(--border);margin-top:6px;padding-top:6px}
.card-score-row{display:flex;align-items:center;gap:5px;margin-bottom:4px;flex-wrap:wrap}
.card-score-badge{font-size:.65rem;font-weight:800;padding:2px 6px;border-radius:5px;display:flex;align-items:center;gap:3px}
.card-profile-tag{font-size:.65rem;font-weight:700}
.card-risk-tag{font-size:.65rem;padding:1px 4px;border-radius:4px}
.card-risk-tag.high{color:var(--danger);background:rgba(239,68,68,.1)}
.card-risk-tag.medium{color:var(--warning);background:rgba(245,158,11,.1)}
.card-copy-line{font-size:.68rem;color:var(--text-2);font-style:italic;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:help}
.card-ai-actions{display:flex;gap:4px}
.card-ai-action-btn{background:none;border:1px solid var(--border);border-radius:5px;padding:3px 6px;font-size:.68rem;color:var(--text-m);cursor:pointer;transition:var(--tr)}
.card-ai-action-btn:hover{background:var(--gold);border-color:var(--gold);color:#000}

/* Card footer */
.card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:6px}
.card-origem-tag{font-size:.64rem;background:rgba(63,169,245,.1);color:var(--blue-d);padding:2px 5px;border-radius:999px;font-weight:700}
.card-time-tag{font-size:.64rem;color:var(--text-m);display:flex;align-items:center;gap:3px}
.urgency-time-warning{color:var(--warning);font-weight:700}
.urgency-time-danger{color:var(--danger);font-weight:700;animation:pulse-color 1.5s ease-in-out infinite}
@keyframes pulse-color{0%,100%{opacity:1}50%{opacity:.5}}

/* Ações rápidas do card */
.card-quick-actions{display:flex;gap:4px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}
.card-quick-btn{background:none;border:1px solid var(--border);border-radius:5px;padding:4px 7px;font-size:.72rem;color:var(--text-m);cursor:pointer;transition:var(--tr);flex:1;display:flex;align-items:center;justify-content:center}
.card-quick-btn:hover{background:var(--bg-page);color:var(--text-1)}
.btn-call:hover{border-color:var(--success);color:var(--success);background:rgba(16,185,129,.08)}
.btn-whatsapp:hover{border-color:#25D366;color:#25D366;background:rgba(37,211,102,.08)}
.btn-fatura:hover{border-color:var(--gold);color:var(--gold-d);background:rgba(247,183,44,.08)}
.btn-nota:hover{border-color:var(--purple);color:var(--purple);background:rgba(139,92,246,.08)}
.btn-advance{background:none;border:1px solid var(--border);border-radius:5px;padding:4px 7px;font-size:.72rem;color:var(--text-m);cursor:pointer;transition:var(--tr)}
.btn-advance:hover{border-color:var(--blue);color:var(--blue);background:rgba(63,169,245,.08)}
.card-stage-move{flex:1}

/* ===== KANBAN VIEW TOGGLE ===== */
.kanban-view-toggle{display:flex;gap:2px;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-sm);padding:2px}
.kanban-view-btn{background:none;border:none;padding:4px 8px;border-radius:5px;font-size:.74rem;color:var(--text-m);cursor:pointer;transition:var(--tr);display:flex;align-items:center;gap:4px}
.kanban-view-btn.active,.kanban-view-btn:hover{background:var(--bg-card);color:var(--text-1);box-shadow:var(--sh-sm)}
.kanban-view-btn.active{color:var(--gold-d);font-weight:700}

/* Pipeline val no topbar */
.pipeline-val{font-size:.78rem;font-weight:700;color:var(--text-2);white-space:nowrap}
.pipeline-val strong{color:var(--gold-d)}

/* ===== KANBAN COLUMN BORDERS ===== */
.col-novo{--col-accent:var(--blue)} .col-contactado{--col-accent:#06b6d4}
.col-orcamento{--col-accent:var(--purple)} .col-negociacao{--col-accent:var(--warning)}
.col-fatura_enviada{--col-accent:var(--gold)} .col-aguardar_pagamento{--col-accent:#f97316}
.col-concluido{--col-accent:var(--success)} .col-perdido{--col-accent:var(--danger)}

/* ===== RESPONSIVE ===== */
@media(max-width:1400px){
  .kanban-ai-layout{flex-direction:column}
  .funnel-intel-sidebar{width:100%;max-height:none;position:static}
  .intel-kpis{grid-template-columns:repeat(4,1fr)}
  .intel-profiles{flex-direction:row;flex-wrap:wrap;gap:8px}
  .intel-profile-bar{min-width:120px;flex:1}
  .intel-next-best,.intel-risk-list{display:flex}
  .intel-risk-list{flex-direction:row;flex-wrap:wrap;gap:6px}
  .intel-risk-item{flex:1;min-width:200px}
}
@media(max-width:900px){
  .funnel-intel-sidebar{display:none}
  .kanban-ai-layout{gap:0}
}

/* hidden utility */
.hidden{display:none!important}

/* ============================================================
   ELIMINAR LEAD — Botão danger, zona de perigo, modal confirm
   ============================================================ */

/* Botão danger na tabela */
.table-action-btn.danger{color:var(--danger);border-color:transparent}
.table-action-btn.danger:hover{background:rgba(239,68,68,.1);border-color:var(--danger);color:var(--danger)}

/* Zona de perigo no drawer */
.drawer-danger-zone{border-top:1px solid rgba(239,68,68,.2);margin-top:8px;padding-top:4px}
.danger-delete-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;padding:11px 16px;background:rgba(239,68,68,.06);border:1.5px solid rgba(239,68,68,.25);border-radius:var(--r-md);color:var(--danger);font-size:.85rem;font-weight:700;cursor:pointer;transition:var(--tr)}
.danger-delete-btn:hover{background:rgba(239,68,68,.14);border-color:var(--danger);box-shadow:0 0 0 3px rgba(239,68,68,.1)}

/* Modal de confirmação de eliminação */
.delete-confirm-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s}
.delete-confirm-overlay.active{opacity:1}
.delete-confirm-box{background:var(--bg-card);border-radius:var(--r-lg);padding:32px 28px;max-width:380px;width:90%;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.3);transform:scale(.94);transition:transform .2s}
.delete-confirm-overlay.active .delete-confirm-box{transform:scale(1)}
.delete-confirm-icon{width:56px;height:56px;border-radius:50%;background:rgba(239,68,68,.1);border:2px solid rgba(239,68,68,.25);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:1.4rem;color:var(--danger)}
.delete-confirm-title{font-size:1.1rem;font-weight:900;color:var(--text-1);margin-bottom:8px}
.delete-confirm-msg{font-size:.85rem;color:var(--text-2);line-height:1.6;margin-bottom:24px}
.delete-confirm-actions{display:flex;gap:10px;justify-content:center}
.danger-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 22px;background:var(--danger);color:#fff;border:none;border-radius:var(--r-md);font-size:.88rem;font-weight:700;cursor:pointer;transition:var(--tr)}
.danger-btn:hover{background:#dc2626;box-shadow:0 4px 14px rgba(239,68,68,.4)}

/* ============================================================
   BRIEFING DIÁRIO
   ============================================================ */
.daily-briefing-wrap{margin-bottom:18px}
.daily-briefing{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-d) 100%);border-radius:var(--r-lg);padding:18px 22px;color:#000;box-shadow:var(--sh-gold)}
.briefing-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:6px}
.briefing-saudacao{font-size:1.05rem;font-weight:800}
.briefing-data{font-size:.8rem;opacity:.75;font-weight:600;text-transform:capitalize}
.briefing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
@media(max-width:700px){.briefing-grid{grid-template-columns:repeat(2,1fr)}}
.briefing-item{background:rgba(0,0,0,.08);border-radius:var(--r-md);padding:10px;text-align:center;transition:var(--tr)}
.briefing-item.destaque{background:rgba(255,255,255,.25);border:1.5px solid rgba(255,255,255,.4)}
.briefing-item.destaque-gold{background:rgba(255,255,255,.35);border:1.5px solid rgba(255,255,255,.5)}
.briefing-item.alerta{background:rgba(239,68,68,.2);border:1.5px solid rgba(239,68,68,.4)}
.briefing-item i{font-size:.9rem;opacity:.75;display:block;margin-bottom:4px}
.briefing-num{font-size:1.4rem;font-weight:900;line-height:1}
.briefing-label{font-size:.66rem;font-weight:600;opacity:.8;margin-top:3px;line-height:1.3}
.briefing-financeiro{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
@media(max-width:700px){.briefing-financeiro{grid-template-columns:repeat(2,1fr)}}
.briefing-fin-item{background:rgba(0,0,0,.1);border-radius:var(--r-sm);padding:8px 10px;display:flex;flex-direction:column;gap:2px}
.briefing-fin-label{font-size:.66rem;font-weight:700;opacity:.75}
.briefing-fin-val{font-size:.9rem;font-weight:800}
.briefing-fin-val.gold{color:#000}
.briefing-fin-val.green{color:#065f46}
.briefing-fin-val.orange{color:#7c2d12}
.briefing-fin-val.purple{color:#4c1d95}

/* ============================================================
   MÓDULO FINANCEIRO — VIEW
   ============================================================ */
.fin-tabs{display:flex;gap:6px;margin-bottom:18px;border-bottom:2px solid var(--border);padding-bottom:0}
.fin-tab-btn{background:none;border:none;border-bottom:3px solid transparent;padding:10px 18px;font-size:.88rem;font-weight:600;color:var(--text-2);cursor:pointer;transition:var(--tr);margin-bottom:-2px;display:flex;align-items:center;gap:7px;border-radius:var(--r-sm) var(--r-sm) 0 0}
.fin-tab-btn:hover{color:var(--text-1);background:var(--bg-page)}
.fin-tab-btn.active{color:var(--gold-d);border-bottom-color:var(--gold);background:rgba(247,183,44,.06)}
.fin-tab-content{display:none}
.fin-tab-content.active{display:block}
.fin-info-banner{display:flex;align-items:flex-start;gap:10px;background:rgba(63,169,245,.08);border:1px solid rgba(63,169,245,.2);border-radius:var(--r-md);padding:11px 14px;font-size:.8rem;color:var(--blue-d);margin-bottom:18px;line-height:1.5}
.fin-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:22px;box-shadow:var(--sh-sm)}
.fin-loading{display:flex;align-items:center;gap:10px;color:var(--text-m);justify-content:center;padding:30px}
.fin-section-title{display:flex;align-items:center;gap:10px;font-size:1rem;font-weight:800;margin-bottom:18px;color:var(--text-1)}
.fin-badge{font-size:.72rem;background:rgba(247,183,44,.15);color:var(--gold-d);padding:3px 10px;border-radius:999px;font-weight:700;border:1px solid rgba(247,183,44,.3)}

/* Cofres grid */
.fin-cofres-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px}
@media(max-width:800px){.fin-cofres-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.fin-cofres-grid{grid-template-columns:1fr}}
.fin-cofre{background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-md);padding:16px;display:flex;flex-direction:column;gap:6px;transition:var(--tr)}
.fin-cofre:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.fin-cofre-icon{width:38px;height:38px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:.95rem;margin-bottom:4px}
.fin-cofre-label{font-size:.75rem;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.4px}
.fin-cofre-val{font-size:1.25rem;font-weight:900;color:var(--text-1)}
.fin-cofre-val.lucro-val{color:#059669}
.fin-cofre-val.pendente-val{color:var(--blue-d)}
.fin-cofre-sub{font-size:.7rem;color:var(--text-m)}

/* Barra de distribuição */
.fin-breakdown-title{font-size:.82rem;font-weight:700;color:var(--text-2);margin-bottom:10px;text-transform:uppercase;letter-spacing:.4px}
.fin-bar-wrap{margin-bottom:20px}
.fin-bar{display:flex;height:28px;border-radius:var(--r-sm);overflow:hidden;box-shadow:var(--sh-sm)}
.fin-bar-seg{transition:width .6s cubic-bezier(.4,0,.2,1);min-width:2px}
.fin-bar-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:10px}
.fin-bar-legend-item{display:flex;align-items:center;gap:5px;font-size:.76rem;color:var(--text-2)}
.fin-leg-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.fin-leg-pct{font-weight:700;color:var(--text-1)}

/* Pendentes */
.fin-pendentes-title{font-size:.82rem;font-weight:700;color:var(--warning);margin:18px 0 10px;display:flex;align-items:center;gap:7px;text-transform:uppercase;letter-spacing:.4px}
.fin-pendentes-list{display:flex;flex-direction:column;gap:6px}
.fin-pendente-row{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-page);border-radius:var(--r-md);border:1px solid var(--border);transition:var(--tr)}
.fin-pendente-row:hover{border-color:var(--gold);box-shadow:var(--sh-sm)}
.fin-pend-name{font-weight:700;font-size:.84rem;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fin-pend-produto{font-size:.74rem;color:var(--text-2);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fin-pend-valor{font-weight:800;font-size:.9rem;color:var(--gold-d);white-space:nowrap}
.fin-pend-tempo{font-size:.72rem;color:var(--text-m);white-space:nowrap}
.fin-pend-btn{background:none;border:1px solid var(--border);border-radius:var(--r-sm);padding:4px 8px;color:var(--text-m);cursor:pointer;transition:var(--tr);font-size:.8rem}
.fin-pend-btn:hover{border-color:var(--gold);color:var(--gold-d)}
.fin-pend-grupo{margin-bottom:16px}
.fin-pend-grupo-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:4px 0}
.fin-pend-grupo-val{font-weight:800;font-size:.9rem;color:var(--text-1)}
.fin-pendente-summary{background:rgba(63,169,245,.06);border:1px solid rgba(63,169,245,.15);border-radius:var(--r-md);padding:12px 16px;margin-bottom:16px;font-size:.9rem}
.fin-pend-total{display:flex;align-items:center;gap:8px}
.fin-pend-count{font-size:.78rem;color:var(--text-m)}
.fin-empty-msg{display:flex;align-items:center;gap:10px;color:var(--text-m);font-size:.88rem;padding:20px;justify-content:center}

/* Recibos Verdes */
.fin-rv-header-section{margin-bottom:20px}
.fin-rv-header-section h3{font-size:1rem;font-weight:800;margin-bottom:6px;display:flex;align-items:center;gap:8px}
.fin-rv-desc{font-size:.84rem;color:var(--text-2);margin-bottom:16px;line-height:1.5}
.fin-rv-input-wrap{background:var(--bg-page);border:1px solid var(--border);border-radius:var(--r-md);padding:16px}
.fin-rv-input-wrap label{display:block;font-size:.78rem;font-weight:700;color:var(--text-2);margin-bottom:8px}
.fin-rv-input-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.fin-rv-input{border:2px solid var(--border);border-radius:var(--r-md);padding:10px 14px;font-size:1rem;font-weight:700;background:var(--bg-card);color:var(--text-1);outline:none;transition:var(--tr);width:200px}
.fin-rv-input:focus{border-color:var(--gold)}
.fin-rv-input-hint{font-size:.76rem;color:var(--text-m)}
.fin-rv-shortcuts{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.fin-rv-shortcuts span{font-size:.76rem;color:var(--text-m)}
.fin-shortcut-btn{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);padding:4px 10px;font-size:.76rem;font-weight:700;cursor:pointer;transition:var(--tr)}
.fin-shortcut-btn:hover{border-color:var(--gold);color:var(--gold-d);background:rgba(247,183,44,.08)}
.fin-rv-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px;color:var(--text-m);text-align:center}
.fin-rv-empty i{font-size:2rem}
.fin-rv-result{}
.fin-rv-header{display:flex;align-items:center;gap:20px;margin-bottom:16px;flex-wrap:wrap}
.fin-rv-gross,.fin-rv-net{flex:1;min-width:140px;background:var(--bg-page);border-radius:var(--r-md);padding:14px;text-align:center}
.fin-rv-gross-label,.fin-rv-net-label{font-size:.72rem;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}
.fin-rv-gross-val{font-size:1.4rem;font-weight:900}
.fin-rv-net-val{font-size:1.4rem;font-weight:900;color:#059669}
.fin-rv-gross-mensal,.fin-rv-net-mensal{font-size:.74rem;color:var(--text-m);margin-top:3px}
.fin-rv-arrow{font-size:1.3rem;color:var(--text-m)}
.fin-rv-taxa{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--r-md);font-size:.84rem;margin-bottom:16px}
.fin-rv-taxa.low{background:rgba(16,185,129,.1);color:#065f46;border:1px solid rgba(16,185,129,.2)}
.fin-rv-taxa.mid{background:rgba(245,158,11,.1);color:#92400e;border:1px solid rgba(245,158,11,.2)}
.fin-rv-taxa.high{background:rgba(239,68,68,.1);color:#991b1b;border:1px solid rgba(239,68,68,.2)}
.fin-rv-detalhe{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}
.fin-rv-linha{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border-radius:var(--r-sm);font-size:.84rem}
.fin-rv-linha.desconto{background:rgba(239,68,68,.04);color:var(--text-2)}
.fin-rv-linha.desconto i{color:var(--danger);margin-right:6px}
.fin-rv-linha.total-desconto{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.12);font-size:.9rem}
.fin-rv-linha.liquido{background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.15);font-size:.9rem}
.fin-rv-detalhe-val{font-weight:700;white-space:nowrap}
.fin-rv-detalhe-val.liquido-val{color:#059669}
.fin-rv-nota{font-size:.7rem;color:var(--text-m);font-style:italic;margin-top:8px;line-height:1.5}

/* ============================================================
   QUALIFICAÇÃO DE LEADS
   ============================================================ */
.modal-lg{max-width:680px}
.qual-lead-nome{font-size:.9rem;font-weight:700;color:var(--gold-d);margin-bottom:12px;display:flex;align-items:center;gap:6px}
.form-hint{font-size:.72rem;color:var(--text-m);display:block;margin-top:3px}
.qual-result-card{background:var(--bg-page);border-radius:var(--r-md);padding:18px;margin-top:18px}
.qual-result-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.qual-classe-badge{font-size:.9rem;font-weight:800;padding:6px 16px;border-radius:999px}
.qual-score-wrap{display:flex;align-items:baseline;gap:3px}
.qual-score-num{font-size:2.2rem;font-weight:900;line-height:1}
.qual-score-label{font-size:.8rem;color:var(--text-m);font-weight:700}
.qual-score-bar-wrap{margin-bottom:10px}
.qual-score-bar{height:8px;background:var(--border);border-radius:999px;overflow:hidden}
.qual-score-fill{height:100%;border-radius:999px;transition:width .6s cubic-bezier(.4,0,.2,1)}
.qual-classe-label{font-size:.92rem;font-weight:800;margin-bottom:6px}
.qual-acao{font-size:.82rem;color:var(--text-2);background:var(--bg-card);border-radius:var(--r-sm);padding:8px 12px;margin-bottom:14px;display:flex;align-items:flex-start;gap:7px;line-height:1.5}
.qual-acao i{color:var(--gold-d);margin-top:2px;flex-shrink:0}
.qual-breakdown{display:flex;flex-direction:column;gap:6px}
.qual-bk-item{display:grid;grid-template-columns:100px 1fr 50px;align-items:center;gap:8px;font-size:.76rem}
.qual-bk-label{color:var(--text-2);font-weight:600}
.qual-bk-bar-wrap{background:var(--border);border-radius:999px;height:6px;overflow:hidden}
.qual-bk-bar{height:100%;border-radius:999px}
.qual-bk-val{text-align:right;font-weight:700;font-size:.76rem;color:var(--text-1)}
.qual-alerta-a{display:flex;align-items:center;flex-wrap:wrap;gap:8px;background:rgba(16,185,129,.12);border:1.5px solid rgba(16,185,129,.3);border-radius:var(--r-md);padding:12px 14px;margin-top:14px;font-size:.84rem;color:#065f46;font-weight:600}
.qual-alerta-a i{color:#059669}
.qual-wa-btn{display:inline-flex;align-items:center;gap:6px;background:#25D366;color:#fff;border:none;border-radius:var(--r-sm);padding:5px 12px;font-size:.8rem;font-weight:700;cursor:pointer;text-decoration:none;margin-left:auto}

