/* RTL support and Arabic-optimized styles */
* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Cairo', sans-serif;
  direction: rtl;
  unicode-bidi: embed;
}

/* Flip Tailwind's left/right for RTL */
.ml-1  { margin-left:   0.25rem; }
.mr-1  { margin-right:  0.25rem; }

/* Form inputs in LTR where needed */
input[dir="ltr"],
input[type="email"],
input[type="tel"] {
  direction: ltr;
  text-align: left;
}

/* Radio peer checked styles (Tailwind peer relies on CSS sibling) */
input[type="radio"]:checked + div {
  border-color: #16a34a;
  background-color: #f0fdf4;
  color: #15803d;
}

/* Smooth progress bar */
.progress-bar {
  transition: width 0.5s ease-in-out;
}

/* Card hover */
.card-hover {
  transition: box-shadow 0.2s, transform 0.2s;
}
.card-hover:hover {
  box-shadow: 0 4px 24px rgba(0,0,0,0.08);
  transform: translateY(-1px);
}

/* Print styles for report */
@media print {
  header, footer, .no-print { display: none !important; }
  body { background: white; }
  .print-full { width: 100% !important; }
}

/* Mobile adjustments */
@media (max-width: 640px) {
  h1 { font-size: 1.5rem; }
  h2 { font-size: 1.25rem; }
}

/* Scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #94a3b8; border-radius: 3px; }
