/* ====================================================================
   DaggerConnect — WHMCS Child Theme  v33
   Premium RTL · Yekan · Vibrant Glass
   ==================================================================== */

@font-face {
  font-family: 'Yekan';
  src: url('../fonts/Yekan.eot');
  src: url('../fonts/Yekan.eot?#iefix') format('embedded-opentype'),
       url('../fonts/Yekan.woff') format('woff'),
       url('../fonts/Yekan.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* ── 1. TOKENS ─────────────────────────────────────────────────── */
:root {
  --bg: #f3f0ff;
  --bg-grad: linear-gradient(135deg, #ede9ff 0%, #f5f3ff 35%, #e8f4ff 65%, #f3f0ff 100%);
  --accent: #7c3aed;
  --accent2: #8b5cf6;
  --accent3: #6d28d9;
  --accent-soft: rgba(124,58,237,0.10);
  --text: #1e1b4b;
  --text2: #4c4687;
  --text3: #8b83b8;
  --signal: #059669;
  --signal-soft: rgba(5,150,105,0.10);
  --amber: #d97706;
  --amber-soft: rgba(217,119,6,0.10);
  --danger: #dc2626;
  --danger-soft: rgba(220,38,38,0.08);
  --teal: #0891b2;
  --teal-soft: rgba(8,145,178,0.10);
  --border: rgba(124,58,237,0.12);
  --border2: rgba(124,58,237,0.22);
  --glass: rgba(255,255,255,0.78);
  --glass-b: rgba(255,255,255,0.92);
  --glass-border: rgba(124,58,237,0.14);
  --radius: 16px;
  --radius-sm: 12px;
  --sidebar-w: 264px;
  --ease: cubic-bezier(.22,1,.36,1);
  --yekan: 'Yekan', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ── 2. RESET ──────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html,body{background:var(--bg-grad)!important;background-attachment:fixed!important;color:var(--text)}
body{font-family:var(--yekan)!important;-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}
#dagger-particles{position:fixed;inset:0;z-index:0;pointer-events:none}
a{color:var(--accent2);text-decoration:none;transition:color .2s var(--ease)}
a:hover{color:var(--accent3)}
::selection{background:var(--accent);color:#fff}
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--border2);border-radius:10px}
::-webkit-scrollbar-thumb:hover{background:var(--accent2)}

body::before,body::after{content:'';position:fixed;border-radius:50%;pointer-events:none;z-index:0;filter:blur(100px);animation:orbFloat 14s ease-in-out infinite alternate}
body::before{width:480px;height:480px;background:radial-gradient(circle,rgba(124,58,237,0.14),transparent 70%);top:-100px;right:-80px}
body::after{width:380px;height:380px;background:radial-gradient(circle,rgba(8,145,178,0.10),transparent 70%);bottom:-80px;left:-60px;animation-delay:-7s}
@keyframes orbFloat{0%{transform:translate(0,0) scale(1)}100%{transform:translate(25px,-15px) scale(1.06)}}

/* ── 3. SIDEBAR ────────────────────────────────────────────────── */
.dagger-sidebar{display:none}
@media(min-width:992px){
  .dagger-sidebar{
    display:flex;flex-direction:column;
    position:fixed;top:0;bottom:0;right:0;left:auto;
    width:var(--sidebar-w);
    background:linear-gradient(180deg,rgba(124,58,237,0.06) 0%,rgba(255,255,255,0.82) 15%,rgba(255,255,255,0.88) 100%);
    backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);
    border-left:1px solid var(--glass-border);
    box-shadow:-4px 0 40px rgba(124,58,237,0.06);
    z-index:40;overflow-y:auto;overflow-x:hidden;
    padding:0;
    animation:sidebarIn .5s var(--ease) both;
  }
  @keyframes sidebarIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}
  .dagger-shell{margin-right:var(--sidebar-w)}
  .dagger-header,.master-breadcrumb,footer.footer.dagger-footer{margin-right:var(--sidebar-w)}
}

/* Sidebar Header */
.sb-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:1.2rem 1.2rem 1rem;
  border-bottom:1px solid rgba(124,58,237,0.08);
}
.dagger-sidebar .sb-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font-weight:900;font-size:1.05rem}
.sb-logo-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 12px rgba(124,58,237,0.3)}
.sb-logo-text .accent{color:var(--accent2)}
.sb-logo .logo-img{height:30px;width:auto}
.sb-collapse-btn{display:none;width:28px;height:28px;border-radius:8px;border:1px solid var(--border);background:rgba(255,255,255,0.6);color:var(--text3);cursor:pointer;font-size:.7rem;align-items:center;justify-content:center;transition:all .2s var(--ease)}
.sb-collapse-btn:hover{border-color:var(--accent2);color:var(--accent2)}

