/* Dashboard-only visual treatment. The existing React cards keep their data and links. */
body:has(.novex-dashboard) .novex-dashboard{direction:rtl!important;text-align:start!important;gap:18px!important;width:100%!important;max-width:none!important;overflow:visible!important}
body:has(.novex-dashboard) .novex-dashboard__hero{
  direction:rtl!important;text-align:start!important;color:var(--rw-text)!important;
  background:radial-gradient(circle at 85% 10%,rgba(20,184,166,.13),transparent 38%),linear-gradient(135deg,var(--rw-hero-start),var(--rw-hero-end))!important;
  border:1px solid var(--rw-border-fine)!important;border-radius:16px!important;min-height:120px!important;padding:20px 24px!important;
  box-shadow:0 0 18px -8px rgba(20,184,166,.22)!important}
body:has(.novex-dashboard) .novex-dashboard__hero span{color:var(--rw-teal-light)!important;letter-spacing:normal!important;font-family:Tajawal,NovexDubai,sans-serif!important}
body:has(.novex-dashboard) .novex-dashboard__hero h2{color:var(--rw-text)!important;font-size:27px!important;line-height:1.3!important}
body:has(.novex-dashboard) .novex-dashboard__hero p{color:var(--rw-muted)!important;line-height:1.6!important}
body:has(.novex-dashboard) .novex-shell a.novex-hero-action{color:#052a26!important;background:linear-gradient(135deg,#2dd4bf,#0d9488)!important;border:1px solid #2dd4bf!important;border-radius:9px!important;box-shadow:0 8px 22px rgba(20,184,166,.2)!important}

body:has(.novex-shell) .doc-expiry-cards{color:var(--rw-text)!important;background:var(--rw-card)!important;border:1px solid var(--rw-border)!important;border-radius:14px!important;padding:18px!important}
body:has(.novex-shell) .doc-expiry-cards__head h3{color:var(--rw-text)!important}
body:has(.novex-shell) .doc-expiry-cards__head a,
body:has(.novex-shell) .doc-expiry-cards__meta{color:var(--rw-teal-light)!important}
body:has(.novex-shell) .doc-expiry-card{background:var(--rw-surface)!important;border:1px solid var(--rw-border-fine)!important;border-radius:10px!important;color:var(--rw-text)!important}
body:has(.novex-shell) .doc-expiry-card--critical{border-color:rgba(239,107,115,.5)!important}
body:has(.novex-shell) .doc-expiry-card--warning{border-color:rgba(235,180,101,.5)!important}
body:has(.novex-shell) .doc-expiry-card :is(strong,span,p,small){color:var(--rw-text)!important}
body:has(.novex-dashboard) .doc-expiry-cards{margin:0!important}

body:has(.novex-dashboard) .novex-kpi-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important}
body:has(.novex-dashboard) .novex-kpi-card{
  display:grid!important;min-width:0!important;height:auto!important;min-height:155px!important;
  color:var(--rw-text)!important;background:var(--rw-card)!important;border:1px solid var(--rw-border)!important;
  border-radius:13px!important;padding:17px 18px!important;box-shadow:none!important;overflow:visible!important}
body:has(.novex-dashboard) .novex-kpi-card:hover{transform:translateY(-2px)!important;border-color:var(--rw-border-fine)!important;box-shadow:0 0 15px -3px rgba(20,184,166,.2)!important}
body:has(.novex-dashboard) .novex-kpi-card__title{color:var(--rw-muted)!important;font-size:13px!important;line-height:1.5!important}
body:has(.novex-dashboard) .novex-kpi-card__value span{color:var(--rw-text)!important;font-family:'Plus Jakarta Sans',Tajawal,sans-serif!important;font-size:clamp(24px,2vw,32px)!important;line-height:1.25!important}
body:has(.novex-dashboard) .novex-kpi-card__value small,
body:has(.novex-dashboard) .novex-kpi-card p{color:var(--rw-muted)!important;font-size:11px!important}
body:has(.novex-dashboard) .novex-kpi-card__icon{color:var(--rw-teal-light)!important;background:rgba(20,184,166,.12)!important;border:1px solid rgba(20,184,166,.16)!important;border-radius:9px!important}
body:has(.novex-dashboard) .novex-kpi-card--tone-blue .novex-kpi-card__icon{color:var(--rw-blue)!important;background:rgba(74,150,235,.13)!important}
body:has(.novex-dashboard) .novex-kpi-card--tone-red .novex-kpi-card__icon{color:var(--rw-red)!important;background:rgba(239,107,115,.13)!important}
body:has(.novex-dashboard) .novex-kpi-card--tone-gold .novex-kpi-card__icon{color:var(--rw-gold)!important;background:rgba(230,171,88,.13)!important}
body:has(.novex-dashboard) .novex-kpi-card__change.positive{color:var(--rw-positive)!important;background:rgba(20,184,166,.11)!important}

