/* Modern dark-ish theme accents */
:root {
  --brand-primary: #6c5ce7;
  --brand-secondary: #00b894;
  --brand-warning: #fdcb6e;
  --brand-danger: #d63031;
  --brand-surface: #f8f9fb;
}

body {
  background: linear-gradient(180deg, #f6f7fb, #eef1f6);
}

.navbar {
  background: #ffffffcc !important;
  backdrop-filter: saturate(180%) blur(4px);
}

.card {
  border: none;
  box-shadow: 0 8px 20px rgba(0,0,0,0.06);
  border-radius: 12px;
}

.btn-primary {
  background: var(--brand-primary);
  border-color: var(--brand-primary);
}
.btn-primary:hover { filter: brightness(1.05); }

.btn-secondary { background: #636e72; border-color: #636e72; }

.badge.bg-warning { color: #2d3436; }

.toast-container { z-index: 1080; }

/* Fancy breadcrumbs */
.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  content: '›';
}

/* Tables */
table.table thead th { border-bottom: 2px solid #e9ecef; }
table.table tbody tr:hover { background-color: rgba(108,92,231,0.06); }
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;
}

.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;
}