/* CTA */
.dagger-sidebar .sb-cta{
  display:flex;align-items:center;justify-content:center;gap:8px;
  margin:1rem 1.2rem;padding:.75rem 1rem;
  background:linear-gradient(135deg,var(--accent),var(--accent3));
  color:#fff;font-weight:800;font-size:.85rem;
  border:none;border-radius:14px;cursor:pointer;text-decoration:none;
  box-shadow:0 4px 18px rgba(124,58,237,0.30);
  transition:all .25s var(--ease);
  position:relative;overflow:hidden;
}
.dagger-sidebar .sb-cta::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent,rgba(255,255,255,0.15),transparent);transform:rotate(45deg) translateX(-100%);transition:transform .6s}
.dagger-sidebar .sb-cta:hover{color:#fff;transform:translateY(-2px);box-shadow:0 6px 24px rgba(124,58,237,0.42)}
.dagger-sidebar .sb-cta:hover::before{transform:rotate(45deg) translateX(100%)}

/* Nav Groups */
.sb-nav{padding:0 .8rem;display:flex;flex-direction:column;gap:2px;flex:1}
.sb-group{margin-bottom:.5rem}
.sb-label{display:block;font-size:.58rem;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;padding:.5rem .5rem .3rem;color:var(--accent2);opacity:.8}

/* Nav Links */
.sb-link{
  display:flex;align-items:center;gap:10px;
  padding:.6rem .7rem;border-radius:11px;
  color:var(--text2);font-weight:600;font-size:.84rem;
  text-decoration:none;transition:all .22s var(--ease);
  border:1px solid transparent;
  position:relative;
}
.sb-link i{width:18px;text-align:center;font-size:.88rem;flex-shrink:0;transition:all .22s var(--ease)}
.sb-link:hover{background:rgba(124,58,237,0.07);color:var(--text);border-color:rgba(124,58,237,0.10);transform:translateX(-3px)}
.sb-link.active{
  background:rgba(124,58,237,0.12);color:var(--accent3);font-weight:800;
  border-color:rgba(124,58,237,0.20);
  box-shadow:0 2px 12px rgba(124,58,237,0.10);
}
.sb-link.active::after{
  content:'';position:absolute;right:-0.8rem;top:50%;transform:translateY(-50%);
  width:3px;height:20px;border-radius:3px;
  background:var(--accent);
}
.sb-link.active i{color:var(--accent)}
.sb-link.sb-danger{color:var(--danger)}
.sb-link.sb-danger:hover{background:var(--danger-soft)}

/* ── 4. HEADER / TOPBAR ────────────────────────────────────────── */
.dagger-header{background:rgba(255,255,255,0.82)!important;backdrop-filter:blur(28px)!important;-webkit-backdrop-filter:blur(28px)!important;border-bottom:1px solid var(--glass-border)!important;box-shadow:0 2px 20px rgba(124,58,237,0.04)!important;overflow:visible!important;position:relative;z-index:50}
.dagger-header.dg-scrolled{box-shadow:0 4px 28px rgba(124,58,237,0.10)!important}
.dagger-topbar{display:none!important}
.btn-active-client,.btn-return-to-admin{display:none!important}

.dg-topbar{background:rgba(255,255,255,0.70);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(124,58,237,0.06);position:relative;z-index:50}
.dg-topbar-inner{display:flex;align-items:center;justify-content:space-between;padding:6px 20px;gap:10px;font-family:var(--yekan)}

/* Mobile left side */
.dg-tb-left{display:flex;align-items:center;gap:10px}
.dg-brand-mobile{font-weight:900;font-size:1rem;color:var(--text);text-decoration:none;display:flex;align-items:center;gap:6px}
.dg-brand-mobile .accent{color:var(--accent2)}
.brand-mobile-img{height:24px;width:auto}
.sb-mobile-toggle{display:none;width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,0.6);color:var(--text2);font-size:1rem;cursor:pointer;align-items:center;justify-content:center;transition:all .2s var(--ease)}
.sb-mobile-toggle:hover{border-color:var(--accent);color:var(--accent2)}

@media(max-width:991.98px){.sb-mobile-toggle{display:flex}}

/* Right side */
.dg-tb-right{display:flex;align-items:center;gap:6px}
.dg-user-wrap{display:flex;align-items:center;gap:5px;position:relative}
.dg-user-actions{position:relative;display:flex;align-items:center}

/* Notification */
.dg-notif-btn{
  display:flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:10px;
  background:rgba(124,58,237,0.06);border:1px solid rgba(124,58,237,0.14);
  color:var(--text2);font-size:.88rem;cursor:pointer;position:relative;
  transition:all .22s var(--ease);
}
.dg-notif-btn:hover{border-color:var(--accent);color:var(--accent2);background:rgba(124,58,237,0.10);transform:scale(1.06)}
.dg-notif-btn:active{transform:scale(.94)}
.dg-notif-count{
  position:absolute;top:-4px;right:-4px;
  background:var(--danger);color:#fff;
  font-size:.55rem;font-weight:900;
  min-width:16px;height:16px;padding:0 4px;
  border-radius:50px;border:2px solid #f3f0ff;
  display:flex;align-items:center;justify-content:center;
  animation:bounceIn .4s var(--ease) both;
}
@keyframes bounceIn{from{transform:scale(0)}to{transform:scale(1)}}

