/* Booked Now, Inc. – Brand Identity: full palette + gradients */
:root {
  /* Primary palette (Brand Identity PDF) */
  --brand-glacier: #4d97ef;
  --brand-eggshell: #aedaff;
  --brand-charcoal: #231f20;
  --brand-sunflower: #f5c05f;
  /* Semantic aliases */
  --brand-primary: var(--brand-glacier);
  --brand-primary-light: var(--brand-eggshell);
  --brand-text: var(--brand-charcoal);
  --brand-accent: var(--brand-sunflower);
  /* Gradients (Icicle, Dew, Starburst, Sunset – digital variation) */
  --brand-gradient-icicle: linear-gradient(160deg, #4d97ef 0%, #7eb3f4 40%, #aedaff 100%);
  --brand-gradient-dew: linear-gradient(180deg, #aedaff 0%, #d4eeff 50%, #e8f7ff 100%);
  --brand-gradient-starburst: linear-gradient(135deg, #f5c05f 0%, #f9d080 50%, #fce4a8 100%);
  --brand-gradient-sunset: linear-gradient(135deg, #4d97ef 0%, #8b7fc9 50%, #f5c05f 100%);
  /* Subtle backgrounds using palette */
  --brand-bg-page: var(--brand-eggshell);
  --brand-bg-card: #ffffff;
  --brand-border: rgba(35, 31, 32, 0.12);
  --brand-border-strong: rgba(35, 31, 32, 0.2);
  /* Typography */
  --font-sans: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-serif: "Instrument Serif", Georgia, serif;
}

/* Base typography */
body {
  font-family: var(--font-sans);
  font-weight: 600;
  color: var(--brand-charcoal);
  background: var(--brand-bg-page);
}
h1, h2, h3, .h1, .h2, .h3 {
  font-family: var(--font-serif);
  font-weight: 400;
  color: var(--brand-charcoal);
}
.btn {
  font-family: var(--font-sans);
  font-weight: 800;
}

/* Utility: accent (Sunflower) */
.bg-brand-accent { background-color: var(--brand-sunflower) !important; }
.text-brand-accent { color: var(--brand-sunflower) !important; }
.border-brand-accent { border-color: var(--brand-sunflower) !important; }
.bg-brand-glacier { background-color: var(--brand-glacier) !important; }
.text-brand-glacier { color: var(--brand-glacier) !important; }
.bg-brand-charcoal { background-color: var(--brand-charcoal) !important; }
.text-brand-charcoal { color: var(--brand-charcoal) !important; }
.bg-brand-eggshell { background-color: var(--brand-eggshell) !important; }

/* Gradient backgrounds (for sections/heroes) */
.bg-gradient-icicle { background: var(--brand-gradient-icicle) !important; }
.bg-gradient-dew { background: var(--brand-gradient-dew) !important; }
.bg-gradient-starburst { background: var(--brand-gradient-starburst) !important; }
.bg-gradient-sunset { background: var(--brand-gradient-sunset) !important; }

/* ---- Two-mode layout: public (branded) vs dashboard (neutral) ---- */
/* Public: white background for all unauthenticated pages */
body.public-layout {
  background: #fff;
}
.public-layout .navbar {
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06);
}
.public-layout .card,
.public-layout .ticket-card {
  background: #fff;
  box-shadow: 0 4px 20px rgba(35, 31, 32, 0.08);
  border: 1px solid rgba(35, 31, 32, 0.08);
}

/* Dashboard: neutral workspace when logged in */
body.dashboard-layout {
  background: #e8eaed;
}
.dashboard-layout .main-content {
  background: transparent;
}
.dashboard-layout .card,
.dashboard-layout .ticket-card {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}
