/* livePix shared design tokens — keeps every page consistent with the homepage.
   Linked by dashboard / guest / live / setup / terms (index.html inlines its own,
   identical, tokens). */
@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@400;500;700;800;900&display=swap');

:root { --lp1: #6D28D9; --lp2: #DB2777; }

body { font-family: 'Heebo', system-ui, sans-serif !important; }

/* brand utilities used across pages */
.grad-bg   { background: linear-gradient(135deg, var(--lp1), var(--lp2)) !important; }
.grad-text { background: linear-gradient(90deg, #8B5CF6, var(--lp2));
             -webkit-background-clip: text; background-clip: text; color: transparent; }
.text-brand   { color: var(--lp1) !important; }
.border-brand { border-color: var(--lp1) !important; }

/* unify the business-page primary buttons (built with `bg-black`) to the livePix
   gradient. guest.html / live.html use `.brand-bg` = the photographer's white-label
   color and are intentionally LEFT ALONE. */
button.bg-black, a.bg-black, .lp-primary {
  background: linear-gradient(135deg, var(--lp1), var(--lp2)) !important;
  color: #fff !important; border: none !important;
}
button.bg-black:hover, a.bg-black:hover, .lp-primary:hover { opacity: .92; }

/* consistent input focus */
input:focus, select:focus, textarea:focus {
  outline: none; border-color: var(--lp1) !important;
  box-shadow: 0 0 0 3px rgba(109, 40, 217, .12);
}

/* a11y: visible keyboard focus on all interactive elements (WCAG 2.4.7) */
a:focus-visible, button:focus-visible, [role="button"]:focus-visible,
summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--lp1); outline-offset: 2px; border-radius: 6px;
}
