:root{--green:#2f6b57;--green2:#8ab9a0;--pink:#d99ab3;--pink2:#f7dce8;--cream:#fff9f4;--text:#21352d;--muted:#718079;--shadow:0 18px 50px rgba(47,107,87,.13)}*{box-sizing:border-box}body{margin:0;font-family:Tajawal,Arial,sans-serif;background:var(--cream);color:var(--text)}button,input,select,textarea{font-family:inherit}button{cursor:pointer}.hidden{display:none!important}.landing{min-height:100vh;padding:24px;background:radial-gradient(circle at top left,#f7dce8 0,#fff9f4 35%,#eef7f0 100%)}.topbar,.brand,.hero,.hero-actions,.features,.photo-row,.admin-header,.filters,.panel-head{display:flex;align-items:center}.topbar{justify-content:space-between;max-width:1180px;margin:auto}.brand{gap:12px}.logo-mark{width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,var(--pink),var(--green2));color:#fff;display:grid;place-items:center;font-size:30px;font-weight:800;box-shadow:var(--shadow)}h1,h2,h3,p{margin:0}.brand h1{font-size:28px}.brand p,.muted,.admin-header p{color:var(--muted)}.ghost-btn,.secondary-btn{border:1px solid rgba(47,107,87,.2);background:#fff;color:var(--green);border-radius:16px;padding:12px 18px;font-weight:700}.primary-btn{border:0;background:linear-gradient(135deg,var(--green),#5e9f80);color:#fff;border-radius:16px;padding:13px 22px;font-weight:800;box-shadow:var(--shadow)}.primary-btn.full{width:100%}.hero{max-width:1180px;margin:58px auto 0;gap:34px;justify-content:space-between}.hero-text{flex:1}.badge{display:inline-block;background:#fff;border:1px solid #f0c8d8;color:#b55d82;border-radius:999px;padding:8px 14px;font-weight:700;margin-bottom:18px}.hero h2{font-size:60px;color:var(--green);line-height:1.05}.hero-text>p{font-size:20px;line-height:1.8;max-width:570px;margin:20px 0;color:#486257}.hero-actions{gap:12px;flex-wrap:wrap}.features{gap:12px;margin-top:28px;flex-wrap:wrap}.features div{background:#fff;border-radius:20px;padding:15px 18px;min-width:125px;box-shadow:var(--shadow)}.features b{display:block;color:var(--green);font-size:19px}.features span{color:var(--muted)}.hero-gallery{flex:1;display:grid;gap:14px}.photo-card{min-height:160px;border-radius:30px;background:linear-gradient(135deg,#a7d3b7,#f6c3d7);display:grid;place-items:center;color:#fff;font-weight:800;font-size:24px;box-shadow:var(--shadow);position:relative;overflow:hidden}.photo-card:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.65);border-radius:24px}.photo-card.large{min-height:360px;background:linear-gradient(135deg,#2f6b57,#d99ab3)}.photo-card.pink{background:linear-gradient(135deg,#d99ab3,#fff1f7);color:#8d4b67}.photo-row{gap:14px}.photo-row>*{flex:1}.modal{position:fixed;inset:0;background:rgba(33,53,45,.45);display:grid;place-items:center;padding:18px;z-index:10}.modal-card{background:#fff;border-radius:28px;padding:26px;max-width:620px;width:100%;box-shadow:0 24px 70px rgba(0,0,0,.18);position:relative}.modal-card.small{max-width:420px}.close{position:absolute;left:18px;top:14px;border:0;background:#f7edf2;color:#9b5372;width:34px;height:34px;border-radius:50%;font-size:23px}form{display:grid;gap:12px;margin-top:18px}label{display:grid;gap:6px;font-weight:700}input,select,textarea{border:1px solid #e4e8e5;border-radius:14px;padding:12px;background:#fbfdfb;font-size:16px}textarea{min-height:82px;resize:vertical}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin{min-height:100vh;display:flex;background:#f7fbf8}.sidebar{width:280px;background:#fff;padding:22px;display:flex;flex-direction:column;gap:24px;border-left:1px solid #e7eee9;position:sticky;top:0;height:100vh}.admin-brand .logo-mark{width:46px;height:46px;font-size:24px}.admin-brand h1{font-size:23px}nav{display:grid;gap:10px}.nav-btn{border:0;background:#f3f8f5;color:var(--green);border-radius:16px;padding:14px;text-align:right;font-weight:800}.nav-btn.active{background:linear-gradient(135deg,var(--green),#6aac8d);color:#fff}.logout{margin-top:auto;border:0;background:#fff0f5;color:#b35478;padding:13px;border-radius:16px;font-weight:800}.admin-main{flex:1;padding:26px;overflow:auto}.admin-header{justify-content:space-between;margin-bottom:22px;gap:14px}.admin-header h2{font-size:32px;color:var(--green)}.filters{gap:10px}.cards{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:14px;margin-bottom:18px}.card{background:#fff;border-radius:22px;padding:18px;box-shadow:var(--shadow);border:1px solid #edf4ef}.card span{color:var(--muted);font-weight:700}.card b{display:block;color:var(--green);font-size:26px;margin-top:8px}.panel{background:#fff;border-radius:24px;padding:20px;box-shadow:var(--shadow);margin-bottom:18px;border:1px solid #edf4ef}.admin-form{grid-template-columns:repeat(4,1fr)}.admin-form .wide{grid-column:span 4}.admin-form button{width:max-content}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:12px;border-bottom:1px solid #eef2ef;text-align:right;white-space:nowrap}th{color:var(--green);background:#f6faf7}.action{border:0;border-radius:10px;padding:7px 9px;margin:2px;font-weight:700}.edit{background:#eef8f1;color:var(--green)}.delete{background:#fff0f3;color:#b24c6d}.whatsapp{background:#eef7ff;color:#1b6a96}@media(max-width:850px){.landing{padding:16px}.topbar{gap:12px}.topbar .ghost-btn{display:none}.hero{flex-direction:column;margin-top:30px}.hero h2{font-size:42px}.hero-text>p{font-size:17px}.hero-gallery{width:100%}.photo-card.large{min-height:245px}.features div{flex:1;min-width:100px}.grid2{grid-template-columns:1fr}.admin{display:block}.sidebar{position:fixed;bottom:0;top:auto;right:0;left:0;width:100%;height:auto;z-index:5;display:block;padding:8px;border-left:0;border-top:1px solid #e7eee9}.sidebar .brand,.logout{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.nav-btn{font-size:13px;text-align:center;padding:10px 6px;border-radius:12px}.admin-main{padding:18px 14px 86px}.admin-header{display:block}.filters{margin-top:12px}.cards{grid-template-columns:1fr 1fr}.admin-form{grid-template-columns:1fr}.admin-form .wide{grid-column:auto}.admin-form button{width:100%}.hero-actions button{flex:1}.modal-card{padding:22px 16px}}@media(max-width:480px){.cards{grid-template-columns:1fr}.brand h1{font-size:22px}.logo-mark{width:48px;height:48px}.hero h2{font-size:36px}.photo-row{display:grid}}

/* Afaneen V2 theme updates */
:root{--green:#3f755c;--green2:#91b79b;--pink:#d88fa7;--pink2:#f6dbe4;--cream:#fffafa;--text:#263b31;--muted:#73827b;--shadow:0 18px 50px rgba(63,117,92,.12)}
.logo-img{width:70px;height:70px;object-fit:contain;border-radius:18px;background:#fff;padding:4px;box-shadow:0 10px 28px rgba(216,143,167,.16)}
.small-logo{width:54px;height:54px;border-radius:15px}.brand{align-items:center}.brand h1{color:var(--green)}
.landing{background:radial-gradient(circle at 12% 8%,rgba(216,143,167,.20),transparent 32%),radial-gradient(circle at 85% 20%,rgba(145,183,155,.22),transparent 30%),linear-gradient(135deg,#fffafa,#f7eee9 48%,#eef7f0)}
.photo-card.large.logo-preview{background:rgba(255,255,255,.72);border:1px solid rgba(216,143,167,.25);backdrop-filter:blur(4px)}
.photo-card.large.logo-preview img{width:82%;height:82%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 18px 22px rgba(38,59,49,.10))}.photo-card.large.logo-preview:after{border-color:rgba(216,143,167,.35)}
.primary-btn{background:linear-gradient(135deg,var(--green),#6fa286)}.nav-btn.active{background:linear-gradient(135deg,var(--green),var(--pink))}.badge{background:#fff;color:#a65775;border-color:#efc9d7}.card b,.admin-header h2,.features b,th{color:var(--green)}
@media(max-width:850px){.logo-img{width:58px;height:58px}.photo-card.large.logo-preview img{width:92%;height:92%}}

/* V3: صورة متحركة في الصفحة الإعلانية وإدارة صور الاستراحة */
.hero-new{display:block;max-width:1180px;margin:26px auto 0}.hero-slider{position:relative;min-height:430px;border-radius:34px;overflow:hidden;background:linear-gradient(135deg,#fff,#f8dde8,#eef7f0);box-shadow:var(--shadow);border:1px solid rgba(216,143,167,.28)}.hero-slides,.slide{position:absolute;inset:0}.slide{opacity:0;transition:opacity .8s ease, transform 3.5s ease;transform:scale(1.03);background-size:cover;background-position:center;background-repeat:no-repeat;filter:saturate(1.08) contrast(1.04) brightness(1.03)}.slide.active{opacity:1;transform:scale(1)}.slide.logo-slide{background-size:contain;background-repeat:no-repeat;background-color:#fff}.slide.placeholder-1{background:linear-gradient(135deg,#f8dde8 0%,#fff9f4 44%,#e8f3ec 100%)}.slide.placeholder-2{background:linear-gradient(135deg,#d99ab3 0%,#fff 38%,#8ab9a0 100%)}.slide.placeholder-3{background:linear-gradient(135deg,#fff9f4 0%,#eef7f0 60%,#f7dce8 100%)}.slide:after{content:none !important}.hero-overlay{position:absolute;inset:auto 28px 28px auto;max-width:560px;z-index:2;text-align:right;background:rgba(255,250,247,.52);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);padding:24px 26px;border-radius:28px;border:1px solid rgba(255,255,255,.55);box-shadow:0 12px 34px rgba(47,107,87,.10)}.hero-overlay h2{font-size:58px;color:var(--green);line-height:1.05;margin:12px 0}.hero-overlay p{font-size:20px;line-height:1.8;color:#486257;margin-bottom:18px}.slider-dots{position:absolute;bottom:24px;left:30px;z-index:3;display:flex;gap:8px}.slider-dots button{width:11px;height:11px;border-radius:50%;border:0;background:rgba(47,107,87,.25);padding:0}.slider-dots button.active{background:var(--green);width:26px;border-radius:999px}.landing-features{justify-content:center;margin-top:18px}.upload-box{display:grid;gap:8px;background:#fff9f4;border:1px dashed rgba(216,143,167,.55);border-radius:20px;padding:18px;margin:16px 0}.upload-box input{background:#fff;border-radius:14px;border:1px solid #ead5dd;padding:12px}.upload-box small{color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}.gallery-item{background:#fff;border:1px solid #f0d3de;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(47,107,87,.08)}.gallery-item img{width:100%;height:130px;object-fit:cover;display:block}.gallery-item .gallery-actions{padding:10px;display:flex;justify-content:center}.gallery-item button{border:0;background:#ffe7ee;color:#a54e72;border-radius:12px;padding:8px 12px;font-weight:800}.empty-gallery{padding:20px;border-radius:18px;background:#fff;color:var(--muted);text-align:center;border:1px solid #f0d3de}.brand .logo-img{background:#fff}.topbar{padding-top:2px}.hero-actions .secondary-btn{display:none}
@media(max-width:850px){.landing{padding:14px}.topbar{gap:10px}.ghost-btn{padding:10px 12px}.hero-slider{min-height:520px;border-radius:26px}.slide:after{content:none !important}.hero-overlay{left:18px;right:18px;bottom:26px;max-width:none;padding:18px 18px;background:rgba(255,250,247,.56)}.hero-overlay h2{font-size:40px}.hero-overlay p{font-size:17px}.slider-dots{left:20px;bottom:18px}.landing-features{display:grid;grid-template-columns:1fr;gap:10px}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
.crop-modal-card{max-width:880px}.crop-stage{margin-top:16px;background:#f7f4f1;border:1px solid #efd2dd;border-radius:22px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.65)}#cropCanvas{width:100%;display:block;background:#fff}.crop-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.crop-controls input{width:100%;padding:0}.crop-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.gallery-actions{gap:8px;flex-wrap:wrap}.gallery-item button.edit-img{background:#eef8f1;color:var(--green)}@media(max-width:850px){.crop-controls{grid-template-columns:1fr}.crop-actions{display:grid}.crop-actions button{width:100%}}

/* إعدادات أفانين V6 */
.whatsapp-landing-btn{border:none;border-radius:18px;padding:14px 26px;background:#25d366;color:#fff;font-weight:800;cursor:pointer;box-shadow:0 12px 26px rgba(37,211,102,.18)}
.mobile-whatsapp-float{position:fixed;left:18px;bottom:18px;z-index:45;border:none;border-radius:999px;background:#25d366;color:#fff;padding:13px 18px;font-weight:800;box-shadow:0 14px 30px rgba(37,211,102,.28);display:none;cursor:pointer}
.settings-preview{display:flex;align-items:center;gap:14px;background:rgba(247,220,232,.35);border:1px solid rgba(217,154,179,.35);border-radius:18px;padding:14px;grid-column:1/-1}.settings-preview img{width:70px;height:70px;object-fit:contain;background:#fff;border-radius:16px;border:1px solid rgba(217,154,179,.35)}.settings-preview b{display:block;color:var(--green);font-size:22px}.settings-preview span{display:block;color:var(--muted);font-weight:700}.settings-logo-box{grid-column:1/-1}.landing-address{margin-top:10px;color:var(--green);font-weight:800}.admin-header .support-mini{font-size:13px;color:var(--muted);font-weight:700}
@media(max-width:900px){.mobile-whatsapp-float{display:block}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.whatsapp-landing-btn,.primary-btn{flex:1;min-width:135px}}

.booking-message{
  margin:10px 0 12px;
  padding:12px 14px;
  border-radius:16px;
  font-weight:700;
  line-height:1.8;
}
.booking-message.error{
  background:#fff0f4;
  color:#9d3151;
  border:1px solid #e6b5c3;
}
.booking-message.success{
  background:#edf8f3;
  color:#2f795b;
  border:1px solid #a8d8c6;
}


/* V9: تصغير طلب الحجز وإشعارات أجمل */
#bookingModal .modal-card{
  max-width:520px;
  padding:20px 22px;
  border-radius:24px;
  max-height:92vh;
  overflow:auto;
}
#bookingModal h3{font-size:22px;color:var(--green);margin-bottom:4px}
#bookingModal .muted{font-size:14px;line-height:1.7}
#bookingModal form{gap:9px;margin-top:12px}
#bookingModal label{gap:4px;font-size:14px}
#bookingModal input,#bookingModal textarea{
  padding:10px 12px;
  border-radius:13px;
  font-size:15px;
}
#bookingModal textarea{min-height:58px}
#bookingModal .primary-btn.full{padding:12px 16px;border-radius:14px}
#bookingModal .close{width:32px;height:32px;top:12px;left:14px}
.booking-message{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:8px 0 10px;
  padding:11px 13px;
  border-radius:16px;
  font-weight:800;
  line-height:1.65;
  box-shadow:0 8px 18px rgba(47,107,87,.08);
}
.booking-message::before{font-size:18px;line-height:1.4}
.booking-message.error::before{content:"⚠️"}
.booking-message.success::before{content:"✓";background:#2f795b;color:#fff;width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;flex:0 0 22px;font-size:13px;margin-top:2px}
.security-deposit-info{display:grid;gap:6px;padding:12px 14px;border:1px solid rgba(47,107,87,.18);border-radius:16px;background:#f4fbf6;color:#2f6b57;font-weight:800}
.security-deposit-info span{color:#5d7068;font-weight:700;line-height:1.7}
.settings-subsection{display:grid;gap:12px;padding:16px;border:1px dashed rgba(47,107,87,.28);border-radius:18px;background:#fbfdfb}
.settings-subsection h4{margin:0;color:var(--green)}
.toast-box{position:fixed;top:22px;left:22px;z-index:999;display:grid;gap:10px;max-width:min(420px,calc(100vw - 34px))}
.toast{
  background:#fff;
  border:1px solid rgba(216,143,167,.35);
  border-right:6px solid var(--green);
  border-radius:18px;
  padding:14px 16px;
  box-shadow:0 18px 45px rgba(33,53,45,.18);
  color:var(--text);
  animation:toastIn .25s ease both;
}
.toast b{display:block;color:var(--green);font-size:16px;margin-bottom:3px}.toast span{color:var(--muted);font-weight:700;line-height:1.6}.toast.error{border-right-color:#c94c70}.toast.error b{color:#a73557}.toast.success{border-right-color:#2f795b}
@keyframes toastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:650px){
  #bookingModal{padding:10px;align-items:start;overflow:auto}
  #bookingModal .modal-card{max-width:100%;padding:18px 16px;margin-top:8px;max-height:calc(100vh - 18px)}
  #bookingModal .grid2{grid-template-columns:1fr 1fr;gap:8px}
  #bookingModal label{font-size:13px}
  #bookingModal input,#bookingModal textarea{font-size:14px;padding:9px 10px}
  #bookingModal textarea{min-height:52px}
  .toast-box{top:14px;left:14px;right:14px;max-width:none}
}
@media(max-width:420px){#bookingModal .grid2{grid-template-columns:1fr}}


/* V13: أزرار مبيت / بدون مبيت مع الحفاظ على إشعارات V11 */
.booking-type-box{
  display:grid;
  gap:7px;
  margin:2px 0 4px;
}
.booking-type-box span{
  font-weight:800;
  color:var(--green);
}
.booking-type-buttons{
  display:flex;
  gap:10px;
}
.booking-type-btn{
  flex:1;
  border:1px solid rgba(63,117,92,.22);
  background:#fff;
  color:var(--green);
  border-radius:999px;
  padding:10px 14px;
  font-weight:800;
  cursor:pointer;
  transition:.2s ease;
}
.booking-type-btn.active{
  background:linear-gradient(135deg,var(--green),#6fa286);
  color:#fff;
  border-color:transparent;
  box-shadow:0 10px 20px rgba(63,117,92,.18);
}
.booking-type-box small{
  color:var(--muted);
  font-weight:700;
}
.booking-type-box.hidden{
  display:none;
}
.same-day-checkout{
  opacity:.72;
}
.same-day-checkout input{
  background:#f4f7f5 !important;
  color:#75837d !important;
}
@media(max-width:520px){
  .booking-type-buttons{gap:8px}
  .booking-type-btn{font-size:14px;padding:9px 10px}
}


/* V14: إعدادات الحجوزات والباقات */
.toggle-check{
  display:flex !important;
  align-items:center;
  gap:10px;
  background:#fff9f4;
  border:1px solid rgba(216,143,167,.35);
  border-radius:16px;
  padding:12px 14px;
  font-weight:800;
  color:var(--text);
}
.toggle-check input{
  width:18px;
  height:18px;
  accent-color:var(--green);
}
.field-note{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-weight:700;
  line-height:1.6;
}
#publicPackageWrap select{
  margin-top:5px;
}
.booking-type-btn[style*="display: none"]{
  display:none !important;
}
.package-badge{
  display:inline-block;
  padding:5px 9px;
  border-radius:999px;
  background:#fff0f5;
  color:#9f4668;
  font-weight:800;
  white-space:nowrap;
}


/* V16: زر PDF في جدول الحجوزات */
.action.print{
  background:#eef8f1;
  color:#2f6b57;
}


/* V17: الفواتير والمستخدمون */
.action.invoice{
  background:#fff7e8;
  color:#9a6a1f;
}
.action.print{
  background:#eef8f1;
  color:#2f6b57;
}


/* V18: طباعة الفاتورة داخل نفس الصفحة بدون فتح نافذة جديدة */
.print-area{
  display:none;
}
body.printing-invoice{
  background:#fff !important;
}
body.printing-invoice #app,
body.printing-invoice .mobile-whatsapp-float,
body.printing-invoice .toast-box,
body.printing-invoice .modal{
  display:none !important;
}
body.printing-invoice .print-area{
  display:block !important;
}
.print-invoice{
  width:900px;
  max-width:96%;
  margin:24px auto;
  background:#fff;
  border-radius:18px;
  padding:34px;
  border:1px solid #e6ece7;
  box-shadow:0 15px 45px rgba(0,0,0,.08);
  color:#24392f;
  direction:rtl;
  font-family:Arial,Tahoma,sans-serif;
}
.inv-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  border-bottom:3px solid #3f755c;
  padding-bottom:22px;
}
.inv-brand{
  display:flex;
  align-items:center;
  gap:14px;
}
.inv-brand img{
  width:92px;
  height:92px;
  object-fit:contain;
  border:1px solid #efd2dd;
  border-radius:18px;
  padding:6px;
  background:#fff;
}
.inv-brand h1{
  margin:0;
  color:#3f755c;
  font-size:34px;
}
.inv-brand p{
  margin:6px 0 0;
  color:#75837d;
  font-weight:bold;
}
.inv-title{
  text-align:left;
}
.inv-title h2{
  margin:0;
  color:#b86d8d;
  font-size:30px;
}
.inv-title p{
  margin:8px 0 0;
  color:#66746e;
  font-weight:bold;
}
.inv-info{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin:26px 0;
}
.inv-box{
  border:1px solid #e6ece7;
  border-radius:14px;
  padding:15px;
  background:#fbfdfb;
}
.inv-box b{
  display:block;
  color:#3f755c;
  margin-bottom:6px;
}
.inv-box span{
  font-weight:bold;
  color:#263b31;
}
.inv-table{
  width:100%;
  border-collapse:collapse;
  margin-top:18px;
  border-radius:14px;
  overflow:hidden;
}
.inv-table th{
  background:#3f755c;
  color:white;
  padding:14px;
  text-align:right;
}
.inv-table td{
  padding:13px;
  border-bottom:1px solid #e9efe9;
  font-weight:bold;
}
.inv-totals{
  width:360px;
  max-width:100%;
  margin:24px 0 0 auto;
  border:1px solid #e6ece7;
  border-radius:14px;
  overflow:hidden;
}
.inv-row{
  display:flex;
  justify-content:space-between;
  padding:13px 16px;
  border-bottom:1px solid #edf1ed;
  font-weight:bold;
}
.inv-row:last-child{
  border-bottom:0;
  background:#fff0f5;
  color:#9f4668;
  font-size:18px;
}
.inv-notes{
  margin-top:24px;
  padding:16px;
  border-radius:14px;
  background:#fff9f4;
  border:1px solid #efd2dd;
  color:#5b665f;
  font-weight:bold;
  line-height:1.8;
}
.inv-footer{
  margin-top:28px;
  text-align:center;
  color:#68766f;
  font-weight:bold;
  border-top:1px dashed #ccd8d1;
  padding-top:18px;
}
@media print{
  @page{
    size:A4;
    margin:12mm;
  }
  body.printing-invoice{
    background:#fff !important;
  }
  body.printing-invoice #app,
  body.printing-invoice .mobile-whatsapp-float,
  body.printing-invoice .toast-box,
  body.printing-invoice .modal{
    display:none !important;
  }
  body.printing-invoice .print-area{
    display:block !important;
  }
  .print-invoice{
    box-shadow:none !important;
    margin:0 auto !important;
    border-radius:0 !important;
    border:0 !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }
}


/* V19: صلاحيات المستخدمين */
.permissions-box{
  background:#fff9f4;
  border:1px solid rgba(216,143,167,.35);
  border-radius:18px;
  padding:14px;
}
.permissions-box h4{
  margin:0 0 12px;
  color:var(--green);
}
.permissions-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
}
.permissions-grid label{
  display:flex;
  align-items:center;
  gap:8px;
  background:white;
  border:1px solid #edf1ed;
  border-radius:12px;
  padding:10px 12px;
  font-weight:800;
  color:var(--text);
}
.permissions-grid input{
  width:17px;
  height:17px;
  accent-color:var(--green);
}


/* V20: زر الخروج أعلى الشاشة */
.header-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.top-logout{
  border:0;
  border-radius:16px;
  padding:13px 22px;
  background:#fff0f5;
  color:#a54e72;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(165,78,114,.08);
}
.top-logout:hover{
  background:#f8dbe6;
}
.side-logout{
  display:none !important;
}
@media(max-width:850px){
  .admin-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
  }
  .header-actions{
    justify-content:flex-start;
    gap:8px;
  }
  .top-logout{
    padding:11px 18px;
    border-radius:14px;
  }
}
@media(max-width:520px){
  .admin-header{
    display:block;
  }
  .header-actions{
    margin-top:12px;
    justify-content:space-between;
  }
  .filters{
    flex:1;
  }
  .top-logout{
    min-width:88px;
  }
}


/* V21: كلمة المرور 6 أرقام */
input[name="password"]{
  letter-spacing:1px;
}


/* V22: طباعة التقارير الشهرية والسنوية */
.report-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.report-actions .secondary-btn{
  white-space:nowrap;
}
body.printing-report{
  background:#fff !important;
}
body.printing-report #app,
body.printing-report .mobile-whatsapp-float,
body.printing-report .toast-box,
body.printing-report .modal{
  display:none !important;
}
body.printing-report .print-area{
  display:block !important;
}
.print-report{
  width:1000px;
  max-width:96%;
  margin:24px auto;
  background:#fff;
  border:1px solid #e6ece7;
  border-radius:18px;
  padding:34px;
  color:#24392f;
  direction:rtl;
  font-family:Arial,Tahoma,sans-serif;
  box-shadow:0 15px 45px rgba(0,0,0,.08);
}
.report-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  border-bottom:3px solid #3f755c;
  padding-bottom:22px;
}
.report-brand{
  display:flex;
  align-items:center;
  gap:14px;
}
.report-brand img{
  width:88px;
  height:88px;
  object-fit:contain;
  border:1px solid #efd2dd;
  border-radius:18px;
  padding:6px;
  background:#fff;
}
.report-brand h1{
  margin:0;
  color:#3f755c;
  font-size:32px;
}
.report-brand p{
  margin:6px 0 0;
  color:#75837d;
  font-weight:bold;
}
.report-title{
  text-align:left;
}
.report-title h2{
  margin:0;
  color:#b86d8d;
  font-size:30px;
}
.report-title p{
  margin:8px 0 0;
  color:#66746e;
  font-weight:bold;
}
.report-summary{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  margin:24px 0;
}
.report-summary div{
  border:1px solid #e6ece7;
  background:#fbfdfb;
  border-radius:14px;
  padding:14px;
  text-align:center;
}
.report-summary span{
  display:block;
  color:#68766f;
  font-weight:bold;
  margin-bottom:7px;
}
.report-summary b{
  color:#3f755c;
  font-size:18px;
}
.print-report h3{
  margin:22px 0 10px;
  color:#3f755c;
}
.report-table{
  width:100%;
  border-collapse:collapse;
  margin:10px 0 18px;
  border-radius:14px;
  overflow:hidden;
}
.report-table th{
  background:#3f755c;
  color:white;
  padding:12px;
  text-align:right;
}
.report-table td{
  padding:11px;
  border-bottom:1px solid #e9efe9;
  font-weight:bold;
}
.report-footer{
  margin-top:28px;
  text-align:center;
  color:#68766f;
  font-weight:bold;
  border-top:1px dashed #ccd8d1;
  padding-top:18px;
}
@media print{
  body.printing-report #app,
  body.printing-report .mobile-whatsapp-float,
  body.printing-report .toast-box,
  body.printing-report .modal{
    display:none !important;
  }
  body.printing-report .print-area{
    display:block !important;
  }
  .print-report{
    box-shadow:none !important;
    margin:0 auto !important;
    border-radius:0 !important;
    border:0 !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }
  .report-summary{
    grid-template-columns:repeat(5,1fr);
  }
}
@media(max-width:850px){
  .report-summary{
    grid-template-columns:repeat(2,1fr);
  }
}


/* V24: أيام تطبيق الباقات */
.package-badge{
  white-space:nowrap;
}


/* V25: خيار أخرى في أيام تطبيق الباقة */
#customDayLabel input{
  margin-top:5px;
}


/* V26: إعدادات صفحة الموقع ومربعات التعريف */
.landing-features{
  gap:14px;
  flex-wrap:wrap;
}
.site-feature-card{
  min-width:150px;
  max-width:220px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(47,107,87,.10);
  border-radius:18px;
  padding:14px 18px;
  text-align:center;
  box-shadow:0 14px 34px rgba(47,107,87,.08);
  display:grid;
  gap:6px;
  justify-items:center;
}
.site-feature-card img{
  width:54px;
  height:54px;
  object-fit:cover;
  border-radius:16px;
  border:1px solid #efd2dd;
  background:#fff;
}
.site-feature-card b{
  color:var(--green);
  font-size:18px;
}
.site-feature-card span{
  color:var(--muted);
  font-weight:700;
  line-height:1.5;
}
.site-features-admin{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:16px;
}
.site-features-admin>.primary-btn{
  grid-column:1/-1;
  justify-self:start;
}
.feature-admin-card{
  background:#fff9f4;
  border:1px solid rgba(216,143,167,.35);
  border-radius:20px;
  padding:16px;
  display:grid;
  gap:12px;
}
.feature-admin-card h4{
  margin:0;
  color:var(--green);
}
.mini-upload{
  margin:0;
  padding:12px;
}
.feature-preview{
  min-height:62px;
  border:1px dashed #ead5dd;
  border-radius:16px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:10px;
  color:var(--muted);
  font-weight:800;
  text-align:center;
}
.feature-preview img{
  width:58px;
  height:58px;
  object-fit:cover;
  border-radius:14px;
}
@media(max-width:650px){
  .site-feature-card{
    width:100%;
    max-width:none;
  }
}


/* V27: تكبير مربعات الصفحة وجعلها تحت بعض والصورة تغطي أعلى المربع */
.landing-features{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:18px !important;
  max-width:520px;
  margin:20px auto 0;
  justify-items:stretch;
}

.site-feature-card{
  width:100%;
  max-width:none !important;
  min-height:190px;
  padding:0 !important;
  overflow:hidden;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 18px 40px rgba(47,107,87,.10);
  display:flex !important;
  flex-direction:column;
  align-items:stretch !important;
  justify-content:flex-start;
  text-align:center;
}

.site-feature-card img{
  width:100% !important;
  height:220px !important;
  min-height:220px;
  max-height:220px;
  object-fit:cover !important;
  border-radius:0 !important;
  border:0 !important;
  display:block;
  background:#f3f3f3;
}

.site-feature-card b{
  display:block;
  margin:16px 18px 6px;
  font-size:28px !important;
  line-height:1.2;
  color:var(--green);
}

.site-feature-card span{
  display:block;
  margin:0 18px 18px;
  font-size:22px !important;
  line-height:1.6;
  color:var(--muted);
  font-weight:800 !important;
}

/* إذا لم توجد صورة، نحافظ على شكل المربع كبيرًا */
.site-feature-card:not(:has(img)){
  padding:28px 22px !important;
  min-height:170px;
  justify-content:center;
}
.site-feature-card:not(:has(img)) b{
  margin:0 0 10px;
}
.site-feature-card:not(:has(img)) span{
  margin:0;
}

/* تحسين معاينة الصور في الإدارة */
.feature-preview{
  min-height:170px !important;
  flex-direction:column;
  padding:0 !important;
  overflow:hidden;
}
.feature-preview img{
  width:100% !important;
  height:150px !important;
  object-fit:cover !important;
  border-radius:0 !important;
}
.feature-preview span{
  padding:10px 12px;
}

@media(max-width:850px){
  .landing-features{
    max-width:100%;
    margin-top:18px;
    padding:0 6px;
  }
  .site-feature-card img{
    height:200px !important;
    min-height:200px;
    max-height:200px;
  }
  .site-feature-card b{
    font-size:24px !important;
  }
  .site-feature-card span{
    font-size:19px !important;
  }
}

@media(max-width:520px){
  .site-feature-card img{
    height:180px !important;
    min-height:180px;
    max-height:180px;
  }
  .site-feature-card b{
    font-size:22px !important;
  }
  .site-feature-card span{
    font-size:18px !important;
  }
}


/* V28: تذييل صفحة الموقع */
.site-footer{
  max-width:1180px;
  margin:34px auto 0;
  padding:0 0 28px;
}
.site-footer-inner{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(47,107,87,.10);
  border-radius:26px;
  padding:24px 28px;
  box-shadow:0 18px 40px rgba(47,107,87,.08);
  display:grid;
  grid-template-columns:260px 1fr 300px;
  align-items:center;
  gap:24px;
}
.footer-col{
  min-width:0;
}
.footer-col-brand{
  justify-self:end;
}
.footer-brand{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:14px;
  text-align:right;
}
.footer-brand img{
  width:64px;
  height:64px;
  object-fit:contain;
  border-radius:18px;
  border:1px solid #efd2dd;
  background:#fff;
  padding:5px;
  flex-shrink:0;
}
.footer-brand h3{
  color:var(--green);
  font-size:30px;
  margin:0 0 4px;
  line-height:1.1;
}
.footer-brand p{
  color:var(--muted);
  font-weight:700;
  line-height:1.6;
  margin:0;
  font-size:16px;
}
.footer-col-center{
  text-align:center;
}
.footer-main-text{
  margin:0;
  color:#54635d;
  font-weight:800;
  font-size:18px;
  line-height:1.9;
}
.footer-col-info{
  display:grid;
  gap:8px;
  color:#5f6d66;
  font-weight:800;
  text-align:right;
  justify-self:start;
}
.footer-col-info span{
  white-space:normal;
  line-height:1.7;
}
@media(max-width:950px){
  .site-footer{
    padding:0 16px 24px;
  }
  .site-footer-inner{
    grid-template-columns:1fr;
    text-align:center;
    justify-items:center;
    gap:18px;
  }
  .footer-col-brand,
  .footer-col-info{
    justify-self:center;
  }
  .footer-brand{
    justify-content:center;
    text-align:center;
  }
  .footer-col-info{
    text-align:center;
  }
}


/* V30: صور الاستراحة أوضح بدون غمامة جانبية */
.hero-slider::before{content:none !important}


/* V31: أربع مربعات تحت السلايدر بشكل 2 × 2 لتقليل طول الصفحة */
.landing-features{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(260px,1fr)) !important;
  gap:18px !important;
  max-width:980px;
  margin:20px auto 0;
  justify-items:stretch;
  align-items:stretch;
}

.site-feature-card{
  width:100%;
  max-width:none !important;
  min-height:320px;
  padding:0 !important;
  overflow:hidden;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 18px 40px rgba(47,107,87,.10);
  display:flex !important;
  flex-direction:column;
  align-items:stretch !important;
  justify-content:flex-start;
  text-align:center;
}

.site-feature-card img{
  width:100% !important;
  height:185px !important;
  min-height:185px;
  max-height:185px;
  object-fit:cover !important;
  border-radius:0 !important;
  border:0 !important;
  display:block;
  background:#f3f3f3;
}

.site-feature-card b{
  display:block;
  margin:16px 18px 6px;
  font-size:26px !important;
  line-height:1.2;
  color:var(--green);
}

.site-feature-card span{
  display:block;
  margin:0 18px 18px;
  font-size:21px !important;
  line-height:1.6;
  color:var(--muted);
  font-weight:800 !important;
}

.site-feature-card:not(:has(img)){
  padding:28px 22px !important;
  min-height:220px;
  justify-content:center;
}
.site-feature-card:not(:has(img)) b{
  margin:0 0 10px;
}
.site-feature-card:not(:has(img)) span{
  margin:0;
}

/* تكبير الفورم ليتناسب مع 4 مربعات */
.site-features-admin{
  display:grid;
  grid-template-columns:repeat(2,minmax(260px,1fr));
  gap:16px;
}
.site-features-admin>.primary-btn{
  grid-column:1/-1;
  justify-self:start;
}

@media(max-width:900px){
  .landing-features{
    grid-template-columns:1fr !important;
    max-width:100%;
    padding:0 6px;
  }
  .site-feature-card{
    min-height:290px;
  }
  .site-feature-card img{
    height:170px !important;
    min-height:170px;
    max-height:170px;
  }
  .site-feature-card b{
    font-size:23px !important;
  }
  .site-feature-card span{
    font-size:18px !important;
  }
  .site-features-admin{
    grid-template-columns:1fr;
  }
}


/* V32: عربي / English */
.topbar-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.lang-btn{
  border:1px solid rgba(47,107,87,.22);
  background:#fff;
  color:var(--green);
  border-radius:16px;
  padding:12px 18px;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(47,107,87,.06);
}
.admin-lang-btn{
  padding:13px 18px;
}
body.lang-en{
  direction:ltr;
}
body.lang-en .brand,
body.lang-en .footer-brand,
body.lang-en .inv-brand,
body.lang-en .report-brand{
  direction:ltr;
}
body.lang-en .hero-overlay,
body.lang-en .admin-header,
body.lang-en .panel,
body.lang-en .modal-card,
body.lang-en .site-feature-card,
body.lang-en .footer-col-info,
body.lang-en .footer-brand,
body.lang-en .nav-btn,
body.lang-en th,
body.lang-en td{
  text-align:left;
}
body.lang-en .hero-overlay{
  inset:auto auto 28px 28px;
}
body.lang-en .sidebar{
  border-left:0;
  border-right:1px solid #e7eee9;
}
body.lang-en .topbar,
body.lang-en .admin-header,
body.lang-en .panel-head,
body.lang-en .header-actions{
  direction:ltr;
}
body.lang-en .admin{
  direction:ltr;
}
body.lang-en .sidebar{
  order:0;
}
body.lang-en .admin-main{
  direction:ltr;
}
body.lang-en .footer-col-info{
  justify-self:end;
}
body.lang-en .footer-col-brand{
  justify-self:start;
}
body.lang-en input,
body.lang-en select,
body.lang-en textarea{
  direction:ltr;
  text-align:left;
}
@media(max-width:850px){
  .topbar-actions{
    gap:8px;
  }
  .lang-btn{
    padding:10px 12px;
  }
  body.lang-en .sidebar{
    border-right:0;
  }
}


/* V33: تكبير شعار أعلى الصفحة وإزالة الفريم الأبيض */
.topbar .brand{
  display:flex;
  align-items:center;
  gap:14px;
}
.topbar .brand .logo-img{
  width:104px !important;
  height:104px !important;
  object-fit:contain;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}
.topbar .brand h1{
  font-size:34px;
  line-height:1.05;
  margin-bottom:4px;
}
.topbar .brand p{
  font-size:20px;
  line-height:1.5;
}
body.lang-en .topbar .brand{
  justify-content:flex-start;
}
@media(max-width:850px){
  .topbar .brand .logo-img{
    width:84px !important;
    height:84px !important;
  }
  .topbar .brand h1{
    font-size:28px;
  }
  .topbar .brand p{
    font-size:17px;
  }
}


/* V34: تكبير إضافي للشعار أعلى الصفحة */
.topbar .brand .logo-img{
  width:140px !important;
  height:140px !important;
}
.topbar .brand h1{
  font-size:38px !important;
}
.topbar .brand p{
  font-size:22px !important;
}
@media(max-width:850px){
  .topbar .brand .logo-img{
    width:110px !important;
    height:110px !important;
  }
  .topbar .brand h1{
    font-size:30px !important;
  }
  .topbar .brand p{
    font-size:18px !important;
  }
}


/* V35: إظهار زر دخول الإدارة على الهاتف */
@media(max-width:850px){
  .topbar{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
  }

  .topbar-actions{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    flex-shrink:0;
  }

  .topbar .topbar-actions .ghost-btn{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    padding:10px 13px !important;
    font-size:14px !important;
    min-width:96px;
    white-space:nowrap;
  }

  .topbar .topbar-actions .lang-btn{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    padding:10px 13px !important;
    font-size:14px !important;
    min-width:78px;
    white-space:nowrap;
  }

  .topbar .brand{
    gap:8px !important;
    min-width:0;
  }

  .topbar .brand .logo-img{
    width:92px !important;
    height:92px !important;
  }

  .topbar .brand h1{
    font-size:26px !important;
  }

  .topbar .brand p{
    font-size:15px !important;
  }
}

@media(max-width:520px){
  .topbar{
    align-items:flex-start !important;
  }

  .topbar-actions{
    display:grid !important;
    gap:7px !important;
  }

  .topbar .topbar-actions .ghost-btn,
  .topbar .topbar-actions .lang-btn{
    min-width:92px;
    padding:9px 10px !important;
    font-size:13px !important;
  }

  .topbar .brand .logo-img{
    width:82px !important;
    height:82px !important;
  }
}


/* V36: زر دخول الإدارة مستقل وواضح على الهاتف */
.mobile-admin-btn{
  display:none;
}

@media(max-width:850px){
  /* نعيد إظهار زر دخول الإدارة العادي إن كان مخفيًا */
  .topbar .ghost-btn,
  .topbar-actions .ghost-btn{
    display:inline-flex !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  /* زر ثابت إضافي حتى لا يختفي على بعض المتصفحات */
  .mobile-admin-btn{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    position:fixed;
    top:76px;
    left:18px;
    z-index:9999;
    border:1px solid rgba(47,107,87,.22);
    background:#fff;
    color:var(--green);
    border-radius:16px;
    padding:10px 16px;
    font-weight:900;
    font-size:14px;
    box-shadow:0 12px 28px rgba(47,107,87,.16);
  }

  body.lang-en .mobile-admin-btn{
    left:auto;
    right:18px;
  }
}

@media(min-width:851px){
  .mobile-admin-btn{
    display:none !important;
  }
}


/* V37: إعدادات تحديث البرنامج والنسخ الاحتياطي */
.update-stats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
  margin-top:16px;
}
.update-stats div{
  background:#fbfdfb;
  border:1px solid #e6ece7;
  border-radius:16px;
  padding:14px;
}
.update-stats span{
  display:block;
  color:var(--muted);
  font-weight:800;
  margin-bottom:6px;
}
.update-stats b{
  color:var(--green);
  font-size:18px;
  word-break:break-word;
}
.warning-panel{
  background:#fff9f4;
  border:1px solid rgba(216,143,167,.35);
}
.warning-panel p{
  color:#5f6d66;
  font-weight:800;
  line-height:2;
}
.sidebar nav{
  overflow-y:auto;
  padding:2px 0 10px;
  scrollbar-width:thin;
}
.nav-btn.update-nav-btn{
  background:linear-gradient(135deg,#2f6b57,#d88fa7);
  color:#fff;
  border:2px solid rgba(255,255,255,.75);
  box-shadow:0 14px 30px rgba(63,117,92,.24);
  min-height:58px;
  font-size:16px;
}
.nav-btn.update-nav-btn::before{
  content:"";
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#fff;
  margin-left:8px;
  box-shadow:0 0 0 4px rgba(255,255,255,.22);
}
.nav-btn.update-nav-btn.active{
  background:linear-gradient(135deg,#255442,#b85c81);
}
.web-update-note{
  background:#f4fbf7;
  border:1px solid rgba(63,117,92,.22);
}
.web-update-note p{
  color:#4f6259;
  font-weight:800;
  line-height:2;
  margin-top:10px;
}
@media(max-width:850px){
  .nav-btn.update-nav-btn{
    min-height:auto;
    font-size:13px;
    padding:10px 6px;
  }
  .nav-btn.update-nav-btn::before{
    display:none;
  }
}

/* V55: ضغط هيدر الصفحة العامة لإظهار الصور المتحركة من بداية الصفحة */
.landing{
  padding-top:10px !important;
}
.landing>.topbar{
  padding-top:0 !important;
  padding-bottom:8px !important;
  min-height:92px;
}
.topbar .brand{
  gap:10px !important;
}
.topbar .brand .logo-img{
  width:92px !important;
  height:92px !important;
}
.topbar .brand h1{
  font-size:32px !important;
  line-height:1 !important;
  margin-bottom:2px !important;
}
.topbar .brand p{
  font-size:17px !important;
  line-height:1.25 !important;
}
.topbar-actions{
  gap:8px !important;
}
.topbar-actions .ghost-btn,
.topbar-actions .lang-btn{
  padding:10px 15px !important;
  min-height:42px;
}
.public-date-bar{
  padding:7px 12px !important;
  font-size:14px;
}
.public-nav{
  margin-top:4px !important;
  padding:10px 0 9px !important;
}
.public-nav button{
  padding:8px 14px !important;
  font-size:14px !important;
}
.hero-new{
  margin-top:12px !important;
}
.hero-slider{
  min-height:360px !important;
}
.hero-overlay{
  padding:18px 20px !important;
  bottom:18px !important;
}
.hero-overlay h2{
  font-size:48px !important;
}
.hero-overlay p{
  font-size:18px !important;
  line-height:1.65 !important;
  margin-bottom:14px !important;
}
.landing-features{
  margin-top:12px !important;
}
@media(max-width:850px){
  .landing{
    padding-top:8px !important;
  }
  .landing>.topbar{
    min-height:auto;
    padding-bottom:8px !important;
  }
  .topbar .brand .logo-img{
    width:72px !important;
    height:72px !important;
  }
  .topbar .brand h1{
    font-size:24px !important;
  }
  .topbar .brand p{
    font-size:14px !important;
  }
  .topbar .public-date-bar{
    margin-top:8px !important;
  }
  .public-nav{
    padding:8px 0 !important;
  }
  .hero-new{
    margin-top:10px !important;
  }
  .hero-slider{
    min-height:420px !important;
  }
  .hero-overlay h2{
    font-size:36px !important;
  }
  .hero-overlay p{
    font-size:16px !important;
  }
}
@media(max-width:520px){
  .topbar .brand .logo-img{
    width:62px !important;
    height:62px !important;
  }
  .topbar-actions .ghost-btn,
  .topbar-actions .lang-btn{
    padding:8px 10px !important;
    min-height:38px;
  }
  .hero-slider{
    min-height:390px !important;
  }
}

/* V45: أقسام الصفحة الرئيسية العامة */
.landing>.topbar{
  padding-bottom:18px;
  border-bottom:1px solid rgba(63,117,92,.18);
}
.public-nav{
  max-width:1180px;
  margin:8px auto 0;
  padding:18px 0 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
  border-bottom:1px solid rgba(63,117,92,.18);
}
.public-nav a,
.public-nav button{
  color:var(--green);
  background:rgba(255,255,255,.78);
  border:1px solid rgba(63,117,92,.16);
  border-radius:999px;
  padding:10px 16px;
  text-decoration:none;
  font-weight:900;
  box-shadow:0 8px 22px rgba(63,117,92,.08);
}
.public-nav button{
  font-size:15px;
}
.public-nav a:hover,
.public-nav button:hover,
.public-nav button.active{
  background:#fff;
  border-color:rgba(216,143,167,.36);
}
.public-date-bar,
.public-page-date{
  width:max-content;
  max-width:100%;
  color:var(--green);
  background:rgba(255,255,255,.82);
  border:1px solid rgba(63,117,92,.16);
  border-radius:999px;
  padding:8px 14px;
  font-weight:900;
  box-shadow:0 8px 22px rgba(63,117,92,.08);
}
.public-date-bar{
  margin:0 20px;
  white-space:nowrap;
}
.public-page-date{
  color:#4f6259;
  background:#f4fbf7;
  border-color:rgba(63,117,92,.18);
}
.public-back-btn{
  margin-bottom:18px;
}
.public-page-intro{
  color:#486257;
  font-size:18px;
  line-height:2;
  margin-bottom:18px;
}
.public-pages-admin{
  display:grid;
  grid-template-columns:repeat(2,minmax(260px,1fr));
  gap:18px;
  margin-top:16px;
}
.public-page-admin-card{
  background:#fff;
  border:1px solid #edf4ef;
  border-radius:20px;
  padding:18px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  box-shadow:0 10px 28px rgba(63,117,92,.08);
}
.public-page-admin-card h4{
  grid-column:1/-1;
  color:var(--green);
  font-size:22px;
}
.public-page-admin-card .wide{
  grid-column:1/-1;
}
.public-pages-admin>.primary-btn{
  grid-column:1/-1;
  width:max-content;
}
.album-page-form{
  grid-template-columns:1fr;
}
.album-settings-card-wide{
  grid-column:1/-1;
}
.album-images-admin{
  margin-top:12px;
}
.home-section{
  max-width:1180px;
  margin:26px auto 0;
  padding:28px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(216,143,167,.22);
  border-radius:28px;
  box-shadow:var(--shadow);
}
.home-section-head{
  display:grid;
  gap:8px;
  margin-bottom:20px;
}
.home-section-head span{
  color:#a65775;
  font-weight:900;
}
.home-section-head h2{
  color:var(--green);
  font-size:34px;
  line-height:1.25;
}
.about-layout,.contact-layout{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr);
  gap:22px;
  align-items:stretch;
}
.about-copy{
  display:grid;
  align-content:center;
  gap:18px;
}
.about-copy p{
  color:#486257;
  font-size:19px;
  line-height:2;
}
.about-points{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.about-points span{
  background:#eef8f1;
  color:var(--green);
  border:1px solid rgba(63,117,92,.14);
  border-radius:999px;
  padding:9px 13px;
  font-weight:900;
}
.about-card{
  min-height:260px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:10px;
  background:linear-gradient(135deg,#fff,#fff6fa);
  border:1px solid rgba(216,143,167,.24);
  border-radius:24px;
}
.about-card img{
  width:132px;
  height:132px;
  object-fit:contain;
}
.about-card b{
  color:var(--green);
  font-size:28px;
}
.about-card small{
  color:var(--muted);
  font-weight:800;
  text-align:center;
}
.news-grid,.testimonial-grid,.public-album{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.news-grid article,.testimonial-grid blockquote{
  margin:0;
  background:#fff;
  border:1px solid #edf4ef;
  border-radius:20px;
  padding:20px;
  box-shadow:0 10px 28px rgba(63,117,92,.08);
}
.news-grid time{
  display:inline-block;
  color:#a65775;
  background:#fff0f5;
  border-radius:999px;
  padding:5px 10px;
  font-weight:900;
  margin-bottom:12px;
}
.news-grid h3,.testimonial-grid p{
  color:var(--green);
  font-size:21px;
  line-height:1.5;
  margin-bottom:8px;
}
.news-grid p,.testimonial-grid cite{
  color:var(--muted);
  line-height:1.8;
  font-weight:700;
}
.testimonial-grid cite{
  font-style:normal;
}
.public-album .album-item{
  min-height:210px;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  border:1px solid #edf4ef;
  box-shadow:0 10px 28px rgba(63,117,92,.08);
}
.public-album img{
  width:100%;
  height:100%;
  min-height:210px;
  display:block;
  object-fit:cover;
}
.public-album .album-empty{
  grid-column:1/-1;
  padding:24px;
  border-radius:22px;
  background:#fff;
  color:var(--muted);
  font-weight:900;
  text-align:center;
}
.contact-layout{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}
.contact-info{
  display:grid;
  gap:10px;
}
.contact-info p{
  color:#486257;
  font-size:20px;
  font-weight:900;
  line-height:1.7;
}
.contact-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
@media(max-width:850px){
  .public-nav{
    justify-content:flex-start;
    overflow:auto;
    flex-wrap:nowrap;
    padding-bottom:4px;
  }
  .public-nav a,
  .public-nav button{
    white-space:nowrap;
    padding:9px 13px;
    font-size:14px;
  }
  .public-date-bar,
  .public-page-date{
    width:100%;
    text-align:center;
    border-radius:16px;
    font-size:14px;
  }
  .topbar .public-date-bar{
    order:3;
    margin:10px 0 0;
  }
  .home-section{
    margin-top:18px;
    padding:20px;
    border-radius:22px;
  }
  .home-section-head h2{
    font-size:26px;
  }
  .about-layout,.contact-layout,.news-grid,.testimonial-grid,.public-album{
    grid-template-columns:1fr;
  }
  .about-copy p,.contact-info p{
    font-size:17px;
  }
  .contact-actions button{
    flex:1;
  }
  .public-pages-admin,.public-page-admin-card{
    grid-template-columns:1fr;
  }
  .public-pages-admin>.primary-btn{
    width:100%;
  }
}

/* V55 final override: keep the animated hero visible at page start */
.landing{
  padding-top:10px !important;
}
.landing>.topbar{
  padding-top:0 !important;
  padding-bottom:8px !important;
  min-height:92px !important;
}
.topbar .brand{
  gap:10px !important;
}
.topbar .brand .logo-img{
  width:92px !important;
  height:92px !important;
}
.topbar .brand h1{
  font-size:32px !important;
  line-height:1 !important;
  margin-bottom:2px !important;
}
.topbar .brand p{
  font-size:17px !important;
  line-height:1.25 !important;
}
.topbar-actions .ghost-btn,
.topbar-actions .lang-btn{
  padding:10px 15px !important;
  min-height:42px !important;
}
.public-date-bar{
  padding:7px 12px !important;
  font-size:14px !important;
}
.public-nav{
  margin-top:4px !important;
  padding:10px 0 9px !important;
}
.public-nav button{
  padding:8px 14px !important;
  font-size:14px !important;
}
.hero-new{
  margin-top:12px !important;
}
.hero-slider{
  min-height:360px !important;
}
.hero-overlay{
  padding:18px 20px !important;
  bottom:18px !important;
}
.hero-overlay h2{
  font-size:48px !important;
}
.hero-overlay p{
  font-size:18px !important;
  line-height:1.65 !important;
  margin-bottom:14px !important;
}
.landing-features{
  margin-top:12px !important;
}
@media(max-width:850px){
  .landing{
    padding-top:8px !important;
  }
  .landing>.topbar{
    min-height:auto !important;
    padding-bottom:8px !important;
  }
  .topbar .brand .logo-img{
    width:72px !important;
    height:72px !important;
  }
  .topbar .brand h1{
    font-size:24px !important;
  }
  .topbar .brand p{
    font-size:14px !important;
  }
  .topbar .public-date-bar{
    margin-top:8px !important;
  }
  .public-nav{
    padding:8px 0 !important;
  }
  .hero-new{
    margin-top:10px !important;
  }
  .hero-slider{
    min-height:420px !important;
  }
  .hero-overlay h2{
    font-size:36px !important;
  }
  .hero-overlay p{
    font-size:16px !important;
  }
}
@media(max-width:520px){
  .topbar .brand .logo-img{
    width:62px !important;
    height:62px !important;
  }
  .topbar-actions .ghost-btn,
  .topbar-actions .lang-btn{
    padding:8px 10px !important;
    min-height:38px !important;
  }
  .hero-slider{
    min-height:390px !important;
  }
}


/* V58: إصلاح تكرار زر دخول الإدارة في الهاتف
   نعتمد زر دخول الإدارة الموجود داخل الشريط العلوي فقط، ونلغي الزر العائم الإضافي. */
.mobile-admin-btn{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
@media(max-width:850px){
  .topbar .topbar-actions .ghost-btn{
    display:inline-flex !important;
    visibility:visible !important;
    opacity:1 !important;
  }
}


/* V60: رفع صور ألبوم الصور من بطاقة صفحة الألبوم */
.album-settings-card .album-upload-box{
  margin-top:8px;
  min-height:118px;
  border-style:dashed;
}
.album-settings-card .album-upload-box small{
  display:block;
  margin-top:6px;
  color:var(--muted);
  line-height:1.6;
}


/* V62: جعل إضافة صور ألبوم الصور واضحة داخل إعدادات صفحة الموقع */
.album-photo-panel{
  border:2px dashed rgba(47,107,87,.22);
  background:linear-gradient(180deg,#ffffff,#f8fcf9);
}
.prominent-upload{
  min-height:135px;
  border:2px dashed rgba(47,107,87,.35) !important;
  background:#fff !important;
}
.prominent-upload span{
  font-size:19px;
  font-weight:900;
  color:var(--green);
}
.prominent-upload small{
  margin-top:8px;
  color:var(--muted);
}


/* AFANEEN_V63_ALBUM_PANEL */
.album-photo-panel{
  border:2px dashed rgba(47,107,87,.28) !important;
  background:linear-gradient(180deg,#ffffff,#f8fcf9) !important;
}
.prominent-upload{
  min-height:135px !important;
  border:2px dashed rgba(47,107,87,.35) !important;
  background:#fff !important;
}
.prominent-upload span{
  font-size:19px !important;
  font-weight:900 !important;
  color:var(--green) !important;
}

/* V65: روابط اجتماعية وقائمة جانبية للهاتف والآيباد */
.mobile-menu-btn{
  display:none;
  width:44px;
  height:44px;
  border:0;
  border-radius:14px;
  background:var(--green);
  color:#fff;
  font-size:25px;
  font-weight:900;
  line-height:1;
  place-items:center;
  box-shadow:0 12px 26px rgba(63,117,92,.18);
}
.public-menu-overlay{
  position:fixed;
  inset:0;
  z-index:80;
  background:rgba(20,35,29,.36);
}
.public-side-menu{
  position:fixed;
  top:0;
  bottom:0;
  left:0;
  z-index:90;
  width:min(330px,86vw);
  background:#fff;
  box-shadow:18px 0 45px rgba(33,53,45,.18);
  padding:22px;
  direction:rtl;
  overflow:auto;
}
.public-menu-close{
  width:40px;
  height:40px;
  border:0;
  border-radius:50%;
  background:#fff0f5;
  color:#a64f71;
  font-size:28px;
  line-height:1;
  font-weight:800;
  display:grid;
  place-items:center;
  margin:0 0 18px auto;
}
.public-side-nav{
  display:grid;
  gap:8px;
}
.public-side-nav button{
  border:0;
  background:#f6faf7;
  color:var(--green);
  border-radius:14px;
  padding:14px 16px;
  text-align:right;
  font-weight:900;
  font-size:17px;
}
.public-side-nav button:hover,
.public-side-nav button.active{
  background:#edf7f1;
  color:#245944;
}
.icon-action-btn{
  width:50px;
  height:50px;
  min-width:50px !important;
  flex:0 0 50px !important;
  display:inline-grid;
  place-items:center;
  padding:0 !important;
  border-radius:50% !important;
}
.icon-action-btn svg,
.mobile-whatsapp-float svg,
.map-action-btn svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.instagram-action-btn{
  border:0;
  background:linear-gradient(135deg,#b94f8a,#f0a35d);
  color:#fff;
  box-shadow:0 12px 26px rgba(185,79,138,.20);
}
.map-action-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:0;
  border-radius:18px;
  padding:13px 18px;
  background:#eef7f1;
  color:var(--green);
  font-weight:900;
  box-shadow:0 12px 26px rgba(63,117,92,.10);
}
.mobile-whatsapp-float{
  width:54px !important;
  height:54px !important;
  padding:0 !important;
  display:none;
  place-items:center;
}
@media(min-width:1025px){
  .public-nav{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:26px !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:12px 0 8px !important;
    margin:6px auto 0 !important;
  }
  .public-nav button{
    position:relative;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    padding:6px 0 !important;
    color:var(--green) !important;
    font-size:16px !important;
    font-weight:900 !important;
  }
  .public-nav button::after{
    content:"";
    position:absolute;
    right:0;
    left:0;
    bottom:0;
    height:2px;
    background:var(--pink);
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .18s ease;
  }
  .public-nav button:hover::after,
  .public-nav button.active::after{
    transform:scaleX(1);
  }
  .public-nav button:hover,
  .public-nav button.active{
    background:transparent !important;
    color:#244f3e !important;
  }
}
@media(max-width:1024px){
  .mobile-menu-btn{
    display:grid !important;
  }
  .public-nav{
    display:none !important;
  }
  .topbar .topbar-actions .ghost-btn,
  .topbar .topbar-actions .lang-btn{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
  }
  .topbar-actions{
    display:flex !important;
    align-items:center;
    gap:8px !important;
  }
  .contact-actions{
    align-items:center;
  }
  .contact-actions .primary-btn,
  .contact-actions .map-action-btn{
    flex:1 1 auto;
  }
  .hero-actions .icon-action-btn,
  .contact-actions .icon-action-btn{
    flex:0 0 50px !important;
    min-width:50px !important;
  }
}
@media(max-width:900px){
  .mobile-whatsapp-float{
    display:grid !important;
  }
}
@media(max-width:520px){
  .topbar-actions{
    flex-wrap:wrap;
    justify-content:flex-start;
  }
  .mobile-menu-btn{
    order:-1;
  }
  .map-action-btn{
    width:100%;
  }
}

/* V66: تثبيت شكل الهاتف بعد ملاحظة العرض الفعلي */
.icon-action-btn svg *,
.mobile-whatsapp-float svg *,
.map-action-btn svg *{
  fill:none !important;
  stroke:currentColor !important;
}
.contact-actions .whatsapp-landing-btn.icon-action-btn,
.hero-actions .whatsapp-landing-btn.icon-action-btn,
.contact-actions .instagram-action-btn.icon-action-btn{
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  max-width:52px !important;
  flex:0 0 52px !important;
  padding:0 !important;
  border-radius:50% !important;
}
.contact-actions .whatsapp-landing-btn.icon-action-btn svg,
.hero-actions .whatsapp-landing-btn.icon-action-btn svg,
.contact-actions .instagram-action-btn.icon-action-btn svg{
  width:25px !important;
  height:25px !important;
}
@media(max-width:1024px), (hover:none) and (pointer:coarse){
  body .landing{
    padding-top:8px !important;
  }
  body .landing>.topbar{
    position:relative !important;
    display:grid !important;
    direction:ltr !important;
    grid-template-columns:1fr auto !important;
    grid-template-areas:"actions brand" "date date" !important;
    align-items:start !important;
    gap:8px 12px !important;
    min-height:0 !important;
    padding:0 0 10px !important;
    border-bottom:1px solid rgba(63,117,92,.16) !important;
  }
  body .topbar .brand{
    direction:rtl !important;
    grid-area:brand !important;
    justify-self:end !important;
    align-items:center !important;
    max-width:170px !important;
  }
  body .topbar .brand .logo-img{
    width:74px !important;
    height:74px !important;
  }
  body .topbar .brand h1{
    font-size:25px !important;
    line-height:1.05 !important;
  }
  body .topbar .brand p{
    font-size:13px !important;
    line-height:1.25 !important;
  }
  body .topbar-actions{
    direction:ltr !important;
    grid-area:actions !important;
    justify-self:start !important;
    align-self:start !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:7px !important;
    width:auto !important;
  }
  body .mobile-menu-btn{
    display:grid !important;
    position:relative !important;
    left:auto !important;
    top:auto !important;
    order:0 !important;
    width:50px !important;
    height:45px !important;
    margin:0 !important;
    border-radius:10px !important;
    background:#fff !important;
    color:var(--green) !important;
    border:1px solid rgba(63,117,92,.35) !important;
    box-shadow:none !important;
  }
  body .topbar-actions .ghost-btn,
  body .topbar-actions .lang-btn{
    direction:rtl !important;
    display:inline-flex !important;
    min-width:132px !important;
    min-height:48px !important;
    padding:10px 14px !important;
    border-radius:20px !important;
    justify-content:center !important;
  }
  body .topbar .public-date-bar{
    grid-area:date !important;
    justify-self:stretch !important;
    width:100% !important;
    margin:0 !important;
    text-align:center !important;
    font-size:14px !important;
  }
  body .landing .public-nav{
    display:none !important;
    visibility:hidden !important;
    height:0 !important;
    max-height:0 !important;
    overflow:hidden !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    box-shadow:none !important;
  }
  body .public-side-menu{
    left:0 !important;
    right:auto !important;
    width:min(300px,82vw) !important;
    transform:none !important;
    border-radius:0 22px 22px 0 !important;
  }
  body.lang-en .public-side-menu{
    direction:ltr;
  }
  body.lang-en .public-side-nav button{
    text-align:left;
  }
  body .hero-new{
    margin-top:12px !important;
  }
  body .contact-actions{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;
  }
  body .contact-actions .primary-btn{
    flex:1 1 150px !important;
    min-width:150px !important;
    max-width:none !important;
  }
  body .contact-actions .whatsapp-landing-btn.icon-action-btn,
  body .contact-actions .instagram-action-btn.icon-action-btn{
    flex:0 0 52px !important;
    min-width:52px !important;
    max-width:52px !important;
  }
  body .mobile-whatsapp-float{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    max-width:52px !important;
    padding:0 !important;
    display:grid !important;
    border-radius:50% !important;
  }
}
@media(max-width:420px){
  body .topbar .brand{
    max-width:150px !important;
  }
  body .topbar .brand .logo-img{
    width:66px !important;
    height:66px !important;
  }
  body .topbar-actions .ghost-btn,
  body .topbar-actions .lang-btn{
    min-width:120px !important;
    font-size:14px !important;
  }
}
.prominent-upload small{
  margin-top:8px;
  color:var(--muted);
}


/* AFANEEN V67 - إصلاح نهائي لقائمة الكمبيوتر والهاتف والآيباد */

/* الكمبيوتر: القائمة كلمات فقط بلا فريم */
.landing .public-nav{
  max-width:1180px !important;
  margin:10px auto 0 !important;
  padding:12px 0 10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:28px !important;
  flex-wrap:wrap !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid rgba(63,117,92,.14) !important;
  box-shadow:none !important;
  overflow:visible !important;
  height:auto !important;
  max-height:none !important;
  visibility:visible !important;
}
.landing .public-nav button,
.landing .public-nav a{
  appearance:none !important;
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:7px 0 !important;
  margin:0 !important;
  color:var(--green) !important;
  font-size:16px !important;
  font-weight:900 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
.landing .public-nav button::after,
.landing .public-nav a::after{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  height:2px !important;
  background:var(--pink) !important;
  transform:scaleX(0) !important;
  transition:transform .18s ease !important;
}
.landing .public-nav button:hover::after,
.landing .public-nav button.active::after,
.landing .public-nav a:hover::after{
  transform:scaleX(1) !important;
}
.landing .public-nav button:hover,
.landing .public-nav button.active,
.landing .public-nav a:hover{
  background:transparent !important;
  border:0 !important;
  color:#244f3e !important;
}

/* الكمبيوتر: إخفاء زر الثلاث شرط والقائمة الجانبية نهائيًا */
.mobile-menu-btn{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
@media(min-width:1025px){
  .mobile-menu-btn,
  #mobileMenuBtn{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .public-side-menu,
  .public-menu-overlay{
    display:none !important;
  }
}

/* الهاتف والآيباد حتى 1024px: إخفاء القائمة الأفقية وإظهار زر الثلاث شرط */
@media(max-width:1024px){
  body .landing .public-nav{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    height:0 !important;
    max-height:0 !important;
    min-height:0 !important;
    overflow:hidden !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    box-shadow:none !important;
    pointer-events:none !important;
  }
  body .mobile-menu-btn,
  body #mobileMenuBtn{
    display:inline-flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    align-items:center !important;
    justify-content:center !important;
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:12px !important;
    border:1px solid rgba(63,117,92,.26) !important;
    background:#fff !important;
    color:var(--green) !important;
    font-size:25px !important;
    font-weight:900 !important;
    line-height:1 !important;
    box-shadow:0 8px 18px rgba(47,107,87,.08) !important;
    order:-1 !important;
  }
  body .topbar-actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:7px !important;
  }
  body .public-side-menu{
    position:fixed !important;
    top:0 !important;
    bottom:0 !important;
    left:0 !important;
    right:auto !important;
    width:min(320px,86vw) !important;
    z-index:9999 !important;
    background:#fff !important;
    border-radius:0 22px 22px 0 !important;
    box-shadow:18px 0 45px rgba(33,53,45,.22) !important;
    padding:22px !important;
    overflow:auto !important;
  }
  body .public-side-menu.hidden,
  body .public-menu-overlay.hidden{
    display:none !important;
  }
  body .public-side-menu:not(.hidden){
    display:block !important;
  }
  body .public-menu-overlay:not(.hidden){
    display:block !important;
    position:fixed !important;
    inset:0 !important;
    z-index:9998 !important;
    background:rgba(20,35,29,.38) !important;
  }
  body .public-side-nav{
    display:grid !important;
    gap:10px !important;
  }
  body .public-side-nav button{
    width:100% !important;
    border:0 !important;
    background:#f6faf7 !important;
    color:var(--green) !important;
    border-radius:14px !important;
    padding:14px 16px !important;
    text-align:right !important;
    font-weight:900 !important;
    font-size:17px !important;
  }
  body.lang-en .public-side-nav button{
    text-align:left !important;
  }
}

/* واتساب في الصفحة الرئيسية: زر دائري صغير فقط وليس مربعًا كبيرًا */
.hero-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:14px !important;
  flex-wrap:wrap !important;
}
.hero-actions .whatsapp-landing-btn.icon-action-btn,
.contact-actions .whatsapp-landing-btn.icon-action-btn,
.contact-actions .instagram-action-btn.icon-action-btn{
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  max-width:52px !important;
  flex:0 0 52px !important;
  padding:0 !important;
  display:inline-grid !important;
  place-items:center !important;
  border-radius:50% !important;
  overflow:hidden !important;
  font-size:0 !important;
  line-height:1 !important;
}
.hero-actions .whatsapp-landing-btn.icon-action-btn svg,
.contact-actions .whatsapp-landing-btn.icon-action-btn svg,
.contact-actions .instagram-action-btn.icon-action-btn svg{
  display:block !important;
  width:25px !important;
  height:25px !important;
  min-width:25px !important;
  min-height:25px !important;
  stroke:currentColor !important;
  fill:none !important;
}
.hero-actions .whatsapp-landing-btn.icon-action-btn svg *,
.contact-actions .whatsapp-landing-btn.icon-action-btn svg *,
.contact-actions .instagram-action-btn.icon-action-btn svg *{
  stroke:currentColor !important;
  fill:none !important;
}


/* AFANEEN V69 - تعديل إنستجرام والخريطة في صفحة اتصل بنا */
.contact-layout{
  align-items:center !important;
}
.contact-info{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:9px !important;
}
body.lang-ar .contact-info{
  align-items:flex-end !important;
}
.map-inline-btn{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  width:auto !important;
  min-width:0 !important;
  max-width:max-content !important;
  padding:7px 12px !important;
  margin:0 !important;
  border:1px solid rgba(47,107,87,.20) !important;
  background:#fff !important;
  color:var(--green) !important;
  border-radius:999px !important;
  box-shadow:0 8px 18px rgba(47,107,87,.06) !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
}
.map-inline-btn svg{
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  stroke:currentColor !important;
  fill:none !important;
}
.map-inline-btn span{
  display:inline !important;
  font-size:13px !important;
}
.contact-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  flex-wrap:wrap !important;
}
.contact-actions .primary-btn{
  width:auto !important;
  height:auto !important;
  min-width:98px !important;
  min-height:48px !important;
  border-radius:16px !important;
  padding:12px 20px !important;
}
.instagram-original-btn{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
}
.instagram-original-btn svg,
.instagram-action-btn svg.instagram-svg{
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  min-height:52px !important;
  stroke:none !important;
  fill:initial !important;
}
.instagram-action-btn svg.instagram-svg *,
.instagram-original-btn svg *{
  stroke:initial !important;
}
.instagram-original-btn svg circle[stroke]{
  stroke:#fff !important;
}
@media(max-width:650px){
  .contact-layout{
    display:grid !important;
    gap:18px !important;
  }
  .contact-info,
  body.lang-ar .contact-info{
    align-items:flex-start !important;
    text-align:start !important;
  }
  body.lang-ar .contact-info{
    align-items:flex-end !important;
    text-align:right !important;
  }
}


/* AFANEEN V70 - ترتيب صفحة اتصل بنا على الكمبيوتر */
@media(min-width:901px){
  #contactUs .contact-layout{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    align-items:center !important;
    gap:36px !important;
    min-height:160px !important;
  }
  body.lang-ar #contactUs .contact-info,
  #contactUs .contact-info{
    grid-column:2 !important;
    justify-self:end !important;
    align-items:flex-end !important;
    text-align:right !important;
    max-width:520px !important;
  }
  body.lang-ar #contactUs .contact-actions,
  #contactUs .contact-actions{
    grid-column:1 !important;
    justify-self:start !important;
    align-self:center !important;
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
  }
  body.lang-en #contactUs .contact-info{
    grid-column:1 !important;
    justify-self:start !important;
    align-items:flex-start !important;
    text-align:left !important;
  }
  body.lang-en #contactUs .contact-actions{
    grid-column:2 !important;
    justify-self:end !important;
  }
}

/* زر الخريطة تحت العنوان بشكل صغير */
#contactUs .map-inline-btn{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  width:auto !important;
  min-width:0 !important;
  max-width:max-content !important;
  padding:7px 12px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid rgba(47,107,87,.22) !important;
  color:var(--green) !important;
  font-size:13px !important;
  font-weight:900 !important;
  box-shadow:0 8px 18px rgba(47,107,87,.06) !important;
}
#contactUs .map-inline-btn svg{
  width:17px !important;
  height:17px !important;
  min-width:17px !important;
}

/* إنستجرام باللون الأصلي: خلفية متدرجة وأيقونة بيضاء */
#contactUs .instagram-action-btn,
#contactUs .instagram-original-btn{
  background:radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 62%, #285AEB 90%) !important;
  border:0 !important;
  box-shadow:0 10px 22px rgba(214,36,159,.22) !important;
  color:#fff !important;
  opacity:1 !important;
}
#contactUs .instagram-action-btn svg,
#contactUs .instagram-original-btn svg{
  width:27px !important;
  height:27px !important;
  min-width:27px !important;
  min-height:27px !important;
  display:block !important;
}
#contactUs .instagram-action-btn svg *,
#contactUs .instagram-original-btn svg *{
  stroke:#fff !important;
}
#contactUs .instagram-action-btn svg circle[fill],
#contactUs .instagram-original-btn svg circle[fill]{
  fill:#fff !important;
}

/* أزرار الاتصال تبقى بحجم مناسب */
#contactUs .contact-actions .primary-btn{
  width:auto !important;
  min-width:98px !important;
  min-height:48px !important;
  border-radius:16px !important;
  padding:12px 20px !important;
}
#contactUs .contact-actions .icon-action-btn{
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  max-width:52px !important;
  border-radius:50% !important;
}

/* الهاتف يبقى مرتبًا تحت بعض */
@media(max-width:900px){
  #contactUs .contact-layout{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  #contactUs .contact-info,
  body.lang-ar #contactUs .contact-info{
    grid-column:auto !important;
    justify-self:stretch !important;
    max-width:none !important;
  }
  #contactUs .contact-actions,
  body.lang-ar #contactUs .contact-actions{
    grid-column:auto !important;
    justify-self:start !important;
  }
}