/* Notification Drawer */
.dg-notif-drawer{
  position:absolute;top:calc(100% + 10px);right:0;width:300px;
  background:var(--glass-b);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);
  border:1px solid rgba(124,58,237,0.16);border-radius:18px;
  box-shadow:0 20px 60px rgba(124,58,237,0.16);
  z-index:200;opacity:0;pointer-events:none;
  transform:translateY(-10px) scale(.97);transform-origin:top right;
  transition:opacity .28s var(--ease),transform .28s var(--ease);
  overflow:hidden;
}
.dg-notif-drawer.open{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}
.dg-dd-arrow{position:absolute;top:-6px;right:12px;width:11px;height:11px;background:var(--glass-b);border-top:1px solid rgba(124,58,237,.16);border-right:1px solid rgba(124,58,237,.16);transform:rotate(-45deg);border-radius:2px}
.dg-notif-list{padding:8px;max-height:300px;overflow-y:auto}
.dg-notif-item{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border-radius:10px;color:var(--text2);font-size:.82rem;line-height:1.5;text-decoration:none;transition:all .2s var(--ease)}
.dg-notif-item:hover{background:rgba(124,58,237,.08);color:var(--text);transform:translateX(-2px)}
.dg-notif-item i{flex-shrink:0;margin-top:2px}
.dg-notif-item.dg-notif-danger i{color:var(--danger)}
.dg-notif-item.dg-notif-warning i{color:var(--amber)}
.dg-notif-item.dg-notif-info i{color:var(--teal)}
.dg-notif-item.dg-notif-success i{color:var(--signal)}
.dg-notif-empty{display:flex;align-items:center;gap:8px;padding:16px 11px;color:var(--text3);font-size:.82rem}
.dg-notif-empty i{color:var(--signal)}

