/*
 * James' Bitcoin Solutions — BTCPay Server Custom Theme
 * Upload via: Server Settings → Branding → Custom CSS
 *
 * Base:    default-dark.css (verbatim, then overridden below)
 * Primary: Bitcoin Orange #F7931A
 * Font:    System sans-serif stack (no external dependency on a payment page)
 */

/* ─── Dark base (default-dark.css verbatim) ──────────────────────────────── */

:root {
  --btcpay-neutral-50: #0d1117;
  --btcpay-neutral-100: var(--btcpay-neutral-dark-900);
  --btcpay-neutral-200: var(--btcpay-neutral-dark-800);
  --btcpay-neutral-300: var(--btcpay-neutral-dark-700);
  --btcpay-neutral-400: var(--btcpay-neutral-dark-600);
  --btcpay-neutral-500: var(--btcpay-neutral-dark-500);
  --btcpay-neutral-600: var(--btcpay-neutral-dark-400);
  --btcpay-neutral-700: var(--btcpay-neutral-dark-300);
  --btcpay-neutral-800: var(--btcpay-neutral-dark-200);
  --btcpay-neutral-900: var(--btcpay-neutral-dark-100);
  --btcpay-bg-dark: var(--btcpay-neutral-50);
  --btcpay-bg-tile: var(--btcpay-bg-dark);
  --btcpay-body-bg-light: var(--btcpay-neutral-50);
  --btcpay-body-bg-hover: var(--btcpay-neutral-50);
  --btcpay-body-bg-rgb: 22, 27, 34;
  --btcpay-body-text: var(--btcpay-white);
  --btcpay-body-text-muted: var(--btcpay-neutral-600);
  --btcpay-body-text-warning-rgb: 255, 192, 67;
  --btcpay-body-text-rgb: 255, 255, 255;
  --btcpay-body-link-accent: var(--btcpay-primary-accent);
  --btcpay-body-link-accent-rgb: var(--btcpay-primary-accent-rgb);
  --btcpay-form-bg: var(--btcpay-bg-dark);
  --btcpay-form-text: var(--btcpay-neutral-800);
  --btcpay-form-text-label: var(--btcpay-neutral-900);
  --btcpay-form-border: var(--btcpay-neutral-200);
  --btcpay-header-bg: var(--btcpay-bg-dark);
  --btcpay-nav-link: var(--btcpay-neutral-500);
  --btcpay-nav-link-active: var(--btcpay-white);
  --btcpay-footer-link-accent: var(--btcpay-neutral-800);
  --btcpay-pre-bg: var(--btcpay-bg-dark);
  --btcpay-secondary: transparent;
  --btcpay-secondary-text-active: var(--btcpay-primary);
  --btcpay-secondary-rgb: 22, 27, 34;
  --btcpay-warning-text: var(--btcpay-neutral-100);
  --btcpay-warning-text-hover: var(--btcpay-neutral-100);
  --btcpay-warning-text-active: var(--btcpay-neutral-100);
  --btcpay-warning-dim-text: var(--btcpay-neutral-200);
  --btcpay-light-dim-bg: var(--btcpay-neutral-50);
  --btcpay-light-shadow: rgba(66, 70, 73, 0.33);
  --btcpay-light-rgb: 33, 38, 45;
  --btcpay-dark-accent: var(--btcpay-neutral-600);
  --btcpay-dark-dim-bg: var(--btcpay-white);
  --btcpay-dark-shadow: rgba(211, 212, 213, 0.33);
  --btcpay-dark-rgb: 201, 209, 217;
}

/* ─── Bitcoin Orange primary ramp ────────────────────────────────────────── */
/*
 * Built around #F7931A (Bitcoin orange) as the 500 anchor.
 * 100–400: progressively lighter/more washed tints
 * 600–900: progressively deeper/darker shades
 * Overrides the default teal/green that ships with default-dark.css.
 */

:root {
  --btcpay-primary-100: #fef3e2;
  --btcpay-primary-200: #fddba8;
  --btcpay-primary-300: #fbbe6e;
  --btcpay-primary-400: #f9a644;
  --btcpay-primary-500: #f7931a;
  --btcpay-primary-600: #de7d08;
  --btcpay-primary-700: #ac6106;
  --btcpay-primary-800: #7a4504;
  --btcpay-primary-900: #492a02;

  --btcpay-primary-rgb: 247, 147, 26;
  --btcpay-primary-accent-rgb: 222, 125, 8;
  --btcpay-primary: rgb(var(--btcpay-primary-rgb));
  --btcpay-primary-accent: rgb(var(--btcpay-primary-accent-rgb));
  --btcpay-primary-shadow: rgba(var(--btcpay-primary-rgb), 0.5);
}

