/*
 * FHQ Pay — BTCPay Server custom theme
 * Version: 0.1.0
 * Base: "Extends the BTCPay Server Dark theme"
 *
 * Upload in: Server Settings > Branding > Custom Theme File
 */

:root {
  /* FHQ Pay primary scale — based on #2483b9 */
  --btcpay-primary-100: #e7f3fa;
  --btcpay-primary-200: #c5e3f3;
  --btcpay-primary-300: #94cbe8;
  --btcpay-primary-400: #55aada;
  --btcpay-primary-500: #2483b9;
  --btcpay-primary-600: #1d709f;
  --btcpay-primary-700: #195a80;
  --btcpay-primary-800: #174c6a;
  --btcpay-primary-900: #173f57;

  --btcpay-primary-rgb: 36, 131, 185;
  --btcpay-primary-accent-rgb: 29, 112, 159;
  --btcpay-primary: rgb(var(--btcpay-primary-rgb));
  --btcpay-primary-accent: rgb(var(--btcpay-primary-accent-rgb));
  --btcpay-primary-shadow: rgba(var(--btcpay-primary-rgb), .38);

  /* Bootstrap-compatible aliases used by some BTCPay components/plugins */
  --bs-primary: #2483b9;
  --bs-primary-rgb: 36, 131, 185;
  --bs-link-color: #55aada;
  --bs-link-hover-color: #94cbe8;
  --bs-focus-ring-color: rgba(36, 131, 185, .28);

  /* Slightly cooler, more technical dark surfaces */
  --fhq-surface-0: #0c1118;
  --fhq-surface-1: #111821;
  --fhq-surface-2: #17202b;
  --fhq-border: #273442;
  --fhq-text-muted: #8fa0b2;
}

html,
body {
  font-family: Inter, "Segoe UI Variable", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-feature-settings: "kern" 1, "liga" 1, "ss01" 1;
  text-rendering: optimizeLegibility;
}

/* Links */
a:not(.btn):not(.nav-link) {
  color: #55aada;
}

a:not(.btn):not(.nav-link):hover {
  color: #94cbe8;
}

/* Primary actions */
.btn-primary {
  --bs-btn-bg: #2483b9;
  --bs-btn-border-color: #2483b9;
  --bs-btn-hover-bg: #1d709f;
  --bs-btn-hover-border-color: #1d709f;
  --bs-btn-active-bg: #195a80;
  --bs-btn-active-border-color: #195a80;
  --bs-btn-disabled-bg: #2483b9;
  --bs-btn-disabled-border-color: #2483b9;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .025),
              0 6px 18px rgba(36, 131, 185, .12);
}

.btn-outline-primary {
  --bs-btn-color: #55aada;
  --bs-btn-border-color: #2483b9;
  --bs-btn-hover-bg: #2483b9;
  --bs-btn-hover-border-color: #2483b9;
  --bs-btn-active-bg: #1d709f;
  --bs-btn-active-border-color: #1d709f;
}

/* Inputs and selectors */
.form-control:focus,
.form-select:focus,
.form-check-input:focus,
.btn:focus-visible,
.nav-link:focus-visible {
  border-color: #55aada;
  box-shadow: 0 0 0 .2rem rgba(36, 131, 185, .22);
}

.form-check-input:checked {
  background-color: #2483b9;
  border-color: #2483b9;
}

/* Navigation state */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link,
.dropdown-item.active,
.dropdown-item:active,
.list-group-item.active {
  background-color: #2483b9;
  border-color: #2483b9;
  color: #fff;
}

.nav-link:hover,
.dropdown-item:hover,
.dropdown-item:focus {
  color: #94cbe8;
}

/* Progress, badges and pagination */
.progress-bar,
.bg-primary,
.badge.bg-primary {
  background-color: #2483b9 !important;
}

.text-primary {
  color: #55aada !important;
}

.border-primary {
  border-color: #2483b9 !important;
}

.page-link {
  color: #55aada;
}

.page-item.active .page-link {
  background-color: #2483b9;
  border-color: #2483b9;
}

/* Subtle depth while preserving BTCPay's native layout */
.card,
.modal-content,
.dropdown-menu {
  border-color: var(--fhq-border);
  box-shadow: 0 12px 32px rgba(0, 0, 0, .12);
}

.table-hover > tbody > tr:hover > * {
  --bs-table-accent-bg: rgba(36, 131, 185, .065);
}

/* Consistent selection and scrollbar accent */
::selection {
  color: #fff;
  background: rgba(36, 131, 185, .72);
}

* {
  scrollbar-color: #314253 transparent;
}

/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
