/* ── Design system portado do admin Unique (_shell.php) ───────────────────── */
*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --y:#F5C518; --o:#F07B0F; --gn:#2ECC71; --rd:#E74C3C;
  --bg-main:#0F1014; --bg-sidebar:#0D0E12; --bg-card:#15171C;
  --text-primary:#E5E7EB; --text-muted:#9CA3AF; --border-soft:rgba(255,255,255,0.06);
  --bk:var(--bg-main); --dk:var(--bg-sidebar); --card:var(--bg-card);
  --bd:var(--border-soft); --tx:var(--text-primary); --mt:var(--text-muted);
  --topbar-h:64px;
  --grad:linear-gradient(135deg,var(--y),var(--o));
  --shadow-sm:0 2px 6px rgba(0,0,0,.20);
  --shadow-md:0 8px 20px rgba(0,0,0,.28);
  --shadow-lg:0 20px 40px rgba(0,0,0,.35);
}
body{background:var(--bg-main);color:var(--text-primary);font-family:'Space Grotesk',sans-serif;min-height:100vh;overflow-x:clip;}
.text-muted,.muted,.small{color:var(--text-muted);}
a{color:#6cb8ff;text-decoration:none;}
a:hover{color:#8fd0ff;}

/* LAYOUT */
.layout{display:grid;grid-template-columns:230px 1fr;min-height:100vh;}
.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-soft);position:sticky;top:0;height:100vh;align-self:start;display:flex;flex-direction:column;overflow:hidden;}
.sidebar-logo{position:relative;height:96px;margin:.9rem .85rem 1.1rem;border-radius:14px;
  background:#0F1014;border:1px solid rgba(255,199,0,0.12);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:700;font-size:20px;}
.sidebar-logo .spark{color:var(--y);filter:drop-shadow(0 0 8px rgba(255,199,0,.4));}
.sidebar-logo .crm{color:var(--mt);font-weight:600;font-size:14px;}
.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:.6rem 0 1.5rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent;}
.sidebar-nav::-webkit-scrollbar{width:6px;}
.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:999px;}
.nav-section{color:#bababa;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;opacity:.7;padding:.9rem 1rem .35rem;}
.nav-item{display:flex;align-items:center;gap:10px;padding:.55rem .85rem .55rem 1rem;margin:1px .5rem;border-radius:6px;cursor:pointer;
  font-size:13.5px;font-weight:500;color:#ededed;text-decoration:none;
  transition:background .18s ease,color .22s ease,transform .22s ease,text-shadow .22s ease;}
.nav-item:hover{background:rgba(245,197,24,.10);color:#FFD21A;transform:translateX(2px);text-shadow:0 0 6px rgba(255,210,26,.45);}
.nav-item.active{background:rgba(245,197,24,.14);color:#FFD21A;box-shadow:inset 3px 0 0 #FFD21A;font-weight:700;text-shadow:0 0 7px rgba(255,210,26,.50);}
.nav-item.active:hover{transform:none;}
.nav-item.soon{opacity:.45;cursor:default;}
.nav-item.soon:hover{background:transparent;color:#ededed;transform:none;text-shadow:none;}
.nav-item i{width:18px;height:18px;flex-shrink:0;opacity:.85;stroke-width:2;}
.nav-item:hover i,.nav-item.active i{color:#FFD21A;opacity:1;filter:drop-shadow(0 0 5px rgba(255,210,26,.45));}

/* MAIN + HEADER */
.main{padding:0;}
.page-content{padding:1.75rem;}
.admin-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:var(--topbar-h);background:var(--bg-sidebar);border-bottom:1px solid var(--border-soft);padding:0 1.75rem;position:sticky;top:0;z-index:80;}
.admin-header-left{flex:1;min-width:0;display:flex;align-items:center;gap:.6rem;font-size:16px;font-weight:600;color:var(--tx);}
.admin-header-left i{width:18px;height:18px;color:var(--y);flex-shrink:0;}
.admin-header-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0;}
.status-online{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .8rem;border-radius:50px;background:rgba(46,204,113,.10);color:var(--gn);font-size:11.5px;font-weight:700;}
.status-online .dot{width:6px;height:6px;border-radius:50%;background:var(--gn);box-shadow:0 0 0 0 rgba(46,204,113,.55);animation:status-pulse 2.2s ease-in-out infinite;}
@keyframes status-pulse{0%,100%{box-shadow:0 0 0 0 rgba(46,204,113,.55);}50%{box-shadow:0 0 0 6px rgba(46,204,113,0);}}
.header-action{display:inline-flex;align-items:center;gap:6px;padding:.45rem .8rem;border-radius:8px;font-size:12.5px;font-weight:600;color:var(--mt);cursor:pointer;background:transparent;border:0;font-family:inherit;transition:background .18s ease,color .18s ease,transform .18s ease;}
.header-action i{width:14px;height:14px;}
.header-action:hover{background:rgba(255,255,255,.04);color:var(--tx);transform:translateY(-1px);}
.header-action.logout{color:#e08a82;}
.header-action.logout:hover{background:rgba(231,76,60,.10);color:#ff8b80;}
.admin-search{display:flex;align-items:center;gap:.5rem;flex:1;max-width:380px;margin:0 1rem;background:var(--bg-sidebar);border:1px solid var(--border-soft);border-radius:8px;padding:.42rem .7rem;transition:border-color .15s ease;}
.admin-search:focus-within{border-color:var(--y);}
.admin-search i{width:15px;height:15px;color:var(--mt);flex-shrink:0;}
.admin-search input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--tx);font-size:14px;font-family:inherit;}
.admin-search input::placeholder{color:var(--mt);}

/* CARD + BUTTONS + INPUTS */
.card{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:1.5rem;margin-bottom:1.75rem;}
.btn{display:inline-flex;align-items:center;gap:6px;padding:.7rem 1.4rem;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all .15s ease;text-decoration:none;outline:none;font-family:inherit;}
.btn-primary{background:var(--y);color:#111;font-weight:700;}
.btn-primary:hover{background:#f8cc2a;transform:translateY(-1px);box-shadow:0 0 12px rgba(255,199,0,.20);}
label{display:block;font-size:12px;font-weight:600;color:#cfcfcf;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem;}
input[type=text],input[type=email],input[type=password],input[type=search]{width:100%;background:var(--bg-sidebar);border:1px solid var(--border-soft);border-radius:8px;padding:.65rem .9rem;color:var(--text-primary);font-size:15px;font-family:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease;}
input:focus{border-color:var(--y);box-shadow:0 0 0 3px rgba(245,197,24,.08);}
input::placeholder{color:var(--text-muted);}

/* PAGE HEAD */
.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;gap:1rem;flex-wrap:wrap;}
.page-head h1{font-size:20px;font-weight:700;display:flex;align-items:center;gap:.5rem;}
.count{background:rgba(255,255,255,.05);color:var(--mt);font-size:13px;padding:2px 10px;border-radius:20px;}

/* METRIC CARDS (hero do CRM) */
.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:1.75rem;}
.metric{position:relative;background:var(--card);border:1px solid var(--bd);border-radius:16px;padding:1.3rem 1.3rem 1.2rem 1.45rem;overflow:hidden;text-decoration:none;display:block;transition:transform .15s,border-color .15s;}
.metric:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.14);}
.metric::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent,#9ca3af);}
.metric .num{font-size:30px;font-weight:700;line-height:1;color:var(--accent,#fff);letter-spacing:-.01em;}
.metric .lbl{font-size:11.5px;color:var(--mt);margin-top:.5rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;}
.metric.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;}
.metric.urgente{box-shadow:0 0 0 1px rgba(231,76,60,.4) inset,0 4px 14px rgba(231,76,60,.12);background:rgba(231,76,60,.06);}
.metric.urgente .num{color:#e74c3c;text-shadow:0 0 12px rgba(231,76,60,.35);}

/* LEADS TABLE (.tbl do admin) */
.table-responsive{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
table.leads{width:100%;min-width:720px;border-collapse:collapse;font-size:13.5px;}
table.leads th{text-align:left;color:var(--mt);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:1rem 1.25rem;background:rgba(255,255,255,.02);border-bottom:1px solid var(--bd);}
table.leads td{padding:1.05rem 1.25rem;border-bottom:1px solid var(--bd);vertical-align:middle;}
table.leads tbody tr{transition:background .14s ease;}
table.leads tbody tr:hover td{background:rgba(245,197,24,.03);}
table.leads tr:last-child td{border-bottom:0;}
.lead-name{font-weight:600;color:var(--tx);}
.lead-phone{font-family:'JetBrains Mono','Courier New',monospace;font-size:12px;color:var(--mt);}
.painel-chip{font-size:11px;font-weight:600;color:var(--mt);border:1px solid var(--bd);padding:2px 8px;border-radius:6px;letter-spacing:.03em;}
.etapa-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--tx);background:rgba(255,255,255,.04);border:1px solid var(--bd);padding:3px 10px;border-radius:50px;}
.etapa-badge i.dot{width:8px;height:8px;border-radius:50%;display:inline-block;}
.temp{font-weight:600;font-size:13px;}
.empty{text-align:center;color:var(--mt);padding:36px;}

/* PAGINATION */
.pagination{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:1.25rem;color:var(--mt);font-size:13px;}
.pg{padding:6px 12px;border:1px solid var(--bd);border-radius:8px;color:var(--tx);}
.pg.disabled{opacity:.4;}

/* LOGIN */
.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;}
.login-card{width:360px;background:var(--card);border:1px solid var(--bd);border-radius:16px;padding:2rem;box-shadow:var(--shadow-lg);}
.login-brand{text-align:center;font-size:26px;font-weight:700;margin-bottom:.25rem;}
.login-brand .spark{color:var(--y);filter:drop-shadow(0 0 8px rgba(255,199,0,.4));}
.login-sub{text-align:center;color:var(--mt);font-size:13px;margin-bottom:1.5rem;}
.login-card label{margin-top:1rem;}
.login-card .check{display:flex;align-items:center;gap:8px;margin:1rem 0;color:var(--mt);font-size:13px;text-transform:none;letter-spacing:0;font-weight:500;}
.login-card .btn-primary{margin-top:1.25rem;width:100%;justify-content:center;}
.alert-error{background:rgba(231,76,60,.12);border:1px solid rgba(231,76,60,.30);color:#ff8b80;padding:.7rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:13px;}

/* RESPONSIVE */
@media(max-width:1024px){
  .layout{grid-template-columns:1fr;}
  .sidebar{display:none;}
  .page-content{padding:1.1rem .9rem 2rem;}
  .admin-search{display:none;}
}