/* ─── Typography ─────────────────────────────────────────────────────────── */
/*
 * System font stack — no external dependency, fast on any device.
 * Inter renders natively on most modern OS; falls back cleanly.
 */

:root {
  --bs-font-sans-serif: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI",
    Roboto, "Helvetica Neue", Arial, sans-serif;
}

body {
  font-family: var(--bs-font-sans-serif);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ─── Backgrounds — neutral slate, remove the blue-tinted GitHub dark ────── */
/*
 * default-dark.css inherits GitHub's #161b22 palette which reads blue-grey.
 * Override the key background variables to neutral near-blacks.
 * Three distinct levels give cards/panels visual separation without borders.
 *
 *   Level 0  #0f0f0f  — page background (deepest)
 *   Level 1  #141414  — nav, header, base surfaces
 *   Level 2  #1e1e1e  — cards, panels, form fields
 *   Level 3  #272727  — elevated elements, hover states
 */

:root {
  --btcpay-neutral-50:    #0f0f0f;              /* page bg (was #0d1117) */
  --btcpay-body-bg-rgb:   20, 20, 20;           /* #141414 */
  --btcpay-body-bg-light: #141414;
  --btcpay-body-bg-hover: #1e1e1e;
  --btcpay-light-rgb:     30, 30, 30;           /* #1e1e1e — cards/panels */
  --btcpay-secondary-rgb: 20, 20, 20;           /* #141414 */
  --btcpay-light-shadow:  rgba(0, 0, 0, 0.4);
  --btcpay-light-dim-bg:  #141414;
  --btcpay-pre-bg:        #1e1e1e;
  --btcpay-tertiary-bg:   #1e1e1e;
}

/* ─── Success colour — orange instead of green ───────────────────────────── */
/*
 * BTCPay's default accent and Bootstrap's success both use green, leaving
 * holdover green elements after the primary ramp override. Switching success
 * to orange unifies the palette. Settled invoice badges use .badge-settled
 * (not .badge-success) so that status indicator is unaffected.
 */

:root {
  --bs-success:        #f7931a;
  --bs-success-rgb:    247, 147, 26;
  --bs-success-text:   #f7931a;
  --bs-success-bg-subtle:     rgba(247, 147, 26, 0.15);
  --bs-success-border-subtle: rgba(247, 147, 26, 0.3);
}

/* ─── Success class overrides — Bootstrap hardcodes these past the variables  */

.text-success {
  color: #f7931a !important;  /* needs !important — Bootstrap's .text-success does too */
}

.btn-success {
  background-color: #f7931a;
  border-color:     #f7931a;
  color:            #ffffff;
}
.btn-success:hover {
  background-color: #de7d08;
  border-color:     #de7d08;
  color:            #1a1a1a;
}
.btn-success:focus,
.btn-success:focus-visible {
  background-color: #de7d08;
  border-color:     #de7d08;
  color:            #1a1a1a;
  box-shadow:       0 0 0 0.25rem rgba(247, 147, 26, 0.5);
}
.btn-success:active,
.btn-success.active {
  background-color: #c97007;
  border-color:     #c97007;
  color:            #1a1a1a;
}
.btn-success:disabled,
.btn-success.disabled {
  background-color: #f7931a;
  border-color:     #f7931a;
  color:            #1a1a1a;
  opacity:          0.65;
}

.alert-success {
  background-color: rgba(247, 147, 26, 0.12);
  border-color:     rgba(247, 147, 26, 0.3);
  color:            #f9a644;
}
.alert-success .alert-link {
  color: #de7d08;
}

.alert-danger {
  background-color: rgba(220, 53, 69, 0.12);
  border-color:     rgba(220, 53, 69, 0.3);
  color:            #ea868f;
}
.alert-danger .alert-link {
  color: #dc3545;
}

/* ─── Border radius — slightly tighter than Bootstrap default ────────────── */

:root {
  --bs-border-radius:    0.3rem;
  --bs-border-radius-sm: 0.2rem;
  --bs-border-radius-lg: 0.4rem;
  --bs-border-radius-xl: 0.6rem;
}
