/* ============================================================
   Fast Social - brand recolor layer over Bootstrap 5.3.
   Maps Bootstrap's default blue to the green brand using the DS
   tokens (static/css/ds/). Loaded AFTER app.css. Targets component
   classes + Bootstrap theme variables only - no layout/spacing
   utilities are touched, so this is a pure recolor/radius pass.
   ============================================================ */

/* Bootstrap theme variables -> green. Drives .text-primary, .bg-primary,
   .border-primary, .link-primary utilities and default <a> link color.
   (Component classes below are overridden explicitly because BS 5.3 bakes
   the blue hex into them rather than reading --bs-primary.) */
:root {
  --bs-primary: #2d7a3a;
  --bs-primary-rgb: 45, 122, 58;
  --bs-link-color: #2d7a3a;
  --bs-link-color-rgb: 45, 122, 58;
  --bs-link-hover-color: #256b32;
  --bs-link-hover-color-rgb: 37, 107, 50;
}

/* Primary + outline-primary buttons */
.btn-primary {
  --bs-btn-bg: var(--green-500, #2d7a3a);
  --bs-btn-border-color: var(--green-500, #2d7a3a);
  --bs-btn-hover-bg: var(--green-600, #256b32);
  --bs-btn-hover-border-color: var(--green-600, #256b32);
  --bs-btn-active-bg: var(--green-700, #1f5a2a);
  --bs-btn-active-border-color: var(--green-700, #1f5a2a);
  --bs-btn-disabled-bg: var(--green-500, #2d7a3a);
  --bs-btn-disabled-border-color: var(--green-500, #2d7a3a);
}
.btn-outline-primary {
  --bs-btn-color: var(--green-500, #2d7a3a);
  --bs-btn-border-color: var(--green-500, #2d7a3a);
  --bs-btn-hover-bg: var(--green-500, #2d7a3a);
  --bs-btn-hover-border-color: var(--green-500, #2d7a3a);
  --bs-btn-active-bg: var(--green-600, #256b32);
  --bs-btn-active-border-color: var(--green-600, #256b32);
}
.btn { border-radius: 10px; }
.btn-sm { border-radius: 8px; }

/* Inputs: brand radius + green focus ring (was Bootstrap blue) */
.form-control, .form-select { border-radius: 8px; }
.form-control:focus, .form-select:focus, .form-check-input:focus {
  border-color: var(--green-400, #4a9d5b);
  box-shadow: var(--focus-ring, 0 0 0 3px rgba(45, 122, 58, .25));
}

/* Checks / switches / radios -> green when on */
.form-check-input:checked {
  background-color: var(--green-500, #2d7a3a);
  border-color: var(--green-500, #2d7a3a);
}

/* Range sliders -> green thumb */
.form-range::-webkit-slider-thumb { background: var(--green-500, #2d7a3a); }
.form-range::-moz-range-thumb     { background: var(--green-500, #2d7a3a); }

/* Pills/tabs active state -> green (e.g. the settings tab strip) */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link { background-color: var(--green-500, #2d7a3a); }

/* Cards: brand radius (matches app cards) */
.card { border-radius: 12px; }