body:has(.novex-dashboard) .novex-chart-grid,
body:has(.novex-dashboard) .novex-bottom-grid,
body:has(.novex-dashboard) .novex-dashboard-grid{grid-template-columns:minmax(0,1.75fr) minmax(290px,.8fr)!important;gap:16px!important}
body:has(.novex-dashboard) .novex-panel{min-width:0!important;color:var(--rw-text)!important;background:var(--rw-card)!important;border:1px solid var(--rw-border)!important;border-radius:14px!important;padding:20px!important;box-shadow:none!important}
body:has(.novex-dashboard) .novex-panel__head h3{color:var(--rw-text)!important;font-size:17px!important;line-height:1.35!important}
body:has(.novex-dashboard) .novex-panel__head a,
body:has(.novex-dashboard) .novex-shell a{color:var(--rw-teal-light)!important}
body:has(.novex-dashboard) .novex-chart-legend span,
body:has(.novex-dashboard) .novex-department-row span,
body:has(.novex-dashboard) .novex-shell .hint{color:var(--rw-muted)!important}
body:has(.novex-dashboard) .novex-panel .recharts-cartesian-grid line{stroke:var(--rw-border-fine)!important}
body:has(.novex-dashboard) .novex-panel .recharts-cartesian-axis-tick text{fill:var(--rw-muted)!important}
body:has(.novex-dashboard) .novex-panel .recharts-default-tooltip{color:var(--rw-text)!important;background:var(--rw-card)!important;border:1px solid var(--rw-border-fine)!important;box-shadow:0 12px 28px rgba(16,38,55,.12)!important}
body:has(.novex-dashboard) .novex-panel .recharts-tooltip-label{color:var(--rw-text)!important}
body:has(.novex-dashboard) .novex-panel .recharts-legend-item-text{color:var(--rw-muted)!important}
body:has(.novex-dashboard) .novex-alert{border-radius:10px!important}
body:has(.novex-dashboard) .novex-alert--red{color:var(--rw-red)!important;background:rgba(239,107,115,.1)!important}
body:has(.novex-dashboard) .novex-alert--yellow{color:var(--rw-gold)!important;background:rgba(230,171,88,.1)!important}
body:has(.novex-dashboard) .novex-alert--blue{color:var(--rw-blue)!important;background:rgba(74,150,235,.1)!important}
body:has(.novex-dashboard) .novex-alert small{color:var(--rw-muted)!important}
body:has(.novex-dashboard) .rw-dashboard-audit{width:100%;margin:0}
body:has(.novex-dashboard) .rw-dashboard-audit__head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
body:has(.novex-dashboard) .rw-dashboard-audit__head h3{margin:0;color:var(--rw-text);font-size:17px}
body:has(.novex-dashboard) .rw-dashboard-audit__meta{color:var(--rw-subtle);font-size:12px}
body:has(.novex-dashboard) .rw-dashboard-audit__head a{margin-inline-start:auto;color:var(--rw-teal-light);font-size:13px;font-weight:800;text-decoration:none}
body:has(.novex-dashboard) .rw-dashboard-audit__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}
body:has(.novex-dashboard) .rw-dashboard-audit__item{display:flex;align-items:center;gap:11px;min-width:0;padding:10px 12px;background:var(--rw-surface);border:1px solid var(--rw-border);border-radius:10px}
body:has(.novex-dashboard) .rw-dashboard-audit__dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--rw-red)}
body:has(.novex-dashboard) .rw-dashboard-audit__dot.is-success{background:var(--rw-positive)}
body:has(.novex-dashboard) .rw-dashboard-audit__content{display:grid;gap:2px;min-width:0}
body:has(.novex-dashboard) .rw-dashboard-audit__content strong{overflow:hidden;color:var(--rw-text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
body:has(.novex-dashboard) .rw-dashboard-audit__content span{overflow:hidden;color:var(--rw-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}
body:has(.novex-dashboard) .rw-dashboard-audit__item time{margin-inline-start:auto;color:var(--rw-subtle);font:600 10px 'Plus Jakarta Sans',Tajawal,sans-serif;white-space:nowrap}
body:has(.novex-dashboard) .rw-dashboard-audit__empty{grid-column:1/-1;padding:12px;color:var(--rw-muted);background:var(--rw-hover);border-radius:9px;font-size:13px}

@media(max-width:1180px){
  body:has(.novex-dashboard) .novex-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body:has(.novex-dashboard) .novex-chart-grid,
  body:has(.novex-dashboard) .novex-bottom-grid,
  body:has(.novex-dashboard) .novex-dashboard-grid{grid-template-columns:1fr!important}
  body:has(.novex-dashboard) .rw-dashboard-audit__list{grid-template-columns:1fr}
}
@media(max-width:980px){
  body:has(.novex-dashboard) .novex-shell .novex-content{width:100%!important;max-width:100%!important;min-width:0!important;padding:15px!important}
}
@media(max-width:620px){
  body:has(.novex-dashboard) .novex-kpi-grid{grid-template-columns:1fr!important}
  body:has(.novex-dashboard) .novex-dashboard__hero{align-items:flex-start!important;padding:17px!important}
  body:has(.novex-dashboard) .novex-dashboard__hero h2{font-size:22px!important}
  body:has(.novex-dashboard) .novex-kpi-card{min-height:130px!important}
}
@media(prefers-reduced-motion:reduce){body:has(.novex-dashboard) .novex-kpi-card{transition:none!important}}
