/* Unique namespace to avoid all old modules2 CSS conflicts */

.nova-ms2-page,
.nova-ms2-page *,
.nova-ms2-modal,
.nova-ms2-modal * {
  box-sizing: border-box;
}

.nova-ms2-page {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

.nova-ms2-page > * + * {
  margin-top: 16px !important;
}

.nova-ms2-hero {
  display: flex !important;
  width: 100% !important;
  min-height: 220px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  padding: clamp(28px,5vw,56px) !important;
  border: 1px solid rgba(0,234,212,.27) !important;
  border-radius: 23px !important;
  background:
    radial-gradient(circle at 88% 8%,rgba(0,234,212,.14),transparent 24rem),
    linear-gradient(135deg,rgba(8,31,42,.98),rgba(3,11,17,.99)) !important;
}

.nova-ms2-hero > div {
  min-width: 0 !important;
}

.nova-ms2-hero span,
.nova-ms2-modal header span {
  color: #00ead4 !important;
  font-size: 10px !important;
  font-weight: 950 !important;
  letter-spacing: .17em !important;
}

.nova-ms2-hero h1 {
  margin: 8px 0 12px !important;
  font-size: clamp(38px,5vw,65px) !important;
  letter-spacing: -.055em !important;
}

.nova-ms2-hero p {
  max-width: 720px !important;
  margin: 0 !important;
  color: #8faeba !important;
  line-height: 1.7 !important;
}

.nova-ms2-notice {
  display: block !important;
  width: 100% !important;
  padding: 13px 15px !important;
  border: 1px solid rgba(0,234,212,.25) !important;
  border-radius: 12px !important;
  color: #bcfff7 !important;
  background: rgba(0,234,212,.055) !important;
}

.nova-ms2-stats {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  gap: 10px !important;
}

.nova-ms2-stats article {
  display: block !important;
  min-width: 0 !important;
  min-height: 105px !important;
  padding: 17px !important;
  border: 1px solid rgba(78,159,177,.18) !important;
  border-radius: 14px !important;
  background: linear-gradient(145deg,rgba(7,24,34,.93),rgba(3,12,18,.99)) !important;
}

.nova-ms2-stats strong,
.nova-ms2-stats span {
  display: block !important;
}

.nova-ms2-stats strong {
  font-size: 27px !important;
}

.nova-ms2-stats span {
  color: #7896a2 !important;
}

.nova-ms2-toolbar,
.nova-ms2-bulk {
  display: flex !important;
  width: 100% !important;
  min-width: 0 !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 13px !important;
  border: 1px solid rgba(78,159,177,.18) !important;
  border-radius: 14px !important;
  background: rgba(5,20,29,.88) !important;
}

.nova-ms2-toolbar {
  justify-content: space-between !important;
}

.nova-ms2-search {
  display: flex !important;
  flex: 1 1 420px !important;
  min-width: 250px !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 0 11px !important;
  border: 1px solid rgba(78,159,177,.20) !important;
  border-radius: 10px !important;
  background: #05131b !important;
}

.nova-ms2-search input {
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.nova-ms2-toolbar select {
  width: auto !important;
  min-width: 170px !important;
}

.nova-ms2-bulk {
  justify-content: space-between !important;
}

.nova-ms2-bulk > label,
.nova-ms2-check {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.nova-ms2-bulk input,
.nova-ms2-check input,
.nova-ms2-card > header > input {
  width: auto !important;
  min-width: auto !important;
}

.nova-ms2-bulk > div {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
}

.nova-ms2-grid {
  display: grid !important;
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr)) !important;
  gap: 13px !important;
  align-items: stretch !important;
}

.nova-ms2-card {
  display: flex !important;
  position: relative !important;
  min-width: 0 !important;
  min-height: 390px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 1px solid rgba(78,159,177,.18) !important;
  border-radius: 17px !important;
  background:
    radial-gradient(circle at 90% 0,rgba(0,234,212,.07),transparent 15rem),
    linear-gradient(145deg,rgba(7,24,34,.94),rgba(3,12,18,.99)) !important;
}

.nova-ms2-card.is-disabled {
  opacity: .70 !important;
  filter: saturate(.70) !important;
}

.nova-ms2-card.is-core {
  border-color: rgba(255,198,85,.24) !important;
}

.nova-ms2-card > header {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: auto auto minmax(0,1fr) !important;
  align-items: center !important;
  gap: 11px !important;
  padding: 16px !important;
  border-bottom: 1px solid rgba(78,159,177,.14) !important;
}

.nova-ms2-icon {
  display: grid !important;
  place-items: center !important;
  width: 45px !important;
  height: 45px !important;
  border: 1px solid rgba(0,234,212,.23) !important;
  border-radius: 12px !important;
  color: #00ead4 !important;
  background: rgba(0,234,212,.045) !important;
  font-weight: 950 !important;
}

.nova-ms2-state {
  display: flex !important;
  justify-self: end !important;
  align-items: center !important;
  gap: 7px !important;
  color: #718f9b !important;
  font-size: 9px !important;
  font-weight: 900 !important;
}

.nova-ms2-state i {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #ff6b81 !important;
}

.nova-ms2-card.is-enabled .nova-ms2-state i {
  background: #48df9c !important;
  box-shadow: 0 0 12px rgba(72,223,156,.50) !important;
}

.nova-ms2-content {
  display: block !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  padding: 17px !important;
}

.nova-ms2-category {
  color: #00ead4 !important;
  font-size: 9px !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
}

.nova-ms2-content h2 {
  margin: 7px 0 5px !important;
  overflow-wrap: anywhere !important;
}

.nova-ms2-content code {
  display: inline-block !important;
  max-width: 100% !important;
  color: #7896a2 !important;
  overflow-wrap: anywhere !important;
}

.nova-ms2-content p {
  min-height: 70px !important;
  color: #819ea9 !important;
  line-height: 1.6 !important;
}

.nova-ms2-content dl {
  display: grid !important;
  gap: 8px !important;
  margin: 15px 0 0 !important;
}

.nova-ms2-content dl > div {
  display: grid !important;
  grid-template-columns: 75px minmax(0,1fr) !important;
  gap: 8px !important;
}

.nova-ms2-content dt {
  color: #607d89 !important;
}

.nova-ms2-content dd {
  min-width: 0 !important;
  margin: 0 !important;
  color: #a7bdc6 !important;
  overflow-wrap: anywhere !important;
}

.nova-ms2-card > footer {
  display: flex !important;
  width: 100% !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  padding: 14px 16px !important;
  border-top: 1px solid rgba(78,159,177,.14) !important;
}

.nova-ms2-card > footer form {
  display: block !important;
  width: auto !important;
  margin: 0 !important;
}

.nova-ms2-danger {
  color: #ff8295 !important;
  border-color: rgba(255,95,120,.25) !important;
  background: rgba(255,95,120,.05) !important;
}

.nova-ms2-empty {
  width: 100% !important;
  padding: 45px !important;
  border: 1px dashed rgba(78,159,177,.22) !important;
  border-radius: 14px !important;
  color: #7896a2 !important;
  text-align: center !important;
}

.nova-ms2-modal {
  display: grid;
  position: fixed;
  z-index: 300;
  inset: 0;
  place-items: center;
  padding: 18px;
}

.nova-ms2-modal[hidden] {
  display: none !important;
}

.nova-ms2-modal > div {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.72);
  backdrop-filter: blur(8px);
}

.nova-ms2-modal > section {
  position: relative;
  z-index: 1;
  width: min(760px,100%);
  padding: 20px;
  border: 1px solid rgba(0,234,212,.30);
  border-radius: 17px;
  background: #06141c;
}

.nova-ms2-modal section > header {
  display: flex;
  justify-content: space-between;
  gap: 13px;
}

.nova-ms2-modal form {
  display: grid;
  gap: 11px;
  margin-top: 17px;
}

.nova-ms2-form-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}

@media (max-width: 1000px) {
  .nova-ms2-stats {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width: 760px) {
  .nova-ms2-hero,
  .nova-ms2-toolbar,
  .nova-ms2-bulk {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  .nova-ms2-search {
    width: 100% !important;
    min-width: 0 !important;
    flex-basis: auto !important;
  }

  .nova-ms2-toolbar select {
    width: 100% !important;
  }

  .nova-ms2-form-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 480px) {
  .nova-ms2-stats,
  .nova-ms2-grid {
    grid-template-columns: 1fr !important;
  }
}