/* User Button */
.dg-user-btn{
  display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,0.80);border:1px solid rgba(124,58,237,0.16);
  border-radius:12px;padding:5px 12px 5px 8px;
  cursor:pointer;transition:all .22s var(--ease);font-family:var(--yekan);
}
.dg-user-btn:hover,.dg-user-btn[aria-expanded="true"]{border-color:rgba(124,58,237,0.35);background:rgba(255,255,255,0.96);box-shadow:0 4px 18px rgba(124,58,237,0.12);transform:translateY(-1px)}
.dg-user-avatar{
  width:30px;height:30px;border-radius:10px;
  background:linear-gradient(135deg,var(--accent),#a855f7);
  color:#fff;font-weight:900;font-size:.82rem;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  box-shadow:0 2px 8px rgba(124,58,237,0.25);
  transition:all .22s var(--ease);
}
.dg-user-btn:hover .dg-user-avatar{transform:scale(1.08);box-shadow:0 3px 14px rgba(124,58,237,0.35)}
.dg-user-info{display:flex;flex-direction:column;line-height:1.2}
.dg-user-name{font-size:.8rem;font-weight:800;color:var(--text)}
.dg-user-status{font-size:.6rem;color:var(--signal);font-weight:700;display:flex;align-items:center;gap:3px}
.dg-user-status i{font-size:.35rem;animation:blink 2s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
.dg-caret{font-size:.6rem;color:var(--text3);transition:transform .22s var(--ease)}
.dg-user-btn[aria-expanded="true"] .dg-caret{transform:rotate(180deg)}

/* User Dropdown */
.dg-user-dropdown{
  position:absolute;top:calc(100% + 10px);right:0;width:270px;
  background:var(--glass-b);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);
  border:1px solid rgba(124,58,237,0.16);border-radius:20px;
  box-shadow:0 24px 64px rgba(124,58,237,0.18);
  z-index:9999;opacity:0;pointer-events:none;
  transform:translateY(-10px) scale(.97);transform-origin:top right;
  transition:opacity .28s var(--ease),transform .28s var(--ease);overflow:hidden;
}
.dg-user-dropdown.open{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}
.dg-dd-header{display:flex;align-items:center;gap:10px;padding:14px 16px 12px;border-bottom:1px solid rgba(124,58,237,0.08);background:rgba(124,58,237,0.03)}
.dg-dd-avatar{width:40px;height:40px;border-radius:12px;flex-shrink:0;background:linear-gradient(135deg,var(--accent),#a855f7);color:#fff;font-weight:900;font-size:.95rem;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 12px rgba(124,58,237,0.25)}
.dg-dd-name{font-size:.85rem;font-weight:900;color:var(--text)}
.dg-dd-email{font-size:.68rem;color:var(--text3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:165px}
.dg-dd-section{font-size:.58rem;font-weight:900;color:var(--accent2);letter-spacing:1.2px;text-transform:uppercase;padding:10px 16px 4px;background:rgba(124,58,237,0.02)}
.dg-dd-item{display:flex;align-items:center;gap:10px;padding:8px 16px;color:var(--text2);font-size:.82rem;font-weight:600;text-decoration:none;transition:all .2s var(--ease)}
.dg-dd-item:hover{background:rgba(124,58,237,0.08);color:var(--text);padding-left:20px}
.dg-user-dropdown.open .dg-dd-item{animation:ddSlide .28s var(--ease) both}
@keyframes ddSlide{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}
.dg-dd-item:nth-child(3){animation-delay:.02s}
.dg-dd-item:nth-child(4){animation-delay:.04s}
.dg-dd-item:nth-child(5){animation-delay:.06s}
.dg-dd-item:nth-child(6){animation-delay:.08s}
.dg-dd-item:nth-child(7){animation-delay:.10s}
.dg-dd-item:nth-child(8){animation-delay:.12s}
.dg-dd-item:nth-child(9){animation-delay:.14s}
.dg-dd-item:nth-child(10){animation-delay:.16s}
.dg-dd-item:nth-child(11){animation-delay:.18s}
.dg-dd-item:nth-child(12){animation-delay:.20s}
.dg-dd-item:nth-child(13){animation-delay:.22s}
.dg-dd-item:nth-child(14){animation-delay:.24s}
.dg-dd-item:nth-child(15){animation-delay:.26s}
.dg-dd-ico{width:28px;height:28px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:rgba(124,58,237,0.08);color:var(--accent2);font-size:.78rem;transition:all .2s var(--ease)}
.dg-dd-item:hover .dg-dd-ico{transform:scale(1.12)}
.ico-purple{background:rgba(124,58,237,0.12);color:var(--accent)}
.ico-teal{background:var(--teal-soft);color:var(--teal)}
.ico-danger{background:var(--danger-soft);color:var(--danger)}
.dg-dd-divider{height:1px;background:rgba(124,58,237,0.08);margin:4px 0}
.dd-logout{color:var(--danger)!important}
.dd-logout:hover{background:var(--danger-soft)!important}

/* Navbars hidden */
.dagger-navbar,.main-navbar-wrapper{display:none!important}

/* Breadcrumb */
.master-breadcrumb{background:rgba(255,255,255,0.55);border-bottom:1px solid var(--border)}
.breadcrumb{background:transparent;padding:.6rem 0;margin:0;font-size:.8rem}
.breadcrumb-item,.breadcrumb-item a{color:var(--text3)}
.breadcrumb-item.active{color:var(--text2)}

/* ── 5. BUTTONS ────────────────────────────────────────────────── */
.btn{border-radius:var(--radius-sm);font-weight:700;font-family:inherit;border-width:1px;transition:all .22s var(--ease)}
.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent3));border-color:var(--accent);color:#fff;box-shadow:0 4px 16px rgba(124,58,237,0.30)}
.btn-primary:hover,.btn-primary:focus{background:linear-gradient(135deg,var(--accent3),var(--accent2));border-color:var(--accent2);color:#fff;box-shadow:0 6px 24px rgba(124,58,237,0.40);transform:translateY(-1px)}
.btn-default,.btn-secondary{background:var(--glass);border:1px solid var(--border2);color:var(--text2)}
/* Stock WHMCS forces `.client-home-cards .card-header .btn{color:#fff}` (3-class
   specificity), which beat our plain `.btn-default` rule and made these buttons
   render as white text on a near-white background — effectively invisible until
   :hover. Matched at the same specificity here so our color wins. */
.client-home-cards .card-header .btn{color:var(--text2) !important;border:1px solid var(--border2) !important;background:var(--glass) !important}
.client-home-cards .card-header .btn:hover{color:var(--accent3) !important;border-color:var(--accent2) !important;background:rgba(124,58,237,0.1) !important}
.btn-default:hover,.btn-secondary:hover{border-color:var(--accent2);color:var(--accent3);background:rgba(124,58,237,0.08)}
.btn-success{background:var(--signal);border-color:var(--signal);color:#fff}
.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}
.btn-info{background:var(--teal);border-color:var(--teal);color:#fff}
.btn-warning{background:var(--amber);border-color:var(--amber);color:#fff}
.btn-block{border-radius:14px}

/* ── 6. CARDS ──────────────────────────────────────────────────── */
.card{background:var(--glass)!important;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border)!important;border-radius:18px!important;box-shadow:0 4px 24px rgba(124,58,237,0.06),0 1px 0 rgba(255,255,255,.9) inset!important;transition:all .25s var(--ease)}
.card:hover{border-color:rgba(124,58,237,0.22)!important;box-shadow:0 8px 32px rgba(124,58,237,0.12)!important;transform:translateY(-2px)}
.card-header{background:rgba(255,255,255,0.60)!important;border-bottom:1px solid var(--border)!important;border-radius:18px 18px 0 0!important;font-weight:700;color:var(--text)!important}
.card-title{color:var(--text)!important;font-weight:800}
.card-body{color:var(--text2)}
.card-footer{background:rgba(245,243,255,0.70)!important;border-top:1px solid var(--border)!important}

.list-group-item{background:transparent!important;border-color:var(--border)!important;color:var(--text2)}
.list-group-item.active{background:rgba(124,58,237,0.10)!important;border-color:rgba(124,58,237,0.22)!important;color:var(--accent3)}
.list-group-item-action:hover{background:rgba(124,58,237,0.06)!important;color:var(--text)}
.text-muted{color:var(--text3)!important}
.bg-light{background:rgba(245,243,255,0.8)!important}
.bg-default{background:var(--glass)!important}
.badge{border-radius:50px}
.badge-info{background:var(--accent)}

.card-accent-blue,.card-accent-teal,.card-accent-sun-flower,.card-accent-pomegranate,.card-accent-asbestos,.card-accent-green,.card-accent-midnight-blue,.card-accent-gold,.card-accent-red,.card-accent-orange{border-top:3px solid var(--accent)!important}
.client-home-cards{margin-top:.6rem}
.client-home-cards .row>div{padding-left:.6rem;padding-right:.6rem}
.client-home-cards .card{margin-bottom:1.2rem}
.client-home-cards .card-header{background:rgba(255,255,255,0.60)!important;color:var(--text)!important}

/* ── 7. FORMS ──────────────────────────────────────────────────── */
.form-control,.custom-select,.custom-file-label{background:rgba(255,255,255,0.80)!important;border:1px solid var(--border2)!important;color:var(--text)!important;border-radius:12px;transition:all .22s var(--ease)}
.form-control:focus,.custom-select:focus{background:rgba(255,255,255,0.95)!important;border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(124,58,237,0.12),0 0 16px rgba(124,58,237,0.08)!important}
.form-control::placeholder{color:var(--text3)!important}
.form-control-label,label{color:var(--text2);font-weight:700}
.input-group-text{background:rgba(255,255,255,0.78);border:1px solid var(--border2);color:var(--text3)}

/* ── 8. TABLES / STATUS ────────────────────────────────────────── */
.table{color:var(--text2)}
.table thead th{color:var(--text3);border-bottom:1px solid var(--border);font-weight:800;font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;background:rgba(245,243,255,0.70)!important}
.table td,.table th{border-color:var(--border);background-color:transparent!important}
.table-list tbody tr:hover td{background-color:rgba(124,58,237,0.06)!important}
.table-container{background:var(--glass);border:1px solid var(--border);border-radius:18px;padding:.5rem}
.label.status{border-radius:50px;padding:4px 14px;font-size:.72rem;font-weight:800;border:1px solid transparent}
.status-active,.status-open,.status-completed,.status-paid,.status-answered,.status-accepted,.status-delivered{background:var(--signal-soft);color:var(--signal);border-color:rgba(5,150,105,0.20)}
.status-pending,.status-pending-transfer,.status-onhold,.status-customer-reply,.status-inprogress,.status-payment-pending,.status-pending-registration,.status-redemption,.status-grace{background:var(--amber-soft);color:var(--amber);border-color:rgba(217,119,6,0.20)}
.status-suspended,.status-fraud,.status-unpaid,.status-cancelled,.status-collections,.status-expired,.status-transferred-away,.status-lost,.status-dead{background:var(--danger-soft);color:var(--danger);border-color:rgba(220,38,38,0.20)}
.status-terminated,.status-closed,.status-refunded{background:rgba(139,131,184,0.10);color:var(--text2);border-color:var(--border2)}

/* ── 9. ALERTS / MODALS ────────────────────────────────────────── */
.alert{border-radius:var(--radius-sm);border:1px solid transparent}
.alert-danger,.alert-error{background:var(--danger-soft);color:var(--danger)}
.alert-success{background:var(--signal-soft);color:var(--signal)}
.alert-warning{background:var(--amber-soft);color:var(--amber)}
.alert-info{background:var(--accent-soft);color:var(--accent3)}
.modal-content{background:var(--glass-b)!important;backdrop-filter:blur(28px)!important;border:1px solid var(--glass-border)!important;border-radius:20px!important;box-shadow:0 25px 80px rgba(124,58,237,0.18)!important}
.modal-header,.modal-footer{border-color:var(--border)!important;background:transparent!important}

/* ── 10. FOOTER ────────────────────────────────────────────────── */
footer.footer.dagger-footer{background:rgba(255,255,255,0.82)!important;backdrop-filter:blur(24px)!important;border-top:1px solid var(--border)!important;padding:0!important;margin-top:auto;width:100%!important;position:relative;z-index:10}
.dg-footer-inner{max-width:100%;width:100%;padding:0 24px;margin:0 auto}
.dg-footer-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 0;border-bottom:1px solid rgba(124,58,237,0.07)}
.dg-footer-logo{display:flex;align-items:center;gap:8px;font-weight:900;font-size:1rem;color:var(--text);text-decoration:none}
.dg-footer-logo .logo-img{height:26px;width:auto}
.dg-footer-accent{color:var(--accent2)}
.dg-footer-links{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.dg-footer-link{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:9px;color:var(--text3);font-size:.79rem;font-weight:700;text-decoration:none;border:none;background:transparent;cursor:pointer;transition:all .2s var(--ease)}
.dg-footer-link:hover{background:rgba(124,58,237,0.08);color:var(--accent2)}
.dg-footer-bottom{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 0}
.dg-footer-copy{font-size:.74rem;color:var(--text3)}
.dg-footer-dot{width:3px;height:3px;border-radius:50%;background:var(--border2)}
.dg-footer-status{display:flex;align-items:center;gap:5px;font-size:.72rem;color:var(--signal);font-weight:800}
.dg-footer-status-dot{width:6px;height:6px;border-radius:50%;background:var(--signal);animation:statusPulse 2.5s ease-in-out infinite}
@keyframes statusPulse{0%,100%{opacity:1}50%{opacity:.4}}
@media(max-width:767px){.dg-footer-inner{padding:0 16px}.dg-footer-top{flex-direction:column;align-items:center;text-align:center}.dg-footer-links{justify-content:center}.dg-footer-bottom{justify-content:center}}

/* Sticky footer */
.dagger-shell{display:flex;flex-direction:column;min-height:100vh}
.dagger-shell section#main-body{flex:1 0 auto}
footer.footer.dagger-footer{flex-shrink:0}

/* ── 11. LOGIN ─────────────────────────────────────────────────── */
.dagger-auth-wrap{min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center;padding:3rem 1rem}
.dagger-auth-card{width:100%;max-width:440px;background:var(--glass);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border:1px solid var(--glass-border);border-radius:22px;padding:2.5rem;box-shadow:0 8px 32px rgba(124,58,237,0.12);animation:authIn .5s var(--ease) both;position:relative;overflow:hidden}
.dagger-auth-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),var(--teal),var(--accent));background-size:200% auto;animation:shimmerBar 3s linear infinite}
@keyframes authIn{from{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes shimmerBar{0%{background-position:200% center}100%{background-position:-200% center}}
.dagger-auth-card .h3{font-weight:900;color:var(--text)}
.dagger-auth-badge{display:inline-flex;align-items:center;gap:8px;background:var(--accent-soft);border:1px solid rgba(124,58,237,0.22);border-radius:50px;padding:6px 18px;font-size:.78rem;color:var(--accent3);font-weight:800;margin-bottom:1.5rem}

/* ── 12. DASHBOARD ─────────────────────────────────────────────── */
.dagger-welcome{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.8rem;padding:1.5rem 1.8rem;border-radius:20px;background:linear-gradient(135deg,rgba(124,58,237,0.12),rgba(8,145,178,0.08),rgba(124,58,237,0.06));border:1px solid rgba(124,58,237,0.20);backdrop-filter:blur(20px);box-shadow:0 4px 24px rgba(124,58,237,0.06);animation:dRise .5s var(--ease) both;position:relative;overflow:hidden}
.dagger-welcome::before{content:'';position:absolute;top:-60px;left:-60px;width:200px;height:200px;background:radial-gradient(circle,rgba(124,58,237,0.18),transparent 70%);pointer-events:none;animation:orbPulse 5s ease-in-out infinite alternate}
@keyframes orbPulse{0%{opacity:.5;transform:scale(.8)}100%{opacity:1;transform:scale(1.15)}}
.dagger-welcome h2{font-size:1.35rem;font-weight:900;color:var(--text);margin:0 0 3px;position:relative;z-index:1}
.dagger-welcome p{margin:0;color:var(--text3);font-size:.82rem;position:relative;z-index:1}

.dagger-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}
.dagger-stat{background:var(--glass);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:18px;padding:1.3rem 1.2rem;text-decoration:none;display:block;transition:all .3s var(--ease);position:relative;overflow:hidden;box-shadow:0 4px 24px rgba(124,58,237,0.06)}
.dagger-stat::after{content:'';position:absolute;inset:0;opacity:0;background:radial-gradient(circle at 50% 0%,rgba(124,58,237,0.12),transparent 70%);transition:opacity .3s;pointer-events:none}
.dagger-stat:hover{transform:translateY(-5px);border-color:var(--border2);box-shadow:0 8px 32px rgba(124,58,237,0.12)}
.dagger-stat:hover::after{opacity:1}
.dagger-stat .ico{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:.9rem;font-size:1rem;transition:all .25s var(--ease)}
.dagger-stat:hover .ico{transform:scale(1.12)}
.dagger-stat .num{font-size:1.8rem;font-weight:900;color:var(--text);line-height:1.1}
.dagger-stat .lbl{font-size:.78rem;color:var(--text3);margin-top:4px;font-weight:700}
.dagger-stat.c-indigo .ico{background:rgba(124,58,237,0.10);color:var(--accent2)}
.dagger-stat.c-green .ico{background:var(--signal-soft);color:var(--signal)}
.dagger-stat.c-cyan .ico{background:var(--teal-soft);color:var(--teal)}
.dagger-stat.c-violet .ico{background:rgba(139,92,246,0.10);color:var(--accent2)}
.dagger-stat.c-amber .ico{background:var(--amber-soft);color:var(--amber)}
.dagger-stat.c-red .ico{background:var(--danger-soft);color:var(--danger)}
.dagger-stat-grid .dagger-stat:nth-child(1){animation:dRise .4s var(--ease) .05s both}
.dagger-stat-grid .dagger-stat:nth-child(2){animation:dRise .4s var(--ease) .10s both}
.dagger-stat-grid .dagger-stat:nth-child(3){animation:dRise .4s var(--ease) .15s both}
.dagger-stat-grid .dagger-stat:nth-child(4){animation:dRise .4s var(--ease) .20s both}

.dagger-section-label{font-size:.67rem;font-weight:800;color:var(--accent2);letter-spacing:.9px;text-transform:uppercase;margin-bottom:.65rem}
.dagger-action-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.9rem;margin:0 0 2rem}
.dagger-action-grid a{background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:18px;padding:1.4rem .8rem;text-align:center;text-decoration:none;color:var(--text2);font-size:.82rem;font-weight:700;box-shadow:0 4px 24px rgba(124,58,237,0.06);transition:all .3s var(--ease)}
.dagger-action-grid a:hover{transform:translateY(-5px);border-color:var(--border2);color:var(--text);box-shadow:0 8px 32px rgba(124,58,237,0.12)}
.dagger-action-grid .ico-container{width:48px;height:48px;border-radius:14px;background:rgba(124,58,237,0.10);color:var(--accent2);display:flex;align-items:center;justify-content:center;margin:0 auto .9rem;font-size:1.2rem;transition:all .25s var(--ease)}
.dagger-action-grid a:hover .ico-container{transform:scale(1.15) rotate(3deg)}
.dagger-action-grid a:nth-child(5n+2) .ico-container{background:var(--teal-soft);color:var(--teal)}
.dagger-action-grid a:nth-child(5n+3) .ico-container{background:rgba(8,145,178,0.10);color:var(--teal)}
.dagger-action-grid a:nth-child(5n+4) .ico-container{background:var(--amber-soft);color:var(--amber)}
.dagger-action-grid a:nth-child(5n+5) .ico-container{background:var(--danger-soft);color:var(--danger)}

/* ── 13. INVOICE ───────────────────────────────────────────────── */
body.dagger-invoice{background:var(--bg-grad)!important}
.dagger-invoice .invoice-container{max-width:880px;margin:2.5rem auto;background:var(--glass);border:1px solid var(--glass-border);border-radius:22px;padding:2.5rem;box-shadow:0 8px 32px rgba(124,58,237,0.12)}
.dagger-invoice .invoice-header h2{color:var(--text);font-weight:900}
.dagger-invoice .invoice-status span{display:inline-block;border-radius:50px;padding:6px 18px;font-weight:800;font-size:.85rem}
.dagger-invoice .invoice-status .paid{background:var(--signal-soft);color:var(--signal)}
.dagger-invoice .invoice-status .unpaid,.dagger-invoice .invoice-status .draft{background:var(--amber-soft);color:var(--amber)}
.dagger-invoice .invoice-status .cancelled,.dagger-invoice .invoice-status .refunded{background:rgba(139,131,184,0.10);color:var(--text2)}
.dagger-invoice .invoice-status .collections{background:var(--danger-soft);color:var(--danger)}
.dagger-invoice .total-row{font-weight:800;color:var(--text)}

/* ── 14. TICKET ────────────────────────────────────────────────── */
.ticket-reply{border-radius:18px;margin-bottom:1rem;background:var(--glass);border:1px solid var(--glass-border)}
.ticket-reply.staff{background:rgba(124,58,237,0.06);border-color:rgba(124,58,237,0.18)}
.ticket-reply .posted-by{padding:.9rem 1.1rem;border-bottom:1px solid var(--border);font-size:.82rem;color:var(--text3)}
.ticket-reply .posted-by-name{color:var(--text);font-weight:800}
.ticket-reply .message{color:var(--text2);line-height:1.9}

/* ── 15. BOTTOM NAV ────────────────────────────────────────────── */
.dagger-bottom-nav{display:none}
@media(max-width:991.98px){
  .dagger-bottom-nav{display:flex!important;position:fixed!important;left:10px!important;right:10px!important;bottom:10px!important;z-index:9990!important;background:rgba(255,255,255,0.92)!important;backdrop-filter:blur(28px)!important;border:1px solid rgba(124,58,237,0.18)!important;border-radius:22px!important;box-shadow:0 8px 32px rgba(124,58,237,0.18)!important;padding:6px 4px!important;padding-bottom:max(8px,env(safe-area-inset-bottom))!important;gap:2px}
  .dagger-bottom-nav .bn-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:9px 2px 7px;border-radius:16px;text-decoration:none;color:var(--text3);font-size:.58rem;font-weight:800;transition:all .22s var(--ease)}
  .dagger-bottom-nav .bn-item i{font-size:1.1rem}
  .dagger-bottom-nav .bn-item.active{background:rgba(124,58,237,0.10);color:var(--accent3);box-shadow:0 0 0 1px rgba(124,58,237,0.20)}
  .dagger-bottom-nav .bn-item:active{transform:scale(.91)}
  footer.footer.dagger-footer{margin-left:0!important;margin-right:0!important;width:100%!important}
  section#main-body{padding-bottom:90px!important}
}
@media(min-width:992px){.dagger-bottom-nav{display:none!important}}