/* AFANEEN V71 - ألبوم الصور يتمدد لعدد غير محدود من الصور */
#photoAlbum,
#photoAlbum.home-section,
.public-page#photoAlbum{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  align-self:stretch !important;
}

#photoAlbum .public-album,
.public-album{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr)) !important;
  gap:18px !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  align-items:start !important;
  grid-auto-flow:row !important;
  grid-auto-rows:auto !important;
}

#photoAlbum .album-item,
.public-album .album-item{
  width:100% !important;
  height:230px !important;
  min-height:230px !important;
  max-height:none !important;
  overflow:hidden !important;
  border-radius:22px !important;
}

#photoAlbum .album-item img,
.public-album .album-item img{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  display:block !important;
}

#photoAlbum .album-empty,
.public-album .album-empty{
  grid-column:1/-1 !important;
}

@media(max-width:900px){
  #photoAlbum .public-album,
  .public-album{
    grid-template-columns:repeat(auto-fill,minmax(190px,1fr)) !important;
    gap:14px !important;
  }
  #photoAlbum .album-item,
  .public-album .album-item{
    height:200px !important;
    min-height:200px !important;
  }
}

@media(max-width:520px){
  #photoAlbum .public-album,
  .public-album{
    grid-template-columns:1fr !important;
  }
  #photoAlbum .album-item,
  .public-album .album-item{
    height:220px !important;
    min-height:220px !important;
  }
}


