:root {
  --aresto: #123c35;
  --aresto-accent: #c98b2e;
  --surface: #f6f8f7;
}

html {
  font-size: 15px;
  min-height: 100%;
  position: relative;
}

body {
  min-height: 100vh;
  margin-bottom: 60px;
  background: var(--surface);
  color: #1c2926;
}

.bg-aresto {
  background: var(--aresto);
}

.navbar-brand {
  letter-spacing: .02em;
}

.card {
  border: 0;
  box-shadow: 0 1px 8px rgba(18, 60, 53, .08);
}

.card-header {
  background: #fff;
  border-bottom-color: #e5ece9;
}

.btn-primary {
  background: var(--aresto);
  border-color: var(--aresto);
}

.btn-primary:hover,
.btn-primary:focus {
  background: #0b2d28;
  border-color: #0b2d28;
}

.btn-outline-primary {
  color: var(--aresto);
  border-color: var(--aresto);
}

.btn-outline-primary:hover {
  background: var(--aresto);
  border-color: var(--aresto);
}

.badge-aresto {
  color: #fff;
  background: var(--aresto);
}

.form-check-list {
  max-height: 13rem;
  overflow: auto;
  border: 1px solid #ced4da;
  border-radius: .375rem;
  padding: .75rem;
  background: #fff;
}

.empty-state {
  background: #fff;
  border-radius: .75rem;
  padding: 2.5rem;
  text-align: center;
  box-shadow: 0 1px 8px rgba(18, 60, 53, .08);
}

.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 52px;
  line-height: 52px;
  background: #fff;
}

.required-label::after {
  content: " *";
  color: #b42318;
}

.text-prewrap {
  white-space: pre-wrap;
}

.auth-card {
  max-width: 480px;
  margin: 4rem auto;
}

.pagination .page-link {
  color: var(--aresto);
}

.pagination .active .page-link {
  background: var(--aresto);
  border-color: var(--aresto);
}

.table thead th {
  white-space: nowrap;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}
