/* ============================================================
   META ADS MANAGER — Light Premium Theme
   ============================================================ */
:root {
  --navy:#1B2A4A;--navy-light:#2d4a7a;--navy-dark:#0f1d33;
  --gold:#C8A951;--gold-hover:#B8993D;--gold-light:#F5EDD6;
  --bg-light:#F5F7FA;--bg-white:#FFFFFF;
  --text-dark:#1a1a2e;--text-muted:#6c757d;--text-sidebar:#c8cdd3;
  --border-light:#e2e8f0;
  --shadow-sm:0 2px 8px rgba(0,0,0,0.06);--shadow-md:0 4px 20px rgba(0,0,0,0.08);--shadow-lg:0 10px 40px rgba(0,0,0,0.12);
  --radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;
  --sidebar-width:260px;--header-height:64px;
  --green:#28a745;--yellow:#ffc107;--red:#dc3545;--blue:#0d6efd;--cyan:#0dcaf0;--purple:#6f42c1;
}
*{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;box-sizing:border-box}
body{background:var(--bg-light);color:var(--text-dark);margin:0;padding:0;min-height:100vh}
a{color:var(--navy);text-decoration:none}a:hover{color:var(--gold)}
.app-wrapper{display:flex;min-height:100vh}

/* Sidebar */
.sidebar{width:var(--sidebar-width);background:linear-gradient(180deg,var(--navy-dark) 0%,var(--navy) 100%);color:var(--text-sidebar);position:fixed;top:0;left:0;bottom:0;z-index:1040;display:flex;flex-direction:column;transition:transform .25s ease;overflow-y:auto;overflow-x:hidden}
.sidebar-brand{padding:1.25rem;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid rgba(255,255,255,.08);min-height:var(--header-height)}
.sidebar-brand-icon{width:36px;height:36px;background:var(--gold);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--navy-dark);font-size:1.1rem;font-weight:700;flex-shrink:0}
.sidebar-brand-text{font-size:.95rem;font-weight:600;color:#fff;white-space:nowrap}
.sidebar-brand-text small{display:block;font-size:.7rem;font-weight:400;color:var(--gold);opacity:.9}
.sidebar-nav{flex:1;padding:.75rem 0}
.sidebar-section{padding:.5rem 1.25rem .25rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.35);margin-top:.5rem}
.sidebar-nav a{display:flex;align-items:center;gap:.75rem;padding:.6rem 1.25rem;color:var(--text-sidebar);font-size:.85rem;border-left:3px solid transparent;transition:background .2s,color .2s,border-color .2s;white-space:nowrap}
.sidebar-nav a:hover{background:rgba(255,255,255,.06);color:#fff;border-left-color:var(--gold)}
.sidebar-nav a.active{background:rgba(200,169,81,.12);color:var(--gold);border-left-color:var(--gold);font-weight:500}
.sidebar-nav a i{width:20px;text-align:center;font-size:.9rem;flex-shrink:0}
.sidebar-footer{padding:.75rem 1.25rem;border-top:1px solid rgba(255,255,255,.08)}
.sidebar-user{display:flex;align-items:center;gap:.65rem}
.sidebar-user-avatar{width:34px;height:34px;border-radius:50%;background:var(--gold);color:var(--navy-dark);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0}
.sidebar-user-info{flex:1;min-width:0}
.sidebar-user-name{font-size:.8rem;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-user-role{font-size:.65rem;color:var(--gold);text-transform:capitalize}

/* Main — NO transform, NO animation, NO will-change */
.main-content{flex:1;margin-left:var(--sidebar-width);transition:margin-left .25s ease}
.top-header{height:var(--header-height);background:var(--bg-white);border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;position:sticky;top:0;z-index:1030;box-shadow:var(--shadow-sm)}
.top-header-left{display:flex;align-items:center;gap:1rem}
.top-header-title{font-size:1.15rem;font-weight:600;color:var(--navy);margin:0}
.top-header-right{display:flex;align-items:center;gap:.75rem}
.page-content{padding:1.5rem}

/* Cards */
.card-premium{background:var(--bg-white);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:box-shadow .25s ease}
.card-premium:hover{box-shadow:var(--shadow-md)}
.kpi-card{padding:1.25rem;border-radius:var(--radius-md);background:var(--bg-white);box-shadow:var(--shadow-sm);border-left:4px solid var(--navy);transition:box-shadow .25s ease}
.kpi-card:hover{box-shadow:var(--shadow-md)}
.kpi-card .kpi-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.35rem}
.kpi-card .kpi-value{font-size:1.5rem;font-weight:700;color:var(--navy);line-height:1.2}
.kpi-card .kpi-change{font-size:.75rem;margin-top:.25rem}
.kpi-card .kpi-change.up{color:var(--green)}.kpi-card .kpi-change.down{color:var(--red)}
.kpi-card.kpi-gold{border-left-color:var(--gold)}.kpi-card.kpi-green{border-left-color:var(--green)}
.kpi-card.kpi-blue{border-left-color:var(--blue)}.kpi-card.kpi-red{border-left-color:var(--red)}
.kpi-card.kpi-cyan{border-left-color:var(--cyan)}.kpi-card.kpi-purple{border-left-color:var(--purple)}

/* Buttons */
.btn-navy{background:var(--navy);color:#fff;border:none;font-weight:600;border-radius:var(--radius-sm);padding:.55rem 1.5rem;transition:background .2s,box-shadow .2s}
.btn-navy:hover{background:var(--navy-light);color:#fff;box-shadow:0 4px 12px rgba(27,42,74,.3)}
.btn-gold{background:var(--gold);color:var(--navy-dark);border:none;font-weight:600;border-radius:var(--radius-sm);padding:.55rem 1.5rem;transition:background .2s,box-shadow .2s}
.btn-gold:hover{background:var(--gold-hover);color:var(--navy-dark);box-shadow:0 4px 12px rgba(200,169,81,.4)}
.btn-outline-navy{background:transparent;color:var(--navy);border:2px solid var(--navy);font-weight:600;border-radius:var(--radius-sm);padding:.5rem 1.5rem;transition:background .2s,color .2s}
.btn-outline-navy:hover{background:var(--navy);color:#fff}

/* Filter bar */
.filter-bar{background:var(--bg-white);border-radius:var(--radius-md);padding:1rem 1.25rem;box-shadow:var(--shadow-sm);margin-bottom:1.25rem;display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end}
.filter-bar .form-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.2rem}
.filter-bar .form-select,.filter-bar .form-control{font-size:.85rem;border-radius:var(--radius-sm);border:1px solid var(--border-light)}

/* Tables */
.table-premium{background:var(--bg-white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}
.table-premium thead th{background:var(--navy);color:#fff;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.75rem 1rem;border:none;white-space:nowrap}
.table-premium tbody td{font-size:.85rem;padding:.65rem 1rem;vertical-align:middle;border-bottom:1px solid var(--border-light)}
.table-premium tbody tr:hover{background:rgba(200,169,81,.04)}

/* Badges */
.badge-role-admin{background:var(--navy);color:#fff}.badge-role-analyst{background:var(--blue);color:#fff}.badge-role-client{background:var(--gold);color:var(--navy-dark)}
.badge-active{background:#d4edda;color:#155724}.badge-inactive{background:#f8d7da;color:#721c24}
.badge-status-success{background:#d4edda;color:#155724}.badge-status-error{background:#f8d7da;color:#721c24}.badge-status-running{background:#cce5ff;color:#004085}

/* Login */
.login-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-light) 0%,#e8ecf1 100%)}
.login-card{width:100%;max-width:420px;background:var(--bg-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}
.login-header{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);padding:2rem;text-align:center;color:#fff}
.login-header h2{font-size:1.3rem;font-weight:700;margin:.75rem 0 .25rem}
.login-header p{font-size:.8rem;color:var(--gold);margin:0;font-weight:500}
.login-body{padding:2rem}
.login-body .form-label{font-size:.8rem;font-weight:600;color:var(--text-dark)}
.login-body .form-control{border-radius:var(--radius-sm);padding:.65rem 1rem;border:1px solid var(--border-light);font-size:.9rem}
.login-body .form-control:focus{border-color:var(--gold);box-shadow:0 0 0 .2rem rgba(200,169,81,.25)}
.login-footer{text-align:center;padding:0 2rem 1.5rem;font-size:.75rem;color:var(--text-muted)}

/* Utilities */
.text-gold{color:var(--gold)!important}.text-navy{color:var(--navy)!important}
.bg-gold{background-color:var(--gold)!important}.bg-navy{background-color:var(--navy)!important}
.section-title{font-size:1.1rem;font-weight:700;color:var(--navy);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--gold);display:inline-block}

/* Responsive */
@media(max-width:991.98px){
  .sidebar{transform:translateX(-100%)}.sidebar.show{transform:translateX(0)}
  .main-content{margin-left:0}
  .sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1035;display:none}
  .sidebar-overlay.show{display:block}
}
::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(27,42,74,.2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:rgba(27,42,74,.4)}
.sidebar-toggle{background:none;border:none;font-size:1.25rem;color:var(--navy);cursor:pointer;padding:.25rem;display:none}
@media(max-width:991.98px){.sidebar-toggle{display:block}}


/* Ocultar botão Limpar globalmente */
[onclick="clearDates()"], [data-clear-filters] { display:none !important; }