/* AFANEEN V72 - تصغير المربع الشفاف على الهاتف لإظهار الصورة */
@media(max-width:650px){
  .hero-slider{
    min-height:460px !important;
  }

  .hero-overlay{
    left:22px !important;
    right:22px !important;
    bottom:28px !important;
    max-width:none !important;
    width:auto !important;
    padding:14px 16px !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.38) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    box-shadow:0 10px 24px rgba(47,107,87,.08) !important;
  }

  .hero-overlay .badge{
    font-size:14px !important;
    padding:6px 10px !important;
    margin-bottom:8px !important;
    background:rgba(255,255,255,.70) !important;
  }

  .hero-overlay h2{
    font-size:34px !important;
    line-height:1.15 !important;
    margin:0 0 6px !important;
  }

  .hero-overlay p{
    font-size:15px !important;
    line-height:1.55 !important;
    margin:0 0 12px !important;
  }

  .hero-overlay .hero-actions{
    gap:10px !important;
  }

  .hero-overlay .hero-actions .primary-btn{
    min-height:46px !important;
    padding:11px 18px !important;
    border-radius:16px !important;
    font-size:15px !important;
  }

  .hero-overlay .hero-actions .whatsapp-landing-btn.icon-action-btn{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    max-width:48px !important;
    flex-basis:48px !important;
  }
}