/* ── 16. MOBILE ────────────────────────────────────────────────── */
@media(max-width:991.98px){
  .dagger-sidebar{display:none!important}
  .dagger-shell,.dagger-header,.master-breadcrumb,footer.footer.dagger-footer{margin-left:0!important;margin-right:0!important}
  .dg-user-dropdown{right:0!important;width:240px!important}
  .dg-notif-drawer{right:0!important;width:260px!important}
  .dg-tb-left{display:flex!important}
}
@media(min-width:992px){.dg-tb-left{display:none!important}}
@media(max-width:900px){.dagger-action-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.dagger-stat-grid{grid-template-columns:repeat(2,1fr);gap:.8rem}.dagger-action-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767.98px){.container{padding-left:16px;padding-right:16px}.dagger-welcome{padding:1.2rem;flex-direction:column;align-items:flex-start}.dagger-welcome .btn-primary{width:100%}.card.mb-3{margin-bottom:1.3rem!important}.client-home-cards .row{display:flex;flex-direction:column}.client-home-cards .card{margin-bottom:1rem}}

/* ── 17. ANIMATIONS ────────────────────────────────────────────── */
@keyframes dRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.dagger-welcome{animation:dRise .5s var(--ease) both}
.client-home-cards .card{animation:dRise .5s var(--ease) both .22s}

