/*
 * Zaya Concept — shared design tokens
 *
 * This file is the single visual vocabulary for the current static prototype
 * and the future React/Next.js migration. Keep component-specific rules in
 * their owning stylesheet; add new values here before introducing literals.
 */
:root {
  /* Color */
  --zaya-color-wine: #4b1722;
  --zaya-color-wine-strong: #641f2d;
  --zaya-color-ink: #171514;
  --zaya-color-muted: #5c5652;
  --zaya-color-paper: #f7f3ef;
  --zaya-color-paper-muted: #eee6df;
  --zaya-color-sand: #d7c4b2;
  --zaya-color-line: #d8cec6;
  --zaya-color-white: #fffdfa;
  --zaya-color-success: #3e7c4e;
  --zaya-color-danger: #a62d2d;

  /* Backwards-compatible aliases used by the current prototype. */
  --wine: var(--zaya-color-wine);
  --wine-2: var(--zaya-color-wine-strong);
  --ink: var(--zaya-color-ink);
  --muted: var(--zaya-color-muted);
  --paper: var(--zaya-color-paper);
  --paper-2: var(--zaya-color-paper-muted);
  --sand: var(--zaya-color-sand);
  --line: var(--zaya-color-line);
  --white: var(--zaya-color-white);

  /* Typography — Clean, modern luxury with balanced Poppins */
  --zaya-font-display: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --zaya-font-body: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --serif: var(--zaya-font-display);
  --sans: var(--zaya-font-body);

  /* Layout */
  --zaya-container-max: 1180px;
  --zaya-gutter: 24px;
  --zaya-gutter-mobile: 16px;
  --zaya-space-1: 4px;
  --zaya-space-2: 8px;
  --zaya-space-3: 12px;
  --zaya-space-4: 16px;
  --zaya-space-5: 20px;
  --zaya-space-6: 24px;
  --zaya-space-8: 32px;
  --zaya-space-10: 40px;
  --zaya-space-12: 48px;
  --zaya-space-16: 64px;
  --zaya-space-20: 80px;
  --zaya-space-24: 96px;

  /* Shape, elevation and motion */
  --zaya-radius-sm: 2px;
  --zaya-radius-md: 4px;
  --zaya-radius-pill: 999px;
  --radius: var(--zaya-radius-sm);
  --zaya-shadow-soft: 0 12px 40px rgba(37, 20, 20, .08);
  --zaya-shadow-editorial: 0 24px 70px rgba(37, 20, 20, .13);
  --shadow: var(--zaya-shadow-editorial);
  --zaya-duration-fast: 160ms;
  --zaya-duration-standard: 250ms;
  --zaya-duration-slow: 700ms;
  --zaya-ease-standard: cubic-bezier(.2, .7, .2, 1);
  --zaya-focus-ring: 0 0 0 3px rgba(75, 23, 34, .2);
}

*, *::before, *::after {
  box-sizing: border-box;
}

:where(a, button, input, select, textarea):focus-visible {
  outline: 2px solid var(--zaya-color-wine);
  outline-offset: 3px;
}

:where(button, input, select, textarea):disabled {
  cursor: not-allowed;
  opacity: .55;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 1ms !important;
  }
}