/* للشاشات الصغيرة جدًا: نجعل المربع أخف وأصغر أكثر */
@media(max-width:420px){
  .hero-slider{
    min-height:430px !important;
  }

  .hero-overlay{
    left:18px !important;
    right:18px !important;
    bottom:22px !important;
    padding:12px 14px !important;
    background:rgba(255,255,255,.30) !important;
  }

  .hero-overlay h2{
    font-size:30px !important;
  }

  .hero-overlay p{
    font-size:14px !important;
    line-height:1.45 !important;
  }
}


/* AFANEEN V73 - المربعات الأربعة: صورة كاملة وكتابة داخل شريط شفاف أسفل الصورة */
.landing-features{
  align-items:stretch !important;
}

.landing-features .site-feature-card{
  position:relative !important;
  overflow:hidden !important;
  padding:0 !important;
  min-height:310px !important;
  border-radius:28px !important;
  background:#eef7f0 !important;
  box-shadow:0 18px 42px rgba(47,107,87,.12) !important;
  display:flex !important;
  align-items:stretch !important;
  justify-content:stretch !important;
  text-align:center !important;
}

.landing-features .site-feature-card img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  max-height:none !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:0 !important;
  z-index:1 !important;
  transform:scale(1.01);
}

/* طبقة خفيفة لحماية قراءة النص */
.landing-features .site-feature-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  background:linear-gradient(
    to top,
    rgba(20,45,35,.48) 0%,
    rgba(20,45,35,.20) 38%,
    rgba(255,255,255,.03) 72%
  ) !important;
  pointer-events:none !important;
}

