@import "tailwindcss";

:root {
  --background: #ffffff;
  --foreground: #171717;
}

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

@theme {
  --color-primary: #e68672;
  --color-primary-dark: #d4705e;
}

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

html, body { overflow-x: hidden; }
img, video, iframe { max-width: 100%; }

/* Slideshow fade */
.slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1s ease-in-out; z-index: 1; }
.slide.active { opacity: 1; z-index: 2; }

/* Logo hover */
#logo { border-radius: 50%; transition: transform 0.5s ease; }
#logo:hover { transform: scale(1.1); }

/* Hamburger open animation (nth-child cannot be expressed inline) */
.nav-hamburger--open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav-hamburger--open span:nth-child(2) { opacity: 0; }
.nav-hamburger--open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Floating chat dot */
@keyframes bounce-dot { 0%, 80%, 100% { transform: translateY(0); } 40% { transform: translateY(-6px); } }
.fc-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: #aaa; animation: bounce-dot 1s infinite; }

/* Custom select dropdown arrow */
.custom-select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666' d='M0 0l6 8 6-8z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
}

/* Pet status badges — class computed at runtime by getStatusClass() */
.status-available { background: #e6f9ee; color: #1a7a3c; }
.status-adopted   { background: #ffe8e8; color: #c0392b; }
.status-pending   { background: #fff4e0; color: #b36b00; }
.status-other     { background: #f0f0f0; color: #555; }

/* Appointment card status badges — class computed by JS template literal */
.appt-card-status--booked    { background: #e3f2fd; color: #1565c0; }
.appt-card-status--completed { background: #e8f5e9; color: #2e7d32; }
.appt-card-status--cancelled { background: #fce4ec; color: #c62828; }
.appt-card-status--pending   { background: #fff8e1; color: #f57f17; }
