/*
 * ╔══════════════════════════════════════════════════╗
 * ║  villaGo — Reset                                ║
 * ║  Normalize browser defaults. Applied globally.  ║
 * ╚══════════════════════════════════════════════════╝
 */

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

/* ── Remove default margin and padding ───────────── */
* {
  margin: 0;
  padding: 0;
}

/* ── Remove default list styles ──────────────────── */
ul[role="list"], ol[role="list"] {
  list-style: none;
}

ul {
  list-style: none;
}

/* ── Smooth scrolling ────────────────────────────── */
html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* ── Body baseline ───────────────────────────────── */
body {
  min-height: 100vh;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  direction: rtl;
  text-align: right;
  background: var(--y-color-bg);
  color: var(--y-color-text);
  padding-top: 64px; /* exact header height */
}

/* ── Media defaults ──────────────────────────────── */
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

/* ── Form element font inheritance ───────────────── */
input, button, textarea, select {
  font: inherit;
  border: none;
  outline: none;
}

/* ── Remove number input spinners ────────────────── */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

/* ── Hide native date/time picker icons globally ──
   Custom SVG icons sit in labels or beside fields.
   Showing both the SVG and the native browser icon
   creates a double-icon conflict on every date/time
   field across the site. This suppresses the native
   icon on all pages since reset.css loads everywhere. */
input[type="date"]::-webkit-calendar-picker-indicator,
input[type="time"]::-webkit-calendar-picker-indicator,
input[type="datetime-local"]::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none;
  appearance: none;
}

/* ── Custom scrollbar ────────────────────────────── */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: var(--y-color-bg-subtle);
}

::-webkit-scrollbar-thumb {
  background: var(--y-color-primary);
  border-radius: var(--y-radius-full);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--y-color-accent);
}

/* ── Remove default button styles ───────────────── */
button {
  border: none;
  background: none;
  cursor: pointer;
}

/* ── Remove default anchor decoration ───────────── */
a {
  text-decoration: none;
  color: inherit;
}

/* ── Remove default fieldset styles ─────────────── */
fieldset {
  border: none;
  padding: 0;
}

/* ═══════════════════════════════════════════════════
   RESPONSIVE STYLES
   ═══════════════════════════════════════════════════ */

/* ── Large Desktop (lg) ──────────────────────────── */
@media (max-width: 1200px) {
  body {
    font-size: 0.97rem;
  }
}

/* ── Tablet (md) ─────────────────────────────────── */
@media (max-width: 992px) {
  body {
    font-size: 0.95rem;
  }
}

/* ── Mobile Landscape / Large Phone (sm) ─────────── */
@media (max-width: 768px) {
  body {
    font-size: 0.93rem;
  }
}

/* ── Small Phone (xs) ────────────────────────────── */
@media (max-width: 480px) {
  body {
    font-size: 0.9rem;
  }
}
