/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */
:root {
  --enable-negative-margins: true;
}

@import url("/assets/vendor/bootstrap@5.3.3.min-474821e1.css");
/* bootstrap icons are linked in application layout - it didn't work to include them here for some reason */

@media (min-width: 1400px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 1450px !important;
  }
}

.bg-bst {
  background-color: #003eaa;
  a.navbar-brand, a.nav-link {
    color: white;
  }
}

.session-links {
  margin-top: 24px;
}

.autocomplete-results {
  margin-top: 16px;
  a {
    text-decoration: none;
  }
}

.bill-form-section {
  margin-top: 24px;

  h2 {
    font-size: 165%;
  }

  h3 {
    font-size: 125%;
  }
}

.form-label {
  color: gray;
  font-size: 90%;
  margin-bottom: 0.25rem;
}

/* simple_form bootstrap override for readonly forms */
.plaintext {
  input.form-control-plaintext, input.form-select-plaintext {
    border: none;
    padding: 0;
    background-image: none;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  abbr[title="required"] {
    display: none;
  }
}

.table-actions {
  display: flex;
  justify-content: space-between;
  margin-top: 16px;
}

form.bills-search-form {
  display: flex;

  select {
    margin-right: 8px;
  }

  div.quick-search-section {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 16px;

    input {
      margin-right: 16px;
    }
  }
}

div.payment-form {
  h2 {
    margin: 24px 0;
    font-size: 175%;
  }
  h3 {
    margin: 24px 0;
    font-size: 150%;
  }
}

.loading-indicator {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 6px;
}
.loading-indicator:after {
  content: " ";
  display: block;
  width: 18px;
  height: 18px;
  margin: 2px;
  border-radius: 50%;
  border: 2px solid #aaa;
  border-color: #aaa transparent #aaa transparent;
  animation: loading-indicator 1.2s linear infinite;
}
@keyframes loading-indicator {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

#bill_basic_data .accordion-header, #bill_basic_data .accordion-button:not(.collapsed) {
  background-color: #d3f0c6;
}

#bill_disclosure .accordion-header, #bill_disclosure .accordion-button:not(.collapsed) {
  background-color: #c0e9f9;
}

#bill_audit_trail .accordion-header, #bill_audit_trail .accordion-button:not(.collapsed) {
  background-color: #edc0eb;
}

#payments_panel .accordion-header, #payments_panel .accordion-button:not(.collapsed) {
  background-color: #ffe187;
}

.form-control.is-valid, .form-select.is-valid {
  background-image: none;
}

/* Hide the dropdown arrow image in date inputs */
input[type="date"].form-select {
  background-image: none !important;
  padding-right: 0.75rem !important;
}

.invalid-combobox {
  border-color: var(--bs-danger) !important;
}

.bill-status-initial-entry-done, .btn.bill-status-initial-entry-done  {
  background-color: cornflowerblue;

  &:hover {
    background-color: #4169e1;
    color: white;
  }
}

.bill-status-coding-entered, .btn.bill-status-coding-entered {
  background-color: purple;

  &:hover {
    background-color: #663399;
  }
}

.bill-status-released-for-payment, .btn.bill-status-released-for-payment {
  background-color: darkblue;

  &:hover {
    background-color: #000080;
  }
}

.bill-status-paid, .btn.bill-status-paid {
  background-color: green;

  &:hover {
    background-color: #2f4f2f;
  }
}

.bill-status-direct {
  background-color: orange;
}
