/* ShineCraft v2 – shared brand theme (red / black / white) */
:root {
  --sc-red: #D7262E;
  --sc-red-dark: #A5161D;
  --sc-red-light: #FF4D55;
  --sc-black: #111111;
  --sc-charcoal: #2B2B2F;
  --sc-grey: #F4F4F4;
  --sc-green: #1E9E5A;
  --sc-font-head: 'Poppins', system-ui, sans-serif;
  --sc-font-body: 'Inter', system-ui, sans-serif;

  --bs-primary: #D7262E;
  --bs-primary-rgb: 215, 38, 46;
  --bs-link-color: #D7262E;
  --bs-link-color-rgb: 215, 38, 46;
  --bs-link-hover-color: #A5161D;
  --bs-link-hover-color-rgb: 165, 22, 29;
  --bs-body-font-family: var(--sc-font-body);
  --bs-border-radius: .65rem;
  --bs-border-radius-lg: .9rem;
  --bs-focus-ring-color: rgba(215, 38, 46, .25);
}

h1, h2, h3, h4, h5, h6, .font-head { font-family: var(--sc-font-head); font-weight: 600; letter-spacing: -.01em; }

.btn-primary {
  --bs-btn-bg: var(--sc-red); --bs-btn-border-color: var(--sc-red);
  --bs-btn-hover-bg: var(--sc-red-dark); --bs-btn-hover-border-color: var(--sc-red-dark);
  --bs-btn-active-bg: var(--sc-red-dark); --bs-btn-active-border-color: var(--sc-red-dark);
  --bs-btn-disabled-bg: var(--sc-red); --bs-btn-disabled-border-color: var(--sc-red);
  --bs-btn-focus-shadow-rgb: 215, 38, 46;
  font-weight: 600;
}
.btn-outline-primary {
  --bs-btn-color: var(--sc-red); --bs-btn-border-color: var(--sc-red);
  --bs-btn-hover-bg: var(--sc-red); --bs-btn-hover-border-color: var(--sc-red);
  --bs-btn-active-bg: var(--sc-red-dark); --bs-btn-active-border-color: var(--sc-red-dark);
  --bs-btn-focus-shadow-rgb: 215, 38, 46;
}
.text-bg-primary { background-color: var(--sc-red) !important; }
.text-primary { color: var(--sc-red) !important; }
.bg-primary { background-color: var(--sc-red) !important; }
.border-primary { border-color: var(--sc-red) !important; }
.form-check-input:checked { background-color: var(--sc-red); border-color: var(--sc-red); }
.form-control:focus, .form-select:focus { border-color: var(--sc-red-light); box-shadow: 0 0 0 .2rem rgba(215, 38, 46, .15); }
.page-item.active .page-link { background-color: var(--sc-red); border-color: var(--sc-red); }
.page-link { color: var(--sc-red); }
.nav-pills .nav-link.active, .nav-pills .show > .nav-link { background-color: var(--sc-red); }
.nav-tabs .nav-link.active { color: var(--sc-red); border-bottom-color: var(--sc-red); font-weight: 600; }
.nav-tabs .nav-link { color: inherit; opacity: .75; }
.nav-tabs .nav-link.active { opacity: 1; }
.progress-bar { background-color: var(--sc-red); }

/* status colours: Pending amber · Confirmed blue · In progress purple · Completed green · Cancelled red-grey */
.badge-status { font-weight: 600; letter-spacing: .01em; padding: .42em .75em; border-radius: 999px; }
.st-pending { background: #FFF1D6; color: #8a5a00; }
.st-confirmed { background: #DCEBFF; color: #0b4fb3; }
.st-in_progress { background: #EBDDFF; color: #5a22b4; }
.st-completed { background: #D8F3E4; color: #0f6a3a; }
.st-cancelled { background: #E6E1E2; color: #6a5558; }
[data-bs-theme=dark] .st-pending { background: #4a3708; color: #ffd37a; }
[data-bs-theme=dark] .st-confirmed { background: #12315f; color: #9cc6ff; }
[data-bs-theme=dark] .st-in_progress { background: #34205c; color: #cfb4ff; }
[data-bs-theme=dark] .st-completed { background: #11432a; color: #86e0b0; }
[data-bs-theme=dark] .st-cancelled { background: #3a3234; color: #c9bcbf; }

.text-red { color: var(--sc-red) !important; }
.bg-carbon { background: var(--sc-black) !important; color: #fff; }
.bg-charcoal { background: var(--sc-charcoal) !important; color: #fff; }
.bg-soft { background: var(--sc-grey); }
.rounded-xl { border-radius: 1.25rem !important; }

.logo-img { height: 46px; width: auto; }
.avatar { width: 38px; height: 38px; border-radius: 50%; background: linear-gradient(135deg, var(--sc-red), var(--sc-red-dark)); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-weight: 600; font-size: .85rem; flex: none; object-fit: cover; }
.avatar-lg { width: 72px; height: 72px; font-size: 1.5rem; }
.avatar-sm { width: 30px; height: 30px; font-size: .72rem; }

::selection { background: var(--sc-red); color: #fff; }
