/* ============================================================
   Admin theme overrides — load AFTER DevExpress Fluent so mockup
   typography and header layout win over vendor heading resets.
   ============================================================ */

/*
  Security page head — match mockup AdminShell (Lumen-main styles/app.css):

  .screen-head { display: flex; justify-content: space-between;
                 align-items: flex-end; gap: 16px; flex-wrap: wrap; }
  .screen-head-actions { display: flex; gap: 8px; align-items: center;
                         flex-wrap: wrap; }

  Copy is content-sized (not flex:1 / min-width:0). When title+actions
  no longer fit, actions wrap onto the next line and stay left-aligned —
  same as the mockup review screenshots.
*/
#page-security .screen-head {
  display: flex !important;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  flex-wrap: wrap;
  width: 100%;
  grid-template-columns: unset !important;
}

#page-security .screen-head-copy {
  flex: 0 1 auto;
  min-width: auto;
  max-width: 100%;
}

#page-security .screen-head-actions {
  display: flex !important;
  flex: 0 1 auto;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  width: auto;
  max-width: 100%;
  margin-inline-start: 0;
  justify-content: flex-start;
  justify-self: unset !important;
}

/* Chip + buttons: one compact group (display:contents → direct flex kids). */
#page-security .screen-head-toolbar {
  display: contents;
}

#page-security .eyebrow {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  color: var(--text-tertiary) !important;
}

#page-security h2.screen-title,
#page-security .screen-title {
  font-size: 24px !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
  margin: 4px 0 0 !important;
  color: var(--text-primary) !important;
}

#page-security .screen-subtitle,
#page-security .screen-sub {
  display: block !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  margin: 6px 0 0 !important;
  max-width: 680px;
  color: var(--text-secondary) !important;
}

#page-security h3.security-card-title,
#page-security .security-card-title {
  font-size: 30px !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.3 !important;
  margin: 2px 0 0 !important;
  color: var(--text-primary) !important;
}

#page-security .security-card-sub {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  margin: 4px 0 0 !important;
  color: var(--text-secondary) !important;
}

@media (max-width: 720px) {
  #page-security h2.screen-title,
  #page-security .screen-title {
    font-size: 20px !important;
  }

  #page-security h3.security-card-title,
  #page-security .security-card-title {
    font-size: 24px !important;
  }
}
