/* Self-hosted Vazirmatn (Persian) — no internet needed */
@font-face { font-family:'Vazirmatn'; font-style:normal; font-weight:300; font-display:swap;
  src:url('../fonts/Vazirmatn-Light.woff2') format('woff2'); }
@font-face { font-family:'Vazirmatn'; font-style:normal; font-weight:400; font-display:swap;
  src:url('../fonts/Vazirmatn-Regular.woff2') format('woff2'); }
@font-face { font-family:'Vazirmatn'; font-style:normal; font-weight:500; font-display:swap;
  src:url('../fonts/Vazirmatn-Medium.woff2') format('woff2'); }
@font-face { font-family:'Vazirmatn'; font-style:normal; font-weight:600; font-display:swap;
  src:url('../fonts/Vazirmatn-SemiBold.woff2') format('woff2'); }
@font-face { font-family:'Vazirmatn'; font-style:normal; font-weight:700; font-display:swap;
  src:url('../fonts/Vazirmatn-Bold.woff2') format('woff2'); }

/* Glassmorphism component classes (design tokens from ui-ux-pro-max) */

:root {
  --color-primary: #EA580C;
  --color-accent: #2563EB;
}

/* Frosted glass surface */
.glass {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.10);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
}

.glass-strong {
  background: rgba(44, 30, 22, 0.55);
  border: 1px solid rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

/* Buttons */
.btn-primary,
.btn-ghost {
  display: inline-flex; align-items: center; gap: .5rem;
  padding: .55rem 1.1rem; border-radius: .9rem;
  font-weight: 500; cursor: pointer;
  transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease;
}
.btn-primary {
  background: var(--color-primary); color: #fff;
  box-shadow: 0 6px 20px rgba(234, 88, 12, .35);
}
.btn-primary:hover { transform: translateY(-1px); box-shadow: 0 10px 26px rgba(234,88,12,.5); }
.btn-ghost { background: rgba(255,255,255,.05); color: #fff; border: 1px solid rgba(255,255,255,.10); }
.btn-ghost:hover { background: rgba(255,255,255,.12); }

/* Inputs */
.field {
  width: 100%; padding: .7rem 1rem; border-radius: .9rem;
  background: rgba(0,0,0,.25); color: #fff;
  border: 1px solid rgba(255,255,255,.12);
  transition: border-color .18s ease, box-shadow .18s ease;
}
.field::placeholder { color: rgba(255,255,255,.4); }
.field:focus {
  outline: none; border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(234, 88, 12, .3);
}

/* Tool card */
.tool-card {
  display: block; padding: 1.25rem; border-radius: 1.25rem;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.tool-card:hover { transform: translateY(-4px); border-color: rgba(234,88,12,.4); }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; animation: none !important; }
}
