/* TeamAct CRM — Company Admin Reporting / Leads / Sidebar V5
   Scope: Company Admin only. Sidebar keeps its existing teal active state.
*/

/* ---------------- Admin sidebar: compact + personal drag/drop ---------------- */
.crm-role-admin .sidebar nav{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  padding-top:8px!important;
}
.crm-role-admin .sidebar nav>[data-nav]{
  margin:0!important;
  flex:0 0 auto!important;
  min-height:43px;
  cursor:grab;
  position:relative;
}
.crm-role-admin .sidebar nav>[data-nav]:active{cursor:grabbing}
.crm-role-admin .sidebar .sidebar-drag-grip{
  margin-left:auto;
  opacity:.28;
  font-size:15px;
  letter-spacing:-3px;
  transition:opacity .15s ease;
}
.crm-role-admin .sidebar nav>[data-nav]:hover .sidebar-drag-grip{opacity:.72}
.crm-role-admin .sidebar nav.sidebar-drag-active>[data-nav]{transition:transform .12s ease,opacity .12s ease}
.crm-role-admin .sidebar nav>[data-nav].sidebar-dragging{
  opacity:.55;
  outline:2px dashed rgba(255,255,255,.6);
  outline-offset:-3px;
}
.crm-role-admin.sidebar-collapsed .sidebar .sidebar-drag-grip,
.crm-role-admin .sidebar.collapsed .sidebar-drag-grip{display:none}