/* عنوان ووصف البطاقة داخل صندوق شفاف أسفل الصورة */
.landing-features .site-feature-card b,
.landing-features .site-feature-card span{
  position:relative !important;
  z-index:3 !important;
}

.landing-features .site-feature-card b{
  align-self:flex-end !important;
  display:block !important;
  width:calc(100% - 28px) !important;
  margin:auto 14px 0 !important;
  padding:16px 16px 4px !important;
  border-radius:22px 22px 0 0 !important;
  background:rgba(255,255,255,.70) !important;
  color:var(--green) !important;
  font-size:27px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  backdrop-filter:blur(3px) !important;
  -webkit-backdrop-filter:blur(3px) !important;
}

.landing-features .site-feature-card span{
  display:block !important;
  width:calc(100% - 28px) !important;
  margin:0 14px 16px !important;
  padding:4px 16px 16px !important;
  border-radius:0 0 22px 22px !important;
  background:rgba(255,255,255,.70) !important;
  color:#52645d !important;
  font-size:19px !important;
  line-height:1.55 !important;
  font-weight:900 !important;
  backdrop-filter:blur(3px) !important;
  -webkit-backdrop-filter:blur(3px) !important;
}

/* إذا لا توجد صورة في البطاقة تبقى جميلة، لكن بدون طبقة صورة */
.landing-features .site-feature-card:not(:has(img)){
  padding:26px 20px !important;
  min-height:230px !important;
  background:linear-gradient(135deg,#fff,#eef7f0) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
}

.landing-features .site-feature-card:not(:has(img))::before{
  display:none !important;
}

.landing-features .site-feature-card:not(:has(img)) b,
.landing-features .site-feature-card:not(:has(img)) span{
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-radius:0 !important;
}

.landing-features .site-feature-card:not(:has(img)) b{
  margin-bottom:10px !important;
}

/* الهاتف */
@media(max-width:900px){
  .landing-features .site-feature-card{
    min-height:280px !important;
    border-radius:24px !important;
  }

  .landing-features .site-feature-card b{
    width:calc(100% - 22px) !important;
    margin:auto 11px 0 !important;
    padding:14px 12px 3px !important;
    font-size:24px !important;
    border-radius:19px 19px 0 0 !important;
  }

  .landing-features .site-feature-card span{
    width:calc(100% - 22px) !important;
    margin:0 11px 13px !important;
    padding:3px 12px 14px !important;
    font-size:17px !important;
    border-radius:0 0 19px 19px !important;
  }
}

@media(max-width:520px){
  .landing-features .site-feature-card{
    min-height:260px !important;
  }

  .landing-features .site-feature-card b{
    font-size:22px !important;
  }

  .landing-features .site-feature-card span{
    font-size:16px !important;
  }
}


/* AFANEEN V74 - تثبيت حفظ صور المربعات بعد الضغط وتقليل حجمها */
.landing-features .site-feature-card img{
  image-rendering:auto !important;
}


/* AFANEEN V75 - قبول صور ألبوم الصور بأي مقاس */
.album-upload-box small::after{
  content:" - يتم ضغط الصور الكبيرة تلقائيًا قبل الحفظ." !important;
}


/* AFANEEN V77 - زر البريد الإلكتروني في لوحة التحكم وإعداداته */
.email-dashboard-panel{
  background:linear-gradient(135deg,#ffffff,#f3faf6) !important;
  border:1px solid rgba(47,107,87,.13) !important;
}
.email-dashboard-panel .panel-head{
  gap:14px;
  flex-wrap:wrap;
}
.email-dashboard-panel .panel-head>div{
  flex:1;
  min-width:230px;
}
.email-open-btn{
  white-space:nowrap;
}
.email-dashboard-info{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:14px;
  padding:14px 16px;
  border-radius:18px;
  background:#fff;
  border:1px solid #e7eee9;
}
.email-dashboard-info span{
  color:var(--muted);
  font-weight:800;
}
.email-dashboard-info b{
  color:var(--green);
  direction:ltr;
  unicode-bidi:plaintext;
  overflow-wrap:anywhere;
}
#publicContactEmail a{
  color:var(--green);
  font-weight:900;
  text-decoration:none;
  direction:ltr;
  unicode-bidi:plaintext;
}
@media(max-width:700px){
  .email-dashboard-panel .panel-head{
    display:grid;
  }
  .email-open-btn{
    width:100%;
  }
  .email-dashboard-info{
    display:grid;
    text-align:center;
  }
}


/* AFANEEN V78 - لوحة التحكم بدون الإحصائيات، وجدول طلبات فقط */
#dashboard .email-dashboard-panel{
  margin-top:0 !important;
}
#latestBookings .invoice{
  white-space:nowrap;
}