/* Action grid — NO animation, always visible */
.dagger-action-grid a{animation:none!important}

/* Stat grid — gentle fade only */
.dagger-stat-grid .dagger-stat{animation:dRise .4s var(--ease) both}
.dagger-stat-grid .dagger-stat:nth-child(1){animation-delay:.05s}
.dagger-stat-grid .dagger-stat:nth-child(2){animation-delay:.10s}
.dagger-stat-grid .dagger-stat:nth-child(3){animation-delay:.15s}
.dagger-stat-grid .dagger-stat:nth-child(4){animation-delay:.20s}
@media(prefers-reduced-motion:reduce){.dagger-welcome,.dagger-stat,.client-home-cards .card,.dagger-action-grid a,#dagger-particles,.dagger-sidebar{animation:none!important}}

/* ── 18. WHMCS PAGES — content always visible ──────────────────── */
.dagger-sidebar-col{display:none!important}

/* Mobile sidebar overlay */
@media(max-width:991.98px){
  .dagger-sidebar.sb-open{display:flex!important;position:fixed;top:0;bottom:0;left:0;right:auto;width:280px;z-index:9999;animation:sidebarIn .3s var(--ease) both}
  .dagger-shell.sb-overlay::before{content:'';position:fixed;inset:0;background:rgba(0,0,0,0.3);z-index:9998}
}

/* Make ALL content inside main-body visible — no exceptions */
#main-body{visibility:visible!important;opacity:1!important;display:block!important}
#main-body *{visibility:visible!important;opacity:1!important}

/* Primary content — full width when sidebar is hidden */
.primary-content,
#main-body .primary-content {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  min-height: 200px;
  width: 100%;
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

/* WHMCS buttons and forms — always visible */
.whmcs-sidebar .btn,
.sidebar .btn,
.btn-primary,
.btn-default,
.btn-success,
.btn-danger,
.whmcs-sidebar a,
.sidebar a,
.card .btn,
.list-group-item-action {
  visibility: visible !important;
  opacity: 1 !important;
  display: inline-block !important;
}

/* Store / order pages — product listings */
.store-order-container,
.store-order-container .row,
.store-order-container .col-lg-8,
.store-order-container .col-lg-12,
.store-order-container .col-md-6,
.store-order-container .col-sm-6,
.store-order-container .col-xs-12,
#main-body .card-columns,
#main-body .panel,
#main-body .table-container,
#main-body .card,
#main-body .row,
#main-body .col-lg-4,
#main-body .col-lg-6,
#main-body .col-lg-8,
#main-body .col-lg-12,
#main-body .col-md-4,
#main-body .col-md-6,
#main-body .col-md-8,
#main-body .col-md-12,
#main-body .col-sm-6,
#main-body .col-sm-12,
#main-body .container,
#main-body .container-fluid {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Bootstrap grid must flex properly */
#main-body .row {
  display: flex !important;
  flex-wrap: wrap !important;
}

