@import url("https://fonts.googleapis.com/css2?family=Noto+Kufi+Arabic:wght@500;600;700;800&family=Tajawal:wght@400;500;600;700;800&display=swap");
:root{
  --bg:#f7f8fa;--surface:#fff;--surface-soft:#f1f3f6;--ink:#17191f;--muted:#767b86;
  --line:#e5e8ed;--sidebar:#17191f;--sidebar-soft:#252831;--accent:#efb23e;--accent-dark:#d79821;
  --good:#15835c;--danger:#c83b4b;--warn:#a56b0a;--shadow:0 12px 40px rgba(22,25,31,.07);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Tajawal","Tahoma","Arial",sans-serif;color:var(--ink);background:var(--bg);line-height:1.65}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}button{border:0;cursor:pointer}.admin-body{min-height:100vh;overflow-x:hidden}.admin-shell{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh;direction:rtl}.sidebar{background:linear-gradient(180deg,#17191f 0%,#1d2027 100%);color:#fff;padding:22px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:80;border-left:1px solid rgba(255,255,255,.05)}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:4px 8px 22px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark,.auth-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#f7ca69,var(--accent-dark));color:#17191f;font-weight:900;box-shadow:0 10px 30px rgba(239,178,62,.22)}.sidebar-brand img{width:46px;height:46px;border-radius:14px;object-fit:cover}.sidebar-brand strong,.sidebar-brand small{display:block}.sidebar-brand strong{font-size:15px}.sidebar-brand small{font-size:11px;color:#949aa6;margin-top:2px}.sidebar-nav{display:grid;gap:7px;padding:22px 0;flex:1}.sidebar-nav a{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:13px;color:#aeb3bd;font-weight:700;font-size:13px;transition:.2s ease}.sidebar-nav a:hover{background:rgba(255,255,255,.06);color:#fff;transform:translateX(-2px)}.sidebar-nav a.active{background:#fff;color:#17191f;box-shadow:0 12px 30px rgba(0,0,0,.18)}.nav-icon{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.07);font-size:16px}.sidebar-nav a.active .nav-icon{background:#f4f5f7;color:#17191f}.sidebar-footer{border-top:1px solid rgba(255,255,255,.08);padding-top:16px}.user-mini{display:flex;align-items:center;gap:10px;padding:7px}.user-mini>span,.avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#30343e;color:#fff;font-weight:900}.user-mini strong,.user-mini small{display:block;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-mini strong{font-size:12px}.user-mini small{font-size:10px;color:#8e95a2}.logout-link{display:block;text-align:center;color:#d8dbe1;font-size:12px;padding:9px;border-radius:10px;margin-top:8px;background:rgba(255,255,255,.05)}.admin-workspace{min-width:0;display:flex;flex-direction:column}.admin-topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:0 clamp(18px,3vw,38px);position:sticky;top:0;z-index:50}.sidebar-toggle{display:none;width:42px;height:42px;border-radius:12px;background:#f1f3f6;color:#17191f;font-size:20px}.topbar-title{display:grid}.topbar-title span{font-size:10px;color:var(--muted)}.topbar-title strong{font-size:16px}.topbar-user{margin-inline-start:auto;display:flex;align-items:center;gap:9px;padding:8px 12px;background:#f7f8fa;border:1px solid var(--line);border-radius:13px}.topbar-user strong,.topbar-user small{display:block}.topbar-user strong{font-size:12px}.topbar-user small{font-size:10px;color:var(--muted)}.status-pulse{width:9px;height:9px;border-radius:50%;background:#25b278;box-shadow:0 0 0 4px rgba(37,178,120,.12)}.admin-main{padding:30px clamp(18px,3.2vw,44px) 70px;min-width:0}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.page-head span,.panel-kicker{font-size:11px;font-weight:800;color:#b67a0d}.page-head h1{font-size:30px;line-height:1.25;margin:4px 0}.page-head p{color:var(--muted);margin:0;font-size:13px}.dashboard-date{background:#fff;border:1px solid var(--line);padding:10px 15px;border-radius:12px;color:var(--muted);font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.stat{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px;display:flex;align-items:center;gap:13px;box-shadow:0 7px 25px rgba(22,25,31,.035);transition:.2s}.stat:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.stat-icon{width:46px;height:46px;border-radius:14px;background:#f5f0e6;color:#a16a04;display:grid;place-items:center;font-size:20px}.stat strong,.stat span{display:block}.stat strong{font-size:26px;line-height:1}.stat div>span{color:var(--muted);font-size:11px;margin-top:5px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 8px 28px rgba(22,25,31,.035);margin-bottom:18px;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.panel h2{margin:2px 0;font-size:20px}.count-pill{background:#f1f3f6;border:1px solid #e8eaee;border-radius:999px;padding:6px 10px;font-size:11px;color:var(--muted)}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-actions a{display:flex;gap:11px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:14px;background:#fafbfc}.quick-actions a>span{width:37px;height:37px;border-radius:11px;background:#fff;border:1px solid var(--line);display:grid;place-items:center}.quick-actions strong,.quick-actions small{display:block}.quick-actions strong{font-size:12px}.quick-actions small{font-size:10px;color:var(--muted)}.two-col{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(420px,1.18fr);gap:18px}.employee-layout{grid-template-columns:minmax(360px,.8fr) minmax(470px,1.2fr)}.contacts-layout{grid-template-columns:minmax(390px,.82fr) minmax(470px,1.18fr)}.campaign-layout{grid-template-columns:minmax(420px,.88fr) minmax(470px,1.12fr)}.settings-layout{grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr)}.panel form{display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{display:grid;gap:7px;font-size:11px;font-weight:800;color:#555b66}input,textarea,select{width:100%;border:1px solid #dfe2e7;background:#fff;border-radius:11px;padding:11px 13px;color:#17191f;outline:none;transition:.18s}input:focus,textarea:focus,select:focus{border-color:#dba337;box-shadow:0 0 0 3px rgba(239,178,62,.14)}textarea{resize:vertical;min-height:110px}.check{display:flex;align-items:center;gap:8px}.check input,.permission-option input,.toggle-row input{width:auto}.button,button{border-radius:11px;padding:11px 16px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:7px}.primary{background:#17191f;color:#fff;box-shadow:0 9px 20px rgba(23,25,31,.13)}.primary:hover{background:#272a32}.secondary{background:#f1f3f6;color:#242832;border:1px solid #e2e5e9}.secondary:hover{background:#e9ebef}.danger{background:#fff0f1;color:var(--danger);border:1px solid #f5d5d9}.small{padding:7px 10px;font-size:10px}button:disabled{opacity:.45;cursor:not-allowed}.form-actions,.head-actions,.row-actions,.gateway-buttons,.inline-form,.campaign-top,.campaign-stats{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.head-actions{margin-inline-start:auto}.permission-box{border:1px solid var(--line);border-radius:15px;padding:14px;background:#fafbfc}.permission-title{margin-bottom:12px}.permission-title strong,.permission-title small{display:block}.permission-title small{font-size:10px;color:var(--muted);margin-top:3px}.permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.permission-option{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid #e5e8ed;border-radius:11px;background:#fff;font-size:10px}.permission-option input{margin-top:3px}.compact-permissions{margin-top:11px}.employee-list{display:grid;gap:10px}.employee-card{border:1px solid var(--line);border-radius:15px;background:#fafbfc;overflow:hidden}.employee-summary{display:flex;align-items:center;gap:11px;padding:13px}.employee-summary>div:nth-child(2){min-width:0;flex:1}.employee-summary strong,.employee-summary small{display:block}.employee-summary strong{font-size:13px}.employee-summary small{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-permissions{border-top:1px solid var(--line)}.employee-permissions summary{cursor:pointer;padding:11px 14px;font-size:11px;font-weight:800;color:#555b66}.employee-permissions form{padding:0 14px 14px}.delete-employee-form{border-top:1px dashed var(--line);padding-top:12px!important;margin-top:3px}.toggle-label{align-content:start}.toggle-row{display:flex;align-items:center;gap:7px;padding:11px 0}.avatar.small-avatar,.small-avatar{width:34px;height:34px;border-radius:11px;background:#2c3038;color:#fff}.contact-main{display:flex;align-items:center;gap:10px;min-width:0}.table-list{display:grid}.list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.list-row:last-child{border-bottom:0}.list-row strong,.list-row small{display:block}.list-row strong{font-size:12px}.list-row small{font-size:10px;color:var(--muted)}.row-actions{justify-content:flex-end}.row-actions form{display:flex;gap:7px}.badge{background:#eff1f4;color:#5d636e;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.badge.ok{background:#e2f5ed;color:var(--good)}.import-methods{display:grid;gap:10px}.import-card{display:flex;gap:12px;border:1px solid var(--line);border-radius:15px;padding:14px;background:#fafbfc}.import-card>div{flex:1}.import-card h3{font-size:13px;margin:0 0 4px}.import-card p{font-size:10px;color:var(--muted);margin:0 0 10px}.import-icon{width:35px;height:35px;border-radius:11px;background:#17191f;color:#fff;display:grid;place-items:center;font-weight:900;flex:none}.import-form{gap:9px!important}.target-box{background:#f7f8fa;border:1px solid var(--line);padding:14px;border-radius:14px}.campaign-summary{display:flex;gap:10px;flex-wrap:wrap;padding:11px 13px;background:#f1f3f6;border-radius:11px;color:var(--muted);font-size:10px}.campaign-item{padding:15px 0;border-bottom:1px solid var(--line)}.campaign-item:last-child{border-bottom:0}.campaign-top{justify-content:space-between;align-items:flex-start}.campaign-top strong,.campaign-top small{display:block}.campaign-top strong{font-size:12px}.campaign-top small{font-size:10px;color:var(--muted);margin-top:4px}.campaign-progress{margin:12px 0}.progress-track{height:7px;background:#eceef1;border-radius:999px;overflow:hidden}.progress-track i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#f7ce7e);border-radius:inherit;transition:width .3s}.campaign-stats{justify-content:space-between;color:var(--muted);font-size:10px;margin-top:7px}.status-list{display:grid;gap:11px}.status-list>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:10px;font-size:11px}.status-list>div:last-child{border-bottom:0}.good{color:var(--good)}.warn{color:var(--warn)}.empty,.notice{padding:16px;border-radius:13px;background:#f1f3f6;color:var(--muted);font-size:11px}.notice.compact{padding:11px}.flash{max-width:950px;margin:0 auto 16px;padding:12px 15px;border-radius:12px;font-size:12px;font-weight:700}.flash.success{background:#e1f5eb;color:#0c6543}.flash.error{background:#fee8ea;color:#9b2530}.gateway-grid{display:grid;grid-template-columns:minmax(390px,.9fr) minmax(430px,1.1fr);gap:18px}.qr-panel,.gateway-controls{margin:0}.qr-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.qr-stage{min-height:390px;display:grid;place-items:center;border:1px dashed #cfd3d9;border-radius:18px;background:linear-gradient(145deg,#fafbfc,#f0f2f5);margin:18px 0}.qr-stage img{width:min(340px,85%);height:auto;border-radius:14px;background:#fff;padding:12px;box-shadow:0 12px 38px rgba(17,20,28,.12)}.qr-placeholder{display:grid;place-items:center;gap:10px;color:var(--muted);text-align:center}.qr-placeholder strong{width:92px;height:92px;border-radius:24px;background:#17191f;color:#fff;display:grid;place-items:center;font-size:27px}.qr-help{text-align:center;color:var(--muted);font-size:10px}.gateway-buttons{margin-top:16px}.gateway-buttons form{display:inline-flex}.gateway-buttons button{min-width:120px}.gateway-log{margin-top:14px;border:1px solid var(--line);border-radius:12px;background:#f7f8fa;padding:10px}.gateway-log summary{cursor:pointer;font-weight:800;font-size:11px}.gateway-log pre{direction:ltr;text-align:left;white-space:pre-wrap;word-break:break-word;max-height:260px;overflow:auto;background:#17191f;color:#e8e8e8;padding:12px;border-radius:10px;font-size:10px}code{background:#eef0f3;padding:2px 6px;border-radius:6px;direction:ltr;display:inline-block}hr{border:0;border-top:1px solid var(--line);margin:14px 0}.auth-body{min-height:100vh;background:radial-gradient(circle at 10% 10%,rgba(239,178,62,.17),transparent 35%),linear-gradient(135deg,#17191f,#242833);display:grid;place-items:center;padding:24px}.auth-main{width:min(480px,100%)}.auth-brand{display:flex;align-items:center;justify-content:center;gap:12px;color:#fff;margin-bottom:18px}.auth-brand strong,.auth-brand small{display:block}.auth-brand small{color:#aeb3bd;font-size:10px}.auth-card{background:#fff;border:1px solid rgba(255,255,255,.4);border-radius:22px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.auth-card-head{display:flex;gap:13px;align-items:flex-start;margin-bottom:22px}.auth-card-head span:not(.auth-icon){color:#a16a04;font-size:10px;font-weight:800}.auth-card-head h1{margin:2px 0;font-size:25px}.auth-card-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.auth-card form{display:grid;gap:14px}.auth-card .primary{width:100%;margin-top:4px}.auth-security{margin-top:16px;padding:11px;border-radius:11px;background:#f4f5f7;color:var(--muted);text-align:center;font-size:10px}.sidebar-overlay{display:none}.footer{display:none}
@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.two-col,.employee-layout,.contacts-layout,.campaign-layout,.settings-layout,.gateway-grid{grid-template-columns:1fr}.sidebar{width:270px;position:fixed;right:0;transform:translateX(105%);transition:.25s ease}.admin-shell{grid-template-columns:1fr}.sidebar-toggle{display:grid;place-items:center}.admin-shell.nav-open .sidebar{transform:translateX(0)}.sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(12,14,18,.45);z-index:70;opacity:0;pointer-events:none;transition:.25s}.admin-shell.nav-open .sidebar-overlay{opacity:1;pointer-events:auto}}
@media(max-width:680px){.admin-topbar{height:67px;padding:0 13px}.topbar-user div{display:none}.topbar-user{padding:8px}.admin-main{padding:20px 12px 50px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:25px}.dashboard-date{display:none}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat{padding:13px;gap:9px}.stat-icon{width:38px;height:38px}.stat strong{font-size:21px}.panel{padding:16px;border-radius:15px}.form-row,.permission-grid,.quick-actions{grid-template-columns:1fr}.list-row,.employee-summary{align-items:flex-start}.contact-row{flex-direction:column}.row-actions{justify-content:flex-start}.campaign-top{flex-direction:column}.gateway-buttons form,.gateway-buttons button{width:100%}.qr-stage{min-height:280px}.head-actions{width:100%;margin:0}.head-actions button{width:100%}.auth-card{padding:21px}.topbar-title strong{font-size:14px}.import-card{flex-direction:column}.sidebar{width:min(86vw,300px)}}