/* AFANEEN V79 - مربعات إضافة/تعديل الحجوزات والفواتير في منتصف الصفحة + البحث */
.form-modal-panel{
  position:fixed !important;
  top:50% !important;
  left:50% !important;
  transform:translate(-50%,-50%) !important;
  z-index:4000 !important;
  width:min(920px, calc(100vw - 28px)) !important;
  max-height:88vh !important;
  overflow:auto !important;
  box-shadow:0 24px 80px rgba(24,61,49,.28) !important;
  border:1px solid rgba(47,107,87,.14) !important;
}
.form-modal-panel::before{
  content:"" !important;
  position:fixed !important;
  inset:-100vh !important;
  background:rgba(12,31,25,.32) !important;
  z-index:-1 !important;
}
.modal-form-actions{
  display:flex !important;
  gap:10px !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
}
.table-search-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(180px,1fr));
  gap:12px;
  margin:14px 0 16px;
}
.table-search-row label{
  display:grid;
  gap:7px;
  font-weight:800;
  color:var(--green);
}
.table-search-row input{
  border:1px solid #dfe8e1;
  border-radius:16px;
  padding:12px 14px;
  font:inherit;
  outline:none;
  background:#fff;
}
.table-search-row input:focus{
  border-color:var(--green);
  box-shadow:0 0 0 3px rgba(47,107,87,.10);
}
@media(max-width:700px){
  .table-search-row{
    grid-template-columns:1fr;
  }
  .form-modal-panel{
    width:calc(100vw - 18px) !important;
    max-height:92vh !important;
  }
}


