/* Moonamo design tokens — from online-gallery index.css */

@font-face {
  font-family: IRANSans;
  font-style: normal;
  font-weight: 900;
  font-display: optional;
  src: url('../fonts/IRANSansWeb-FaNum_Black.woff2') format('woff2');
}
@font-face {
  font-family: IRANSans;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/IRANSansWeb-FaNum_Bold.woff2') format('woff2');
}
@font-face {
  font-family: IRANSans;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/IRANSansWeb-FaNum_Medium.woff2') format('woff2');
}
/* Alias missing CSS weights so numbers/UI never fall back to system fonts */
@font-face {
  font-family: IRANSans;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/IRANSansWeb-FaNum_Medium.woff2') format('woff2');
}
@font-face {
  font-family: IRANSans;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/IRANSansWeb-FaNum.woff2') format('woff2');
}
@font-face {
  font-family: IRANSans;
  font-style: normal;
  font-weight: 800;
  font-display: optional;
  src: url('../fonts/IRANSansWeb-FaNum_Bold.woff2') format('woff2');
}
@font-face {
  font-family: IRANSans;
  font-style: normal;
  font-weight: 300;
  font-display: optional;
  src: url('../fonts/IRANSansWeb-FaNum_Light.woff2') format('woff2');
}
@font-face {
  font-family: IRANSans;
  font-style: normal;
  font-weight: 200;
  font-display: optional;
  src: url('../fonts/IRANSansWeb-FaNum_UltraLight.woff2') format('woff2');
}

:root {
  --mm-bg-page: #f8fafc;
  --mm-bg-surface: #ffffff;
  --mm-bg-card: #ffffff;
  --mm-bg-elevated: #f1f5f9;
  --mm-bg-hover: #e2e8f0;
  --mm-steel-50: #f0f5fa;
  --mm-steel-100: #e2ecf5;
  --mm-steel-200: #c6d9ed;
  --mm-steel-300: #8faecf;
  --mm-steel-400: #5782ae;
  --mm-steel-500: #2b5683;
  --mm-steel-600: #1d3e61;
  --mm-steel-700: #13273e;
  --mm-steel-800: #0a1624;
  --mm-gold-light: #dfb962;
  --mm-gold: #b38728;
  --mm-gold-dark: #876115;
  --mm-gold-subtle: rgba(179, 135, 40, 0.09);
  --mm-gold-border: rgba(179, 135, 40, 0.26);
  --mm-text-primary: #0f172a;
  --mm-text-secondary: #334155;
  --mm-text-muted: #475569;
  --mm-text-gold: #966f1e;
  --mm-border-faint: #e2e8f0;
  --mm-border-light: #cbd5e1;
  --mm-border-highlight: #94a3b8;
  --mm-font-display: IRANSans, Tahoma, sans-serif;
  --mm-font-body: IRANSans, Tahoma, sans-serif;
  --mm-radius-sm: 6px;
  --mm-radius-md: 10px;
  --mm-radius-lg: 14px;
  --mm-radius-pill: 9999px;
  --mm-shadow-subtle: 0 1px 3px 0 rgba(0, 0, 0, 0.05), 0 1px 2px -1px rgba(0, 0, 0, 0.05);
  --mm-shadow-card: 0 4px 20px -2px rgba(15, 23, 42, 0.06), 0 2px 6px -1px rgba(15, 23, 42, 0.04);
  --mm-shadow-hover: 0 16px 32px -4px rgba(15, 23, 42, 0.1), 0 4px 12px -2px rgba(15, 23, 42, 0.06);
  --mm-transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --mm-transition-smooth: 250ms cubic-bezier(0.16, 1, 0.3, 1);
  --mm-container: 80rem;
  /* Synced from .mm-header height in main.js; fallback ≈ compact bar */
  --mm-header-offset: 5.5rem;
  --mm-sticky-top: calc(var(--mm-header-offset) + 0.75rem);
}

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

html {
  font-family: var(--mm-font-body);
  scroll-behavior: smooth;
}

body.mm-body {
  margin: 0;
  background-color: var(--mm-bg-page);
  color: var(--mm-text-primary);
  font-family: var(--mm-font-body);
  letter-spacing: -0.01em;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--mm-font-display);
  font-weight: 700;
  color: var(--mm-text-primary);
  letter-spacing: -0.02em;
  margin: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

button, input, textarea, select {
  font-family: var(--mm-font-body);
}

/* Keep prices, weights, rates & Woo amounts on IRANSans (FaNum) everywhere */
body.mm-body :where(
  .tabular-nums,
  .woocommerce-Price-amount,
  .woocommerce-Price-currencySymbol,
  .amount,
  bdi,
  .price,
  .mm-product-card__meta .w,
  .mm-product-card__price,
  .mm-rate-item,
  .mm-pdp-price,
  .mm-pdp-mobile-bar__price,
  .mm-invoice-card__meta,
  .mm-invoice-card__mono,
  .mm-lic-card__code
) {
  font-family: var(--mm-font-body);
}

.tabular-nums {
  font-variant-numeric: tabular-nums;
}

.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.mm-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.mm-icon svg {
  display: block;
}

.mm-container {
  width: 100%;
  max-width: var(--mm-container);
  margin-inline: auto;
  padding-inline: 1rem;
}

@media (min-width: 640px) {
  .mm-container {
    padding-inline: 2rem;
  }
}

.mm-main {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
}

.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

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