/* All forms, buttons, links — always clickable */
#main-body form,
#main-body .btn,
#main-body button,
#main-body a.btn,
#main-body a {
  visibility: visible !important;
  opacity: 1 !important;
  position: relative;
  z-index: 1;
}

/* Product pricing cards */
.pricing-table,
.pricing-plan,
.plan-box,
.product-item,
.product-group-item,
.panel-pricing,
.card-pricing {
  visibility: visible !important;
  opacity: 1 !important;
  display: block !important;
}

/* ── 19. MISC ──────────────────────────────────────────────────── */
#main-body{padding-top:1.4rem;padding-bottom:2rem}
.card.mb-3{margin-bottom:1.4rem!important}
.sidebar .list-group-item{border-color:var(--border)!important}
.sidebar .list-group-item .badge{background:var(--accent)!important;color:#fff!important}
.dg-topbar,.dg-topbar-inner,.dg-tb-right{overflow:visible!important}
.dg-user-wrap{overflow:visible!important;position:relative}
.dagger-header{overflow:visible!important}
.dg-user-dropdown,.dg-notif-drawer{position:absolute!important;z-index:9999!important}
.dg-user-dropdown.open,.dg-notif-drawer.open{overflow-y:auto;max-height:80vh}

/* Hide WHMCS info panels / sidebar boxes we don't need */
.panel-sidebar,
.whmcs-sidebar-box,
#sidebar-panel,
.card.card-sidebar,
.sidebar .card.card-sidebar,
.sidebar-wrapper,
.sidebar .card.mb-3{display:none!important}

/* Hide "اطلاعات شما" box on client area home */
#client-home-info-card,
.panel-heading-user-info,
.client-home-info{display:none!important}

/* Store pages — force content visible */
.store-landing-container,
.store-category-container,
.store-container,
.store-product-group,
#main-body .store-order-container,
#main-body .container .row > div,
#main-body .container-fluid .row > div{visibility:visible!important;opacity:1!important;display:block!important}

/* Ensure Bootstrap grid works on all pages */
#main-body .row{display:flex!important;flex-wrap:wrap!important}
#main-body [class*="col-"]{visibility:visible!important;opacity:1!important}

html{overflow-x:hidden}
body{overflow-x:hidden}

/* Hide the "Client Details" (اطلاعات شما) sidebar card on the homepage only —
   requested explicitly; other sidebar panels (Secondary Contacts, Useful Links)
   are untouched since they're matched by name, not by a blanket sidebar rule.
   Selector is deliberately heavy (#main-body + .container + .row) to beat the
   earlier #main-body .container .row > div{display:block!important} rule above,
   which otherwise wins on specificity and keeps the card visible. */
body.dagger-tpl-clientareahome #main-body .container .row [menuitemname="Client Details"],
body.dagger-tpl-homepage #main-body .container .row [menuitemname="Client Details"]{
  display:none !important;
}

/* ── RTL GLOBAL OVERRIDES ──────────────────────────────────────── */
html[dir="rtl"] .pull-left,
html[dir="rtl"] .float-left,
html[dir="rtl"] .pull-right,
html[dir="rtl"] .float-right {
  float: right !important;
}

html[dir="rtl"] .text-sm-right,
html[dir="rtl"] .text-right,
html[dir="rtl"] .text-left {
  text-align: right !important;
}