/* AFANEEN V80 - إلغاء سلايدر مربع الإضافة/التعديل وتحسين الشكل */
.form-modal-panel{
  width:min(820px, calc(100vw - 90px)) !important;
  max-height:none !important;
  overflow:visible !important;
  background:linear-gradient(135deg,#f7fbf8 0%,#eef7f1 100%) !important;
  border:2px solid rgba(47,107,87,.26) !important;
  border-radius:30px !important;
  box-shadow:
    0 26px 80px rgba(24,61,49,.24),
    0 0 0 8px rgba(255,255,255,.52) !important;
  padding:22px 24px !important;
}

.form-modal-panel::before{
  background:rgba(19,42,34,.22) !important;
  backdrop-filter:blur(2px) !important;
  -webkit-backdrop-filter:blur(2px) !important;
}

.form-modal-panel .panel-head{
  margin-bottom:12px !important;
  padding-bottom:10px !important;
  border-bottom:1px solid rgba(47,107,87,.14) !important;
}

.form-modal-panel .panel-head h3{
  color:var(--green) !important;
}

.form-modal-panel .admin-form{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px 14px !important;
}

.form-modal-panel .admin-form label{
  gap:5px !important;
  font-size:14px !important;
}

.form-modal-panel .admin-form input,
.form-modal-panel .admin-form select,
.form-modal-panel .admin-form textarea{
  width:100% !important;
  box-sizing:border-box !important;
  min-height:42px !important;
  padding:9px 12px !important;
  border-radius:16px !important;
  background:#fff !important;
  border:1px solid rgba(47,107,87,.17) !important;
  box-shadow:0 4px 14px rgba(47,107,87,.04) !important;
}

.form-modal-panel .admin-form textarea{
  min-height:74px !important;
  resize:vertical !important;
}

.form-modal-panel .wide,
.form-modal-panel .modal-form-actions{
  grid-column:1 / -1 !important;
}

.form-modal-panel .modal-form-actions{
  margin-top:2px !important;
  padding-top:2px !important;
}

.form-modal-panel .modal-form-actions button{
  min-width:130px !important;
}

/* منع ظهور سكرول أفقي داخل مربع المودال */
.form-modal-panel,
.form-modal-panel *{
  max-width:100% !important;
}

/* الحجز والفاتورة على الشاشات الصغيرة */
@media(max-width:780px){
  .form-modal-panel{
    width:calc(100vw - 24px) !important;
    padding:18px 16px !important;
    border-radius:24px !important;
    top:52% !important;
  }

  .form-modal-panel .admin-form{
    grid-template-columns:1fr !important;
  }

  .form-modal-panel .admin-form input,
  .form-modal-panel .admin-form select,
  .form-modal-panel .admin-form textarea{
    min-height:40px !important;
  }
}


/* AFANEEN V81 - مربع إضافة/تعديل أوضح وأصغر بدون تمييع للصفحة */
.form-modal-panel{
  width:min(760px, calc(100vw - 170px)) !important;
  max-height:none !important;
  overflow:visible !important;
  top:50% !important;
  background:#fbfffc !important;
  border:2px solid rgba(47,107,87,.24) !important;
  border-radius:24px !important;
  padding:16px 18px !important;
  box-shadow:0 18px 46px rgba(36,79,64,.18), 0 0 0 4px rgba(255,255,255,.80) !important;
}

/* إلغاء تمييع/تغبيش الصفحة الخلفية بالكامل */
.form-modal-panel::before{
  display:none !important;
  content:none !important;
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

/* نموذج مضغوط حتى يظهر كاملًا بدون سلايدر */
.form-modal-panel .panel-head{
  margin-bottom:8px !important;
  padding-bottom:8px !important;
}

.form-modal-panel .panel-head h3{
  font-size:20px !important;
}

.form-modal-panel .admin-form{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:7px 10px !important;
}

.form-modal-panel .admin-form label{
  gap:3px !important;
  font-size:13px !important;
  line-height:1.25 !important;
}

.form-modal-panel .admin-form input,
.form-modal-panel .admin-form select,
.form-modal-panel .admin-form textarea{
  min-height:36px !important;
  height:36px !important;
  padding:7px 10px !important;
  border-radius:14px !important;
  background:#ffffff !important;
  border:1px solid rgba(47,107,87,.15) !important;
  box-shadow:0 3px 10px rgba(47,107,87,.035) !important;
  font-size:14px !important;
}

.form-modal-panel .admin-form textarea{
  height:58px !important;
  min-height:58px !important;
  resize:none !important;
}

.form-modal-panel .wide{
  grid-column:1 / -1 !important;
}

.form-modal-panel .modal-form-actions{
  grid-column:1 / -1 !important;
  margin-top:4px !important;
  padding-top:0 !important;
  justify-content:flex-start !important;
}

.form-modal-panel .modal-form-actions button{
  min-width:115px !important;
  padding:10px 18px !important;
}

/* جعل مربع الفاتورة أو الحجز لا يغطي مساحة كبيرة */
#bookingFormPanel,
#invoiceFormPanel{
  max-width:760px !important;
}

/* على الشاشات المتوسطة نستخدم عمودين فقط */
@media(max-width:980px){
  .form-modal-panel{
    width:calc(100vw - 36px) !important;
    padding:14px !important;
  }

  .form-modal-panel .admin-form{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* على الهاتف عمود واحد وقد يحتاج سكرول طبيعي للصفحة فقط */
@media(max-width:620px){
  .form-modal-panel{
    position:absolute !important;
    top:80px !important;
    left:12px !important;
    right:12px !important;
    transform:none !important;
    width:auto !important;
    max-height:none !important;
  }

  .form-modal-panel .admin-form{
    grid-template-columns:1fr !important;
  }
}


/* AFANEEN V82 - طلبات الحجز الجديدة: تعديل/حذف فقط، والحجوزات تظهر بعد التأكيد */
#latestBookings .edit,
#latestBookings .delete{
  white-space:nowrap;
}
#latestBookings td:last-child{
  display:flex;
  gap:6px;
  justify-content:center;
  align-items:center;
}


/* AFANEEN V83 - تعديل طلب الحجز من لوحة التحكم بدون مبالغ وبدون فتح صفحة الحجوزات */
.form-modal-panel{
  direction:rtl !important;
}
.form-modal-panel label.hidden{
  display:none !important;
}
#latestBookings .edit,
#latestBookings .delete{
  min-width:70px;
}


/* AFANEEN V84 - مودال مستقل لتعديل طلب الحجز الجديد */
.request-form-panel{
  max-width:700px !important;
}
.request-edit-form{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
.request-edit-form label.hidden{
  display:none !important;
}
@media(max-width:720px){
  .request-edit-form{
    grid-template-columns:1fr !important;
  }
}


/* AFANEEN V85 - إصلاح تعديل الحجوزات ومنع الفاتورة قبل مكتمل */
.confirmed-booking-panel{
  max-width:760px !important;
}
.confirmed-booking-edit-form{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.action.disabled,
.action:disabled{
  opacity:.55 !important;
  cursor:not-allowed !important;
  background:#eef1ec !important;
  color:#78847d !important;
  border:1px solid #dce5df !important;
}
@media(max-width:900px){
  .confirmed-booking-edit-form{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:620px){
  .confirmed-booking-edit-form{
    grid-template-columns:1fr !important;
  }
}


/* AFANEEN V86 - إصلاح تعديل الفواتير */
#invoiceFormPanel{
  max-width:760px !important;
}
#invoiceFormPanel .admin-form{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
@media(max-width:900px){
  #invoiceFormPanel .admin-form{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:620px){
  #invoiceFormPanel .admin-form{
    grid-template-columns:1fr !important;
  }
}


/* AFANEEN V87 - إصلاح قائمة الهاتف وأزرار التواصل والكاش */
@media(min-width:1025px){
  html body #mobileMenuBtn{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  html body #publicSideMenu,
  html body #publicMenuOverlay{
    display:none !important;
  }

  html body #landingPage .public-nav{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    height:auto !important;
    max-height:none !important;
    align-items:center !important;
    justify-content:center !important;
    gap:30px !important;
    flex-wrap:wrap !important;
    max-width:1180px !important;
    margin:8px auto 0 !important;
    padding:12px 18px 10px !important;
    background:transparent !important;
    border:0 !important;
    border-bottom:1px solid rgba(63,117,92,.14) !important;
    box-shadow:none !important;
    overflow:visible !important;
    pointer-events:auto !important;
  }

  html body #landingPage .public-nav button,
  html body #landingPage .public-nav a{
    appearance:none !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    padding:7px 0 !important;
    margin:0 !important;
    color:var(--green) !important;
    font-size:16px !important;
    font-weight:900 !important;
    line-height:1.5 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
  }

  html body #landingPage .public-nav button:hover,
  html body #landingPage .public-nav button.active,
  html body #landingPage .public-nav a:hover{
    color:var(--accent) !important;
  }
}

