:root {
  /* Guest Parking Buddy brand */
  --gpb-navy: #0B3456;
  --gpb-blue: #0875C9;
  --gpb-blue-dark: #065F9F;
  --gpb-green: #47A62B;
  --gpb-green-dark: #37851F;
  --gpb-charcoal: #303B43;
  --gpb-slate: #64727D;
  --gpb-bg: #F6F9FB;
  --gpb-surface: #FFFFFF;
  --gpb-border: #DCE5EB;
  --gpb-success-bg: #EDF8E9;
  --gpb-warning: #D98A00;
  --gpb-danger: #C93C3C;

  --gpb-radius-sm: 8px;
  --gpb-radius-md: 12px;
  --gpb-radius-lg: 18px;
  --gpb-shadow: 0 8px 24px rgba(11, 52, 86, 0.10);

  --gpb-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
              "Segoe UI", Roboto, Arial, sans-serif;
}

html, body {
  font-family: var(--gpb-font);
  color: var(--gpb-charcoal);
  background: var(--gpb-bg);
}

a { color: var(--gpb-blue); }
a:hover { color: var(--gpb-blue-dark); }

.gpb-button-primary {
  background: var(--gpb-blue);
  color: #fff;
  border: 0;
  border-radius: var(--gpb-radius-sm);
  padding: .72rem 1.1rem;
  font-weight: 700;
}

.gpb-button-primary:hover { background: var(--gpb-blue-dark); }

.gpb-button-success {
  background: var(--gpb-green);
  color: #fff;
  border: 0;
  border-radius: var(--gpb-radius-sm);
  padding: .72rem 1.1rem;
  font-weight: 700;
}

.gpb-card {
  background: var(--gpb-surface);
  border: 1px solid var(--gpb-border);
  border-radius: var(--gpb-radius-md);
  box-shadow: var(--gpb-shadow);
}

.gpb-status-available { color: var(--gpb-green-dark); }
.gpb-status-occupied  { color: var(--gpb-warning); }
.gpb-status-violation { color: var(--gpb-danger); }
