:root {
  /* COLORS */
  --glp-primary-navy-c055f9c1: #082B5C;
  --glp-dark-navy-c055f9c1: #041C3C;
  --glp-primary-orange-c055f9c1: #F15A24;
  --glp-orange-hover-c055f9c1: #D94712;
  --glp-white-c055f9c1: #FFFFFF;
  --glp-light-bg-c055f9c1: #F5F7FA;
  --glp-light-border-c055f9c1: #D9E1EA;
  --glp-body-text-c055f9c1: #263548;
  --glp-muted-text-c055f9c1: #5F6F80;
  
  /* STATUS COLORS */
  --glp-status-available-c055f9c1: #2E7D32;
  --glp-status-pending-c055f9c1: #C77700;
  --glp-status-reserved-c055f9c1: #B3261E;

  /* SPACING & LAYOUT */
  --glp-max-width-c055f9c1: 1200px;
  --glp-border-radius-c055f9c1: 12px;
  --glp-shadow-sm-c055f9c1: 0 2px 8px rgba(4, 28, 60, 0.05);
  --glp-shadow-md-c055f9c1: 0 6px 16px rgba(4, 28, 60, 0.08);
}

/* BASE BUTTON UTILITIES */
.glp-btn-c055f9c1 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 28px;
  min-height: 48px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.25s ease;
  cursor: pointer;
  border: 2px solid transparent;
}

.glp-btn-primary-c055f9c1 {
  background-color: var(--glp-primary-orange-c055f9c1);
  color: var(--glp-white-c055f9c1);
}
.glp-btn-primary-c055f9c1:hover {
  background-color: var(--glp-orange-hover-c055f9c1);
  color: var(--glp-white-c055f9c1);
}

.glp-btn-secondary-c055f9c1 {
  background-color: transparent;
  color: var(--glp-primary-navy-c055f9c1);
  border-color: var(--glp-primary-navy-c055f9c1);
}
.glp-btn-secondary-c055f9c1:hover {
  background-color: var(--glp-primary-navy-c055f9c1);
  color: var(--glp-white-c055f9c1);
}

/* CARDS */
.glp-card-c055f9c1 {
  background: var(--glp-white-c055f9c1);
  border: 1px solid var(--glp-light-border-c055f9c1);
  border-radius: var(--glp-border-radius-c055f9c1);
  padding: 32px;
  box-shadow: var(--glp-shadow-sm-c055f9c1);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.glp-card-c055f9c1:hover {
  transform: translateY(-4px);
  box-shadow: var(--glp-shadow-md-c055f9c1);
}

/* BADGES */
.glp-badge-c055f9c1 {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.glp-badge-available-c055f9c1 {
  background-color: rgba(46, 125, 50, 0.1);
  color: var(--glp-status-available-c055f9c1);
}
.glp-badge-pending-c055f9c1 {
  background-color: rgba(199, 119, 0, 0.1);
  color: var(--glp-status-pending-c055f9c1);
}
.glp-badge-reserved-c055f9c1 {
  background-color: rgba(179, 38, 30, 0.1);
  color: var(--glp-status-reserved-c055f9c1);
}