@media(max-width:1024px),(hover:none) and (pointer:coarse){
  html body #landingPage{
    overflow-x:hidden !important;
  }

  html body #landingPage .topbar{
    direction:ltr !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    grid-template-areas:"actions brand" "date date" !important;
    align-items:start !important;
    gap:8px 14px !important;
    padding:14px 18px 10px !important;
    margin:0 !important;
    border-bottom:1px solid rgba(63,117,92,.14) !important;
  }

  html body #landingPage .brand{
    grid-area:brand !important;
    justify-self:end !important;
    direction:rtl !important;
    text-align:right !important;
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    max-width:230px !important;
    min-width:0 !important;
  }

  html body #landingPage .brand .logo-img{
    width:74px !important;
    height:74px !important;
    object-fit:contain !important;
    flex:0 0 auto !important;
  }

  html body #landingPage .brand h1{
    font-size:26px !important;
    line-height:1.05 !important;
    margin:0 !important;
  }

  html body #landingPage .brand p{
    font-size:14px !important;
    line-height:1.25 !important;
    margin:3px 0 0 !important;
  }

  html body #landingPage .public-date-bar{
    grid-area:date !important;
    justify-self:start !important;
    direction:rtl !important;
    margin:2px 0 0 !important;
    max-width:min(330px,100%) !important;
    white-space:normal !important;
    text-align:center !important;
  }

  html body #landingPage .topbar-actions{
    grid-area:actions !important;
    justify-self:start !important;
    align-self:start !important;
    direction:ltr !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:8px !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
  }

  html body #landingPage .topbar-actions .ghost-btn,
  html body #landingPage .topbar-actions .lang-btn{
    direction:rtl !important;
    min-width:132px !important;
    max-width:150px !important;
    min-height:44px !important;
    padding:9px 14px !important;
    border-radius:17px !important;
    box-shadow:0 10px 22px rgba(47,107,87,.08) !important;
    font-size:14px !important;
    line-height:1.2 !important;
  }

  html body #mobileMenuBtn{
    display:inline-flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    align-items:center !important;
    justify-content:center !important;
    order:-2 !important;
    width:48px !important;
    height:44px !important;
    min-width:48px !important;
    max-width:48px !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:13px !important;
    border:1px solid rgba(63,117,92,.26) !important;
    background:#fff !important;
    color:var(--green) !important;
    font-size:26px !important;
    font-weight:900 !important;
    line-height:1 !important;
    box-shadow:0 8px 18px rgba(47,107,87,.08) !important;
  }

  html body #landingPage .public-nav{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    height:0 !important;
    max-height:0 !important;
    min-height:0 !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    box-shadow:none !important;
    overflow:hidden !important;
    pointer-events:none !important;
  }

  html body #publicMenuOverlay.hidden,
  html body #publicSideMenu.hidden{
    display:none !important;
  }

  html body #publicMenuOverlay:not(.hidden){
    display:block !important;
    position:fixed !important;
    inset:0 !important;
    z-index:9998 !important;
    background:rgba(20,35,29,.38) !important;
  }

  html body #publicSideMenu:not(.hidden){
    display:flex !important;
    position:fixed !important;
    top:0 !important;
    bottom:0 !important;
    left:0 !important;
    right:auto !important;
    width:min(310px,82vw) !important;
    max-width:82vw !important;
    z-index:9999 !important;
    background:#fff !important;
    border-radius:0 22px 22px 0 !important;
    box-shadow:18px 0 45px rgba(33,53,45,.22) !important;
    padding:22px !important;
    overflow:auto !important;
    direction:rtl !important;
    text-align:right !important;
    flex-direction:column !important;
    transform:none !important;
  }

  html body.lang-en #publicSideMenu:not(.hidden){
    direction:ltr !important;
    text-align:left !important;
  }

  html body #publicSideMenu .public-menu-close{
    align-self:flex-start !important;
    width:40px !important;
    height:40px !important;
    border-radius:50% !important;
    border:0 !important;
    background:#f5ebe9 !important;
    color:var(--accent) !important;
    font-size:24px !important;
    font-weight:900 !important;
  }

  html body #publicSideMenu .public-side-nav{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    margin-top:18px !important;
  }

  html body #publicSideMenu .public-side-nav button{
    width:100% !important;
    text-align:inherit !important;
    background:#f7fbf8 !important;
    border:1px solid rgba(63,117,92,.14) !important;
    color:var(--green) !important;
    border-radius:16px !important;
    padding:14px 16px !important;
    font-size:16px !important;
    font-weight:900 !important;
    box-shadow:none !important;
  }
}

@media(max-width:480px){
  html body #landingPage .topbar{
    padding:12px 14px 10px !important;
    gap:7px 10px !important;
  }

  html body #landingPage .brand{
    max-width:190px !important;
  }

  html body #landingPage .brand .logo-img{
    width:66px !important;
    height:66px !important;
  }

  html body #landingPage .brand h1{
    font-size:23px !important;
  }

  html body #landingPage .brand p{
    font-size:13px !important;
  }

  html body #landingPage .topbar-actions .ghost-btn,
  html body #landingPage .topbar-actions .lang-btn{
    min-width:120px !important;
    max-width:132px !important;
  }
}

html body .hero-actions .whatsapp-landing-btn.icon-action-btn,
html body .contact-actions .whatsapp-landing-btn.icon-action-btn,
html body .contact-actions .instagram-action-btn.icon-action-btn{
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  max-width:52px !important;
  min-height:52px !important;
  flex:0 0 52px !important;
  padding:0 !important;
  display:inline-grid !important;
  place-items:center !important;
  border-radius:50% !important;
  overflow:hidden !important;
  font-size:0 !important;
  line-height:1 !important;
  color:#fff !important;
}

html body .whatsapp-landing-btn.icon-action-btn{
  background:#25d366 !important;
  border-color:#25d366 !important;
}

html body .instagram-action-btn.icon-action-btn{
  background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%) !important;
  border-color:transparent !important;
}

html body .icon-action-btn svg{
  width:25px !important;
  height:25px !important;
  display:block !important;
  flex:0 0 auto !important;
  margin:0 !important;
}

html body .whatsapp-landing-btn.icon-action-btn svg,
html body .whatsapp-landing-btn.icon-action-btn svg path{
  fill:none !important;
  stroke:#fff !important;
  stroke-width:1.9 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

html body .instagram-action-btn.icon-action-btn svg rect,
html body .instagram-action-btn.icon-action-btn svg circle{
  stroke:#fff !important;
}

html body .instagram-action-btn.icon-action-btn svg circle:last-child{
  fill:#fff !important;
  stroke:none !important;
}


/* AFANEEN V89 - تعريف أيقونات الجداول عند تمرير الفأرة */
.table-wrap .action{
  position:relative !important;
}

.table-wrap .action:hover::after{
  content:attr(title);
  position:absolute;
  z-index:50;
  bottom:calc(100% + 8px);
  left:50%;
  transform:translateX(-50%);
  min-width:max-content;
  max-width:150px;
  padding:6px 9px;
  border-radius:9px;
  background:#21352d;
  color:#fff;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  white-space:nowrap;
  box-shadow:0 8px 20px rgba(33,53,45,.18);
  pointer-events:none;
}

.table-wrap .action:hover::before{
  filter:brightness(.96);
}

/* AFANEEN V88 - جداول مختصرة وأزرار إجراءات كأيقونات صغيرة */
.table-wrap .action{
  width:32px !important;
  height:32px !important;
  min-width:32px !important;
  padding:0 !important;
  margin:2px !important;
  border-radius:10px !important;
  display:inline-grid !important;
  place-items:center !important;
  font-size:0 !important;
  line-height:1 !important;
  vertical-align:middle !important;
  box-shadow:none !important;
}

.table-wrap .action::before{
  font-size:15px !important;
  line-height:1 !important;
  font-weight:900 !important;
}

.table-wrap .action.view{
  background:#edf7ff !important;
  color:#256285 !important;
}

.table-wrap .action.view::before{
  content:"⊙";
}

.table-wrap .action.edit::before{
  content:"✎";
}

.table-wrap .action.delete::before{
  content:"×";
  font-size:20px !important;
}

.table-wrap .action.whatsapp::before{
  content:"☏";
}

.table-wrap .action.print::before{
  content:"⎙";
}

.table-wrap .action.invoice::before{
  content:"▤";
}

.table-wrap .action.disabled::before,
.table-wrap .action:disabled::before{
  content:"!";
}

#bookingsTable,
#invoicesTable{
  min-width:0 !important;
  table-layout:auto !important;
}

#bookingsTable th,
#bookingsTable td,
#invoicesTable th,
#invoicesTable td{
  white-space:normal !important;
  padding:10px 8px !important;
}

#bookingsTable th:last-child,
#bookingsTable td:last-child,
#invoicesTable th:last-child,
#invoicesTable td:last-child{
  white-space:nowrap !important;
  width:150px !important;
}

#bookingsTable td:last-child,
#invoicesTable td:last-child{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:3px !important;
}

.invoice-modal-btn{
  background:#fff7e8 !important;
  color:#9a6a1f !important;
  border-color:#f3d8a8 !important;
}

@media(max-width:760px){
  #bookingsTable th,
  #bookingsTable td,
  #invoicesTable th,
  #invoicesTable td{
    font-size:13px !important;
    padding:8px 6px !important;
  }

  #bookingsTable th:last-child,
  #bookingsTable td:last-child,
  #invoicesTable th:last-child,
  #invoicesTable td:last-child{
    width:118px !important;
  }

  .table-wrap .action{
    width:29px !important;
    height:29px !important;
    min-width:29px !important;
  }
}


/* AFANEEN V90 - ضغط جدول الفواتير وتوسيع عمود العميل */
#invoices .table-wrap{
  overflow-x:hidden !important;
}

#invoicesTable{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
}

#invoicesTable th,
#invoicesTable td{
  padding:8px 6px !important;
  font-size:13px !important;
  line-height:1.35 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

#invoicesTable th:nth-child(1),
#invoicesTable td:nth-child(1){
  width:84px !important;
}

#invoicesTable th:nth-child(2),
#invoicesTable td:nth-child(2){
  width:82px !important;
}

#invoicesTable th:nth-child(3),
#invoicesTable td:nth-child(3){
  width:auto !important;
  min-width:150px !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  font-weight:800 !important;
}

#invoicesTable th:nth-child(4),
#invoicesTable td:nth-child(4),
#invoicesTable th:nth-child(5),
#invoicesTable td:nth-child(5),
#invoicesTable th:nth-child(6),
#invoicesTable td:nth-child(6){
  width:74px !important;
  text-align:center !important;
}

#invoicesTable th:last-child,
#invoicesTable td:last-child{
  width:130px !important;
  min-width:130px !important;
}

#invoicesTable td:last-child{
  justify-content:center !important;
  flex-wrap:wrap !important;
}

#invoicesTable .action{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  border-radius:9px !important;
  pointer-events:auto !important;
  position:relative !important;
  z-index:2 !important;
}

@media(max-width:760px){
  #invoices .table-wrap{
    overflow-x:hidden !important;
  }

  #invoicesTable th,
  #invoicesTable td{
    padding:7px 4px !important;
    font-size:12px !important;
  }

  #invoicesTable th:nth-child(1),
  #invoicesTable td:nth-child(1){
    width:64px !important;
  }

  #invoicesTable th:nth-child(2),
  #invoicesTable td:nth-child(2){
    width:64px !important;
  }

  #invoicesTable th:nth-child(4),
  #invoicesTable td:nth-child(4),
  #invoicesTable th:nth-child(5),
  #invoicesTable td:nth-child(5),
  #invoicesTable th:nth-child(6),
  #invoicesTable td:nth-child(6){
    width:56px !important;
  }

  #invoicesTable th:last-child,
  #invoicesTable td:last-child{
    width:86px !important;
    min-width:86px !important;
  }

  #invoicesTable .action{
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
    margin:1px !important;
  }

#invoicesTable .action::before{
    font-size:13px !important;
  }
}

/* AFANEEN V108 - Admin mobile drawer */
.admin-menu-btn,
.admin-menu-overlay{
  display:none;
}
@media(max-width:1024px), (hover:none) and (pointer:coarse){
  html body #adminPage.hidden{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  html body #adminPage:not(.hidden){
    display:block !important;
    min-height:100vh !important;
    overflow-x:hidden !important;
  }
  html body #adminPage:not(.hidden) .admin-main{
    width:100% !important;
    padding:18px 14px 28px !important;
    overflow:visible !important;
  }
  html body #adminPage:not(.hidden) .admin-header{
    position:relative !important;
    display:grid !important;
    grid-template-columns:52px minmax(0,1fr) !important;
    grid-template-areas:"menu title" "actions actions" !important;
    align-items:start !important;
    gap:12px 14px !important;
    margin-bottom:18px !important;
    direction:ltr !important;
  }
  html body .admin-header > .admin-menu-btn{
    grid-area:menu !important;
  }
  html body .admin-header > div:first-of-type{
    grid-area:title !important;
    direction:rtl !important;
    text-align:right !important;
    min-width:0 !important;
  }
  html body .admin-header .header-actions{
    grid-area:actions !important;
    direction:rtl !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    flex-wrap:wrap !important;
    gap:10px !important;
    margin-top:0 !important;
  }
  html body .admin-header h2{
    font-size:38px !important;
    line-height:1.15 !important;
  }
  html body .admin-menu-btn{
    display:inline-flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    align-items:center !important;
    justify-content:center !important;
    width:48px !important;
    height:46px !important;
    border:1px solid rgba(47,107,87,.24) !important;
    border-radius:14px !important;
    background:#fff !important;
    color:var(--green) !important;
    font-size:28px !important;
    font-weight:900 !important;
    box-shadow:0 10px 24px rgba(47,107,87,.10) !important;
    z-index:10001 !important;
  }
  html body #adminPage .sidebar{
    display:flex !important;
    position:fixed !important;
    top:0 !important;
    bottom:0 !important;
    left:0 !important;
    right:auto !important;
    width:min(310px,84vw) !important;
    height:100vh !important;
    max-width:84vw !important;
    padding:18px 16px !important;
    z-index:10000 !important;
    transform:translateX(-105%) !important;
    transition:transform .22s ease !important;
    background:#fff !important;
    border-left:0 !important;
    border-right:1px solid #e2ebe5 !important;
    border-top:0 !important;
    box-shadow:18px 0 42px rgba(25,55,45,.18) !important;
    overflow-y:auto !important;
    flex-direction:column !important;
    gap:16px !important;
  }
  html body #adminPage .sidebar.open{
    transform:translateX(0) !important;
  }
  html body #adminPage .sidebar .brand,
  html body #adminPage .sidebar .logout{
    display:flex !important;
  }
  html body #adminPage .sidebar nav{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:9px !important;
    overflow:visible !important;
    padding:0 0 12px !important;
  }
  html body #adminPage .sidebar .nav-btn{
    display:block !important;
    width:100% !important;
    min-height:46px !important;
    padding:12px 14px !important;
    border-radius:14px !important;
    text-align:right !important;
    font-size:15px !important;
    line-height:1.35 !important;
  }
  html body .admin-menu-overlay:not(.hidden){
    display:block !important;
    position:fixed !important;
    inset:0 !important;
    z-index:9999 !important;
    background:rgba(20,35,29,.36) !important;
  }
  html body.admin-menu-open{
    overflow:hidden !important;
  }
}
@media(min-width:1025px){
  html body .admin-menu-btn,
  html body .admin-menu-overlay{
    display:none !important;
  }
}