/* ---------------- Shared reporting period bar ---------------- */
.crm-role-admin .main #view .admin-period-filter{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 16px;
  margin:0 0 14px;
  background:#fff!important;
  border:1px solid #dce4ec;
  border-radius:12px;
  box-shadow:0 4px 14px rgba(34,57,94,.05);
}
.admin-period-title{display:flex;align-items:center;gap:10px;min-width:230px}
.admin-period-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#edf2ff;color:#4561c5}
.admin-period-title svg{width:18px;height:18px}
.admin-period-title b{display:block;font-size:14px;color:#172f4b}
.admin-period-title small{display:block;margin-top:2px;color:#6c7e92;font-size:11px}
.admin-period-controls{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.admin-period-controls label{display:flex;flex-direction:column;gap:5px;min-width:170px}
.admin-period-controls label>span{font-size:11px;font-weight:700;color:#53667d;text-transform:uppercase;letter-spacing:.04em}
.admin-period-controls select,
.admin-period-controls input{height:40px;min-width:160px;background:#fff!important;border:1px solid #cfd9e6!important;color:#172f4b!important;border-radius:8px;padding:0 10px}
.admin-period-custom{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}
.admin-period-custom.hidden{display:none!important}
.admin-period-apply{height:40px;min-width:86px}
.admin-range-label{display:inline-block;margin-left:8px;font-size:12px!important;font-weight:600!important;color:#677a91!important}

/* ---------------- 360 reporting ---------------- */
.admin360{display:flex;flex-direction:column;gap:14px}
.admin360-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.admin360-head h2{margin:0;color:#172f4b;font-size:24px}
.admin360-head p{margin:5px 0 0;color:#6a7a8c;max-width:760px}
.admin360-range-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:0 2px;color:#697a8e;font-size:12px}
.admin360-range-line b{color:#304e9d;font-size:13px}
.admin360-kpis{margin:0!important}
.admin360-grid{display:grid;gap:14px}
.admin360-grid.two{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}
.admin360-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.admin360-grid>.card{margin:0!important}
.admin360-breakdown{display:flex;flex-direction:column;gap:10px;padding-top:6px}
.admin360-breakdown-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(90px,1.6fr) 44px;align-items:center;gap:10px;font-size:12px}
.admin360-breakdown-row>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#3f536b}
.admin360-breakdown-row>b{text-align:right;color:#1d3451}
.admin360-bar{height:8px;background:#eef1f6;border-radius:999px;overflow:hidden}
.admin360-bar>i{display:block;height:100%;background:linear-gradient(90deg,#526bd1,#7959c7);border-radius:999px}
.admin360-empty{padding:24px 4px;text-align:center;color:#7a899a;font-size:12px}
.admin360-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:8px}
.admin360-mini-grid>div{padding:14px;border:1px solid #e0e6ee;border-radius:10px;background:#fafbfe}
.admin360-mini-grid span{display:block;color:#687a8f;font-size:11px}
.admin360-mini-grid b{display:block;margin-top:5px;color:#203a5d;font-size:21px}
.admin360-users .tablewrap{margin-top:8px}

/* ---------------- Leads Section ---------------- */
.admin-leads-section{display:flex;flex-direction:column;gap:14px}
.admin-leads-actions{
  display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  padding:16px 18px;background:#fff;border:1px solid #dce4ec;border-radius:12px;
  box-shadow:0 4px 14px rgba(34,57,94,.05)
}
.admin-leads-actions h2{margin:0!important;color:#172f4b;font-size:20px}
.admin-leads-actions p{margin:4px 0 0;color:#6c7e92;font-size:12px}
.admin-leads-action-buttons{display:flex;gap:8px;flex-wrap:wrap}
.admin-leads-action-buttons button{min-height:40px;display:inline-flex;align-items:center;gap:7px}
.admin-leads-action-buttons svg{width:17px;height:17px}
.admin-leads-sheet-card,.admin-import-history{margin:0!important}
.admin-leads-sheet-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:10px 0 12px}
.admin-leads-sheet-tools label{display:flex;align-items:center;gap:8px;width:min(520px,100%);height:42px;padding:0 12px;border:1px solid #cfd9e6;border-radius:9px;background:#fff}
.admin-leads-sheet-tools label svg{width:17px;height:17px;color:#60758d;flex:0 0 auto}
.admin-leads-sheet-tools input{border:0!important;outline:0!important;box-shadow:none!important;padding:0!important;width:100%;height:38px;background:transparent!important}
.admin-leads-sheet-tools>span{font-size:12px;color:#68798e}
.admin-leads-section .tablewrap thead th{background:#f6f8fc!important;color:#273f5d!important;border-color:#dfe6ef!important}
.admin-leads-section .tablewrap tbody td{background:#fff!important;border-color:#e5eaf1!important}
.admin-leads-section .company-lead-status-button{background:#fff!important}
.import-status,.import-outcome{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700;border:1px solid #d5dfeb;background:#f7f9fc;color:#485c72}
.import-status.ok,.import-outcome.is-imported{background:#edf8f1;color:#267049;border-color:#cde7d6}
.import-status.has-errors,.import-outcome.is-invalid{background:#fff4ed;color:#9b551b;border-color:#f0d5bf}
.import-outcome.is-duplicate{background:#f3f0ff;color:#674ca8;border-color:#dad1f2}

/* Import row viewer */
body.crm-admin-panel .admin-import-view-dialog{
  width:min(1180px,94vw);max-width:1180px;height:min(760px,90vh);max-height:90vh;
  padding:0;border:1px solid #cfd9e6;border-radius:14px;background:#fff;color:#172f4b;
  box-shadow:0 24px 60px rgba(27,43,70,.24);overflow:hidden
}
body.crm-admin-panel .admin-import-view-dialog::backdrop{background:rgba(22,33,50,.42)}
.admin-import-loading{padding:40px;text-align:center;color:#5c6f86}
.admin-import-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #e1e7ef;background:#fff}
.admin-import-dialog-head h2{margin:0;font-size:20px;color:#172f4b}
.admin-import-dialog-head p{margin:5px 0 0;font-size:12px;color:#6a7b8e}
.admin-import-dialog-body{height:calc(100% - 132px);overflow:auto;padding:14px 18px;background:#f8faff}
.admin-import-dialog-body .tablewrap{background:#fff!important;border:1px solid #dce4ec!important;border-radius:10px;overflow:auto}
.admin-import-dialog-body th{position:sticky;top:0;z-index:2;background:#f4f7fb!important;color:#2c435f!important}
.admin-import-dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid #e1e7ef;background:#fff;font-size:12px;color:#68798d}
.admin-import-dialog-foot>div{display:flex;gap:8px}

/* Admin dialogs remain blue / neutral. */
body.crm-admin-panel .crm-dialog{border-color:#d7e0eb!important}
body.crm-admin-panel .crm-dialog .crm-dialog-content{background:#fff!important}
body.crm-admin-panel .crm-dialog .crm-dialog-header{background:#f8faff!important}

@media (max-width:1000px){
  .admin-period-filter{align-items:flex-start!important;flex-direction:column}
  .admin-period-controls{width:100%;justify-content:flex-start}
  .admin360-grid.two,.admin360-grid.three{grid-template-columns:1fr}
}
@media (max-width:720px){
  .admin-leads-actions{align-items:stretch;flex-direction:column}
  .admin-leads-action-buttons{display:grid;grid-template-columns:1fr}
  .admin-period-controls,.admin-period-custom{align-items:stretch;flex-direction:column;width:100%}
  .admin-period-controls label,.admin-period-controls select,.admin-period-controls input{width:100%;min-width:0}
  .admin360-mini-grid{grid-template-columns:1fr}
  .admin-import-dialog-foot{align-items:flex-start;flex-direction:column}
}
