.page-container {
    max-width: 95% !important;
    margin: 0 auto;
}

.custom-br {
    text-transform: uppercase;
    font-weight: 700 !important;
}
.menu-text {font-weight: 700 !important;}

.custom-br, .form-control, textarea, .choices__inner, select,
 .select2-search__field, .gridjs-search-input {border-radius: 0.6rem !important;}

.gridjs-pagination .gridjs-pages button {border-radius: 0.6rem !important;}

.pagination {--ct-pagination-border-radius: 0.6rem !important;}

.select2-container--default .select2-selection--single {
    border-radius: 0.6rem !important;
    border: 1px solid #ced4da;
}

.select2-container--default .select2-dropdown {
    border-radius: 0.6rem !important;
}

.ql-editor.ql-blank::before {
    color: var(--ct-body-color) !important;
}


label.required::after,
label:has(+ input[required])::after,
label:has(+ select[required])::after,
label:has(+ textarea[required])::after {
    content: " *";
    color: red;
    font-weight: bold;
}
label.required::after {
    content: " *";
    color: red;
    font-weight: bold;
}
small.required::after {
    content: " *";
    color: red;
    font-weight: bold;
}

.form-required-hint {
    margin-top: 10px;
    font-size: 13px;
    color: var(--ct-body-color);
}

.form-required-hint span {
    color: red;
    font-weight: bold;
}


/* 🔒 Hide everything until permissions loaded */
body.permissions-loading {
    visibility: hidden;
}

/* 🔒 Permission-protected elements hidden by default */
[data-permission] {
    display: none;
}

[data-permission].perm-allowed {
    display: block;
}



@keyframes chat-pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.12);
  }
  100% {
    transform: scale(1);
  }
}
.animate-chat {
  -webkit-animation: chat-pulse 2.6s ease infinite;
          animation: chat-pulse 2.6s ease infinite;
}
@keyframes mail-fade {
  0% {
    opacity: 0.9;
  }
  50% {
    opacity: 0.1;
  }
  100% {
    opacity: 1;
  }
}
.animate-mail {
  -webkit-animation: mail-fade 1.4s ease infinite;
          animation: mail-fade 1.4s ease infinite;
}
