/* REAPP Rehab — أنماط القالب العامة (المكملة للأنماط المضمنة inline) */

html { scroll-behavior: smooth; }
body { margin: 0; background: #F8F7F3; color: #1F3D3C; font-family: '29LT Riwaya', 'Tajawal', 'Noto Naskh Arabic', serif; }
img { max-width: 100%; }
a { color: #1F3D3C; }
a:hover { color: #16302F; }

/* Accordion */
summary { list-style: none; }
summary::-webkit-details-marker { display: none; }
details[open] svg[data-chev] { transform: rotate(180deg); }

/* Header الثابت */
.site-header { background: rgba(248, 247, 243, 0); border-bottom: 1px solid transparent; transition: background 280ms cubic-bezier(0.22, 0.61, 0.36, 1), border-color 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.site-header.scrolled { background: rgba(248, 247, 243, 0.88); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-bottom-color: #E2DFD6; }
.nav-link { text-decoration: none; font-size: 14px; padding: 8px 2px; color: #455957; font-weight: 400; border-bottom: 2px solid transparent; transition: color 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.nav-link:hover { color: #1F3D3C; }
.nav-link.is-active { color: #1F3D3C; font-weight: 500; border-bottom-color: #C68F55; }

/* الجوال/سطح المكتب */
.menu-btn { display: none !important; }
.sticky-bar { display: none; }
@media (max-width: 899px) {
  .desktop-nav { display: none !important; }
  .logo-text { display: none !important; }
  .menu-btn { display: flex !important; }
}
@media (max-width: 767px) {
  .sticky-bar { display: flex; }
  body { padding-bottom: 76px; }
  .float-wa { display: none !important; }
}

/* حالات Hover الموحدة */
.hvr-dark { transition: background 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.hvr-dark:hover { background: #16302F !important; }
.hvr-ivory { transition: background 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.hvr-ivory:hover { background: #EFECE3 !important; }
.hvr-ink:hover { color: #1F3D3C !important; }
.hvr-light:hover { color: #F8F7F3 !important; }
.hvr-fade { transition: opacity 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.hvr-fade:hover { opacity: 0.92; }
.hvr-card { transition: box-shadow 280ms cubic-bezier(0.22, 0.61, 0.36, 1), transform 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.hvr-card:hover { box-shadow: 0 6px 16px rgba(31, 61, 60, 0.08); }
.hvr-lift { transition: transform 280ms cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.hvr-lift:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(31, 61, 60, 0.10); }
.hvr-glass { transition: background 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.hvr-glass:hover { background: rgba(248, 247, 243, 0.3) !important; }
.hvr-outline-light { transition: border-color 280ms cubic-bezier(0.22, 0.61, 0.36, 1), background 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.hvr-outline-light:hover { border-color: #F8F7F3 !important; background: rgba(248, 247, 243, 0.06) !important; }
.hvr-dark:active, .hvr-ivory:active, .hvr-outline-light:active { transform: translateY(1px); }

/* أزرار معرض الصور */
.js-lb { all: unset; display: block; width: 100%; cursor: pointer; box-sizing: border-box; position: relative; }

/* Lightbox (يُنشأ عبر JS) */
.reapp-lb { position: fixed; inset: 0; z-index: 110; display: flex; align-items: center; justify-content: center; background: rgba(31, 61, 60, 0.92); padding: clamp(16px, 4vw, 40px); }
.reapp-lb img { max-width: min(92vw, 1100px); max-height: 80vh; border-radius: 12px; object-fit: contain; }
.reapp-lb button { all: unset; position: absolute; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; border-radius: 999px; background: rgba(248, 247, 243, 0.16); color: #F8F7F3; cursor: pointer; box-sizing: border-box; transition: background 280ms cubic-bezier(0.22, 0.61, 0.36, 1); }
.reapp-lb button:hover { background: rgba(248, 247, 243, 0.3); }
.reapp-lb .lb-close { top: 20px; left: 20px; }
.reapp-lb .lb-prev { right: 16px; top: 50%; transform: translateY(-50%); }
.reapp-lb .lb-next { left: 16px; top: 50%; transform: translateY(-50%); }
.reapp-lb .lb-counter { position: absolute; bottom: 22px; right: 0; left: 0; text-align: center; color: rgba(248, 247, 243, 0.85); font-size: 13px; }

/* تقييمات: زر التوسعة */
.review-toggle { all: unset; font-size: 13px; color: #1F3D3C; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; min-height: 32px; display: inline-flex; align-items: center; }
.review-card[hidden] { display: none; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { transition-duration: 0.01ms !important; animation: none !important; }
}
