/* =========================
   Tamworth ISC – Portal Theme
   Adjust the 4 colours below
   ========================= */
:root{
  --brand-primary: #2da848;        /* main brand colour */
  --brand-primary-hover: #24873b;  /* hover/darker */
  --brand-accent: #2f80ed;         /* optional accent (links/highlights) */
  --brand-danger: #dc3a49;         /* danger/unavailable */
  --ui-bg: #f6f7f9;
  --ui-card: #ffffff;
  --ui-border: #e5e7eb;
  --ui-text: #111827;
  --ui-muted: #6b7280;
  --ui-radius: 14px;
  --ui-shadow: 0 6px 20px rgba(0,0,0,.08);
  --ui-font: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* Base */
html, body{
  font-family: var(--ui-font);
  color: var(--ui-text);
  background: var(--ui-bg);
}

/* Links */
a, a:visited{ color: var(--brand-accent); }
a:hover, a:focus{ filter: brightness(.9); }

/* Panels / cards / wells (Bootstrap v3/v4-ish coverage) */
.panel, .card, .well, .thumbnail{
  background: var(--ui-card);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  box-shadow: var(--ui-shadow);
}

.panel-heading, .card-header{
  border-top-left-radius: var(--ui-radius);
  border-top-right-radius: var(--ui-radius);
  border-bottom: 1px solid var(--ui-border);
  background: #ffffff;
}

/* Reduce the heavy “black bars” feel where headings use dark backgrounds */
.panel-heading[style*="background"], .card-header[style*="background"]{
  background: #ffffff !important;
}

/* Buttons */
.btn{
  border-radius: 12px;
  padding: 10px 14px;
  font-weight: 600;
}

/* Primary */
.btn-primary, .btn.btn-primary{
  background: var(--brand-primary);
  border-color: var(--brand-primary);
}
.btn-primary:hover, .btn.btn-primary:hover,
.btn-primary:focus, .btn.btn-primary:focus{
  background: var(--brand-primary-hover);
  border-color: var(--brand-primary-hover);
}

/* Success / Available */
.btn-success, .btn.btn-success{
  background: var(--brand-primary);
  border-color: var(--brand-primary);
}
.btn-success:hover, .btn.btn-success:hover{
  background: var(--brand-primary-hover);
  border-color: var(--brand-primary-hover);
}

/* Danger / Unavailable */
.btn-danger, .btn.btn-danger{
  background: var(--brand-danger);
  border-color: var(--brand-danger);
}

/* “Pay now” buttons often use success/primary; ensure they look intentional */
button[class*="pay"], a[class*="pay"]{
  border-radius: 12px;
  font-weight: 700;
}

/* Forms */
.form-control, input, select, textarea{
  border-radius: 12px;
  border: 1px solid var(--ui-border);
  box-shadow: none;
}
.form-control:focus, input:focus, select:focus, textarea:focus{
  outline: none;
  border-color: rgba(45,168,72,.55);
  box-shadow: 0 0 0 3px rgba(45,168,72,.18);
}

/* Tables (team lists, statements, etc.) */
.table, table{
  border-color: var(--ui-border);
}
.table > thead > tr > th{
  color: var(--ui-muted);
  font-weight: 700;
  border-bottom: 1px solid var(--ui-border);
}

/* Alerts / banners */
.alert, .notice, .message{
  border-radius: var(--ui-radius);
  border: 1px solid var(--ui-border);
}

/* Optional: soften the overall spacing */
.container, .container-fluid{
  padding-left: 18px;
  padding-right: 18px;
}