/* ==========================================================
   v5.5.0 — ProGarage-inspired admin refinement
   Keeps all application behavior unchanged.
   ========================================================== */
:root{
  --bg:#f4f5f7;
  --surface:#ffffff;
  --surface-soft:#f7f8fa;
  --line:#dfe3e8;
  --sidebar:#20242b;
  --sidebar-soft:#2b3038;
  --accent:#b8d400;
  --accent-dark:#98b300;
  --danger:#ff1767;
  --good:#66a900;
  --shadow:none;
}
.admin-shell{grid-template-columns:228px minmax(0,1fr);background:var(--bg)}
.sidebar{
  background:#20242b;
  padding:18px 13px;
  border-left:1px solid #15181d;
  box-shadow:none;
}
.sidebar-brand{
  gap:10px;
  padding:3px 7px 17px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.sidebar-brand .brand-mark,.sidebar-brand img{
  width:39px;height:39px;border-radius:10px;
  background:#343a44;color:#fff;box-shadow:none;
}
.sidebar-brand strong{font-size:13px}
.sidebar-brand small{font-size:9px;color:#9299a5}
.sidebar-nav{gap:4px;padding:16px 0}
.sidebar-nav a{
  min-height:43px;
  padding:10px 12px;
  border-radius:8px;
  color:#c2c7d0;
  font-size:12px;
  font-weight:700;
  border-right:3px solid transparent;
  transition:background .16s,color .16s,border-color .16s;
}
.sidebar-nav a:hover{
  background:#292e36;
  color:#fff;
  transform:none;
}
.sidebar-nav a.active{
  background:#303640;
  color:#fff;
  border-right-color:var(--accent);
  box-shadow:none;
}
.nav-icon{
  width:21px;height:21px;border-radius:0;
  background:transparent!important;
  color:inherit!important;
  font-size:13px;
}
.sidebar-footer{padding-top:13px}
.user-mini{padding:6px 7px}
.user-mini>span{width:33px;height:33px;border-radius:8px;background:#303640}
.logout-link{background:#292e36;border-radius:7px;font-size:10px;margin-top:6px}
.admin-topbar{
  height:61px;
  padding:0 24px;
  border-bottom:1px solid #dfe3e8;
  box-shadow:none;
}
.topbar-title span{font-size:9px}
.topbar-title strong{font-size:14px}
.topbar-user{padding:6px 10px;border-radius:8px;background:#f7f8fa}
.admin-main{padding:23px 25px 55px;background:#f4f5f7}
.page-head{margin-bottom:16px;align-items:center}
.page-head span{font-size:10px;color:#829600}
.page-head h1{font-size:25px;margin:2px 0;color:#252a32}
.page-head p{font-size:11px;color:#7b818b}
.panel,.stat,.gateway-card{
  border:1px solid #d9dee5;
  border-radius:7px;
  box-shadow:none;
  background:#fff;
}
.panel{padding:17px;margin-bottom:16px}
.panel h2{font-size:16px;margin:0}
.panel-heading{
  min-height:45px;
  margin:-17px -17px 16px;
  padding:11px 15px;
  border-radius:6px 6px 0 0;
  background:#303640;
  color:#fff;
  border-bottom:1px solid #23272e;
}
.panel-heading h2{color:#fff;font-size:14px}
.panel-heading .panel-kicker,.panel-heading small{color:#cbd0d7}
.count-pill{background:#424954;border-color:#505866;color:#fff;border-radius:5px}
.stat{padding:15px;border-radius:7px}
.stat-icon{border-radius:7px;background:#f0f2f4;color:#3a404a}
.dashboard-date{border-radius:6px}
input,textarea,select{
  border-radius:5px;
  padding:9px 11px;
  border-color:#d8dde4;
  background:#fff;
}
input:focus,textarea:focus,select:focus{
  border-color:#a7bf00;
  box-shadow:0 0 0 2px rgba(184,212,0,.16);
}
label{font-size:10px;color:#4f5661}
.button,button{border-radius:5px;padding:9px 14px;font-size:11px;box-shadow:none}
.primary{background:var(--accent);color:#20250b;box-shadow:none}
.primary:hover{background:var(--accent-dark);color:#fff}
.secondary{background:#eef1f4;border-color:#d9dee5;color:#333942}
.secondary:hover{background:#e3e7eb}
.danger{background:var(--danger);border-color:var(--danger);color:#fff}
.danger:hover{background:#dc0b55}
.badge{border-radius:4px}
.empty,.notice{border-radius:5px;background:#f1f3f5;border:1px solid #e1e5e9}
.target-box,.permission-box,.employee-card,.import-card,.gateway-log{border-radius:6px}
.table-list{border:1px solid #dfe3e8;border-radius:6px;overflow:hidden;background:#fff}
.list-row{padding:11px 13px;border-bottom:1px solid #e4e7eb}
.list-row:nth-child(even){background:#fafbfc}
.list-row:last-child{border-bottom:0}

/* Campaigns: one full-width administration workspace, similar to ProGarage tables */
.campaign-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px;
}
.campaign-layout .form-panel,.campaign-layout .list-panel{width:100%;max-width:none;margin:0}
#campaign-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 14px;
}
#campaign-form>.form-row,
#campaign-form>.target-box,
#campaign-form>.campaign-summary,
#campaign-form>button,
#campaign-form>label:nth-of-type(2),
#campaign-form>label:nth-of-type(4){grid-column:1/-1}
#campaign-form>button{justify-self:stretch;min-height:42px}
.campaign-summary{border-radius:5px;background:#f3f5f7;border:1px solid #e0e4e8}
.campaigns-list{border:1px solid #d9dee5;border-radius:6px;overflow:hidden}
.campaign-item{padding:13px 15px;background:#fff;border-bottom:1px solid #e0e4e8}
.campaign-item:nth-child(even){background:#fafbfc}
.campaign-item:last-child{border-bottom:0}
.campaign-top strong{font-size:12px;color:#252a32}
.progress-track{height:6px;background:#e5e8ec}
.progress-track i{background:var(--accent)}

/* Contacts and employees retain two-column usability but use compact table styling */
.contacts-layout,.employee-layout,.settings-layout{gap:16px}
.employee-card{background:#fff}
.employee-summary{padding:11px 12px}
.import-card{background:#fff}

@media(max-width:1100px){
  .admin-shell{grid-template-columns:1fr}
  .sidebar{width:248px}
  #campaign-form{grid-template-columns:1fr}
  #campaign-form>*{grid-column:1!important}
}
@media(max-width:680px){
  .admin-topbar{height:59px;padding:0 11px}
  .admin-main{padding:15px 10px 45px}
  .page-head h1{font-size:22px}
  .panel{padding:13px;border-radius:6px}
  .panel-heading{margin:-13px -13px 13px;padding:10px 12px}
  .sidebar{width:min(82vw,280px)}
}

/* ==========================================================
   v5.5.1 — restore the original compact sidebar
   Fixes stretched grid rows that created huge empty gaps.
   ========================================================== */
.admin-shell{grid-template-columns:230px minmax(0,1fr)}
.sidebar{
  background:#17191f;
  padding:25px 16px;
  border-left:0;
  box-shadow:none;
}
.sidebar-brand{
  gap:12px;
  padding:4px 8px 20px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.sidebar-brand .brand-mark,.sidebar-brand img{
  width:44px;height:44px;border-radius:13px;
  background:#2b2e36;color:#fff;box-shadow:none;
}
.sidebar-brand strong{font-size:15px}
.sidebar-brand small{font-size:11px;color:#949aa6}
.sidebar-nav{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  align-content:flex-start;
  flex:0 0 auto;
  gap:7px;
  padding:20px 0;
}
.sidebar-nav a{
  min-height:0;
  padding:12px 14px;
  border:0;
  border-radius:11px;
  color:#b9bdc6;
  font-size:13px;
  font-weight:700;
  transition:background .16s,color .16s;
}
.sidebar-nav a:hover,.sidebar-nav a.active{
  background:#2b2e36;
  color:#fff;
  border:0;
  box-shadow:none;
  transform:none;
}
.nav-icon{
  width:28px;height:28px;
  border-radius:8px;
  background:rgba(255,255,255,.07)!important;
  color:inherit!important;
  font-size:14px;
}
.sidebar-nav a.active .nav-icon{background:rgba(255,255,255,.10)!important;color:#fff!important}
.sidebar-footer{margin-top:auto;padding-top:16px}
.user-mini{padding:7px}
.user-mini>span{width:38px;height:38px;border-radius:12px;background:#30343e}
.logout-link{background:rgba(255,255,255,.05);border-radius:10px;font-size:12px;margin-top:8px}

@media(max-width:1100px){
  .admin-shell{grid-template-columns:1fr}
  .sidebar{width:270px}
}
@media(max-width:680px){
  .sidebar{width:min(86vw,300px)}
}
.sidebar{overflow-y:auto;overscroll-behavior:contain}

/* ==========================================================
   v5.5.2 — Arabic typography + legal wording + dashboard polish
   ========================================================== */

body,
button,
input,
textarea,
select,
label,
small,
.notice,
.badge,
.count-pill,
.sidebar-brand small,
.topbar-title span,
.auth-card-head p,
.page-head p,
.panel-kicker{
  font-family:"Tajawal","Tahoma","Arial",sans-serif;
}

h1,h2,h3,h4,h5,h6,
.page-head h1,
.panel h2,
.sidebar-brand strong,
.topbar-title strong,
.auth-card-head h1,
.auth-brand strong,
.list-row strong,
.employee-summary strong,
.quick-actions strong,
.panel-heading h2,
.permission-title strong{
  font-family:"Noto Kufi Arabic","Tajawal","Tahoma","Arial",sans-serif;
  letter-spacing:-.01em;
}

.auth-brand,
.auth-card-head,
.sidebar-brand{align-items:center}
.auth-brand strong,.sidebar-brand strong{font-size:16px}
.auth-brand small,.sidebar-brand small{font-size:11px}
.brand-mark,.auth-icon{
  font-size:20px;
  line-height:1;
}
.auth-icon{
  background:linear-gradient(145deg,#ffe68a,#efb23e);
  color:#1b1d22;
}
.auth-card-head span:not(.auth-icon){font-size:11px;color:#8f6b11}
.auth-card-head h1{font-size:28px}
.auth-card-head p{font-size:12px;line-height:1.9}
.auth-security{
  font-size:11px;
  line-height:1.9;
  color:#4f5661;
}

.topbar-title span{font-size:10px}
.topbar-title strong{font-size:17px}
.admin-topbar{justify-content:flex-start}

.page-head h1{font-size:29px}
.page-head p{font-size:13px;line-height:1.9;max-width:780px}
.page-head span,.panel-kicker{font-size:11px}

.stats-grid{gap:16px}
.stat{
  display:grid;
  justify-items:center;
  text-align:center;
  gap:12px;
  padding:18px 14px;
  min-height:146px;
}
.stat-icon{
  width:58px;
  height:58px;
  border-radius:16px;
  font-size:24px;
  display:grid;
  place-items:center;
}
.stat div{display:grid;justify-items:center;gap:4px}
.stat strong{font-size:30px}
.stat div>span{font-size:12px;line-height:1.8}
.stats-grid .stat:nth-child(1){background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);border-color:#d6e7ff}
.stats-grid .stat:nth-child(1) .stat-icon{background:#eaf4ff;color:#1f6fd5}
.stats-grid .stat:nth-child(2){background:linear-gradient(180deg,#ffffff 0%,#f6fcfb 100%);border-color:#d7efe7}
.stats-grid .stat:nth-child(2) .stat-icon{background:#e7f8f1;color:#13805f}
.stats-grid .stat:nth-child(3){background:linear-gradient(180deg,#ffffff 0%,#fffaf3 100%);border-color:#f1e0bf}
.stats-grid .stat:nth-child(3) .stat-icon{background:#fff1d9;color:#b47400}
.stats-grid .stat:nth-child(4){background:linear-gradient(180deg,#ffffff 0%,#f8f7ff 100%);border-color:#e2dbff}
.stats-grid .stat:nth-child(4) .stat-icon{background:#ece8ff;color:#6a45d1}

.quick-actions a span,
.nav-icon{font-size:15px}

.status-list b,
.quick-actions strong,
.count-pill,
.badge,
button,
.primary,
.secondary,
.danger,
.logout-link,
.sidebar-nav a{font-weight:800}

@media(max-width:680px){
  .page-head h1{font-size:24px}
  .auth-card-head h1{font-size:24px}
  .stat{min-height:128px;padding:14px 10px}
  .stat strong{font-size:24px}
  .stat div>span{font-size:11px}
}

/* ==========================================================
   v5.5.3 — icon alignment, action cards, login icon and sync note
   ========================================================== */
.brand-mark svg,
.auth-icon svg,
.stat-icon svg,
.quick-icon svg{
  width:1em;
  height:1em;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}

.auth-icon-login{
  background:linear-gradient(145deg,#222936,#343e4e)!important;
  color:#ffd45d!important;
  border:1px solid rgba(255,212,93,.5);
  box-shadow:0 12px 30px rgba(24,29,38,.2)!important;
}
.auth-icon-login svg{width:25px;height:25px;stroke-width:2.05}
.brand-mark-shopping{
  background:linear-gradient(145deg,#f8cf65,#e9a51f)!important;
  color:#20242c!important;
}
.brand-mark-shopping svg{width:23px;height:23px;stroke-width:2}
.auth-card-head>div{min-width:0}
.auth-card-head h1{margin-top:0}

.stat{
  align-content:center;
  justify-content:center;
}
.stat-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  place-items:center!important;
  padding:0!important;
  line-height:0!important;
  flex:none;
}
.stat-icon svg{width:28px;height:28px}
.stat-employees{background:linear-gradient(180deg,#fff 0%,#f4f9ff 100%)!important;border-color:#cfe2ff!important}
.stat-employees .stat-icon{background:#e4f1ff!important;color:#216bd1!important}
.stat-contacts{background:linear-gradient(180deg,#fff 0%,#f2fbf7 100%)!important;border-color:#ceeadd!important}
.stat-contacts .stat-icon{background:#dff6eb!important;color:#087b58!important}
.stat-campaigns{background:linear-gradient(180deg,#fff 0%,#fff8ed 100%)!important;border-color:#f0dbb7!important}
.stat-campaigns .stat-icon{background:#ffedcf!important;color:#aa6800!important}
.stat-consent{background:linear-gradient(180deg,#fff 0%,#f7f4ff 100%)!important;border-color:#ded5ff!important}
.stat-consent .stat-icon{background:#ebe5ff!important;color:#6441c7!important}

.quick-actions{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.quick-actions a.quick-action{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  align-items:center;
  gap:13px;
  min-height:88px;
  padding:14px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:10px;
}
.quick-actions a.quick-action:hover{transform:translateY(-1px);border-color:#cfd5dc}
.quick-icon{
  width:52px!important;
  height:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  place-items:center!important;
  border-radius:14px!important;
  border:0!important;
  line-height:0!important;
  padding:0!important;
}
.quick-icon svg{width:25px;height:25px}
.quick-action-import .quick-icon{background:#e6f3ff!important;color:#236fc9!important}
.quick-action-campaign .quick-icon{background:#fff0d7!important;color:#a96700!important}
.quick-action-whatsapp .quick-icon{background:#ddf6e9!important;color:#07845b!important}
.quick-action-employee .quick-icon{background:#eee8ff!important;color:#6742c7!important}
.quick-actions a>div{min-width:0}
.quick-actions strong{font-size:13px!important;line-height:1.6}
.quick-actions small{font-size:10px!important;line-height:1.8}

.sync-note{margin-top:10px;line-height:1.9}
.range-demo-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0}
.range-demo-actions span{font-size:10px;color:var(--muted)}
.range-preview{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  padding:11px;
  margin-bottom:10px;
  border:1px dashed #ccd3dc;
  border-radius:8px;
  background:#fff;
  direction:ltr;
}
.range-preview span{
  display:block;
  padding:7px 9px;
  border-radius:6px;
  background:#f2f4f7;
  color:#313740;
  font:700 11px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;
  text-align:center;
}
.range-preview[hidden]{display:none!important}

@media(max-width:680px){
  .quick-actions{grid-template-columns:1fr}
  .quick-actions a.quick-action{grid-template-columns:52px minmax(0,1fr);min-height:80px}
  .quick-icon{width:48px!important;height:48px!important}
  .range-preview{grid-template-columns:1fr}
}

/* v5.6.0 — hierarchy, account, isolated WhatsApp and bulk contacts */
.nav-icon svg{width:17px;height:17px;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.sidebar-nav .nav-icon{display:flex!important;align-items:center!important;justify-content:center!important;background:#eee8ff!important;color:#7148d8!important;border:1px solid rgba(113,72,216,.18)}
.sidebar-nav a:hover .nav-icon,.sidebar-nav a.active .nav-icon{background:#eee8ff!important;color:#7148d8!important;box-shadow:0 0 0 3px rgba(113,72,216,.10)}
.user-mini{color:inherit;text-decoration:none}.user-mini:hover{background:rgba(255,255,255,.05);border-radius:11px}
.account-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.account-summary{grid-column:1/-1}.permission-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.permission-tags span{padding:7px 10px;border-radius:999px;background:#f0ecff;color:#6540c5;border:1px solid #e0d7ff;font-size:10px;font-weight:800}
.account-filter-panel{padding:12px 16px;margin-bottom:14px}.account-filter-panel form{display:flex;align-items:center;gap:10px}.account-filter-panel label{min-width:min(100%,340px)}
.bulk-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:11px 12px;background:#f7f8fa;border:1px solid var(--line);border-radius:8px;margin-bottom:10px;position:sticky;top:72px;z-index:8}.bulk-select-all{display:flex;align-items:center;gap:7px;font-size:11px}.bulk-select-all input,.contact-select{width:17px;height:17px;accent-color:#7148d8}.bulk-toolbar>span{font-size:10px;color:var(--muted);font-weight:800}.bulk-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-inline-start:auto}.selectable-row{cursor:pointer;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.selectable-row.selected{background:#f4f0ff!important;box-shadow:inset -3px 0 #7148d8}.contact-select{margin:0 2px}
.campaign-details{margin-top:10px;border-top:1px dashed var(--line);padding-top:8px}.campaign-details summary{cursor:pointer;font-size:10px;font-weight:800;color:#5f6570}.campaign-details p{white-space:normal;font-size:11px;line-height:1.9;background:#f7f8fa;border:1px solid var(--line);padding:10px;border-radius:7px}.campaign-details small{color:var(--muted);font-size:9px}
.message-audit-panel{margin-top:18px}.message-log-list{display:grid;gap:8px;max-height:620px;overflow:auto}.message-log-row{border:1px solid var(--line);border-radius:9px;padding:11px 13px;background:#fff}.message-log-row.inbound{border-right:4px solid #1a9b72;background:#f6fcfa}.message-log-row.outbound{border-right:4px solid #7148d8;background:#faf8ff}.message-log-row strong,.message-log-row small{display:block}.message-log-row strong{font-size:11px}.message-log-row small{font-size:9px;color:var(--muted);direction:ltr;text-align:right}.message-log-row p{margin:8px 0 0;font-size:11px;line-height:1.8;white-space:normal}
@media(max-width:900px){.account-layout{grid-template-columns:1fr}.account-summary{grid-column:auto}}
@media(max-width:680px){.bulk-toolbar{top:65px;align-items:stretch}.bulk-actions{width:100%;margin:0}.bulk-actions button{flex:1}.selectable-row{grid-template-columns:auto minmax(0,1fr);gap:8px}.selectable-row>.badge{grid-column:2}}

/* v5.6.9 — message tracking references */
.tracking-notice{margin-top:2px;border-right:4px solid #7148d8;background:#faf8ff;color:#4a3b77}
.message-log-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tracking-reference-badge{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border:1px solid #dcd3fb;border-radius:999px;background:#f2efff;color:#5b3db3;font-family:"Tajawal","Tahoma",sans-serif;font-size:9px;font-weight:800;direction:ltr;white-space:nowrap}
@media(max-width:680px){.message-log-head{display:grid}.tracking-reference-badge{justify-self:start}}

/* ==========================================================
   v5.7.0 — multi-supervisor hierarchy and audit refinements
   ========================================================== */
.supervisor-box{border:1px solid var(--line);border-radius:12px;padding:14px;background:#f8f9fb;display:grid;gap:11px}
.supervisor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.supervisor-option{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid #e2e6ec;border-radius:9px;background:#fff;cursor:pointer}
.supervisor-option input{width:auto;margin-top:4px}
.supervisor-option span,.supervisor-option b,.supervisor-option small{display:block}
.supervisor-option b{font-size:11px;color:#303640}
.supervisor-option small{font-size:9px;color:var(--muted);direction:ltr;text-align:right}
.compact-supervisors{margin-top:12px}
.supervisor-summary{margin-top:4px;color:#6d5db5!important;white-space:normal!important}
.campaign-stats{gap:12px}
.campaign-stats span{white-space:nowrap}
.message-audit-panel{grid-column:1/-1}
@media(max-width:680px){.supervisor-grid{grid-template-columns:1fr}.supervisor-option{padding:9px}}

/* v5.7.1 — WhatsApp full-history sync and phone normalisation controls */
.whatsapp-sync-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}
.whatsapp-sync-actions form{display:inline-flex;margin:0}
.whatsapp-sync-actions button{min-height:40px}
label small{display:block;color:var(--muted);font-weight:600;line-height:1.75;margin-top:2px}
@media(max-width:680px){.whatsapp-sync-actions,.whatsapp-sync-actions form,.whatsapp-sync-actions button{width:100%}}
/* Owner-only business lead collector */
.collector-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;background:linear-gradient(135deg,#171b23,#29313d);color:#fff;border-radius:20px;padding:26px;margin-bottom:18px}.collector-hero h1{margin:4px 0 8px;font-size:28px}.collector-hero p{margin:0;max-width:850px;color:#d8dee8;line-height:1.8}.collector-hero span{color:#b8dc00;font-weight:800}.collector-lock{background:#ffffff12;border:1px solid #ffffff1f;padding:12px 16px;border-radius:14px;white-space:nowrap}.collector-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:18px;margin-bottom:18px}.collector-form textarea{min-height:220px;resize:vertical}.collector-sources{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.collector-sources label{display:flex;align-items:center;gap:7px;background:#f1f3f6;border:1px solid #dfe3e8;padding:9px 12px;border-radius:11px}.collector-start{width:100%;min-height:48px}.collector-jobs{max-height:620px;overflow:auto}.collector-job{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px;border:1px solid #e2e6eb;border-radius:13px;margin-bottom:9px;text-decoration:none;color:inherit}.collector-job.active{border-color:#a8c800;background:#f8fbe9}.collector-job div{display:grid;gap:4px}.collector-job small{color:#727987}.status-pill{font-size:12px;padding:5px 9px;border-radius:999px;background:#edf0f4}.status-pill.running{background:#fff1c7;color:#7a5700}.status-pill.completed{background:#dff6e8;color:#166534}.status-pill.failed{background:#fee2e2;color:#991b1b}.collector-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.collector-actions form{margin:0}.collector-stats{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin:15px 0}.collector-stats>div{background:#f5f7f9;border:1px solid #e3e7ec;border-radius:14px;padding:14px;display:grid;gap:6px}.collector-stats span{font-size:12px;color:#737b88}.collector-stats b{font-size:20px}.collector-number-list{position:absolute;left:-99999px;width:1px;height:1px}.collector-table-wrap{overflow:auto;max-height:650px;border:1px solid #e0e4e9;border-radius:14px}.collector-table{width:100%;border-collapse:collapse}.collector-table th,.collector-table td{padding:11px 12px;border-bottom:1px solid #e9ecf0;text-align:right;vertical-align:top}.collector-table th{position:sticky;top:0;background:#2f3743;color:#fff;z-index:1}.collector-table td a{font-weight:700}.danger{background:#ed1451;color:#fff;border:0;border-radius:10px;padding:10px 14px}.empty-state{padding:28px;text-align:center;color:#7a818d}
@media(max-width:980px){.collector-grid{grid-template-columns:1fr}.collector-hero{align-items:flex-start;flex-direction:column}.collector-stats{grid-template-columns:repeat(2,1fr)}.collector-actions{width:100%}.collector-actions>*{flex:1}.collector-actions form button{width:100%}}


/* ReachFlow v5.9.1 — fixed-height customer list and full-card employee accordion */
.contacts-layout .list-panel{
  align-self:start;
  min-width:0;
}
.contacts-bulk-form{
  min-width:0;
}
.contacts-list{
  max-height:clamp(430px,64vh,760px);
  min-height:220px;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  padding-inline-end:6px;
  border-top:1px solid var(--line);
}
.contacts-list::-webkit-scrollbar{width:9px}
.contacts-list::-webkit-scrollbar-track{background:#f1f3f6;border-radius:999px}
.contacts-list::-webkit-scrollbar-thumb{background:#c6cad1;border-radius:999px;border:2px solid #f1f3f6}
.contacts-list .contact-row{
  padding-inline:4px;
}
.employee-card.employee-permissions{
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff;
  overflow:hidden;
}
.employee-card.employee-permissions > summary{
  list-style:none;
  cursor:pointer;
  user-select:none;
  transition:background .18s ease;
}
.employee-card.employee-permissions > summary::-webkit-details-marker{display:none}
.employee-card.employee-permissions > summary:hover{background:#f6f7f9}
.employee-card.employee-permissions[open] > summary{
  background:#f3f5f8;
  border-bottom:1px solid var(--line);
}
.employee-card.employee-permissions > form{
  padding:14px;
}
.employee-card .employee-chevron{
  flex:none;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#eef0f3;
  color:#555b66;
  font-size:18px;
  line-height:1;
  transition:transform .18s ease, background .18s ease;
}
.employee-card[open] .employee-chevron{
  transform:rotate(180deg);
  background:#e2e5e9;
}
.phone-picker-result[hidden]{display:none!important}

@media(max-width:680px){
  .contacts-layout .list-panel{
    width:100%;
  }
  .contacts-list{
    max-height:58vh;
    min-height:300px;
    padding-inline-end:3px;
  }
  .contacts-list .contact-row{
    flex-direction:row;
    align-items:center;
    gap:8px;
    padding:10px 2px;
  }
  .contacts-list .contact-main{
    flex:1;
    min-width:0;
  }
  .contacts-list .contact-main > div{
    min-width:0;
  }
  .contacts-list .contact-main strong,
  .contacts-list .contact-main small{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .contacts-list .badge{
    flex:none;
    max-width:104px;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .employee-card .employee-summary{
    align-items:center;
  }
  .employee-card .employee-summary .badge{
    margin-inline-start:auto;
  }
}


/* ReachFlow v5.9.2 — circular yellow brand icon with red glyph */
.sidebar-brand .brand-mark-shopping,
.auth-brand .brand-mark-shopping{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  background:linear-gradient(145deg,#ffd55f,#f2ad22)!important;
  color:#d71920!important;
  border:1px solid rgba(255,214,90,.72)!important;
  box-shadow:0 8px 20px rgba(242,173,34,.22)!important;
}
.sidebar-brand .brand-mark-shopping svg,
.auth-brand .brand-mark-shopping svg{
  width:23px!important;
  height:23px!important;
  stroke:currentColor!important;
  stroke-width:2.15!important;
}


/* ReachFlow v5.9.3 — principal-owner message audit */
.audit-filter-form{
  display:grid;
  grid-template-columns:minmax(180px,260px) minmax(260px,1fr) auto auto;
  gap:10px;
  align-items:end;
  margin-bottom:12px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#f7f8fa;
}
.audit-filter-form label{margin:0}
.audit-filter-form .button-link{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 14px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--text);
  text-decoration:none;
  font-weight:700;
}
.audit-account-tabs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:2px 0 12px;
  scrollbar-width:thin;
}
.audit-account-tabs a{
  flex:none;
  padding:9px 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--text);
  text-decoration:none;
  font-weight:700;
  white-space:nowrap;
}
.audit-account-tabs a.active{
  background:#222831;
  color:#fff;
  border-color:#222831;
}
.owner-audit-panel .message-log-list{
  max-height:66vh;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
@media(max-width:760px){
  .audit-filter-form{grid-template-columns:1fr}
  .audit-filter-form button,.audit-filter-form .button-link{width:100%}
  .audit-account-tabs{margin-inline:-4px;padding-inline:4px}
  .owner-audit-panel .message-log-list{max-height:60vh}
}


/* ReachFlow v5.9.4 — official logo assets */
.reachflow-brand-logo,
.workspace-brand-logo,
.reachflow-login-logo{
  display:block;
  object-fit:cover;
  object-position:center;
  flex:none;
  background:#02082c;
}
.sidebar-brand .reachflow-brand-logo-sidebar,
.sidebar-brand .workspace-brand-logo{
  width:54px;
  height:54px;
  min-width:54px;
  border-radius:50%;
  padding:0;
  border:1px solid rgba(50,230,210,.34);
  box-shadow:0 8px 22px rgba(0,225,210,.16);
}
.auth-brand .reachflow-brand-logo-auth{
  width:68px;
  height:68px;
  min-width:68px;
  border-radius:50%;
  border:1px solid rgba(50,230,210,.38);
  box-shadow:0 12px 34px rgba(0,225,210,.20);
}
.reachflow-login-logo{
  width:82px;
  height:82px;
  min-width:82px;
  border-radius:50%;
  border:1px solid rgba(39,225,210,.32);
  box-shadow:0 12px 32px rgba(0,25,70,.20);
}
.sidebar-brand > div{
  min-width:0;
}
.sidebar-brand strong,
.sidebar-brand small{
  overflow:hidden;
  text-overflow:ellipsis;
}
@media(max-width:680px){
  .sidebar-brand .reachflow-brand-logo-sidebar,
  .sidebar-brand .workspace-brand-logo{
    width:48px;
    height:48px;
    min-width:48px;
  }
  .auth-brand .reachflow-brand-logo-auth{
    width:62px;
    height:62px;
    min-width:62px;
  }
  .reachflow-login-logo{
    width:72px;
    height:72px;
    min-width:72px;
  }
}


/* ReachFlow v5.9.5 — full uncropped transparent logo */
.reachflow-brand-logo,
.workspace-brand-logo,
.reachflow-login-logo{
  object-fit:contain !important;
  object-position:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 !important;
}
.sidebar-brand .reachflow-brand-logo-sidebar,
.sidebar-brand .workspace-brand-logo{
  width:88px !important;
  height:64px !important;
  min-width:88px !important;
}
.auth-brand .reachflow-brand-logo-auth{
  width:132px !important;
  height:104px !important;
  min-width:132px !important;
}
.reachflow-login-logo{
  width:150px !important;
  height:118px !important;
  min-width:150px !important;
}
@media(max-width:680px){
  .sidebar-brand .reachflow-brand-logo-sidebar,
  .sidebar-brand .workspace-brand-logo{
    width:76px !important;
    height:56px !important;
    min-width:76px !important;
  }
  .auth-brand .reachflow-brand-logo-auth{
    width:116px !important;
    height:92px !important;
    min-width:116px !important;
  }
  .reachflow-login-logo{
    width:126px !important;
    height:100px !important;
    min-width:126px !important;
  }
}


/* ReachFlow v5.9.6 — dedicated UI icon; never stretch or show the full profile artwork */
.reachflow-brand-logo,
.reachflow-login-logo{
  display:block !important;
  object-fit:contain !important;
  object-position:center !important;
  width:auto;
  height:auto;
  max-width:100%;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.sidebar-brand .reachflow-brand-logo-sidebar{
  width:62px !important;
  height:44px !important;
  min-width:62px !important;
  max-width:62px !important;
  max-height:44px !important;
}
.auth-brand .reachflow-brand-logo-auth{
  width:76px !important;
  height:54px !important;
  min-width:76px !important;
  max-width:76px !important;
  max-height:54px !important;
}
.auth-card-head .reachflow-login-logo{
  width:88px !important;
  height:62px !important;
  min-width:88px !important;
  max-width:88px !important;
  max-height:62px !important;
}
.auth-main,
.auth-card,
.auth-card-head,
.auth-brand{
  overflow:visible;
}
@media(max-width:680px){
  .sidebar-brand .reachflow-brand-logo-sidebar{
    width:54px !important;
    height:38px !important;
    min-width:54px !important;
  }
  .auth-brand .reachflow-brand-logo-auth{
    width:68px !important;
    height:48px !important;
    min-width:68px !important;
  }
  .auth-card-head .reachflow-login-logo{
    width:76px !important;
    height:54px !important;
    min-width:76px !important;
  }
}


/* ReachFlow v5.9.21 — compact actions and rotating templates */
.rotating-message-fields{display:grid;gap:14px}.rotating-message-fields[hidden]{display:none!important}
input[type="file"]{font-size:10px!important;line-height:1.2!important;padding:7px 8px!important}
input[type="file"]::file-selector-button{min-height:28px!important;padding:4px 9px!important;margin-inline-end:8px!important;border:0!important;border-radius:7px!important;background:#eef1f4!important;color:#242832!important;font-size:10px!important;font-weight:700!important}
.whatsapp-sync-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:12px 0!important}
.whatsapp-sync-actions form{display:block!important;width:100%!important;margin:0!important}
.whatsapp-sync-actions .sync-action{width:100%!important;min-width:0!important;min-height:34px!important;padding:6px 8px!important;font-size:10px!important;line-height:1.25!important;border:0!important;color:#fff!important;box-shadow:none!important}
.sync-action-history{background:linear-gradient(135deg,#9fc918,#7da900)!important}.sync-action-relink{background:linear-gradient(135deg,#ef315e,#c71848)!important}.sync-action-resolve{background:linear-gradient(135deg,#7c55d9,#6039b7)!important}.sync-action-import{background:linear-gradient(135deg,#278bd8,#166fb9)!important}
.bulk-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;width:min(100%,540px)!important}.bulk-actions button{width:100%!important;min-width:0!important;min-height:32px!important;white-space:nowrap!important}
.sidebar-toggle{width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#17191f!important;font-size:30px!important;font-weight:900!important;line-height:1!important}
@media(max-width:680px){.whatsapp-sync-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}.whatsapp-sync-actions .sync-action{min-height:36px!important;font-size:9px!important;padding:5px 6px!important}.bulk-actions{width:100%!important}.bulk-actions button{font-size:9px!important;padding:5px!important}.sidebar-toggle{font-size:31px!important}}


/* ReachFlow v5.9.22 — two-font identity, toggle mode, clean fields */
:root{
  --font-primary:"Noto Kufi Arabic","Tajawal","Tahoma","Arial",sans-serif;
  --font-secondary:"Tajawal","Tahoma","Arial",sans-serif;
}
h1,h2,h3,h4,h5,h6,
.page-head h1,.panel-heading h2,.sidebar-brand strong,.topbar-title strong,
.auth-card-head h1,.stat strong,.quick-actions strong,button,.button,.button-link,
label,.panel-kicker,.message-mode-copy strong{
  font-family:var(--font-primary)!important;
  letter-spacing:-.02em;
}
body,input,textarea,select,small,p,.page-head p,.sidebar-brand small,
.topbar-title span,.topbar-user small,.notice,.empty,.message-mode-copy span{
  font-family:var(--font-secondary)!important;
}
input::placeholder,textarea::placeholder{
  color:transparent!important;
  opacity:0!important;
}
.message-mode-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:72px;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:15px;
  background:linear-gradient(135deg,#fff,#f7f8fa);
}
.message-mode-copy{min-width:0;display:grid;gap:4px}
.message-mode-copy strong{color:var(--ink);font-size:12px;font-weight:800}
.message-mode-copy span{color:var(--muted);font-size:11px;font-weight:600}
.switch-control{
  position:relative;
  display:inline-flex!important;
  flex:none;
  width:54px;
  height:30px;
  cursor:pointer;
}
.switch-control input{position:absolute;opacity:0;pointer-events:none}
.switch-slider{
  position:absolute;
  inset:0;
  border-radius:999px;
  background:#dfe3e8;
  border:1px solid #d4d9df;
  transition:.22s ease;
  box-shadow:inset 0 1px 3px rgba(20,24,32,.08);
}
.switch-slider::after{
  content:"";
  position:absolute;
  top:3px;
  right:3px;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 3px 9px rgba(20,24,32,.20);
  transition:.22s ease;
}
.switch-control input:checked + .switch-slider{
  background:linear-gradient(135deg,#24b47e,#159463);
  border-color:#159463;
}
.switch-control input:checked + .switch-slider::after{transform:translateX(-24px)}
.switch-control input:focus-visible + .switch-slider{
  outline:3px solid rgba(36,180,126,.20);
  outline-offset:2px;
}
.rotating-message-fields{
  display:grid;
  gap:14px;
  padding:15px;
  border:1px solid #dcefe7;
  border-radius:15px;
  background:#f7fcfa;
}
.rotating-message-fields[hidden]{display:none!important}
@media(max-width:680px){
  .message-mode-card{min-height:66px;padding:12px 13px}
  .message-mode-copy strong{font-size:11px}
  .message-mode-copy span{font-size:10px}
}


/* ReachFlow v5.9.23 — edit delay before resuming a paused campaign */
.campaign-resume-panel{
  display:grid !important;
  grid-template-columns:minmax(180px,1fr) minmax(190px,.8fr) auto;
  align-items:end;
  gap:12px !important;
  margin-top:13px;
  padding:13px;
  border:1px solid #d9e9e2;
  border-radius:14px;
  background:linear-gradient(135deg,#f8fcfa,#f3f7f5);
}
.campaign-resume-copy{
  display:grid;
  gap:4px;
  align-self:center;
}
.campaign-resume-copy strong{
  font-family:var(--font-primary)!important;
  color:var(--ink);
  font-size:11px;
}
.campaign-resume-copy small{
  color:var(--muted);
  font-size:10px;
  line-height:1.55;
}
.campaign-resume-fields{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.campaign-resume-fields label{
  display:grid;
  grid-template-columns:auto minmax(70px,1fr) auto;
  align-items:center;
  gap:6px;
  margin:0;
  font-size:10px;
}
.campaign-resume-fields input{
  min-height:34px;
  padding:6px 8px !important;
  text-align:center;
}
.campaign-resume-fields small{
  font-size:9px;
  color:var(--muted);
}
.campaign-resume-actions{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}
.campaign-resume-actions button{
  white-space:nowrap;
  min-height:34px !important;
}
.campaign-control-actions{
  margin-top:12px;
}
@media(max-width:900px){
  .campaign-resume-panel{
    grid-template-columns:1fr 1fr;
  }
  .campaign-resume-copy{
    grid-column:1/-1;
  }
}
@media(max-width:620px){
  .campaign-resume-panel{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .campaign-resume-copy,
  .campaign-resume-fields,
  .campaign-resume-actions{
    grid-column:auto;
  }
  .campaign-resume-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .campaign-resume-actions button{
    width:100%;
  }
}


/* ReachFlow v5.9.24 — paused campaign message editor */
.campaign-resume-message-box{
  grid-column:1/-1;
  display:grid;
  gap:12px;
  padding:13px;
  border:1px solid #e3e7ec;
  border-radius:14px;
  background:#fff;
}
.message-mode-card.compact{
  min-height:58px;
  padding:10px 12px;
}
.campaign-resume-message-box > label,
.resume-extra-messages label{
  display:grid;
  gap:7px;
}
.campaign-resume-message-box textarea{
  min-height:110px;
  resize:vertical;
}
.resume-extra-messages{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.resume-extra-messages[hidden]{
  display:none !important;
}
@media(max-width:700px){
  .resume-extra-messages{
    grid-template-columns:1fr;
  }
}


/* ReachFlow v5.9.25 — campaign ETA and scheduled breaks */
.campaign-break-settings{
  display:grid;
  gap:12px;
  margin-top:12px;
  padding:14px;
  border:1px solid #dde8e2;
  border-radius:15px;
  background:linear-gradient(135deg,#f9fcfb,#f4f8f6);
}
.campaign-break-copy{display:grid;gap:4px}
.campaign-break-copy strong{
  font-family:var(--font-primary)!important;
  font-size:12px;
  color:var(--ink);
}
.campaign-break-copy small{
  color:var(--muted);
  font-size:10px;
}
.campaign-time-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:12px 0;
}
.campaign-time-summary>div{
  display:grid;
  gap:4px;
  min-height:58px;
  padding:10px 12px;
  border:1px solid #e4e8ec;
  border-radius:12px;
  background:#f8f9fa;
}
.campaign-time-summary small{
  color:var(--muted);
  font-size:9px;
}
.campaign-time-summary strong{
  font-family:var(--font-primary)!important;
  color:var(--ink);
  font-size:11px;
  line-height:1.55;
}
.campaign-time-summary [data-campaign-break-state]{
  background:#fff8e7;
  border-color:#f0dfae;
}
@media(max-width:700px){
  .campaign-time-summary{
    grid-template-columns:1fr;
  }
}

/* ReachFlow v5.9.31 — public subscription and billing account */
.auth-subscribe-link{
  margin-top:13px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  flex-wrap:wrap;
  border:1px solid #dcefe6;
  border-radius:12px;
  background:#f4fbf8;
  color:#5f6b76;
  font-size:10px;
}
.auth-subscribe-link a{
  color:#087c5a;
  font-weight:900;
}
.auth-subscribe-link a:hover{text-decoration:underline}
.subscription-panel{grid-column:1/-1}
.subscription-price{
  display:inline-flex;
  align-items:baseline;
  gap:4px;
  padding:8px 12px;
  border-radius:12px;
  background:#e8f9f1;
  color:#087a59;
  font-size:19px;
  font-weight:900;
  white-space:nowrap;
}
.subscription-price small{font-size:9px;font-weight:700;color:#5e756b}
.subscription-status-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.subscription-status-grid>div{
  --subscription-card-start:#075f4e;
  --subscription-card-end:#0c9975;
  --subscription-card-label:#c8f8e8;
  --subscription-card-value:#fff;
  --subscription-card-border:rgba(192,255,233,.34);
  --subscription-card-shadow:rgba(5,91,70,.23);
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:132px;
  padding:19px;
  padding-inline-end:72px;
  border:1px solid var(--subscription-card-border);
  border-radius:18px;
  background:linear-gradient(135deg,var(--subscription-card-start),var(--subscription-card-end));
  box-shadow:0 14px 30px var(--subscription-card-shadow),inset 0 1px 0 rgba(255,255,255,.16);
  color:var(--subscription-card-value);
  text-align:right;
  transition:transform .2s ease,box-shadow .2s ease;
}
.subscription-status-grid>.subscription-status-card--period{
  --subscription-card-start:#31449e;
  --subscription-card-end:#6558d9;
  --subscription-card-label:#e0e3ff;
  --subscription-card-border:rgba(221,224,255,.35);
  --subscription-card-shadow:rgba(49,55,151,.24);
}
.subscription-status-grid>.subscription-status-card--renewal{
  --subscription-card-start:#84520d;
  --subscription-card-end:#c18416;
  --subscription-card-label:#fff0c1;
  --subscription-card-border:rgba(255,235,177,.38);
  --subscription-card-shadow:rgba(133,81,10,.24);
}
.subscription-card-icon{
  position:absolute;
  inset-inline-end:17px;
  top:17px;
  z-index:1;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.24);
  border-radius:14px;
  background:rgba(255,255,255,.14);
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
  backdrop-filter:blur(7px);
}
.subscription-card-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.subscription-status-grid .subscription-card-label{
  position:relative;
  z-index:1;
  width:100%;
  color:var(--subscription-card-label);
  font-size:10px;
  font-weight:800;
  line-height:1.65;
}
.subscription-status-grid .subscription-card-value{
  position:relative;
  z-index:1;
  width:100%;
  margin-top:7px;
  color:var(--subscription-card-value)!important;
  font-family:"Alexandria","Tajawal","Tahoma",sans-serif;
  font-size:19px;
  font-weight:900;
  line-height:1.5;
}
.subscription-status-grid .subscription-card-value.good,
.subscription-status-grid .subscription-card-value.warn{color:var(--subscription-card-value)!important}
.subscription-note{
  margin-top:13px;
  padding:12px 14px;
  border-radius:12px;
  background:#f2f5f7;
  color:#66717e;
  font-size:10.5px;
  line-height:1.8;
}
.subscription-control{margin-top:13px!important;display:flex!important;justify-content:flex-start}
.subscription-control button{min-width:190px}
@media(max-width:700px){
  .subscription-status-grid{grid-template-columns:1fr}
  .subscription-status-grid>div{min-height:126px}
  .subscription-panel .panel-heading{align-items:flex-start}
  .subscription-price{font-size:16px}
  .subscription-control:not(.subscription-auto-action) button{width:100%;min-width:0}
}

/* ReachFlow v5.9.33 — subscription recovery and owner billing overview */
.subscription-date-cell{align-content:start}
.subscription-date-cell>.subscription-card-value{display:flex;flex-direction:column;align-items:flex-start;gap:0;font-size:14px;line-height:1.55}
.subscription-date-cell>.subscription-card-value small{font-size:8px;color:#dfe2ff;font-weight:700;line-height:1.6}
.subscription-payment-error{
  position:relative;
  z-index:1;
  width:100%;
  margin:8px 0 0;
  padding:7px 9px;
  border:1px solid rgba(255,255,255,.62);
  border-radius:9px;
  background:rgba(255,255,255,.94);
  color:#b42318;
  font-size:9.5px;
  font-weight:800;
  line-height:1.7;
  overflow-wrap:anywhere;
}
.subscription-inline-actions{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  margin-top:auto;
  padding-top:13px;
}
.subscription-inline-actions form{
  display:inline-flex!important;
  gap:0!important;
  margin:0!important;
}
.subscription-inline-actions button.small{
  width:auto;
  min-width:0;
  min-height:30px;
  padding:6px 10px;
  border-radius:9px;
  font-size:9px;
  line-height:1.2;
}
.subscription-status-card--period .subscription-inline-actions .primary{
  border:1px solid #fff;
  background:#fff;
  color:#35328f;
  box-shadow:0 6px 15px rgba(28,28,103,.2);
}
.subscription-status-card--period .subscription-inline-actions .primary:hover{background:#f1f2ff;color:#29266f}
.subscription-status-card--period .subscription-inline-actions .secondary{
  border:1px solid rgba(255,255,255,.48);
  background:rgba(255,255,255,.13);
  color:#fff;
}
.subscription-status-card--period .subscription-inline-actions .secondary:hover{background:rgba(255,255,255,.22);color:#fff}
.subscription-auto-action{
  position:relative;
  z-index:1;
  width:100%;
  margin-top:auto!important;
  padding-top:13px;
}
.subscription-auto-action button,
.subscription-auto-action button.primary,
.subscription-auto-action button.secondary{
  width:auto;
  min-width:0;
  min-height:32px;
  padding:6px 11px;
  border:1px solid rgba(255,255,255,.74);
  border-radius:9px;
  background:rgba(255,255,255,.94);
  color:#754606;
  box-shadow:0 6px 15px rgba(93,53,4,.18);
  font-size:8.5px;
  line-height:1.35;
}
.subscription-auto-action button:hover,
.subscription-auto-action button.primary:hover,
.subscription-auto-action button.secondary:hover{background:#fff6dc;color:#5e3705}
@media(prefers-reduced-motion:no-preference){
  .subscription-status-grid>div:hover{transform:translateY(-2px);box-shadow:0 18px 38px var(--subscription-card-shadow),inset 0 1px 0 rgba(255,255,255,.18)}
}
.subscriptions-panel{overflow:hidden}
.subscriptions-grid{
  display:grid;
  grid-template-columns:minmax(130px,1.25fr) minmax(160px,1.35fr) minmax(105px,.8fr) minmax(125px,1fr) minmax(130px,1fr) minmax(105px,.8fr);
  gap:10px;
  align-items:center;
}
.subscriptions-grid>*{min-width:0}
.subscriptions-grid-head{
  padding:0 12px 9px;
  color:var(--muted);
  font-size:9px;
  font-weight:800;
}
.subscriptions-list{display:grid;gap:8px}
.subscription-row{
  padding:12px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fafbfc;
}
.subscription-row>div{display:grid;gap:3px;min-width:0}
.subscription-row strong,.subscription-row b,.subscription-row span,.subscription-row small{overflow-wrap:anywhere}
.subscription-row strong,.subscription-row b{font-size:10.5px}
.subscription-row span{font-size:9.5px;color:#3c4652}
.subscription-row small{font-size:8.5px;color:var(--muted)}
.subscription-email{direction:ltr;text-align:right}
.payment-state{display:inline-flex;width:max-content;max-width:100%;padding:4px 7px;border-radius:8px;background:#edf9f3}
.payment-state.warn{background:#fff1ee}
@media(max-width:900px){
  .subscriptions-grid-head{display:none}
  .subscriptions-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .subscription-row{display:grid;grid-template-columns:1fr;align-content:start}
  .subscription-row>div{padding:7px 0;border-bottom:1px dashed var(--line)}
  .subscription-row>div:last-child{border-bottom:0}
  .subscription-row>div::before{content:attr(data-label);font-size:8px;font-weight:800;color:var(--muted)}
}
@media(max-width:620px){
  .subscriptions-list{grid-template-columns:1fr}
  .subscription-row{min-width:0}
  .subscription-inline-actions{width:100%}
  .subscription-inline-actions button.small{width:auto!important}
}

/* ReachFlow v5.9.34 — simplified sidebar and independently colored access badges */
.sidebar-footer .logout-link{
  margin-top:0;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.permission-tags{
  gap:9px;
}
.permission-tags span{
  --permission-bg-start:#e7f7f2;
  --permission-bg-end:#d4f1e8;
  --permission-border:#83cbb5;
  --permission-ink:#075b45;
  isolation:isolate;
  padding:8px 13px;
  border:1px solid var(--permission-border);
  border-radius:999px;
  background:linear-gradient(135deg,var(--permission-bg-start),var(--permission-bg-end));
  color:var(--permission-ink);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 3px 9px rgba(31,48,64,.05);
  font-size:10px;
  font-weight:800;
  line-height:1.45;
}
.permission-tags span[data-permission="dashboard"]{
  --permission-bg-start:#def8e9;
  --permission-bg-end:#c7f0da;
  --permission-border:#74c99f;
  --permission-ink:#075d3d;
}
.permission-tags span[data-permission="manage_contacts"]{
  --permission-bg-start:#e1f2ff;
  --permission-bg-end:#cbe7ff;
  --permission-border:#75b4e8;
  --permission-ink:#104f82;
}
.permission-tags span[data-permission="send_campaigns"]{
  --permission-bg-start:#fff1cf;
  --permission-bg-end:#ffe3a6;
  --permission-border:#e2b358;
  --permission-ink:#755006;
}
.permission-tags span[data-permission="manage_whatsapp"]{
  --permission-bg-start:#efe9ff;
  --permission-bg-end:#ddd3ff;
  --permission-border:#a693e9;
  --permission-ink:#523497;
}
.permission-tags span[data-permission="manage_employees"]{
  --permission-bg-start:#ffe9ee;
  --permission-bg-end:#ffd5df;
  --permission-border:#e899ac;
  --permission-ink:#872843;
}
.permission-tags span[data-permission="manage_settings"]{
  --permission-bg-start:#edf0f4;
  --permission-bg-end:#dce2e8;
  --permission-border:#9ba7b4;
  --permission-ink:#364452;
}
@media(max-width:620px){
  .permission-tags{gap:7px}
  .permission-tags span{padding:7px 10px;font-size:9px}
}

/* ReachFlow v5.9.40 — compact WhatsApp support action on the dashboard topbar */
.dashboard-whatsapp-support{
  width:min(330px,42vw);
  min-width:0;
  margin-inline-start:0;
  margin-right:auto;
  direction:ltr;
  display:grid;
  justify-items:start;
  gap:3px;
}
.dashboard-whatsapp-support__button{
  min-height:31px;
  padding:5px 11px;
  direction:rtl;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid #08795a;
  border-radius:9px;
  background:linear-gradient(135deg,#0a9a70,#087e5e);
  color:#fff;
  box-shadow:0 6px 15px rgba(8,126,94,.16),inset 0 1px 0 rgba(255,255,255,.18);
  font-size:10px;
  font-weight:900;
  line-height:1.25;
  transition:background .18s ease,box-shadow .18s ease,transform .18s ease;
}
.dashboard-whatsapp-support__button:hover{
  background:linear-gradient(135deg,#087f5f,#066f52);
  color:#fff;
  box-shadow:0 8px 18px rgba(8,126,94,.22),inset 0 1px 0 rgba(255,255,255,.18);
  transform:translateY(-1px);
}
.dashboard-whatsapp-support__button:focus-visible{outline:3px solid rgba(18,180,133,.24);outline-offset:2px}
.dashboard-whatsapp-support__icon{
  width:19px;
  height:19px;
  flex:none;
  display:grid;
  place-items:center;
}
.dashboard-whatsapp-support__icon svg{width:100%;height:100%;display:block;fill:currentColor}
.dashboard-whatsapp-support small{
  max-width:100%;
  direction:rtl;
  color:#737d88;
  font-size:7.5px;
  font-weight:600;
  line-height:1.45;
  text-align:right;
  white-space:nowrap;
}
@media(max-width:680px){
  .admin-topbar{height:72px;gap:8px}
  .topbar-title{min-width:0}
  .topbar-title span{display:none}
  .topbar-title strong{font-size:12px;white-space:nowrap}
  .dashboard-whatsapp-support{width:min(160px,46vw);gap:2px}
  .dashboard-whatsapp-support__button{min-height:28px;padding:4px 8px;gap:5px;border-radius:8px;font-size:9px}
  .dashboard-whatsapp-support__icon{width:17px;height:17px}
  .dashboard-whatsapp-support small{font-size:6.5px;line-height:1.35;white-space:normal}
}
@media(max-width:360px){
  .admin-topbar{padding-inline:8px;gap:6px}
  .sidebar-toggle{width:37px;height:37px}
  .dashboard-whatsapp-support{width:min(146px,46vw)}
  .dashboard-whatsapp-support__button{padding-inline:7px;font-size:8.5px}
  .dashboard-whatsapp-support small{font-size:6px}
}

/* ReachFlow v5.9.41 — enforced campaign pacing and scheduled safety breaks */
.campaign-policy-note{
  color:#69737e !important;
  font-size:10px !important;
  font-weight:650;
  line-height:1.75;
}
.campaign-policy-feedback{
  display:none;
  min-width:0;
  padding:9px 11px;
  border:1px solid #cfe9dc;
  border-radius:10px;
  background:#eef9f4;
  color:#0b6b4c;
  font-size:10px;
  font-weight:800;
  line-height:1.65;
  overflow-wrap:anywhere;
}
.campaign-policy-feedback.is-visible{display:block}
.campaign-resume-fields .campaign-policy-feedback{grid-column:1/-1}
input.campaign-policy-corrected{
  border-color:#18a978 !important;
  background:#f1fbf7 !important;
  box-shadow:0 0 0 3px rgba(24,169,120,.13) !important;
}
.campaign-break-settings{
  border-color:#cfe7dc;
  background:linear-gradient(135deg,#fbfefd,#eff9f5);
  box-shadow:none;
}
.campaign-policy-status{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  margin-top:10px;
  padding:9px 10px;
  border:1px solid #d9eae2;
  border-radius:12px;
  background:linear-gradient(135deg,#f8fcfa,#f1f8f5);
  color:#55616c;
  font-size:9px;
  line-height:1.55;
}
.campaign-policy-status span{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:5px 8px;
  border:1px solid #dfe9e4;
  border-radius:999px;
  background:#fff;
  white-space:nowrap;
}
.campaign-policy-status span b{color:#17232a;font-weight:900}
.campaign-policy-status>strong{
  margin-inline-start:auto;
  padding:5px 9px;
  border-radius:999px;
  background:#dff5eb;
  color:#087653;
  font-size:9px;
  white-space:nowrap;
}
@media(max-width:700px){
  .campaign-policy-status{display:grid;grid-template-columns:1fr 1fr}
  .campaign-policy-status span,
  .campaign-policy-status>strong{
    width:100%;
    margin:0;
    justify-content:center;
    text-align:center;
    white-space:normal;
  }
  .campaign-policy-status>strong{grid-column:1/-1}
}

/* ReachFlow v5.9.42 — cleaner campaign form and compact rotate control */
#campaign-form>.campaign-title-field,
#campaign-form>.campaign-purpose-field,
#campaign-form>.campaign-message-field,
#campaign-form>.campaign-media-field,
#campaign-form>#rotating-message-fields{grid-column:1/-1}
#campaign-form .message-mode-inline{
  direction:rtl;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  justify-self:start;
  gap:9px;
  width:min(430px,100%);
  min-width:0;
  max-width:100%;
  min-height:32px;
  margin:1px 0 -2px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
#campaign-form .message-mode-inline .switch-control{
  flex:none;
  margin:0;
}
#campaign-form .message-mode-inline .message-mode-copy{
  display:flex;
  align-items:baseline;
  gap:6px;
  flex-wrap:wrap;
  flex:1;
  min-width:0;
}
#campaign-form .message-mode-inline .message-mode-copy strong,
#campaign-form .message-mode-inline .message-mode-copy span{
  line-height:1.45;
  min-width:0;
  white-space:normal;
  overflow-wrap:anywhere;
}
@media(max-width:680px){
  #campaign-form .message-mode-inline{gap:7px;margin-bottom:-3px}
  #campaign-form .message-mode-inline .message-mode-copy{gap:4px}
  #campaign-form .message-mode-inline .message-mode-copy strong{font-size:10.5px}
  #campaign-form .message-mode-inline .message-mode-copy span{font-size:9.5px}
}

/* ReachFlow v5.9.45 — compact right-aligned campaign fields */
#campaign-form>.campaign-title-field,
#campaign-form>.campaign-purpose-field,
#campaign-form>.campaign-target-field{
  grid-column:1/-1;
  width:min(300px,100%);
  max-width:100%;
  justify-self:start;
}
#campaign-form>.campaign-media-field{
  width:min(240px,100%);
  max-width:100%;
  justify-self:start;
}
#campaign-form>.campaign-message-field,
#campaign-form>#rotating-message-fields,
#campaign-form>.campaign-policy-delay-row,
#campaign-form>.campaign-break-settings,
#campaign-form>.target-box,
#campaign-form>.campaign-summary{
  grid-column:1/-1;
  width:min(640px,100%);
  max-width:100%;
  justify-self:start;
}
#campaign-form>.target-box[data-target="tag"]{width:min(300px,100%)}
#campaign-form>.campaign-policy-delay-row input,
#campaign-form>.campaign-break-settings .form-row input{
  width:min(150px,100%);
  max-width:100%;
  justify-self:start;
}
#campaign-form>.target-box .form-row input{
  width:min(220px,100%);
  max-width:100%;
  justify-self:start;
}
@media(max-width:680px){
  #campaign-form>.campaign-title-field,
  #campaign-form>.campaign-purpose-field,
  #campaign-form>.campaign-target-field,
  #campaign-form>.campaign-media-field,
  #campaign-form>.target-box[data-target="tag"],
  #campaign-form>.campaign-policy-delay-row input,
  #campaign-form>.campaign-break-settings .form-row input,
  #campaign-form>.target-box .form-row input{width:100%}
}

/* ReachFlow v5.9.46 — compact controls with useful widths */
#campaign-form>.campaign-submit-button{
  grid-column:1/-1;
  width:min(360px,100%);
  min-height:42px;
  justify-self:center;
}
.number-generator-grid{
  display:grid;
  grid-template-columns:minmax(0,320px) repeat(2,minmax(0,160px));
  justify-content:start;
  align-items:start;
  gap:12px;
  width:min(680px,100%);
  max-width:100%;
  margin-inline-end:auto;
}
.number-generator-grid>label{min-width:0}
.number-generator-actions{
  direction:rtl;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:8px;
  width:min(760px,100%);
  max-width:100%;
  margin:14px 0;
  margin-inline-end:auto;
}
.number-generator-actions>span{
  color:var(--muted);
  font-size:11px;
  font-weight:800;
}
.number-generator-output{
  display:grid;
  width:min(760px,100%);
  max-width:100%;
  margin-inline-end:auto;
}
.number-generator-output textarea{min-height:150px}

/* Reusable desktop policy: shorten only primary form controls that would otherwise span a large panel. */
form.compact-controls>label:not(.check):not(.toggle-label),
form.compact-controls>.form-row,
form.compact-controls>.permission-box,
form.compact-controls>.permission-grid,
form.compact-controls>.supervisor-box,
form.compact-controls>.password-reset-box,
form.compact-controls>.form-actions,
form.compact-controls>.notice,
form.compact-controls>.campaign-policy-feedback,
.settings-layout .panel.narrow>form>label,
.settings-layout .panel.narrow>form>.form-row,
.settings-layout .panel.narrow>form>.notice,
.settings-layout .panel.narrow>form>.campaign-policy-feedback{
  width:min(680px,100%);
  max-width:100%;
  justify-self:start;
}
form.compact-controls>button:not(.small){
  width:min(320px,100%);
  max-width:100%;
  justify-self:start;
}
.settings-layout .panel.narrow>form>button:not(.small){
  width:min(320px,100%);
  max-width:100%;
  justify-self:start;
}

@media(max-width:680px){
  #campaign-form>.campaign-submit-button,
  .number-generator-grid,
  .number-generator-actions,
  .number-generator-output,
  form.compact-controls>label:not(.check):not(.toggle-label),
  form.compact-controls>.form-row,
  form.compact-controls>.permission-box,
  form.compact-controls>.permission-grid,
  form.compact-controls>.supervisor-box,
  form.compact-controls>.password-reset-box,
  form.compact-controls>.form-actions,
  form.compact-controls>.notice,
  form.compact-controls>.campaign-policy-feedback,
  form.compact-controls>button:not(.small),
  .settings-layout .panel.narrow>form>label,
  .settings-layout .panel.narrow>form>.form-row,
  .settings-layout .panel.narrow>form>.notice,
  .settings-layout .panel.narrow>form>.campaign-policy-feedback,
  .settings-layout .panel.narrow>form>button:not(.small){width:100%}
  .number-generator-grid{grid-template-columns:1fr}
  .number-generator-actions>button{flex:1;min-width:0}
}

/* ReachFlow v5.9.47 — keep paired controls equal without stretching the shorter field */
form.compact-controls>.form-row{align-items:start}
form.compact-controls>.form-row>label{
  align-self:start;
  align-content:start;
}

/* ReachFlow v5.9.49 — visible 3D hero on the authenticated dashboard */
.dashboard-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:235px;
  padding:36px clamp(28px,3.6vw,50px);
  align-items:center;
  border:1px solid rgba(52,226,183,.28);
  border-radius:26px;
  background-color:#071525;
  background-image:
    linear-gradient(90deg,rgba(5,18,32,.08) 0%,rgba(5,18,32,.36) 48%,rgba(5,18,32,.94) 100%),
    url("reachflow-dashboard-messaging-3d.webp");
  background-position:center,left center;
  background-size:cover,cover;
  background-repeat:no-repeat;
  color:#fff;
  box-shadow:0 20px 52px rgba(5,24,43,.20),inset 0 1px 0 rgba(255,255,255,.08);
}
.dashboard-hero>div:first-child{position:relative;z-index:1;max-width:620px}
.dashboard-hero>div:first-child>span{color:#5feab4;text-shadow:0 1px 14px rgba(33,236,145,.18)}
.dashboard-hero h1{margin-top:6px;color:#fff;font-size:36px;letter-spacing:-.45px;text-shadow:0 3px 20px rgba(0,0,0,.18)}
.dashboard-hero p{max-width:560px;color:#ccdae7;font-size:13px}
.dashboard-hero .dashboard-date{
  position:relative;
  z-index:1;
  align-self:flex-start;
  border-color:rgba(255,255,255,.18);
  background:rgba(5,20,35,.62);
  color:#eaf6ff;
  box-shadow:0 10px 30px rgba(0,0,0,.12);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}
@media(max-width:680px){
  .dashboard-hero{
    min-height:225px;
    padding:25px 20px;
    border-radius:20px;
    background-image:
      linear-gradient(180deg,rgba(5,18,32,.78) 0%,rgba(5,18,32,.90) 100%),
      url("reachflow-dashboard-messaging-3d.webp");
    background-position:center,30% center;
    background-size:cover,cover;
  }
  .dashboard-hero h1{font-size:28px}
  .dashboard-hero p{font-size:11px;line-height:1.9}
}
