: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}
.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;
}
.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;
  }
}
