/* TeamAct CRM — Company Admin Sidebar V9 + Follow-ups & Tasks Center
   White sidebar, compact grouped navigation, per-admin ordering support.
   Main workspace retains the project-wide no-teal rule. */

/* ---------- Company Admin sidebar information architecture ---------- */
.crm-role-admin .sidebar nav{
  display:flex;
  flex-direction:column;
  gap:0!important;
  padding:0 2px 4px!important;
}
.crm-role-admin .admin-sidebar-dashboard{margin:0 0 9px}
.crm-role-admin .admin-sidebar-section{
  display:flex;
  flex-direction:column;
  gap:0;
  margin:0 0 9px!important;
  min-width:0;
}
.crm-role-admin .admin-sidebar-section-items,
.crm-role-admin .admin-sidebar-setup-children{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.crm-role-admin .sidebar-role-group-label{
  padding:6px 13px 4px!important;
  margin:0!important;
  color:#8a98a8!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase;
}
.crm-role-admin .sidebar nav button{
  position:relative;
  min-height:43px!important;
  padding:9px 12px!important;
  gap:12px!important;
  border-radius:9px!important;
}
.crm-role-admin .sidebar nav button>span:not(.admin-sidebar-badge):not(.sidebar-drag-grip){
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.crm-role-admin .sidebar-drag-grip{
  margin-left:auto;
  color:#b5c1cb;
  font-size:12px!important;
  line-height:1;
  letter-spacing:-2px;
  opacity:.75;
  cursor:grab;
  flex:none;
}
.crm-role-admin .sidebar-dragging{
  opacity:.58;
  outline:1px dashed #7f8ea0;
  outline-offset:-2px;
}
.crm-role-admin .sidebar-drag-active [data-admin-drag-nav="1"]{cursor:grabbing}
.crm-role-admin .admin-sidebar-badge{
  margin-left:auto;
  min-width:20px;
  height:20px;
  padding:0 6px;
  display:inline-grid;
  place-items:center;
  border-radius:10px;
  background:#fff2e2;
  color:#9a5a00;
  border:1px solid #f2d5a7;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1;
  flex:none;
}
.crm-role-admin .admin-sidebar-badge[hidden]{display:none!important}
.crm-role-admin .admin-sidebar-parent{
  min-height:43px!important;
  background:#fff!important;
  color:#42566a!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
  font-weight:600!important;
}
.crm-role-admin .admin-sidebar-parent:hover{
  background:#f5f8fa!important;
  color:#243b52!important;
}
.crm-role-admin .admin-sidebar-parent.active{
  background:#f5f8fa!important;
  color:#243b52!important;
  box-shadow:none!important;
}
.crm-role-admin .admin-sidebar-parent.active svg{color:#58798a!important}
.crm-role-admin .admin-sidebar-parent b{
  margin-left:auto;
  color:#8392a2;
  font-size:14px;
  transition:transform .16s ease;
}
.crm-role-admin .admin-sidebar-setup.open .admin-sidebar-parent b{transform:rotate(180deg)}
.crm-role-admin .admin-sidebar-setup-children{
  display:none;
  padding:2px 0 0 12px;
}
.crm-role-admin .admin-sidebar-setup.open .admin-sidebar-setup-children{display:flex}
.crm-role-admin .admin-sidebar-setup-children button{min-height:40px!important}
.crm-role-admin .admin-sidebar-setup-children button svg{width:18px!important;height:18px!important}
.crm-role-admin [data-sidebar-section-group="account"]{
  padding-top:7px;
  border-top:1px solid #edf1f4;
}

/* Bottom controls: Reset + Collapse remain fixed and never participate in dragging. */
.crm-role-admin .sidebar-collapse-control{
  display:flex!important;
  flex-direction:column;
  gap:6px;
}
.crm-role-admin .admin-sidebar-reset{
  width:100%;
  min-height:36px;
  display:flex;
  align-items:center;
  gap:9px;
  justify-content:flex-start;
  padding:7px 11px;
  background:#fff;
  color:#6b7d8f;
  border:1px solid #dbe4eb;
  border-radius:9px;
  font-size:13px;
  font-weight:500;
  box-shadow:none;
}
.crm-role-admin .admin-sidebar-reset:hover{background:#f7f9fb;color:#263f56}
.crm-role-admin .admin-sidebar-reset>span:first-child{font-size:17px;line-height:1}

/* Collapsed desktop rail: keep one clean Setup icon; expand before opening children. */
.crm-role-admin.sidebar-collapsed .sidebar-role-group-label,
.crm-role-admin .sidebar.collapsed .sidebar-role-group-label,
.crm-role-admin.sidebar-collapsed .admin-sidebar-reset-text,
.crm-role-admin .sidebar.collapsed .admin-sidebar-reset-text,
.crm-role-admin.sidebar-collapsed .admin-sidebar-parent b,
.crm-role-admin .sidebar.collapsed .admin-sidebar-parent b,
.crm-role-admin.sidebar-collapsed .sidebar-drag-grip,
.crm-role-admin .sidebar.collapsed .sidebar-drag-grip,
.crm-role-admin.sidebar-collapsed .admin-sidebar-badge,
.crm-role-admin .sidebar.collapsed .admin-sidebar-badge{display:none!important}
.crm-role-admin.sidebar-collapsed .admin-sidebar-section,
.crm-role-admin .sidebar.collapsed .admin-sidebar-section{margin-bottom:3px!important;padding-top:0;border-top:0}
.crm-role-admin.sidebar-collapsed .admin-sidebar-setup-children,
.crm-role-admin .sidebar.collapsed .admin-sidebar-setup-children{display:none!important}
.crm-role-admin.sidebar-collapsed .admin-sidebar-reset,
.crm-role-admin .sidebar.collapsed .admin-sidebar-reset{justify-content:center;padding:7px}

/* ---------- Follow-ups & Tasks: TeleCRM-density monitoring workspace ---------- */
.crm-role-admin .main .admin-followup-center{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-width:0;
  color:#2e2e2e;
}
.crm-role-admin .main .aft-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:0 0 12px;
  border-bottom:1px solid #e4e4e4;
}
.crm-role-admin .main .aft-head h1{margin:0;font-size:18px!important;font-weight:600!important;color:#2e2e2e}
.crm-role-admin .main .aft-head p{margin:4px 0 0;font-size:13px!important;color:#707070}
.crm-role-admin .main .aft-tabs{
  display:flex;
  align-items:center;
  gap:18px;
  overflow:auto;
  border-bottom:1px solid #e4e4e4;
  min-height:40px;
}
.crm-role-admin .main .aft-tabs button{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:39px;
  padding:8px 1px 9px!important;
  background:#fff!important;
  color:#475569!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
  font-size:14px!important;
  font-weight:500!important;
  white-space:nowrap;
}
.crm-role-admin .main .aft-tabs button.active{color:#5b3bb5!important;border-bottom-color:#5b3bb5!important}
.crm-role-admin .main .aft-tabs button b{
  min-width:19px;height:19px;padding:0 5px;display:inline-grid;place-items:center;border-radius:10px;background:#f2eefb;color:#5b3bb5;font-size:11px
}
.crm-role-admin .main .aft-summary{
  display:grid;
  grid-template-columns:repeat(5,minmax(120px,1fr));
  gap:8px;
}
.crm-role-admin .main .aft-summary>button,
.crm-role-admin .main .aft-summary>div{
  min-height:66px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:4px!important;
  padding:10px 12px!important;
  background:#fff!important;
  color:#333!important;
  border:1px solid #e4e4e4!important;
  border-radius:7px!important;
  box-shadow:none!important;
  text-align:left!important;
}
.crm-role-admin .main .aft-summary>button:hover{border-color:#cfc7e6!important;background:#fbfaff!important}
.crm-role-admin .main .aft-summary span{font-size:12px!important;color:#707070!important}
.crm-role-admin .main .aft-summary b{font-size:19px!important;line-height:1!important;color:#2e2e2e!important}
.crm-role-admin .main .aft-toolbar{
  display:grid;
  grid-template-columns:minmax(170px,.8fr) minmax(220px,1.3fr) minmax(150px,.7fr) auto auto;
  gap:8px;
  align-items:end;
  padding:10px;
  background:#fff;
  border:1px solid #e4e4e4;
  border-radius:7px;
}
.crm-role-admin .main .aft-toolbar label{display:flex;flex-direction:column;gap:4px;min-width:0}
.crm-role-admin .main .aft-toolbar label>span{font-size:12px!important;color:#707070}
.crm-role-admin .main .aft-toolbar input,
.crm-role-admin .main .aft-toolbar select{height:38px!important;background:#fff!important;border:1px solid #dedede!important;border-radius:6px!important;font-size:14px!important;color:#333!important}
.crm-role-admin .main .aft-toolbar>button[type="submit"]{height:38px!important;border-radius:6px!important;background:#3657c8!important;color:#fff!important;border:1px solid #3657c8!important;box-shadow:none!important}
.crm-role-admin .main .aft-custom{display:flex;gap:8px;grid-column:1/-1}
.crm-role-admin .main .aft-custom.hidden{display:none!important}
.crm-role-admin .main .aft-custom label{min-width:160px}
.crm-role-admin .main .aft-period-note{margin:-3px 2px 0;font-size:12px!important;color:#8a8a8a}
.crm-role-admin .main .aft-table-card{background:#fff;border:1px solid #e4e4e4;border-radius:7px;overflow:hidden}
.crm-role-admin .main .aft-table-head{display:flex;align-items:center;justify-content:space-between;padding:12px 13px;border-bottom:1px solid #e4e4e4}
.crm-role-admin .main .aft-table-head h2{margin:0;font-size:16px!important;font-weight:600!important}
.crm-role-admin .main .aft-table-head p{margin:3px 0 0;color:#707070;font-size:12px!important}
.crm-role-admin .main .aft-table-wrap{overflow:auto;background:#fff}
.crm-role-admin .main .aft-table-wrap table{width:100%;min-width:900px;border-collapse:collapse}
.crm-role-admin .main .aft-table-wrap th{height:38px;background:#eee!important;color:#707070!important;font-size:14px!important;font-weight:600!important;text-align:left;white-space:nowrap}
.crm-role-admin .main .aft-table-wrap th,
.crm-role-admin .main .aft-table-wrap td{padding:8px 11px;border-right:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;vertical-align:middle}
.crm-role-admin .main .aft-table-wrap th:last-child,
.crm-role-admin .main .aft-table-wrap td:last-child{border-right:0}
.crm-role-admin .main .aft-table-wrap tbody tr{height:42px;background:#fff}
.crm-role-admin .main .aft-table-wrap tbody tr:hover{background:#fafafa}
.crm-role-admin .main .aft-table-wrap td{font-size:14px!important;color:#333}
.crm-role-admin .main .aft-table-wrap td small{display:block;margin-top:2px;color:#8a8a8a;font-size:12px!important}
.crm-role-admin .main .aft-user-link{padding:0!important;background:transparent!important;border:0!important;color:#5b3bb5!important;box-shadow:none!important;font-size:14px!important;font-weight:500!important;text-align:left}
.crm-role-admin .main .aft-status{display:inline-flex;padding:2px 7px;border-radius:4px;font-size:12px!important;font-weight:500;border:1px solid #e1e1e1;background:#f7f7f7;color:#555}
.crm-role-admin .main .aft-status.pending{background:#fff7e8;border-color:#f0d5a7;color:#8a5b12}
.crm-role-admin .main .aft-status.done{background:#eef7f2;border-color:#cfe8da;color:#28704c}
.crm-role-admin .main .aft-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;color:#707070;font-size:12px!important}
.crm-role-admin .main .aft-pager>div{display:flex;gap:6px}

@media(max-width:1050px){
  .crm-role-admin .main .aft-summary{grid-template-columns:repeat(3,minmax(120px,1fr))}
  .crm-role-admin .main .aft-toolbar{grid-template-columns:1fr 1fr}
  .crm-role-admin .main .aft-toolbar>button{width:100%}
}
@media(max-width:700px){
  .crm-role-admin .main .aft-head{flex-direction:column}
  .crm-role-admin .main .aft-summary{grid-template-columns:1fr 1fr}
  .crm-role-admin .main .aft-toolbar{grid-template-columns:1fr}
  .crm-role-admin .main .aft-custom{grid-column:auto;flex-direction:column}
  .crm-role-admin .main .aft-pager{align-items:flex-start;flex-direction:column}
}
