.toplevel_page_onesignal-admin-page #wpcontent {
  padding: 0;
}

.toplevel_page_onesignal-admin-page header {
  min-height: 125px;
  min-width: 100%;
  background-color: #14143c;
  display: flex;
  justify-content: center;
}

.toplevel_page_onesignal-admin-page header img {
  max-width: 225px;
}

.os-content {
  padding: 40px 60px 25px;
  font-size: 16px !important;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI;", Roboto, Helvetica,
    Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
}

.api-key-badge {
  font-size: 12px;
  margin-left: 10px;
}

.api-key-type-rich {
  color: #eee;
  background-color: #14143c;
  border-radius: 5px;
  padding: 4px;
}

.api-key-type-legacy {
  color: #fff;
  background-color: rgb(155, 161, 167);
  border-radius: 5px;
  padding: 4px;
}

.os-content label {
  color: rgb(66, 77, 87);
  margin-bottom: 5px;
  display: inline-block;
}

.os-content label[for="appid"]:after,
.os-content label[for="apikey"]:after {
  content: "*";
  font-size: 125%;
  color: #e54b4d;
  margin-left: 3px;
}

.os-content label[for="apikey"] {
  margin-top: 20px;
}

.os-content input[type="text"] {
  display: block;
  font-size: 16px;
  height: 2.25rem;
  padding: 0.5rem 0.75rem;
  outline: none 0px;
  width: 100%;
  color: rgb(5, 27, 44);
  border-radius: 0.25rem;
  border: 1px solid rgb(203, 209, 215);
}

.os-content input[type="text"]:active,
.os-content input[type="text"]:focus {
  border: 1px solid rgb(67, 70, 206);
  background: rgb(236, 236, 252);
}

.os-content .checkbox-wrapper {
  margin-top: 40px;
}

.os-content input[type="checkbox"] {
  opacity: 0;
  width: 0px !important;
  height: 0px;
  margin: 0px;
  min-width: unset !important;
  border: unset !important;
}

.os-content .checkbox {
  display: inline-block;
  position: relative;
  border-radius: 1rem;
  background-color: rgb(116, 128, 139);
  width: 1.5rem;
  height: 1rem;
  vertical-align: -2px;
}

.os-content .checkbox:after {
  content: "";
  position: absolute;
  background-color: white;
  display: block;
  box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 2px;
  border-radius: 50%;
  left: 0.125rem;
  top: 0.125rem;
  transition: all 0.3s ease 0s;
  width: 0.75rem;
  height: 0.75rem;
}

.os-content input[type="checkbox"]:checked + .checkbox:after {
  transform: translateX(-100%);
  left: calc(100% - 0.125rem);
}

.os-content input[type="checkbox"]:checked + .checkbox {
  background-color: rgb(67, 70, 206);
}

.os-content .help {
  min-width: 16px;
  width: 16px;
  height: 16px;
  filter: none;
  color: inherit;
  opacity: 1;
  display: inline-block;
  vertical-align: -2px;
  margin-left: 10px;
  cursor: pointer;
}

.os-content .information {
  box-shadow: rgba(5, 27, 44, 0.12) 0px 1px 6px -1px,
    rgba(5, 27, 44, 0.08) 0px 6px 18px -4px;
  border-radius: 0.25rem;
  border: 1px solid rgb(185, 194, 202);
  padding: 1rem 2rem;
  background-color: #eee;
  margin-bottom: 20px;
  margin-top: 20px;
}

.os-content input[type="submit"] {
  cursor: pointer;
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
  border-radius: 0.25rem;
  background-color: rgb(67, 70, 206);
  line-height: 1.125rem;
  border: 1px solid rgb(58, 61, 179);
  box-shadow: rgba(5, 27, 44, 0.16) 0px 1px 1px,
    rgba(255, 255, 255, 0.05) 0px 1px 0px inset;
  color: rgb(255, 255, 255) !important;
}

.os-content input[type="submit"]:hover,
.os-content input[type="submit"]:active,
.os-content input[type="submit"]:focus {
  background-color: rgb(58, 61, 179);
  border-color: rgb(58, 61, 179);
  color: rgb(255, 255, 255) !important;
}

/* Wrap input and validation icon together */
.input-with-icon {
  position: relative;
  display: block;
  max-width: 500px; /* Set a max width for the input box */
  margin-bottom: 20px;
  width: 100%; /* Make the input box responsive */
}

.input-with-icon input[type="text"],
.input-with-icon input[type="password"] {
  padding-left: 3rem; /* Leave space for the validation icon */
  display: block;
  font-size: 16px;
  height: 2.25rem;
  outline: none;
  width: 100%; /* Ensure input box scales within the container */
  color: rgb(5, 27, 44);
  border-radius: 0.25rem;
  border: 1px solid rgb(203, 209, 215);
  background: #fff;
  margin: 0 auto; /* Center the input box */
}

.input-with-icon input[type="text"]:active,
.input-with-icon input[type="text"]:focus,
.input-with-icon input[type="password"]:active,
.input-with-icon input[type="password"]:focus {
  border: 1px solid rgb(67, 70, 206);
  background: rgb(236, 236, 252);
}

/* Validation icon styling */
.validation-icon {
  position: absolute;
  top: 50%;
  left: 0.75rem; /* Position the icon at the left */
  transform: translateY(-50%);
  font-size: 1.25rem;
  pointer-events: none;
  color: #e54b4d; /* Default error color */
}

.input-with-icon input[type="text"]:not(:placeholder-shown):valid + .validation-icon,
.input-with-icon input[type="password"]:not(:placeholder-shown):valid + .validation-icon {
  color: #28a745; /* Success color */
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .input-with-icon {
    max-width: 90%; /* Adjust for smaller screens */
  }
}

@media (max-width: 480px) {
  .input-with-icon {
    max-width: 100%; /* Full width for very small screens */
  }
}
