/* Trail Ambassador: single visual standard based on Events and Meetings. */
:root {
  --sleek-accent: #0d5d2e;
  --sleek-accent-hover: #0a4b25;
  --sleek-text: #1f2937;
  --sleek-muted: #6b7280;
  --sleek-border: #d9dee6;
  --sleek-canvas: #f7f9fb;
  --sleek-surface: #fff;
  --sleek-shadow: 0 4px 14px rgba(15,23,42,.05);
  --forest-green: var(--sleek-accent);
  --primary-color: var(--sleek-accent);
  --light-color: var(--sleek-canvas);
}
body { color: var(--sleek-text); background: var(--sleek-canvas); }
/* Shared structure applies to the portal, staff, admin, training and reports. */
#mainContent .card,
#mainContent .title-card,
#mainContent .content-card,
#mainContent .modal-content,
#mainContent .accordion-item,
.auth-content .content-card,
.auth-content .card,
.wizard-container, .wizard-card {
  border-radius: 0 !important;
  border: 1px solid var(--sleek-border);
  box-shadow: var(--sleek-shadow);
}
#mainContent .card-header, #mainContent .card-footer,
#mainContent .card-body, #mainContent .title-card .card-body,
#mainContent .modal-header, #mainContent .modal-footer,
#mainContent .input-group-text, #mainContent .accordion-button {
  border-radius: 0 !important;
}
#mainContent .btn,
#mainContent .badge,
#mainContent .form-control,
#mainContent .form-select,
#mainContent .nav-link,
#mainContent .alert,
#mainContent .pagination .page-link,
#mainContent .input-group-text,
#mainContent .dropdown-menu,
.auth-content .btn, .auth-content .form-control, .auth-content .form-select,
.wizard-container .btn, .wizard-container .form-control, .wizard-container .form-select,
.wizard-card .btn, .wizard-card .form-control, .wizard-card .form-select {
  border-radius: 0 !important;
}
#mainContent .btn-primary, #mainContent .btn.btn-primary,
.auth-content .btn-primary, .wizard-container .btn-primary, .wizard-card .btn-primary {
  background-color: var(--sleek-accent) !important;
  border-color: var(--sleek-accent) !important;
  color: #fff !important;
}
#mainContent .btn-primary:hover, #mainContent .btn-primary:focus,
.auth-content .btn-primary:hover, .wizard-container .btn-primary:hover, .wizard-card .btn-primary:hover {
  background-color: var(--sleek-accent-hover) !important;
  border-color: var(--sleek-accent-hover) !important;
}
#mainContent .btn-outline-primary,
.auth-content .btn-outline-primary, .wizard-container .btn-outline-primary, .wizard-card .btn-outline-primary {
  color: var(--sleek-accent) !important;
  border-color: var(--sleek-accent) !important;
}
#mainContent .btn-outline-primary:hover,
.auth-content .btn-outline-primary:hover,
.wizard-container .btn-outline-primary:hover,
.wizard-card .btn-outline-primary:hover {
  background-color: var(--sleek-accent) !important;
  color: #fff !important;
}
#mainContent .form-control:focus, #mainContent .form-select:focus,
.auth-content .form-control:focus, .wizard-container .form-control:focus,
.wizard-card .form-control:focus {
  border-color: var(--sleek-accent);
  box-shadow: 0 0 0 .2rem rgba(13,93,46,.12);
}
#mainContent .table > :not(caption) > * > * { border-bottom-color: var(--sleek-border); }
#mainContent .table thead th { color: var(--sleek-text); font-size: .79rem; font-weight: 700; }
#mainContent .text-muted, .auth-content .text-muted { color: var(--sleek-muted) !important; }
#mainContent .sidebar-nav-link:focus-visible, .sidebar-nav-link:focus-visible,
#mainContent .btn:focus-visible { outline: 2px solid var(--sleek-accent); outline-offset: 2px; }
/* Self-contained sign-in and step-by-step screens share the same visual language. */
.auth-content { background: var(--sleek-canvas); }
.wizard-header { background: var(--sleek-accent) !important; }
.wizard-container, .wizard-card { overflow: hidden; }
.wizard-actions { border-radius: 0; }
@media (max-width: 768px) {
  #mainContent .card-body, #mainContent .title-card .card-body { padding: 1.1rem; }
}
