:root {
    /*--margin-top: 9.5em;*/
}

.gsec-color-black {
    color:black;
}

.table > thead > tr > th {
    vertical-align: middle !important;
}
.table > thead > tr > th:first-child {
    border-top-left-radius: var(--bs-border-radius-lg) !important;
}
.table > thead > tr > th:last-child {
    border-top-right-radius: var(--bs-border-radius-lg) !important;
}

html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
    /*padding-top: 8.1875em;*/
    margin-top: var(--margin-top) !important;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}


.cursor-pointer {
    cursor: pointer;
}

.fs-7 {
    font-size: .75rem !important;
}


.badge-online {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
  color: white !important;
  padding: 0.4rem 0.75rem !important;
  border-radius: 9999px !important;
  font-weight: 600 !important;
  font-size: 0.7rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.4rem !important;
  box-shadow: 0 2px 8px 0 rgb(16 185 129 / 0.25) !important;
  min-width: 85px !important;
  white-space: nowrap !important;
}

.badge-online::before {
  content: '' !important;
  width: 0.4rem !important;
  height: 0.4rem !important;
  background: #ffffff !important;
  border-radius: 9999px !important;
  display: inline-block !important;
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite !important;
}

.badge-offline {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    color: white !important;
    padding: 0.4rem 0.75rem !important;
    border-radius: 9999px !important;
    font-weight: 600 !important;
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.4rem !important;
    box-shadow: 0 2px 8px 0 rgb(239 68 68 / 0.25) !important;
    min-width: 85px !important;
    white-space: nowrap !important;
}

.badge-offline::before {
    content: '' !important;
    width: 0.4rem !important;
    height: 0.4rem !important;
    background: #ffffff !important;
    border-radius: 9999px !important;
    display: inline-block !important;
}

