:root {
  --tab-accent: var(--BRIGHT_COLOUR);        /* Active and hover color */
  --tab-border: #e0e0e0;
  --tab-radius: .5rem;
  --tab-bg: #fff;
  --tab-text: #222;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}

a.content-link
{
    color:var(--BRIGHT_COLOUR);   
}

.latest-blog,
.special-list,
.special-grid,
.my-panels,
.my-tab-panel {
    position: relative !important;
    height: auto !important;
    overflow: visible !important;
}


.my-tabs {
  max-width: 900px;
  margin: 2rem auto;
  color: var(--tab-text);
  padding: 0 !important;
}

/* Hide radios */
.my-tabs input[type="radio"] {
  display: none !important;
}

/* Tab headers */
.my-tab-labels {
  display: flex !important;
  gap: .5rem !important;
  border-bottom: 1px solid var(--tab-border) !important;
}

.my-tab-labels label {
  padding: .75rem 1.25rem !important;
  cursor: pointer !important;
  background: linear-gradient(to bottom, #fafafa, #f0f0f0) !important;
  border: 1px solid var(--tab-border) !important;
  border-bottom: none !important;
  border-top-left-radius: var(--tab-radius) !important;
  border-top-right-radius: var(--tab-radius) !important;
  margin-bottom: -1px !important; /* overlap border */
  transition: background 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.05);
}

/* Hover effect for inactive tabs */
.my-tab-labels label:hover {
  background: var(--tab-accent) !important;
  color: #fff !important;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
}

/* Tab panels */
.my-tab-panel {
  display: none !important;
  padding: 1rem !important;
  border: 1px solid var(--tab-border) !important;
  border-top: none !important;
  border-bottom-left-radius: var(--tab-radius) !important;
  border-bottom-right-radius: var(--tab-radius) !important;
  background: var(--tab-bg) !important;
  margin: 0 !important;
  opacity: 0;
  animation: fadeIn 0.4s ease forwards;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

/* Active panel display */
#my-tab1:checked ~ .my-panels #my-panel1,
#my-tab2:checked ~ .my-panels #my-panel2,
#my-tab3:checked ~ .my-panels #my-panel3 {
  display: block !important;
}

/* Active tab header */
#my-tab1:checked ~ .my-tab-labels label[for="my-tab1"],
#my-tab2:checked ~ .my-tab-labels label[for="my-tab2"],
#my-tab3:checked ~ .my-tab-labels label[for="my-tab3"] {
  background: var(--tab-accent) !important;
  color: #fff !important;
  border-color: var(--tab-accent) var(--tab-accent) #fff !important;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
  position: relative;
  z-index: 2; /* raise above panel */
}

/* Fade-in animation */
@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.player-form {
  background: #fafafa;
  padding: 1rem;
  border-radius: .5rem;
}

.player-group {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: .5rem;
  padding: 1rem;
  margin-bottom: 1rem;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
  transition: transform 0.2s ease;
}

.player-group:hover {
  transform: translateY(-2px);
}

.player-group h4 {
  font-size: 1.1rem;
  margin-bottom: .75rem;
  color: var(--BRIGHT_COLOUR); 
}

.player-form .form-label {
  font-weight: 600;
  font-size: 0.9rem;
}

.player-form .form-control {
  border-radius: .25rem;
  box-shadow: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.player-form .form-control:focus {
  border-color: var(--BRIGHT_COLOUR); 
  box-shadow: 0 0 4px rgba(13, 110, 253, 0.3);
}

.price-info {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: .5rem;
  padding: 1rem;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

input[type="radio"] {
  appearance: radio !important;
  -webkit-appearance: radio !important;
  -moz-appearance: radio !important;
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 5px 0 0 !important;
  position: static !important;
  opacity: 1 !important;
}

.toggle-group {
  display: inline-flex;
  border: 1px solid #ccc;
  border-radius: 50px;
  overflow: hidden;
  background: #f8f9fa;
  font-family: inherit;
}

.toggle-group input[type="radio"] {
  display: none;
}

.toggle-group label {
  display: flex;              /* Make label fill height */
  align-items: center;        /* Center text vertically */
  justify-content: center;
  padding: 0.4rem 1.2rem;
  cursor: pointer;
  background: transparent;
  transition: background 0.3s, color 0.3s;
  font-weight: 500;
  color: #333;
  line-height: 1;             /* Avoid extra vertical spacing */
  font-size: 0.9rem;
}

.toggle-group input[type="radio"]:checked + label {
  background: #0d6efd;
  color: #fff;
}

.toggle-group label:hover {
  background: #e6e6e6;
}

.pill-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: inherit;
}

.pill-label {
  font-weight: 600;
  margin-right: 0.5rem;
}

.pill-toggle input[type="radio"] {
  display: none; /* hide radios */
}

.pill-toggle label {
  padding: 0.4rem 1rem;
  border: 1px solid #ccc;
  border-radius: 50px;
  background: #f2f2f2;
  color: #333;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  line-height: 1; /* fix vertical alignment */
  display: inline-block;
}

.pill-toggle label:hover {
  background: #e0e0e0;
}

.pill-toggle input[type="radio"]:checked + label {
  background: var(--BRIGHT_COLOUR);
  border-color: var(--BRIGHT_COLOUR);
  color: #fff;
}

.my-tab-panel {
  display: none !important;
  padding: 1rem !important;
  border: 1px solid var(--tab-border) !important;
  border-top: none !important;
  border-bottom-left-radius: var(--tab-radius) !important;
  border-bottom-right-radius: var(--tab-radius) !important;
  background: var(--tab-bg) !important;
  margin: 0 !important;
  opacity: 0;
  animation: fadeIn 0.4s ease forwards;
  /* Add this: */
  position: relative;
  height: auto !important;
  overflow: visible !important;
}

.my-panels {
  height: auto !important;
  overflow: visible !important;
}
