@import "tailwindcss";

@custom-variant dark (&:where(.dark, .dark *));

/* ── Sun palette (light / daytime) ── */
:root,
[data-theme="sun"] {
  --background: #fdf2f2;
  --foreground: #1a1a1a;
  --card: #ffffff;
  --card-border: #f3e8e8;
  --accent: #fb7185;        /* rose-400 */
  --accent-soft: #fce7f3;
  --muted: #6b7280;
  --muted-bg: #f9fafb;
}

/* ── Moon palette (dark / nighttime) ── */
.dark,
[data-theme="moon"] {
  --background: #111827;
  --foreground: #f9fafb;
  --card: #1f2937;
  --card-border: #374151;
  --accent: #f43f5e;
  --accent-soft: #1f2937;
  --muted: #9ca3af;
  --muted-bg: #1f2937;
}

@theme inline {
  --color-background: var(--background);
  --color-foreground: var(--foreground);
  --font-sans: var(--font-geist-sans);
  --font-mono: var(--font-geist-mono);
  --font-caveat: var(--font-caveat);
}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.animate-marquee {
  animation: marquee 20s linear infinite;
}

/* ── CTA button pulse ring ── */
@keyframes cta-pulse {
  0%   { transform: scale(1);    opacity: 0.45; }
  60%  { transform: scale(1.18); opacity: 0.1; }
  100% { transform: scale(1.22); opacity: 0; }
}

.animate-cta-pulse {
  animation: cta-pulse 2.6s ease-out infinite;
}

/* ── Editorial font utilities (marketing pages) ── */
.font-fraunces   { font-family: var(--font-fraunces, Georgia, serif); }
.font-newsreader { font-family: var(--font-newsreader, Georgia, serif); }
.font-jetbrains  { font-family: var(--font-jetbrains, ui-monospace, monospace); }

/* Explicit pin so footer links read clearly lighter than their headings */
.text-gray-500 { color: var(--color-gray-500); }

/* hide scrollbar but keep scroll */
.scrollbar-hide {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.scrollbar-hide::-webkit-scrollbar {
  display: none;
}

body {
  background: var(--background);
  color: var(--foreground);
  font-family: Arial, Helvetica, sans-serif;
}

/* Prevent mobile auto-zoom on input focus.
   iOS Safari (and other mobile browsers) zoom the viewport whenever a focused
   input/select/textarea has a font-size below 16px — which is what made the
   home "Ask AI" popup (and other text-sm inputs) jump and distort the UI.
   Enforce a 16px minimum on touch devices only; desktop styling is unchanged. */
@media (pointer: coarse) {
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  select,
  textarea {
    font-size: 16px;
  }
}
